X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=client%2Fadmin.c;h=7812b65388987a0acaa0e167e4d97d267811c6da;hp=9dddf0dd1038cd44f6f749dd21937cbc89844d87;hb=6f64e76889c37909ac321a6149cbe45777e7688c;hpb=fb6d99a0c7e07d9cc4a315c447deaf6564a85505 diff --git a/client/admin.c b/client/admin.c index 9dddf0d..7812b65 100644 --- a/client/admin.c +++ b/client/admin.c @@ -1,8 +1,6 @@ -/* - * Copyright (C) 1995-2005, Index Data ApS +/* This file is part of the YAZ toolkit. + * Copyright (C) 1995-2010 Index Data * See the file LICENSE for details. - * - * $Id: admin.c,v 1.21 2005-06-25 15:46:01 adam Exp $ */ #include @@ -27,13 +25,13 @@ #include #include #include - +#include #include #include "admin.h" /* Helper functions to get to various statics in the client */ -ODR getODROutputStream(); +ODR getODROutputStream(void); extern char *databaseNames[]; extern int num_databaseNames; @@ -47,20 +45,15 @@ int sendAdminES(int type, char* param1) Z_APDU *apdu = zget_APDU(out, Z_APDU_extendedServicesRequest ); Z_ExtendedServicesRequest *req = apdu->u.extendedServicesRequest; Z_External *r; - int oid[OID_SIZE]; + Odr_oid *oid; Z_ESAdminOriginPartToKeep *toKeep; Z_ESAdminOriginPartNotToKeep *notToKeep; - oident update_oid; printf ("Admin request\n"); fflush(stdout); - /* Set up the OID for the external */ - update_oid.proto = PROTO_Z3950; - update_oid.oclass = CLASS_EXTSERV; - update_oid.value = VAL_ADMINSERVICE; + oid = odr_oiddup(out, yaz_oid_extserv_admin); - oid_ent_to_oid (&update_oid, oid); - req->packageType = odr_oiddup(out,oid); + req->packageType = oid; req->packageName = "1.Extendedserveq"; /* Allocate the external */ @@ -243,8 +236,14 @@ int cmd_adm_import(const char *arg) oct->len = oct->size = status.st_size; oct->buf = (unsigned char *) odr_malloc (out, oct->size); - fread (oct->buf, 1, oct->size, inf); - fclose (inf); + if (fread(oct->buf, 1, oct->size, inf) != (size_t) oct->size) + { + printf("Incomplete read of file %s\n", fname); + } + if (fclose(inf)) + { + printf("Close failed for file %s\n", fname); + } segment->segmentRecords[segment->num_segmentRecords++] = rec; @@ -306,6 +305,7 @@ int cmd_adm_startup(const char *arg) /* * Local variables: * c-basic-offset: 4 + * c-file-style: "Stroustrup" * indent-tabs-mode: nil * End: * vim: shiftwidth=4 tabstop=8 expandtab