* Sebastian Hammer, Adam Dickmeiss
*
* $Log: diagbib1.c,v $
- * Revision 1.3 1995-09-27 15:02:39 quinn
+ * Revision 1.4 1995-09-29 17:11:52 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:39 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:50:21 quinn
{ 0, NULL}
};
-const char MDF *diagbib1_str (int code)
+const char *diagbib1_str (int code)
{
int i;
for (i=0; msg_tab[i].msg; i++)
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: proto.c,v $
- * Revision 1.38 1995-09-27 15:02:40 quinn
+ * Revision 1.39 1995-09-29 17:11:53 quinn
+ * Smallish
+ *
+ * Revision 1.38 1995/09/27 15:02:40 quinn
* Modified function heads & prototypes.
*
* Revision 1.37 1995/08/21 09:10:15 quinn
* We'll use a general octetstring here, since string operations are
* clumsy on long strings.
*/
-int MDF z_SUTRS(ODR o, Odr_oct **p, int opt)
+int z_SUTRS(ODR o, Odr_oct **p, int opt)
{
return odr_implicit(o, odr_octetstring, p, ODR_UNIVERSAL,
ODR_GENERALSTRING, opt);
return odr_implicit(o, odr_octetstring, (Odr_oct**) p, ODR_CONTEXT, 2, opt);
}
-int MDF z_DatabaseName(ODR o, Z_DatabaseName **p, int opt)
+int z_DatabaseName(ODR o, Z_DatabaseName **p, int opt)
{
return odr_implicit(o, odr_visiblestring, (char **) p, ODR_CONTEXT, 105,
opt);
opt);
}
-int MDF z_ElementSetName(ODR o, char **p, int opt)
+int z_ElementSetName(ODR o, char **p, int opt)
{
return odr_implicit(o, odr_visiblestring, p, ODR_CONTEXT, 103, opt);
}
11, opt);
}
-int MDF z_InternationalString(ODR o, char **p, int opt)
+int z_InternationalString(ODR o, char **p, int opt)
{
return odr_generalstring(o, p, opt);
}
odr_sequence_end(o);
}
-int MDF z_OtherInformationUnit(ODR o, Z_OtherInformationUnit **p, int opt)
+int z_OtherInformationUnit(ODR o, Z_OtherInformationUnit **p, int opt)
{
static Odr_arm arm[] =
{
odr_sequence_end(o);
}
-int MDF z_OtherInformation(ODR o, Z_OtherInformation **p, int opt)
+int z_OtherInformation(ODR o, Z_OtherInformation **p, int opt)
{
if (o->direction == ODR_DECODE)
*p = odr_malloc(o, sizeof(**p));
return opt && odr_ok(o);
}
-int MDF z_StringOrNumeric(ODR o, Z_StringOrNumeric **p, int opt)
+int z_StringOrNumeric(ODR o, Z_StringOrNumeric **p, int opt)
{
static Odr_arm arm[] =
{
/*
* check tagging!!
*/
-int MDF z_Unit(ODR o, Z_Unit **p, int opt)
+int z_Unit(ODR o, Z_Unit **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
odr_sequence_end(o);
}
-int MDF z_IntUnit(ODR o, Z_IntUnit **p, int opt)
+int z_IntUnit(ODR o, Z_IntUnit **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
/* ---------------------- INITIALIZE SERVICE ------------------- */
#if 0
-int MDF z_NSRAuthentication(ODR o, Z_NSRAuthentication **p, int opt)
+int z_NSRAuthentication(ODR o, Z_NSRAuthentication **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
odr_sequence_end(o);
}
-int MDF z_StrAuthentication(ODR o, char **p, int opt)
+int z_StrAuthentication(ODR o, char **p, int opt)
{
return odr_visiblestring(o, p, opt);
}
odr_sequence_end(o);
}
-int MDF z_Term(ODR o, Z_Term **p, int opt)
+int z_Term(ODR o, Z_Term **p, int opt)
{
static Odr_arm arm[] =
{
#ifdef Z_95
-int MDF z_DefaultDiagFormat(ODR o, Z_DefaultDiagFormat **p, int opt)
+int z_DefaultDiagFormat(ODR o, Z_DefaultDiagFormat **p, int opt)
{
static Odr_arm arm[] =
{
odr_sequence_end(o);
}
-int MDF z_DiagRec(ODR o, Z_DiagRec **p, int opt)
+int z_DiagRec(ODR o, Z_DiagRec **p, int opt)
{
static Odr_arm arm[] =
{
/* ------------------------ SCAN SERVICE -------------------- */
-int MDF z_AttributeList(ODR o, Z_AttributeList **p, int opt)
+int z_AttributeList(ODR o, Z_AttributeList **p, int opt)
{
if (o->direction == ODR_DECODE)
*p = odr_malloc(o, sizeof(**p));
return opt && odr_ok(o);
}
-int MDF z_Specification(ODR o, Z_Specification **p, int opt)
+int z_Specification(ODR o, Z_Specification **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
/* ------------------------ APDU ------------------------- */
-int MDF z_Permissions(ODR o, Z_Permissions **p, int opt)
+int z_Permissions(ODR o, Z_Permissions **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
/* ------------------------ APDU ------------------------- */
-int MDF z_APDU(ODR o, Z_APDU **p, int opt)
+int z_APDU(ODR o, Z_APDU **p, int opt)
{
static Odr_arm arm[] =
{
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-acc.c,v $
- * Revision 1.4 1995-09-27 15:02:41 quinn
+ * Revision 1.5 1995-09-29 17:11:53 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:02:41 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/08/15 11:59:41 quinn
return opt && odr_ok(o);
}
-int MDF z_PromptObject1(ODR o, Z_PromptObject1 **p, int opt)
+int z_PromptObject1(ODR o, Z_PromptObject1 **p, int opt)
{
static Odr_arm arm[] =
{
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-dia.c,v $
- * Revision 1.2 1995-09-27 15:02:41 quinn
+ * Revision 1.3 1995-09-29 17:11:54 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:41 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/08/29 11:19:31 quinn
odr_sequence_end(o);
}
-int MDF z_DiagnosticFormat(ODR o, Z_DiagnosticFormat **p, int opt)
+int z_DiagnosticFormat(ODR o, Z_DiagnosticFormat **p, int opt)
{
if (o->direction == ODR_DECODE)
*p = odr_malloc(o, sizeof(**p));
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-exd.c,v $
- * Revision 1.2 1995-09-27 15:02:41 quinn
+ * Revision 1.3 1995-09-29 17:11:54 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:41 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/08/21 09:16:32 quinn
#include <proto.h>
-int MDF z_TaskPackage(ODR o, Z_TaskPackage **p, int opt)
+int z_TaskPackage(ODR o, Z_TaskPackage **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
odr_sequence_end(o);
}
-int MDF z_ItemOrder(ODR o, Z_ItemOrder **p, int opt)
+int z_ItemOrder(ODR o, Z_ItemOrder **p, int opt)
{
static Odr_arm arm[] =
{
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-exp.c,v $
- * Revision 1.3 1995-09-27 15:02:42 quinn
+ * Revision 1.4 1995-09-29 17:11:54 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:42 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/08/15 11:59:43 quinn
int z_Units(ODR o, Z_Units **p, int opt);
int z_CategoryList(ODR o, Z_CategoryList **p, int opt);
int z_CategoryInfo(ODR o, Z_CategoryInfo **p, int opt);
-int MDF z_ExplainRecord(ODR o, Z_ExplainRecord **p, int opt);
+int z_ExplainRecord(ODR o, Z_ExplainRecord **p, int opt);
int z_LanguageCode(ODR o, char **p, int opt)
{
odr_sequence_end(o);
}
-int MDF z_ExplainRecord(ODR o, Z_ExplainRecord **p, int opt)
+int z_ExplainRecord(ODR o, Z_ExplainRecord **p, int opt)
{
static Odr_arm arm[] =
{
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-ext.c,v $
- * Revision 1.5 1995-09-27 15:02:42 quinn
+ * Revision 1.6 1995-09-29 17:11:55 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/27 15:02:42 quinn
* Modified function heads & prototypes.
*
* Revision 1.4 1995/08/29 11:17:16 quinn
#include <proto.h>
-int MDF z_External(ODR o, Z_External **p, int opt)
+int z_External(ODR o, Z_External **p, int opt)
{
oident *oid;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-grs.c,v $
- * Revision 1.3 1995-09-27 15:02:43 quinn
+ * Revision 1.4 1995-09-29 17:11:55 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:43 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/08/28 10:58:58 quinn
int z_Triple(ODR o, Z_Triple **p, int opt);
int z_Variant(ODR o, Z_Variant **p, int opt);
-int MDF z_GenericRecord(ODR o, Z_GenericRecord **p, int opt)
+int z_GenericRecord(ODR o, Z_GenericRecord **p, int opt)
{
if (o->direction == ODR_DECODE)
*p = odr_malloc(o, sizeof(**p));
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: prt-rsc.c,v $
- * Revision 1.4 1995-09-27 15:02:43 quinn
+ * Revision 1.5 1995-09-29 17:11:55 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:02:43 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/06/02 09:49:15 quinn
odr_sequence_end(o);
}
-int MDF z_ResourceReport1(ODR o, Z_ResourceReport1 **p, int opt)
+int z_ResourceReport1(ODR o, Z_ResourceReport1 **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
odr_sequence_end(o);
}
-int MDF z_ResourceReport2(ODR o, Z_ResourceReport2 **p, int opt)
+int z_ResourceReport2(ODR o, Z_ResourceReport2 **p, int opt)
{
if (!odr_sequence_begin(o, p, sizeof(**p)))
return opt && odr_ok(o);
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: zget.c,v $
- * Revision 1.8 1995-09-27 15:02:43 quinn
+ * Revision 1.9 1995-09-29 17:11:55 quinn
+ * Smallish
+ *
+ * Revision 1.8 1995/09/27 15:02:43 quinn
* Modified function heads & prototypes.
*
* Revision 1.7 1995/06/15 07:44:52 quinn
#include <proto.h>
-Z_InitRequest MDF *zget_InitRequest(ODR o)
+Z_InitRequest *zget_InitRequest(ODR o)
{
Z_InitRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_InitResponse MDF *zget_InitResponse(ODR o)
+Z_InitResponse *zget_InitResponse(ODR o)
{
Z_InitResponse *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_SearchRequest MDF *zget_SearchRequest(ODR o)
+Z_SearchRequest *zget_SearchRequest(ODR o)
{
Z_SearchRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_SearchResponse MDF *zget_SearchResponse(ODR o)
+Z_SearchResponse *zget_SearchResponse(ODR o)
{
Z_SearchResponse *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_PresentRequest MDF *zget_PresentRequest(ODR o)
+Z_PresentRequest *zget_PresentRequest(ODR o)
{
Z_PresentRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_PresentResponse MDF *zget_PresentResponse(ODR o)
+Z_PresentResponse *zget_PresentResponse(ODR o)
{
Z_PresentResponse *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_DeleteResultSetRequest MDF *zget_DeleteResultSetRequest(ODR o)
+Z_DeleteResultSetRequest *zget_DeleteResultSetRequest(ODR o)
{
Z_DeleteResultSetRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_DeleteResultSetResponse MDF *zget_DeleteResultSetResponse(ODR o)
+Z_DeleteResultSetResponse *zget_DeleteResultSetResponse(ODR o)
{
Z_DeleteResultSetResponse *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_ScanRequest MDF *zget_ScanRequest(ODR o)
+Z_ScanRequest *zget_ScanRequest(ODR o)
{
Z_ScanRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_ScanResponse MDF *zget_ScanResponse(ODR o)
+Z_ScanResponse *zget_ScanResponse(ODR o)
{
Z_ScanResponse *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_TriggerResourceControlRequest MDF *zget_TriggerResourceControlRequest(ODR o)
+Z_TriggerResourceControlRequest *zget_TriggerResourceControlRequest(ODR o)
{
Z_TriggerResourceControlRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_ResourceControlRequest MDF *zget_ResourceControlRequest(ODR o)
+Z_ResourceControlRequest *zget_ResourceControlRequest(ODR o)
{
Z_ResourceControlRequest *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_ResourceControlResponse MDF *zget_ResourceControlResponse(ODR o)
+Z_ResourceControlResponse *zget_ResourceControlResponse(ODR o)
{
Z_ResourceControlResponse *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_Close MDF *zget_Close(ODR o)
+Z_Close *zget_Close(ODR o)
{
Z_Close *r = odr_malloc(o, sizeof(*r));
return r;
}
-Z_APDU MDF *zget_APDU(ODR o, enum Z_APDU_which which)
+Z_APDU *zget_APDU(ODR o, enum Z_APDU_which which)
{
Z_APDU *r = odr_malloc(o, sizeof(*r));
* Europagate, 1995
*
* $Log: cclerrms.c,v $
- * Revision 1.2 1995-09-27 15:02:43 quinn
+ * Revision 1.3 1995-09-29 17:11:59 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:43 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/04/10 10:28:18 quinn
"Right truncation not supported"
};
-const char MDF *ccl_err_msg (int ccl_errno)
+const char *ccl_err_msg (int ccl_errno)
{
return err_msg_array[ccl_errno];
}
* Europagate, 1995
*
* $Log: cclfind.c,v $
- * Revision 1.2 1995-09-27 15:02:44 quinn
+ * Revision 1.3 1995-09-29 17:11:59 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:44 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/04/10 10:28:19 quinn
return p;
}
-void MDF ccl_rpn_delete (struct ccl_rpn_node *rpn)
+void ccl_rpn_delete (struct ccl_rpn_node *rpn)
{
struct ccl_rpn_attr *attr, *attr1;
if (!rpn)
return p1;
}
-struct ccl_rpn_node MDF *ccl_find (CCL_bibset abibset, struct ccl_token *list,
+struct ccl_rpn_node *ccl_find (CCL_bibset abibset, struct ccl_token *list,
int *error, const char **pos)
{
struct ccl_rpn_node *p;
return p;
}
-struct ccl_rpn_node MDF *ccl_find_str (CCL_bibset bibset, const char *str,
+struct ccl_rpn_node *ccl_find_str (CCL_bibset bibset, const char *str,
int *error, int *pos)
{
struct ccl_token *list;
* Europagate, 1995
*
* $Log: cclptree.c,v $
- * Revision 1.2 1995-09-27 15:02:44 quinn
+ * Revision 1.3 1995-09-29 17:11:59 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:44 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/04/10 10:28:20 quinn
#include <ccl.h>
-void MDF ccl_pr_tree (struct ccl_rpn_node *rpn, FILE *fd_out)
+void ccl_pr_tree (struct ccl_rpn_node *rpn, FILE *fd_out)
{
switch (rpn->kind)
* Europagate, 1995
*
* $Log: cclqual.c,v $
- * Revision 1.2 1995-09-27 15:02:44 quinn
+ * Revision 1.3 1995-09-29 17:12:00 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:44 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/04/10 10:28:20 quinn
struct ccl_qualifier *list;
};
-void MDF ccl_qual_add (CCL_bibset b, const char *name, int no, int *pairs)
+void ccl_qual_add (CCL_bibset b, const char *name, int no, int *pairs)
{
struct ccl_qualifier *q;
struct ccl_rpn_attr **attrp;
*attrp = NULL;
}
-CCL_bibset MDF ccl_qual_mk (void)
+CCL_bibset ccl_qual_mk (void)
{
CCL_bibset b = malloc (sizeof(*b));
assert (b);
return b;
}
-void MDF ccl_qual_rm (CCL_bibset *b)
+void ccl_qual_rm (CCL_bibset *b)
{
assert (*b);
*b = NULL;
}
-struct ccl_rpn_attr MDF *ccl_qual_search (CCL_bibset b, const char *name, int len)
+struct ccl_rpn_attr *ccl_qual_search (CCL_bibset b, const char *name, int len)
{
struct ccl_qualifier *q;
return NULL;
}
-void MDF ccl_qual_file (CCL_bibset bibset, FILE *inf)
+void ccl_qual_file (CCL_bibset bibset, FILE *inf)
{
char line[256];
char *cp;
* Europagate, 1995
*
* $Log: ccltoken.c,v $
- * Revision 1.2 1995-09-27 15:02:44 quinn
+ * Revision 1.3 1995-09-29 17:12:00 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:44 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/04/10 10:28:22 quinn
const char *ccl_token_not = "not";
const char *ccl_token_set = "set";
-struct ccl_token MDF *ccl_tokenize (const char *command)
+struct ccl_token *ccl_tokenize (const char *command)
{
const char *cp = command;
struct ccl_token *first = NULL;
-/*\r
- * Copyright (c) 1995, Index Data\r
- * See the file LICENSE for details.\r
- * Sebastian Hammer, Adam Dickmeiss\r
- *\r
+/*
+ * Copyright (c) 1995, Index Data
+ * See the file LICENSE for details.
+ * Sebastian Hammer, Adam Dickmeiss
+ *
* $Log: tcpip.c,v $
- * Revision 1.5 1995-09-29 17:01:48 quinn
+ * Revision 1.6 1995-09-29 17:12:00 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/29 17:01:48 quinn
* More Windows work
- *\r
- * Revision 1.4 1995/09/28 10:12:26 quinn\r
- * Windows-support changes\r
- *\r
- * Revision 1.3 1995/09/27 15:02:45 quinn\r
- * Modified function heads & prototypes.\r
- *\r
- * Revision 1.2 1995/06/15 12:30:06 quinn\r
- * Added @ as hostname alias for INADDR ANY.\r
- *\r
- * Revision 1.1 1995/06/14 09:58:20 quinn\r
- * Renamed yazlib to comstack.\r
- *\r
- * Revision 1.20 1995/05/16 08:51:16 quinn\r
- * License, documentation, and memory fixes\r
- *\r
- * Revision 1.19 1995/04/10 10:24:08 quinn\r
- * Some bug-fixes.\r
- *\r
- * Revision 1.18 1995/03/30 13:29:27 quinn\r
- * Added REUSEADDR in tcpip_bind\r
- *\r
- * Revision 1.17 1995/03/27 08:36:10 quinn\r
- * Some work on nonblocking operation in xmosi.c and rfct.c.\r
- * Added protocol parameter to cs_create()\r
- *\r
- * Revision 1.16 1995/03/21 15:53:41 quinn\r
- * Added rcvconnect\r
- *\r
- * Revision 1.15 1995/03/21 12:31:27 quinn\r
- * Added check for EINPROGRESS on connect.\r
- *\r
- * Revision 1.14 1995/03/20 09:47:21 quinn\r
- * Added server-side support to xmosi.c\r
- * Fixed possible problems in rfct\r
- * Other little mods\r
- *\r
- * Revision 1.13 1995/03/15 16:15:13 adam\r
- * Removed p_write.\r
- *\r
- * Revision 1.12 1995/03/15 15:36:27 quinn\r
- * Mods to support nonblocking I/O\r
- *\r
- * Revision 1.11 1995/03/15 08:37:57 quinn\r
- * Now we're pretty much set for nonblocking I/O.\r
- *\r
- * Revision 1.10 1995/03/14 17:00:07 quinn\r
- * Bug-fixes - added tracing info to tcpip.c\r
- *\r
- * Revision 1.9 1995/03/14 10:28:42 quinn\r
- * Adding server-side support to tcpip.c and fixing bugs in nonblocking I/O\r
- *\r
- * Revision 1.8 1995/03/10 14:22:50 quinn\r
- * Removed debug output.\r
- *\r
- * Revision 1.7 1995/03/10 11:44:59 quinn\r
- * Fixes and debugging\r
- *\r
- * Revision 1.6 1995/03/07 10:26:55 quinn\r
- * Initialized type field in the comstacks.\r
- *\r
- * Revision 1.5 1995/02/14 20:40:07 quinn\r
- * Various stuff.\r
- *\r
- * Revision 1.4 1995/02/14 11:54:49 quinn\r
- * Beginning to add full CCL.\r
- *\r
- * Revision 1.3 1995/02/10 18:58:10 quinn\r
- * Fixed tcpip_get (formerly tcpip_read).\r
- * Turned tst (cli) into a proper, event-driven thingy.\r
- *\r
- * Revision 1.2 1995/02/10 15:55:47 quinn\r
- * Small things.\r
- *\r
- * Revision 1.1 1995/02/09 15:51:52 quinn\r
- * Works better now.\r
- *\r
- */\r
-\r
-#include <stdio.h>\r
-#include <string.h>\r
-#include <stdlib.h>\r
-#include <unistd.h>\r
-#include <errno.h>\r
-#include <fcntl.h>\r
-\r
-#include <comstack.h>\r
-#include <tcpip.h>\r
-\r
-#ifndef WINDOWS\r
-#include <sys/time.h>\r
-#endif\r
-\r
-int tcpip_close(COMSTACK h);\r
-int tcpip_put(COMSTACK h, char *buf, int size);\r
-int tcpip_get(COMSTACK h, char **buf, int *bufsize);\r
-int tcpip_connect(COMSTACK h, void *address);\r
-int tcpip_more(COMSTACK h);\r
-int tcpip_rcvconnect(COMSTACK h);\r
-int tcpip_bind(COMSTACK h, void *address, int mode);\r
-int tcpip_listen(COMSTACK h, char *addrp, int *addrlen);\r
-COMSTACK tcpip_accept(COMSTACK h);\r
-\r
-int completeBER(unsigned char *buf, int len);\r
-\r
-#ifdef TRACE_TCPIP\r
-#define TRC(x) x\r
-#else\r
-#define TRC(X)\r
-#endif\r
-\r
-static int initialized = 0;\r
-\r
-typedef struct tcpip_state\r
-{\r
- char *altbuf; /* alternate buffer for surplus data */\r
- int altsize; /* size as malloced */\r
- int altlen; /* length of data or 0 if none */\r
-\r
- int written; /* -1 if we aren't writing */\r
- int towrite; /* to verify against user input */\r
-} tcpip_state;\r
-\r
-COMSTACK MDF tcpip_type(int blocking, int protocol)\r
-{\r
- COMSTACK p;\r
- tcpip_state *state;\r
- int s;\r
-#ifdef WINDOWS\r
- unsigned long tru = 1;\r
-#else\r
- struct protoent *proto;\r
-#endif\r
-\r
- if (!initialized)\r
- {\r
-#ifdef WINDOWS\r
- WORD requested;\r
- WSADATA wd;\r
-\r
- requested = MAKEWORD(1, 1);\r
- if (WSAStartup(requested, &wd))\r
- return 0;\r
-#endif\r
- initialized = 1;\r
- }\r
-\r
-#ifndef WINDOWS\r
- if (!(proto = getprotobyname("tcp")))\r
- return 0;\r
- if ((s = socket(AF_INET, SOCK_STREAM, proto->p_proto)) < 0)\r
-#else\r
- if ((s = socket(AF_INET, SOCK_STREAM, 0)) < 0)\r
-#endif\r
- return 0;\r
- if (!(p = malloc(sizeof(struct comstack))))\r
- return 0;\r
- if (!(state = p->private = malloc(sizeof(tcpip_state))))\r
- return 0;\r
-#ifdef WINDOWS\r
- if (!(p->blocking = blocking) && ioctlsocket(s, FIONBIO, &tru) < 0)\r
-#else\r
- if (!(p->blocking = blocking) && fcntl(s, F_SETFL, O_NONBLOCK) < 0)\r
-#endif\r
- return 0;\r
- p->iofile = s;\r
- p->type = tcpip_type;\r
- p->protocol = protocol;\r
-\r
- p->f_connect = tcpip_connect;\r
- p->f_rcvconnect = tcpip_rcvconnect;\r
- p->f_get = tcpip_get;\r
- p->f_put = tcpip_put;\r
- p->f_close = tcpip_close;\r
- p->f_more = tcpip_more;\r
- p->f_bind = tcpip_bind;\r
- p->f_listen = tcpip_listen;\r
- p->f_accept = tcpip_accept;\r
-\r
- p->state = CS_UNBND;\r
- p->event = CS_NONE;\r
- p->cerrno = 0;\r
- p->stackerr = 0;\r
-\r
- state->altbuf = 0;\r
- state->altsize = state->altlen = 0;\r
- state->towrite = state->written = -1;\r
-\r
- p->timeout = COMSTACK_DEFAULT_TIMEOUT;\r
- TRC(fprintf(stderr, "Created new TCPIP comstack\n"));\r
-\r
- return p;\r
-}\r
-\r
-struct sockaddr_in MDF *tcpip_strtoaddr(const char *str)\r
-{\r
- static struct sockaddr_in add;\r
- struct hostent *hp;\r
- char *p, buf[512];\r
- short int port = 210;\r
- unsigned tmpadd;\r
-\r
- TRC(fprintf(stderr, "tcpip_strtoaddress: %s\n", str ? str : "NULL"));\r
- add.sin_family = AF_INET;\r
- strcpy(buf, str);\r
- if ((p = strchr(buf, ':')))\r
- {\r
- *p = 0;\r
- port = atoi(p + 1);\r
- }\r
- add.sin_port = htons(port);\r
- if (!strcmp("@", buf))\r
- add.sin_addr.s_addr = INADDR_ANY;\r
- else if ((hp = gethostbyname(buf)))\r
- memcpy(&add.sin_addr.s_addr, *hp->h_addr_list, sizeof(struct in_addr));\r
- else if ((tmpadd = (unsigned) inet_addr(buf)) != 0)\r
- memcpy(&add.sin_addr.s_addr, &tmpadd, sizeof(struct in_addr));\r
- else\r
- return 0;\r
- return &add;\r
-}\r
-\r
-int tcpip_more(COMSTACK h)\r
-{\r
- tcpip_state *sp = h->private;\r
-\r
- return sp->altlen && completeBER((unsigned char *) sp->altbuf, sp->altlen);\r
-}\r
-\r
-/*\r
- * connect(2) will block (sometimes) - nothing we can do short of doing\r
- * weird things like spawning subprocesses or threading or some weird junk\r
- * like that.\r
- */\r
-int tcpip_connect(COMSTACK h, void *address)\r
-{\r
- struct sockaddr_in *add = address;\r
-\r
- TRC(fprintf(stderr, "tcpip_connect\n"));\r
- if (connect(h->iofile, (struct sockaddr *) add, sizeof(*add)) < 0)\r
- {\r
-#ifdef WINDOWS\r
- if (WSAGetLastError() == WSAEWOULDBLOCK)\r
-#else\r
- if (errno == EINPROGRESS)\r
-#endif\r
- return 1;\r
- return -1;\r
- }\r
- h->state = CS_DATAXFER;\r
- return 0;\r
-}\r
-\r
-/*\r
- * nop\r
- */\r
-int tcpip_rcvconnect(COMSTACK h)\r
-{\r
- TRC(fprintf(stderr, "tcpip_rcvconnect\n"));\r
- return 0;\r
-}\r
-\r
-int tcpip_bind(COMSTACK h, void *address, int mode)\r
-{\r
- struct sockaddr *addr = address;\r
- unsigned long one = 1;\r
-\r
- TRC(fprintf(stderr, "tcpip_bind\n"));\r
- if (setsockopt(h->iofile, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one)) < 0)\r
- {\r
- h->cerrno = CSYSERR;\r
- return -1;\r
- }\r
- if (bind(h->iofile, addr, sizeof(struct sockaddr_in)) < 0)\r
- {\r
- h->cerrno = CSYSERR;\r
- return -1;\r
- }\r
- if (mode == CS_SERVER && listen(h->iofile, 3) < 0)\r
- {\r
- h->cerrno = CSYSERR;\r
- return -1;\r
- }\r
- h->state = CS_IDLE;\r
- return 0;\r
-}\r
-\r
-int tcpip_listen(COMSTACK h, char *raddr, int *addrlen)\r
-{\r
- struct sockaddr_in addr;\r
- int len = sizeof(addr);\r
-\r
- TRC(fprintf(stderr, "tcpip_listen\n"));\r
- if (h->state != CS_IDLE)\r
- {\r
- h->cerrno = CSOUTSTATE;\r
- return -1;\r
- }\r
- if ((h->newfd = accept(h->iofile, (struct sockaddr*)&addr, &len)) < 0)\r
- {\r
-#ifdef WINDOWS\r
- if (WSAGetLastError() == WSAEWOULDBLOCK)\r
-#else\r
- if (errno == EWOULDBLOCK)\r
-#endif\r
-\r
- h->cerrno = CSNODATA;\r
- else\r
- h->cerrno = CSYSERR;\r
- return -1;\r
- }\r
- if (addrlen && *addrlen > sizeof(struct sockaddr_in))\r
- memcpy(raddr, &addr, *addrlen = sizeof(struct sockaddr_in));\r
- else if (addrlen)\r
- *addrlen = 0;\r
- h->state = CS_INCON;\r
- return 0;\r
-}\r
-\r
-COMSTACK tcpip_accept(COMSTACK h)\r
-{\r
- COMSTACK new;\r
- tcpip_state *state;\r
-#ifdef WINDOWS\r
- unsigned long tru = 1;\r
-#endif\r
-\r
- TRC(fprintf(stderr, "tcpip_accept\n"));\r
- if (h->state != CS_INCON)\r
- {\r
- h->cerrno = CSOUTSTATE;\r
- return 0;\r
- }\r
- if (!(new = malloc(sizeof(*new))))\r
- {\r
- h->cerrno = CSYSERR;\r
- return 0;\r
- }\r
- memcpy(new, h, sizeof(*h));\r
- new->iofile = h->newfd;\r
- if (!(state = new->private = malloc(sizeof(tcpip_state))))\r
- {\r
- h->cerrno = CSYSERR;\r
- return 0;\r
- }\r
-#ifdef WINDOWS\r
- if (!new->blocking && ioctlsocket(new->iofile, FIONBIO, &tru) < 0)\r
-#else\r
- if (!new->blocking && fcntl(new->iofile, F_SETFL, O_NONBLOCK) < 0)\r
-#endif\r
- return 0;\r
- state->altbuf = 0;\r
- state->altsize = state->altlen = 0;\r
- state->towrite = state->written = -1;\r
- new->state = CS_DATAXFER;\r
- h->state = CS_IDLE;\r
- return new;\r
-}\r
-\r
-#define CS_TCPIP_BUFCHUNK 4096\r
-\r
-/*\r
- * Return: -1 error, >1 good, len of buffer, ==1 incomplete buffer,\r
- * 0=connection closed.\r
- */\r
-int tcpip_get(COMSTACK h, char **buf, int *bufsize)\r
-{\r
- tcpip_state *sp = h->private;\r
- char *tmpc;\r
- int tmpi, berlen, rest, req, tomove;\r
- int hasread = 0, res;\r
-\r
- TRC(fprintf(stderr, "tcpip_get: bufsize=%d\n", *bufsize));\r
- if (sp->altlen) /* switch buffers */\r
- {\r
- TRC(fprintf(stderr, " %d bytes in altbuf (0x%x)\n", sp->altlen,\r
- (unsigned) sp->altbuf));\r
- tmpc = *buf;\r
- tmpi = *bufsize;\r
- *buf = sp->altbuf;\r
- *bufsize = sp->altsize;\r
- hasread = sp->altlen;\r
- sp->altlen = 0;\r
- sp->altbuf = tmpc;\r
- sp->altsize = tmpi;\r
- }\r
- while (!(berlen = completeBER((unsigned char *)*buf, hasread)))\r
- {\r
- if (!*bufsize)\r
- {\r
- if (!(*buf = malloc(*bufsize = CS_TCPIP_BUFCHUNK)))\r
- return -1;\r
- }\r
- else if (*bufsize - hasread < CS_TCPIP_BUFCHUNK)\r
- if (!(*buf = realloc(*buf, *bufsize *= 2)))\r
- return -1;\r
- if ((res = recv(h->iofile, *buf + hasread, CS_TCPIP_BUFCHUNK, 0)) < 0)\r
-#ifdef WINDOWS\r
- if (WSAGetLastError() == WSAEWOULDBLOCK)\r
-#else\r
- if (errno == EWOULDBLOCK)\r
-#endif\r
- break;\r
- else\r
- return -1;\r
- if (!res)\r
- return 0;\r
- hasread += res;\r
- TRC(fprintf(stderr, " res=%d, hasread=%d\n", res, hasread));\r
- }\r
- TRC(fprintf(stderr, " Out of read loop with hasread=%d, berlen=%d\n",\r
- hasread, berlen));\r
- /* move surplus buffer (or everything if we didn't get a BER rec.) */\r
- if (hasread > berlen)\r
- {\r
- tomove = req = hasread - berlen;\r
- rest = tomove % CS_TCPIP_BUFCHUNK;\r
- if (rest)\r
- req += CS_TCPIP_BUFCHUNK - rest;\r
- if (!sp->altbuf)\r
- {\r
- if (!(sp->altbuf = malloc(sp->altsize = req)))\r
- return -1;\r
- } else if (sp->altsize < req)\r
- if (!(sp->altbuf = realloc(sp->altbuf, sp->altsize = req)))\r
- return -1;\r
- TRC(fprintf(stderr, " Moving %d bytes to altbuf(0x%x)\n", tomove,\r
- (unsigned) sp->altbuf));\r
- memcpy(sp->altbuf, *buf + berlen, sp->altlen = tomove);\r
- }\r
- if (berlen < CS_TCPIP_BUFCHUNK - 1)\r
- *(*buf + berlen) = '\0';\r
- return berlen ? berlen : 1;\r
-}\r
-\r
-/*\r
- * Returns 1, 0 or -1\r
- * In nonblocking mode, you must call again with same buffer while\r
- * return value is 1.\r
- */\r
-int tcpip_put(COMSTACK h, char *buf, int size)\r
-{\r
- int res;\r
- struct tcpip_state *state = h->private;\r
-\r
- TRC(fprintf(stderr, "tcpip_put: size=%d\n", size));\r
- if (state->towrite < 0)\r
- {\r
- state->towrite = size;\r
- state->written = 0;\r
- }\r
- else if (state->towrite != size)\r
- {\r
- h->cerrno = CSWRONGBUF;\r
- return -1;\r
- }\r
- while (state->towrite > state->written)\r
- {\r
- if ((res = send(h->iofile, buf + state->written, size -\r
- state->written, 0)) < 0)\r
- {\r
-#ifdef WINDOWS\r
- if (WSAGetLastError() == WSAEWOULDBLOCK)\r
-#else\r
- if (errno == EAGAIN)\r
-#endif\r
- {\r
- TRC(fprintf(stderr, " Flow control stop\n"));\r
- return 1;\r
- }\r
- h->cerrno = CSYSERR;\r
- return -1;\r
- }\r
- state->written += res;\r
- TRC(fprintf(stderr, " Wrote %d, written=%d, nbytes=%d\n",\r
- res, state->written, size));\r
- }\r
- state->towrite = state->written = -1;\r
- TRC(fprintf(stderr, " Ok\n"));\r
- return 0;\r
-}\r
-\r
-int tcpip_close(COMSTACK h)\r
-{\r
- tcpip_state *sp = h->private;\r
-\r
- TRC(fprintf(stderr, "tcpip_close\n"));\r
- close(h->iofile);\r
- if (sp->altbuf)\r
- free(sp->altbuf);\r
- free(sp);\r
- free(h);\r
- return 0;\r
-}\r
+ *
+ * Revision 1.4 1995/09/28 10:12:26 quinn
+ * Windows-support changes
+ *
+ * Revision 1.3 1995/09/27 15:02:45 quinn
+ * Modified function heads & prototypes.
+ *
+ * Revision 1.2 1995/06/15 12:30:06 quinn
+ * Added @ as hostname alias for INADDR ANY.
+ *
+ * Revision 1.1 1995/06/14 09:58:20 quinn
+ * Renamed yazlib to comstack.
+ *
+ * Revision 1.20 1995/05/16 08:51:16 quinn
+ * License, documentation, and memory fixes
+ *
+ * Revision 1.19 1995/04/10 10:24:08 quinn
+ * Some bug-fixes.
+ *
+ * Revision 1.18 1995/03/30 13:29:27 quinn
+ * Added REUSEADDR in tcpip_bind
+ *
+ * Revision 1.17 1995/03/27 08:36:10 quinn
+ * Some work on nonblocking operation in xmosi.c and rfct.c.
+ * Added protocol parameter to cs_create()
+ *
+ * Revision 1.16 1995/03/21 15:53:41 quinn
+ * Added rcvconnect
+ *
+ * Revision 1.15 1995/03/21 12:31:27 quinn
+ * Added check for EINPROGRESS on connect.
+ *
+ * Revision 1.14 1995/03/20 09:47:21 quinn
+ * Added server-side support to xmosi.c
+ * Fixed possible problems in rfct
+ * Other little mods
+ *
+ * Revision 1.13 1995/03/15 16:15:13 adam
+ * Removed p_write.
+ *
+ * Revision 1.12 1995/03/15 15:36:27 quinn
+ * Mods to support nonblocking I/O
+ *
+ * Revision 1.11 1995/03/15 08:37:57 quinn
+ * Now we're pretty much set for nonblocking I/O.
+ *
+ * Revision 1.10 1995/03/14 17:00:07 quinn
+ * Bug-fixes - added tracing info to tcpip.c
+ *
+ * Revision 1.9 1995/03/14 10:28:42 quinn
+ * Adding server-side support to tcpip.c and fixing bugs in nonblocking I/O
+ *
+ * Revision 1.8 1995/03/10 14:22:50 quinn
+ * Removed debug output.
+ *
+ * Revision 1.7 1995/03/10 11:44:59 quinn
+ * Fixes and debugging
+ *
+ * Revision 1.6 1995/03/07 10:26:55 quinn
+ * Initialized type field in the comstacks.
+ *
+ * Revision 1.5 1995/02/14 20:40:07 quinn
+ * Various stuff.
+ *
+ * Revision 1.4 1995/02/14 11:54:49 quinn
+ * Beginning to add full CCL.
+ *
+ * Revision 1.3 1995/02/10 18:58:10 quinn
+ * Fixed tcpip_get (formerly tcpip_read).
+ * Turned tst (cli) into a proper, event-driven thingy.
+ *
+ * Revision 1.2 1995/02/10 15:55:47 quinn
+ * Small things.
+ *
+ * Revision 1.1 1995/02/09 15:51:52 quinn
+ * Works better now.
+ *
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <errno.h>
+#include <fcntl.h>
+
+#include <comstack.h>
+#include <tcpip.h>
+
+#ifndef WINDOWS
+#include <sys/time.h>
+#endif
+
+int tcpip_close(COMSTACK h);
+int tcpip_put(COMSTACK h, char *buf, int size);
+int tcpip_get(COMSTACK h, char **buf, int *bufsize);
+int tcpip_connect(COMSTACK h, void *address);
+int tcpip_more(COMSTACK h);
+int tcpip_rcvconnect(COMSTACK h);
+int tcpip_bind(COMSTACK h, void *address, int mode);
+int tcpip_listen(COMSTACK h, char *addrp, int *addrlen);
+COMSTACK tcpip_accept(COMSTACK h);
+
+int completeBER(unsigned char *buf, int len);
+
+#ifdef TRACE_TCPIP
+#define TRC(x) x
+#else
+#define TRC(X)
+#endif
+
+static int initialized = 0;
+
+typedef struct tcpip_state
+{
+ char *altbuf; /* alternate buffer for surplus data */
+ int altsize; /* size as malloced */
+ int altlen; /* length of data or 0 if none */
+
+ int written; /* -1 if we aren't writing */
+ int towrite; /* to verify against user input */
+} tcpip_state;
+
+COMSTACK tcpip_type(int blocking, int protocol)
+{
+ COMSTACK p;
+ tcpip_state *state;
+ int s;
+#ifdef WINDOWS
+ unsigned long tru = 1;
+#else
+ struct protoent *proto;
+#endif
+
+ if (!initialized)
+ {
+#ifdef WINDOWS
+ WORD requested;
+ WSADATA wd;
+
+ requested = MAKEWORD(1, 1);
+ if (WSAStartup(requested, &wd))
+ return 0;
+#endif
+ initialized = 1;
+ }
+
+#ifndef WINDOWS
+ if (!(proto = getprotobyname("tcp")))
+ return 0;
+ if ((s = socket(AF_INET, SOCK_STREAM, proto->p_proto)) < 0)
+#else
+ if ((s = socket(AF_INET, SOCK_STREAM, 0)) < 0)
+#endif
+ return 0;
+ if (!(p = malloc(sizeof(struct comstack))))
+ return 0;
+ if (!(state = p->private = malloc(sizeof(tcpip_state))))
+ return 0;
+#ifdef WINDOWS
+ if (!(p->blocking = blocking) && ioctlsocket(s, FIONBIO, &tru) < 0)
+#else
+ if (!(p->blocking = blocking) && fcntl(s, F_SETFL, O_NONBLOCK) < 0)
+#endif
+ return 0;
+ p->iofile = s;
+ p->type = tcpip_type;
+ p->protocol = protocol;
+
+ p->f_connect = tcpip_connect;
+ p->f_rcvconnect = tcpip_rcvconnect;
+ p->f_get = tcpip_get;
+ p->f_put = tcpip_put;
+ p->f_close = tcpip_close;
+ p->f_more = tcpip_more;
+ p->f_bind = tcpip_bind;
+ p->f_listen = tcpip_listen;
+ p->f_accept = tcpip_accept;
+
+ p->state = CS_UNBND;
+ p->event = CS_NONE;
+ p->cerrno = 0;
+ p->stackerr = 0;
+
+ state->altbuf = 0;
+ state->altsize = state->altlen = 0;
+ state->towrite = state->written = -1;
+
+ p->timeout = COMSTACK_DEFAULT_TIMEOUT;
+ TRC(fprintf(stderr, "Created new TCPIP comstack\n"));
+
+ return p;
+}
+
+struct sockaddr_in *tcpip_strtoaddr(const char *str)
+{
+ static struct sockaddr_in add;
+ struct hostent *hp;
+ char *p, buf[512];
+ short int port = 210;
+ unsigned tmpadd;
+
+ TRC(fprintf(stderr, "tcpip_strtoaddress: %s\n", str ? str : "NULL"));
+ add.sin_family = AF_INET;
+ strcpy(buf, str);
+ if ((p = strchr(buf, ':')))
+ {
+ *p = 0;
+ port = atoi(p + 1);
+ }
+ add.sin_port = htons(port);
+ if (!strcmp("@", buf))
+ add.sin_addr.s_addr = INADDR_ANY;
+ else if ((hp = gethostbyname(buf)))
+ memcpy(&add.sin_addr.s_addr, *hp->h_addr_list, sizeof(struct in_addr));
+ else if ((tmpadd = (unsigned) inet_addr(buf)) != 0)
+ memcpy(&add.sin_addr.s_addr, &tmpadd, sizeof(struct in_addr));
+ else
+ return 0;
+ return &add;
+}
+
+int tcpip_more(COMSTACK h)
+{
+ tcpip_state *sp = h->private;
+
+ return sp->altlen && completeBER((unsigned char *) sp->altbuf, sp->altlen);
+}
+
+/*
+ * connect(2) will block (sometimes) - nothing we can do short of doing
+ * weird things like spawning subprocesses or threading or some weird junk
+ * like that.
+ */
+int tcpip_connect(COMSTACK h, void *address)
+{
+ struct sockaddr_in *add = address;
+
+ TRC(fprintf(stderr, "tcpip_connect\n"));
+ if (connect(h->iofile, (struct sockaddr *) add, sizeof(*add)) < 0)
+ {
+#ifdef WINDOWS
+ if (WSAGetLastError() == WSAEWOULDBLOCK)
+#else
+ if (errno == EINPROGRESS)
+#endif
+ return 1;
+ return -1;
+ }
+ h->state = CS_DATAXFER;
+ return 0;
+}
+
+/*
+ * nop
+ */
+int tcpip_rcvconnect(COMSTACK h)
+{
+ TRC(fprintf(stderr, "tcpip_rcvconnect\n"));
+ return 0;
+}
+
+int tcpip_bind(COMSTACK h, void *address, int mode)
+{
+ struct sockaddr *addr = address;
+ unsigned long one = 1;
+
+ TRC(fprintf(stderr, "tcpip_bind\n"));
+ if (setsockopt(h->iofile, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one)) < 0)
+ {
+ h->cerrno = CSYSERR;
+ return -1;
+ }
+ if (bind(h->iofile, addr, sizeof(struct sockaddr_in)) < 0)
+ {
+ h->cerrno = CSYSERR;
+ return -1;
+ }
+ if (mode == CS_SERVER && listen(h->iofile, 3) < 0)
+ {
+ h->cerrno = CSYSERR;
+ return -1;
+ }
+ h->state = CS_IDLE;
+ return 0;
+}
+
+int tcpip_listen(COMSTACK h, char *raddr, int *addrlen)
+{
+ struct sockaddr_in addr;
+ int len = sizeof(addr);
+
+ TRC(fprintf(stderr, "tcpip_listen\n"));
+ if (h->state != CS_IDLE)
+ {
+ h->cerrno = CSOUTSTATE;
+ return -1;
+ }
+ if ((h->newfd = accept(h->iofile, (struct sockaddr*)&addr, &len)) < 0)
+ {
+#ifdef WINDOWS
+ if (WSAGetLastError() == WSAEWOULDBLOCK)
+#else
+ if (errno == EWOULDBLOCK)
+#endif
+
+ h->cerrno = CSNODATA;
+ else
+ h->cerrno = CSYSERR;
+ return -1;
+ }
+ if (addrlen && *addrlen > sizeof(struct sockaddr_in))
+ memcpy(raddr, &addr, *addrlen = sizeof(struct sockaddr_in));
+ else if (addrlen)
+ *addrlen = 0;
+ h->state = CS_INCON;
+ return 0;
+}
+
+COMSTACK tcpip_accept(COMSTACK h)
+{
+ COMSTACK new;
+ tcpip_state *state;
+#ifdef WINDOWS
+ unsigned long tru = 1;
+#endif
+
+ TRC(fprintf(stderr, "tcpip_accept\n"));
+ if (h->state != CS_INCON)
+ {
+ h->cerrno = CSOUTSTATE;
+ return 0;
+ }
+ if (!(new = malloc(sizeof(*new))))
+ {
+ h->cerrno = CSYSERR;
+ return 0;
+ }
+ memcpy(new, h, sizeof(*h));
+ new->iofile = h->newfd;
+ if (!(state = new->private = malloc(sizeof(tcpip_state))))
+ {
+ h->cerrno = CSYSERR;
+ return 0;
+ }
+#ifdef WINDOWS
+ if (!new->blocking && ioctlsocket(new->iofile, FIONBIO, &tru) < 0)
+#else
+ if (!new->blocking && fcntl(new->iofile, F_SETFL, O_NONBLOCK) < 0)
+#endif
+ return 0;
+ state->altbuf = 0;
+ state->altsize = state->altlen = 0;
+ state->towrite = state->written = -1;
+ new->state = CS_DATAXFER;
+ h->state = CS_IDLE;
+ return new;
+}
+
+#define CS_TCPIP_BUFCHUNK 4096
+
+/*
+ * Return: -1 error, >1 good, len of buffer, ==1 incomplete buffer,
+ * 0=connection closed.
+ */
+int tcpip_get(COMSTACK h, char **buf, int *bufsize)
+{
+ tcpip_state *sp = h->private;
+ char *tmpc;
+ int tmpi, berlen, rest, req, tomove;
+ int hasread = 0, res;
+
+ TRC(fprintf(stderr, "tcpip_get: bufsize=%d\n", *bufsize));
+ if (sp->altlen) /* switch buffers */
+ {
+ TRC(fprintf(stderr, " %d bytes in altbuf (0x%x)\n", sp->altlen,
+ (unsigned) sp->altbuf));
+ tmpc = *buf;
+ tmpi = *bufsize;
+ *buf = sp->altbuf;
+ *bufsize = sp->altsize;
+ hasread = sp->altlen;
+ sp->altlen = 0;
+ sp->altbuf = tmpc;
+ sp->altsize = tmpi;
+ }
+ while (!(berlen = completeBER((unsigned char *)*buf, hasread)))
+ {
+ if (!*bufsize)
+ {
+ if (!(*buf = malloc(*bufsize = CS_TCPIP_BUFCHUNK)))
+ return -1;
+ }
+ else if (*bufsize - hasread < CS_TCPIP_BUFCHUNK)
+ if (!(*buf = realloc(*buf, *bufsize *= 2)))
+ return -1;
+ if ((res = recv(h->iofile, *buf + hasread, CS_TCPIP_BUFCHUNK, 0)) < 0)
+#ifdef WINDOWS
+ if (WSAGetLastError() == WSAEWOULDBLOCK)
+#else
+ if (errno == EWOULDBLOCK)
+#endif
+ break;
+ else
+ return -1;
+ if (!res)
+ return 0;
+ hasread += res;
+ TRC(fprintf(stderr, " res=%d, hasread=%d\n", res, hasread));
+ }
+ TRC(fprintf(stderr, " Out of read loop with hasread=%d, berlen=%d\n",
+ hasread, berlen));
+ /* move surplus buffer (or everything if we didn't get a BER rec.) */
+ if (hasread > berlen)
+ {
+ tomove = req = hasread - berlen;
+ rest = tomove % CS_TCPIP_BUFCHUNK;
+ if (rest)
+ req += CS_TCPIP_BUFCHUNK - rest;
+ if (!sp->altbuf)
+ {
+ if (!(sp->altbuf = malloc(sp->altsize = req)))
+ return -1;
+ } else if (sp->altsize < req)
+ if (!(sp->altbuf = realloc(sp->altbuf, sp->altsize = req)))
+ return -1;
+ TRC(fprintf(stderr, " Moving %d bytes to altbuf(0x%x)\n", tomove,
+ (unsigned) sp->altbuf));
+ memcpy(sp->altbuf, *buf + berlen, sp->altlen = tomove);
+ }
+ if (berlen < CS_TCPIP_BUFCHUNK - 1)
+ *(*buf + berlen) = '\0';
+ return berlen ? berlen : 1;
+}
+
+/*
+ * Returns 1, 0 or -1
+ * In nonblocking mode, you must call again with same buffer while
+ * return value is 1.
+ */
+int tcpip_put(COMSTACK h, char *buf, int size)
+{
+ int res;
+ struct tcpip_state *state = h->private;
+
+ TRC(fprintf(stderr, "tcpip_put: size=%d\n", size));
+ if (state->towrite < 0)
+ {
+ state->towrite = size;
+ state->written = 0;
+ }
+ else if (state->towrite != size)
+ {
+ h->cerrno = CSWRONGBUF;
+ return -1;
+ }
+ while (state->towrite > state->written)
+ {
+ if ((res = send(h->iofile, buf + state->written, size -
+ state->written, 0)) < 0)
+ {
+#ifdef WINDOWS
+ if (WSAGetLastError() == WSAEWOULDBLOCK)
+#else
+ if (errno == EAGAIN)
+#endif
+ {
+ TRC(fprintf(stderr, " Flow control stop\n"));
+ return 1;
+ }
+ h->cerrno = CSYSERR;
+ return -1;
+ }
+ state->written += res;
+ TRC(fprintf(stderr, " Wrote %d, written=%d, nbytes=%d\n",
+ res, state->written, size));
+ }
+ state->towrite = state->written = -1;
+ TRC(fprintf(stderr, " Ok\n"));
+ return 0;
+}
+
+int tcpip_close(COMSTACK h)
+{
+ tcpip_state *sp = h->private;
+
+ TRC(fprintf(stderr, "tcpip_close\n"));
+ close(h->iofile);
+ if (sp->altbuf)
+ free(sp->altbuf);
+ free(sp);
+ free(h);
+ return 0;
+}
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: xmosi.c,v $
- * Revision 1.5 1995-09-28 10:24:32 quinn
+ * Revision 1.6 1995-09-29 17:12:00 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/28 10:24:32 quinn
* Windows changes
*
* Revision 1.4 1995/09/27 15:02:45 quinn
return 0;
}
-COMSTACK MDF mosi_type(int blocking, int protocol)
+COMSTACK mosi_type(int blocking, int protocol)
{
COMSTACK r;
mosi_state *state;
* addressing specific to our hack of OSI transport. A sockaddr_in wrapped
* up in a t_mosiaddr in a netbuf (on a stick).
*/
-struct MDF netbuf MDF *mosi_strtoaddr(const char *str)
+struct netbuf MDF *mosi_strtoaddr(const char *str)
{
struct netbuf *ret = malloc(sizeof(struct netbuf));
struct sockaddr_in *add = malloc(sizeof(struct sockaddr_in));
void *handle; /* private handle to the backend module */
} bend_initresult;
-bend_initresult MDF MDF *bend_init(bend_initrequest *r);
+bend_initresult MDF *bend_init(bend_initrequest *r);
typedef struct bend_searchrequest
{
char *errstring; /* system error string or NULL */
} bend_searchresult;
-bend_searchresult MDF *bend_search(void *handle, bend_searchrequest *r, int *fd);
-bend_searchresult MDF *bend_searchresponse(void *handle);
+bend_searchresult *bend_search(void *handle, bend_searchrequest *r, int *fd);
+bend_searchresult *bend_searchresponse(void *handle);
typedef struct bend_fetchrequest
{
char *errstring; /* system error string or NULL */
} bend_fetchresult;
-bend_fetchresult MDF *bend_fetch(void *handle, bend_fetchrequest *r, int *fd);
-bend_fetchresult MDF *bend_fetchresponse(void *handle);
+bend_fetchresult *bend_fetch(void *handle, bend_fetchrequest *r, int *fd);
+bend_fetchresult *bend_fetchresponse(void *handle);
typedef struct bend_scanrequest
{
char *errstring;
} bend_scanresult;
-bend_scanresult MDF *bend_scan(void *handle, bend_scanrequest *r, int *fd);
-bend_scanresult MDF *bend_scanresponse(void *handle);
+bend_scanresult *bend_scan(void *handle, bend_scanrequest *r, int *fd);
+bend_scanresult *bend_scanresponse(void *handle);
typedef struct bend_deleterequest
{
char *errstring; /* system error string or NULL */
} bend_deleteresult;
-bend_deleteresult MDF *bend_delete(void *handle, bend_deleterequest *r, int *fd);
-bend_deleteresult MDF *bend_deleteresponse(void *handle);
+bend_deleteresult *bend_delete(void *handle, bend_deleterequest *r, int *fd);
+bend_deleteresult *bend_deleteresponse(void *handle);
-void MDF bend_close(void *handle);
+void bend_close(void *handle);
#endif
* Europagate, 1995
*
* $Log: ccl.h,v $
- * Revision 1.2 1995-09-27 15:02:46 quinn
+ * Revision 1.3 1995-09-29 17:12:01 quinn
+ * Smallish
+ *
+ * Revision 1.2 1995/09/27 15:02:46 quinn
* Modified function heads & prototypes.
*
* Revision 1.1 1995/04/10 10:28:27 quinn
struct ccl_qualifier *next;
};
-struct ccl_token MDF *ccl_tokenize (const char *command);
+struct ccl_token *ccl_tokenize (const char *command);
-struct ccl_rpn_node MDF *ccl_find_str (CCL_bibset bibset,
+struct ccl_rpn_node *ccl_find_str (CCL_bibset bibset,
const char *str, int *error, int *pos);
-struct ccl_rpn_node MDF *ccl_find (CCL_bibset abibset, struct ccl_token *list,
+struct ccl_rpn_node *ccl_find (CCL_bibset abibset, struct ccl_token *list,
int *error, const char **pos);
-char MDF *ccl_err_msg (int ccl_errno);
-void MDF ccl_rpn_delete (struct ccl_rpn_node *rpn);
-void MDF ccl_pr_tree (struct ccl_rpn_node *rpn, FILE *fd_out);
+char *ccl_err_msg (int ccl_errno);
+void ccl_rpn_delete (struct ccl_rpn_node *rpn);
+void ccl_pr_tree (struct ccl_rpn_node *rpn, FILE *fd_out);
-void MDF ccl_qual_add (CCL_bibset b, const char *name, int no, int *attr);
-void MDF ccl_qual_file (CCL_bibset bibset, FILE *inf);
-CCL_bibset MDF ccl_qual_mk (void);
-void MDF ccl_qual_rm (CCL_bibset *b);
+void ccl_qual_add (CCL_bibset b, const char *name, int no, int *attr);
+void ccl_qual_file (CCL_bibset bibset, FILE *inf);
+CCL_bibset ccl_qual_mk (void);
+void ccl_qual_rm (CCL_bibset *b);
extern const char *ccl_token_and;
extern const char *ccl_token_or;
extern const char *ccl_token_set;
-struct ccl_rpn_attr MDF *ccl_qual_search (CCL_bibset b, const char *name, int len);
+struct ccl_rpn_attr *ccl_qual_search (CCL_bibset b, const char *name, int len);
#endif
* OF THIS SOFTWARE.
*
* $Log: comstack.h,v $
- * Revision 1.10 1995-09-29 17:01:48 quinn
+ * Revision 1.11 1995-09-29 17:12:01 quinn
+ * Smallish
+ *
+ * Revision 1.10 1995/09/29 17:01:48 quinn
* More Windows work
*
* Revision 1.9 1995/09/28 10:12:36 quinn
#define cs_errno(handle) ((handle)->cerrno)
#define cs_getproto(handle) ((handle)->protocol)
-const char MDF *cs_strerror(COMSTACK h);
+const char *cs_strerror(COMSTACK h);
const char *cs_errmsg(int n);
/*
* OF THIS SOFTWARE.
*
* $Log: diagbib1.h,v $
- * Revision 1.3 1995-09-27 15:02:47 quinn
+ * Revision 1.4 1995-09-29 17:12:02 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:47 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:50:30 quinn
#include <yconfig.h>
-const char MDF *diagbib1_str (int code);
+const char *diagbib1_str (int code);
* OF THIS SOFTWARE.
*
* $Log: dmalloc.h,v $
- * Revision 1.3 1995-09-27 15:02:47 quinn
+ * Revision 1.4 1995-09-29 17:12:02 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:47 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:50:30 quinn
#define free(p) d_free(__FILE__, __LINE__, (p))
#define realloc(p, n) d_realloc(__FILE__, __LINE__, (p), (n))
-void MDF *d_malloc(char *file, int line, int nbytes);
-void MDF d_free(char *file, int line, char *ptr);
-void MDF *d_realloc(char *file, int line, char *ptr, int nbytes);
+void *d_malloc(char *file, int line, int nbytes);
+void d_free(char *file, int line, char *ptr);
+void *d_realloc(char *file, int line, char *ptr, int nbytes);
#endif
* OF THIS SOFTWARE.
*
* $Log: log.h,v $
- * Revision 1.4 1995-09-27 15:02:47 quinn
+ * Revision 1.5 1995-09-29 17:12:03 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:02:47 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/06/19 12:38:25 quinn
#define LOG_DEFAULT_LEVEL (LOG_FATAL | LOG_ERRNO | LOG_LOG | LOG_WARN)
-void MDF log_init(int level, const char *prefix, const char *name);
-void MDF logf(int level, const char *fmt, ...);
-int MDF log_mask_str (const char *str);
-FILE MDF *log_file(void);
+void log_init(int level, const char *prefix, const char *name);
+void logf(int level, const char *fmt, ...);
+int log_mask_str (const char *str);
+FILE *log_file(void);
#endif
* OF THIS SOFTWARE.
*
* $Log: marcdisp.h,v $
- * Revision 1.3 1995-09-27 15:02:47 quinn
+ * Revision 1.4 1995-09-29 17:12:03 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:47 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:50:32 quinn
*/
#include <yconfig.h>
-int MDF marc_display (const char *buf, FILE *outf);
+int marc_display (const char *buf, FILE *outf);
* OF THIS SOFTWARE.
*
* $Log: odr.h,v $
- * Revision 1.13 1995-09-29 17:01:49 quinn
+ * Revision 1.14 1995-09-29 17:12:04 quinn
+ * Smallish
+ *
+ * Revision 1.13 1995/09/29 17:01:49 quinn
* More Windows work
*
* Revision 1.12 1995/09/27 15:02:48 quinn
odr_constack stack[ODR_MAX_STACK];
} *ODR;
-typedef int MDF (*Odr_fun)();
+typedef int (*Odr_fun)();
typedef struct odr_arm
{
extern char *odr_errlist[];
-int MDF odr_geterror(ODR o);
-void MDF odr_perror(ODR o, char *message);
-void MDF odr_setprint(ODR o, FILE *file);
-ODR MDF odr_createmem(int direction);
-void MDF odr_reset(ODR o);
-void MDF odr_destroy(ODR o);
-void MDF odr_setbuf(ODR o, char *buf, int len, int can_grow);
-char MDF *odr_getbuf(ODR o, int *len, int *size);
-void MDF *odr_malloc(ODR o, int size);
-ODR_MEM MDF odr_extract_mem(ODR o);
-void MDF odr_release_mem(ODR_MEM p);
+int odr_geterror(ODR o);
+void odr_perror(ODR o, char *message);
+void odr_setprint(ODR o, FILE *file);
+ODR odr_createmem(int direction);
+void odr_reset(ODR o);
+void odr_destroy(ODR o);
+void odr_setbuf(ODR o, char *buf, int len, int can_grow);
+char *odr_getbuf(ODR o, int *len, int *size);
+void *odr_malloc(ODR o, int size);
+ODR_MEM odr_extract_mem(ODR o);
+void odr_release_mem(ODR_MEM p);
#define odr_implicit(o, t, p, cl, tg, opt)\
(odr_implicit_settag((o), cl, tg), t ((o), (p), opt) )
* OF THIS SOFTWARE.
*
* $Log: odr_use.h,v $
- * Revision 1.5 1995-09-27 15:02:48 quinn
+ * Revision 1.6 1995-09-29 17:12:04 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/27 15:02:48 quinn
* Modified function heads & prototypes.
*
* Revision 1.4 1995/08/10 08:54:34 quinn
} u;
} Odr_external;
-int MDF odr_external(ODR o, Odr_external **p, int opt);
+int odr_external(ODR o, Odr_external **p, int opt);
-int MDF odr_visiblestring(ODR o, char **p, int opt);
-int MDF odr_graphicstring(ODR o, char **p, int opt);
-int MDF odr_generalizedtime(ODR o, char **p, int opt);
+int odr_visiblestring(ODR o, char **p, int opt);
+int odr_graphicstring(ODR o, char **p, int opt);
+int odr_generalizedtime(ODR o, char **p, int opt);
#endif
* OF THIS SOFTWARE.
*
* $Log: oid.h,v $
- * Revision 1.6 1995-09-27 15:02:48 quinn
+ * Revision 1.7 1995-09-29 17:12:05 quinn
+ * Smallish
+ *
+ * Revision 1.6 1995/09/27 15:02:48 quinn
* Modified function heads & prototypes.
*
* Revision 1.5 1995/09/12 11:31:46 quinn
typedef enum oid_class oid_class;
typedef enum oid_value oid_value;
-int MDF *oid_getoidbyent(struct oident *ent);
-struct oident MDF *oid_getentbyoid(int *o);
-void MDF oid_oidcpy(int *t, int *s);
-void MDF oid_oidcat(int *t, int *s);
-int MDF oid_oidcmp(int *o1, int *o2);
-int MDF oid_oidlen(int *o);
-oid_value MDF oid_getvalbyname(char *name);
+int *oid_getoidbyent(struct oident *ent);
+struct oident *oid_getentbyoid(int *o);
+void oid_oidcpy(int *t, int *s);
+void oid_oidcat(int *t, int *s);
+int oid_oidcmp(int *o1, int *o2);
+int oid_oidlen(int *o);
+oid_value oid_getvalbyname(char *name);
#endif
* OF THIS SOFTWARE.
*
* $Log: options.h,v $
- * Revision 1.3 1995-09-27 15:02:48 quinn
+ * Revision 1.4 1995-09-29 17:12:05 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:48 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:50:36 quinn
#ifndef OPTIONS_H
#define OPTIONS_H
#include <yconfig.h>
-int MDF options (const char *desc, char **argv, int argc, char **arg);
+int options (const char *desc, char **argv, int argc, char **arg);
#endif
* OF THIS SOFTWARE.
*
* $Log: pquery.h,v $
- * Revision 1.3 1995-09-27 15:02:49 quinn
+ * Revision 1.4 1995-09-29 17:12:05 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:49 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/26 08:56:05 adam
#include <yconfig.h>
#include <proto.h>
-Z_RPNQuery MDF *p_query_rpn (ODR o, const char *qbuf);
-Z_AttributesPlusTerm MDF *p_query_scan (ODR o, const char *qbuf);
+Z_RPNQuery *p_query_rpn (ODR o, const char *qbuf);
+Z_AttributesPlusTerm *p_query_scan (ODR o, const char *qbuf);
#endif
* OF THIS SOFTWARE.
*
* $Log: proto.h,v $
- * Revision 1.25 1995-09-27 15:02:49 quinn
+ * Revision 1.26 1995-09-29 17:12:08 quinn
+ * Smallish
+ *
+ * Revision 1.25 1995/09/27 15:02:49 quinn
* Modified function heads & prototypes.
*
* Revision 1.24 1995/08/29 11:17:43 quinn
char *account;
} Z_NSRAuthentication;
-int MDF z_NSRAuthentication(ODR o, Z_NSRAuthentication **p, int opt);
+int z_NSRAuthentication(ODR o, Z_NSRAuthentication **p, int opt);
-int MDF z_StrAuthentication(ODR o, char **p, int opt);
+int z_StrAuthentication(ODR o, char **p, int opt);
/* ------------------ SEARCH SERVICE ----------------*/
} u;
} Z_APDU;
-int MDF z_APDU(ODR o, Z_APDU **p, int opt);
-int MDF z_SUTRS(ODR o, Odr_oct **p, int opt);
-
-Z_InitRequest MDF *zget_InitRequest(ODR o);
-Z_InitResponse MDF *zget_InitResponse(ODR o);
-Z_SearchRequest MDF *zget_SearchRequest(ODR o);
-Z_SearchResponse MDF *zget_SearchResponse(ODR o);
-Z_PresentRequest MDF *zget_PresentRequest(ODR o);
-Z_PresentResponse MDF *zget_PresentResponse(ODR o);
-Z_DeleteResultSetRequest MDF *zget_DeleteResultSetRequest(ODR o);
-Z_DeleteResultSetResponse MDF *zget_DeleteResultSetResponse(ODR o);
-Z_ScanRequest MDF *zget_ScanRequest(ODR o);
-Z_ScanResponse MDF *zget_ScanResponse(ODR o);
-Z_TriggerResourceControlRequest MDF *zget_TriggerResourceControlRequest(ODR o);
-Z_ResourceControlRequest MDF *zget_ResourceControlRequest(ODR o);
-Z_ResourceControlResponse MDF *zget_ResourceControlResponse(ODR o);
-Z_Close MDF *zget_Close(ODR o);
-int MDF z_InternationalString(ODR o, char **p, int opt);
-int MDF z_OtherInformation(ODR o, Z_OtherInformation **p, int opt);
-int MDF z_ElementSetName(ODR o, char **p, int opt);
-int MDF z_IntUnit(ODR o, Z_IntUnit **p, int opt);
-int MDF z_Unit(ODR o, Z_Unit **p, int opt);
-int MDF z_DatabaseName(ODR o, Z_DatabaseName **p, int opt);
-int MDF z_StringOrNumeric(ODR o, Z_StringOrNumeric **p, int opt);
-int MDF z_OtherInformationUnit(ODR o, Z_OtherInformationUnit **p, int opt);
-int MDF z_Term(ODR o, Z_Term **p, int opt);
-int MDF z_Specification(ODR o, Z_Specification **p, int opt);
-int MDF z_Permissions(ODR o, Z_Permissions **p, int opt);
-int MDF z_DiagRec(ODR o, Z_DiagRec **p, int opt);
-int MDF z_AttributeList(ODR o, Z_AttributeList **p, int opt);
-int MDF z_DefaultDiagFormat(ODR o, Z_DefaultDiagFormat **p, int opt);
-Z_APDU MDF *zget_APDU(ODR o, enum Z_APDU_which which);
+int z_APDU(ODR o, Z_APDU **p, int opt);
+int z_SUTRS(ODR o, Odr_oct **p, int opt);
+
+Z_InitRequest *zget_InitRequest(ODR o);
+Z_InitResponse *zget_InitResponse(ODR o);
+Z_SearchRequest *zget_SearchRequest(ODR o);
+Z_SearchResponse *zget_SearchResponse(ODR o);
+Z_PresentRequest *zget_PresentRequest(ODR o);
+Z_PresentResponse *zget_PresentResponse(ODR o);
+Z_DeleteResultSetRequest *zget_DeleteResultSetRequest(ODR o);
+Z_DeleteResultSetResponse *zget_DeleteResultSetResponse(ODR o);
+Z_ScanRequest *zget_ScanRequest(ODR o);
+Z_ScanResponse *zget_ScanResponse(ODR o);
+Z_TriggerResourceControlRequest *zget_TriggerResourceControlRequest(ODR o);
+Z_ResourceControlRequest *zget_ResourceControlRequest(ODR o);
+Z_ResourceControlResponse *zget_ResourceControlResponse(ODR o);
+Z_Close *zget_Close(ODR o);
+int z_InternationalString(ODR o, char **p, int opt);
+int z_OtherInformation(ODR o, Z_OtherInformation **p, int opt);
+int z_ElementSetName(ODR o, char **p, int opt);
+int z_IntUnit(ODR o, Z_IntUnit **p, int opt);
+int z_Unit(ODR o, Z_Unit **p, int opt);
+int z_DatabaseName(ODR o, Z_DatabaseName **p, int opt);
+int z_StringOrNumeric(ODR o, Z_StringOrNumeric **p, int opt);
+int z_OtherInformationUnit(ODR o, Z_OtherInformationUnit **p, int opt);
+int z_Term(ODR o, Z_Term **p, int opt);
+int z_Specification(ODR o, Z_Specification **p, int opt);
+int z_Permissions(ODR o, Z_Permissions **p, int opt);
+int z_DiagRec(ODR o, Z_DiagRec **p, int opt);
+int z_AttributeList(ODR o, Z_AttributeList **p, int opt);
+int z_DefaultDiagFormat(ODR o, Z_DefaultDiagFormat **p, int opt);
+Z_APDU *zget_APDU(ODR o, enum Z_APDU_which which);
#include <prt-rsc.h>
#include <prt-acc.h>
* OF THIS SOFTWARE.
*
* $Log: prt-acc.h,v $
- * Revision 1.4 1995-09-27 15:02:49 quinn
+ * Revision 1.5 1995-09-29 17:12:09 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:02:49 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/08/17 12:45:16 quinn
} u;
} Z_PromptObject1;
-int MDF z_PromptObject1(ODR o, Z_PromptObject1 **p, int opt);
+int z_PromptObject1(ODR o, Z_PromptObject1 **p, int opt);
#endif
Z_DiagnosticUnit **diagnostics;
} Z_DiagnosticFormat;
-int MDF z_DiagnosticFormat(ODR o, Z_DiagnosticFormat **p, int opt);
+int z_DiagnosticFormat(ODR o, Z_DiagnosticFormat **p, int opt);
#endif
Z_External *taskSpecificParameters;
} Z_TaskPackage;
-int MDF z_TaskPackage(ODR o, Z_TaskPackage **p, int opt);
+int z_TaskPackage(ODR o, Z_TaskPackage **p, int opt);
/* ----------------------- ITEM ORDER ------------------------- */
} u;
} Z_ItemOrder;
-int MDF z_ItemOrder(ODR o, Z_ItemOrder **p, int opt);
+int z_ItemOrder(ODR o, Z_ItemOrder **p, int opt);
#endif
} u;
} Z_ExplainRecord;
-int MDF z_ExplainRecord(ODR o, Z_ExplainRecord **p, int opt);
+int z_ExplainRecord(ODR o, Z_ExplainRecord **p, int opt);
#endif
} u;
};
-int MDF z_External(ODR o, Z_External **p, int opt);
+int z_External(ODR o, Z_External **p, int opt);
#endif
Z_TaggedElement **elements;
};
-int MDF z_GenericRecord(ODR o, Z_GenericRecord **p, int opt);
+int z_GenericRecord(ODR o, Z_GenericRecord **p, int opt);
#endif
* OF THIS SOFTWARE.
*
* $Log: prt-rsc.h,v $
- * Revision 1.4 1995-09-27 15:02:52 quinn
+ * Revision 1.5 1995-09-29 17:12:11 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:02:52 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/08/17 12:45:17 quinn
char *message;
} Z_ResourceReport1;
-int MDF z_ResourceReport1(ODR o, Z_ResourceReport1 **p, int opt);
+int z_ResourceReport1(ODR o, Z_ResourceReport1 **p, int opt);
/* -------------------- Resource-2 -------------------- */
char *message; /* OPTIONAL */
} Z_ResourceReport2;
-int MDF z_ResourceReport2(ODR o, Z_ResourceReport2 **p, int opt);
+int z_ResourceReport2(ODR o, Z_ResourceReport2 **p, int opt);
#endif
#include <yconfig.h>
-int MDF ber_boolean(ODR o, int *val);
-int MDF ber_tag(ODR o, void *p, int class, int tag, int *constructed, int opt);
-int MDF ber_enctag(ODR o, int class, int tag, int constructed);
-int MDF ber_dectag(unsigned char *buf, int *class, int *tag, int *constructed);
-int MDF odr_bool(ODR o, int **p, int opt);
-int MDF odr_integer(ODR o, int **p, int opt);
-int MDF odr_implicit_settag(ODR o, int class, int tag);
+int ber_boolean(ODR o, int *val);
+int ber_tag(ODR o, void *p, int class, int tag, int *constructed, int opt);
+int ber_enctag(ODR o, int class, int tag, int constructed);
+int ber_dectag(unsigned char *buf, int *class, int *tag, int *constructed);
+int odr_bool(ODR o, int **p, int opt);
+int odr_integer(ODR o, int **p, int opt);
+int odr_implicit_settag(ODR o, int class, int tag);
#if 0
-int MDF odr_implicit(ODR o, int (*type)(ODR o, void *p, int opt), void *p,
+int odr_implicit(ODR o, int (*type)(ODR o, void *p, int opt), void *p,
int class, int tag, int opt);
#endif
-int MDF ber_enclen(ODR o, int len, int lenlen, int exact);
-int MDF ber_declen(unsigned char *buf, int *len);
-char MDF *odr_indent(ODR o);
-int MDF ber_null(ODR o);
-int MDF odr_null(ODR o, Odr_null **p, int opt);
-int MDF ber_integer(ODR o, int *val);
-int MDF odr_constructed_begin(ODR o, void *p, int class, int tag);
-int MDF odr_constructed_end(ODR o);
-int MDF odr_sequence_begin(ODR o, void *p, int size);
-int MDF odr_sequence_end(ODR o);
-int MDF ber_octetstring(ODR o, Odr_oct *p, int cons);
-int MDF odr_octetstring(ODR o, Odr_oct **p, int opt);
-int MDF odp_more_chunks(ODR o, unsigned char *base, int len);
-int MDF odr_constructed_more(ODR o);
-int MDF odr_bitstring(ODR o, Odr_bitmask **p, int opt);
-int MDF ber_bitstring(ODR o, Odr_bitmask *p, int cons);
-int MDF odr_generalstring(ODR o, char **p, int opt);
-int MDF ber_oidc(ODR o, Odr_oid *p);
-int MDF odr_oid(ODR o, Odr_oid **p, int opt);
-int MDF odr_choice(ODR o, Odr_arm arm[], void *p, void *whichp);
-int MDF odr_cstring(ODR o, char **p, int opt);
-int MDF odr_sequence_of(ODR o, Odr_fun type, void *p, int *num);
-int MDF odr_any(ODR o, Odr_any **p, int opt);
-int MDF ber_any(ODR o, Odr_any **p);
-int MDF completeBER(unsigned char *buf, int len);
-void MDF odr_begin(ODR o);
-void MDF odr_end(ODR o);
-void MDF odr_release_mem(struct odr_memblock *p);
-Odr_oid MDF *odr_oiddup(ODR odr, Odr_oid *o);
-int MDF odr_grow_block(odr_ecblock *b, int min_bytes);
-int MDF odr_write(ODR o, unsigned char *buf, int bytes);
-int MDF odr_seek(ODR o, int whence, int offset);
-int MDF odr_dumpBER(FILE *f, char *buf, int len);
-void MDF odr_choice_bias(ODR o, int what);
-int MDF odr_total(ODR o);
+int ber_enclen(ODR o, int len, int lenlen, int exact);
+int ber_declen(unsigned char *buf, int *len);
+char *odr_indent(ODR o);
+int ber_null(ODR o);
+int odr_null(ODR o, Odr_null **p, int opt);
+int ber_integer(ODR o, int *val);
+int odr_constructed_begin(ODR o, void *p, int class, int tag);
+int odr_constructed_end(ODR o);
+int odr_sequence_begin(ODR o, void *p, int size);
+int odr_sequence_end(ODR o);
+int ber_octetstring(ODR o, Odr_oct *p, int cons);
+int odr_octetstring(ODR o, Odr_oct **p, int opt);
+int odp_more_chunks(ODR o, unsigned char *base, int len);
+int odr_constructed_more(ODR o);
+int odr_bitstring(ODR o, Odr_bitmask **p, int opt);
+int ber_bitstring(ODR o, Odr_bitmask *p, int cons);
+int odr_generalstring(ODR o, char **p, int opt);
+int ber_oidc(ODR o, Odr_oid *p);
+int odr_oid(ODR o, Odr_oid **p, int opt);
+int odr_choice(ODR o, Odr_arm arm[], void *p, void *whichp);
+int odr_cstring(ODR o, char **p, int opt);
+int odr_sequence_of(ODR o, Odr_fun type, void *p, int *num);
+int odr_any(ODR o, Odr_any **p, int opt);
+int ber_any(ODR o, Odr_any **p);
+int completeBER(unsigned char *buf, int len);
+void odr_begin(ODR o);
+void odr_end(ODR o);
+void odr_release_mem(struct odr_memblock *p);
+Odr_oid *odr_oiddup(ODR odr, Odr_oid *o);
+int odr_grow_block(odr_ecblock *b, int min_bytes);
+int odr_write(ODR o, unsigned char *buf, int bytes);
+int odr_seek(ODR o, int whence, int offset);
+int odr_dumpBER(FILE *f, char *buf, int len);
+void odr_choice_bias(ODR o, int what);
+int odr_total(ODR o);
char *odr_errmsg(int n);
#endif
* OF THIS SOFTWARE.
*
* $Log: statserv.h,v $
- * Revision 1.6 1995-09-27 15:02:53 quinn
+ * Revision 1.7 1995-09-29 17:12:12 quinn
+ * Smallish
+ *
+ * Revision 1.6 1995/09/27 15:02:53 quinn
* Modified function heads & prototypes.
*
* Revision 1.5 1995/06/19 12:38:31 quinn
char setuid[ODR_MAXNAME+1]; /* setuid to this user after binding */
} statserv_options_block;
-int MDF statserv_main(int argc, char **argv);
-statserv_options_block MDF *statserv_getcontrol(void);
-void MDF statserv_setcontrol(statserv_options_block *block);
+int statserv_main(int argc, char **argv);
+statserv_options_block *statserv_getcontrol(void);
+void statserv_setcontrol(statserv_options_block *block);
#endif
* OF THIS SOFTWARE.
*
* $Log: tcpip.h,v $
- * Revision 1.4 1995-09-28 10:12:36 quinn
+ * Revision 1.5 1995-09-29 17:12:13 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/28 10:12:36 quinn
* Windows-support changes
*
* Revision 1.3 1995/09/27 15:02:53 quinn
#include <arpa/inet.h>
#endif
-struct sockaddr_in MDF *tcpip_strtoaddr(const char *str);
+struct sockaddr_in *tcpip_strtoaddr(const char *str);
-COMSTACK MDF tcpip_type(int blocking, int protocol);
+COMSTACK tcpip_type(int blocking, int protocol);
#endif
* OF THIS SOFTWARE.
*
* $Log: xmosi.h,v $
- * Revision 1.3 1995-09-27 15:02:53 quinn
+ * Revision 1.4 1995-09-29 17:12:13 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:53 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:50:39 quinn
#include <xtiUser.h>
#include <mosi.h>
-struct netbuf MDF *mosi_strtoaddr(const char *str);
+struct netbuf *mosi_strtoaddr(const char *str);
-COMSTACK MDF mosi_type(int blocking, int protocol);
+COMSTACK mosi_type(int blocking, int protocol);
#endif
* OF THIS SOFTWARE.
*
* $Log: yaz-ccl.h,v $
- * Revision 1.4 1995-09-27 15:02:54 quinn
+ * Revision 1.5 1995-09-29 17:12:14 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:02:54 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/05/16 08:50:40 quinn
#include <proto.h>
#include <ccl.h>
-Z_RPNQuery MDF *ccl_rpn_query (struct ccl_rpn_node *p);
-Z_AttributesPlusTerm MDF *ccl_scan_query (struct ccl_rpn_node *p);
+Z_RPNQuery *ccl_rpn_query (struct ccl_rpn_node *p);
+Z_AttributesPlusTerm *ccl_scan_query (struct ccl_rpn_node *p);
#endif
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_any.c,v $
- * Revision 1.11 1995-09-27 15:02:54 quinn
+ * Revision 1.12 1995-09-29 17:12:15 quinn
+ * Smallish
+ *
+ * Revision 1.11 1995/09/27 15:02:54 quinn
* Modified function heads & prototypes.
*
* Revision 1.10 1995/05/16 08:50:42 quinn
#include <odr.h>
-int MDF ber_any(ODR o, Odr_any **p)
+int ber_any(ODR o, Odr_any **p)
{
int res;
/*
* Return length of BER-package or 0.
*/
-int MDF completeBER(unsigned char *buf, int len)
+int completeBER(unsigned char *buf, int len)
{
int res, ll, class, tag, cons;
unsigned char *b = buf;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_bit.c,v $
- * Revision 1.6 1995-09-27 15:02:54 quinn
+ * Revision 1.7 1995-09-29 17:12:16 quinn
+ * Smallish
+ *
+ * Revision 1.6 1995/09/27 15:02:54 quinn
* Modified function heads & prototypes.
*
* Revision 1.5 1995/05/16 08:50:43 quinn
#include <odr.h>
-int MDF ber_bitstring(ODR o, Odr_bitmask *p, int cons)
+int ber_bitstring(ODR o, Odr_bitmask *p, int cons)
{
int res, len;
unsigned char *base;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_bool.c,v $
- * Revision 1.7 1995-09-27 15:02:55 quinn
+ * Revision 1.8 1995-09-29 17:12:16 quinn
+ * Smallish
+ *
+ * Revision 1.7 1995/09/27 15:02:55 quinn
* Modified function heads & prototypes.
*
* Revision 1.6 1995/05/16 08:50:43 quinn
#include <odr.h>
-int MDF ber_boolean(ODR o, int *val)
+int ber_boolean(ODR o, int *val)
{
int res, len;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_int.c,v $
- * Revision 1.10 1995-09-29 17:01:50 quinn
+ * Revision 1.11 1995-09-29 17:12:16 quinn
+ * Smallish
+ *
+ * Revision 1.10 1995/09/29 17:01:50 quinn
* More Windows work
*
* Revision 1.9 1995/09/28 10:12:39 quinn
#include <odr.h>
#include <prt.h>
-static int MDF ber_encinteger(ODR o, int val);
-static int MDF ber_decinteger(unsigned char *buf, int *val);
+static int ber_encinteger(ODR o, int val);
+static int ber_decinteger(unsigned char *buf, int *val);
-int MDF ber_integer(ODR o, int *val)
+int ber_integer(ODR o, int *val)
{
int res;
/*
* Returns: number of bytes written or -1 for error (out of bounds).
*/
-int MDF ber_encinteger(ODR o, int val)
+int ber_encinteger(ODR o, int val)
{
int lenpos;
int a, len;
/*
* Returns: Number of bytes read or 0 if no match, -1 if error.
*/
-int MDF ber_decinteger(unsigned char *buf, int *val)
+int ber_decinteger(unsigned char *buf, int *val)
{
unsigned char *b = buf, fill;
int res, len, remains;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_len.c,v $
- * Revision 1.5 1995-09-27 15:02:55 quinn
+ * Revision 1.6 1995-09-29 17:12:17 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/27 15:02:55 quinn
* Modified function heads & prototypes.
*
* Revision 1.4 1995/05/16 08:50:45 quinn
* Returns: =0 success, indefinite start-marker set. 1 byte encoded.
* Returns: -1 failure, out of bounds.
*/
-int MDF ber_enclen(ODR o, int len, int lenlen, int exact)
+int ber_enclen(ODR o, int len, int lenlen, int exact)
{
unsigned char octs[sizeof(int)];
int n = 0;
* len = -1 indefinite.
* len >= 0 Length.
*/
-int MDF ber_declen(unsigned char *buf, int *len)
+int ber_declen(unsigned char *buf, int *len)
{
unsigned char *b = buf;
int n;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_null.c,v $
- * Revision 1.7 1995-09-27 15:02:55 quinn
+ * Revision 1.8 1995-09-29 17:12:18 quinn
+ * Smallish
+ *
+ * Revision 1.7 1995/09/27 15:02:55 quinn
* Modified function heads & prototypes.
*
* Revision 1.6 1995/05/22 11:32:01 quinn
/*
* BER-en/decoder for NULL type.
*/
-int MDF ber_null(ODR o)
+int ber_null(ODR o)
{
switch (o->direction)
{
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_oct.c,v $
- * Revision 1.9 1995-09-27 15:02:55 quinn
+ * Revision 1.10 1995-09-29 17:12:18 quinn
+ * Smallish
+ *
+ * Revision 1.9 1995/09/27 15:02:55 quinn
* Modified function heads & prototypes.
*
* Revision 1.8 1995/05/16 08:50:47 quinn
#include <odr.h>
-int MDF ber_octetstring(ODR o, Odr_oct *p, int cons)
+int ber_octetstring(ODR o, Odr_oct *p, int cons)
{
int res, len;
unsigned char *base, *c;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_oid.c,v $
- * Revision 1.8 1995-09-27 15:02:56 quinn
+ * Revision 1.9 1995-09-29 17:12:19 quinn
+ * Smallish
+ *
+ * Revision 1.8 1995/09/27 15:02:56 quinn
* Modified function heads & prototypes.
*
* Revision 1.7 1995/05/16 08:50:47 quinn
#include <odr.h>
-int MDF ber_oidc(ODR o, Odr_oid *p)
+int ber_oidc(ODR o, Odr_oid *p)
{
int len, lenp, end;
int pos, n, res, id;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: ber_tag.c,v $
- * Revision 1.12 1995-09-27 15:02:57 quinn
+ * Revision 1.13 1995-09-29 17:12:21 quinn
+ * Smallish
+ *
+ * Revision 1.12 1995/09/27 15:02:57 quinn
* Modified function heads & prototypes.
*
* Revision 1.11 1995/05/16 08:50:48 quinn
*
* Should perhaps be odr_tag?
*/
-int MDF ber_tag(ODR o, void *p, int class, int tag, int *constructed, int opt)
+int ber_tag(ODR o, void *p, int class, int tag, int *constructed, int opt)
{
static int lclass = -1, ltag, br, lcons; /* save t&c rather than
decoding twice */
* BER-encode a class/tag/constructed package (identifier octets). Return
* number of bytes encoded, or -1 if out of bounds.
*/
-int MDF ber_enctag(ODR o, int class, int tag, int constructed)
+int ber_enctag(ODR o, int class, int tag, int constructed)
{
int cons = (constructed ? 1 : 0), n = 0;
unsigned char octs[sizeof(int)], b;
/* ber_dectag
* Decode BER identifier octets. Return number of bytes read or -1 for error.
*/
-int MDF ber_dectag(unsigned char *buf, int *class, int *tag, int *constructed)
+int ber_dectag(unsigned char *buf, int *class, int *tag, int *constructed)
{
unsigned char *b = buf;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: dumpber.c,v $
- * Revision 1.3 1995-09-27 15:02:57 quinn
+ * Revision 1.4 1995-09-29 17:12:21 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:02:57 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/06/27 13:20:51 quinn
return b - buf;
}
-int MDF odr_dumpBER(FILE *f, char *buf, int len)
+int odr_dumpBER(FILE *f, char *buf, int len)
{
return do_dumpBER(f, buf, len, 0);
}
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr.c,v $
- * Revision 1.17 1995-09-29 17:01:50 quinn
+ * Revision 1.18 1995-09-29 17:12:22 quinn
+ * Smallish
+ *
+ * Revision 1.17 1995/09/29 17:01:50 quinn
* More Windows work
*
* Revision 1.16 1995/09/27 15:02:57 quinn
return odr_errlist[n];
}
-void MDF odr_perror(ODR o, char *message)
+void odr_perror(ODR o, char *message)
{
fprintf(stderr, "%s: %s\n", message, odr_errlist[o->error]);
}
-int MDF odr_geterror(ODR o)
+int odr_geterror(ODR o)
{
return o->error;
}
-void MDF odr_setprint(ODR o, FILE *file)
+void odr_setprint(ODR o, FILE *file)
{
o->print = file;
}
-ODR MDF odr_createmem(int direction)
+ODR odr_createmem(int direction)
{
struct odr *r;
return r;
}
-void MDF odr_reset(ODR o)
+void odr_reset(ODR o)
{
o->error = ONONE;
o->bp = o->buf;
o->choice_bias = -1;
}
-void MDF odr_destroy(ODR o)
+void odr_destroy(ODR o)
{
odr_release_mem(o->mem);
if (o->ecb.buf && o->ecb.can_grow)
free(o);
}
-void MDF odr_setbuf(ODR o, char *buf, int len, int can_grow)
+void odr_setbuf(ODR o, char *buf, int len, int can_grow)
{
o->buf = o->bp = (unsigned char *) buf;
o->buflen = o->left = len;
o->ecb.size = len;
}
-char MDF *odr_getbuf(ODR o, int *len, int *size)
+char *odr_getbuf(ODR o, int *len, int *size)
{
*len = o->ecb.top;
if (size)
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_any.c,v $
- * Revision 1.5 1995-09-27 15:02:58 quinn
+ * Revision 1.6 1995-09-29 17:12:22 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/27 15:02:58 quinn
* Modified function heads & prototypes.
*
* Revision 1.4 1995/05/16 08:50:50 quinn
* does not work, and neither does the optional flag, unless the element
* is the last in a sequence.
*/
-int MDF odr_any(ODR o, Odr_any **p, int opt)
+int odr_any(ODR o, Odr_any **p, int opt)
{
if (o->error)
return 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_bit.c,v $
- * Revision 1.9 1995-09-27 15:02:58 quinn
+ * Revision 1.10 1995-09-29 17:12:22 quinn
+ * Smallish
+ *
+ * Revision 1.9 1995/09/27 15:02:58 quinn
* Modified function heads & prototypes.
*
* Revision 1.8 1995/05/16 08:50:51 quinn
* Top level bitstring string en/decoder.
* Returns 1 on success, 0 on error.
*/
-int MDF odr_bitstring(ODR o, Odr_bitmask **p, int opt)
+int odr_bitstring(ODR o, Odr_bitmask **p, int opt)
{
int res, cons = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_bool.c,v $
- * Revision 1.7 1995-09-27 15:02:58 quinn
+ * Revision 1.8 1995-09-29 17:12:23 quinn
+ * Smallish
+ *
+ * Revision 1.7 1995/09/27 15:02:58 quinn
* Modified function heads & prototypes.
*
* Revision 1.6 1995/05/16 08:50:52 quinn
* Top level boolean en/decoder.
* Returns 1 on success, 0 on error.
*/
-int MDF odr_bool(ODR o, int **p, int opt)
+int odr_bool(ODR o, int **p, int opt)
{
int res, cons = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_choice.c,v $
- * Revision 1.10 1995-09-27 15:02:58 quinn
+ * Revision 1.11 1995-09-29 17:12:23 quinn
+ * Smallish
+ *
+ * Revision 1.10 1995/09/27 15:02:58 quinn
* Modified function heads & prototypes.
*
* Revision 1.9 1995/08/15 12:00:23 quinn
#include <odr.h>
-int MDF odr_choice(ODR o, Odr_arm arm[], void *p, void *whichp)
+int odr_choice(ODR o, Odr_arm arm[], void *p, void *whichp)
{
int i, cl = -1, tg, cn, *which = whichp, bias = o->choice_bias;
return 0;
}
-void MDF odr_choice_bias(ODR o, int what)
+void odr_choice_bias(ODR o, int what)
{
o->choice_bias = what;
}
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_cons.c,v $
- * Revision 1.14 1995-09-27 15:02:58 quinn
+ * Revision 1.15 1995-09-29 17:12:23 quinn
+ * Smallish
+ *
+ * Revision 1.14 1995/09/27 15:02:58 quinn
* Modified function heads & prototypes.
*
* Revision 1.13 1995/08/15 11:16:39 quinn
#include <odr.h>
#include <assert.h>
-int MDF odr_constructed_begin(ODR o, void *p, int class, int tag)
+int odr_constructed_begin(ODR o, void *p, int class, int tag)
{
int res;
int cons = 1;
return 1;
}
-int MDF odr_constructed_more(ODR o)
+int odr_constructed_more(ODR o)
{
if (o->error)
return 0;
return (!(*o->bp == 0 && *(o->bp + 1) == 0));
}
-int MDF odr_constructed_end(ODR o)
+int odr_constructed_end(ODR o)
{
int res;
int pos;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_int.c,v $
- * Revision 1.9 1995-09-29 17:01:50 quinn
+ * Revision 1.10 1995-09-29 17:12:24 quinn
+ * Smallish
+ *
+ * Revision 1.9 1995/09/29 17:01:50 quinn
* More Windows work
*
* Revision 1.8 1995/09/27 15:02:59 quinn
* Top level integer en/decoder.
* Returns 1 on success, 0 on error.
*/
-int MDF odr_integer(ODR o, int **p, int opt)
+int odr_integer(ODR o, int **p, int opt)
{
int res, cons = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_mem.c,v $
- * Revision 1.7 1995-09-27 15:02:59 quinn
+ * Revision 1.8 1995-09-29 17:12:24 quinn
+ * Smallish
+ *
+ * Revision 1.7 1995/09/27 15:02:59 quinn
* Modified function heads & prototypes.
*
* Revision 1.6 1995/08/21 09:10:41 quinn
/*
* Return p to the global freelist.
*/
-void MDF odr_release_mem(ODR_MEM p)
+void odr_release_mem(ODR_MEM p)
{
odr_memblock *t;
/*
* Extract the memory control block from o.
*/
-ODR_MEM MDF odr_extract_mem(ODR o)
+ODR_MEM odr_extract_mem(ODR o)
{
ODR_MEM r = o->mem;
return r;
}
-void MDF *odr_malloc(ODR o, int size)
+void *odr_malloc(ODR o, int size)
{
struct odr_memblock *p = o->mem;
char *r;
return r;
}
-int MDF odr_total(ODR o)
+int odr_total(ODR o)
{
return o->mem ? o->mem->total : 0;
}
/* ---------- memory management for data encoding ----------*/
-int MDF odr_grow_block(odr_ecblock *b, int min_bytes)
+int odr_grow_block(odr_ecblock *b, int min_bytes)
{
int togrow;
return 0;
}
-int MDF odr_write(ODR o, unsigned char *buf, int bytes)
+int odr_write(ODR o, unsigned char *buf, int bytes)
{
if (o->ecb.pos + bytes >= o->ecb.size && odr_grow_block(&o->ecb, bytes))
{
return 0;
}
-int MDF odr_seek(ODR o, int whence, int offset)
+int odr_seek(ODR o, int whence, int offset)
{
if (whence == ODR_S_CUR)
offset += o->ecb.pos;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_null.c,v $
- * Revision 1.7 1995-09-27 15:02:59 quinn
+ * Revision 1.8 1995-09-29 17:12:24 quinn
+ * Smallish
+ *
+ * Revision 1.7 1995/09/27 15:02:59 quinn
* Modified function heads & prototypes.
*
* Revision 1.6 1995/05/22 11:32:03 quinn
* Top level null en/decoder.
* Returns 1 on success, 0 on error.
*/
-int MDF odr_null(ODR o, Odr_null **p, int opt)
+int odr_null(ODR o, Odr_null **p, int opt)
{
int res, cons = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_oct.c,v $
- * Revision 1.10 1995-09-27 15:02:59 quinn
+ * Revision 1.11 1995-09-29 17:12:25 quinn
+ * Smallish
+ *
+ * Revision 1.10 1995/09/27 15:02:59 quinn
* Modified function heads & prototypes.
*
* Revision 1.9 1995/05/16 08:50:56 quinn
* Top level octet string en/decoder.
* Returns 1 on success, 0 on error.
*/
-int MDF odr_octetstring(ODR o, Odr_oct **p, int opt)
+int odr_octetstring(ODR o, Odr_oct **p, int opt)
{
int res, cons = 0;
/*
* Friendlier interface to octetstring.
*/
-int MDF odr_cstring(ODR o, char **p, int opt)
+int odr_cstring(ODR o, char **p, int opt)
{
int cons = 0, res;
Odr_oct *t;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_oid.c,v $
- * Revision 1.11 1995-09-27 15:03:00 quinn
+ * Revision 1.12 1995-09-29 17:12:25 quinn
+ * Smallish
+ *
+ * Revision 1.11 1995/09/27 15:03:00 quinn
* Modified function heads & prototypes.
*
* Revision 1.10 1995/05/29 08:11:44 quinn
* Top level oid en/decoder.
* Returns 1 on success, 0 on error.
*/
-int MDF odr_oid(ODR o, Odr_oid **p, int opt)
+int odr_oid(ODR o, Odr_oid **p, int opt)
{
int res, cons = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_seq.c,v $
- * Revision 1.15 1995-09-27 15:03:00 quinn
+ * Revision 1.16 1995-09-29 17:12:26 quinn
+ * Smallish
+ *
+ * Revision 1.15 1995/09/27 15:03:00 quinn
* Modified function heads & prototypes.
*
* Revision 1.14 1995/08/15 11:16:39 quinn
#include <odr.h>
#include <assert.h>
-int MDF odr_sequence_begin(ODR o, void *p, int size)
+int odr_sequence_begin(ODR o, void *p, int size)
{
char **pp = (char**) p;
return 0;
}
-int MDF odr_sequence_end(ODR o)
+int odr_sequence_end(ODR o)
{
return odr_constructed_end(o);
}
return odr_constructed_more(o);
}
-int MDF odr_sequence_of(ODR o, Odr_fun type, void *p, int *num)
+int odr_sequence_of(ODR o, Odr_fun type, void *p, int *num)
{
char ***pp = (char***) p; /* for dereferencing */
char **tmp = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_tag.c,v $
- * Revision 1.4 1995-09-27 15:03:00 quinn
+ * Revision 1.5 1995-09-29 17:12:27 quinn
+ * Smallish
+ *
+ * Revision 1.4 1995/09/27 15:03:00 quinn
* Modified function heads & prototypes.
*
* Revision 1.3 1995/05/16 08:51:00 quinn
#include <odr.h>
-int MDF odr_implicit_settag(ODR o, int class, int tag)
+int odr_implicit_settag(ODR o, int class, int tag)
{
if (o->error)
return 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr_use.c,v $
- * Revision 1.6 1995-09-27 15:03:00 quinn
+ * Revision 1.7 1995-09-29 17:12:27 quinn
+ * Smallish
+ *
+ * Revision 1.6 1995/09/27 15:03:00 quinn
* Modified function heads & prototypes.
*
* Revision 1.5 1995/08/10 08:54:47 quinn
#include <odr.h>
#include <odr_use.h>
-int MDF odr_external(ODR o, Odr_external **p, int opt)
+int odr_external(ODR o, Odr_external **p, int opt)
{
Odr_external *pp;
static Odr_arm arm[] =
odr_sequence_end(o);
}
-int MDF odr_visiblestring(ODR o, char **p, int opt)
+int odr_visiblestring(ODR o, char **p, int opt)
{
return odr_implicit(o, odr_cstring, p, ODR_UNIVERSAL, ODR_VISIBLESTRING,
opt);
* a char may not be sufficient to hold a general string, but we'll deal
* with that once we start looking more closely at UniCode & co.
*/
-int MDF odr_generalstring(ODR o, char **p, int opt)
+int odr_generalstring(ODR o, char **p, int opt)
{
return odr_implicit(o, odr_cstring, p, ODR_UNIVERSAL, ODR_GENERALSTRING,
opt);
}
-int MDF odr_graphicstring(ODR o, char **p, int opt)
+int odr_graphicstring(ODR o, char **p, int opt)
{
return odr_implicit(o, odr_cstring, p, ODR_UNIVERSAL, ODR_GRAPHICSTRING,
opt);
}
-int MDF odr_generalizedtime(ODR o, char **p, int opt)
+int odr_generalizedtime(ODR o, char **p, int opt)
{
return odr_implicit(o, odr_cstring, p, ODR_UNIVERSAL, ODR_GENERALIZEDTIME,
opt);
#include <odr.h>
#include <oid.h>
-char MDF *odr_indent(ODR o)
+char *odr_indent(ODR o)
{
static char buf[512];
int i = o->indent;
return buf;
}
-int MDF odp_more_chunks(ODR o, unsigned char *base, int len)
+int odp_more_chunks(ODR o, unsigned char *base, int len)
{
if (!len)
return 0;
return o->bp - base < len;
}
-Odr_oid MDF *odr_oiddup(ODR odr, Odr_oid *o)
+Odr_oid *odr_oiddup(ODR odr, Odr_oid *o)
{
Odr_oid *r;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: statserv.c,v $
- * Revision 1.27 1995-09-27 15:03:02 quinn
+ * Revision 1.28 1995-09-29 17:12:30 quinn
+ * Smallish
+ *
+ * Revision 1.27 1995/09/27 15:03:02 quinn
* Modified function heads & prototypes.
*
* Revision 1.26 1995/08/29 14:44:51 quinn
signal(SIGCHLD, catchchld);
}
-statserv_options_block MDF *statserv_getcontrol(void)
+statserv_options_block *statserv_getcontrol(void)
{
static statserv_options_block cb;
return &cb;
}
-void MDF statserv_setcontrol(statserv_options_block *block)
+void statserv_setcontrol(statserv_options_block *block)
{
memcpy(&control_block, block, sizeof(*block));
}
-int MDF statserv_main(int argc, char **argv)
+int statserv_main(int argc, char **argv)
{
int ret, listeners = 0;
char *arg;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: dmalloc.c,v $
- * Revision 1.7 1995-09-29 17:01:50 quinn
+ * Revision 1.8 1995-09-29 17:12:33 quinn
+ * Smallish
+ *
+ * Revision 1.7 1995/09/29 17:01:50 quinn
* More Windows work
*
* Revision 1.6 1995/09/27 15:03:02 quinn
static const unsigned char tail[] = {11, 22, 33, 44};
static const unsigned char freed[] = {99, 99, 99, 99};
-void MDF *d_malloc(char *file, int line, int nbytes)
+void *d_malloc(char *file, int line, int nbytes)
{
char *res;
int long len;
return res;
}
-void MDF d_free(char *file, int line, char *ptr)
+void d_free(char *file, int line, char *ptr)
{
long len;
return;
}
-void MDF *d_realloc(char *file, int line, char *ptr, int nbytes)
+void *d_realloc(char *file, int line, char *ptr, int nbytes)
{
long len, nlen = nbytes;
char *p = ptr;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: log.c,v $
- * Revision 1.8 1995-09-27 15:03:02 quinn
+ * Revision 1.9 1995-09-29 17:12:34 quinn
+ * Smallish
+ *
+ * Revision 1.8 1995/09/27 15:03:02 quinn
* Modified function heads & prototypes.
*
* Revision 1.7 1995/06/19 12:40:18 quinn
#endif
-FILE MDF *log_file(void)
+FILE *log_file(void)
{
return l_file;
}
-void MDF log_init(int level, const char *prefix, const char *name)
+void log_init(int level, const char *prefix, const char *name)
{
l_level = level;
if (prefix && *prefix)
setvbuf(l_file, 0, _IONBF, 0);
}
-void MDF logf(int level, const char *fmt, ...)
+void logf(int level, const char *fmt, ...)
{
va_list ap;
char buf[4096], flags[1024];
fflush(l_file);
}
-int MDF log_mask_str (const char *str)
+int log_mask_str (const char *str)
{
const char *p;
int i, level = LOG_DEFAULT_LEVEL;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: marcdisp.c,v $
- * Revision 1.3 1995-09-27 15:03:03 quinn
+ * Revision 1.4 1995-09-29 17:12:34 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:03:03 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:51:12 quinn
return val;
}
-int MDF marc_display (const char *buf, FILE *outf)
+int marc_display (const char *buf, FILE *outf)
{
int entry_p;
int record_length;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: oid.c,v $
- * Revision 1.5 1995-09-29 17:01:51 quinn
+ * Revision 1.6 1995-09-29 17:12:35 quinn
+ * Smallish
+ *
+ * Revision 1.5 1995/09/29 17:01:51 quinn
* More Windows work
*
* Revision 1.4 1995/09/27 15:03:03 quinn
/* OID utilities */
-void MDF oid_oidcpy(int *t, int *s)
+void oid_oidcpy(int *t, int *s)
{
while ((*(t++) = *(s++)) > -1);
}
-void MDF oid_oidcat(int *t, int *s)
+void oid_oidcat(int *t, int *s)
{
while (*t > -1)
t++;
while ((*(t++) = *(s++)) > -1);
}
-int MDF oid_oidcmp(int *o1, int *o2)
+int oid_oidcmp(int *o1, int *o2)
{
while (*o1 == *o2 && *o1 > -1)
{
return -1;
}
-int MDF oid_oidlen(int *o)
+int oid_oidlen(int *o)
{
int len = 0;
return 0;
}
-struct oident MDF *oid_getentbyoid(int *o)
+struct oident *oid_getentbyoid(int *o)
{
enum oid_proto proto;
int prelen;
/*
* To query, fill out proto, class, and value of the ent parameter.
*/
-int MDF *oid_getoidbyent(struct oident *ent)
+int *oid_getoidbyent(struct oident *ent)
{
struct oident *p;
static int ret[OID_SIZE];
return 0;
}
-oid_value MDF oid_getvalbyname(char *name)
+oid_value oid_getvalbyname(char *name)
{
struct oident *p;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: options.c,v $
- * Revision 1.3 1995-09-27 15:03:03 quinn
+ * Revision 1.4 1995-09-29 17:12:35 quinn
+ * Smallish
+ *
+ * Revision 1.3 1995/09/27 15:03:03 quinn
* Modified function heads & prototypes.
*
* Revision 1.2 1995/05/16 08:51:13 quinn
static int arg_no = 1;
static int arg_off = 0;
-int MDF options (const char *desc, char **argv, int argc, char **arg)
+int options (const char *desc, char **argv, int argc, char **arg)
{
int ch, i = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: pquery.c,v $
- * Revision 1.6 1995-09-27 15:03:03 quinn
+ * Revision 1.7 1995-09-29 17:12:36 quinn
+ * Smallish
+ *
+ * Revision 1.6 1995/09/27 15:03:03 quinn
* Modified function heads & prototypes.
*
* Revision 1.5 1995/06/15 12:31:02 quinn
return sz;
}
-Z_RPNQuery MDF *p_query_rpn (ODR o, const char *qbuf)
+Z_RPNQuery *p_query_rpn (ODR o, const char *qbuf)
{
Z_RPNQuery *zq;
int attr_array[1024];
return zq;
}
-Z_AttributesPlusTerm MDF *p_query_scan (ODR o, const char *qbuf)
+Z_AttributesPlusTerm *p_query_scan (ODR o, const char *qbuf)
{
int attr_list[1024];
int num_attr = 0;
return zs;
}
-Z_RPNQuery MDF *ccl_rpn_query (struct ccl_rpn_node *p)
+Z_RPNQuery *ccl_rpn_query (struct ccl_rpn_node *p)
{
Z_RPNQuery *zq;
return zq;
}
-Z_AttributesPlusTerm MDF *ccl_scan_query (struct ccl_rpn_node *p)
+Z_AttributesPlusTerm *ccl_scan_query (struct ccl_rpn_node *p)
{
if (p->kind != CCL_RPN_TERM)
return NULL;