projects
/
idzebra-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
More friendly behaviour in during character set negotiation.
[idzebra-moved-to-github.git]
/
index
/
zserver.c
diff --git
a/index/zserver.c
b/index/zserver.c
index
af32209
..
5578959
100644
(file)
--- a/
index/zserver.c
+++ b/
index/zserver.c
@@
-1,5
+1,5
@@
-/* $Id: zserver.c,v 1.107 2003-05-24 22:35:11 adam Exp $
- Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002
+/* $Id: zserver.c,v 1.112 2003-11-09 11:48:16 oleg Exp $
+ Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003
Index Data Aps
This file is part of the Zebra server.
Index Data Aps
This file is part of the Zebra server.
@@
-149,7
+149,7
@@
bend_initresult *bend_init (bend_initrequest *q)
if (selected)
zebra_record_encoding (zh, right_name);
q->charneg_response =
if (selected)
zebra_record_encoding (zh, right_name);
q->charneg_response =
- yaz_set_response_charneg (q->stream, right_name,
+ yaz_set_response_charneg (q->stream, charsets[i],
0, selected);
break;
} else {
0, selected);
break;
} else {
@@
-264,7
+264,7
@@
int bend_search (void *handle, bend_search_rr *r)
switch (r->query->which)
{
case Z_Query_type_1: case Z_Query_type_101:
switch (r->query->which)
{
case Z_Query_type_1: case Z_Query_type_101:
- zebra_search_RPN (zh, r->query->u.type_1,
+ zebra_search_RPN (zh, r->stream, r->query->u.type_1,
r->setname, &r->hits);
zebra_result (zh, &r->errcode, &r->errstring);
if (!r->errcode)
r->setname, &r->hits);
zebra_result (zh, &r->errcode, &r->errstring);
if (!r->errcode)
@@
-382,6
+382,7
@@
static int es_admin_request (ZebraHandle zh, Z_AdminEsRequest *r)
break;
case Z_ESAdminOriginPartToKeep_drop:
yaz_log(LOG_LOG, "adm-drop");
break;
case Z_ESAdminOriginPartToKeep_drop:
yaz_log(LOG_LOG, "adm-drop");
+ zebra_drop_database (zh, r->toKeep->databaseName);
break;
case Z_ESAdminOriginPartToKeep_create:
yaz_log(LOG_LOG, "adm-create %s", r->toKeep->databaseName);
break;
case Z_ESAdminOriginPartToKeep_create:
yaz_log(LOG_LOG, "adm-create %s", r->toKeep->databaseName);
@@
-656,20
+657,24
@@
static void bend_start (struct statserv_options_block *sob)
#else
if (!sob->inetd)
{
#else
if (!sob->inetd)
{
+ char pidfname[4096];
struct flock area;
struct flock area;
- char *pidfile = "zebrasrv.pid";
- int fd = open (pidfile, O_EXCL|O_WRONLY|O_CREAT, 0666);
+ int fd;
+
+ zebra_pidfname(sob->handle, pidfname);
+
+ fd = open (pidfname, O_EXCL|O_WRONLY|O_CREAT, 0666);
if (fd == -1)
{
if (errno != EEXIST)
{
if (fd == -1)
{
if (errno != EEXIST)
{
- yaz_log(LOG_FATAL|LOG_ERRNO, "lock file %s", pidfile);
+ yaz_log(LOG_FATAL|LOG_ERRNO, "lock file %s", pidfname);
exit(1);
}
exit(1);
}
- fd = open(pidfile, O_RDWR, 0666);
+ fd = open(pidfname, O_RDWR, 0666);
if (fd == -1)
{
if (fd == -1)
{
- yaz_log(LOG_FATAL|LOG_ERRNO, "lock file %s", pidfile);
+ yaz_log(LOG_FATAL|LOG_ERRNO, "lock file %s", pidfname);
exit(1);
}
}
exit(1);
}
}
@@
-697,8
+702,12
@@
static void bend_stop(struct statserv_options_block *sob)
#ifdef WIN32
#else
#ifdef WIN32
#else
- if (!sob->inetd)
- unlink ("zebrasrv.pid");
+ if (!sob->inetd && sob->handle)
+ {
+ char pidfname[4096];
+ zebra_pidfname(sob->handle, pidfname);
+ unlink (pidfname);
+ }
#endif
if (sob->handle)
{
#endif
if (sob->handle)
{