Better ODR diagnostics for missing elements which includes additional
[yaz-moved-to-github.git] / odr / odr_util.c
index 3f450ca..26a672c 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (c) 1995-2003, Index Data
  * See the file LICENSE for details.
  *
- * $Id: odr_util.c,v 1.22 2003-01-06 08:20:28 adam Exp $
+ * $Id: odr_util.c,v 1.23 2003-05-20 19:55:30 adam Exp $
  */
 #if HAVE_CONFIG_H
 #include <config.h>
@@ -81,4 +81,15 @@ Odr_oid *odr_getoidbystr(ODR o, const char *str)
     return odr_getoidbystr_nmem (o->mem, str);
 }
 
-
+int odr_missing(ODR o, int opt, const char *name)
+{
+    if (o->error)
+        return 0;
+    if (!opt)
+    {
+        printf ("odr_missing set error : %s\n", name);
+        odr_seterror(o, OREQUIRED, 55);
+        odr_setaddinfo(o, name);
+    }
+    return opt;
+}