X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=odr%2Fodr_oct.c;h=c0458dd7236098812433d630602dc09ad55f944d;hp=b1c400d7420b58519d9186e5f3ac02e48658bc2e;hb=ec1f815d5348cd21e393f76bc212c910c34bbc45;hpb=165b231b0f6eaa0b2b5fbf438f5ddede630b10e3 diff --git a/odr/odr_oct.c b/odr/odr_oct.c index b1c400d..c0458dd 100644 --- a/odr/odr_oct.c +++ b/odr/odr_oct.c @@ -1,9 +1,9 @@ /* - * Copyright (c) 1995-2002, Index Data + * Copyright (c) 1995-2003, Index Data * See the file LICENSE for details. * Sebastian Hammer, Adam Dickmeiss * - * $Id: odr_oct.c,v 1.19 2002-09-24 08:05:41 adam Exp $ + * $Id: odr_oct.c,v 1.22 2003-05-20 19:55:30 adam Exp $ */ #if HAVE_CONFIG_H #include @@ -27,10 +27,10 @@ int odr_octetstring(ODR o, Odr_oct **p, int opt, const char *name) o->t_class = ODR_UNIVERSAL; o->t_tag = ODR_OCTETSTRING; } - if ((res = ber_tag(o, p, o->t_class, o->t_tag, &cons, opt)) < 0) + if ((res = ber_tag(o, p, o->t_class, o->t_tag, &cons, opt, name)) < 0) return 0; if (!res) - return opt; + return odr_missing(o, opt, name); if (o->direction == ODR_PRINT) { int i; @@ -57,7 +57,7 @@ int odr_octetstring(ODR o, Odr_oct **p, int opt, const char *name) } if (ber_octetstring(o, *p, cons)) return 1; - o->error = OOTHER; + odr_seterror(o, OOTHER, 43); return 0; } @@ -76,10 +76,10 @@ int odr_cstring(ODR o, char **p, int opt, const char *name) o->t_class = ODR_UNIVERSAL; o->t_tag = ODR_OCTETSTRING; } - if ((res = ber_tag(o, p, o->t_class, o->t_tag, &cons, opt)) < 0) + if ((res = ber_tag(o, p, o->t_class, o->t_tag, &cons, opt, name)) < 0) return 0; if (!res) - return opt; + return odr_missing(o, opt, name); if (o->direction == ODR_PRINT) { odr_prname(o, name); @@ -123,10 +123,10 @@ int odr_iconv_string(ODR o, char **p, int opt, const char *name) o->t_class = ODR_UNIVERSAL; o->t_tag = ODR_OCTETSTRING; } - if ((res = ber_tag(o, p, o->t_class, o->t_tag, &cons, opt)) < 0) + if ((res = ber_tag(o, p, o->t_class, o->t_tag, &cons, opt, name)) < 0) return 0; if (!res) - return opt; + return odr_missing(o, opt, name); if (o->direction == ODR_PRINT) { odr_prname(o, name); @@ -152,7 +152,7 @@ int odr_iconv_string(ODR o, char **p, int opt, const char *name) &outbuf, &outleft); if (ret == (size_t)(-1)) { - o->error = ODATA; + odr_seterror(o, ODATA, 44); return 0; } t->size = t->len = outbuf - (char*) t->buf; @@ -189,7 +189,7 @@ int odr_iconv_string(ODR o, char **p, int opt, const char *name) &outbuf, &outleft); if (ret == (size_t)(-1)) { - o->error = ODATA; + odr_seterror(o, ODATA, 45); return 0; } inleft = outbuf - (char*) *p;