* OF THIS SOFTWARE.
*
* $Log: backend.h,v $
- * Revision 1.25 1999-06-01 14:29:12 adam
+ * Revision 1.26 1999-06-17 10:54:44 adam
+ * Added facility to specify implementation version - and name
+ * for server.
+ *
+ * Revision 1.25 1999/06/01 14:29:12 adam
* Work on Extended Services.
*
* Revision 1.24 1999/03/31 11:18:24 adam
ODR stream; /* encoding stream */
Z_ReferenceId *referenceId;/* reference ID */
+ char *implementation_name;
+ char *implementation_version;
int (*bend_sort) (void *handle, bend_sort_rr *rr);
int (*bend_search) (void *handle, bend_search_rr *rr);
int (*bend_present) (void *handle, bend_present_rr *rr);
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: seshigh.c,v $
- * Revision 1.91 1999-06-01 14:29:12 adam
+ * Revision 1.92 1999-06-17 10:54:45 adam
+ * Added facility to specify implementation version - and name
+ * for server.
+ *
+ * Revision 1.91 1999/06/01 14:29:12 adam
* Work on Extended Services.
*
* Revision 1.90 1999/05/27 13:02:20 adam
binitreq.configname = "default-config";
binitreq.auth = req->idAuthentication;
binitreq.referenceId = req->referenceId;
+ binitreq.implementation_version = 0;
+ binitreq.implementation_name = 0;
binitreq.bend_sort = NULL;
binitreq.bend_search = NULL;
binitreq.bend_present = NULL;
assoc->preferredMessageSize = assoc->maximumRecordSize;
resp->preferredMessageSize = &assoc->preferredMessageSize;
resp->maximumRecordSize = &assoc->maximumRecordSize;
+
resp->implementationName = "Index Data/YAZ Generic Frontend Server";
+
+ if (binitreq.implementation_name)
+ {
+ char *nv = (char *)
+ odr_malloc (assoc->encode,
+ strlen(binitreq.implementation_name) + 3 +
+ strlen(resp->implementationName));
+ sprintf (nv, "%s %s",
+ resp->implementationName, binitreq.implementation_name);
+ resp->implementationName = nv;
+ }
+ if (binitreq.implementation_version)
+ {
+ char *nv = (char *)
+ odr_malloc (assoc->encode,
+ strlen(binitreq.implementation_version) + 3 +
+ strlen(resp->implementationVersion));
+ sprintf (nv, "%s %s",
+ resp->implementationVersion, binitreq.implementation_version);
+ resp->implementationVersion = nv;
+ }
+
if (binitres->errcode)
{
logf(LOG_LOG, "Connection rejected by backend.");