25 #include <sys/types.h>
34 #include <sys/types.h>
49 host = xmalloc(
sizeof(
struct host));
50 host->
url = xstrdup(url);
54 host->
proxy = xstrdup(proxy);
59 host->
tproxy = xmalloc (strlen(url) + 10);
61 for (cp = host->
tproxy; *cp; cp++)
62 if (strchr(
"/?#~", *cp))
67 if (!strchr(host->
tproxy,
':'))
68 sprintf(cp,
":%d", default_port);
71 db_comment = strchr(host->
url,
'#');
95 const char *
proxy,
int port,
99 yaz_mutex_enter(hosts->
mutex);
101 if (!strcmp(p->
url, url))
103 if (p->
proxy && proxy && !strcmp(p->
proxy, proxy))
105 if (!p->
proxy && !proxy)
117 yaz_mutex_leave(hosts->
mutex);
134 struct host *p = (*pp)->hosts;
138 yaz_mutex_destroy(&p->
mutex);
145 yaz_mutex_destroy(&(*pp)->mutex);