Files
osmo-cbc/include/osmocom/sbcap/SBcAP_Global-RAN-Node-ID.h
Pau Espin Pedrol 4b8175d189 Add sbcap library
This commit adds initial support to encode/decode SBc-AP messages in the
form of a library, under src/sbcap/ (includes in
include/osmocom/sbcap/).
asn1c is used to generate all suport code and structures for ASN.1 APER
encoding/decoding, based on asn files obtained from 3GPP TS 29.168 and
stored under src/sbcap/asn1/.
Currently, mainstream asn1c doesn't yet support ASN.1 APER
encoding/decoding, hence mouse07410 's fork is used [1]. Furthermore,
several encdoing/decoding bugs where found during the process and fixed,
which means asn1.c git >= 30219de2d3da888b4f1eea0dd79f2a505000401a must
be used to generate proper code.

A new "make -C src/ gen" target is added which can be used to regenerate
all C code from the available ASN.1 files in src/sbcap/asn1/*.asn (after
properly setting configure.ac ASN_* variables if needed).

[1] https://github.com/mouse07410/asn1c

Related: OS#4945
Change-Id: If76f8619a9b2d46af6d94b8ae49348b8514e53aa
2022-07-15 15:53:35 +02:00

60 lines
1.7 KiB
C

/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
* From ASN.1 module "SBC-AP-IEs"
* found in "../../src/sbcap/asn1/SBC_AP_IEs.asn"
* `asn1c -S /home/pespin/dev/sysmocom/build/new/out/share/asn1c -fcompound-names -gen-APER -no-gen-BER -no-gen-XER -no-gen-JER -no-gen-OER -no-gen-UPER -no-gen-example`
*/
#ifndef _SBcAP_Global_RAN_Node_ID_H_
#define _SBcAP_Global_RAN_Node_ID_H_
#include <asn_application.h>
/* Including external dependencies */
#include <osmocom/sbcap/SBcAP_Global-GNB-ID.h>
#include <osmocom/sbcap/SBcAP_Global-NgENB-ID.h>
#include <constr_CHOICE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum SBcAP_Global_RAN_Node_ID_PR {
SBcAP_Global_RAN_Node_ID_PR_NOTHING, /* No components present */
SBcAP_Global_RAN_Node_ID_PR_global_GNB_ID,
SBcAP_Global_RAN_Node_ID_PR_global_NgENB_ID
/* Extensions may appear below */
} SBcAP_Global_RAN_Node_ID_PR;
/* SBcAP_Global-RAN-Node-ID */
typedef struct SBcAP_Global_RAN_Node_ID {
SBcAP_Global_RAN_Node_ID_PR present;
union SBcAP_Global_RAN_Node_ID_u {
SBcAP_Global_GNB_ID_t global_GNB_ID;
SBcAP_Global_NgENB_ID_t global_NgENB_ID;
/*
* This type is extensible,
* possible extensions are below.
*/
} choice;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} SBcAP_Global_RAN_Node_ID_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SBcAP_Global_RAN_Node_ID;
extern asn_CHOICE_specifics_t asn_SPC_SBcAP_Global_RAN_Node_ID_specs_1;
extern asn_TYPE_member_t asn_MBR_SBcAP_Global_RAN_Node_ID_1[2];
extern asn_per_constraints_t asn_PER_type_SBcAP_Global_RAN_Node_ID_constr_1;
#ifdef __cplusplus
}
#endif
#endif /* _SBcAP_Global_RAN_Node_ID_H_ */
#include <asn_internal.h>