C library for SOAP (Simple Object Access Protocol)


nanohttp-common.h File Reference

Go to the source code of this file.

Data Structures

struct  hpair
struct  _content_type
struct  part_t
struct  attachments_t

Defines

#define HEADER_CONTENT_ID   "Content-Id"
#define HEADER_CONTENT_TRANSFER_ENCODING   "Content-Transfer-Encoding"
#define TRANSFER_ENCODING_CHUNKED   "chunked"
#define HEADER_CACHE_CONTROL   "Cache-Control"
#define HEADER_CONNECTION   "Connection"
#define HEADER_DATE   "Date"
#define HEADER_PRAGMA   "Pragma"
#define HEADER_TRAILER   "Trailer"
#define HEADER_TRANSFER_ENCODING   "Transfer-Encoding"
#define HEADER_UPGRADE   "Upgrade"
#define HEADER_VIA   "Via"
#define HEADER_WARNING   "Warning"
#define HEADER_ALLOW   "Allow"
#define HEADER_CONTENT_ENCODING   "Content-Encoding"
#define HEADER_CONTENT_LANGUAGE   "Content-Language"
#define HEADER_CONTENT_LENGTH   "Content-Length"
#define HEADER_CONTENT_LOCATION   "Content-Location"
#define HEADER_CONTENT_MD5   "Content-MD5"
#define HEADER_CONTENT_RANGE   "Content-Range"
#define HEADER_CONTENT_TYPE   "Content-Type"
#define HEADER_EXPIRES   "Expires"
#define HEADER_LAST_MODIFIED   "Last-Modified"
#define NHTTP_ARG_CERT   "-NHTTPcert"
#define NHTTP_ARG_CERTPASS   "-NHTTPcertpass"
#define NHTTP_ARG_CA   "-NHTTPCA"
#define SAVE_STR(str)   ((str==0)?("(null)"):(str))
#define BOUNDARY_LENGTH   18
#define MAX_HEADER_SIZE   4256
#define MAX_FILE_BUFFER_SIZE   4256
#define REQUEST_MAX_PATH_SIZE   1024
#define RESPONSE_MAX_DESC_SIZE   1024
#define HTTP_STATUS_100_REASON_PHRASE   "Continue"
#define HTTP_STATUS_101_REASON_PHRASE   "Switching Protocols"
#define HTTP_STATUS_200_REASON_PHRASE   "OK"
#define HTTP_STATUS_201_REASON_PHRASE   "Created"
#define HTTP_STATUS_202_REASON_PHRASE   "Accepted"
#define HTTP_STATUS_203_REASON_PHRASE   "Non-Authoritative Information"
#define HTTP_STATUS_204_REASON_PHRASE   "No Content"
#define HTTP_STATUS_205_REASON_PHRASE   "Reset Content"
#define HTTP_STATUS_206_REASON_PHRASE   "Partial Content"
#define HTTP_STATUS_300_REASON_PHRASE   "Multiple Choices"
#define HTTP_STATUS_301_REASON_PHRASE   "Moved Permanently"
#define HTTP_STATUS_302_REASON_PHRASE   "Found"
#define HTTP_STATUS_303_REASON_PHRASE   "See Other"
#define HTTP_STATUS_304_REASON_PHRASE   "Not Modified"
#define HTTP_STATUS_305_REASON_PHRASE   "Use Proxy"
#define HTTP_STATUS_307_REASON_PHRASE   "Temporary Redirect"
#define HTTP_STATUS_400_REASON_PHRASE   "Bad Request"
#define HTTP_STATUS_401_REASON_PHRASE   "Unauthorized"
#define HTTP_STATUS_402_REASON_PHRASE   "Payment Required"
#define HTTP_STATUS_403_REASON_PHRASE   "Forbidden"
#define HTTP_STATUS_404_REASON_PHRASE   "Not Found"
#define HTTP_STATUS_405_REASON_PHRASE   "Method Not Allowed"
#define HTTP_STATUS_406_REASON_PHRASE   "Not Acceptable"
#define HTTP_STATUS_407_REASON_PHRASE   "Proxy Authentication Required"
#define HTTP_STATUS_408_REASON_PHRASE   "Request Time-out"
#define HTTP_STATUS_409_REASON_PHRASE   "Conflict"
#define HTTP_STATUS_410_REASON_PHRASE   "Gone"
#define HTTP_STATUS_411_REASON_PHRASE   "Length Required"
#define HTTP_STATUS_412_REASON_PHRASE   "Precondition Failed"
#define HTTP_STATUS_413_REASON_PHRASE   "Request Entity Too Large"
#define HTTP_STATUS_414_REASON_PHRASE   "Request-URI Too Large"
#define HTTP_STATUS_415_REASON_PHRASE   "Unsupported Media Type"
#define HTTP_STATUS_416_REASON_PHRASE   "Requested range not satisfiable"
#define HTTP_STATUS_417_REASON_PHRASE   "Expectation Failed"
#define HTTP_STATUS_500_REASON_PHRASE   "Internal Server Error"
#define HTTP_STATUS_501_REASON_PHRASE   "Not Implemented"
#define HTTP_STATUS_502_REASON_PHRASE   "Bad Gateway"
#define HTTP_STATUS_503_REASON_PHRASE   "Service Unavailable"
#define HTTP_STATUS_504_REASON_PHRASE   "Gateway Time-out"
#define HTTP_STATUS_505_REASON_PHRASE   "HTTP Version not supported"

Typedefs

typedef struct hpair hpair_t
typedef enum _http_version http_version_t
typedef struct _content_type content_type_t
typedef enum _hreq_method hreq_method_t

Enumerations

enum  _http_version { HTTP_1_0, HTTP_1_1 }
enum  _hreq_method {
  HTTP_REQUEST_POST, HTTP_REQUEST_GET, HTTP_REQUEST_OPTIONS, HTTP_REQUEST_HEAD,
  HTTP_REQUEST_PUT, HTTP_REQUEST_DELETE, HTTP_REQUEST_TRACE, HTTP_REQUEST_CONNECT,
  HTTP_REQUEST_UNKOWN
}

Functions

hpair_t * hpairnode_new (const char *key, const char *value, hpair_t *next)
hpair_t * hpairnode_parse (const char *str, const char *delim, hpair_t *next)
void hpairnode_free (hpair_t *pair)
void hpairnode_free_deep (hpair_t *pair)
char * hpairnode_get (hpair_t *pair, const char *key)
char * hpairnode_get_ignore_case (hpair_t *pair, const char *key)
hpair_t * hpairnode_copy (const hpair_t *src)
hpair_t * hpairnode_copy_deep (const hpair_t *src)
void hpairnode_dump_deep (const hpair_t *pairs)
void hpairnode_dump (const hpair_t *pair)
content_type_t * content_type_new (const char *content_type_str)
void content_type_free (content_type_t *ct)
struct part_t * part_new (const char *id, const char *filename, const char *content_type, const char *transfer_encoding, struct part_t *next)
void part_free (struct part_t *part)
struct attachments_t * attachments_new (void)
void attachments_free (struct attachments_t *message)
void attachments_add_part (struct attachments_t *attachments, struct part_t *part)


Detailed Description

Common definitions and functions

Define Documentation

#define HEADER_CONTENT_ID   "Content-Id"

#define HEADER_CONTENT_TRANSFER_ENCODING   "Content-Transfer-Encoding"

#define TRANSFER_ENCODING_CHUNKED   "chunked"


csoap project homepage: http://csoap.sourceforge.net