X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=include%2Fyaz%2Fodr.h;h=20f245b8c7f0b89cf6088a9c6fad656da2182607;hp=8d8cc493999368f2a7aa710ea06fccaca0692945;hb=94140e7ec2de8ecd8c6f3715121b0502f469c003;hpb=88d3bedf772316f87e1996f655ccf8d1e2589755 diff --git a/include/yaz/odr.h b/include/yaz/odr.h index 8d8cc49..20f245b 100644 --- a/include/yaz/odr.h +++ b/include/yaz/odr.h @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2010 Index Data. + * Copyright (C) 1995-2013 Index Data. * All rights reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -211,7 +211,7 @@ YAZ_EXPORT Odr_null *odr_nullval(void); #define ODR_MASK_SET(mask, num)\ (((mask)->bits[(num) >> 3] |= 0X80 >> ((num) & 0X07)),\ - (mask)->top < (num) >> 3 ? ((mask)->top = (num) >> 3) : 0) + (void) ((mask)->top < (num) >> 3 ? ((mask)->top = (num) >> 3) : 0)) #define ODR_MASK_CLEAR(mask, num)\ ((mask)->bits[(num) >> 3] &= ~(0X80 >> ((num) & 0X07))) @@ -285,6 +285,7 @@ YAZ_EXPORT Odr_oid *odr_oiddup(ODR odr, const Odr_oid *o); YAZ_EXPORT Odr_oid *odr_oiddup_nmem(NMEM nmem, const Odr_oid *o); YAZ_EXPORT int odr_grow_block(ODR b, int min_bytes); YAZ_EXPORT int odr_write(ODR o, unsigned char *buf, int bytes); +YAZ_EXPORT int odr_write2(ODR o, const char *buf, int bytes); YAZ_EXPORT int odr_seek(ODR o, int whence, int offset); YAZ_EXPORT int odr_dumpBER(FILE *f, const char *buf, int len); YAZ_EXPORT void odr_choice_bias(ODR o, int what); @@ -312,7 +313,7 @@ typedef struct Odr_external union { Odr_any *single_ASN1_type; - Odr_oct *octet_aligned; + Odr_oct *octet_aligned; Odr_bitmask *arbitrary; /* we aren't really equipped for this*/ } u; } Odr_external; @@ -329,7 +330,7 @@ YAZ_EXPORT int odr_generalizedtime(ODR o, char **p, int opt, YAZ_EXPORT int odr_set_charset(ODR o, const char *to, const char *from); YAZ_EXPORT void odr_set_stream(ODR o, void *handle, - void (*stream_write)(ODR o, + void (*stream_write)(ODR o, void *handle, int type, const char *buf, @@ -342,6 +343,8 @@ YAZ_EXPORT const char **odr_get_element_path(ODR o); YAZ_EXPORT Odr_int odr_atoi(const char *s); +YAZ_EXPORT Odr_int odr_strtol(const char *nptr, char **endptr, int base); + YAZ_END_CDECL #include