X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Foid_util.c;h=0975d3a49a2cdd6440730027c85fc7a829592263;hb=3489c6eaceb7ab7f4e8298a2f898dda0c3d0a09c;hp=752315871ff61ad214e63361f82e4fa34d0a238c;hpb=be821514c869d68186361b5aab6bbfd1aa60e087;p=yaz-moved-to-github.git diff --git a/src/oid_util.c b/src/oid_util.c index 7523158..0975d3a 100644 --- a/src/oid_util.c +++ b/src/oid_util.c @@ -1,8 +1,6 @@ -/* - * Copyright (C) 1995-2007, Index Data ApS +/* This file is part of the YAZ toolkit. + * Copyright (C) 1995-2008 Index Data * See the file LICENSE for details. - * - * $Id: oid_util.c,v 1.2 2007-04-12 20:47:28 adam Exp $ */ /** @@ -21,19 +19,19 @@ #include #include -void oid_oidcpy(int *t, const int *s) +void oid_oidcpy(Odr_oid *t, const Odr_oid *s) { while ((*(t++) = *(s++)) > -1); } -void oid_oidcat(int *t, const int *s) +void oid_oidcat(Odr_oid *t, const Odr_oid *s) { while (*t > -1) t++; while ((*(t++) = *(s++)) > -1); } -int oid_oidcmp(const int *o1, const int *o2) +int oid_oidcmp(const Odr_oid *o1, const Odr_oid *o2) { while (*o1 == *o2 && *o1 > -1) { @@ -48,7 +46,7 @@ int oid_oidcmp(const int *o1, const int *o2) return -1; } -int oid_oidlen(const int *o) +int oid_oidlen(const Odr_oid *o) { int len = 0; @@ -58,7 +56,7 @@ int oid_oidlen(const int *o) } -char *oid_oid_to_dotstring(const int *oid, char *oidbuf) +char *oid_oid_to_dotstring(const Odr_oid *oid, char *oidbuf) { char tmpbuf[20]; int i; @@ -74,7 +72,7 @@ char *oid_oid_to_dotstring(const int *oid, char *oidbuf) return oidbuf; } -int oid_dotstring_to_oid(const char *name, int *oid) +int oid_dotstring_to_oid(const char *name, Odr_oid *oid) { int i = 0; int val = 0; @@ -90,6 +88,8 @@ int oid_dotstring_to_oid(const char *name, int *oid) name++; } } + if (i == 0) + return -1; oid[i] = val; oid[i+1] = -1; return 0;