wget_ocsp_db_t *wget_ocsp_db_init(wget_ocsp_db_t *ocsp_db) { if (!ocsp_db) ocsp_db = xmalloc(sizeof(wget_ocsp_db_t)); memset(ocsp_db, 0, sizeof(*ocsp_db)); ocsp_db->fingerprints = wget_hashmap_create(16, -2, (unsigned int(*)(const void *))_hash_ocsp, (int(*)(const void *, const void *))_compare_ocsp); wget_hashmap_set_key_destructor(ocsp_db->fingerprints, (void(*)(void *))wget_ocsp_free); wget_hashmap_set_value_destructor(ocsp_db->fingerprints, (void(*)(void *))wget_ocsp_free); ocsp_db->hosts = wget_hashmap_create(16, -2, (unsigned int(*)(const void *))_hash_ocsp, (int(*)(const void *, const void *))_compare_ocsp); wget_hashmap_set_key_destructor(ocsp_db->hosts, (void(*)(void *))wget_ocsp_free); wget_hashmap_set_value_destructor(ocsp_db->hosts, (void(*)(void *))wget_ocsp_free); wget_thread_mutex_init(&ocsp_db->mutex); return ocsp_db; }
wget_netrc_db_t *wget_netrc_db_init(wget_netrc_db_t *netrc_db) { if (!netrc_db) netrc_db = xmalloc(sizeof(wget_netrc_db_t)); memset(netrc_db, 0, sizeof(*netrc_db)); netrc_db->machines = wget_hashmap_create(16, -2, (unsigned int(*)(const void *))_hash_netrc, (int(*)(const void *, const void *))_compare_netrc); wget_hashmap_set_key_destructor(netrc_db->machines, (void(*)(void *))wget_netrc_free); wget_hashmap_set_value_destructor(netrc_db->machines, (void(*)(void *))wget_netrc_free); return netrc_db; }