X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fseshigh.c;h=4d5eb7e3965584c4524a955d8947c8a451c7c453;hb=b756b711841bac38e5b69baa51939ca9e1c01adb;hp=378b1305a4a58e237d76ef954d21c0e43c647fd0;hpb=f0d23836907782b75c45f9572ff0df25561b2cf8;p=yaz-moved-to-github.git diff --git a/src/seshigh.c b/src/seshigh.c index 378b130..4d5eb7e 100644 --- a/src/seshigh.c +++ b/src/seshigh.c @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2010 Index Data + * Copyright (C) 1995-2011 Index Data * See the file LICENSE for details. */ /** @@ -25,12 +25,14 @@ * minimize memory allocation/deallocation during normal operation. * */ +#if HAVE_CONFIG_H +#include +#endif #include #include #include #include -#include #if HAVE_SYS_TYPES_H #include @@ -54,7 +56,6 @@ #include #endif -#include #include #include #include "eventl.h" @@ -224,10 +225,6 @@ void destroy_association(association *h) request_delq(&h->outgoing); xfree(h); xmalloc_trav("session closed"); - if (cb && cb->one_shot) - { - exit(0); - } } static void do_close_req(association *a, int reason, char *message, @@ -541,6 +538,9 @@ static int srw_bend_init(association *assoc, Z_SRW_diagnostic **d, int *num, Z_S len = strlen(sr->username) + 1; if (sr->password) len += strlen(sr->password) + 2; + yaz_log(log_requestdetail, "username=%s password-len=%ld", + sr->username, (long) + (sr->password ? strlen(sr->password) : 0)); auth->which = Z_IdAuthentication_open; auth->u.open = (char *) odr_malloc(assoc->decode, len); strcpy(auth->u.open, sr->username); @@ -1918,7 +1918,7 @@ static void process_http_request(association *assoc, request *req) int t; const char *alive = z_HTTP_header_lookup(hreq->headers, "Keep-Alive"); - if (alive && isdigit(*(const unsigned char *) alive)) + if (alive && yaz_isdigit(*(const unsigned char *) alive)) t = atoi(alive); else t = 15; @@ -2502,6 +2502,7 @@ static Z_Records *pack_records(association *a, char *setname, Odr_int start, } if (freq.record == 0) /* no error and no record ? */ { + *pres = Z_PresentStatus_partial_4; *next = 0; /* signal end-of-set and stop */ break; }