Functions | |
int | u_asctime_to_tt (const char *str, time_t *tp) |
Convert an asctime(3) string to time_t . | |
int | u_rfc850_to_tt (const char *str, time_t *tp) |
Convert an rfc850 time string to time_t . | |
int | u_rfc822_to_tt (const char *str, time_t *tp) |
Convert an rfc822 time string to time_t . | |
int | u_httpdate_to_tt (const char *str, time_t *tp) |
Convert an HTTP time string to time_t . | |
int | u_tt_to_rfc822 (char dst[RFC822_DATE_BUFSZ], time_t ts) |
Convert a time_t value to a rfc822 time string. | |
char * | u_strnstr (const char *buf, const char *sub, size_t buflen) |
Locate a substring in another string. | |
int | u_foreach_dir_item (const char *path, unsigned int mask, int(*cb)(struct dirent *, const char *, void *), void *arg) |
Apply the supplied callback to each file in a given directory. | |
int | u_match_ext (const char *filename, const char *extension) |
Match filename extension. | |
ssize_t | u_sqlncpy (char *d, const char *s, size_t slen, int flags) |
Copy and SQL escape/unescape a given string. | |
ssize_t | u_urlncpy (char *d, const char *s, size_t slen, int flags) |
Copy and URL escape/unescape a given string. | |
ssize_t | u_hexncpy (char *d, const char *s, size_t slen, int flags) |
Copy and HEX encode/decode a given string. | |
ssize_t | u_htmlncpy (char *d, const char *s, size_t slen, int flags) |
Copy and HTML escape/unescape a given string. | |
char * | u_stristr (const char *string, const char *sub) |
Locate a given substring ignoring case. | |
char * | u_strnrchr (const char *s, char c, size_t len) |
Locate a character in a string. | |
int | u_tmpfile_open (const char *tmpdir, io_t **pio) |
Create a temporary io_t object. | |
int | u_file_open (const char *file, int flags, io_t **pio) |
Create an io_t object from the file system object file . | |
int | u_getline (io_t *io, u_string_t *ln) |
Read a line from the io_t object io . | |
int | u_fgetline (FILE *in, u_string_t *ln) |
get a line from a FILE object | |
int | u_file_exists (const char *fqn) |
Tell if the given file exists. | |
void | u_tohex (char *hex, const char *src, size_t sz) |
Convert a given string in hexadecimal representation. | |
int | u_md5 (const char *buf, size_t sz, char out[MD5_DIGEST_BUFSZ]) |
Calculate the MD5 digest over a given buffer. | |
int | u_md5io (io_t *io, char out[MD5_DIGEST_BUFSZ]) |
Calculate the MD5 hash over an io_t stream. | |
const mime_map_t * | u_get_mime_map (const char *file_name) |
Get the MIME type of a file. | |
const char * | u_guess_mime_type (const char *file_name) |
Guess the MIME type of a file. | |
const char * | klone_version (void) |
Return KLone version string (x.y.z). |
int u_asctime_to_tt | ( | const char * | str, | |
time_t * | tp | |||
) |
Convert the asctime(3) string str
to its time_t
representation tp
.
str | the string to be converted | |
tp | the time_t conversion of str as a value-result argument |
0
successful~0
failure Definition at line 63 of file date.c.
Referenced by u_httpdate_to_tt().
int u_rfc850_to_tt | ( | const char * | str, | |
time_t * | tp | |||
) |
Convert the rfc850 string str
to its time_t
representation tp
.
str | the string to be converted | |
tp | the time_t conversion of str as a value-result argument |
0
successful~0
failure Definition at line 109 of file date.c.
Referenced by u_httpdate_to_tt().
int u_rfc822_to_tt | ( | const char * | str, | |
time_t * | tp | |||
) |
Convert the rfc822 string str
to its time_t
representation tp
.
str | the string to be converted | |
tp | the time_t conversion of str as a value-result argument |
0
successful~0
failure Definition at line 161 of file date.c.
Referenced by u_httpdate_to_tt().
int u_httpdate_to_tt | ( | const char * | str, | |
time_t * | tp | |||
) |
Convert the HTTP time string str
to its time_t
representation tp
.
str | the string to be converted | |
tp | the time_t conversion of str as a value-result argument |
0
successful~0
failure Definition at line 211 of file date.c.
References u_asctime_to_tt(), u_rfc822_to_tt(), and u_rfc850_to_tt().
int u_tt_to_rfc822 | ( | char | dst[RFC822_DATE_BUFSZ], | |
time_t | ts | |||
) |
Convert the time_t
value ts
to a rfc822 time string
dst | placeholder for the rfc822 time string. The buffer, of at least RFC822_DATE_BUFSZ bytes, must be preallocated by the caller. | |
ts | the time_t value to be converted |
0
successful~0
failure Definition at line 239 of file date.c.
Referenced by response_set_cookie(), response_set_date(), and response_set_last_modified().
char* u_strnstr | ( | const char * | buf, | |
const char * | sub, | |||
size_t | buflen | |||
) |
int u_foreach_dir_item | ( | const char * | path, | |
unsigned int | mask, | |||
int(*)(struct dirent *, const char *, void *) | cb, | |||
void * | arg | |||
) |
Apply the supplied callback cb
with additional arguments arg
to each file in directory path
which match the given mask
.
path | directory path | |
mask | matching file mask | |
cb | function to call | |
arg | optional additional arguments |
0
successful~0
error int u_match_ext | ( | const char * | filename, | |
const char * | extension | |||
) |
ssize_t u_sqlncpy | ( | char * | d, | |
const char * | s, | |||
size_t | slen, | |||
int | flags | |||
) |
Copy and SQL escape/unescape, depending on flags
value, the string s
into d
. The destination string, which must be at least slen
+ 1 bytes long, is NULL terminated.
d | the encoded/decoded string | |
s | string to process | |
slen | length of s | |
flags | one of SQLCPY_ENCODE or SQLCPY_DECODE |
d
not including the trailing '\0' or -1
on error. ssize_t u_urlncpy | ( | char * | d, | |
const char * | s, | |||
size_t | slen, | |||
int | flags | |||
) |
Copy an URL escaped/unescaped version of string s
, depending on flags
value, into d
. The destination string is NULL terminated. The destination string d
must be at least slen
+ 1 bytes long.
d | the encoded/decoded string | |
s | string to process | |
slen | length of s | |
flags | one of URLCPY_ENCODE or URLCPY_DECODE |
d
not including the trailing '\0' or -1
on error. Definition at line 495 of file utils.c.
Referenced by response_set_cookie().
ssize_t u_hexncpy | ( | char * | d, | |
const char * | s, | |||
size_t | slen, | |||
int | flags | |||
) |
Copy an HEX encoded/decoded version of string s
, depending on flags
value, into d
. The destination string d
, which must be at least slen
+ 1 bytes long, is NULL terminated.
d | the encoded/decoded string | |
s | string to process | |
slen | length of s | |
flags | one of HEXCPY_ENCODE or HEXCPY_DECODE |
d
not including the trailing '\0' or -1
on error. ssize_t u_htmlncpy | ( | char * | d, | |
const char * | s, | |||
size_t | slen, | |||
int | flags | |||
) |
Copy an HTML escaped/unescaped version of string s
, depending on flags
value, into d
. The destination string is NULL terminated. The destination string d
must be at least slen
+ 1 bytes long.
d | the encoded/decoded string | |
s | string to process | |
slen | length of s | |
flags | one of HTMLCPY_ENCODE or HTMLCPY_DECODE |
d
not including the trailing '\0' or -1
on error. char* u_stristr | ( | const char * | string, | |
const char * | sub | |||
) |
Locate the first occurrence of the null-terminated string sub
in the null-terminated string string
, ignoring the case of both string.
string | string to be searched | |
sub | substring to search |
sub
occurs nowhere in string
char* u_strnrchr | ( | const char * | s, | |
char | c, | |||
size_t | len | |||
) |
Locate the last occurrence of c
in the substring of length len
starting at s
.
s | pointer to the starting of the string | |
c | the character to search | |
len | length of the string to be searched |
c
doesn't occur in s
int u_tmpfile_open | ( | const char * | tmpdir, | |
io_t ** | pio | |||
) |
Create a temporary io_t
object at *pio
.
tmpdir | optional base temp directory, supply NULL to use the default value | |
pio | pointer to the temporary io_t object |
0
successful~0
error Definition at line 785 of file utils.c.
References io_name_set().
int u_file_open | ( | const char * | file, | |
int | flags, | |||
io_t ** | pio | |||
) |
Create an io_t
object at *pio
from the file system object file
. The file is opened with the permission bits given in mode
.
file | pathname of the file to open | |
flags | permission bits passed to the open syscall | |
pio | the io_t object associated to file |
0
successful~0
error Definition at line 847 of file utils.c.
References io_name_set().
int u_getline | ( | io_t * | io, | |
u_string_t * | ln | |||
) |
int u_fgetline | ( | FILE * | in, | |
u_string_t * | ln | |||
) |
int u_file_exists | ( | const char * | fqn | ) |
void u_tohex | ( | char * | hex, | |
const char * | src, | |||
size_t | sz | |||
) |
Convert the string src
of lenght sz
into its hexadecimal representation hex
. The string hex
must be at least 2
*
sz
long.
hex | the string holding the hexadecimal conversion of src | |
src | the string that has to be converted | |
sz | the length of src |
int u_md5 | ( | const char * | buf, | |
size_t | sz, | |||
char | out[MD5_DIGEST_BUFSZ] | |||
) |
Calculate the MD5 digest over the supplied buffer buf
of size sz
and place it at out
.
buf | the buffer to be hashed | |
sz | length in bytes of buf | |
out | hexadecimal string containing the MD5 hash calculated over buf . It must be at least MD5_DIGEST_BUFSZ bytes long. |
0
always successful Definition at line 1067 of file utils.c.
References u_tohex().
int u_md5io | ( | io_t * | io, | |
char | out[MD5_DIGEST_BUFSZ] | |||
) |
Calculate the MD5 hash over an io_t
stream io
and place the result as an hexadecimal string into out
.
io | the io_t stream to be hashed | |
out | hexadecimal string containing the MD5 hash calculated over buf . It must be at least MD5_DIGEST_BUFSZ bytes long. |
0
successful~0
error const mime_map_t* u_get_mime_map | ( | const char * | file_name | ) |
const char* u_guess_mime_type | ( | const char * | file_name | ) |