Provided by: libwget0_0.0.20170806-1_amd64 bug

NAME

       libwget-utils

SYNOPSIS

   Functions
       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, uint64_t n)
       int wget_get_screen_size (int *width, int *height)
       char * wget_restrict_file_name (const char *fname, char *esc, int mode)

Detailed Description

       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.

Function Documentation

   int wget_strcmp (const char * s1, const char * s2)
       Parameters:
           s1 String
           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.

   int wget_strcasecmp (const char * s1, const char * s2)
       Parameters:
           s1 String
           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.

   int wget_strcasecmp_ascii (const char * s1, const char * s2)
       Parameters:
           s1 String
           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.

   int wget_strncasecmp_ascii (const char * s1, const char * s2, size_t n)
       Parameters:
           s1 String
           s2 String
           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.

   char* wget_strtolower (char * s)
       Parameters:
           s String to convert

       Returns:
           Value of s

       Converts ASCII string s to lowercase in place.

   int wget_strncmp (const char * s1, const char * s2, size_t n)
       Parameters:
           s1 String
           s2 String
           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.

   int wget_strncasecmp (const char * s1, const char * s2, size_t n)
       Parameters:
           s1 String
           s2 String
           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.

   void wget_memtohex (const unsigned char * src, size_t src_len, char * dst, size_t dst_size)
       Parameters:
           src Pointer to input buffer
           src_len Number of bytes to encode
           dst Buffer to hold the encoded string
           dst_size Size of dst in bytes

       Encodes a number of bytes into a lowercase hexadecimal C string.

   void wget_millisleep (int ms)
       Parameters:
           ms Number of milliseconds to sleep

       Pause for ms milliseconds.

   long long wget_get_timemillis (void)
       Return the current milliseconds since the epoch.

   int wget_percent_unescape (char * src)
       Parameters:
           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.

   int wget_match_tail (const char * s, const char * tail)
       Parameters:
           s String
           tail String

       Returns:
           1 if tail matches the end of s, 0 if not

       Checks if tail matches the end of the string s.

   int wget_match_tail_nocase (const char * s, const char * tail)
       Parameters:
           s String
           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.

   char* wget_strnglob (const char * str, size_t n, int flags)
       Parameters:
           globstr String
           n Size of string to run glob() against
           flags Flags to pass to glob()

       Returns:
           Expanded string after running glob

       Finds a pathname by running glob(3) on the pattern in the first n bytes of globstr.
       Returns a newly allocated string with the first n bytes replaced with the matching pattern
       obtained via glob(3) if one was found. Otherwise it returns NULL.

   char* wget_human_readable (char * buf, size_t bufsize, uint64_t n)
       Parameters:
           buf Result buffer
           bufsize Size of /p buf
           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.

   int wget_get_screen_size (int * width, int * height)
       Parameters:
           width Number of columns in terminal
           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.

   char* wget_restrict_file_name (const char * fname, char * esc, int mode)
       Parameters:
           fname File name to sanitize
           esc Pointer to the buffer where sanitized file name will be stored. Should be at least
           strlen(fname) * 3 + 1 bytes large.
           mode Mode of operation

       Returns:
           Either fname if no escaping took place, else esc.

       This functions exists to pass the Wget test suite. All we really need (Wget is targeted
       for Unix/Linux), is UNIX restriction (NUL and /) with escaping of control characters. See
       https://en.wikipedia.org/wiki/Comparison_of_file_systems

       Sanitizes file names by percent-escaping platform-specific illegal characters.

Author

       Generated automatically by Doxygen for wget2 from the source code.