/*
- * Copyright (C) 1995-2005, Index Data ApS
+ * Copyright (C) 1995-2006, Index Data ApS
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation, in whole or in part, for any purpose, is hereby granted,
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*
- * $Id: odr.h,v 1.21 2005-06-25 15:46:03 adam Exp $
+ * $Id: odr.h,v 1.23 2006-08-24 13:11:27 adam Exp $
*/
/**
YAZ_EXPORT char *odr_strdup(ODR o, const char *str);
YAZ_EXPORT char *odr_strdupn(ODR o, const char *str, size_t n);
YAZ_EXPORT int *odr_intdup(ODR o, int v);
+YAZ_EXPORT Odr_oct *odr_create_Odr_oct(ODR o, const unsigned char *buf,
+ int sz);
YAZ_EXPORT NMEM odr_extract_mem(ODR o);
YAZ_EXPORT Odr_null *odr_nullval(void);
#define odr_release_mem(m) nmem_destroy(m)
YAZ_EXPORT int odr_set_of(ODR o, Odr_fun type, void *p, int *num,
const char *name);
YAZ_EXPORT int odr_any(ODR o, Odr_any **p, int opt, const char *name);
+
YAZ_EXPORT int ber_any(ODR o, Odr_any **p);
+/** \brief determine whether a buffer is a complete BER buffer
+ \param buf BER buffer
+ \param len length of buffer
+ \retval 0 package is incomplete
+ \retval >0 package is complete and length is return value
+*/
YAZ_EXPORT int completeBER(const unsigned char *buf, int len);
+
YAZ_EXPORT void odr_begin(ODR o);
YAZ_EXPORT void odr_end(ODR o);
YAZ_EXPORT Odr_oid *odr_oiddup(ODR odr, Odr_oid *o);