X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=zutil%2Fzget.c;h=62a0b95ac5de3307009e0685d6d97e798ebc8bcd;hp=8e09ca7c3fff4f16530f8070ade1e773c665e5e4;hb=c34d71d35aceed27cf7e30e6b329a235b48b9ccd;hpb=8f15e8046e0de12e8083ba941c60f854559cb6c3 diff --git a/zutil/zget.c b/zutil/zget.c index 8e09ca7..62a0b95 100644 --- a/zutil/zget.c +++ b/zutil/zget.c @@ -1,94 +1,9 @@ /* - * Copyright (c) 1995-2001, Index Data. + * Copyright (c) 1995-2002, Index Data. * See the file LICENSE for details. * Sebastian Hammer, Adam Dickmeiss * - * $Log: zget.c,v $ - * Revision 1.10 2001-09-24 21:48:46 adam - * Setting v1,v2,search and present options for init request. - * - * Revision 1.9 2001/05/18 11:42:03 adam - * YAZ Build date for WIN32. - * - * Revision 1.8 2001/05/17 14:16:15 adam - * Added EXTERNAL handling for item update0 (1.0). - * - * Revision 1.7 2001/05/16 07:22:56 adam - * YAZ CVS Date part of implementationVersion in init{request,Response}. - * - * Revision 1.6 2001/03/25 21:55:13 adam - * Added odr_intdup. Ztest server returns TaskPackage for ItemUpdate. - * - * Revision 1.5 2001/03/13 18:11:38 adam - * Altered zget_ExtendedServicesRequest - sets waitAction to waitIfPossible. - * - * Revision 1.4 2001/02/21 13:46:54 adam - * C++ fixes. - * - * Revision 1.3 2000/03/20 19:06:25 adam - * Added Segment request for fronend server. Work on admin for client. - * - * Revision 1.2 1999/11/30 13:47:12 adam - * Improved installation. Moved header files to include/yaz. - * - * Revision 1.1 1999/06/08 10:10:16 adam - * New sub directory zutil. Moved YAZ Compiler to be part of YAZ tree. - * - * Revision 1.17 1999/04/20 09:56:48 adam - * Added 'name' paramter to encoder/decoder routines (typedef Odr_fun). - * Modified all encoders/decoders to reflect this change. - * - * Revision 1.16 1998/08/19 16:10:05 adam - * Changed som member names of DeleteResultSetRequest/Response. - * - * Revision 1.15 1998/03/31 15:13:19 adam - * Development towards compiled ASN.1. - * - * Revision 1.14 1998/02/11 11:53:32 adam - * Changed code so that it compiles as C++. - * - * Revision 1.13 1998/01/29 13:13:39 adam - * Function zget_presentRequest fills resultSetId with "default" instead - * of "Default". - * - * Revision 1.12 1997/10/29 12:00:37 adam - * Routine zget_SearchRequest fills resultSetName member with "default" - * instead of "Default". - * - * Revision 1.11 1997/05/02 08:39:10 quinn - * New PDUs added, thanks to Ronald van der Meer - * - * Revision 1.10 1996/01/02 08:57:23 quinn - * Changed enums in the ASN.1 .h files to #defines. Changed oident.class to oclass - * - * Revision 1.9 1995/09/29 17:11:55 quinn - * Smallish - * - * Revision 1.8 1995/09/27 15:02:43 quinn - * Modified function heads & prototypes. - * - * Revision 1.7 1995/06/15 07:44:52 quinn - * Moving to v3. - * - * Revision 1.6 1995/06/14 15:26:37 quinn - * *** empty log message *** - * - * Revision 1.5 1995/06/07 14:42:30 quinn - * Fixed CLOSE - * - * Revision 1.4 1995/06/07 14:36:25 quinn - * Added CLOSE - * - * Revision 1.3 1995/06/05 10:52:06 quinn - * Fixed some negligences. - * - * Revision 1.2 1995/05/30 10:15:49 quinn - * Added our implementor's ID - * - * Revision 1.1 1995/05/22 11:30:20 quinn - * Adding Z39.50-1992 stuff to proto.c. Adding zget.c - * - * + * $Id: zget.c,v 1.11 2002-02-11 23:25:27 adam Exp $ */ #include @@ -457,85 +372,125 @@ Z_ExtendedServicesResponse *zget_ExtendedServicesResponse(ODR o) return r; } +Z_DuplicateDetectionRequest *zget_DuplicateDetectionRequest(ODR o) +{ + Z_DuplicateDetectionRequest *r = (Z_DuplicateDetectionRequest *) + odr_malloc(o, sizeof(*r)); + + r->referenceId = 0; + r->num_inputResultSetIds = 0; + r->inputResultSetIds = 0; + r->outputResultSetName = 0; + r->applicablePortionOfRecord = 0; + r->num_duplicateDetectionCriteria = 0; + r->duplicateDetectionCriteria = 0; + r->clustering = 0; + r->num_retentionCriteria = 0; + r->retentionCriteria = 0; + r->num_sortCriteria = 0; + r->sortCriteria = 0; + r->otherInfo = 0; + return r; +} + +Z_DuplicateDetectionResponse *zget_DuplicateDetectionResponse(ODR o) +{ + Z_DuplicateDetectionResponse *r = (Z_DuplicateDetectionResponse *) + odr_malloc(o, sizeof(*r)); + + r->referenceId = 0; + r->status = odr_intdup(o, Z_DuplicateDetectionResponse_success); + r->resultSetCount = 0; + r->num_diagnostics = 0; + r->diagnostics = 0; + r->otherInfo = 0; + return r; +} + Z_APDU *zget_APDU(ODR o, int which) { Z_APDU *r = (Z_APDU *)odr_malloc(o, sizeof(*r)); - + switch (r->which = which) { - case Z_APDU_initRequest: - r->u.initRequest = zget_InitRequest(o); - break; - case Z_APDU_initResponse: - r->u.initResponse = zget_InitResponse(o); - break; - case Z_APDU_searchRequest: - r->u.searchRequest = zget_SearchRequest(o); - break; - case Z_APDU_searchResponse: - r->u.searchResponse = zget_SearchResponse(o); - break; - case Z_APDU_presentRequest: - r->u.presentRequest = zget_PresentRequest(o); - break; - case Z_APDU_presentResponse: - r->u.presentResponse = zget_PresentResponse(o); - break; - case Z_APDU_deleteResultSetRequest: - r->u.deleteResultSetRequest = zget_DeleteResultSetRequest(o); - break; - case Z_APDU_deleteResultSetResponse: - r->u.deleteResultSetResponse = zget_DeleteResultSetResponse(o); - break; - case Z_APDU_scanRequest: - r->u.scanRequest = zget_ScanRequest(o); - break; - case Z_APDU_scanResponse: - r->u.scanResponse = zget_ScanResponse(o); - break; - case Z_APDU_triggerResourceControlRequest: - r->u.triggerResourceControlRequest = - zget_TriggerResourceControlRequest(o); - break; - case Z_APDU_resourceControlRequest: - r->u.resourceControlRequest = zget_ResourceControlRequest(o); - break; - case Z_APDU_resourceControlResponse: - r->u.resourceControlResponse = zget_ResourceControlResponse(o); - break; - case Z_APDU_segmentRequest: - r->u.segmentRequest = zget_Segment(o); - break; - case Z_APDU_close: - r->u.close = zget_Close(o); - break; - case Z_APDU_accessControlRequest: - r->u.accessControlRequest = zget_AccessControlRequest(o); - break; - case Z_APDU_accessControlResponse: - r->u.accessControlResponse = zget_AccessControlResponse(o); - break; - case Z_APDU_resourceReportRequest: - r->u.resourceReportRequest = zget_ResourceReportRequest(o); - break; - case Z_APDU_resourceReportResponse: - r->u.resourceReportResponse = zget_ResourceReportResponse(o); - break; - case Z_APDU_sortRequest: - r->u.sortRequest = zget_SortRequest(o); - break; - case Z_APDU_sortResponse: - r->u.sortResponse = zget_SortResponse(o); - break; - case Z_APDU_extendedServicesRequest: - r->u.extendedServicesRequest = zget_ExtendedServicesRequest(o); - break; - case Z_APDU_extendedServicesResponse: - r->u.extendedServicesResponse = zget_ExtendedServicesResponse(o); - break; - default: - fprintf(stderr, "Bad APDU-type to zget_APDU"); - exit(1); + case Z_APDU_initRequest: + r->u.initRequest = zget_InitRequest(o); + break; + case Z_APDU_initResponse: + r->u.initResponse = zget_InitResponse(o); + break; + case Z_APDU_searchRequest: + r->u.searchRequest = zget_SearchRequest(o); + break; + case Z_APDU_searchResponse: + r->u.searchResponse = zget_SearchResponse(o); + break; + case Z_APDU_presentRequest: + r->u.presentRequest = zget_PresentRequest(o); + break; + case Z_APDU_presentResponse: + r->u.presentResponse = zget_PresentResponse(o); + break; + case Z_APDU_deleteResultSetRequest: + r->u.deleteResultSetRequest = zget_DeleteResultSetRequest(o); + break; + case Z_APDU_deleteResultSetResponse: + r->u.deleteResultSetResponse = zget_DeleteResultSetResponse(o); + break; + case Z_APDU_scanRequest: + r->u.scanRequest = zget_ScanRequest(o); + break; + case Z_APDU_scanResponse: + r->u.scanResponse = zget_ScanResponse(o); + break; + case Z_APDU_triggerResourceControlRequest: + r->u.triggerResourceControlRequest = + zget_TriggerResourceControlRequest(o); + break; + case Z_APDU_resourceControlRequest: + r->u.resourceControlRequest = zget_ResourceControlRequest(o); + break; + case Z_APDU_resourceControlResponse: + r->u.resourceControlResponse = zget_ResourceControlResponse(o); + break; + case Z_APDU_segmentRequest: + r->u.segmentRequest = zget_Segment(o); + break; + case Z_APDU_close: + r->u.close = zget_Close(o); + break; + case Z_APDU_accessControlRequest: + r->u.accessControlRequest = zget_AccessControlRequest(o); + break; + case Z_APDU_accessControlResponse: + r->u.accessControlResponse = zget_AccessControlResponse(o); + break; + case Z_APDU_resourceReportRequest: + r->u.resourceReportRequest = zget_ResourceReportRequest(o); + break; + case Z_APDU_resourceReportResponse: + r->u.resourceReportResponse = zget_ResourceReportResponse(o); + break; + case Z_APDU_sortRequest: + r->u.sortRequest = zget_SortRequest(o); + break; + case Z_APDU_sortResponse: + r->u.sortResponse = zget_SortResponse(o); + break; + case Z_APDU_extendedServicesRequest: + r->u.extendedServicesRequest = zget_ExtendedServicesRequest(o); + break; + case Z_APDU_extendedServicesResponse: + r->u.extendedServicesResponse = zget_ExtendedServicesResponse(o); + case Z_APDU_duplicateDetectionRequest: + r->u.duplicateDetectionRequest = zget_DuplicateDetectionRequest(o); + break; + case Z_APDU_duplicateDetectionResponse: + r->u.duplicateDetectionResponse = zget_DuplicateDetectionResponse(o); + break; + default: + fprintf(stderr, "Bad APDU-type to zget_APDU"); + exit(1); } return r; }