nanohttp-server.h File Reference

Go to the source code of this file.

Classes

struct  httpd_conn
struct  service_statistics
struct  tag_hservice

Defines

#define NHTTPD_ARG_PORT   "-NHTTPport"
#define NHTTPD_ARG_TERMSIG   "-NHTTPtsig"
#define NHTTPD_ARG_MAXCONN   "-NHTTPmaxconn"
#define NHTTPD_ARG_TIMEOUT   "-NHTTPtimeout"
#define NHTTPD_SERVICE_DOWN   0
#define NHTTPD_SERVICE_UP   1

Typedefs

typedef httpd_conn httpd_conn_t
typedef void(* httpd_service )(httpd_conn_t *conn, struct hrequest_t *req)
typedef int(* httpd_auth )(struct hrequest_t *req, const char *user, const char *pass)
typedef tag_hservice hservice_t

Functions

herror_t httpd_init (int argc, char *argv[])
void httpd_destroy (void)
herror_t httpd_run (void)
herror_t httpd_register (const char *context, httpd_service service)
herror_t httpd_register_secure (const char *context, httpd_service service, httpd_auth auth)
herror_t httpd_register_default (const char *context, httpd_service service)
herror_t httpd_register_default_secure (const char *context, httpd_service service, httpd_auth auth)
short httpd_get_port (void)
int httpd_get_timeout (void)
void httpd_set_timeout (int secs)
const char * httpd_get_protocol (void)
int httpd_get_conncount (void)
hservice_thttpd_get_services (void)
hservice_thttpd_find_service (const char *name)
int httpd_enable_service (hservice_t *service)
int httpd_disable_service (hservice_t *service)
void httpd_response_set_content_type (httpd_conn_t *res, const char *content_type)
herror_t httpd_send_header (httpd_conn_t *res, int code, const char *text)
int httpd_set_header (httpd_conn_t *conn, const char *key, const char *value)
void httpd_set_headers (httpd_conn_t *conn, hpair_t *header)
int httpd_add_header (httpd_conn_t *conn, const char *key, const char *value)
void httpd_add_headers (httpd_conn_t *conn, const hpair_t *values)
herror_t httpd_mime_send_header (httpd_conn_t *conn, const char *related_start, const char *related_start_info, const char *related_type, int code, const char *text)
herror_t httpd_mime_next (httpd_conn_t *conn, const char *content_id, const char *content_type, const char *transfer_encoding)
herror_t httpd_mime_send_file (httpd_conn_t *conn, const char *content_id, const char *content_type, const char *transfer_encoding, const char *filename)
herror_t httpd_mime_end (httpd_conn_t *conn)
herror_t httpd_send_bad_request (httpd_conn_t *conn, const char *msg)
herror_t httpd_send_unauthorized (httpd_conn_t *conn, const char *realm)
herror_t httpd_send_not_found (httpd_conn_t *conn, const char *msg)
herror_t httpd_send_internal_error (httpd_conn_t *conn, const char *msg)
herror_t httpd_send_not_implemented (httpd_conn_t *conn, const char *msg)


Define Documentation

#define NHTTPD_ARG_MAXCONN   "-NHTTPmaxconn"
 

#define NHTTPD_ARG_PORT   "-NHTTPport"
 

nanoHTTP command line flags

#define NHTTPD_ARG_TERMSIG   "-NHTTPtsig"
 

#define NHTTPD_ARG_TIMEOUT   "-NHTTPtimeout"
 

#define NHTTPD_SERVICE_DOWN   0
 

See also:
hservice_t

http://www.w3.org/TR/wslc/

#define NHTTPD_SERVICE_UP   1
 

See also:
hservice_t

http://www.w3.org/TR/wslc/


Typedef Documentation

typedef struct tag_hservice hservice_t
 

Service representation object

typedef int(* httpd_auth)(struct hrequest_t *req, const char *user, const char *pass)
 

Authentication callback function for a nanoHTTP service.

typedef struct httpd_conn httpd_conn_t
 

typedef void(* httpd_service)(httpd_conn_t *conn, struct hrequest_t *req)
 

Service callback function for a nanoHTTP service.


Function Documentation

int httpd_add_header httpd_conn_t conn,
const char *  key,
const char *  value
 

void httpd_add_headers httpd_conn_t conn,
const hpair_t values
 

void httpd_destroy void   ) 
 

See also:
httpd_init

int httpd_disable_service hservice_t service  ) 
 

int httpd_enable_service hservice_t service  ) 
 

hservice_t* httpd_find_service const char *  name  ) 
 

int httpd_get_conncount void   ) 
 

short httpd_get_port void   ) 
 

const char* httpd_get_protocol void   ) 
 

hservice_t* httpd_get_services void   ) 
 

int httpd_get_timeout void   ) 
 

herror_t httpd_init int  argc,
char *  argv[]
 

Initialize the nanoHTTP server.

herror_t httpd_mime_end httpd_conn_t conn  ) 
 

Finish MIME request

Returns:
H_OK on success or error flag

herror_t httpd_mime_next httpd_conn_t conn,
const char *  content_id,
const char *  content_type,
const char *  transfer_encoding
 

Send boundary and part header and continue with next part

herror_t httpd_mime_send_file httpd_conn_t conn,
const char *  content_id,
const char *  content_type,
const char *  transfer_encoding,
const char *  filename
 

Send boundary and part header and continue with next part

herror_t httpd_mime_send_header httpd_conn_t conn,
const char *  related_start,
const char *  related_start_info,
const char *  related_type,
int  code,
const char *  text
 

MIME multipart/related POST

Returns:
H_OK on success or error flag

herror_t httpd_register const char *  context,
httpd_service  service
 

herror_t httpd_register_default const char *  context,
httpd_service  service
 

herror_t httpd_register_default_secure const char *  context,
httpd_service  service,
httpd_auth  auth
 

herror_t httpd_register_secure const char *  context,
httpd_service  service,
httpd_auth  auth
 

void httpd_response_set_content_type httpd_conn_t res,
const char *  content_type
 

herror_t httpd_run void   ) 
 

herror_t httpd_send_bad_request httpd_conn_t conn,
const char *  msg
 

Send a minimalistic HTML error document with HTTP status 400.

See also:
HTTP_STATUS_400_REASON_PHRASE

herror_t httpd_send_header httpd_conn_t res,
int  code,
const char *  text
 

herror_t httpd_send_internal_error httpd_conn_t conn,
const char *  msg
 

Send a minimalistic HTML error document with HTTP status 500.

See also:
HTTP_STATUS_500_REASON_PHRASE

herror_t httpd_send_not_found httpd_conn_t conn,
const char *  msg
 

Send a minimalistic HTML error document with HTTP status 404.

See also:
HTTP_STATUS_404_REASON_PHRASE

herror_t httpd_send_not_implemented httpd_conn_t conn,
const char *  msg
 

Send a minimalistic HTML error document with HTTP status 501.

See also:
HTTP_STATUS_501_REASON_PHRASE

herror_t httpd_send_unauthorized httpd_conn_t conn,
const char *  realm
 

Send a minimalistc HTML error document with HTTP status 401.

See also:
HTTP_STATUS_401_REASON_PHRASE

int httpd_set_header httpd_conn_t conn,
const char *  key,
const char *  value
 

void httpd_set_headers httpd_conn_t conn,
hpair_t header
 

void httpd_set_timeout int  secs  ) 
 


Generated on Thu Jan 25 23:36:00 2007 for csoap by  doxygen 1.4.6