* See the file LICENSE for details.
*
* $Log: client.c,v $
- * Revision 1.115 2001-03-13 18:10:58 adam
+ * Revision 1.119 2001-04-05 13:08:48 adam
+ * New configure options: --enable-module.
+ *
+ * Revision 1.118 2001/03/27 14:48:06 adam
+ * Fixed scan for bad CCL.
+ *
+ * Revision 1.117 2001/03/25 21:55:12 adam
+ * Added odr_intdup. Ztest server returns TaskPackage for ItemUpdate.
+ *
+ * Revision 1.116 2001/03/21 12:43:36 adam
+ * Implemented cs_create_host. Better error reporting for SSL comstack.
+ *
+ * Revision 1.115 2001/03/13 18:10:58 adam
* Added option -c to set CCL config file.
*
* Revision 1.114 2001/02/21 13:46:53 adam
#include <yaz/pquery.h>
-#ifdef ASN_COMPILED
+#if YAZ_MODULE_ill
#include <yaz/ill.h>
#endif
{
void *add;
char type_and_host[101], base[101];
- char *host = 0;
CS_TYPE t;
if (conn)
base[0] = '\0';
if (sscanf (arg, "%100[^/]/%100s", type_and_host, base) < 1)
return 0;
- if (strncmp (type_and_host, "tcp:", 4) == 0)
- host = type_and_host + 4;
- else if (strncmp (type_and_host, "ssl:", 4) == 0)
- {
-#if HAVE_OPENSSL_SSL_H
- t = ssl_type;
-#else
- printf ("SSL not supported\n");
-#endif
- host = type_and_host + 4;
- }
- else
- host = type_and_host;
- if (*base)
- cmd_base (base);
- protocol = PROTO_Z3950;
- if (!(conn = cs_create(t, 1, protocol)))
- {
- perror("cs_create");
- return 0;
- }
- if (!(add = cs_straddr(conn, host)))
+ conn = cs_create_host(type_and_host, 1, &add);
+ if (!conn)
{
- perror(arg);
- return 0;
+ printf ("Couldn't create comstack\n");
+ return 0;
}
printf("Connecting...");
fflush(stdout);
if (cs_connect(conn, add) < 0)
{
- perror("connect");
+ printf ("error = %s\n", cs_strerror(conn));
+ if (conn->cerrno == CSYSERR)
+ perror("system");
cs_close(conn);
conn = 0;
return 0;
}
printf("Ok.\n");
send_initRequest();
+ if (*base)
+ cmd_base (base);
return 2;
}
}
}
-#ifdef ASN_COMPILED
+#if YAZ_MODULE_ill
const char *get_ill_element (void *clientData, const char *element)
{
}
return r;
}
-#else
-static Z_External *create_external_itemRequest()
-{
- return 0;
-}
#endif
-#ifdef ASN_COMPILED
+#ifdef YAZ_MODULE_ill
static Z_External *create_external_ILL_APDU(int which)
{
struct ill_get_ctl ctl;
}
return r;
}
-#else
-static Z_External *create_external_ILLRequest()
-{
- return 0;
-}
#endif
(int *) odr_malloc(out, sizeof(int));
*r->u.itemOrder->u.esRequest->notToKeep->resultSetItem->item = itemno;
-#ifdef ASN_COMPILED
+#if YAZ_MODULE_ill
if (!strcmp (type, "item") || !strcmp(type, "2"))
{
printf ("using item-request\n");
if (error)
{
printf("CCL ERROR: %s\n", ccl_err_msg(error));
- return 0;
+ return -1;
}
use_rpn = 0;
bib1.proto = PROTO_Z3950;
if (!(req->termListAndStartPoint = ccl_scan_query (out, rpn)))
{
printf("Couldn't convert CCL to Scan term\n");
- return 0;
+ return -1;
}
ccl_rpn_delete (rpn);
}