sbcap: Update asn1c skeleton files

Update skeleton files using newest asn1c with APER support [1],
commit 08b293e8aa342d465d26805d1d66f3595b2ce261.

This contains among others, fix to automatically disable stack overflow checks [2]
when using ASan, in order to avoid failing during unit test run.

[1] https://github.com/mouse07410/asn1c/tree/vlm_master
[2] https://github.com/mouse07410/asn1c/pull/128

Related: OS#6025
Change-Id: I385d14d4be308b991a48ce1033087f07bd1f47ea
This commit is contained in:
Pau Espin 2023-05-15 17:31:31 +02:00
parent a7aca0333b
commit 292b2e895b
33 changed files with 131 additions and 91 deletions

View File

@ -29,12 +29,12 @@ typedef long SBcAP_Concurrent_Warning_Message_Indicator_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_Concurrent_Warning_Message_Indicator_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Concurrent_Warning_Message_Indicator;
extern const asn_INTEGER_specifics_t asn_SPC_Concurrent_Warning_Message_Indicator_specs_1;
asn_struct_free_f Concurrent_Warning_Message_Indicator_free;
asn_struct_print_f Concurrent_Warning_Message_Indicator_print;
asn_constr_check_f Concurrent_Warning_Message_Indicator_constraint;
per_type_decoder_f Concurrent_Warning_Message_Indicator_decode_aper;
per_type_encoder_f Concurrent_Warning_Message_Indicator_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_Concurrent_Warning_Message_Indicator_specs_1;
asn_struct_free_f SBcAP_Concurrent_Warning_Message_Indicator_free;
asn_struct_print_f SBcAP_Concurrent_Warning_Message_Indicator_print;
asn_constr_check_f SBcAP_Concurrent_Warning_Message_Indicator_constraint;
per_type_decoder_f SBcAP_Concurrent_Warning_Message_Indicator_decode_aper;
per_type_encoder_f SBcAP_Concurrent_Warning_Message_Indicator_encode_aper;
#ifdef __cplusplus
}

View File

@ -31,12 +31,12 @@ typedef long SBcAP_Criticality_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_Criticality_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Criticality;
extern const asn_INTEGER_specifics_t asn_SPC_Criticality_specs_1;
asn_struct_free_f Criticality_free;
asn_struct_print_f Criticality_print;
asn_constr_check_f Criticality_constraint;
per_type_decoder_f Criticality_decode_aper;
per_type_encoder_f Criticality_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_Criticality_specs_1;
asn_struct_free_f SBcAP_Criticality_free;
asn_struct_print_f SBcAP_Criticality_print;
asn_constr_check_f SBcAP_Criticality_constraint;
per_type_decoder_f SBcAP_Criticality_decode_aper;
per_type_encoder_f SBcAP_Criticality_encode_aper;
#ifdef __cplusplus
}

View File

@ -33,6 +33,8 @@ typedef struct SBcAP_Error_Indication {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Error_Indication;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Error_Indication_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Error_Indication_1[1];
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_PWS_Failure_Indication {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_PWS_Failure_Indication;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_PWS_Failure_Indication_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_PWS_Failure_Indication_1[2];
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_PWS_Restart_Indication {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_PWS_Restart_Indication;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_PWS_Restart_Indication_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_PWS_Restart_Indication_1[2];
#ifdef __cplusplus
}

View File

@ -31,12 +31,12 @@ typedef long SBcAP_Presence_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_Presence_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Presence;
extern const asn_INTEGER_specifics_t asn_SPC_Presence_specs_1;
asn_struct_free_f Presence_free;
asn_struct_print_f Presence_print;
asn_constr_check_f Presence_constraint;
per_type_decoder_f Presence_decode_aper;
per_type_encoder_f Presence_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_Presence_specs_1;
asn_struct_free_f SBcAP_Presence_free;
asn_struct_print_f SBcAP_Presence_print;
asn_constr_check_f SBcAP_Presence_constraint;
per_type_decoder_f SBcAP_Presence_decode_aper;
per_type_encoder_f SBcAP_Presence_encode_aper;
#ifdef __cplusplus
}

View File

@ -29,12 +29,12 @@ typedef long SBcAP_RAT_Selector_5GS_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_RAT_Selector_5GS_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_RAT_Selector_5GS;
extern const asn_INTEGER_specifics_t asn_SPC_RAT_Selector_5GS_specs_1;
asn_struct_free_f RAT_Selector_5GS_free;
asn_struct_print_f RAT_Selector_5GS_print;
asn_constr_check_f RAT_Selector_5GS_constraint;
per_type_decoder_f RAT_Selector_5GS_decode_aper;
per_type_encoder_f RAT_Selector_5GS_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_RAT_Selector_5GS_specs_1;
asn_struct_free_f SBcAP_RAT_Selector_5GS_free;
asn_struct_print_f SBcAP_RAT_Selector_5GS_print;
asn_constr_check_f SBcAP_RAT_Selector_5GS_constraint;
per_type_decoder_f SBcAP_RAT_Selector_5GS_decode_aper;
per_type_encoder_f SBcAP_RAT_Selector_5GS_encode_aper;
#ifdef __cplusplus
}

View File

@ -29,12 +29,12 @@ typedef long SBcAP_Send_Stop_Warning_Indication_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_Send_Stop_Warning_Indication_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Send_Stop_Warning_Indication;
extern const asn_INTEGER_specifics_t asn_SPC_Send_Stop_Warning_Indication_specs_1;
asn_struct_free_f Send_Stop_Warning_Indication_free;
asn_struct_print_f Send_Stop_Warning_Indication_print;
asn_constr_check_f Send_Stop_Warning_Indication_constraint;
per_type_decoder_f Send_Stop_Warning_Indication_decode_aper;
per_type_encoder_f Send_Stop_Warning_Indication_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_Send_Stop_Warning_Indication_specs_1;
asn_struct_free_f SBcAP_Send_Stop_Warning_Indication_free;
asn_struct_print_f SBcAP_Send_Stop_Warning_Indication_print;
asn_constr_check_f SBcAP_Send_Stop_Warning_Indication_constraint;
per_type_decoder_f SBcAP_Send_Stop_Warning_Indication_decode_aper;
per_type_encoder_f SBcAP_Send_Stop_Warning_Indication_encode_aper;
#ifdef __cplusplus
}

View File

@ -29,12 +29,12 @@ typedef long SBcAP_Send_Write_Replace_Warning_Indication_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_Send_Write_Replace_Warning_Indication_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Send_Write_Replace_Warning_Indication;
extern const asn_INTEGER_specifics_t asn_SPC_Send_Write_Replace_Warning_Indication_specs_1;
asn_struct_free_f Send_Write_Replace_Warning_Indication_free;
asn_struct_print_f Send_Write_Replace_Warning_Indication_print;
asn_constr_check_f Send_Write_Replace_Warning_Indication_constraint;
per_type_decoder_f Send_Write_Replace_Warning_Indication_decode_aper;
per_type_encoder_f Send_Write_Replace_Warning_Indication_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_Send_Write_Replace_Warning_Indication_specs_1;
asn_struct_free_f SBcAP_Send_Write_Replace_Warning_Indication_free;
asn_struct_print_f SBcAP_Send_Write_Replace_Warning_Indication_print;
asn_constr_check_f SBcAP_Send_Write_Replace_Warning_Indication_constraint;
per_type_decoder_f SBcAP_Send_Write_Replace_Warning_Indication_decode_aper;
per_type_encoder_f SBcAP_Send_Write_Replace_Warning_Indication_encode_aper;
#ifdef __cplusplus
}

View File

@ -29,12 +29,12 @@ typedef long SBcAP_Stop_All_Indicator_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_Stop_All_Indicator_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Stop_All_Indicator;
extern const asn_INTEGER_specifics_t asn_SPC_Stop_All_Indicator_specs_1;
asn_struct_free_f Stop_All_Indicator_free;
asn_struct_print_f Stop_All_Indicator_print;
asn_constr_check_f Stop_All_Indicator_constraint;
per_type_decoder_f Stop_All_Indicator_decode_aper;
per_type_encoder_f Stop_All_Indicator_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_Stop_All_Indicator_specs_1;
asn_struct_free_f SBcAP_Stop_All_Indicator_free;
asn_struct_print_f SBcAP_Stop_All_Indicator_print;
asn_constr_check_f SBcAP_Stop_All_Indicator_constraint;
per_type_decoder_f SBcAP_Stop_All_Indicator_decode_aper;
per_type_encoder_f SBcAP_Stop_All_Indicator_encode_aper;
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_Stop_Warning_Indication {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Stop_Warning_Indication;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Indication_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Indication_1[2];
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_Stop_Warning_Request {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Stop_Warning_Request;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Request_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Request_1[2];
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_Stop_Warning_Response {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Stop_Warning_Response;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Response_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Response_1[2];
#ifdef __cplusplus
}

View File

@ -32,12 +32,12 @@ typedef long SBcAP_TriggeringMessage_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_TriggeringMessage_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_TriggeringMessage;
extern const asn_INTEGER_specifics_t asn_SPC_TriggeringMessage_specs_1;
asn_struct_free_f TriggeringMessage_free;
asn_struct_print_f TriggeringMessage_print;
asn_constr_check_f TriggeringMessage_constraint;
per_type_decoder_f TriggeringMessage_decode_aper;
per_type_encoder_f TriggeringMessage_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_TriggeringMessage_specs_1;
asn_struct_free_f SBcAP_TriggeringMessage_free;
asn_struct_print_f SBcAP_TriggeringMessage_print;
asn_constr_check_f SBcAP_TriggeringMessage_constraint;
per_type_decoder_f SBcAP_TriggeringMessage_decode_aper;
per_type_encoder_f SBcAP_TriggeringMessage_encode_aper;
#ifdef __cplusplus
}

View File

@ -33,12 +33,12 @@ typedef long SBcAP_TypeOfError_t;
/* Implementation */
extern asn_per_constraints_t asn_PER_type_SBcAP_TypeOfError_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_TypeOfError;
extern const asn_INTEGER_specifics_t asn_SPC_TypeOfError_specs_1;
asn_struct_free_f TypeOfError_free;
asn_struct_print_f TypeOfError_print;
asn_constr_check_f TypeOfError_constraint;
per_type_decoder_f TypeOfError_decode_aper;
per_type_encoder_f TypeOfError_encode_aper;
extern const asn_INTEGER_specifics_t asn_SPC_SBcAP_TypeOfError_specs_1;
asn_struct_free_f SBcAP_TypeOfError_free;
asn_struct_print_f SBcAP_TypeOfError_print;
asn_constr_check_f SBcAP_TypeOfError_constraint;
per_type_decoder_f SBcAP_TypeOfError_decode_aper;
per_type_encoder_f SBcAP_TypeOfError_encode_aper;
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_Write_Replace_Warning_Indication {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Write_Replace_Warning_Indication;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Indication_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Indication_1[2];
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_Write_Replace_Warning_Request {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Write_Replace_Warning_Request;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Request_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Request_1[2];
#ifdef __cplusplus
}

View File

@ -37,6 +37,8 @@ typedef struct SBcAP_Write_Replace_Warning_Response {
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Write_Replace_Warning_Response;
extern asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Response_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Response_1[2];
#ifdef __cplusplus
}

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Error-Indication.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Error_Indication_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Error_Indication_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Error_Indication, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -32,7 +32,7 @@ static const ber_tlv_tag_t asn_DEF_SBcAP_Error_Indication_tags_1[] = {
static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Error_Indication_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Error_Indication_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Error_Indication_specs_1 = {
sizeof(struct SBcAP_Error_Indication),
offsetof(struct SBcAP_Error_Indication, _asn_ctx),
asn_MAP_SBcAP_Error_Indication_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_PWS-Failure-Indication.h>
static asn_TYPE_member_t asn_MBR_SBcAP_PWS_Failure_Indication_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_PWS_Failure_Indication_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_PWS_Failure_Indication, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_PWS_Failure_Indication_tag2el_1
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_PWS_Failure_Indication_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_PWS_Failure_Indication_specs_1 = {
sizeof(struct SBcAP_PWS_Failure_Indication),
offsetof(struct SBcAP_PWS_Failure_Indication, _asn_ctx),
asn_MAP_SBcAP_PWS_Failure_Indication_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_PWS-Restart-Indication.h>
static asn_TYPE_member_t asn_MBR_SBcAP_PWS_Restart_Indication_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_PWS_Restart_Indication_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_PWS_Restart_Indication, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_PWS_Restart_Indication_tag2el_1
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_PWS_Restart_Indication_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_PWS_Restart_Indication_specs_1 = {
sizeof(struct SBcAP_PWS_Restart_Indication),
offsetof(struct SBcAP_PWS_Restart_Indication, _asn_ctx),
asn_MAP_SBcAP_PWS_Restart_Indication_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Stop-Warning-Indication.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Indication_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Indication_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Stop_Warning_Indication, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Stop_Warning_Indication_tag2el_
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Indication_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Indication_specs_1 = {
sizeof(struct SBcAP_Stop_Warning_Indication),
offsetof(struct SBcAP_Stop_Warning_Indication, _asn_ctx),
asn_MAP_SBcAP_Stop_Warning_Indication_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Stop-Warning-Request.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Request_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Request_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Stop_Warning_Request, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Stop_Warning_Request_tag2el_1[]
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Request_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Request_specs_1 = {
sizeof(struct SBcAP_Stop_Warning_Request),
offsetof(struct SBcAP_Stop_Warning_Request, _asn_ctx),
asn_MAP_SBcAP_Stop_Warning_Request_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Stop-Warning-Response.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Response_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Stop_Warning_Response_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Stop_Warning_Response, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Stop_Warning_Response_tag2el_1[
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Response_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Stop_Warning_Response_specs_1 = {
sizeof(struct SBcAP_Stop_Warning_Response),
offsetof(struct SBcAP_Stop_Warning_Response, _asn_ctx),
asn_MAP_SBcAP_Stop_Warning_Response_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Write-Replace-Warning-Indication.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Indication_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Indication_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Write_Replace_Warning_Indication, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Write_Replace_Warning_Indicatio
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Indication_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Indication_specs_1 = {
sizeof(struct SBcAP_Write_Replace_Warning_Indication),
offsetof(struct SBcAP_Write_Replace_Warning_Indication, _asn_ctx),
asn_MAP_SBcAP_Write_Replace_Warning_Indication_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Write-Replace-Warning-Request.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Request_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Request_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Write_Replace_Warning_Request, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Write_Replace_Warning_Request_t
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Request_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Request_specs_1 = {
sizeof(struct SBcAP_Write_Replace_Warning_Request),
offsetof(struct SBcAP_Write_Replace_Warning_Request, _asn_ctx),
asn_MAP_SBcAP_Write_Replace_Warning_Request_tag2el_1,

View File

@ -7,7 +7,7 @@
#include <osmocom/sbcap/SBcAP_Write-Replace-Warning-Response.h>
static asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Response_1[] = {
asn_TYPE_member_t asn_MBR_SBcAP_Write_Replace_Warning_Response_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SBcAP_Write_Replace_Warning_Response, protocolIEs),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
@ -51,7 +51,7 @@ static const asn_TYPE_tag2member_t asn_MAP_SBcAP_Write_Replace_Warning_Response_
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* protocolIEs */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* protocolExtensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Response_specs_1 = {
asn_SEQUENCE_specifics_t asn_SPC_SBcAP_Write_Replace_Warning_Response_specs_1 = {
sizeof(struct SBcAP_Write_Replace_Warning_Response),
offsetof(struct SBcAP_Write_Replace_Warning_Response, _asn_ctx),
asn_MAP_SBcAP_Write_Replace_Warning_Response_tag2el_1,

View File

@ -432,7 +432,7 @@ asn_encode_internal(const asn_codec_ctx_t *opt_codec_ctx,
#endif /* !defined(ASN_DISABLE_XER_SUPPORT) */
#if !defined(ASN_DISABLE_JER_SUPPORT)
case ATS_BASIC_JER:
case ATS_JER:
if(td->op->jer_encoder) {
er = jer_encode(td, sptr, callback, callback_key);
if(er.encoded == -1) {

View File

@ -53,8 +53,8 @@ CHOICE_decode_aper(const asn_codec_ctx_t *opt_codec_ctx,
if(specs->ext_start == -1)
ASN__DECODE_FAILED;
if (ct && ct->upper_bound >= ct->lower_bound) {
value = aper_get_nsnnwn(pd, ct->upper_bound - ct->lower_bound + 1);
if(specs && specs->tag2el_count > specs->ext_start) {
value = aper_get_nsnnwn(pd, specs->tag2el_count - specs->ext_start); /* extension elements range */
if(value < 0) ASN__DECODE_STARVED;
value += specs->ext_start;
if((unsigned)value >= td->elements_count)

View File

@ -124,6 +124,8 @@ SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
for(edx = 0; edx < td->elements_count; edx++) {
asn_TYPE_member_t *elm = &td->elements[edx];
const void *memb_ptr;
asn_constr_check_f *constr;
int ret;
if(elm->flags & ATF_POINTER) {
memb_ptr = *(const void * const *)((const char *)sptr + elm->memb_offset);
@ -139,14 +141,12 @@ SEQUENCE_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
memb_ptr = (const void *)((const char *)sptr + elm->memb_offset);
}
if(elm->encoding_constraints.general_constraints) {
int ret = elm->encoding_constraints.general_constraints(elm->type, memb_ptr,
ctfailcb, app_key);
if(ret) return ret;
} else {
return elm->type->encoding_constraints.general_constraints(elm->type,
memb_ptr, ctfailcb, app_key);
}
constr = elm->encoding_constraints.general_constraints;
if(!constr)
constr = elm->type->encoding_constraints.general_constraints;
ret = constr(elm->type, memb_ptr, ctfailcb, app_key);
if(ret) return ret;
}
return 0;

View File

@ -61,7 +61,7 @@ enum asn_transfer_syntax {
*/
ATS_BASIC_XER,
ATS_CANONICAL_XER,
ATS_BASIC_JER,
ATS_JER,
};
/*

View File

@ -137,8 +137,25 @@ asn__format_to_callback(
/*
* Check stack against overflow, if limit is set.
*/
/* Since GCC 13, AddressSanitizer started defaulting to
* ASAN_OPTIONS="detect_stack_use_after_return=1", which makes this check
* fail due to apparently jumping stack pointers.
* Hence, disable this check if building with ASan, as documented in:
* GCC: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
* Clang: https://clang.llvm.org/docs/AddressSanitizer.html#conditional-compilation-with-has-feature-address-sanitizer
*/
#if defined(__SANITIZE_ADDRESS__)
#define ASN__SANITIZE_ENABLED 1
#elif defined(__has_feature)
#if __has_feature(address_sanitizer)
#define ASN__SANITIZE_ENABLED 1
#endif
#endif
#define ASN__DEFAULT_STACK_MAX (30000)
#ifdef ASN_DISABLE_STACK_OVERFLOW_CHECK
#if defined(ASN__SANITIZE_ENABLED) || defined(ASN_DISABLE_STACK_OVERFLOW_CHECK)
static int CC_NOTUSED
ASN__STACK_OVERFLOW_CHECK(const asn_codec_ctx_t *ctx) {
(void)ctx;

View File

@ -13,15 +13,20 @@ extern "C" {
struct asn_TYPE_descriptor_s; /* Forward declaration */
/* Flags used by the jer_encode() and (*jer_type_encoder_f), defined below */
/* Flags used by the jer_encode() and (*jer_type_encoder_f), defined below
*
* This isn't actually used, it might be used in the future to support
* both normal JSON and prettified JSON output or removed.
* It came from XER
*/
enum jer_encoder_flags_e {
/* Mode of encoding */
JER_F_BASIC = 0x01, /* BASIC-JER (pretty-printing) */
JER_F = 0x01, /* JER (pretty-printing) */
};
/*
* The JER encoder of any type. May be invoked by the application.
* Produces CANONICAL-JER and BASIC-JER depending on the (jer_flags).
* Produces JER output.
*/
asn_enc_rval_t jer_encode(const struct asn_TYPE_descriptor_s *type_descriptor,
const void *struct_ptr, /* Structure to be encoded */
@ -30,7 +35,7 @@ asn_enc_rval_t jer_encode(const struct asn_TYPE_descriptor_s *type_descriptor,
);
/*
* The variant of the above function which dumps the BASIC-JER (JER_F_BASIC)
* The variant of the above function which dumps the JER
* output into the chosen file pointer.
* RETURN VALUES:
* 0: The structure is printed.
@ -42,9 +47,9 @@ int jer_fprint(FILE *stream, const struct asn_TYPE_descriptor_s *td,
/*
* A helper function that uses JER encoding/decoding to verify that:
* - Both structures encode into the same BASIC JER.
* - Both structures encode into the same JER.
* - Both resulting JER byte streams can be decoded back.
* - Both decoded structures encode into the same BASIC JER (round-trip).
* - Both decoded structures encode into the same JER (round-trip).
* All of this verifies equivalence between structures and a round-trip.
* ARGUMENTS:
* (opt_debug_stream) - If specified, prints ongoing details.