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

Header manipulation


Functions

const char * header_get_field_value (header_t *h, const char *name)
 Get field value.
field_theader_get_field (header_t *h, const char *name)
 Get a field given a name.
field_theader_get_fieldn (header_t *h, size_t idx)
 Get ith field in a header.
size_t header_field_count (header_t *h)
 Count fields in a header.
int header_set_field (header_t *h, const char *name, const char *value)
 Set the value of a field in a header.
int header_add_field (header_t *h, field_t *f)
 Add a field to a header.
int header_del_field (header_t *h, field_t *f)
 Delete a field from a header.
int header_clear (header_t *h)
 Clear a header.

Detailed Description


Function Documentation

const char * header_get_field_value header_t h,
const char *  name
 

Return a string representation of the field with name name in header h

Parameters:
h header object
name name of the field
Returns:
  • the field string corresponding to name
  • NULL if no field could be found

Definition at line 179 of file header.c.

References field_get_value(), and header_get_field().

Referenced by request_get_field_value(), request_is_encoding_accepted(), and response_get_field_value().

field_t * header_get_field header_t h,
const char *  name
 

Return the first matching field_t object with name name in header h

Parameters:
h header object
name name of the field to be searched
Returns:
  • the field string corresponding to name
  • NULL if no field could be found

Definition at line 152 of file header.c.

References fields, and field_s::name.

Referenced by header_get_field_value(), header_set_field(), request_get_field(), and response_get_field().

field_t * header_get_fieldn header_t h,
size_t  idx
 

Return the field_t object at index idx in header h.

Parameters:
h header object
idx index
Returns:
the pointer to the field or NULL if no field could be found

Definition at line 121 of file header.c.

References fields, and nfields.

size_t header_field_count header_t h  ) 
 

Return the number of fields in header h.

Parameters:
h header object
Returns:
the number of fields found in h

Definition at line 104 of file header.c.

References nfields.

int header_set_field header_t h,
const char *  name,
const char *  value
 

Set the value of field name to value in header h.

Parameters:
h header object
name name of the field
value value of the field
Returns:
0 if successful, non-zero on error

Definition at line 47 of file header.c.

References field_set(), header_add_field(), and header_get_field().

Referenced by response_set_content_encoding(), response_set_content_length(), response_set_content_type(), response_set_date(), response_set_field(), and response_set_last_modified().

int header_add_field header_t h,
field_t f
 

Add a field f to header h.

Parameters:
h header object
f field to be added
Returns:
0 on success, non-zero otherwise

Definition at line 222 of file header.c.

References fields, and nfields.

Referenced by header_set_field(), response_redirect(), and response_set_cookie().

int header_del_field header_t h,
field_t f
 

Delete the supplied field f in header h.

Parameters:
h header object
f field to be deleted
Returns:
0 on success, non-zero otherwise

Definition at line 201 of file header.c.

References fields, and nfields.

Referenced by header_clear().

int header_clear header_t h  ) 
 

Clear all items in header h.

Parameters:
h header object
Returns:
0 if successful, non-zero on error

Definition at line 79 of file header.c.

References fields, and header_del_field().