X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Fseshigh.c;h=9bf39cae82cc5c75ed234d43c00bb0a704df87f8;hp=eea76c136b44a739bebf8469bbd13b2ef13f915a;hb=002e8d5e6cdb9f188fd91df930b6cc763f50f96d;hpb=f786c24ecec337c9055586cca0507c7e7bbe81f3 diff --git a/src/seshigh.c b/src/seshigh.c index eea76c1..9bf39ca 100644 --- a/src/seshigh.c +++ b/src/seshigh.c @@ -127,6 +127,16 @@ static void wr_diag(WRBUF w, int error, const char *addinfo) wrbuf_puts(w, " "); } +static int odr_int_to_int(Odr_int v) +{ + if (v >= INT_MAX) + return INT_MAX; + else if (v <= INT_MIN) + return INT_MIN; + else + return (int) v; +} + /* * Create and initialize a new association-handle. * channel : iochannel for the current line. @@ -836,15 +846,6 @@ static int ccl2pqf(ODR odr, const Odr_oct *ccl, CCL_bibset bibset, return 0; } -static int odr_int_to_int(Odr_int v) -{ - if (v >= INT_MAX) - return INT_MAX; - else if (v <= INT_MIN) - return INT_MIN; - else return v; -} - static void srw_bend_search(association *assoc, request *req, Z_SRW_PDU *sr, Z_SRW_PDU *res, @@ -2290,10 +2291,10 @@ static Z_APDU *process_initRequest(association *assoc, request *reqb) yaz_log(log_requestdetail, "Negotiated to v%d: %s", assoc->version, options); if (*req->maximumRecordSize < assoc->maximumRecordSize) - assoc->maximumRecordSize = *req->maximumRecordSize; + assoc->maximumRecordSize = odr_int_to_int(*req->maximumRecordSize); if (*req->preferredMessageSize < assoc->preferredMessageSize) - assoc->preferredMessageSize = *req->preferredMessageSize; + assoc->preferredMessageSize = odr_int_to_int(*req->preferredMessageSize); resp->preferredMessageSize = odr_intdup(assoc->encode, assoc->preferredMessageSize);