Improved installation. Updated for inclusion of YAZ header files.
[idzebra-moved-to-github.git] / index / zserver.c
index 193e6d9..3b060d5 100644 (file)
@@ -4,7 +4,23 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: zserver.c,v $
- * Revision 1.69  1999-06-10 09:20:03  adam
+ * Revision 1.75  1999-11-30 13:48:04  adam
+ * Improved installation. Updated for inclusion of YAZ header files.
+ *
+ * Revision 1.74  1999/11/29 15:13:26  adam
+ * Server sets implementationName - and Version.
+ *
+ * Revision 1.73  1999/11/04 15:00:45  adam
+ * Implemented delete result set(s).
+ *
+ * Revision 1.71  1999/07/14 10:59:26  adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.70  1999/06/10 12:14:56  adam
+ * Fixed to use bend_start instead of pre_init.
+ *
+ * Revision 1.69  1999/06/10 09:20:03  adam
  * Minor change to pre_init handler.
  *
  * Revision 1.68  1999/05/26 07:49:13  adam
 #include <unistd.h>
 #endif
 
-#include <data1.h>
-#include <dmalloc.h>
+#include <yaz/data1.h>
 
 #include "zserver.h"
 
 #endif
 
 static int bend_sort (void *handle, bend_sort_rr *rr);
+static int bend_delete (void *handle, bend_delete_rr *rr);
 
 bend_initresult *bend_init (bend_initrequest *q)
 {
@@ -285,6 +301,10 @@ bend_initresult *bend_init (bend_initrequest *q)
     r->errcode = 0;
     r->errstring = 0;
     q->bend_sort = bend_sort;
+    q->bend_delete = bend_delete;
+
+    q->implementation_name = "Z'mbol Information Server";
+    q->implementation_version = "Z'mbol 1.0";
 
     logf (LOG_DEBUG, "bend_init");
 
@@ -435,8 +455,18 @@ int bend_sort (void *handle, bend_sort_rr *rr)
     return 0;
 }
 
+int bend_delete (void *handle, bend_delete_rr *rr)
+{
+    ZebraHandle zh = (ZebraHandle) handle;
+
+    rr->delete_status =        zebra_deleleResultSet(zh, rr->function,
+                                             rr->num_setnames, rr->setnames,
+                                             rr->statuses);
+    return 0;
+}
+
 #ifndef WIN32
-static void pre_init (struct statserv_options_block *sob)
+static void bend_start (struct statserv_options_block *sob)
 {
     if (!sob->inetd) 
     {
@@ -463,7 +493,7 @@ int main (int argc, char **argv)
     sob = statserv_getcontrol ();
     strcpy (sob->configname, FNAME_CONFIG);
 #ifndef WIN32
-    sob->pre_init = pre_init;
+    sob->bend_start = bend_start;
 #endif
     statserv_setcontrol (sob);