X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=client%2Fclient.c;h=4f8ccae275389c531ddeba82d79900a953cf7f0c;hb=5aacaac430b101d72de440cf3833b6faee0eb1bd;hp=a2d1116c536c720791019b4dbc359d6418cb2395;hpb=fc6d778b923000b5c6ad8e108b0b184178a9d33f;p=yaz-moved-to-github.git diff --git a/client/client.c b/client/client.c index a2d1116..4f8ccae 100644 --- a/client/client.c +++ b/client/client.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2006, Index Data ApS * See the file LICENSE for details. * - * $Id: client.c,v 1.311 2006-07-06 10:17:51 adam Exp $ + * $Id: client.c,v 1.317 2006-10-04 07:26:00 adam Exp $ */ /** \file client.c * \brief yaz-client program @@ -180,7 +180,7 @@ int cmd_register_tab(const char* arg); static void close_session (void); -ODR getODROutputStream() +ODR getODROutputStream(void) { return out; } @@ -766,7 +766,7 @@ int cmd_open(const char *arg) return session_connect(cur_host); } -void try_reconnect() +void try_reconnect(void) { char* open_command; @@ -1410,7 +1410,7 @@ static int send_SRW_searchRequest(const char *arg) if (record_schema) sr->u.request->recordSchema = record_schema; if (recordsyntax_size == 1 && recordsyntax_list[0] == VAL_TEXT_XML) - sr->u.explain_request->recordPacking = "xml"; + sr->u.request->recordPacking = "xml"; return send_srw(sr); } #endif @@ -1891,7 +1891,7 @@ const char *get_ill_element (void *clientData, const char *element) return 0; } -static Z_External *create_external_itemRequest() +static Z_External *create_external_itemRequest(void) { struct ill_get_ctl ctl; ILL_ItemRequest *req; @@ -2087,6 +2087,9 @@ static int send_itemorder(const char *type, int itemno) Z_ExtendedServicesRequest *req = apdu->u.extendedServicesRequest; oident ItemOrderRequest; + + req->referenceId = set_refid (out); + ItemOrderRequest.proto = PROTO_Z3950; ItemOrderRequest.oclass = CLASS_EXTSERV; ItemOrderRequest.value = VAL_ITEMORDER; @@ -2099,7 +2102,7 @@ static int send_itemorder(const char *type, int itemno) return 0; } -static int only_z3950() +static int only_z3950(void) { if (!conn) { @@ -2291,14 +2294,17 @@ static int cmd_xmles(const char *arg) return 1; else { + char *asn_buf = 0; int noread = 0; char oid_str[51]; int oid_value_xmles = VAL_XMLES; Z_APDU *apdu = zget_APDU(out, Z_APDU_extendedServicesRequest); Z_ExtendedServicesRequest *req = apdu->u.extendedServicesRequest; + Z_External *ext = (Z_External *) odr_malloc(out, sizeof(*ext)); + req->referenceId = set_refid (out); req->taskSpecificParameters = ext; ext->indirect_reference = 0; ext->descriptor = 0; @@ -2317,10 +2323,13 @@ static int cmd_xmles(const char *arg) printf("Bad OID: %s\n", oid_str); return 0; } - - if (parse_cmd_doc(&arg, out, (char **) &ext->u.single_ASN1_type->buf, + + if (parse_cmd_doc(&arg, out, &asn_buf, &ext->u.single_ASN1_type->len, 0) == 0) return 0; + + ext->u.single_ASN1_type->buf = (unsigned char *) asn_buf; + req->packageType = yaz_oidval_to_z3950oid(out, CLASS_EXTSERV, oid_value_xmles); @@ -2425,11 +2434,11 @@ static int cmd_sru(const char *arg) } else { - if (yaz_matchstr(arg, "post")) + if (!yaz_matchstr(arg, "post")) sru_method = "post"; - else if (yaz_matchstr(arg, "get")) + else if (!yaz_matchstr(arg, "get")) sru_method = "get"; - else if (yaz_matchstr(arg, "soap")) + else if (!yaz_matchstr(arg, "soap")) sru_method = "soap"; else { @@ -3633,7 +3642,7 @@ int cmd_push_command(const char* arg) return 1; } -void source_rcfile() +void source_rcfile(void) { /* Look for a $HOME/.yazclientrc and source it if it exists */ struct stat statbuf; @@ -4307,7 +4316,7 @@ static struct { {"attributeset", cmd_attributeset, "",complete_attributeset,0,NULL}, {"querytype", cmd_querytype, "",complete_querytype,0,NULL}, {"refid", cmd_refid, "",NULL,0,NULL}, - {"itemorder", cmd_itemorder, "ill|item ",NULL,0,NULL}, + {"itemorder", cmd_itemorder, "ill|item|xml ",NULL,0,NULL}, {"update", cmd_update, " []",NULL,0,NULL}, {"update0", cmd_update0, " []",NULL,0,NULL}, {"xmles", cmd_xmles, " ",NULL,0,NULL},