From: Adam Dickmeiss Date: Thu, 31 Aug 2000 09:51:25 +0000 (+0000) Subject: Added record_syntax member for fetch method (raw OID). X-Git-Tag: YAZ.1.8~195 X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=commitdiff_plain;h=4f7e8b411cb0c30c02b3eaf23fdfef5275dae098 Added record_syntax member for fetch method (raw OID). --- diff --git a/CHANGELOG b/CHANGELOG index 40ae8f7..b26fa00 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,7 @@ Possible compatibility problems with earlier versions marked with '*'. +Added record_syntax OID for fetch interface for backend API. + Config file yaz-config now accepts options so that it returns specific compile settings, etc. Thanks to Morten Bøgeskov diff --git a/include/yaz/backend.h b/include/yaz/backend.h index b7917af..46d1d4b 100644 --- a/include/yaz/backend.h +++ b/include/yaz/backend.h @@ -24,7 +24,10 @@ * OF THIS SOFTWARE. * * $Log: backend.h,v $ - * Revision 1.7 2000-04-05 07:39:55 adam + * Revision 1.8 2000-08-31 09:51:25 adam + * Added record_syntax member for fetch method (raw OID). + * + * Revision 1.7 2000/04/05 07:39:55 adam * Added shared library support (libtool). * * Revision 1.6 2000/03/20 19:06:25 adam @@ -126,6 +129,7 @@ typedef struct { int start; int number; /* record number */ oid_value format; /* One of the CLASS_RECSYN members */ + int *record_syntax; /* same as above (raw OID) */ Z_ReferenceId *referenceId;/* reference ID */ Z_RecordComposition *comp; /* Formatting instructions */ ODR stream; /* encoding stream - memory source if required */ @@ -143,6 +147,7 @@ typedef struct bend_fetch_rr { int number; /* record number */ Z_ReferenceId *referenceId;/* reference ID */ oid_value request_format; /* One of the CLASS_RECSYN members */ + int *record_syntax; /* same as above (raw OID) */ Z_RecordComposition *comp; /* Formatting instructions */ ODR stream; /* encoding stream - memory source if req */ ODR print; /* printing stream */ diff --git a/server/seshigh.c b/server/seshigh.c index 8923b41..755b3e9 100644 --- a/server/seshigh.c +++ b/server/seshigh.c @@ -3,7 +3,10 @@ * See the file LICENSE for details. * * $Log: seshigh.c,v $ - * Revision 1.105 2000-07-06 10:38:47 adam + * Revision 1.106 2000-08-31 09:51:25 adam + * Added record_syntax member for fetch method (raw OID). + * + * Revision 1.105 2000/07/06 10:38:47 adam * Enhanced option --enable-tcpd. * * Revision 1.104 2000/04/05 07:39:55 adam @@ -1138,9 +1141,10 @@ static Z_DiagRecs *diagrecs(association *assoc, int error, char *addinfo) } static Z_Records *pack_records(association *a, char *setname, int start, - int *num, Z_RecordComposition *comp, - int *next, int *pres, oid_value format, - Z_ReferenceId *referenceId) + int *num, Z_RecordComposition *comp, + int *next, int *pres, oid_value format, + Z_ReferenceId *referenceId, + int *oid) { int recno, total_length = 0, toget = *num, dumped_records = 0; Z_Records *records = @@ -1183,6 +1187,7 @@ static Z_Records *pack_records(association *a, char *setname, int start, freq.number = recno; freq.comp = comp; freq.request_format = format; + freq.record_syntax = oid; freq.output_format = 0; freq.stream = a->encode; freq.print = a->print; @@ -1423,7 +1428,8 @@ static Z_APDU *response_searchRequest(association *assoc, request *reqb, else form = prefformat->value; resp->records = pack_records(assoc, req->resultSetName, 1, - toget, compp, next, presst, form, req->referenceId); + toget, compp, next, presst, form, req->referenceId, + req->preferredRecordSyntax); if (!resp->records) return 0; resp->numberOfRecordsReturned = toget; @@ -1462,7 +1468,7 @@ static Z_APDU *response_searchRequest(association *assoc, request *reqb, * speed - which is normally more true for search than for present. */ static Z_APDU *process_presentRequest(association *assoc, request *reqb, - int *fd) + int *fd) { Z_PresentRequest *req = reqb->request->u.presentRequest; oident *prefformat; @@ -1488,6 +1494,7 @@ static Z_APDU *process_presentRequest(association *assoc, request *reqb, bprr->start = *req->resultSetStartPoint; bprr->number = *req->numberOfRecordsRequested; bprr->format = form; + bprr->record_syntax = req->preferredRecordSyntax; bprr->comp = req->recordComposition; bprr->referenceId = req->referenceId; bprr->stream = assoc->encode; @@ -1518,7 +1525,7 @@ static Z_APDU *process_presentRequest(association *assoc, request *reqb, resp->records = pack_records(assoc, req->resultSetId, *req->resultSetStartPoint, num, req->recordComposition, next, presst, form, - req->referenceId); + req->referenceId, req->preferredRecordSyntax); if (!resp->records) return 0; resp->numberOfRecordsReturned = num;