diff options
Diffstat (limited to 'rrlp-ephemeris/asn1c_patches')
-rw-r--r-- | rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff | 56 | ||||
-rw-r--r-- | rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff | 17 |
2 files changed, 0 insertions, 73 deletions
diff --git a/rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff b/rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff deleted file mode 100644 index 64c22a3cf..000000000 --- a/rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff +++ /dev/null @@ -1,56 +0,0 @@ -Index: skeletons/NativeEnumerated.c -=================================================================== ---- skeletons/NativeEnumerated.c (revision 1407) -+++ skeletons/NativeEnumerated.c (working copy) -@@ -22,7 +22,7 @@ - "ENUMERATED", /* The ASN.1 type is still ENUMERATED */ - "ENUMERATED", - NativeInteger_free, -- NativeInteger_print, -+ NativeEnumerated_print, - asn_generic_no_constraint, - NativeInteger_decode_ber, - NativeInteger_encode_der, -@@ -205,3 +205,30 @@ - _ASN_ENCODED_OK(er); - } - -+int -+NativeEnumerated_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, -+ asn_app_consume_bytes_f *cb, void *app_key) { -+ asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics; -+ const long *native = (const long *)sptr; -+ char scratch[256]; -+ int ret; -+ -+ (void)td; /* Unused argument */ -+ (void)ilevel; /* Unused argument */ -+ -+ if(native) { -+ const asn_INTEGER_enum_map_t *map = INTEGER_map_value2enum(specs, *native); -+ if (map && map->enum_len && map->enum_name) { -+ ret = snprintf(scratch, sizeof(scratch), -+ "%s", map->enum_name); -+ } else { -+ ret = snprintf(scratch, sizeof(scratch), -+ (specs && specs->field_unsigned) -+ ? "%lu" : "%ld", *native); -+ } -+ assert(ret > 0 && (size_t)ret < sizeof(scratch)); -+ return (cb(scratch, ret, app_key) < 0) ? -1 : 0; -+ } else { -+ return (cb("<absent>", 8, app_key) < 0) ? -1 : 0; -+ } -+} -Index: skeletons/NativeEnumerated.h -=================================================================== ---- skeletons/NativeEnumerated.h (revision 1407) -+++ skeletons/NativeEnumerated.h (working copy) -@@ -24,6 +24,7 @@ - xer_type_encoder_f NativeEnumerated_encode_xer; - per_type_decoder_f NativeEnumerated_decode_uper; - per_type_encoder_f NativeEnumerated_encode_uper; -+asn_struct_print_f NativeEnumerated_print; - - #ifdef __cplusplus - } diff --git a/rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff b/rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff deleted file mode 100644 index a09c20159..000000000 --- a/rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff +++ /dev/null @@ -1,17 +0,0 @@ -Index: skeletons/per_support.c -=================================================================== ---- skeletons/per_support.c (revision 1407) -+++ skeletons/per_support.c (working copy) -@@ -336,7 +336,12 @@ - buf[3] = bits; - else { - ASN_DEBUG("->[PER out split %d]", obits); -+#if 1 // Dieter -+ po->nboff -= obits; // undo incrementation from a few lines above -+ per_put_few_bits(po, bits >> (obits - 24), 24); // shift according to the rest of the bits -+#else - per_put_few_bits(po, bits >> 8, 24); -+#endif - per_put_few_bits(po, bits, obits - 24); - ASN_DEBUG("<-[PER out split %d]", obits); - } |