initial checkin of osmo-remsim
This adds some initial code, particularly the ASN.1 definition of the
RSPRO protocol, related makefile to build it using ffasn1c, and our
usual autoconf infrastructure to build it.
Change-Id: Ibaa993b59e9a65a0242b0f42b27d9cd29f8e1878
diff --git a/include/osmocom/rspro/RsproPDUchoice.h b/include/osmocom/rspro/RsproPDUchoice.h
new file mode 100644
index 0000000..07d387e
--- /dev/null
+++ b/include/osmocom/rspro/RsproPDUchoice.h
@@ -0,0 +1,97 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RSPRO"
+ * found in "../../asn1/RSPRO.asn"
+ */
+
+#ifndef _RsproPDUchoice_H_
+#define _RsproPDUchoice_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include <osmocom/rspro/ConnectBankReq.h>
+#include <osmocom/rspro/ConnectBankRes.h>
+#include <osmocom/rspro/ConnectClientReq.h>
+#include <osmocom/rspro/ConnectClientRes.h>
+#include <osmocom/rspro/CreateMappingReq.h>
+#include <osmocom/rspro/CreateMappingRes.h>
+#include <osmocom/rspro/RemoveMappingReq.h>
+#include <osmocom/rspro/RemoveMappingRes.h>
+#include <osmocom/rspro/ConfigClientReq.h>
+#include <osmocom/rspro/ConfigClientRes.h>
+#include <osmocom/rspro/SetAtrReq.h>
+#include <osmocom/rspro/SetAtrRes.h>
+#include <osmocom/rspro/TpduModemToCard.h>
+#include <osmocom/rspro/TpduCardToModem.h>
+#include <osmocom/rspro/ClientSlotStatusInd.h>
+#include <osmocom/rspro/BankSlotStatusInd.h>
+#include <constr_CHOICE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum RsproPDUchoice_PR {
+ RsproPDUchoice_PR_NOTHING, /* No components present */
+ RsproPDUchoice_PR_connectBankReq,
+ RsproPDUchoice_PR_connectBankRes,
+ RsproPDUchoice_PR_connectClientReq,
+ RsproPDUchoice_PR_connectClientRes,
+ RsproPDUchoice_PR_createMappingReq,
+ RsproPDUchoice_PR_createMappingRes,
+ RsproPDUchoice_PR_removeMappingReq,
+ RsproPDUchoice_PR_removeMappingRes,
+ RsproPDUchoice_PR_configClientReq,
+ RsproPDUchoice_PR_configClientRes,
+ RsproPDUchoice_PR_setAtrReq,
+ RsproPDUchoice_PR_setAtrRes,
+ RsproPDUchoice_PR_tpduModemToCard,
+ RsproPDUchoice_PR_tpduCardToModem,
+ RsproPDUchoice_PR_clientSlotStatusInd,
+ RsproPDUchoice_PR_bankSlotStatusInd,
+ /* Extensions may appear below */
+
+} RsproPDUchoice_PR;
+
+/* RsproPDUchoice */
+typedef struct RsproPDUchoice {
+ RsproPDUchoice_PR present;
+ union RsproPDUchoice_u {
+ ConnectBankReq_t connectBankReq;
+ ConnectBankRes_t connectBankRes;
+ ConnectClientReq_t connectClientReq;
+ ConnectClientRes_t connectClientRes;
+ CreateMappingReq_t createMappingReq;
+ CreateMappingRes_t createMappingRes;
+ RemoveMappingReq_t removeMappingReq;
+ RemoveMappingRes_t removeMappingRes;
+ ConfigClientReq_t configClientReq;
+ ConfigClientRes_t configClientRes;
+ SetAtrReq_t setAtrReq;
+ SetAtrRes_t setAtrRes;
+ TpduModemToCard_t tpduModemToCard;
+ TpduCardToModem_t tpduCardToModem;
+ ClientSlotStatusInd_t clientSlotStatusInd;
+ BankSlotStatusInd_t bankSlotStatusInd;
+ /*
+ * This type is extensible,
+ * possible extensions are below.
+ */
+ } choice;
+
+ /* Context for parsing across buffer boundaries */
+ asn_struct_ctx_t _asn_ctx;
+} RsproPDUchoice_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RsproPDUchoice;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _RsproPDUchoice_H_ */
+#include <asn_internal.h>