WAIS protocol support.
authorSebastian Hammer <quinn@indexdata.com>
Tue, 20 Feb 1996 12:52:09 +0000 (12:52 +0000)
committerSebastian Hammer <quinn@indexdata.com>
Tue, 20 Feb 1996 12:52:09 +0000 (12:52 +0000)
comstack/Makefile
comstack/tcpip.c

index c0afde4..8d8ef86 100644 (file)
@@ -1,7 +1,7 @@
 # Copyright (C) 1994, Index Data I/S 
 # All rights reserved.
 # Sebastian Hammer, Adam Dickmeiss
 # Copyright (C) 1994, Index Data I/S 
 # All rights reserved.
 # Sebastian Hammer, Adam Dickmeiss
-# $Id: Makefile,v 1.3 1996-02-05 12:23:41 adam Exp $
+# $Id: Makefile,v 1.4 1996-02-20 12:52:09 quinn Exp $
 
 
 LIBDIR=../lib
 
 
 LIBDIR=../lib
@@ -18,7 +18,7 @@ DEFS=$(INCLUDE) # -DTRACE_TCPIP
 LIB= $(LIBDIR)/libcomstack.a 
 LIBS=$(LIBDIR)/libasn.a $(LIBDIR)/libodr.a $(LIBDIR)/libcomstack.a \
         ../lib/ccl.a $(LIBDIR)/libutil.a $(LIBMOSI)
 LIB= $(LIBDIR)/libcomstack.a 
 LIBS=$(LIBDIR)/libasn.a $(LIBDIR)/libodr.a $(LIBDIR)/libcomstack.a \
         ../lib/ccl.a $(LIBDIR)/libutil.a $(LIBMOSI)
-PO = comstack.o tcpip.o $(XMOSI)
+PO = comstack.o tcpip.o waislen.o $(XMOSI)
 CPP=$(CC) -E
 #CC=checkergcc
 RANLIB=ranlib
 CPP=$(CC) -E
 #CC=checkergcc
 RANLIB=ranlib
index 04b6013..3c09d9e 100644 (file)
@@ -4,7 +4,10 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: tcpip.c,v $
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: tcpip.c,v $
- * Revision 1.9  1996-02-10 12:23:11  quinn
+ * Revision 1.10  1996-02-20 12:52:11  quinn
+ * WAIS protocol support.
+ *
+ * Revision 1.9  1996/02/10  12:23:11  quinn
  * Enablie inetd operations fro TCP/IP stack
  *
  * Revision 1.8  1995/11/01  13:54:27  quinn
  * Enablie inetd operations fro TCP/IP stack
  *
  * Revision 1.8  1995/11/01  13:54:27  quinn
@@ -122,7 +125,11 @@ int tcpip_listen(COMSTACK h, char *addrp, int *addrlen);
 COMSTACK tcpip_accept(COMSTACK h);
 char *tcpip_addrstr(COMSTACK h);
 
 COMSTACK tcpip_accept(COMSTACK h);
 char *tcpip_addrstr(COMSTACK h);
 
-int completeBER(unsigned char *buf, int len);
+/*
+ * Determine length/completeness of incoming packages
+ */
+int completeBER(unsigned char *buf, int len); /* from the ODR module */
+int completeWAIS(unsigned char *buf, int len); /* from waislen.c */
 
 #ifdef TRACE_TCPIP
 #define TRC(x) x
 
 #ifdef TRACE_TCPIP
 #define TRC(x) x
@@ -140,6 +147,7 @@ typedef struct tcpip_state
 
     int written;  /* -1 if we aren't writing */
     int towrite;  /* to verify against user input */
 
     int written;  /* -1 if we aren't writing */
     int towrite;  /* to verify against user input */
+    int (*complete)(unsigned char *buf, int len); /* length/completeness */
 } tcpip_state;
 
 /*
 } tcpip_state;
 
 /*
@@ -218,6 +226,10 @@ COMSTACK tcpip_type(int s, int blocking, int protocol)
     state->altbuf = 0;
     state->altsize = state->altlen = 0;
     state->towrite = state->written = -1;
     state->altbuf = 0;
     state->altsize = state->altlen = 0;
     state->towrite = state->written = -1;
+    if (protocol == PROTO_WAIS)
+       state->complete = completeWAIS;
+    else
+       state->complete = completeBER;
 
     p->timeout = COMSTACK_DEFAULT_TIMEOUT;
     TRC(fprintf(stderr, "Created new TCPIP comstack\n"));
 
     p->timeout = COMSTACK_DEFAULT_TIMEOUT;
     TRC(fprintf(stderr, "Created new TCPIP comstack\n"));