* Sebastian Hammer, Adam Dickmeiss
*
* $Log: zserver.c,v $
- * Revision 1.68 1999-05-26 07:49:13 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
* C++ compilation.
*
* Revision 1.67 1999/02/02 14:51:14 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)
{
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");
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)
{
- char *pidfile = "zebrasrv.pid";
- int fd = creat (pidfile, 0666);
-
- if (fd == -1)
- logf (LOG_WARN|LOG_ERRNO, "creat %s", pidfile);
- else
+ if (!sob->inetd)
{
- char pidstr[30];
+ char *pidfile = "zebrasrv.pid";
+ int fd = creat (pidfile, 0666);
+ if (fd == -1)
+ logf (LOG_WARN|LOG_ERRNO, "creat %s", pidfile);
+ else
+ {
+ char pidstr[30];
- sprintf (pidstr, "%ld", (long) getpid ());
- write (fd, pidstr, strlen(pidstr));
- close (fd);
+ sprintf (pidstr, "%ld", (long) getpid ());
+ write (fd, pidstr, strlen(pidstr));
+ close (fd);
+ }
}
}
#endif
sob = statserv_getcontrol ();
strcpy (sob->configname, FNAME_CONFIG);
#ifndef WIN32
- sob->pre_init = pre_init;
+ sob->bend_start = bend_start;
#endif
statserv_setcontrol (sob);