X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fhttp.c;h=3f8fb53176cc4aadab5630ef0c10e996926d0c42;hb=b756b711841bac38e5b69baa51939ca9e1c01adb;hp=1eaad6484c5efc928952a1a2ab7e8a80c4eadbb4;hpb=fa4ce7352686da3893b47fde6e295cd4f558f014;p=yaz-moved-to-github.git diff --git a/src/http.c b/src/http.c index 1eaad64..3f8fb53 100644 --- a/src/http.c +++ b/src/http.c @@ -1,14 +1,15 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2009 Index Data + * Copyright (C) 1995-2011 Index Data * See the file LICENSE for details. */ - /** * \file http.c * \brief Implements HTTP decoding */ +#if HAVE_CONFIG_H +#include +#endif -#include #include #include #include @@ -141,13 +142,13 @@ static int decode_headers_content(ODR o, int off, Z_HTTP_Header **headers, /* chunk length .. */ int chunk_len = 0; for (; i < o->size-2; i++) - if (isdigit(o->buf[i])) + if (yaz_isdigit(o->buf[i])) chunk_len = chunk_len * 16 + (o->buf[i] - '0'); - else if (isupper(o->buf[i])) + else if (yaz_isupper(o->buf[i])) chunk_len = chunk_len * 16 + (o->buf[i] - ('A'-10)); - else if (islower(o->buf[i])) + else if (yaz_islower(o->buf[i])) chunk_len = chunk_len * 16 + (o->buf[i] - ('a'-10)); else @@ -231,6 +232,8 @@ void z_HTTP_header_add_basic_auth(ODR o, Z_HTTP_Header **hp, if (username == 0) return; + if (password == 0) + password = ""; len = strlen(username) + strlen(password); tmp = (char *) odr_malloc(o, len+2);