|
int | wget_strcmp (const char *s1, const char *s2) |
|
int | wget_strcasecmp (const char *s1, const char *s2) |
|
int | wget_strcasecmp_ascii (const char *s1, const char *s2) |
|
int | wget_strncasecmp_ascii (const char *s1, const char *s2, size_t n) |
|
char * | wget_strtolower (char *s) |
|
int | wget_strncmp (const char *s1, const char *s2, size_t n) |
|
int | wget_strncasecmp (const char *s1, const char *s2, size_t n) |
|
void | wget_memtohex (const unsigned char *src, size_t src_len, char *dst, size_t dst_size) |
|
void | wget_millisleep (int ms) |
|
long long | wget_get_timemillis (void) |
|
int | wget_percent_unescape (char *src) |
|
int | wget_match_tail (const char *s, const char *tail) |
|
int | wget_match_tail_nocase (const char *s, const char *tail) |
|
char * | wget_strnglob (const char *str, size_t n, int flags) |
|
char * | wget_human_readable (char *buf, size_t bufsize, size_t n) |
|
int | wget_get_screen_size (int *width, int *height) |
|
This is a collections of short routines that are used with libwget and/or Wget code. They may be useful to other developers that is why they are exported.
◆ wget_strcmp()
int wget_strcmp |
( |
const char * |
s1, |
|
|
const char * |
s2 |
|
) |
| |
- Parameters
-
[in] | s1 | String |
[in] | s2 | String |
- Returns
- 0 if both
s1
and s2
are NULL
-1 if s1
is NULL and s2
is not NULL
1 if s1
is not NULL and s2
is NULL else it returns strcmp(s1
, s2
)
This functions compares s1
and s2
in the same way as strcmp() does, except that it also handles NULL values.
◆ wget_strcasecmp()
int wget_strcasecmp |
( |
const char * |
s1, |
|
|
const char * |
s2 |
|
) |
| |
- Parameters
-
[in] | s1 | String |
[in] | s2 | String |
- Returns
- 0 if both
s1
and s2
are NULL
-1 if s1
is NULL and s2
is not NULL
1 if s1
is not NULL and s2
is NULL else it returns strcasecmp(s1
, s2
)
This functions compares s1
and s2
in the same way as strcasecmp() does, except that it also handles NULL values.
◆ wget_strcasecmp_ascii()
int wget_strcasecmp_ascii |
( |
const char * |
s1, |
|
|
const char * |
s2 |
|
) |
| |
- Parameters
-
[in] | s1 | String |
[in] | s2 | String |
- Returns
- 0 if both
s1
and s2
are the same disregarding case for ASCII letters a-z
0 if both s1
and s2
are NULL
<0 if s1
is NULL and s2
is not NULL or s1
is smaller than s2
>0 if s2
is NULL and s1
is not NULL or s1
is greater than s2
.
This functions compares s1
and s2
as ASCII strings, case insensitive. It also accepts NULL values.
◆ wget_strncasecmp_ascii()
int wget_strncasecmp_ascii |
( |
const char * |
s1, |
|
|
const char * |
s2, |
|
|
size_t |
n |
|
) |
| |
- Parameters
-
[in] | s1 | String |
[in] | s2 | String |
[in] | n | Max. number of chars to compare |
- Returns
- 0 if both
s1
and s2
are the same disregarding case for ASCII letters a-z
0 if both s1
and s2
are NULL
<0 if s1
is NULL and s2
is not NULL or s1
is smaller than s2
>0 if s2
is NULL and s1
is not NULL or s1
is greater than s2
.
This functions compares s1
and s2
as ASCII strings, case insensitive, up to a max number of n
chars. It also accepts NULL values.
◆ wget_strtolower()
char* wget_strtolower |
( |
char * |
s | ) |
|
- Parameters
-
[in,out] | s | String to convert |
- Returns
- Value of s
Converts ASCII string s
to lowercase in place.
◆ wget_strncmp()
int wget_strncmp |
( |
const char * |
s1, |
|
|
const char * |
s2, |
|
|
size_t |
n |
|
) |
| |
- Parameters
-
[in] | s1 | String |
[in] | s2 | String |
[in] | n | Max. number of chars to compare |
- Returns
- 0 if both
s1
and s2
are the same or if both s1
and s2
are NULL
<0 if s1
is NULL and s2
is not NULL or s1
is smaller than s2
>0 if s2
is NULL and s1
is not NULL or s1
is greater than s2
.
This functions compares s1
and s2
in the same way as strncmp() does, except that it also handles NULL values.
◆ wget_strncasecmp()
int wget_strncasecmp |
( |
const char * |
s1, |
|
|
const char * |
s2, |
|
|
size_t |
n |
|
) |
| |
- Parameters
-
[in] | s1 | String |
[in] | s2 | String |
[in] | n | Max. number of chars to compare |
- Returns
- 0 if both
s1
and s2
are the same disregarding case or if both s1
and s2
are NULL
<0 if s1
is NULL and s2
is not NULL or s1
is smaller than s2
>0 if s2
is NULL and s1
is not NULL or s1
is greater than s2
.
This functions compares s1
and s2
in the same way as strncasecmp() does, except that it also handles NULL values.
◆ wget_memtohex()
void wget_memtohex |
( |
const unsigned char * |
src, |
|
|
size_t |
src_len, |
|
|
char * |
dst, |
|
|
size_t |
dst_size |
|
) |
| |
- Parameters
-
[in] | src | Pointer to input buffer |
[in] | src_len | Number of bytes to encode |
[out] | dst | Buffer to hold the encoded string |
[in] | dst_size | Size of dst in bytes |
Encodes a number of bytes into a lowercase hexadecimal C string.
◆ wget_millisleep()
void wget_millisleep |
( |
int |
ms | ) |
|
- Parameters
-
[in] | ms | Number of milliseconds to sleep |
Pause for ms
milliseconds.
◆ wget_get_timemillis()
long long wget_get_timemillis |
( |
void |
| ) |
|
Return the current milliseconds since the epoch.
◆ wget_percent_unescape()
int wget_percent_unescape |
( |
char * |
src | ) |
|
- Parameters
-
[in,out] | src | String to unescape |
- Returns
- 0 if the string did not change
1 if unescaping took place
Does an inline percent unescape. Each occurrence of xx (x = hex digit) will converted into it's byte representation.
◆ wget_match_tail()
int wget_match_tail |
( |
const char * |
s, |
|
|
const char * |
tail |
|
) |
| |
- Parameters
-
[in] | s | String |
[in] | tail | String |
- Returns
- 1 if
tail
matches the end of s
, 0 if not
Checks if tail
matches the end of the string s
.
◆ wget_match_tail_nocase()
int wget_match_tail_nocase |
( |
const char * |
s, |
|
|
const char * |
tail |
|
) |
| |
- Parameters
-
[in] | s | String |
[in] | tail | String |
- Returns
- 1 if
tail
matches the end of s
, 0 if not
Checks if tail
matches the end of the string s
, disregarding the case, ASCII only.
◆ wget_strnglob()
char* wget_strnglob |
( |
const char * |
str, |
|
|
size_t |
n, |
|
|
int |
flags |
|
) |
| |
- Parameters
-
[in] | str | String |
[in] | n | Size of string to run glob() against |
[in] | flags | Flags to pass to glob() |
- Returns
- Expanded string after running glob
Finds a pathname matching a given pattern in a part of the input string and returns a string with the the first n
bytes replaced with the matching pattern obtained via glob() if one was found. Otherwise it returns NULL.
◆ wget_human_readable()
char* wget_human_readable |
( |
char * |
buf, |
|
|
size_t |
bufsize, |
|
|
size_t |
n |
|
) |
| |
- Parameters
-
[in] | buf | Result buffer |
[in] | bufsize | Size of /p buf |
[in] | n | Number to convert |
- Returns
- Pointer to printable representation of
n
Returns a human readable representation of n
. n
, a byte quantity, is converted to a human-readable abbreviated form a la sizes printed by `ls -lh'. The result is written into the provided buffer.
Unlike `with_thousand_seps', this approximates to the nearest unit. Quoting GNU libit: "Most people visually process strings of 3-4 digits effectively, but longer strings of digits are more prone to misinterpretation. Hence, converting to an abbreviated form usually improves readability."
This intentionally uses kilobyte (KB), megabyte (MB), etc. in their original computer-related meaning of "powers of 1024". We don't use the "*bibyte" names invented in 1998, and seldom used in practice. Wikipedia's entry on "binary prefix" discusses this in some detail.
◆ wget_get_screen_size()
int wget_get_screen_size |
( |
int * |
width, |
|
|
int * |
height |
|
) |
| |
- Parameters
-
[out] | width | Number of columns in terminal |
[out] | height | Number of rows in terminal |
- Returns
- Upon successful completion,
wget_get_screen_size
will return 0, and the values of width
and height
will be set accordingly. If an error was encountered, the function will return -1 without touching the values of width
and height
.
Get the size of the terminal to which the output is currently printed (stderr). This function accepts two int pointers and will set their values to the width and height of the active terminal in number of columns. If either of the parameter is NULL, its value will not be set by the function.