-/*
- * Copyright (C) 1995-2006, Index Data ApS
+/* This file is part of the YAZ toolkit.
+ * Copyright (C) 1995-2009 Index Data
* See the file LICENSE for details.
- *
- * $Id: yaz-illclient.c,v 1.8 2007-06-08 10:01:07 heikki Exp $
*/
/* WARNING - This is work in progress - not at all ready */
int ret;
char *arg;
char *prog=*argv;
- char *version="$Id: yaz-illclient.c,v 1.8 2007-06-08 10:01:07 heikki Exp $"; /* from cvs */
+ char version[60];
struct nameval *nv;
/* default values */
yaz_log_init_file(arg);
break;
case 'V':
- printf("%s %s",prog, version );
+ yaz_version(version, 0);
+ printf("%s %s\n",prog, version);
break;
case 'D':
nv=parse_nameval(arg);
odr_reset(odr_prt); /*!*/
e->identifier = odr_intdup(odr,1);
- e->critical = odr_intdup(odr,0);
+ e->critical = odr_booldup(odr,0);
e->item = (Odr_any *) odr_malloc(odr,sizeof(*e->item));
if ( ! z_External(odr_ext, &ext,0,0) ) {
yaz_log(YLOG_FATAL,"Encoding of z_External failed ");
odr_reset(odr_prt); /*!*/
e->identifier = odr_intdup(odr,1);
- e->critical = odr_intdup(odr,0);
+ e->critical = odr_booldup(odr,0);
e->item = (Odr_any *) odr_malloc(odr,sizeof(*e->item));
if ( ! z_External(odr_ext, &ext,0,0) ) {
yaz_log(YLOG_FATAL,"Encoding of z_External failed ");
if (args->oclc_auth) {
req->num_iLL_request_extensions=2;
req->iLL_request_extensions=
+ (ILL_Extension **)
odr_malloc(odr, req->num_iLL_request_extensions*
- sizeof(*req->iLL_request_extensions));
+ sizeof(*req->iLL_request_extensions));
req->iLL_request_extensions[0]=makepromptextension(args,odr);
req->iLL_request_extensions[1]=makeoclcextension(args,odr);
}
}
if (1) {
FILE *F = fopen("req.apdu","w");
- fwrite ( buf_out, 1, len_out, F);
- fclose(F);
+ if (!F)
+ {
+ yaz_log(YLOG_FATAL|YLOG_ERRNO, "open req.apdu failed");
+ }
+ else
+ {
+ if (fwrite ( buf_out, 1, len_out, F) != len_out)
+ yaz_log(YLOG_FATAL|YLOG_ERRNO, "write req.apdu failed");
+ if (fclose(F))
+ yaz_log(YLOG_FATAL|YLOG_ERRNO, "write req.apdu failed");
+ }
}
} /* sendrequest */
printf("Already forwarded: \n");
break;
case ILL_User_Error_Report_intermediary_problem:
- printf("Intermediary problem: %d\n",
+ printf("Intermediary problem: " ODR_INT_PRINTF "\n",
*uerr->u.intermediary_problem);
break;
case ILL_User_Error_Report_security_problem:
getillstring(uerr->u.security_problem));
break;
case ILL_User_Error_Report_unable_to_perform:
- printf("Unable to perform: %d\n",
+ printf("Unable to perform: " ODR_INT_PRINTF "\n",
*uerr->u.unable_to_perform);
break;
default:
ILL_Provider_Error_Report *perr= err->provider_error_report;
switch( perr->which ) {
case ILL_Provider_Error_Report_general_problem:
- printf("General Problem: %d:",
+ printf("General Problem: " ODR_INT_PRINTF ":",
*perr->u.general_problem);
break;
case ILL_Provider_Error_Report_transaction_id_problem:
- printf("Transaction Id Problem: %d:",
+ printf("Transaction Id Problem: " ODR_INT_PRINTF ":",
*perr->u.general_problem);
break;
case ILL_Provider_Error_Report_state_transition_prohibited:
/*
* Local variables:
* c-basic-offset: 4
+ * c-file-style: "Stroustrup"
* indent-tabs-mode: nil
* End:
* vim: shiftwidth=4 tabstop=8 expandtab