Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals

request.c File Reference

Go to the source code of this file.

Defines

#define REQUEST_SET_STRING_FIELD(lval, rval)
#define SETUP_BUF_ACCESS_AT(idx)

Typedefs

typedef upload_info_s upload_info_t

Enumerations

enum  { REQUEST_DEFAULT_IDLE_TIMEOUT = 10, REQUEST_DEFAULT_POST_TIMEOUT = 600, REQUEST_DEFAULT_POST_MAXSIZE = 5*1024000 }

Functions

int request_is_encoding_accepted (request_t *rq, const char *encoding)
io_trequest_io (request_t *rq)
 Get the io_t object associated with a request object.
vars_trequest_get_cookies (request_t *rq)
 Get the cookies list.
const char * request_get_cookie (request_t *rq, const char *name)
 Get the value of a cookie named name.
vars_trequest_get_args (request_t *rq)
 Get request arguments.
const char * request_get_arg (request_t *rq, const char *name)
 Get a request argument.
int request_set_field (request_t *rq, const char *name, const char *value)
 Set a request field.
const char * request_get_uri (request_t *rq)
 Get the URI field of a request.
const char * request_get_filename (request_t *rq)
 Get the filename field of a request.
int request_set_filename (request_t *rq, const char *filename)
 Set the filename field of a request.
const char * request_get_query_string (request_t *rq)
 Get the query string field of a request.
const char * request_get_path_info (request_t *rq)
 Get the path info field of a request.
time_t request_get_if_modified_since (request_t *rq)
 Get IMS field of a request.
int request_set_resolved_filename (request_t *rq, const char *resolved_fn)
 Set the resolved filename field of a request.
http_trequest_get_http (request_t *rq)
 Get the HTTP server handle of a request.
int request_bind (request_t *rq, io_t *in)
 Bind request I/O to a given I/O.
int request_set_query_string (request_t *rq, const char *query)
 Set the query string of a request.
void request_clear_uri (request_t *rq)
 Clear the URI field of a request.
int request_set_path_info (request_t *rq, const char *path_info)
 Set the path info field of a request.
int request_set_resolved_path_info (request_t *rq, const char *resolved_pi)
 Set the resolved path info field of a request.
int request_set_uri (request_t *rq, const char *uri, int(*is_valid_uri)(void *, const char *, size_t), void *arg)
int request_set_method (request_t *rq, const char *method)
 Set the method of a request.
void request_set_cgi (request_t *rq, int cgi)
ssize_t request_get_content_length (request_t *rq)
 Get the content length of a request.
vars_trequest_get_uploads (request_t *rq)
 Get uploaded files.
int request_get_uploaded_filev (request_t *rq, var_t *v, char local_filename[U_FILENAME_MAX], char client_filename[U_FILENAME_MAX], char mime_type[MIME_TYPE_BUFSZ], size_t *file_size)
int request_get_uploaded_file (request_t *rq, const char *name, size_t idx, char local_filename[U_FILENAME_MAX], char client_filename[U_FILENAME_MAX], char mime_type[MIME_TYPE_BUFSZ], size_t *file_size)
 Get info and handles of an uploaded file.
int request_parse_data (request_t *rq)
int request_parse_header (request_t *rq, int(*is_valid_uri)(void *, const char *, size_t), void *arg)
int request_get_method (request_t *rq)
 Get the method of a request.
const char * request_get_resolved_filename (request_t *rq)
 Get resolved filename of a request.
const char * request_get_resolved_path_info (request_t *rq)
 Get the resolved path info of a request.
int request_print (request_t *rq)
int request_create (http_t *http, request_t **prq)
int request_free (request_t *rq)
int request_set_addr (request_t *rq, addr_t *addr)
int request_set_peer_addr (request_t *rq, addr_t *addr)
addr_trequest_get_addr (request_t *rq)
addr_trequest_get_peer_addr (request_t *rq)
header_trequest_get_header (request_t *rq)
field_trequest_get_field (request_t *rq, const char *name)
const char * request_get_field_value (request_t *rq, const char *name)


Define Documentation

#define REQUEST_SET_STRING_FIELD lval,
rval   ) 
 

Value:

do {                                            \
        U_FREE(lval);                               \
        if(rval)                                    \
        {                                           \
            lval = u_strdup(rval);                  \
            dbg_err_if(lval == NULL);               \
        }                                           \
    } while(0)

Definition at line 69 of file request.c.

Referenced by request_set_filename(), request_set_path_info(), request_set_query_string(), request_set_resolved_filename(), request_set_resolved_path_info(), and request_set_uri().

#define SETUP_BUF_ACCESS_AT idx   ) 
 

Value:

if(idx >= wtot) {                                                   \
            if(idx >= size)                                                 \
                return wtot; /* the output buffer is full */                \
                                                                            \
            /* we need to fetch some more bytes to access obuf[i] */        \
            dbg_err_if((rc = io_read(io, wbuf, idx + 1 - wtot)) < 0);       \
            if(rc == 0 || rc < idx + 1 - wtot)                              \
                return wtot + rc; /* eof or short count */                  \
            wbuf += rc;                                                     \
            wtot += rc;                                                     \
        }


Typedef Documentation

typedef struct upload_info_s upload_info_t
 

Referenced by request_get_uploaded_file(), and request_get_uploaded_filev().


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
REQUEST_DEFAULT_IDLE_TIMEOUT 
REQUEST_DEFAULT_POST_TIMEOUT 
REQUEST_DEFAULT_POST_MAXSIZE 

Definition at line 62 of file request.c.


←Products
© 2005-2006 - KoanLogic S.r.l. - All rights reserved