Date routines

Defines

#define APR_DATE_BAD   ((apr_time_t)0)

Functions

int apr_date_checkmask (const char *data, const char *mask)
apr_time_t apr_date_parse_http (const char *date)
apr_time_t apr_date_parse_rfc (const char *date)

Define Documentation

#define APR_DATE_BAD   ((apr_time_t)0)

A bad date.


Function Documentation

int apr_date_checkmask ( const char *  data,
const char *  mask 
)

Compare a string to a mask

Parameters:
data The string to compare
mask Mask characters (arbitrary maximum is 256 characters):

   '@' - uppercase letter
   '$' - lowercase letter
   '&' - hex digit
   '#' - digit
   '~' - digit or space
   '*' - swallow remaining characters
 
Remarks:
The mask tests for an exact match for any other character
Returns:
1 if the string matches, 0 otherwise
apr_time_t apr_date_parse_http ( const char *  date  ) 

Parses an HTTP date in one of three standard forms:

     Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 822, updated by RFC 1123
     Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
     Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format
 
Parameters:
date The date in one of the three formats above
Returns:
the apr_time_t number of microseconds since 1 Jan 1970 GMT, or 0 if this would be out of range or if the date is invalid.
apr_time_t apr_date_parse_rfc ( const char *  date  ) 

Parses a string resembling an RFC 822 date. This is meant to be leinent in its parsing of dates. Hence, this will parse a wider range of dates than apr_date_parse_http.

The prominent mailer (or poster, if mailer is unknown) that has been seen in the wild is included for the unknown formats.

     Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 822, updated by RFC 1123
     Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
     Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format
     Sun, 6 Nov 1994 08:49:37 GMT   ; RFC 822, updated by RFC 1123
     Sun, 06 Nov 94 08:49:37 GMT    ; RFC 822
     Sun, 6 Nov 94 08:49:37 GMT     ; RFC 822
     Sun, 06 Nov 94 08:49 GMT       ; Unknown [drtr@ast.cam.ac.uk] 
     Sun, 6 Nov 94 08:49 GMT        ; Unknown [drtr@ast.cam.ac.uk]
     Sun, 06 Nov 94 8:49:37 GMT     ; Unknown [Elm 70.85]
     Sun, 6 Nov 94 8:49:37 GMT      ; Unknown [Elm 70.85] 
 
Parameters:
date The date in one of the formats above
Returns:
the apr_time_t number of microseconds since 1 Jan 1970 GMT, or 0 if this would be out of range or if the date is invalid.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on 19 Jun 2014 for Apache Portable Runtime Utility Library by  doxygen 1.6.1