X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Fcomstack.c;h=0020c97669f6f019869c8a4419d787431ad8832a;hp=62978da05e2455e70cbeb9ad88000883470c4e2c;hb=8377081b9917f820ae91f17e24743c84ef0cfc4d;hpb=29cc293e92725df0aaf70fa4897600597dd8db9b diff --git a/src/comstack.c b/src/comstack.c index 62978da..0020c97 100644 --- a/src/comstack.c +++ b/src/comstack.c @@ -1,8 +1,6 @@ -/* - * Copyright (C) 1995-2007, Index Data ApS +/* This file is part of the YAZ toolkit. + * Copyright (C) 1995-2008 Index Data * See the file LICENSE for details. - * - * $Id: comstack.c,v 1.20 2007-10-07 08:53:26 adam Exp $ */ /** @@ -24,6 +22,14 @@ #define strncasecmp _strnicmp #endif +#if HAVE_GNUTLS_H +#define ENABLE_SSL 1 +#endif + +#if HAVE_OPENSSL_SSL_H +#define ENABLE_SSL 1 +#endif + static const char *cs_errlist[] = { "No error or unspecified error", @@ -85,7 +91,7 @@ static int cs_parse_host(const char *uri, const char **host, if (cp) { size_t len = cp - (uri + 8); - *connect_host = xmalloc(len+1); + *connect_host = (char *) xmalloc(len+1); memcpy(*connect_host, uri + 8, len); (*connect_host)[len] = '\0'; uri = cp+1; @@ -100,7 +106,7 @@ static int cs_parse_host(const char *uri, const char **host, } else if (strncmp (uri, "ssl:", 4) == 0) { -#if HAVE_OPENSSL_SSL_H +#if ENABLE_SSL *t = ssl_type; *host = uri + 4; *proto = PROTO_Z3950; @@ -128,7 +134,7 @@ static int cs_parse_host(const char *uri, const char **host, } else if (strncmp(uri, "https:", 6) == 0) { -#if HAVE_OPENSSL_SSL_H +#if ENABLE_SSL *t = ssl_type; *host = uri + 6; while (**host == '/') @@ -348,25 +354,25 @@ static int cs_complete_http(const char *buf, int len, int head_only) return 0; } -static int cs_complete_auto_x(const unsigned char *buf, int len, int head_only) +static int cs_complete_auto_x(const char *buf, int len, int head_only) { if (len > 5 && buf[0] >= 0x20 && buf[0] < 0x7f && buf[1] >= 0x20 && buf[1] < 0x7f && buf[2] >= 0x20 && buf[2] < 0x7f) { - int r = cs_complete_http((const char *) buf, len, head_only); + int r = cs_complete_http(buf, len, head_only); return r; } - return completeBER(buf, len); + return completeBER((const unsigned char *) buf, len); } -int cs_complete_auto(const unsigned char *buf, int len) +int cs_complete_auto(const char *buf, int len) { return cs_complete_auto_x(buf, len, 0); } -int cs_complete_auto_head(const unsigned char *buf, int len) +int cs_complete_auto_head(const char *buf, int len) { return cs_complete_auto_x(buf, len, 1); }