* Sebastian Hammer, Adam Dickmeiss
*
* $Log: odr.c,v $
- * Revision 1.1 1995-03-07 09:23:15 quinn
+ * Revision 1.4 1995-03-07 13:16:13 quinn
+ * Fixed bug in odr_reset
+ *
+ * Revision 1.3 1995/03/07 10:21:31 quinn
+ * odr_errno-->odr_error
+ *
+ * Revision 1.2 1995/03/07 10:19:05 quinn
+ * Addded some method functions to the ODR type.
+ *
+ * Revision 1.1 1995/03/07 09:23:15 quinn
* Installing top-level API and documentation.
*
*
fprintf(stderr, "%s: %s\n", message, odr_errlist[o->error]);
}
+int odr_geterror(ODR o)
+{
+ return o->error;
+}
+
void odr_setprint(ODR o, FILE *file)
{
o->print = file;
void odr_reset(ODR o)
{
o->error = ONONE;
- o->bp = 0;
+ o->bp = o->buf;
o->left = o->buflen;
o->t_class = -1;
o->t_tag = -1;
{
free(o);
}
+
+void odr_setbuf(ODR o, char *buf, int len)
+{
+ o->buf = o->bp = (unsigned char *) buf;
+ o->buflen = o->left = len;
+}
+
+char *odr_getbuf(ODR o, int *len)
+{
+ *len = o->bp - o->buf;
+ return (char *) o->buf;
+}