added const qualifier
git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@801 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/skeletons/BMPString.c b/skeletons/BMPString.c
index 10469ed..42b84f6 100644
--- a/skeletons/BMPString.c
+++ b/skeletons/BMPString.c
@@ -79,7 +79,7 @@
asn_dec_rval_t
BMPString_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr,
- const char *opt_mname, void *buf_ptr, size_t size) {
+ const char *opt_mname, const void *buf_ptr, size_t size) {
asn_dec_rval_t rc;
rc = OCTET_STRING_decode_xer_utf8(opt_codec_ctx, td, sptr, opt_mname,
diff --git a/skeletons/BOOLEAN.c b/skeletons/BOOLEAN.c
index 04e6560..360b664 100644
--- a/skeletons/BOOLEAN.c
+++ b/skeletons/BOOLEAN.c
@@ -37,7 +37,7 @@
asn_dec_rval_t
BOOLEAN_decode_ber(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td,
- void **bool_value, void *buf_ptr, size_t size,
+ void **bool_value, const void *buf_ptr, size_t size,
int tag_mode) {
BOOLEAN_t *st = (BOOLEAN_t *)*bool_value;
asn_dec_rval_t rval;
@@ -66,7 +66,7 @@
ASN_DEBUG("Boolean length is %d bytes", (int)length);
- buf_ptr = ((char *)buf_ptr) + rval.consumed;
+ buf_ptr = ((const char *)buf_ptr) + rval.consumed;
size -= rval.consumed;
if(length > (ber_tlv_len_t)size) {
rval.code = RC_WMORE;
@@ -84,7 +84,7 @@
* value is already TRUE.
* BOOLEAN is not supposed to contain meaningful data anyway.
*/
- *st |= ((uint8_t *)buf_ptr)[lidx];
+ *st |= ((const uint8_t *)buf_ptr)[lidx];
}
rval.code = RC_OK;
@@ -169,7 +169,7 @@
asn_dec_rval_t
BOOLEAN_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
return xer_decode_primitive(opt_codec_ctx, td,
sptr, sizeof(BOOLEAN_t), opt_mname, buf_ptr, size,
diff --git a/skeletons/INTEGER.c b/skeletons/INTEGER.c
index 164bf3f..2579153 100644
--- a/skeletons/INTEGER.c
+++ b/skeletons/INTEGER.c
@@ -409,7 +409,7 @@
asn_dec_rval_t
INTEGER_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
return xer_decode_primitive(opt_codec_ctx, td,
sptr, sizeof(INTEGER_t), opt_mname,
diff --git a/skeletons/NULL.c b/skeletons/NULL.c
index d5d98d9..5b0351e 100644
--- a/skeletons/NULL.c
+++ b/skeletons/NULL.c
@@ -81,7 +81,7 @@
asn_dec_rval_t
NULL_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
return xer_decode_primitive(opt_codec_ctx, td,
sptr, sizeof(NULL_t), opt_mname, buf_ptr, size,
diff --git a/skeletons/NativeInteger.c b/skeletons/NativeInteger.c
index 102372c..acdbff6 100644
--- a/skeletons/NativeInteger.c
+++ b/skeletons/NativeInteger.c
@@ -44,7 +44,7 @@
asn_dec_rval_t
NativeInteger_decode_ber(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td,
- void **nint_ptr, void *buf_ptr, size_t size, int tag_mode) {
+ void **nint_ptr, const void *buf_ptr, size_t size, int tag_mode) {
long *native = (long *)*nint_ptr;
asn_dec_rval_t rval;
ber_tlv_len_t length;
@@ -77,7 +77,7 @@
/*
* Make sure we have this length.
*/
- buf_ptr = ((char *)buf_ptr) + rval.consumed;
+ buf_ptr = ((const char *)buf_ptr) + rval.consumed;
size -= rval.consumed;
if(length > (ber_tlv_len_t)size) {
rval.code = RC_WMORE;
@@ -93,7 +93,7 @@
{
INTEGER_t tmp;
long l;
- tmp.buf = (uint8_t *)buf_ptr;
+ (const uint8_t *)tmp.buf = (const uint8_t *)buf_ptr;
tmp.size = length;
if(asn_INTEGER2long(&tmp, &l)) {
@@ -169,7 +169,7 @@
asn_dec_rval_t
NativeInteger_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
asn_dec_rval_t rval;
INTEGER_t *st = 0;
void *st_ptr = (void *)&st;
diff --git a/skeletons/NativeReal.c b/skeletons/NativeReal.c
index 810d510..5bc95b0 100644
--- a/skeletons/NativeReal.c
+++ b/skeletons/NativeReal.c
@@ -45,7 +45,7 @@
asn_dec_rval_t
NativeReal_decode_ber(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td,
- void **dbl_ptr, void *buf_ptr, size_t size, int tag_mode) {
+ void **dbl_ptr, const void *buf_ptr, size_t size, int tag_mode) {
double *Dbl = (double *)*dbl_ptr;
asn_dec_rval_t rval;
ber_tlv_len_t length;
@@ -79,7 +79,7 @@
/*
* Make sure we have this length.
*/
- buf_ptr = ((char *)buf_ptr) + rval.consumed;
+ buf_ptr = ((const char *)buf_ptr) + rval.consumed;
size -= rval.consumed;
if(length > (ber_tlv_len_t)size) {
rval.code = RC_WMORE;
@@ -95,7 +95,7 @@
{
REAL_t tmp;
double d;
- tmp.buf = (uint8_t *)buf_ptr;
+ (const uint8_t *)tmp.buf = (const uint8_t *)buf_ptr;
tmp.size = length;
if(asn_REAL2double(&tmp, &d)) {
@@ -158,7 +158,7 @@
asn_dec_rval_t
NativeReal_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
asn_dec_rval_t rval;
REAL_t *st = 0;
double *Dbl = (double *)*sptr;
diff --git a/skeletons/OBJECT_IDENTIFIER.c b/skeletons/OBJECT_IDENTIFIER.c
index 798929f..f899ab0 100644
--- a/skeletons/OBJECT_IDENTIFIER.c
+++ b/skeletons/OBJECT_IDENTIFIER.c
@@ -310,7 +310,7 @@
asn_dec_rval_t
OBJECT_IDENTIFIER_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
return xer_decode_primitive(opt_codec_ctx, td,
sptr, sizeof(OBJECT_IDENTIFIER_t), opt_mname,
diff --git a/skeletons/OCTET_STRING.c b/skeletons/OCTET_STRING.c
index 26df4bc..207b528 100644
--- a/skeletons/OCTET_STRING.c
+++ b/skeletons/OCTET_STRING.c
@@ -54,7 +54,7 @@
#undef ADVANCE
#define ADVANCE(num_bytes) do { \
size_t num = (num_bytes); \
- buf_ptr = ((char *)buf_ptr) + num; \
+ buf_ptr = ((const char *)buf_ptr) + num;\
size -= num; \
consumed_myself += num; \
} while(0)
@@ -164,7 +164,7 @@
asn_dec_rval_t
OCTET_STRING_decode_ber(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td,
- void **os_structure, void *buf_ptr, size_t size, int tag_mode) {
+ void **os_structure, const void *buf_ptr, size_t size, int tag_mode) {
asn_OCTET_STRING_specifics_t *specs = td->specifics
? (asn_OCTET_STRING_specifics_t *)td->specifics
: &asn_DEF_OCTET_STRING_specs;
@@ -285,7 +285,7 @@
tlv_constr = BER_TLV_CONSTRUCTED(buf_ptr);
ll = ber_fetch_length(tlv_constr,
- (char *)buf_ptr + tl, Left - tl, &tlv_len);
+ (const char *)buf_ptr + tl,Left - tl,&tlv_len);
ASN_DEBUG("Got tag=%s, tc=%d, left=%ld, tl=%ld, len=%ld, ll=%ld",
ber_tlv_tag_string(tlv_tag), tlv_constr,
(long)Left, (long)tl, (long)tlv_len, (long)ll);
@@ -295,8 +295,8 @@
}
if(sel && sel->want_nulls
- && ((uint8_t *)buf_ptr)[0] == 0
- && ((uint8_t *)buf_ptr)[1] == 0)
+ && ((const uint8_t *)buf_ptr)[0] == 0
+ && ((const uint8_t *)buf_ptr)[1] == 0)
{
ASN_DEBUG("Eat EOC; wn=%d--", sel->want_nulls);
@@ -426,8 +426,8 @@
if(type_variant == _TT_BIT_STRING
&& sel->bits_chopped == 0) {
/* Put the unused-bits-octet away */
- st->bits_unused = *(uint8_t *)buf_ptr;
- APPEND(((char *)buf_ptr+1), (len - 1));
+ st->bits_unused = *(const uint8_t *)buf_ptr;
+ APPEND(((const char *)buf_ptr+1), (len - 1));
sel->bits_chopped = 1;
} else {
APPEND(buf_ptr, len);
@@ -457,7 +457,7 @@
if(size < (size_t)ctx->left) {
if(!size) RETURN(RC_WMORE);
if(type_variant == _TT_BIT_STRING && ctx->step == 0) {
- st->bits_unused = *(uint8_t *)buf_ptr;
+ st->bits_unused = *(const uint8_t *)buf_ptr;
ctx->left--;
ADVANCE(1);
}
@@ -469,7 +469,7 @@
} else {
if(type_variant == _TT_BIT_STRING
&& ctx->step == 0 && ctx->left) {
- st->bits_unused = *(uint8_t *)buf_ptr;
+ st->bits_unused = *(const uint8_t *)buf_ptr;
ctx->left--;
ADVANCE(1);
}
@@ -1096,7 +1096,7 @@
static asn_dec_rval_t
OCTET_STRING__decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr,
- const char *opt_mname, void *buf_ptr, size_t size,
+ const char *opt_mname, const void *buf_ptr, size_t size,
int (*opt_unexpected_tag_decoder)
(void *struct_ptr, const void *chunk_buf, size_t chunk_size),
ssize_t (*body_receiver)
@@ -1156,7 +1156,7 @@
asn_dec_rval_t
OCTET_STRING_decode_xer_hex(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr,
- const char *opt_mname, void *buf_ptr, size_t size) {
+ const char *opt_mname, const void *buf_ptr, size_t size) {
return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname,
buf_ptr, size, 0, OCTET_STRING__convert_hexadecimal);
}
@@ -1167,7 +1167,7 @@
asn_dec_rval_t
OCTET_STRING_decode_xer_binary(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr,
- const char *opt_mname, void *buf_ptr, size_t size) {
+ const char *opt_mname, const void *buf_ptr, size_t size) {
return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname,
buf_ptr, size, 0, OCTET_STRING__convert_binary);
}
@@ -1178,7 +1178,7 @@
asn_dec_rval_t
OCTET_STRING_decode_xer_utf8(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr,
- const char *opt_mname, void *buf_ptr, size_t size) {
+ const char *opt_mname, const void *buf_ptr, size_t size) {
return OCTET_STRING__decode_xer(opt_codec_ctx, td, sptr, opt_mname,
buf_ptr, size,
OCTET_STRING__handle_control_chars,
diff --git a/skeletons/REAL.c b/skeletons/REAL.c
index 4b73f4b..6a5e7cd 100644
--- a/skeletons/REAL.c
+++ b/skeletons/REAL.c
@@ -325,7 +325,7 @@
asn_dec_rval_t
REAL_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
return xer_decode_primitive(opt_codec_ctx, td,
sptr, sizeof(REAL_t), opt_mname,
diff --git a/skeletons/RELATIVE-OID.c b/skeletons/RELATIVE-OID.c
index 97b69f6..b0be622 100644
--- a/skeletons/RELATIVE-OID.c
+++ b/skeletons/RELATIVE-OID.c
@@ -134,7 +134,7 @@
asn_dec_rval_t
RELATIVE_OID_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
return xer_decode_primitive(opt_codec_ctx, td,
sptr, sizeof(RELATIVE_OID_t), opt_mname,
diff --git a/skeletons/UniversalString.c b/skeletons/UniversalString.c
index 2918d07..27f1cda 100644
--- a/skeletons/UniversalString.c
+++ b/skeletons/UniversalString.c
@@ -98,7 +98,7 @@
asn_dec_rval_t
UniversalString_decode_xer(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, void **sptr,
- const char *opt_mname, void *buf_ptr, size_t size) {
+ const char *opt_mname, const void *buf_ptr, size_t size) {
asn_dec_rval_t rc;
rc = OCTET_STRING_decode_xer_utf8(opt_codec_ctx, td, sptr, opt_mname,
diff --git a/skeletons/asn_codecs_prim.c b/skeletons/asn_codecs_prim.c
index a2aeeee..afadb72 100644
--- a/skeletons/asn_codecs_prim.c
+++ b/skeletons/asn_codecs_prim.c
@@ -13,7 +13,7 @@
asn_dec_rval_t
ber_decode_primitive(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td,
- void **sptr, void *buf_ptr, size_t size, int tag_mode) {
+ void **sptr, const void *buf_ptr, size_t size, int tag_mode) {
ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr;
asn_dec_rval_t rval;
ber_tlv_len_t length;
@@ -47,7 +47,7 @@
/*
* Make sure we have this length.
*/
- buf_ptr = ((char *)buf_ptr) + rval.consumed;
+ buf_ptr = ((const char *)buf_ptr) + rval.consumed;
size -= rval.consumed;
if(length > (ber_tlv_len_t)size) {
rval.code = RC_WMORE;
@@ -238,7 +238,7 @@
void **sptr,
size_t struct_size,
const char *opt_mname,
- void *buf_ptr, size_t size,
+ const void *buf_ptr, size_t size,
xer_primitive_body_decoder_f *prim_body_decoder
) {
const char *xml_tag = opt_mname ? opt_mname : td->xml_tag;
diff --git a/skeletons/asn_codecs_prim.h b/skeletons/asn_codecs_prim.h
index ceadf51..b928b1a 100644
--- a/skeletons/asn_codecs_prim.h
+++ b/skeletons/asn_codecs_prim.h
@@ -38,7 +38,7 @@
asn_TYPE_descriptor_t *type_descriptor,
void **struct_ptr, size_t struct_size,
const char *opt_mname,
- void *buf_ptr, size_t size,
+ const void *buf_ptr, size_t size,
xer_primitive_body_decoder_f *prim_body_decoder
);
diff --git a/skeletons/ber_decoder.c b/skeletons/ber_decoder.c
index f0a3551..dc097fc 100644
--- a/skeletons/ber_decoder.c
+++ b/skeletons/ber_decoder.c
@@ -8,7 +8,7 @@
#undef ADVANCE
#define ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- ptr = ((char *)ptr) + num; \
+ ptr = ((const char *)ptr) + num; \
size -= num; \
consumed_myself += num; \
} while(0)
@@ -30,7 +30,7 @@
asn_dec_rval_t
ber_decode(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *type_descriptor,
- void **struct_ptr, void *ptr, size_t size) {
+ void **struct_ptr, const void *ptr, size_t size) {
asn_codec_ctx_t s_codec_ctx;
/*
@@ -58,7 +58,7 @@
asn_dec_rval_t
ber_check_tags(asn_codec_ctx_t *opt_codec_ctx,
asn_TYPE_descriptor_t *td, asn_struct_ctx_t *opt_ctx,
- void *ptr, size_t size, int tag_mode, int last_tag_form,
+ const void *ptr, size_t size, int tag_mode, int last_tag_form,
ber_tlv_len_t *last_length, int *opt_tlv_form) {
ssize_t consumed_myself = 0;
ssize_t tag_len;
@@ -128,7 +128,7 @@
}
tlv_constr = BER_TLV_CONSTRUCTED(ptr);
len_len = ber_fetch_length(tlv_constr,
- (char *)ptr + tag_len, size - tag_len, &tlv_len);
+ (const char *)ptr + tag_len, size - tag_len, &tlv_len);
switch(len_len) {
case -1: RETURN(RC_FAIL);
case 0: RETURN(RC_WMORE);
@@ -208,7 +208,7 @@
* Fetch and process L from TLV.
*/
len_len = ber_fetch_length(tlv_constr,
- (char *)ptr + tag_len, size - tag_len, &tlv_len);
+ (const char *)ptr + tag_len, size - tag_len, &tlv_len);
ASN_DEBUG("Fetchinig len = %ld", (long)len_len);
switch(len_len) {
case -1: RETURN(RC_FAIL);
diff --git a/skeletons/ber_decoder.h b/skeletons/ber_decoder.h
index b835b0f..af8d8e3 100644
--- a/skeletons/ber_decoder.h
+++ b/skeletons/ber_decoder.h
@@ -17,7 +17,7 @@
asn_dec_rval_t ber_decode(struct asn_codec_ctx_s *opt_codec_ctx,
struct asn_TYPE_descriptor_s *type_descriptor,
void **struct_ptr, /* Pointer to a target structure's pointer */
- void *buffer, /* Data to be decoded */
+ const void *buffer, /* Data to be decoded */
size_t size /* Size of that buffer */
);
@@ -27,7 +27,7 @@
typedef asn_dec_rval_t (ber_type_decoder_f)(
struct asn_codec_ctx_s *opt_codec_ctx,
struct asn_TYPE_descriptor_s *type_descriptor,
- void **struct_ptr, void *buf_ptr, size_t size,
+ void **struct_ptr, const void *buf_ptr, size_t size,
int tag_mode);
/*******************************
@@ -45,7 +45,7 @@
struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */
struct asn_TYPE_descriptor_s *type_dsc,
asn_struct_ctx_t *opt_ctx, /* saved decoding context */
- void *ptr, size_t size,
+ const void *ptr, size_t size,
int tag_mode, /* {-1,0,1}: IMPLICIT, no, EXPLICIT */
int last_tag_form, /* {-1,0:1}: any, primitive, constr */
ber_tlv_len_t *last_length,
diff --git a/skeletons/ber_tlv_length.c b/skeletons/ber_tlv_length.c
index 4f1ea88..49343d3 100644
--- a/skeletons/ber_tlv_length.c
+++ b/skeletons/ber_tlv_length.c
@@ -7,15 +7,15 @@
#include <ber_tlv_tag.h>
ssize_t
-ber_fetch_length(int _is_constructed, void *bufptr, size_t size,
+ber_fetch_length(int _is_constructed, const void *bufptr, size_t size,
ber_tlv_len_t *len_r) {
- uint8_t *buf = (uint8_t *)bufptr;
+ const uint8_t *buf = (const uint8_t *)bufptr;
unsigned oct;
if(size == 0)
return 0; /* Want more */
- oct = *(uint8_t *)buf;
+ oct = *(const uint8_t *)buf;
if((oct & 0x80) == 0) {
/*
* Short definite length.
@@ -75,7 +75,7 @@
ssize_t
ber_skip_length(asn_codec_ctx_t *opt_codec_ctx,
- int _is_constructed, void *ptr, size_t size) {
+ int _is_constructed, const void *ptr, size_t size) {
ber_tlv_len_t vlen; /* Length of V in TLV */
ssize_t tl; /* Length of L in TLV */
ssize_t ll; /* Length of L in TLV */
@@ -116,7 +116,7 @@
* Indefinite length!
*/
ASN_DEBUG("Skipping indefinite length");
- for(skip = ll, ptr = ((char *)ptr) + ll, size -= ll;;) {
+ for(skip = ll, ptr = ((const char *)ptr) + ll, size -= ll;;) {
ber_tlv_tag_t tag;
/* Fetch the tag */
@@ -125,7 +125,7 @@
ll = ber_skip_length(opt_codec_ctx,
BER_TLV_CONSTRUCTED(ptr),
- ((char *)ptr) + tl, size - tl);
+ ((const char *)ptr) + tl, size - tl);
if(ll <= 0) return ll;
skip += tl + ll;
@@ -135,11 +135,11 @@
* two consecutive 0 octets.
* Check if it is true.
*/
- if(((uint8_t *)ptr)[0] == 0
- && ((uint8_t *)ptr)[1] == 0)
+ if(((const uint8_t *)ptr)[0] == 0
+ && ((const uint8_t *)ptr)[1] == 0)
return skip;
- ptr = ((char *)ptr) + tl + ll;
+ ptr = ((const char *)ptr) + tl + ll;
size -= tl + ll;
}
diff --git a/skeletons/ber_tlv_length.h b/skeletons/ber_tlv_length.h
index 9d99e66..b7d6f74 100644
--- a/skeletons/ber_tlv_length.h
+++ b/skeletons/ber_tlv_length.h
@@ -17,7 +17,7 @@
* On return with >0, len_r is constrained as -1..MAX, where -1 mean
* that the value is of indefinite length.
*/
-ssize_t ber_fetch_length(int _is_constructed, void *bufptr, size_t size,
+ssize_t ber_fetch_length(int _is_constructed, const void *bufptr, size_t size,
ber_tlv_len_t *len_r);
/*
@@ -30,7 +30,7 @@
struct asn_codec_ctx_s; /* Forward declaration */
ssize_t ber_skip_length(
struct asn_codec_ctx_s *opt_codec_ctx, /* optional context */
- int _is_constructed, void *bufptr, size_t size);
+ int _is_constructed, const void *bufptr, size_t size);
/*
* This function serializes the length (L from TLV) in DER format.
diff --git a/skeletons/ber_tlv_tag.c b/skeletons/ber_tlv_tag.c
index 43a2d1a..4270876 100644
--- a/skeletons/ber_tlv_tag.c
+++ b/skeletons/ber_tlv_tag.c
@@ -7,7 +7,7 @@
#include <errno.h>
ssize_t
-ber_fetch_tag(void *ptr, size_t size, ber_tlv_tag_t *tag_r) {
+ber_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) {
ber_tlv_tag_t val;
ber_tlv_tag_t tclass;
size_t skipped;
@@ -15,7 +15,7 @@
if(size == 0)
return 0;
- val = *(uint8_t *)ptr;
+ val = *(const uint8_t *)ptr;
tclass = (val >> 6);
if((val &= 0x1F) != 0x1F) {
/*
@@ -30,9 +30,10 @@
* Each octet contains 7 bits of useful information.
* The MSB is 0 if it is the last octet of the tag.
*/
- for(val = 0, ptr = ((char *)ptr) + 1, skipped = 2;
- skipped <= size; ptr = ((char *)ptr) + 1, skipped++) {
- unsigned int oct = *(uint8_t *)ptr;
+ for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2;
+ skipped <= size;
+ ptr = ((const char *)ptr) + 1, skipped++) {
+ unsigned int oct = *(const uint8_t *)ptr;
if(oct & 0x80) {
val = (val << 7) | (oct & 0x7F);
/*
diff --git a/skeletons/ber_tlv_tag.h b/skeletons/ber_tlv_tag.h
index 52a1141..51c9a08 100644
--- a/skeletons/ber_tlv_tag.h
+++ b/skeletons/ber_tlv_tag.h
@@ -18,7 +18,7 @@
*/
#define BER_TAG_CLASS(tag) ((tag) & 0x3)
#define BER_TAG_VALUE(tag) ((tag) >> 2)
-#define BER_TLV_CONSTRUCTED(tagptr) (((*(uint8_t *)tagptr) & 0x20)?1:0)
+#define BER_TLV_CONSTRUCTED(tagptr) (((*(const uint8_t *)tagptr)&0x20)?1:0)
#define BER_TAGS_EQUAL(tag1, tag2) ((tag1) == (tag2))
@@ -39,7 +39,7 @@
* -1: Fatal error deciphering tag.
* >0: Number of bytes used from bufptr. tag_r will contain the tag.
*/
-ssize_t ber_fetch_tag(void *bufptr, size_t size, ber_tlv_tag_t *tag_r);
+ssize_t ber_fetch_tag(const void *bufptr, size_t size, ber_tlv_tag_t *tag_r);
/*
* This function serializes the tag (T from TLV) in BER format.
diff --git a/skeletons/constr_CHOICE.c b/skeletons/constr_CHOICE.c
index 4e90bbd..bcf4c16 100644
--- a/skeletons/constr_CHOICE.c
+++ b/skeletons/constr_CHOICE.c
@@ -34,7 +34,7 @@
#undef ADVANCE
#define ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- ptr = ((char *)ptr) + num; \
+ ptr = ((const char *)ptr) + num;\
size -= num; \
if(ctx->left >= 0) \
ctx->left -= num; \
@@ -99,7 +99,7 @@
*/
asn_dec_rval_t
CHOICE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
- void **struct_ptr, void *ptr, size_t size, int tag_mode) {
+ void **struct_ptr, const void *ptr, size_t size, int tag_mode) {
/*
* Bring closer parts of structure description.
*/
@@ -211,7 +211,8 @@
skip = ber_skip_length(opt_codec_ctx,
BER_TLV_CONSTRUCTED(ptr),
- (char *)ptr + tag_len, LEFT - tag_len);
+ (const char *)ptr + tag_len,
+ LEFT - tag_len);
switch(skip) {
case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE);
@@ -320,13 +321,13 @@
/*
* Expected <0><0>...
*/
- if(((uint8_t *)ptr)[0] == 0) {
+ if(((const uint8_t *)ptr)[0] == 0) {
if(LEFT < 2) {
if(SIZE_VIOLATION)
RETURN(RC_FAIL);
else
RETURN(RC_WMORE);
- } else if(((uint8_t *)ptr)[1] == 0) {
+ } else if(((const uint8_t *)ptr)[1] == 0) {
/*
* Correctly finished with <0><0>.
*/
@@ -543,7 +544,7 @@
#undef XER_ADVANCE
#define XER_ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- buf_ptr = ((char *)buf_ptr) + num; \
+ buf_ptr = ((const char *)buf_ptr) + num;\
size -= num; \
consumed_myself += num; \
} while(0)
@@ -554,7 +555,7 @@
asn_dec_rval_t
CHOICE_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **struct_ptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
/*
* Bring closer parts of structure description.
*/
diff --git a/skeletons/constr_SEQUENCE.c b/skeletons/constr_SEQUENCE.c
index baecf2d..d952667 100644
--- a/skeletons/constr_SEQUENCE.c
+++ b/skeletons/constr_SEQUENCE.c
@@ -34,7 +34,7 @@
#undef ADVANCE
#define ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- ptr = ((char *)ptr) + num; \
+ ptr = ((const char *)ptr) + num;\
size -= num; \
if(ctx->left >= 0) \
ctx->left -= num; \
@@ -110,7 +110,7 @@
*/
asn_dec_rval_t
SEQUENCE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
- void **struct_ptr, void *ptr, size_t size, int tag_mode) {
+ void **struct_ptr, const void *ptr, size_t size, int tag_mode) {
/*
* Bring closer parts of structure description.
*/
@@ -240,13 +240,13 @@
case -1: RETURN(RC_FAIL);
}
- if(ctx->left < 0 && ((uint8_t *)ptr)[0] == 0) {
+ if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) {
if(LEFT < 2) {
if(SIZE_VIOLATION)
RETURN(RC_FAIL);
else
RETURN(RC_WMORE);
- } else if(((uint8_t *)ptr)[1] == 0) {
+ } else if(((const uint8_t *)ptr)[1] == 0) {
ASN_DEBUG("edx = %d, opt = %d, ec=%d",
edx, elements[edx].optional,
td->elements_count);
@@ -362,7 +362,8 @@
skip = ber_skip_length(opt_codec_ctx,
BER_TLV_CONSTRUCTED(ptr),
- (char *)ptr + tag_len, LEFT - tag_len);
+ (const char *)ptr + tag_len,
+ LEFT - tag_len);
ASN_DEBUG("Skip length %d in %s",
(int)skip, td->name);
switch(skip) {
@@ -455,13 +456,13 @@
* If expected <0><0>...
*/
if(ctx->left < 0
- && ((uint8_t *)ptr)[0] == 0) {
+ && ((const uint8_t *)ptr)[0] == 0) {
if(LEFT < 2) {
if(SIZE_VIOLATION)
RETURN(RC_FAIL);
else
RETURN(RC_WMORE);
- } else if(((uint8_t *)ptr)[1] == 0) {
+ } else if(((const uint8_t *)ptr)[1] == 0) {
/*
* Correctly finished with <0><0>.
*/
@@ -484,7 +485,7 @@
ll = ber_skip_length(opt_codec_ctx,
BER_TLV_CONSTRUCTED(ptr),
- (char *)ptr + tl, LEFT - tl);
+ (const char *)ptr + tl, LEFT - tl);
switch(ll) {
case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE);
/* Fall through */
@@ -593,7 +594,7 @@
#undef XER_ADVANCE
#define XER_ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- buf_ptr = ((char *)buf_ptr) + num; \
+ buf_ptr = ((const char *)buf_ptr) + num;\
size -= num; \
consumed_myself += num; \
} while(0)
@@ -604,7 +605,7 @@
asn_dec_rval_t
SEQUENCE_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **struct_ptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
/*
* Bring closer parts of structure description.
*/
diff --git a/skeletons/constr_SET.c b/skeletons/constr_SET.c
index 4099186..1b2f85f 100644
--- a/skeletons/constr_SET.c
+++ b/skeletons/constr_SET.c
@@ -42,7 +42,7 @@
#undef ADVANCE
#define ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- ptr = ((char *)ptr) + num; \
+ ptr = ((const char *)ptr) + num;\
size -= num; \
if(ctx->left >= 0) \
ctx->left -= num; \
@@ -101,7 +101,7 @@
*/
asn_dec_rval_t
SET_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
- void **struct_ptr, void *ptr, size_t size, int tag_mode) {
+ void **struct_ptr, const void *ptr, size_t size, int tag_mode) {
/*
* Bring closer parts of structure description.
*/
@@ -211,13 +211,13 @@
case -1: RETURN(RC_FAIL);
}
- if(ctx->left < 0 && ((uint8_t *)ptr)[0] == 0) {
+ if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) {
if(LEFT < 2) {
if(SIZE_VIOLATION)
RETURN(RC_FAIL);
else
RETURN(RC_WMORE);
- } else if(((uint8_t *)ptr)[1] == 0) {
+ } else if(((const uint8_t *)ptr)[1] == 0) {
/*
* Found the terminator of the
* indefinite length structure.
@@ -253,7 +253,7 @@
skip = ber_skip_length(opt_codec_ctx,
BER_TLV_CONSTRUCTED(ptr),
- (char *)ptr + tag_len, LEFT - tag_len);
+ (const char *)ptr + tag_len, LEFT - tag_len);
switch(skip) {
case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE);
@@ -345,13 +345,13 @@
* If expected <0><0>...
*/
if(ctx->left < 0
- && ((uint8_t *)ptr)[0] == 0) {
+ && ((const uint8_t *)ptr)[0] == 0) {
if(LEFT < 2) {
if(SIZE_VIOLATION)
RETURN(RC_FAIL);
else
RETURN(RC_WMORE);
- } else if(((uint8_t *)ptr)[1] == 0) {
+ } else if(((const uint8_t *)ptr)[1] == 0) {
/*
* Correctly finished with <0><0>.
*/
@@ -366,13 +366,13 @@
ASN_DEBUG("Unexpected continuation "
"of a non-extensible type %s "
"(ptr=%02x)",
- td->name, *(uint8_t *)ptr);
+ td->name, *(const uint8_t *)ptr);
RETURN(RC_FAIL);
}
ll = ber_skip_length(opt_codec_ctx,
BER_TLV_CONSTRUCTED(ptr),
- (char *)ptr + tl, LEFT - tl);
+ (const char *)ptr + tl, LEFT - tl);
switch(ll) {
case 0: if(!SIZE_VIOLATION) RETURN(RC_WMORE);
/* Fall through */
@@ -573,7 +573,7 @@
#undef XER_ADVANCE
#define XER_ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- buf_ptr = ((char *)buf_ptr) + num; \
+ buf_ptr = ((const char *)buf_ptr) + num;\
size -= num; \
consumed_myself += num; \
} while(0)
@@ -584,7 +584,7 @@
asn_dec_rval_t
SET_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **struct_ptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
/*
* Bring closer parts of structure description.
*/
diff --git a/skeletons/constr_SET_OF.c b/skeletons/constr_SET_OF.c
index c6ec6af..84892e7 100644
--- a/skeletons/constr_SET_OF.c
+++ b/skeletons/constr_SET_OF.c
@@ -34,7 +34,7 @@
#undef ADVANCE
#define ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- ptr = ((char *)ptr) + num; \
+ ptr = ((const char *)ptr) + num;\
size -= num; \
if(ctx->left >= 0) \
ctx->left -= num; \
@@ -67,7 +67,7 @@
*/
asn_dec_rval_t
SET_OF_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
- void **struct_ptr, void *ptr, size_t size, int tag_mode) {
+ void **struct_ptr, const void *ptr, size_t size, int tag_mode) {
/*
* Bring closer parts of structure description.
*/
@@ -166,13 +166,13 @@
case -1: RETURN(RC_FAIL);
}
- if(ctx->left < 0 && ((uint8_t *)ptr)[0] == 0) {
+ if(ctx->left < 0 && ((const uint8_t *)ptr)[0] == 0) {
if(LEFT < 2) {
if(SIZE_VIOLATION)
RETURN(RC_FAIL);
else
RETURN(RC_WMORE);
- } else if(((uint8_t *)ptr)[1] == 0) {
+ } else if(((const uint8_t *)ptr)[1] == 0) {
/*
* Found the terminator of the
* indefinite length structure.
@@ -241,15 +241,15 @@
*/
while(ctx->left < 0) {
if(LEFT < 2) {
- if(LEFT > 0 && ((char *)ptr)[0] != 0) {
+ if(LEFT > 0 && ((const char *)ptr)[0] != 0) {
/* Unexpected tag */
RETURN(RC_FAIL);
} else {
RETURN(RC_WMORE);
}
}
- if(((char *)ptr)[0] == 0
- && ((char *)ptr)[1] == 0) {
+ if(((const char *)ptr)[0] == 0
+ && ((const char *)ptr)[1] == 0) {
ADVANCE(2);
ctx->left++;
} else {
@@ -452,7 +452,7 @@
#undef XER_ADVANCE
#define XER_ADVANCE(num_bytes) do { \
size_t num = num_bytes; \
- buf_ptr = ((char *)buf_ptr) + num; \
+ buf_ptr = ((const char *)buf_ptr) + num;\
size -= num; \
consumed_myself += num; \
} while(0)
@@ -463,7 +463,7 @@
asn_dec_rval_t
SET_OF_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **struct_ptr, const char *opt_mname,
- void *buf_ptr, size_t size) {
+ const void *buf_ptr, size_t size) {
/*
* Bring closer parts of structure description.
*/
diff --git a/skeletons/xer_decoder.c b/skeletons/xer_decoder.c
index 6456666..d0a0878 100644
--- a/skeletons/xer_decoder.c
+++ b/skeletons/xer_decoder.c
@@ -10,7 +10,7 @@
*/
asn_dec_rval_t
xer_decode(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
- void **struct_ptr, void *buffer, size_t size) {
+ void **struct_ptr, const void *buffer, size_t size) {
asn_codec_ctx_t s_codec_ctx;
/*
diff --git a/skeletons/xer_decoder.h b/skeletons/xer_decoder.h
index 4f6b537..e372bbd 100644
--- a/skeletons/xer_decoder.h
+++ b/skeletons/xer_decoder.h
@@ -15,7 +15,7 @@
asn_dec_rval_t xer_decode(struct asn_codec_ctx_s *opt_codec_ctx,
struct asn_TYPE_descriptor_s *type_descriptor,
void **struct_ptr, /* Pointer to a target structure's pointer */
- void *buffer, /* Data to be decoded */
+ const void *buffer, /* Data to be decoded */
size_t size /* Size of that buffer */
);
@@ -26,7 +26,7 @@
struct asn_TYPE_descriptor_s *type_descriptor,
void **struct_ptr,
const char *opt_mname, /* Member name */
- void *buf_ptr, size_t size
+ const void *buf_ptr, size_t size
);
/*******************************
@@ -61,7 +61,7 @@
typedef enum pxer_chunk_type {
PXER_TAG, /* Complete XER tag */
PXER_TEXT, /* Plain text between XER tags */
- PXER_COMMENT, /* A comment, may be part of */
+ PXER_COMMENT /* A comment, may be part of */
} pxer_chunk_type_e;
ssize_t xer_next_token(int *stateContext,
const void *buffer, size_t size, pxer_chunk_type_e *_ch_type);
@@ -77,7 +77,7 @@
XCT__UNK__MASK = 4, /* Mask of everything unexpected */
XCT_UNKNOWN_OP = 5, /* Unexpected <opening> tag */
XCT_UNKNOWN_CL = 6, /* Unexpected </closing> tag */
- XCT_UNKNOWN_BO = 7, /* Unexpected <modified/> tag */
+ XCT_UNKNOWN_BO = 7 /* Unexpected <modified/> tag */
} xer_check_tag_e;
xer_check_tag_e xer_check_tag(const void *buf_ptr, int size,
const char *need_tag);