constness fixes, round-trip and fuzz-testing for CHOICE
diff --git a/skeletons/asn_application.c b/skeletons/asn_application.c
index 2cb9b19..5b25207 100644
--- a/skeletons/asn_application.c
+++ b/skeletons/asn_application.c
@@ -6,10 +6,12 @@
#include <asn_application.h>
#include <errno.h>
-static asn_enc_rval_t asn_encode_internal(
- const asn_codec_ctx_t *opt_codec_ctx,
- enum asn_transfer_syntax syntax, asn_TYPE_descriptor_t *td,
- void *sptr, asn_app_consume_bytes_f *callback, void *callback_key);
+static asn_enc_rval_t asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx,
+ enum asn_transfer_syntax syntax,
+ const asn_TYPE_descriptor_t *td,
+ const void *sptr,
+ asn_app_consume_bytes_f *callback,
+ void *callback_key);
struct callback_count_bytes_key {
@@ -113,8 +115,9 @@
asn_enc_rval_t
asn_encode_to_buffer(const asn_codec_ctx_t *opt_codec_ctx,
- enum asn_transfer_syntax syntax, asn_TYPE_descriptor_t *td,
- void *sptr, void *buffer, size_t buffer_size) {
+ enum asn_transfer_syntax syntax,
+ const asn_TYPE_descriptor_t *td, const void *sptr,
+ void *buffer, size_t buffer_size) {
struct overrun_encoder_key buf_key;
asn_enc_rval_t er;
@@ -141,9 +144,9 @@
static asn_enc_rval_t
asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx,
- enum asn_transfer_syntax syntax, asn_TYPE_descriptor_t *td,
- void *sptr, asn_app_consume_bytes_f *callback,
- void *callback_key) {
+ enum asn_transfer_syntax syntax,
+ const asn_TYPE_descriptor_t *td, const void *sptr,
+ asn_app_consume_bytes_f *callback, void *callback_key) {
asn_enc_rval_t er;
enum xer_encoder_flags_e xer_flags = XER_F_CANONICAL;
@@ -303,9 +306,8 @@
asn_dec_rval_t
asn_decode(const asn_codec_ctx_t *opt_codec_ctx,
- enum asn_transfer_syntax syntax, struct asn_TYPE_descriptor_s *td,
+ enum asn_transfer_syntax syntax, const asn_TYPE_descriptor_t *td,
void **sptr, const void *buffer, size_t size) {
-
if(!td || !td->op || !sptr || (size && !buffer)) {
ASN__DECODE_FAILED;
}