/* This file is part of Pazpar2.
- Copyright (C) 2006-2013 Index Data
+ Copyright (C) Index Data
Pazpar2 is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
YAZ_MUTEX mutex;
};
-#if YAZ_VERSIONL > 0x4023e
-#define strcmp_null(x, y) yaz_strcmp_null(x, y)
-#else
-#define strcmp_null(x, y) local_strcmp_null(x, y)
-
-static int local_strcmp_null(const char *v1, const char *v2)
-{
- if (v1)
- {
- if (v2)
- return strcmp(v1, v2);
- else
- return 1;
- }
- else if (v2)
- return -1;
- return 0;
-}
-#endif
-
// Create a new host structure for hostport
static struct host *create_host(const char *proxy,
const char *tproxy,
tproxy = xmalloc (strlen(url) + 10); /* so we can add :port */
strcpy(tproxy, url);
- for (cp = tproxy; *cp; cp++)
+ if (!strncmp(tproxy, "http://", 7))
+ cp = tproxy + 7;
+ else if (!strncmp(tproxy, "https://", 8))
+ cp = tproxy + 8;
+ else
+ cp = tproxy;
+ for (; *cp; cp++)
if (strchr("/?#~", *cp))
{
*cp = '\0';
yaz_mutex_enter(hosts->mutex);
for (p = hosts->hosts; p; p = p->next)
{
- if (!strcmp_null(p->tproxy, tproxy) &&
- !strcmp_null(p->proxy, proxy))
+ if (!yaz_strcmp_null(p->tproxy, tproxy) &&
+ !yaz_strcmp_null(p->proxy, proxy))
{
break;
}