Added OID data type.
authorSebastian Hammer <quinn@indexdata.com>
Mon, 3 Jun 1996 09:46:42 +0000 (09:46 +0000)
committerSebastian Hammer <quinn@indexdata.com>
Mon, 3 Jun 1996 09:46:42 +0000 (09:46 +0000)
retrieval/d1_grs.c

index 1077c52..f990323 100644 (file)
@@ -4,7 +4,10 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: d1_grs.c,v $
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: d1_grs.c,v $
- * Revision 1.4  1996-05-01 12:45:30  quinn
+ * Revision 1.5  1996-06-03 09:46:42  quinn
+ * Added OID data type.
+ *
+ * Revision 1.4  1996/05/01  12:45:30  quinn
  * Support use of local tag names in abs file.
  *
  * Revision 1.3  1995/11/13  09:27:35  quinn
  * Support use of local tag names in abs file.
  *
  * Revision 1.3  1995/11/13  09:27:35  quinn
@@ -142,6 +145,8 @@ static Z_ElementData *nodetoelementdata(data1_node *n, int select, int leaf,
     }
     else if (n->which == DATA1N_data && (leaf || n->parent->num_children == 1))
     {
     }
     else if (n->which == DATA1N_data && (leaf || n->parent->num_children == 1))
     {
+       char str[512];
+
        switch (n->u.data.what)
        {
            case DATA1I_num:
        switch (n->u.data.what)
        {
            case DATA1I_num:
@@ -155,6 +160,12 @@ static Z_ElementData *nodetoelementdata(data1_node *n, int select, int leaf,
                memcpy(res->u.string, n->u.data.data, n->u.data.len);
                res->u.string[n->u.data.len] = '\0';
                break;
                memcpy(res->u.string, n->u.data.data, n->u.data.len);
                res->u.string[n->u.data.len] = '\0';
                break;
+           case DATA1I_oid:
+               res->which = Z_ElementData_oid;
+               strncpy(str, n->u.data.data, n->u.data.len);
+               str[n->u.data.len] = '\0';
+               res->u.oid = odr_getoidbystr(o, str);
+               break;
            default:
                logf(LOG_WARN, "Can't handle datatype.");
                return 0;
            default:
                logf(LOG_WARN, "Can't handle datatype.");
                return 0;