Comment about JZKit
[yaz-moved-to-github.git] / CHANGELOG
1 Possible compatibility problems with earlier versions marked with '*'.
2
3 --- 1.8.6 2002/MM/DD
4
5 Fixed CCL parsing of "field=s".
6
7 WIN32 installer - using the excellent NSIS software from nullsoft.
8
9 Fixed CCL parsing of "field = - <number>".
10
11 Added function yaz_marc_decode that decodes MARC for line mode
12 display or XML (similar to that used by JZKit).
13
14 Fixed BER decoding of OPTIONAL CHOICE. The bug didn't affect the
15 Z39.50. But ISO/ILL was, however.
16
17 Added patch by Rustam T. Usmanov that implements Z39.50 duplicate
18 detection service (Z39.50-1995 Amendment 2) and Language Negotiation (3).
19 See:
20  http://lcweb.loc.gov/z3950/agency/amend/am2.html
21  http://lcweb.loc.gov/z3950/agency/defns/charneg-3.html
22
23 --- 1.8.5 2002/02/03
24
25 New YAZ client features: Command completion and new commands:
26 push_command, set_apdufile, set_marcdump, set_cclfields, register_oid.
27 Code provided by Jacob Poulsen.
28
29 New call oid_trav, that visits all registered OIDs via callback.
30
31 Function ZOOM_record_get now returns const char pointer rather than
32 void pointer. It saves a lot of type casts.
33
34 For YAZ client, command "auth" now allows you to set authentication
35 in IdPass style. It is enabled when three tokens are given - order
36 is user, group and password.
37
38 Fix memory leaks in MARC record handling for ZOOM.
39
40 New option for YAZ client, -k <kilobytes> that sets
41 maximum record size. Similar to -k option for generic frontend
42 server and yaz-ztest.
43
44 More fixes for scan. Non-zero stepSize handled. OID's fixes.
45
46 Prefix query parser reports "fail" when bad attribute set is given.
47
48 Fix in MARC decoder. Proximity logging. Fix for attribute set
49 in scan handler for server. Patches by Shigeru Ishida.
50
51 SSL/COMSTACK updates. cs_rcvconnect completes SSL handshake. ZOOM
52 works with SSL.
53
54 Configure option --with-openssl=<dir> now works when a directory is
55 specified. Patch provided by Morten Bøgeskov.
56
57 New option for YAZ client, -u <auth>, that sets authentication.
58
59 ZOOM fix: error information was sometimes "missing", since error
60 was cleared/reset too when it shouldn't.
61
62 ZOOM_record_get returns ISO2709 buffer when "raw" is given.
63
64 --- 1.8.4 2002/01/04
65
66 Scan for ZOOM API. New object ZOOM_scanset. New functions
67 ZOOM_connection_scan, ZOOM_scanset_size, ZOOM_scanset_term and
68 ZOOM_scanset_destroy.
69
70 New ZOOM function, ZOOM_connection_last_event, that returns type
71 of last event (such as "receive data", "send data", "apdu received",
72 etc.
73
74 New ZOOM option, schema, that specifies shema OID for retrieval.
75
76 New CCL feature. Qualifiers can be aliases for one or more
77 other qualifiers (if more than one is given, OR is used).
78
79 ZOOM uses named result sets if target supports it.
80
81 Two new YAZ client commands: .  (dot, which sources a script of YAZ
82 client commands), and ! (to execute shell command.). Implemented
83 by Jacob Poulsen.
84
85 Working on Debian packages.
86
87 --- 1.8.3 2001/11/19
88
89 YAZ client enables named result sets only if target supports it.
90
91 *** ZOOM. Prefix for ZOOM definitions changed from Z3950_ to ZOOM_.
92
93 * ZOOM. Removed Z3950_connection_host. Use Z3950_connection_option_get
94 with key="host" to get same result.
95
96 * ZOOM. Added Z3950_record_clone and removed Z3950_resultset_get.
97 Function Z3950_resultset_record(s) returns references to records
98 "owned" by resultset. To become owner use Z3950_record_clone.
99
100 Function z_ext_record handles Extended Services. Thanks to
101 Irina Dijour.
102
103 --- 1.8.2 2001/11/12
104
105 CCL Parser fix: ignore token comma when dealing with and-lists.
106
107 Documentation updates for COMSTACK.
108
109 * ZOOM changes. Query object renamed from Z3950_search to Z3950_query.
110 Changed prototype Z3950_records. For some functions, int parameters
111 were changed to size_t.
112
113 TCP/IP COMSTACK no longer uses getprotobyname to avoid memory leak
114 on some Unices.
115
116 New MARC decode/display function, marc_display_exl, which properly rejects
117 non-ISO2709 records. YAZ client uses it.
118
119 --- 1.8.1 2001/10/29
120
121 Fix bug: local attribute set wasn't set correctly in PQF strings.
122
123 --- 1.8 2001/10/25
124
125 * Old Z39.50 codecs no longer supported. 
126
127 Added ZOOM C binding. See http://zoom.z3950.org/
128
129 Renamed states for COMSTACKs to avoid confusion with events.
130
131 Implemented cs_look and proper cs_rcvconnect.
132
133 Fixed COMSTACK error that occurred on HPUX. Fix by Giannis Kosmas.
134
135 Configure detects POSIX threads on OpenBSD.
136
137 When sort flag 'i' was specified in yaz-client the caseSensitivy flag
138 was set to a wrong value.  Thanks to Robert Sanderson for reporting this.
139
140 When error is returned from present handler, non-surrogate diagnostic
141 is returned in present response (and fetch handler is no longer called).
142
143 * Minor adjustments to pquery parser (PQF). Token characters may be
144 escaped by using backslash (C-style).
145
146 PQF parser allows string attribute values to be specified. For @attr,
147 non-numeric characters after the equal-sign are treated as strings
148 (e.g. @attr 9=title).
149
150 CCL trunction character may be defined (@truncation in file)
151
152 * function zget_ExtendedServicesRequest sets waitAction to
153   waitIfPossible (was wait).
154
155 Added cs_set_blocking to set change blocking mode of a COMSTACK. Thanks
156 to Matthew Carey.
157
158 CCL operator names may be set in field definition files (CCL_bibset).
159 See ccl/bib1 for an example.
160
161 Fixes in ASN.1 compiler for C++ compatibility.
162
163 * Renamed members "and" and "or" in struct Z_Operator to "op_and"
164 and "op_or" to avoid conflict with C++.
165
166 Fixed problem with GNU readline detection on Redhat 7.0.
167
168 Added step-size for Scan backend handler.
169
170 Fixed bug that made the frontend server crash when no attribute
171 set was specified for scan.
172
173 Front-end server automatically switches to original working directory
174 when installed as an NT service. Previously -w had to be specified to
175 make it work.
176
177 Added extended attributes for retrieval module (data1), so that data1
178 records carry d1_readXML/SGML attributes. d1_read also supports
179 null-data rules ( <tag/>)
180
181 On UNIX when POSIX threads are available, a separate library libyazthread
182 is created. Programmers should link with that library and the yaz library
183 when using threads. The reason for the split was that some applications
184 on Linux, such as Apache, doesn't work well when using shared objects that
185 relies on threads.
186
187 Added SSL support for the COMSTACK. You start yaz-client and yaz-ztest
188 (or any frontend server) in SSL mode by specifying ssl: followed by
189 address. Only tested on UNIX.
190
191 Added feature for CCL module. Virtual structure s=al or s=ol generates
192 and-list and or-list respectively instead of phrase search.
193
194 Added some OID's.
195
196 * Added prefix "yaz_" for the functions log_init.., log_file..  and
197 log_mask_str. This was done to avoid name conflicts with other libraries
198 (such as other PHP extensions).
199
200 Added raw OID member for preferred record syntax (request_format_raw)
201 and returned record syntax (output_format_raw) for backend fetch method.
202
203 Config file yaz-config now accepts options so that it returns specific
204 compile settings, etc. Thanks to Morten Bøgeskov <morten@bogeskov.dk>
205
206 Shared library support for UNIX using GNU libtool.
207
208 * Modified backend interface. Request/Response struct's replaced by
209 one read/write C struct. For example bend_fetchrequest and
210 bend_fetchresult have been replaced by single bend_fetch_rr struct.
211 Every handler - even search has to be registered in bend_init
212 handler. This means that the YAZ library no longer refers to
213 external functions and it makes it possible to make the whole
214 thing a single DLL/SO.
215
216 Added Segment handler for backend server.
217
218 Added Zmbol/Zebra administrative functions to YAZ client.
219
220 Threaded frontend server on UNIX (when POSIX Threads are available).
221 Starting the server with option -T enables multi-threading.
222
223 --- 1.6 2000/03/03
224
225 Added configure option --enable-comp/disable-comp to control use
226 of YAZ ASN.1 compiler. Use --disable-comp to use the old *coders
227 located in sub directory asn.
228
229 YAZ ASN.1 compiler renamed to yaz-comp in sub directory. It's installed
230 in ${exec_prefix}/bin along with the other programs yaz-client and
231 yaz-ztest.
232
233 GNU automake used to maintain makefiles.
234
235 Added several OID's.
236
237 Changed retrieval module so that we can load records with no abstract
238 syntax defined. Tagpaths in these records are fully composed of string
239 tags.
240
241 Implemented ISO ILL protocol. Refer to stuff in sub directory ill.
242
243 --- 1.5 1999/12/10
244
245 On UNIX, the generated makefile now supports a proper 'make install'.
246 The prefix can be set via GNU configure to set the install location
247 (default is /usr/local).
248
249 * YAZ programs client and ztest were renamed to yaz-client and
250 yaz-ztest to avoid conflicts when users install YAZ in "standard"
251 locations, such as /usr/bin,/usr/local/bin,etc.
252
253 * YAZ Header files were moved from include to include/yaz. YAZ Header
254 files are referred to as include <yaz/log.h> rather than <log.h>.
255 The YAZ include path (-I ..) is therefore the same as before. Programmers
256 should update their #include statements or use -Ipath/include/yaz
257 instead. The main motivation for doing this change is that YAZ header files
258 can be installed in "standard" locations /usr/include,/usr/local/include 
259 without introducing conflicts, since ALL YAZ header files are stored
260 in subdirectory yaz (under /usr/include for example).
261
262 Compilation of YAZ for WIN32 is now handled by an nmake-style makefile 
263 rather than project/workspace files. We switched because project files
264 are incompatible between Visual C++ 5 and 6. Refer to windows.txt for
265 details.
266
267 Changed name of logging function, logf, to yaz_log, to prevent name
268 clash with some math-log functions. The YAZ header log.h defines logf
269 to yaz_log (#define) so there should be no incompatibilities by this
270 modification.
271
272 Added bend_start/bend_stop handlers for server. These handler are
273 called on start/stop of server. For windows they are called whenever
274 a service is started/stopped.
275
276 * YAZ now auto-generates decoders/encoders for the Z39.50 protocol using
277 a fairly small ASN.1 compiler written in Tcl. The compiler is located
278 in util/yc.tcl. The auto-generated C code structures are, in a few
279 cases, incompatible with the old decoders. There are differences in the
280 following C structures Z_DiagRec, Z_External, Z_SortRequest, Z_SortResponse,
281 Z_AttributesPlusTerm, Z_ProximityOperator, Z_DefaultDiagFormat.
282 The preprocessor variable ASN_COMPILED is defined when the compiled
283 ASN.1 is being used. Encoder/decoder routines as well as the Z39.50
284 protocol ASN.1 is located sub directory <tt>z39.50</tt>. If you
285 wish to use the old encoders/decoders you can specify --disable-yc
286 for configure.
287
288 Assigned OID for old DB Update (VAL_DBUPDATE0). Updated YAZ compiled
289 version so that it supports both new - and old version of DB Update
290
291 * Added 'name' parameter to ODR encoder/decoder routines to facilitate
292 pretty ODR print. Updated whole Z39.50 encoder/decoder to reflect the
293 change. The name parameter can be set to 0 in which no name is specified
294 for the construction. The macros odr_implicit and odr_explicit sets name
295 parameter to zero for the construction involved. New macros
296 odr_implicit_tag and odr_explicit_tag are similar to the others,
297 except that a name parameter is added. For programmers' that don't use
298 ODR they probably only need to change the call to z_APDU and z_External.
299
300 Added access control facility by interfacing the TCP wrapper library.
301 YAZ automatically attempts to find the TCP wrapper Library (-lwrap) and
302 tcpd.h on Unix systems. For the server, option -d<daemon> specifies the
303 name of the daemon and enables the access control as specified in
304 hosts.allow/hosts.deny. Refer to man pages tcpd(8) and hosts_access(5).
305
306 Fixed memory leak in ccl_find_str and ccl_qual_rm. Thanks to Hans van
307 den Dool <H.M.vdnDool@kub.nl>.
308
309 Added reference ID parameter to most functions in server API - refer
310 to backend.h. Thanks to Hans van den Dool <H.M.vdnDool@kub.nl>.
311
312 Changed name of ccl library to libccl.a (was ccl.a).
313
314 Fixed bug in decoder for Explain (Category TargetInfo).
315
316 Added support for GNU readline in client. Thanks to Jacob Poulsen
317 <ja7@dbc.dk>. GNU configure attempts to detect if readline is available.
318
319 * CHANGED DEFINITION OF ES: UPDATE (INCLUDING THE OID) to reflect the
320 new definition from the ZIG. NOTE THIS IF YOU HAVE AN UPDATE
321 IMPLEMENTATION! This change was made to the development version before
322 the ZIG decided to retract the amendment. If any users MUST be
323 compatible with the original Update definition, PLEASE CONTACT US, and
324 we will include a separate definition corresponding to the old Update
325 ES. Note that because of the change to the ASN.1 of the
326 TaskPackageRecordStructure we cannot define a single structure that
327 will support both versions.
328
329 * Added const modifier to buffer parameter for some ODR/BER encoding
330 routines: ber_dectag, ber_declen, odp_more_chunks, completeBER,
331 completeWAIS, odr_dumpBER.
332
333 Fixed bug in client.c which caused a crash when a scanResponse didn't
334 contain positionOfTerm.
335
336 * Fixed inconsistency in the ScanResponse/ListEntries protocol. This
337 * will cause an error in a client if a non-YAZ target sends both a
338 * list of Scan entries and non-surrogate diagnostics.
339
340 Retrieval module enhancements. Tag sets may be typed in the reference
341 to it. From the .abs-file the "tagset" directive takes a third optional
342 integer type for the tag set referenced. From a .tag-file the "include"
343 directive takes a third optional type as well. The old "type" directive
344 in the tag set itself is still recognized but acts as the default type
345 for the tag set.
346
347 Backend interface change. Individual Scan terms returned from bend_scan
348 may also be tagged as Surrogate Diagnostics. Refer to struct scan_entry
349 in include/backend.h.
350
351 Retrieval module enhancements. Multiple tag sets and attribute sets may
352 be specified in abstract syntax specs. Revised the error/warning for
353 logging messages reported by the retrieval module when reading the
354 various spec files.
355
356 Object Identifier system (oid_..) changed. The API is backwards
357 compatible but the oid-routines now allocates new OID's when needed.
358 Raw OID's may be specified in oid_getvalbyname.
359
360 YAZ now uses GNU configure to generate Makefile(s).
361
362 * Minor changes in some of the member names of DeleteResultSetRequest and
363 DeleteResultSetResponse. See include/proto.h.
364
365 * Changed some C definitions regarding EXPLAIN record syntax (prt-exp.h)
366 and added member 'languages' in TargetInfo (which was missing).
367
368 Changed the way attribute sets are handled in the retrieval
369 module. These are now cached, just like the abstract syntaxes
370 (schemas).
371
372 Changed YAZ so that it links with compiled ASN.1.
373
374 Added Explain-schema definitions and mapping routines. The following
375 Explain categories have been implemented: AttributeDetails,
376 AttributeSetInfo, DatabaseInfo, CategoryList and TargetInfo.
377
378 Fixed minor bug in Windows version of Server Library.
379
380 --- 1.4pl2+ 1998/4/17 (Released with Zebra)
381
382 Added Extended Services to server (backend.h). Thanks to Charles Woodfield.
383
384 Added EXTERNAL: UNIverse Resource Report (non-standard).
385
386 Implemened odr_enum and odr_set_of functions to handle ASN.1 types
387 ENUMERATED and SET OF.
388
389 * Added 'const' to some of the char pointer arguments for the
390 functions, data1_read_node, data1_getelementbytagname,
391 data1_insert_taggeddata, data1_getesetbyname, data1_getelementbyname,
392 data1_get_absyn.
393
394 Fixed bug in data1_insert_taggeddata - the last_child member of
395 parent wasn't initialised.
396
397 * Changed data1_read_record and data1_read_node so that the supplied
398 "SGML"-buffer is read-only. In particular the resulting data1 - tree
399 doesn't refer to any parts of the "SGML"-buffer.
400
401 Fixed bug in server library (Windows version of statserv_remove).
402
403 * Changed code so that it compiles as C++. The type definition
404 of Odr_fun which is a member of Odr_arm was changed. The result is,
405 that an explicit typecast is needed for the fun pointer when
406 using Odr_arm - as in:
407     {1, -1, -1, Z_IdAuthentication_idPass, (Odr_fun)z_IdPass},
408
409 Updated TagSet-G and -M definitions (tagsetm.tag and tagsetg.tag).
410
411 Implemented the new structured date and time definition as approved
412 by the ZIG. Added schemaId element to the specificTag in Espec-1
413 (also approved at the last ZIG). Thanks to RVDM.
414
415 Added some Object identifiers (RVDM).
416
417 Changed the Update Extended Service (RVDM).
418
419 Added command "refid" to client which specifies referenceId for
420 the following requests.
421
422 Implemented extended service handling for server. See ztest.c
423 for an example as well as backend.h. New handlers are registerd
424 in the Init handler.
425
426 * Changed interface for sort in server.
427
428 Added new members to statserv_options_block. It allows a server
429 to read options from another source than just the command line. Thanks
430 to Charles Woodfield.
431
432 * Changed definition of Z_Triple in file prt-grs.h - member boolean
433 renamed to zboolean. Some C++ compilers complained about the name.
434
435 Minor changes to gils.abs. Added index 's' (sort) on title
436 and date/time-last-modified.
437
438 --- 1.4pl2 1998/1/30
439
440 Fixed bug in server library regarding inetd mode (-i). This bug
441 was introduced by release 1.4.
442
443 --- 1.4pl1 1998/1/29
444
445 Added sort facility in client and backend server interface.
446
447 Fixed problem with dependencies in Makefile(s).
448
449 Fixed bugs for encoders/decoders of extended services and 
450 SearchInfoReport.
451
452 Implemented sub-tree feature for schemas. Sub-trees are
453 referenced in *.abs-files. See explain.abs for an example
454 of the use of this feature.
455
456 Modified bib1.att; local attributes for ANY didn't include
457 ANY itself (only affects use of the retrieval module).
458
459 Fixed bug in plain SGML reader in function data1_read_node:
460 tags with prefix "var" was incorrectly interpreted as variants.
461
462 Added feature "sub-schemas" to enable references to - and definitions
463 of - group of elements.
464
465 * Removed member parent from type data1_element (in data1.h).
466
467 Implemented function odr_nullval() that returns the value of
468 ODR_NULLVAL.
469
470 * Removed member num_children from data1_node (in data1.h).
471
472 Made NT service interface part of the server library. The
473 function statserv_main uses the NT service when required and
474 calls the statserv_start / statserv_close routines.
475
476 Routine zget_SearchRequest and zget_PresentRequest fills
477 resultSetName/Id member with "default" instead of "Default".
478
479 Fixed memory leak in server. Request queue member wasn't freed.
480
481 Fixed nmem_exit so that memory is freed.
482
483 --- 1.4 1997/10/2
484
485 Revised the CCL parser utility to be thread safe.
486
487 Added function, oid_ent_to_oid, to replace the function 
488 oid_getoidbyent, which is not thread safe.
489
490 * Added nmem_init and nmem_exit to initialize and release
491 NMEM resources. Function nmem_init should be called once in the
492 initial thread before NMEM/ODR is used. statserv.c and client.c
493 have been changed accordingly. The change was necessary to make
494 NMEM thread safe. The NMEM memory pool is shared amongst threads
495 in a process. Unix-based applications will still work fine without
496 calling this.
497
498 Added NT Services interface for the the Z39.50 (statserv) Server. 
499 Refer to the ztest.c source on the usage.
500
501 Windows 95/NT port using MSVC5.0. Project files are included in the
502 distribution.
503
504 * Defined new 'global' handle for the retrieval (data1) system. The
505 new handled, data1_handle, describes the state of the data1 system.
506 This handle is passed as first argument to virtually all
507 data1 related routines. The functions data1_create and data1_destroy
508 creates and destroys a data1 handle respectively.
509
510 Added ODR encode stream member to all backend request structures
511 init, search, scan etc. This stream should be used to allocate all
512 memory used for the response when thread safe operation is needed.
513
514 Changed the comstack utility, cs_addstr, to be thread safe. The
515 returned hostname string returned by the function is now part the
516 COMSTACK instance.
517
518 Added comstack utility, cs_straddr, which replaces the tcpip_strtoaddr
519 function. The cs_straddr takes a COMSTACK handle as argument, so this
520 function must be used after cs_create and before bind/connect.
521 This function is thread safe.
522
523 Moved test server to 'ztest' directory - generic server code still
524 in 'server' directory.
525
526 Made prefix query (pquery.c) utility thread safe.
527
528 Added new function modifier YAZ_EXPORT to 'export' public DLL
529 functions when using windows (see include/yconfig.h).
530
531 Added definitions to the OID database (util/oid.c) (RVDM).
532
533 Added new BIB-1 diagnostic messages to the handler diagbib1_str.
534
535 Added call to ccl_rpn_delete in client program.
536
537 Added ODR argument to ccl_rpn_query and ccl_scan_query to provide
538 release of RPN structure.
539
540 Added support for C++, headers uses extern "C" for public definitions.
541 With input from RVDM.
542
543 In handling of SEQUENCE OF: Counter set to zero when SEQUENCE OF is absent.
544 Thanks to Ronald van der Meer (RVDM).
545
546 Added initializers (zget_ routines) for a number of PDUs. Thanks to RVDM.
547
548 Added support for private extensions to the OID database
549 (oid_setprivateoids()). Thanks to RVDM.
550     
551 Added optional, physical ANY (key replication)
552
553 Fixed null-reference problem in GRS-1 output filter.
554
555 Proximity operator added to Prefix Query Format (PQF).
556
557 In test client command "base" accepts multiple databases.
558
559 Fixed bug in cs_close stack that caused trouble with WINSOCK.
560
561 --- 1.3 1996/10/11
562
563 Fixed tagging bug in ResourceReportResponse PDU encoder/decode.
564
565 Smallish bug-fixes in the new encoders/decoders (explain).
566
567 Bug fixed in DeleteRequest.
568
569 Fixed tagging bug of type 101 query in SearchRequest-Query PDU encoder/decoder.
570
571 Fixed tagging bug in ResourceReportResponse PDU encoder/decode.
572
573 Added SOIF syntax (using private OID for now) to retrieval module and client.
574
575 Added Update extended service.
576
577 Added SearchResult-1 additional info structure.
578
579 Added optional CCL (ISO8777) interpreter as separate module. Available
580 in linemode client.
581
582 --- 1.2 1996/6/10 (1st anniversary release)
583
584 Added Summary record syntax. Lightly tested.
585
586 Added OPAC record syntax. Untested.
587
588 Added ResourceReport service encoders/decoders. Untested.
589
590 Fixed bug in z_Unit - wrong tagging on unitSystem.
591
592 Fixed bug in the DiagRecs decoder.
593
594 Added options for max PDU size and session timeout to frontend-server.
595
596 Added documentation of query-language parsers and other supporting utilities.
597
598 [frontend-server] Added Attribute set to the bend_scanrequest API.
599
600 [frontend-server] NextResultSetPosition was sometimes set incorrectly when
601 surrogate diagnostics were generated.
602
603 [retrieval] Allow multiple local values for attribute.
604
605 [retrieval] Allow multiple attributes per element in .abs files. index type.
606
607 [retrieval] Added Summary tagset, abstract syntax, and d1-node/ASN filter.
608
609 --- 1.1pl2  1996/4/10
610
611 Minor changes, mostly specific to Zebra's requirements (retrieval)
612
613 --- 1.1  1996/2/20
614
615 Repaired bug in frontend server when running multiple listening
616 endpoints in dynamic mode.
617
618 z_External() now won't break if a known, ASN.1 value comes encapsulated
619 in an octet-string. The value will pass through unmodified in an Odr_oct.
620
621 Added a bit of code to the demo client to decode & display
622 ASN.1-structured records represented in the octet-aligned branch of
623 the EXTERNAL CHOICE. Thanks to CAS for prodding us to finally do this.
624
625 Added z_ext_getentbyref() to the ASN module. Doc updated.
626
627 * Completed the SCAN definition in the ASN module. This may break SCAN
628 code based on older YAZ-versions at compile-time. The fix is easy -
629 look in proto.h.
630
631 * Added 'displayTerm' and OtherInformation to the TermInfo structure
632 under the SCAN definition. Remember to initialize this, server-people.
633
634 Comstack should now support the WAIS protocol in TCP/IP mode. Note
635 that this does not extend to ODR and ASN.
636
637 Comstack allows insertion of established socket (primarily for
638 inetd-operation of servers). Doc updated.
639
640 Front-end server can now start from the inetd in TCP mode. Doc
641 updated.
642
643 --- 1.0pl4 1996/1/24
644
645 Added Sort PDU.
646
647 Fixed small problem in SUTRS-filter. A newline was sometimes inserted before
648 the rank and record number.
649
650 Adjustments to the frontend server.
651
652 Fixed diagnostic BER dumper. It ignored the file argument.
653
654 --- 1.0pl3 1996/1/2
655
656 Various changes to retrieval module.
657
658 Changed the union discriminators of the protocol files from enums to
659 ints paired with #defines.
660
661 *Changed oident.class to oident.oclass to avoid a reserved word in C++
662  compilers.
663
664 *Changed operator in the RPN structure to 'roperator', again to avoid a
665  conflict with C++.
666
667 Fixed problems in Explain decoders/encoders.
668
669 --- 1.0pl2 1995/12/6
670
671 Memory bug in log module fixed.
672
673 --- 1.0pl1 1995/12/5
674
675 Occasional malloc() of 0 bytes fixed in d1_espec.c.
676
677 Bug in Explain DatabaseInfo module fixed.
678
679 Some '\r' snuck into one or two of the ret'l config tables. A curse on Windows.
680
681 --- 1.0 1995/11/28
682
683 The shift to v1.0 signals that we now consider the *core* functionality
684 of YAZ reasonably stable (the core being more or less equivalent to
685 Z39.50-1992). Some of the really nifty v3 stuff is still not heavily
686 tested (Explain not at all - though that will happen soonish).
687
688 Minor changes to code to support Windows port.
689
690 Various minor changes after we're getting to use GRS-1 & co. more.
691
692 Added Espec-1 format.
693
694 Added VisibleString field body type to GRS-1. It is illegal acc. to my copy
695 of the protocol and it cannot be selected when encoding (maps into 'string'
696 when decoding). Needed to talk to some servers.
697
698 Demo client can request simple element set names.
699
700 Added Diagnostic Format encoders/decoders.
701
702 Added simple Close handling to frontend server (no hooks for resource
703 reporting yet), and demonstration client.
704
705 Added cs_addrstr() command to COMSTACK to retrieve peer hostname/address.
706
707 --- 1.0b3 1995/08/24
708
709 Fixed bug in the frontend-server. The numberOfRecordsReturned field was
710 handled incorrectly when records were requested in the searchResponse. This
711 will only affect you if you use the frontend-server.
712
713 Added GRS-1 encoders/decoders to the service-level API. Lightly tested.
714 Test-client will ask for and print GRS1. Ztest will return dummy records
715 on request.
716
717 Added Explain encoders/decoders to the service-level API. Untested.
718
719 Added Extended Services: Item Order encoders and decoders to the Service-
720 level API. Untested. We could use a recent copy of the pertinent bits
721 of the ILL protocol to add those bits.
722
723 Added diagnostic format 1 encoders/decoders to the service-level API.
724 Untested.
725
726 Moved pretty-printing of structure-wrappers ({..}) from odr_seq.c to
727 odr_cons.c, which causes a more correct output.
728
729 Fixed handling of searchRequest in frontend server. NextResultSetPosition
730 was always set to 0 when no records were requested in the searchRequest.
731
732 * Added better external-handling. This shouldn't harm old code that
733 *encodes* externals. It can break code that looks for a
734 'single-ASN1-type' representation, since those types that are known
735 are now decoded immediately. Look at the SUTRS sample code in
736 seshigh.c and client.c. Documentation updated.
737
738 Handling of structured records in bend_fetchresponse. Length -1 marks
739 structured record, type is deduced from format field.
740
741 --- 1.0b2 1995/06/27
742 Fairly quick maintenance release to add SUTRS support.
743
744 Fixed handling of SUTRS records in the demonstration client.
745
746 * Added format field to the bend_fetchrequest and bend_fetchresponce
747 structures of the backend API (frontend server). When the record is
748 returned, the value of the format field is mapped to an OID. The
749 value VAL_SUTRS will also cause a slightly different ASN.1 packaging
750 of the record. The special value VAL_NONE in the bend_request means
751 that no specific format was requested by the client. Documentation
752 updated accordingly. Test server (ztest) will return a fixed dummy
753 SUTRS record if your client requests SUTRS.
754
755 Documentation updated accordingly.
756
757 You can now set external libraries and RANLIB support in the top-level
758 Makefile.
759
760 --- 1.0b 1995/06/19
761 First public release.