/* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2013 Index Data
+ * Copyright (C) Index Data
* See the file LICENSE for details.
*/
/**
#include <yaz/proto.h>
#include <yaz/oid_db.h>
+#include "odr-priv.h"
#define PRT_EXT_DEBUG 0
#if PRT_EXT_DEBUG
if (zclass == ODR_CONTEXT && tag == 1 && cons == 0)
{
/* we have an OCTET STRING. decode BER contents from it */
- const unsigned char *o_bp;
- unsigned char *o_buf;
+ const char *o_bp;
+ char *o_buf;
int o_size;
char *voidp = 0;
Odr_oct *oct;
return 0;
/* Save our decoding ODR members */
- o_bp = o->bp;
- o_buf = o->buf;
- o_size = o->size;
+ o_bp = o->op->bp;
+ o_buf = o->op->buf;
+ o_size = o->op->size;
/* Set up the OCTET STRING buffer */
- o->bp = o->buf = oct->buf;
- o->size = oct->len;
+ o->op->bp = o->op->buf = oct->buf;
+ o->op->size = oct->len;
/* and decode that */
r = (*type->fun)(o, &voidp, 0, 0);
(*p)->u.single_ASN1_type = (Odr_any*) voidp;
/* Restore our decoding ODR member */
- o->bp = o_bp;
- o->buf = o_buf;
- o->size = o_size;
+ o->op->bp = o_bp;
+ o->op->buf = o_buf;
+ o->op->size = o_size;
return r && odr_sequence_end(o);
}
thisext->which = Z_External_sutrs;
thisext->u.sutrs = sutrs;
- sutrs->buf = (unsigned char *)nmem_malloc(nmem, len);
- sutrs->len = sutrs->size = len;
+ sutrs->buf = (char *)nmem_malloc(nmem, len);
+ sutrs->len = len;
memcpy(sutrs->buf, buf, len);
}
else
if (!(thisext->u.octet_aligned = (Odr_oct *)
nmem_malloc(nmem, sizeof(Odr_oct))))
return 0;
- if (!(thisext->u.octet_aligned->buf = (unsigned char *)
+ if (!(thisext->u.octet_aligned->buf = (char *)
nmem_malloc(nmem, len)))
return 0;
memcpy(thisext->u.octet_aligned->buf, buf, len);
- thisext->u.octet_aligned->len = thisext->u.octet_aligned->size = len;
+ thisext->u.octet_aligned->len = len;
}
return thisext;
}
thisext->u.single_ASN1_type = (Odr_any *) odr_malloc(o, sizeof(Odr_any));
if (!thisext->u.single_ASN1_type)
return 0;
- thisext->u.single_ASN1_type->buf = (unsigned char *) odr_malloc(o, len);
+ thisext->u.single_ASN1_type->buf = (char *) odr_malloc(o, len);
if (!thisext->u.single_ASN1_type->buf)
return 0;
memcpy(thisext->u.single_ASN1_type->buf, buf, len);
- thisext->u.single_ASN1_type->len = thisext->u.single_ASN1_type->size = len;
-
+ thisext->u.single_ASN1_type->len = len;
return thisext;
}