Changeset 3378:172b3c158563 in roaraudio


Ignore:
Timestamp:
02/11/10 10:55:58 (14 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

wrote some basic macros and prototypes for the httpd

File:
1 edited

Legend:

Unmodified
Added
Removed
  • include/libroareio/httpd.h

    r3377 r3378  
    3838#include "libroareio.h" 
    3939 
     40#define _ROAR_EIO_HTTPD_VERSION(major,minor) ((major)<<8|(minor)) 
     41 
     42#define ROAR_HTTPD_VERSION_HTTP09    _ROAR_EIO_HTTPD_VERSION(0,9) 
     43#define ROAR_HTTPD_VERSION_HTTP10    _ROAR_EIO_HTTPD_VERSION(1,0) 
     44#define ROAR_HTTPD_VERSION_HTTP11    _ROAR_EIO_HTTPD_VERSION(1,1) 
     45 
     46#define ROAR_HTTPD_METHOD_NONE       0 
     47#define ROAR_HTTPD_METHOD_GET        1 
     48#define ROAR_HTTPD_METHOD_POST       2 
     49#define ROAR_HTTPD_METHOD_PUT        3 
     50#define ROAR_HTTPD_METHOD_HEAD       4 
     51#define ROAR_HTTPD_METHOD_DELETE     5 
     52#define ROAR_HTTPD_METHOD_TRACE      6 
     53#define ROAR_HTTPD_METHOD_OPTIONS    7 
     54#define ROAR_HTTPD_METHOD_CONNECT    8 
     55//#define ROAR_HTTPD_METHOD_       9 
     56 
     57#define ROAR_HTTPD_STATUS_OK         200 
     58#define ROAR_HTTPD_STATUS_NOT_FOUND  404 
     59#define ROAR_HTTPD_STATUS_INTSERVERR 500 
     60#define ROAR_HTTPD_STATUS_NOT_IMPL   501 
     61#define ROAR_HTTPD_STATUS_VERNOTSUP  505 
     62 
     63struct roar_httpd_request { 
     64 int method; 
     65 char * resource; 
     66 char * query_string; 
     67 int version; 
     68 struct roar_keyval * header; 
     69}; 
     70 
     71struct roar_httpd_response { 
     72 int version; 
     73 int status; 
     74 struct roar_vio_calls * file; 
     75 struct roar_keyval    * header; 
     76}; 
     77 
     78struct roar_httpd { 
     79 struct roar_httpd_request; 
     80 struct roar_httpd_response; 
     81 int (*cb_eoh)(struct roar_httpd * httpd); 
     82 struct roar_vio_calls * client; 
     83 struct roar_vio_calls   viostore[1]; 
     84 struct roar_buffer * header; 
     85 struct roar_buffer * output; 
     86}; 
     87 
     88struct roar_httpd * roar_http_new(struct roar_vio_calls * client, int (*cb_eoh)(struct roar_httpd * httpd)); 
     89int                 roar_http_free(struct roar_httpd * httpd); 
     90int                 roar_http_update(struct roar_httpd * httpd); 
     91 
    4092#endif 
    4193 
Note: See TracChangeset for help on using the changeset viewer.