// This C++ header file was generated by the TTCN-3 compiler // of the TTCN-3 Test Executor version 11.1.0 // The generation of user and time information were disabled by the -D flag. // Copyright (c) 2000-2025 Ericsson Telecom AB // Do not edit this file unless you know what you are doing. #ifndef L3__Common_HH #define L3__Common_HH #ifdef TITAN_RUNTIME_2 #error Generated code does not match with used runtime.\ Code was generated without -R option but -DTITAN_RUNTIME_2 was used. #endif /* Header file includes */ #include #include "Osmocom_Types.hh" #include "MobileL3_GMM_SM_Types.hh" #if TTCN3_VERSION != 110100 #error Version mismatch detected.\ Please check the version of the TTCN-3 compiler and the base library.\ Run make clean and rebuild the project if the version of the compiler changed recently. #endif #ifndef LINUX #error This file should be compiled on LINUX #endif #undef L3__Common_HH #endif namespace L3__Common { /* Forward declarations of classes */ class AuthVector; class AuthVector_template; } /* end of namespace */ #ifndef L3__Common_HH #define L3__Common_HH namespace L3__Common { /* Class definitions */ class AuthVector { OCTETSTRING field_rand; OCTETSTRING field_sres; OCTETSTRING field_kc; OCTETSTRING field_ik; OCTETSTRING field_ck; OCTETSTRING field_autn; OCTETSTRING field_res; OCTETSTRING field_auts; public: AuthVector(); AuthVector(const OCTETSTRING& par_rand, const OCTETSTRING& par_sres, const OCTETSTRING& par_kc, const OCTETSTRING& par_ik, const OCTETSTRING& par_ck, const OCTETSTRING& par_autn, const OCTETSTRING& par_res, const OCTETSTRING& par_auts); AuthVector(const AuthVector& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; AuthVector& operator=(const AuthVector& other_value); boolean operator==(const AuthVector& other_value) const; inline boolean operator!=(const AuthVector& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline OCTETSTRING& rand() {return field_rand;} inline const OCTETSTRING& rand() const {return field_rand;} inline OCTETSTRING& sres() {return field_sres;} inline const OCTETSTRING& sres() const {return field_sres;} inline OCTETSTRING& kc() {return field_kc;} inline const OCTETSTRING& kc() const {return field_kc;} inline OCTETSTRING& ik() {return field_ik;} inline const OCTETSTRING& ik() const {return field_ik;} inline OCTETSTRING& ck() {return field_ck;} inline const OCTETSTRING& ck() const {return field_ck;} inline OCTETSTRING& autn() {return field_autn;} inline const OCTETSTRING& autn() const {return field_autn;} inline OCTETSTRING& res() {return field_res;} inline const OCTETSTRING& res() const {return field_res;} inline OCTETSTRING& auts() {return field_auts;} inline const OCTETSTRING& auts() const {return field_auts;} inline int size_of() const {return 8;} void log() const; void set_implicit_omit(); void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class AuthVector_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; AuthVector_template *list_value; } value_list; struct { AuthVector_template* precondition; AuthVector_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const AuthVector& other_value); void copy_template(const AuthVector_template& other_value); public: AuthVector_template(); AuthVector_template(template_sel other_value); AuthVector_template(const AuthVector& other_value); AuthVector_template(const OPTIONAL& other_value); AuthVector_template(AuthVector_template* p_precondition, AuthVector_template* p_implied_template); AuthVector_template(Dynamic_Match_Interface* p_dyn_match); AuthVector_template(const AuthVector_template& other_value); ~AuthVector_template(); AuthVector_template& operator=(template_sel other_value); AuthVector_template& operator=(const AuthVector& other_value); AuthVector_template& operator=(const OPTIONAL& other_value); AuthVector_template& operator=(const AuthVector_template& other_value); boolean match(const AuthVector& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); AuthVector valueof() const; void set_type(template_sel template_type, unsigned int list_length); AuthVector_template& list_item(unsigned int list_index) const; OCTETSTRING_template& rand(); const OCTETSTRING_template& rand() const; OCTETSTRING_template& sres(); const OCTETSTRING_template& sres() const; OCTETSTRING_template& kc(); const OCTETSTRING_template& kc() const; OCTETSTRING_template& ik(); const OCTETSTRING_template& ik() const; OCTETSTRING_template& ck(); const OCTETSTRING_template& ck() const; OCTETSTRING_template& autn(); const OCTETSTRING_template& autn() const; OCTETSTRING_template& res(); const OCTETSTRING_template& res() const; OCTETSTRING_template& auts(); const OCTETSTRING_template& auts() const; int size_of() const; void log() const; void log_match(const AuthVector& match_value, boolean legacy = FALSE) const; void set_implicit_omit(); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; }; /* Function prototypes */ extern AuthVector f__gen__auth__vec__2g(); extern AuthVector f__gen__auth__vec__3g(); extern MobileL3__GMM__SM__Types::RoutingAreaIdentificationV f__RAI(const HEXSTRING& mcc, const HEXSTRING& mnc, const OCTETSTRING& lac, const OCTETSTRING& rac); extern HEXSTRING f__RAI__to__plmn__hexstr(const MobileL3__GMM__SM__Types::RoutingAreaIdentificationV& rai); extern void pre_init_module(); extern void post_init_module(); /* Global variable declarations */ extern const XERdescriptor_t AuthVector_rand_xer_; extern const TTCN_OERdescriptor_t AuthVector_rand_oer_; extern const TTCN_Typedescriptor_t AuthVector_rand_descr_; extern UNIVERSAL_CHARSTRING AuthVector_rand_default_coding; extern const XERdescriptor_t AuthVector_sres_xer_; extern const TTCN_OERdescriptor_t AuthVector_sres_oer_; extern const TTCN_Typedescriptor_t AuthVector_sres_descr_; extern UNIVERSAL_CHARSTRING AuthVector_sres_default_coding; extern const XERdescriptor_t AuthVector_kc_xer_; extern const TTCN_OERdescriptor_t AuthVector_kc_oer_; extern const TTCN_Typedescriptor_t AuthVector_kc_descr_; extern UNIVERSAL_CHARSTRING AuthVector_kc_default_coding; extern const XERdescriptor_t AuthVector_ik_xer_; extern const TTCN_OERdescriptor_t AuthVector_ik_oer_; extern const TTCN_Typedescriptor_t AuthVector_ik_descr_; extern UNIVERSAL_CHARSTRING AuthVector_ik_default_coding; extern const XERdescriptor_t AuthVector_ck_xer_; extern const TTCN_OERdescriptor_t AuthVector_ck_oer_; extern const TTCN_Typedescriptor_t AuthVector_ck_descr_; extern UNIVERSAL_CHARSTRING AuthVector_ck_default_coding; extern const XERdescriptor_t AuthVector_autn_xer_; extern const TTCN_OERdescriptor_t AuthVector_autn_oer_; extern const TTCN_Typedescriptor_t AuthVector_autn_descr_; extern UNIVERSAL_CHARSTRING AuthVector_autn_default_coding; extern const XERdescriptor_t AuthVector_res_xer_; extern const TTCN_OERdescriptor_t AuthVector_res_oer_; extern const TTCN_Typedescriptor_t AuthVector_res_descr_; extern UNIVERSAL_CHARSTRING AuthVector_res_default_coding; extern const XERdescriptor_t AuthVector_auts_xer_; extern const TTCN_OERdescriptor_t AuthVector_auts_oer_; extern const TTCN_Typedescriptor_t AuthVector_auts_descr_; extern UNIVERSAL_CHARSTRING AuthVector_auts_default_coding; extern const TTCN_Typedescriptor_t AuthVector_descr_; extern const HEXSTRING hs_0; extern const unsigned char module_checksum[]; extern TTCN_Module module_object; extern const RuntimeVersionChecker ver_checker; } /* end of namespace */ #endif