X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=util%2Foid.c;h=9724364cdffea8e7d4341d555753fce0a540fa7e;hb=58b2fdadbb7b8a8845ff67501520fe1660dedeee;hp=284533b72cd9a560d3726876b0dec8335d20afdd;hpb=8e5a0692fb8d5d4d852eeb9782848d87ad25bfde;p=yaz-moved-to-github.git diff --git a/util/oid.c b/util/oid.c index 284533b..9724364 100644 --- a/util/oid.c +++ b/util/oid.c @@ -2,7 +2,7 @@ * Copyright (c) 1995-2002, Index Data * See the file LICENSE for details. * - * $Id: oid.c,v 1.51 2002-01-26 20:50:59 adam Exp $ + * $Id: oid.c,v 1.57 2002-08-30 15:38:26 mike Exp $ */ /* @@ -45,7 +45,7 @@ static oident standard_oids[] = "BER" }, {PROTO_GENERAL, CLASS_TRANSYN, VAL_ISO2709, {1,0,2709,1,1,-1}, "ISO2709"}, - {PROTO_GENERAL, CLASS_GENERAL, VAL_ISO_ILL_1, {1,2,10161,2,1,-1}, + {PROTO_GENERAL, CLASS_GENERAL, VAL_ISO_ILL_1, {1,0,10161,2,1,-1}, "ISOILL-1"}, /* Z39.50v3 definitions */ {PROTO_Z3950, CLASS_ABSYN, VAL_APDU, {2,1,-1}, @@ -87,9 +87,17 @@ static oident standard_oids[] = "Dan-1"}, {PROTO_Z3950, CLASS_ATTSET, VAL_HOLDINGS, {3,16,-1}, "Holdings"}, - - {PROTO_Z3950, CLASS_ATTSET, VAL_THESAURUS, {3,1000,81,1,-1}, + {PROTO_Z3950, CLASS_ATTSET, VAL_USMARC, {3,17,-1}, + "MARC"}, + {PROTO_Z3950, CLASS_ATTSET, VAL_BIB2, {3,18,-1}, + "Bib-2"}, + {PROTO_Z3950, CLASS_ATTSET, VAL_ZEEREX, {3,19,-1}, + "ZeeRex"}, + + {PROTO_Z3950, CLASS_ATTSET, VAL_THESAURUS, {3,1000,81,1,-1}, "Thesaurus-attset"}, + {PROTO_Z3950, CLASS_ATTSET, VAL_IDXPATH, {3,1000,81,2,-1}, + "IDXPATH"}, {PROTO_Z3950, CLASS_DIAGSET, VAL_BIB1, {4,1,-1}, "Bib-1"}, {PROTO_Z3950, CLASS_DIAGSET, VAL_DIAG1, {4,2,-1}, @@ -283,6 +291,16 @@ static oident standard_oids[] = "thesaurus-tagset"}, {PROTO_Z3950, CLASS_TAGSET, VAL_EXPLAIN, {14,1000,81,2,-1}, "Explain-tagset"}, + {PROTO_Z3950, CLASS_NEGOT, VAL_CHARNEG3, {15,3,-1}, + "CharSetandLanguageNegotiation-3"}, + {PROTO_GENERAL, CLASS_GENERAL, VAL_UCS2, {1,0,10646,1,0,2,-1}, + "UCS-2"}, + {PROTO_GENERAL, CLASS_GENERAL, VAL_UCS4, {1,0,10646,1,0,4,-1}, + "UCS-4"}, + {PROTO_GENERAL, CLASS_GENERAL, VAL_UTF16, {1,0,10646,1,0,5,-1}, + "UTF-16"}, + {PROTO_GENERAL, CLASS_GENERAL, VAL_UTF8, {1,0,10646,1,0,8,-1}, + "UTF-8"}, {PROTO_NOP, CLASS_NOP, VAL_NOP, {-1}, 0 } }; @@ -462,7 +480,7 @@ struct oident *oid_addent (int *oid, enum oid_proto proto, int i; sprintf (desc_str, "%d", *oid); - for (i = 1; oid[i] >= 0; i++) + for (i = 1; i < 12 && oid[i] >= 0; i++) sprintf (desc_str+strlen(desc_str), ".%d", oid[i]); desc = desc_str; } @@ -538,3 +556,12 @@ void oid_setprivateoids(oident *list) { oid_transfer (list); } + +void oid_trav (void (*func)(struct oident *oidinfo, void *vp), void *vp) +{ + struct oident_list *ol; + + oid_init (); + for (ol = oident_table; ol; ol = ol->next) + (*func)(&ol->oident, vp); +}