Apache HTTPD
Classes | Macros | Functions | Variables
md_util.c File Reference
#include <assert.h>
#include <stdio.h>
#include <apr_lib.h>
#include <apr_strings.h>
#include <apr_portable.h>
#include <apr_file_info.h>
#include <apr_fnmatch.h>
#include <apr_tables.h>
#include <apr_uri.h>
#include "md.h"
#include "md_log.h"
#include "md_util.h"

Go to the source code of this file.

Classes

struct  md_util_fwalk_t
 
struct  link_ctx
 
struct  find_ctx
 

Macros

#define N6   (unsigned int)-1
 
#define BASE64URL_CHAR(x)   BASE64URL_CHARS[ (unsigned int)(x) & 0x3fu ]
 

Functions

apr_status_t md_util_pool_do (md_util_action *cb, void *baton, apr_pool_t *p)
 
static apr_status_t pool_vado (md_util_vaction *cb, void *baton, apr_pool_t *p, va_list ap)
 
apr_status_t md_util_pool_vdo (md_util_vaction *cb, void *baton, apr_pool_t *p,...)
 
void md_data_pinit (md_data_t *d, apr_size_t len, apr_pool_t *p)
 
md_data_tmd_data_pmake (apr_size_t len, apr_pool_t *p)
 
void md_data_init (md_data_t *d, const char *data, apr_size_t len)
 
void md_data_init_str (md_data_t *d, const char *str)
 
void md_data_null (md_data_t *d)
 
void md_data_clear (md_data_t *d)
 
md_data_tmd_data_make_pcopy (apr_pool_t *p, const char *data, apr_size_t len)
 
apr_status_t md_data_assign_copy (md_data_t *dest, const char *src, apr_size_t src_len)
 
void md_data_assign_pcopy (md_data_t *dest, const char *src, apr_size_t src_len, apr_pool_t *p)
 
apr_status_t md_data_to_hex (const char **phex, char separator, apr_pool_t *p, const md_data_t *data)
 
int md_array_remove_at (struct apr_array_header_t *a, int idx)
 
int md_array_remove (struct apr_array_header_t *a, void *elem)
 
int md_array_is_empty (const struct apr_array_header_t *array)
 
charmd_util_str_tolower (char *s)
 
int md_array_str_index (const apr_array_header_t *array, const char *s, int start, int case_sensitive)
 
int md_array_str_eq (const struct apr_array_header_t *a1, const struct apr_array_header_t *a2, int case_sensitive)
 
apr_array_header_tmd_array_str_clone (apr_pool_t *p, apr_array_header_t *src)
 
struct apr_array_header_tmd_array_str_compact (apr_pool_t *p, struct apr_array_header_t *src, int case_sensitive)
 
apr_array_header_tmd_array_str_remove (apr_pool_t *p, apr_array_header_t *src, const char *exclude, int case_sensitive)
 
int md_array_str_add_missing (apr_array_header_t *dest, apr_array_header_t *src, int case_sensitive)
 
apr_status_t md_util_fopen (FILE **pf, const char *fn, const char *mode)
 
apr_status_t md_util_fcreatex (apr_file_t **pf, const char *fn, apr_fileperms_t perms, apr_pool_t *p)
 
apr_status_t md_util_is_dir (const char *path, apr_pool_t *pool)
 
apr_status_t md_util_is_file (const char *path, apr_pool_t *pool)
 
apr_status_t md_util_is_unix_socket (const char *path, apr_pool_t *pool)
 
int md_file_exists (const char *fname, apr_pool_t *p)
 
apr_status_t md_util_path_merge (const char **ppath, apr_pool_t *p,...)
 
apr_status_t md_util_freplace (const char *fpath, apr_fileperms_t perms, apr_pool_t *p, md_util_file_cb *write_cb, void *baton)
 
apr_status_t md_text_fread8k (const char **ptext, apr_pool_t *p, const char *fpath)
 
static apr_status_t write_text (void *baton, struct apr_file_t *f, apr_pool_t *p)
 
apr_status_t md_text_fcreatex (const char *fpath, apr_fileperms_t perms, apr_pool_t *p, const char *text)
 
apr_status_t md_text_freplace (const char *fpath, apr_fileperms_t perms, apr_pool_t *p, const char *text)
 
static apr_status_t rm_recursive (const char *fpath, apr_pool_t *p, int max_level)
 
static apr_status_t prm_recursive (void *baton, apr_pool_t *p, apr_pool_t *ptemp, va_list ap)
 
apr_status_t md_util_rm_recursive (const char *fpath, apr_pool_t *p, int max_level)
 
static apr_status_t match_and_do (md_util_fwalk_t *ctx, const char *path, int depth, apr_pool_t *p, apr_pool_t *ptemp)
 
static apr_status_t files_do_start (void *baton, apr_pool_t *p, apr_pool_t *ptemp, va_list ap)
 
apr_status_t md_util_files_do (md_util_fdo_cb *cb, void *baton, apr_pool_t *p, const char *path,...)
 
static apr_status_t tree_do (void *baton, apr_pool_t *p, apr_pool_t *ptemp, const char *path)
 
static apr_status_t tree_start_do (void *baton, apr_pool_t *p, apr_pool_t *ptemp)
 
apr_status_t md_util_tree_do (md_util_fdo_cb *cb, void *baton, apr_pool_t *p, const char *path, int follow_links)
 
static apr_status_t rm_cb (void *baton, apr_pool_t *p, apr_pool_t *ptemp, const char *path, const char *name, apr_filetype_e ftype)
 
apr_status_t md_util_ftree_remove (const char *path, apr_pool_t *p)
 
int md_dns_is_name (apr_pool_t *p, const char *hostname, int need_fqdn)
 
int md_dns_is_wildcard (apr_pool_t *p, const char *domain)
 
int md_dns_matches (const char *pattern, const char *domain)
 
apr_array_header_tmd_dns_make_minimal (apr_pool_t *p, apr_array_header_t *domains)
 
int md_dns_domains_match (const apr_array_header_t *domains, const char *name)
 
int md_is_wild_match (const apr_array_header_t *domains, const char *name)
 
const charmd_util_schemify (apr_pool_t *p, const char *s, const char *def_scheme)
 
static apr_status_t uri_check (apr_uri_t *uri_parsed, apr_pool_t *p, const char *uri, const char **perr)
 
apr_status_t md_util_abs_uri_check (apr_pool_t *p, const char *uri, const char **perr)
 
apr_status_t md_util_abs_http_uri_check (apr_pool_t *p, const char *uri, const char **perr)
 
apr_status_t md_util_try (md_util_try_fn *fn, void *baton, int ignore_errs, apr_interval_time_t timeout, apr_interval_time_t start_delay, apr_interval_time_t max_delay, int backoff)
 
apr_status_t md_util_exec (apr_pool_t *p, const char *cmd, const char *const *argv, int *exit_code)
 
apr_size_t md_util_base64url_decode (md_data_t *decoded, const char *encoded, apr_pool_t *pool)
 
const charmd_util_base64url_encode (const md_data_t *data, apr_pool_t *pool)
 
static int attr_char (char c)
 
static int ptoken_char (char c)
 
static int skip_ws (link_ctx *ctx)
 
static int skip_nonws (link_ctx *ctx)
 
static unsigned int find_chr (link_ctx *ctx, char c, apr_size_t *pidx)
 
static int read_chr (link_ctx *ctx, char c)
 
static int skip_qstring (link_ctx *ctx)
 
static int skip_ptoken (link_ctx *ctx)
 
static int read_link (link_ctx *ctx)
 
static int skip_pname (link_ctx *ctx)
 
static int skip_pvalue (link_ctx *ctx)
 
static int skip_param (link_ctx *ctx)
 
static int pv_contains (link_ctx *ctx, const char *s)
 
static int find_url (void *baton, const char *key, const char *value)
 
const charmd_link_find_relation (const apr_table_t *headers, apr_pool_t *pool, const char *relation)
 
const charmd_util_parse_ct (apr_pool_t *pool, const char *cth)
 

Variables

static const char *const hex_const []
 
static const unsigned int BASE64URL_UINT6 []
 
static const unsigned char BASE64URL_CHARS []
 

Macro Definition Documentation

◆ BASE64URL_CHAR

#define BASE64URL_CHAR (   x)    BASE64URL_CHARS[ (unsigned int)(x) & 0x3fu ]

Definition at line 1155 of file md_util.c.

◆ N6

#define N6   (unsigned int)-1

Definition at line 1124 of file md_util.c.

Function Documentation

◆ attr_char()

static int attr_char ( char  c)
static

Definition at line 1252 of file md_util.c.

◆ files_do_start()

static apr_status_t files_do_start ( void *  baton,
apr_pool_t p,
apr_pool_t ptemp,
va_list  ap 
)
static

Definition at line 652 of file md_util.c.

◆ find_chr()

static unsigned int find_chr ( link_ctx ctx,
char  c,
apr_size_t pidx 
)
static

Definition at line 1329 of file md_util.c.

◆ find_url()

static int find_url ( void *  baton,
const char key,
const char value 
)
static

Definition at line 1508 of file md_util.c.

◆ match_and_do()

static apr_status_t match_and_do ( md_util_fwalk_t ctx,
const char path,
int  depth,
apr_pool_t p,
apr_pool_t ptemp 
)
static

< Type

Definition at line 591 of file md_util.c.

◆ md_array_is_empty()

int md_array_is_empty ( const struct apr_array_header_t array)

Return != 0 iff array is either NULL or empty

Definition at line 235 of file md_util.c.

◆ md_array_remove()

int md_array_remove ( struct apr_array_header_t a,
void *  elem 
)

In an array of pointers, remove all entries == elem. Returns the number of entries removed.

Definition at line 211 of file md_util.c.

◆ md_array_remove_at()

int md_array_remove_at ( struct apr_array_header_t a,
int  idx 
)

Definition at line 194 of file md_util.c.

◆ md_array_str_add_missing()

int md_array_str_add_missing ( apr_array_header_t dest,
apr_array_header_t src,
int  case_sensitive 
)

Definition at line 336 of file md_util.c.

◆ md_array_str_clone()

apr_array_header_t * md_array_str_clone ( apr_pool_t p,
apr_array_header_t src 
)

Definition at line 288 of file md_util.c.

◆ md_array_str_compact()

struct apr_array_header_t * md_array_str_compact ( apr_pool_t p,
struct apr_array_header_t src,
int  case_sensitive 
)

Create a new array with duplicates removed.

Definition at line 301 of file md_util.c.

◆ md_array_str_eq()

int md_array_str_eq ( const struct apr_array_header_t a1,
const struct apr_array_header_t a2,
int  case_sensitive 
)

Definition at line 268 of file md_util.c.

◆ md_array_str_index()

int md_array_str_index ( const apr_array_header_t array,
const char s,
int  start,
int  case_sensitive 
)

Definition at line 250 of file md_util.c.

◆ md_array_str_remove()

apr_array_header_t * md_array_str_remove ( apr_pool_t p,
struct apr_array_header_t src,
const char exclude,
int  case_sensitive 
)

Create a new array with all occurrences of <exclude> removed.

Definition at line 318 of file md_util.c.

◆ md_data_assign_copy()

apr_status_t md_data_assign_copy ( md_data_t dest,
const char src,
apr_size_t  src_len 
)

Definition at line 130 of file md_util.c.

◆ md_data_assign_pcopy()

void md_data_assign_pcopy ( md_data_t dest,
const char src,
apr_size_t  src_len,
apr_pool_t p 
)

Definition at line 143 of file md_util.c.

◆ md_data_clear()

void md_data_clear ( md_data_t d)

Free any present data and clear (NULL) it. Passing NULL is permitted.

Definition at line 112 of file md_util.c.

◆ md_data_init()

void md_data_init ( md_data_t d,
const char data,
apr_size_t  len 
)

Initialize md_data_t 'd', by borrowing 'len' bytes in data without copying. d will not take ownership.

Definition at line 95 of file md_util.c.

◆ md_data_init_str()

void md_data_init_str ( md_data_t d,
const char str 
)

Initialize md_data_t 'd', by borrowing the NUL-terminated str. d will not take ownership.

Definition at line 102 of file md_util.c.

◆ md_data_make_pcopy()

md_data_t * md_data_make_pcopy ( apr_pool_t p,
const char data,
apr_size_t  len 
)

Definition at line 120 of file md_util.c.

◆ md_data_null()

void md_data_null ( md_data_t d)

Init the data to empty, overwriting any content.

Definition at line 107 of file md_util.c.

◆ md_data_pinit()

void md_data_pinit ( md_data_t d,
apr_size_t  len,
apr_pool_t p 
)

Initialize md_data_t 'd', providing len bytes allocated from pool p.

Definition at line 79 of file md_util.c.

◆ md_data_pmake()

md_data_t * md_data_pmake ( apr_size_t  len,
apr_pool_t p 
)

Create a new md_data_t, providing len bytes allocated from pool p.

Definition at line 86 of file md_util.c.

◆ md_data_to_hex()

apr_status_t md_data_to_hex ( const char **  phex,
char  separator,
apr_pool_t p,
const md_data_t data 
)

Definition at line 169 of file md_util.c.

◆ md_dns_domains_match()

int md_dns_domains_match ( const apr_array_header_t domains,
const char name 
)

Determine if the given domains cover the name, including wildcard matching.

Returns
!= 0 iff name is matched by list of domains

Definition at line 907 of file md_util.c.

◆ md_dns_is_name()

int md_dns_is_name ( apr_pool_t p,
const char domain,
int  need_fqdn 
)

Is a host/domain name using allowed characters. Not a wildcard.

Parameters
domainname to check
need_fqdniff != 0, check that domain contains '.'
Returns
!= 0 iff domain looks like a non-wildcard, legal DNS domain name.

Definition at line 811 of file md_util.c.

◆ md_dns_is_wildcard()

int md_dns_is_wildcard ( apr_pool_t p,
const char domain 
)

Check if the given domain is a valid wildcard DNS name, e.g. *.example.org

Parameters
domainname to check
Returns
!= 0 iff domain is a DNS wildcard.

Definition at line 852 of file md_util.c.

◆ md_dns_make_minimal()

apr_array_header_t * md_dns_make_minimal ( apr_pool_t p,
struct apr_array_header_t domains 
)

Create a new array with the minimal set out of the given domain names that match all of them. If none of the domains is a wildcard, only duplicates are removed. If domains contain a wildcard, any name matching the wildcard will be removed.

Definition at line 870 of file md_util.c.

◆ md_dns_matches()

int md_dns_matches ( const char pattern,
const char domain 
)

Determine iff pattern matches domain, including case-ignore and wildcard domains. It is assumed that both names follow dns syntax.

Returns
!= 0 iff pattern matches domain

Definition at line 858 of file md_util.c.

◆ md_file_exists()

int md_file_exists ( const char fname,
apr_pool_t p 
)

Definition at line 411 of file md_util.c.

◆ md_is_wild_match()

int md_is_wild_match ( const apr_array_header_t domains,
const char name 
)
Returns
!= 0 iff name is matched by a wildcard pattern in domains

Definition at line 919 of file md_util.c.

◆ md_link_find_relation()

const char * md_link_find_relation ( const apr_table_t headers,
apr_pool_t pool,
const char relation 
)

Definition at line 1533 of file md_util.c.

◆ md_text_fcreatex()

apr_status_t md_text_fcreatex ( const char fpath,
apr_fileperms_t  perms,
apr_pool_t p,
const char text 
)

Definition at line 500 of file md_util.c.

◆ md_text_fread8k()

apr_status_t md_text_fread8k ( const char **  ptext,
apr_pool_t p,
const char fpath 
)

< Open the file for reading

Definition at line 472 of file md_util.c.

◆ md_text_freplace()

apr_status_t md_text_freplace ( const char fpath,
apr_fileperms_t  perms,
apr_pool_t p,
const char text 
)

Definition at line 521 of file md_util.c.

◆ md_util_abs_http_uri_check()

apr_status_t md_util_abs_http_uri_check ( apr_pool_t p,
const char uri,
const char **  perr 
)

Definition at line 1019 of file md_util.c.

◆ md_util_abs_uri_check()

apr_status_t md_util_abs_uri_check ( apr_pool_t p,
const char uri,
const char **  perr 
)

Definition at line 1005 of file md_util.c.

◆ md_util_base64url_decode()

apr_size_t md_util_base64url_decode ( md_data_t decoded,
const char encoded,
apr_pool_t pool 
)

Definition at line 1157 of file md_util.c.

◆ md_util_base64url_encode()

const char * md_util_base64url_encode ( const md_data_t data,
apr_pool_t pool 
)

Definition at line 1207 of file md_util.c.

◆ md_util_exec()

apr_status_t md_util_exec ( apr_pool_t p,
const char cmd,
const char *const argv,
int exit_code 
)

Definition at line 1084 of file md_util.c.

◆ md_util_fcreatex()

apr_status_t md_util_fcreatex ( apr_file_t **  pf,
const char fn,
apr_fileperms_t  perms,
apr_pool_t p 
)

< Open the file for writing

< Create the file if not there

< Open should fail if APR_FOPEN_CREATE and file exists.

Definition at line 362 of file md_util.c.

◆ md_util_files_do()

apr_status_t md_util_files_do ( md_util_fdo_cb cb,
void *  baton,
apr_pool_t p,
const char path,
  ... 
)

Definition at line 668 of file md_util.c.

◆ md_util_fopen()

apr_status_t md_util_fopen ( FILE **  pf,
const char fn,
const char mode 
)

Definition at line 352 of file md_util.c.

◆ md_util_freplace()

apr_status_t md_util_freplace ( const char fpath,
apr_fileperms_t  perms,
apr_pool_t p,
md_util_file_cb write_cb,
void *  baton 
)

Definition at line 433 of file md_util.c.

◆ md_util_ftree_remove()

apr_status_t md_util_ftree_remove ( const char path,
apr_pool_t p 
)

Definition at line 800 of file md_util.c.

◆ md_util_is_dir()

apr_status_t md_util_is_dir ( const char path,
apr_pool_t pool 
)

< Type

Definition at line 381 of file md_util.c.

◆ md_util_is_file()

apr_status_t md_util_is_file ( const char path,
apr_pool_t pool 
)

< Type

Definition at line 391 of file md_util.c.

◆ md_util_is_unix_socket()

apr_status_t md_util_is_unix_socket ( const char path,
apr_pool_t pool 
)

< Type

Definition at line 401 of file md_util.c.

◆ md_util_parse_ct()

const char * md_util_parse_ct ( apr_pool_t pool,
const char cth 
)

Definition at line 1547 of file md_util.c.

◆ md_util_path_merge()

apr_status_t md_util_path_merge ( const char **  ppath,
apr_pool_t p,
  ... 
)

Definition at line 416 of file md_util.c.

◆ md_util_pool_do()

apr_status_t md_util_pool_do ( md_util_action cb,
void *  baton,
apr_pool_t p 
)

Definition at line 39 of file md_util.c.

◆ md_util_pool_vdo()

apr_status_t md_util_pool_vdo ( md_util_vaction cb,
void *  baton,
apr_pool_t p,
  ... 
)

Definition at line 65 of file md_util.c.

◆ md_util_rm_recursive()

apr_status_t md_util_rm_recursive ( const char fpath,
apr_pool_t p,
int  max_level 
)

Remove a file/directory and all files/directories contain up to max_level. If max_level == 0, only an empty directory or a file can be removed.

Definition at line 586 of file md_util.c.

◆ md_util_schemify()

const char * md_util_schemify ( apr_pool_t p,
const char s,
const char def_scheme 
)

Definition at line 932 of file md_util.c.

◆ md_util_str_tolower()

char * md_util_str_tolower ( char s)

Definition at line 240 of file md_util.c.

◆ md_util_tree_do()

apr_status_t md_util_tree_do ( md_util_fdo_cb cb,
void *  baton,
apr_pool_t p,
const char path,
int  follow_links 
)

Depth first traversal of directory tree starting at path.

Definition at line 763 of file md_util.c.

◆ md_util_try()

apr_status_t md_util_try ( md_util_try_fn fn,
void *  baton,
int  ignore_errs,
apr_interval_time_t  timeout,
apr_interval_time_t  start_delay,
apr_interval_time_t  max_delay,
int  backoff 
)

Definition at line 1040 of file md_util.c.

◆ pool_vado()

static apr_status_t pool_vado ( md_util_vaction cb,
void *  baton,
apr_pool_t p,
va_list  ap 
)
static

Definition at line 51 of file md_util.c.

◆ prm_recursive()

static apr_status_t prm_recursive ( void *  baton,
apr_pool_t p,
apr_pool_t ptemp,
va_list  ap 
)
static

Definition at line 578 of file md_util.c.

◆ ptoken_char()

static int ptoken_char ( char  c)
static

Definition at line 1273 of file md_util.c.

◆ pv_contains()

static int pv_contains ( link_ctx ctx,
const char s 
)
static

Definition at line 1435 of file md_util.c.

◆ read_chr()

static int read_chr ( link_ctx ctx,
char  c 
)
static

Definition at line 1341 of file md_util.c.

◆ read_link()

static int read_link ( link_ctx ctx)
static

Definition at line 1378 of file md_util.c.

◆ rm_cb()

static apr_status_t rm_cb ( void *  baton,
apr_pool_t p,
apr_pool_t ptemp,
const char path,
const char name,
apr_filetype_e  ftype 
)
static

Definition at line 780 of file md_util.c.

◆ rm_recursive()

static apr_status_t rm_recursive ( const char fpath,
apr_pool_t p,
int  max_level 
)
static

< Type

< Stat the link not the file itself if it is a link

< Type

Definition at line 535 of file md_util.c.

◆ skip_nonws()

static int skip_nonws ( link_ctx ctx)
static

Definition at line 1319 of file md_util.c.

◆ skip_param()

static int skip_param ( link_ctx ctx)
static

Definition at line 1420 of file md_util.c.

◆ skip_pname()

static int skip_pname ( link_ctx ctx)
static

Definition at line 1393 of file md_util.c.

◆ skip_ptoken()

static int skip_ptoken ( link_ctx ctx)
static

Definition at line 1362 of file md_util.c.

◆ skip_pvalue()

static int skip_pvalue ( link_ctx ctx)
static

Definition at line 1408 of file md_util.c.

◆ skip_qstring()

static int skip_qstring ( link_ctx ctx)
static

Definition at line 1350 of file md_util.c.

◆ skip_ws()

static int skip_ws ( link_ctx ctx)
static

Definition at line 1309 of file md_util.c.

◆ tree_do()

static apr_status_t tree_do ( void *  baton,
apr_pool_t p,
apr_pool_t ptemp,
const char path 
)
static

< Type

Definition at line 688 of file md_util.c.

◆ tree_start_do()

static apr_status_t tree_start_do ( void *  baton,
apr_pool_t p,
apr_pool_t ptemp 
)
static

< Type

< Type

< Stat the link not the file itself if it is a link

Definition at line 743 of file md_util.c.

◆ uri_check()

static apr_status_t uri_check ( apr_uri_t uri_parsed,
apr_pool_t p,
const char uri,
const char **  perr 
)
static

Definition at line 948 of file md_util.c.

◆ write_text()

static apr_status_t write_text ( void *  baton,
struct apr_file_t f,
apr_pool_t p 
)
static

Definition at line 491 of file md_util.c.

Variable Documentation

◆ BASE64URL_CHARS

const unsigned char BASE64URL_CHARS[]
static
Initial value:
= {
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd',
'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',
'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x',
'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', '-', '_', ' ', ' ', ' ', ' ', ' ', ' ',
}

Definition at line 1145 of file md_util.c.

◆ BASE64URL_UINT6

const unsigned int BASE64URL_UINT6[]
static
Initial value:
= {
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , 62, (unsigned int)-1 , (unsigned int)-1 ,
52, 53, 54, 55, 56, 57, 58, 59, 60, 61, (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , 63,
(unsigned int)-1 , 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 ,
(unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1 , (unsigned int)-1
}
typedef int(WSAAPI *apr_winapi_fpt_WSAPoll)(IN OUT LPWSAPOLLFD fdArray

Definition at line 1126 of file md_util.c.

◆ hex_const

const char* const hex_const[]
static
Initial value:
= {
"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "0a", "0b", "0c", "0d", "0e", "0f",
"10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "1a", "1b", "1c", "1d", "1e", "1f",
"20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "2a", "2b", "2c", "2d", "2e", "2f",
"30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "3a", "3b", "3c", "3d", "3e", "3f",
"40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "4a", "4b", "4c", "4d", "4e", "4f",
"50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "5a", "5b", "5c", "5d", "5e", "5f",
"60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "6a", "6b", "6c", "6d", "6e", "6f",
"70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "7a", "7b", "7c", "7d", "7e", "7f",
"80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "8a", "8b", "8c", "8d", "8e", "8f",
"90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "9a", "9b", "9c", "9d", "9e", "9f",
"a0", "a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "aa", "ab", "ac", "ad", "ae", "af",
"b0", "b1", "b2", "b3", "b4", "b5", "b6", "b7", "b8", "b9", "ba", "bb", "bc", "bd", "be", "bf",
"c0", "c1", "c2", "c3", "c4", "c5", "c6", "c7", "c8", "c9", "ca", "cb", "cc", "cd", "ce", "cf",
"d0", "d1", "d2", "d3", "d4", "d5", "d6", "d7", "d8", "d9", "da", "db", "dc", "dd", "de", "df",
"e0", "e1", "e2", "e3", "e4", "e5", "e6", "e7", "e8", "e9", "ea", "eb", "ec", "ed", "ee", "ef",
"f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9", "fa", "fb", "fc", "fd", "fe", "ff",
}

Definition at line 150 of file md_util.c.