X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fodr_oct.c;h=3d1094380f14d7bb3a08d9105f2af10a98b9c6a9;hb=9a32992b1041bf622fdc4825262f5f7110494cce;hp=27cd9b0e64b16dfe74024fbe5f5b8a8a81cb55bb;hpb=0a7d4354288c747883261e9f430a7e0069225a5b;p=yaz-moved-to-github.git diff --git a/src/odr_oct.c b/src/odr_oct.c index 27cd9b0..3d10943 100644 --- a/src/odr_oct.c +++ b/src/odr_oct.c @@ -1,9 +1,12 @@ /* - * Copyright (c) 1995-2003, Index Data + * Copyright (c) 1995-2004, Index Data * See the file LICENSE for details. - * Sebastian Hammer, Adam Dickmeiss * - * $Id: odr_oct.c,v 1.2 2004-08-11 12:15:38 adam Exp $ + * $Id: odr_oct.c,v 1.6 2004-10-15 00:19:00 adam Exp $ + */ +/** + * \file odr_oct.c + * \brief Implements ODR OCTET codec */ #if HAVE_CONFIG_H #include @@ -33,18 +36,11 @@ int odr_octetstring(ODR o, Odr_oct **p, int opt, const char *name) return odr_missing(o, opt, name); if (o->direction == ODR_PRINT) { - int i; odr_prname(o, name); - odr_printf(o, "OCTETSTRING(len=%d)", (*p)->len); - for (i = 0; i<(*p)->len; i++) - { - if (i < 5 || i > ((*p)->len - 4)) - { - odr_printf(o, " %02X", (*p)->buf[i]); - } - else if (i == 5) - odr_printf(o, " .. "); - } + odr_printf(o, "OCTETSTRING(len=%d) ", (*p)->len); + + o->op->stream_write(o, o->print, ODR_OCTETSTRING, + (char*) (*p)->buf, (*p)->len); odr_printf(o, "\n"); return 1; }