MME2 changes - Propped commits from openmme/paging branch. Added scripts
for code gen

Change-Id: Ie55032217232214ac8544ca76ea34335205329e4
diff --git a/src/s1ap/asn1c/asnGenFiles/InitiatingMessage.h b/src/s1ap/asn1c/asnGenFiles/InitiatingMessage.h
new file mode 100644
index 0000000..23c7821
--- /dev/null
+++ b/src/s1ap/asn1c/asnGenFiles/InitiatingMessage.h
@@ -0,0 +1,278 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "S1AP-PDU-Descriptions"
+ * 	found in "./asn1c/S1AP-PDU-Descriptions.asn"
+ * 	`asn1c -fcompound-names -fno-include-deps -gen-PER -findirect-choice -pdu=S1AP-PDU`
+ */
+
+#ifndef	_InitiatingMessage_H_
+#define	_InitiatingMessage_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "ProcedureCode.h"
+#include "Criticality.h"
+#include <ANY.h>
+#include <asn_ioc.h>
+#include "HandoverRequired.h"
+#include "HandoverCommand.h"
+#include "HandoverPreparationFailure.h"
+#include "HandoverRequest.h"
+#include "HandoverRequestAcknowledge.h"
+#include "HandoverFailure.h"
+#include "PathSwitchRequest.h"
+#include "PathSwitchRequestAcknowledge.h"
+#include "PathSwitchRequestFailure.h"
+#include "E-RABSetupRequest.h"
+#include "E-RABSetupResponse.h"
+#include "E-RABModifyRequest.h"
+#include "E-RABModifyResponse.h"
+#include "E-RABReleaseCommand.h"
+#include "E-RABReleaseResponse.h"
+#include "InitialContextSetupRequest.h"
+#include "InitialContextSetupResponse.h"
+#include "InitialContextSetupFailure.h"
+#include "HandoverCancel.h"
+#include "HandoverCancelAcknowledge.h"
+#include "KillRequest.h"
+#include "KillResponse.h"
+#include "Reset.h"
+#include "ResetAcknowledge.h"
+#include "S1SetupRequest.h"
+#include "S1SetupResponse.h"
+#include "S1SetupFailure.h"
+#include "UEContextModificationRequest.h"
+#include "UEContextModificationResponse.h"
+#include "UEContextModificationFailure.h"
+#include "UEContextReleaseCommand.h"
+#include "UEContextReleaseComplete.h"
+#include "ENBConfigurationUpdate.h"
+#include "ENBConfigurationUpdateAcknowledge.h"
+#include "ENBConfigurationUpdateFailure.h"
+#include "MMEConfigurationUpdate.h"
+#include "MMEConfigurationUpdateAcknowledge.h"
+#include "MMEConfigurationUpdateFailure.h"
+#include "WriteReplaceWarningRequest.h"
+#include "WriteReplaceWarningResponse.h"
+#include "UERadioCapabilityMatchRequest.h"
+#include "UERadioCapabilityMatchResponse.h"
+#include "E-RABModificationIndication.h"
+#include "E-RABModificationConfirm.h"
+#include "UEContextModificationIndication.h"
+#include "UEContextModificationConfirm.h"
+#include "UEContextSuspendRequest.h"
+#include "UEContextSuspendResponse.h"
+#include "UEContextResumeRequest.h"
+#include "UEContextResumeResponse.h"
+#include "UEContextResumeFailure.h"
+#include "HandoverNotify.h"
+#include "E-RABReleaseIndication.h"
+#include "Paging.h"
+#include "DownlinkNASTransport.h"
+#include "InitialUEMessage.h"
+#include "UplinkNASTransport.h"
+#include "ErrorIndication.h"
+#include "NASNonDeliveryIndication.h"
+#include "UEContextReleaseRequest.h"
+#include "DownlinkS1cdma2000tunnelling.h"
+#include "UplinkS1cdma2000tunnelling.h"
+#include "UECapabilityInfoIndication.h"
+#include "ENBStatusTransfer.h"
+#include "MMEStatusTransfer.h"
+#include "DeactivateTrace.h"
+#include "TraceStart.h"
+#include "TraceFailureIndication.h"
+#include "CellTrafficTrace.h"
+#include "LocationReportingControl.h"
+#include "LocationReportingFailureIndication.h"
+#include "LocationReport.h"
+#include "OverloadStart.h"
+#include "OverloadStop.h"
+#include "ENBDirectInformationTransfer.h"
+#include "MMEDirectInformationTransfer.h"
+#include "ENBConfigurationTransfer.h"
+#include "MMEConfigurationTransfer.h"
+#include "PrivateMessage.h"
+#include "DownlinkUEAssociatedLPPaTransport.h"
+#include "UplinkUEAssociatedLPPaTransport.h"
+#include "DownlinkNonUEAssociatedLPPaTransport.h"
+#include "UplinkNonUEAssociatedLPPaTransport.h"
+#include "PWSRestartIndication.h"
+#include "RerouteNASRequest.h"
+#include "PWSFailureIndication.h"
+#include "ConnectionEstablishmentIndication.h"
+#include "NASDeliveryIndication.h"
+#include "RetrieveUEInformation.h"
+#include "UEInformationTransfer.h"
+#include "ENBCPRelocationIndication.h"
+#include "MMECPRelocationIndication.h"
+#include "SecondaryRATDataUsageReport.h"
+#include <OPEN_TYPE.h>
+#include <constr_CHOICE.h>
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum InitiatingMessage__value_PR {
+	InitiatingMessage__value_PR_NOTHING,	/* No components present */
+	InitiatingMessage__value_PR_HandoverRequired,
+	InitiatingMessage__value_PR_HandoverRequest,
+	InitiatingMessage__value_PR_PathSwitchRequest,
+	InitiatingMessage__value_PR_E_RABSetupRequest,
+	InitiatingMessage__value_PR_E_RABModifyRequest,
+	InitiatingMessage__value_PR_E_RABReleaseCommand,
+	InitiatingMessage__value_PR_InitialContextSetupRequest,
+	InitiatingMessage__value_PR_HandoverCancel,
+	InitiatingMessage__value_PR_KillRequest,
+	InitiatingMessage__value_PR_Reset,
+	InitiatingMessage__value_PR_S1SetupRequest,
+	InitiatingMessage__value_PR_UEContextModificationRequest,
+	InitiatingMessage__value_PR_UEContextReleaseCommand,
+	InitiatingMessage__value_PR_ENBConfigurationUpdate,
+	InitiatingMessage__value_PR_MMEConfigurationUpdate,
+	InitiatingMessage__value_PR_WriteReplaceWarningRequest,
+	InitiatingMessage__value_PR_UERadioCapabilityMatchRequest,
+	InitiatingMessage__value_PR_E_RABModificationIndication,
+	InitiatingMessage__value_PR_UEContextModificationIndication,
+	InitiatingMessage__value_PR_UEContextSuspendRequest,
+	InitiatingMessage__value_PR_UEContextResumeRequest,
+	InitiatingMessage__value_PR_HandoverNotify,
+	InitiatingMessage__value_PR_E_RABReleaseIndication,
+	InitiatingMessage__value_PR_Paging,
+	InitiatingMessage__value_PR_DownlinkNASTransport,
+	InitiatingMessage__value_PR_InitialUEMessage,
+	InitiatingMessage__value_PR_UplinkNASTransport,
+	InitiatingMessage__value_PR_ErrorIndication,
+	InitiatingMessage__value_PR_NASNonDeliveryIndication,
+	InitiatingMessage__value_PR_UEContextReleaseRequest,
+	InitiatingMessage__value_PR_DownlinkS1cdma2000tunnelling,
+	InitiatingMessage__value_PR_UplinkS1cdma2000tunnelling,
+	InitiatingMessage__value_PR_UECapabilityInfoIndication,
+	InitiatingMessage__value_PR_ENBStatusTransfer,
+	InitiatingMessage__value_PR_MMEStatusTransfer,
+	InitiatingMessage__value_PR_DeactivateTrace,
+	InitiatingMessage__value_PR_TraceStart,
+	InitiatingMessage__value_PR_TraceFailureIndication,
+	InitiatingMessage__value_PR_CellTrafficTrace,
+	InitiatingMessage__value_PR_LocationReportingControl,
+	InitiatingMessage__value_PR_LocationReportingFailureIndication,
+	InitiatingMessage__value_PR_LocationReport,
+	InitiatingMessage__value_PR_OverloadStart,
+	InitiatingMessage__value_PR_OverloadStop,
+	InitiatingMessage__value_PR_ENBDirectInformationTransfer,
+	InitiatingMessage__value_PR_MMEDirectInformationTransfer,
+	InitiatingMessage__value_PR_ENBConfigurationTransfer,
+	InitiatingMessage__value_PR_MMEConfigurationTransfer,
+	InitiatingMessage__value_PR_PrivateMessage,
+	InitiatingMessage__value_PR_DownlinkUEAssociatedLPPaTransport,
+	InitiatingMessage__value_PR_UplinkUEAssociatedLPPaTransport,
+	InitiatingMessage__value_PR_DownlinkNonUEAssociatedLPPaTransport,
+	InitiatingMessage__value_PR_UplinkNonUEAssociatedLPPaTransport,
+	InitiatingMessage__value_PR_PWSRestartIndication,
+	InitiatingMessage__value_PR_RerouteNASRequest,
+	InitiatingMessage__value_PR_PWSFailureIndication,
+	InitiatingMessage__value_PR_ConnectionEstablishmentIndication,
+	InitiatingMessage__value_PR_NASDeliveryIndication,
+	InitiatingMessage__value_PR_RetrieveUEInformation,
+	InitiatingMessage__value_PR_UEInformationTransfer,
+	InitiatingMessage__value_PR_ENBCPRelocationIndication,
+	InitiatingMessage__value_PR_MMECPRelocationIndication,
+	InitiatingMessage__value_PR_SecondaryRATDataUsageReport
+} InitiatingMessage__value_PR;
+
+/* InitiatingMessage */
+typedef struct InitiatingMessage {
+	ProcedureCode_t	 procedureCode;
+	Criticality_t	 criticality;
+	struct InitiatingMessage__value {
+		InitiatingMessage__value_PR present;
+		union InitiatingMessage__value_u {
+			HandoverRequired_t	 HandoverRequired;
+			HandoverRequest_t	 HandoverRequest;
+			PathSwitchRequest_t	 PathSwitchRequest;
+			E_RABSetupRequest_t	 E_RABSetupRequest;
+			E_RABModifyRequest_t	 E_RABModifyRequest;
+			E_RABReleaseCommand_t	 E_RABReleaseCommand;
+			InitialContextSetupRequest_t	 InitialContextSetupRequest;
+			HandoverCancel_t	 HandoverCancel;
+			KillRequest_t	 KillRequest;
+			Reset_t	 Reset;
+			S1SetupRequest_t	 S1SetupRequest;
+			UEContextModificationRequest_t	 UEContextModificationRequest;
+			UEContextReleaseCommand_t	 UEContextReleaseCommand;
+			ENBConfigurationUpdate_t	 ENBConfigurationUpdate;
+			MMEConfigurationUpdate_t	 MMEConfigurationUpdate;
+			WriteReplaceWarningRequest_t	 WriteReplaceWarningRequest;
+			UERadioCapabilityMatchRequest_t	 UERadioCapabilityMatchRequest;
+			E_RABModificationIndication_t	 E_RABModificationIndication;
+			UEContextModificationIndication_t	 UEContextModificationIndication;
+			UEContextSuspendRequest_t	 UEContextSuspendRequest;
+			UEContextResumeRequest_t	 UEContextResumeRequest;
+			HandoverNotify_t	 HandoverNotify;
+			E_RABReleaseIndication_t	 E_RABReleaseIndication;
+			Paging_t	 Paging;
+			DownlinkNASTransport_t	 DownlinkNASTransport;
+			InitialUEMessage_t	 InitialUEMessage;
+			UplinkNASTransport_t	 UplinkNASTransport;
+			ErrorIndication_t	 ErrorIndication;
+			NASNonDeliveryIndication_t	 NASNonDeliveryIndication;
+			UEContextReleaseRequest_t	 UEContextReleaseRequest;
+			DownlinkS1cdma2000tunnelling_t	 DownlinkS1cdma2000tunnelling;
+			UplinkS1cdma2000tunnelling_t	 UplinkS1cdma2000tunnelling;
+			UECapabilityInfoIndication_t	 UECapabilityInfoIndication;
+			ENBStatusTransfer_t	 ENBStatusTransfer;
+			MMEStatusTransfer_t	 MMEStatusTransfer;
+			DeactivateTrace_t	 DeactivateTrace;
+			TraceStart_t	 TraceStart;
+			TraceFailureIndication_t	 TraceFailureIndication;
+			CellTrafficTrace_t	 CellTrafficTrace;
+			LocationReportingControl_t	 LocationReportingControl;
+			LocationReportingFailureIndication_t	 LocationReportingFailureIndication;
+			LocationReport_t	 LocationReport;
+			OverloadStart_t	 OverloadStart;
+			OverloadStop_t	 OverloadStop;
+			ENBDirectInformationTransfer_t	 ENBDirectInformationTransfer;
+			MMEDirectInformationTransfer_t	 MMEDirectInformationTransfer;
+			ENBConfigurationTransfer_t	 ENBConfigurationTransfer;
+			MMEConfigurationTransfer_t	 MMEConfigurationTransfer;
+			PrivateMessage_t	 PrivateMessage;
+			DownlinkUEAssociatedLPPaTransport_t	 DownlinkUEAssociatedLPPaTransport;
+			UplinkUEAssociatedLPPaTransport_t	 UplinkUEAssociatedLPPaTransport;
+			DownlinkNonUEAssociatedLPPaTransport_t	 DownlinkNonUEAssociatedLPPaTransport;
+			UplinkNonUEAssociatedLPPaTransport_t	 UplinkNonUEAssociatedLPPaTransport;
+			PWSRestartIndication_t	 PWSRestartIndication;
+			RerouteNASRequest_t	 RerouteNASRequest;
+			PWSFailureIndication_t	 PWSFailureIndication;
+			ConnectionEstablishmentIndication_t	 ConnectionEstablishmentIndication;
+			NASDeliveryIndication_t	 NASDeliveryIndication;
+			RetrieveUEInformation_t	 RetrieveUEInformation;
+			UEInformationTransfer_t	 UEInformationTransfer;
+			ENBCPRelocationIndication_t	 ENBCPRelocationIndication;
+			MMECPRelocationIndication_t	 MMECPRelocationIndication;
+			SecondaryRATDataUsageReport_t	 SecondaryRATDataUsageReport;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} InitiatingMessage_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_InitiatingMessage;
+extern asn_SEQUENCE_specifics_t asn_SPC_InitiatingMessage_specs_1;
+extern asn_TYPE_member_t asn_MBR_InitiatingMessage_1[3];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _InitiatingMessage_H_ */
+#include <asn_internal.h>