HTTP protocol definitions for daemons. More...
Go to the source code of this file.
Data Structures | |
struct | _REQUEST |
HTTP request information structure. More... | |
struct | _MIMETYPES |
struct | _AUTHINFO |
HTTP authorization information structure. More... | |
struct | _CGIFUNCTION |
Registered CGI function. More... | |
Defines | |
#define | METHOD_GET 1 |
#define | METHOD_POST 2 |
#define | METHOD_HEAD 3 |
#define | HTTP_CONN_CLOSE 1 |
#define | HTTP_CONN_KEEP_ALIVE 2 |
#define | HTTP_OF_USE_HOST_TIME 0x00000001UL |
#define | HTTP_OF_USE_FILE_TIME 0x00000002UL |
Typedefs | |
typedef struct _REQUEST | REQUEST |
typedef struct _MIMETYPES | MIMETYPES |
typedef struct _AUTHINFO | AUTHINFO |
typedef struct _CGIFUNCTION | CGIFUNCTION |
Functions | |
void | NutHttpProcessRequest (FILE *stream) |
Process the next HTTP request. | |
void | NutHttpProcessQueryString (REQUEST *req) |
Parses the QueryString. | |
void | NutHttpSendHeaderTop (FILE *stream, REQUEST *req, int status, char *title) |
Send top lines of a standard HTML header. | |
void | NutHttpSendHeaderBottom (FILE *stream, REQUEST *req, char *mime_type, long bytes) |
Send bottom lines of a standard HTML header. | |
void | NutHttpSendHeaderBot (FILE *stream, char *mime_type, long bytes) |
Send bottom lines of a standard HTML header. | |
void | NutHttpSendError (FILE *stream, REQUEST *req, int status) |
Send a HTTP error response. | |
char * | NutGetMimeType (char *name) |
Return the mime type description of a specified file name. | |
void * | NutGetMimeHandler (char *name) |
Return the mime type handler of a specified file name. | |
uint8_t | NutSetMimeHandler (char *extension, void(*handler)(FILE *stream, int fd, int file_len, char *http_root, REQUEST *req)) |
Set the mime type handler for a specified file extension. | |
int | NutHttpAuthValidate (REQUEST *req) |
Validate an authorization request. | |
int | NutRegisterAuth (const char *dirname, const char *login) |
Register an authorization entry. | |
void | NutClearAuth (void) |
Clear all authorization entries. | |
void | NutHttpSetOptionFlags (uint32_t flags) |
Set HTTP option flags. | |
uint32_t | NutHttpGetOptionFlags (void) |
Retrieve HTTP option flags. | |
int | NutRegisterHttpRoot (char *path) |
Register the HTTP server's root directory. | |
void | NutRegisterCgiBinPath (char *path) |
Register a new cgi-bin path. | |
int | NutRegisterCgi (char *name, int(*func)(FILE *, REQUEST *)) |
Register a CGI function. | |
int | NutCgiCheckRequest (FILE *stream, REQUEST *req) |
Check if request is a cgi call. | |
void | NutCgiProcessRequest (FILE *stream, REQUEST *req, int name_pos) |
Process an incoming CGI request. | |
void | NutHttpProcessPostQuery (FILE *stream, REQUEST *req) |
Parses the QueryString. | |
char * | NutHttpURLEncode (char *str) |
URLEncodes a string. | |
void | NutHttpURLDecode (char *str) |
URLDecodes a string. | |
char * | NutHttpGetParameter (REQUEST *req, char *name) |
Gets a request parameter value by name. | |
int | NutHttpGetParameterCount (REQUEST *req) |
Gets the number of request parameters. | |
char * | NutHttpGetParameterName (REQUEST *req, int index) |
Gets the name of a request parameter. | |
char * | NutHttpGetParameterValue (REQUEST *req, int index) |
Get the value of a request parameter. |
HTTP protocol definitions for daemons.
* * $Log$ * Revision 1.11 2008/08/11 07:00:24 haraldkipp * BSD types replaced by stdint types (feature request #1282721). * * Revision 1.10 2008/07/17 11:42:25 olereinhardt * Added prototype for new functions in cgi.c * * Revision 1.9 2008/01/31 09:28:18 haraldkipp * Expanded REQUEST structure to handle HTTP/1.1. Added MIMETYPES structure. * * Revision 1.8 2006/10/08 16:43:53 haraldkipp * Authentication info depended on static memory kept by the caller. Now a * local copy is held and NutClearAuth (which should have been named * NutHttpAuthClear, btw.) works correctly. * * Revision 1.7 2006/08/25 13:42:16 olereinhardt * added NutClearAuth(void); Thanks to Peter Sondermanns * * Revision 1.6 2006/03/16 15:25:34 haraldkipp * Changed human readable strings from u_char to char to stop GCC 4 from * nagging about signedness. * * Revision 1.5 2005/08/26 14:12:39 olereinhardt * Added NutHttpProcessPostQuery(FILE *stream, REQUEST * req) * * Revision 1.4 2005/08/05 11:23:11 olereinhardt * Added support to register a custom handler for mime types. * Added Server side include support and ASP support. * * Revision 1.3 2005/06/26 13:35:26 chaac * Added forgotten prototype for NutRegisterHttpRoot, fixes bug #1215853. Also fixed some prototypes when compiling with C++. * * Revision 1.2 2004/12/16 10:17:18 haraldkipp * Added Mikael Adolfsson's excellent parameter parsing routines. * *