RICPLT-2910

libe2ap library updated and moved to 3rdparty directory
e2ap_wrapper library to be used from go:
 - message wrappers (used now only in tests)
 - function wrappers that manipulates message
Go wrappers for messages
Initial unittest implementation.

Change-Id: Ie77cc2ae90b83b12e5c738e6f570fe4661961da6
Signed-off-by: Juha Hyttinen <juha.hyttinen@nokia.com>
diff --git a/3rdparty/libe2ap/ProtocolIE-Single-Container.h b/3rdparty/libe2ap/ProtocolIE-Single-Container.h
new file mode 100644
index 0000000..5053515
--- /dev/null
+++ b/3rdparty/libe2ap/ProtocolIE-Single-Container.h
@@ -0,0 +1,186 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "X2AP-Containers"
+ * 	found in "Spec/e2_and_x2-combined-and-minimized.asn1"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ */
+
+#ifndef	_ProtocolIE_Single_Container_H_
+#define	_ProtocolIE_Single_Container_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "ProtocolIE-Field.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* ProtocolIE-Single-Container */
+typedef RICaction_ToBeSetup_ItemIEs_t	 ProtocolIE_Single_Container_8810P0_t;
+typedef RICaction_Admitted_ItemIEs_t	 ProtocolIE_Single_Container_8810P1_t;
+typedef RICaction_NotAdmitted_ItemIEs_t	 ProtocolIE_Single_Container_8810P2_t;
+typedef RANfunction_ItemIEs_t	 ProtocolIE_Single_Container_8810P3_t;
+typedef RANfunctionID_ItemIEs_t	 ProtocolIE_Single_Container_8810P4_t;
+typedef RANfunctionIDcause_ItemIEs_t	 ProtocolIE_Single_Container_8810P5_t;
+typedef CellInformation_ItemIEs_t	 ProtocolIE_Single_Container_8810P6_t;
+typedef CellToReport_ItemIEs_t	 ProtocolIE_Single_Container_8810P7_t;
+typedef MeasurementInitiationResult_ItemIEs_t	 ProtocolIE_Single_Container_8810P8_t;
+typedef MeasurementFailureCause_ItemIEs_t	 ProtocolIE_Single_Container_8810P9_t;
+typedef CompleteFailureCauseInformation_ItemIEs_t	 ProtocolIE_Single_Container_8810P10_t;
+typedef CellMeasurementResult_ItemIEs_t	 ProtocolIE_Single_Container_8810P11_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P0;
+asn_struct_free_f ProtocolIE_Single_Container_8810P0_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P0_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P0_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P0_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P0_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P0_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P0_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P0_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P0_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P0_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P0_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P1;
+asn_struct_free_f ProtocolIE_Single_Container_8810P1_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P1_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P1_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P1_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P1_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P1_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P1_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P1_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P1_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P1_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P1_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P2;
+asn_struct_free_f ProtocolIE_Single_Container_8810P2_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P2_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P2_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P2_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P2_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P2_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P2_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P2_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P2_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P2_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P2_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P3;
+asn_struct_free_f ProtocolIE_Single_Container_8810P3_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P3_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P3_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P3_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P3_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P3_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P3_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P3_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P3_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P3_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P3_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P4;
+asn_struct_free_f ProtocolIE_Single_Container_8810P4_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P4_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P4_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P4_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P4_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P4_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P4_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P4_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P4_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P4_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P4_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P5;
+asn_struct_free_f ProtocolIE_Single_Container_8810P5_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P5_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P5_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P5_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P5_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P5_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P5_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P5_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P5_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P5_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P5_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P6;
+asn_struct_free_f ProtocolIE_Single_Container_8810P6_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P6_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P6_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P6_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P6_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P6_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P6_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P6_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P6_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P6_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P6_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P7;
+asn_struct_free_f ProtocolIE_Single_Container_8810P7_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P7_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P7_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P7_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P7_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P7_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P7_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P7_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P7_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P7_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P7_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P8;
+asn_struct_free_f ProtocolIE_Single_Container_8810P8_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P8_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P8_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P8_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P8_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P8_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P8_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P8_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P8_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P8_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P8_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P9;
+asn_struct_free_f ProtocolIE_Single_Container_8810P9_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P9_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P9_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P9_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P9_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P9_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P9_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P9_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P9_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P9_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P9_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P10;
+asn_struct_free_f ProtocolIE_Single_Container_8810P10_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P10_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P10_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P10_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P10_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P10_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P10_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P10_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P10_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P10_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P10_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Single_Container_8810P11;
+asn_struct_free_f ProtocolIE_Single_Container_8810P11_free;
+asn_struct_print_f ProtocolIE_Single_Container_8810P11_print;
+asn_constr_check_f ProtocolIE_Single_Container_8810P11_constraint;
+ber_type_decoder_f ProtocolIE_Single_Container_8810P11_decode_ber;
+der_type_encoder_f ProtocolIE_Single_Container_8810P11_encode_der;
+xer_type_decoder_f ProtocolIE_Single_Container_8810P11_decode_xer;
+xer_type_encoder_f ProtocolIE_Single_Container_8810P11_encode_xer;
+per_type_decoder_f ProtocolIE_Single_Container_8810P11_decode_uper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P11_encode_uper;
+per_type_decoder_f ProtocolIE_Single_Container_8810P11_decode_aper;
+per_type_encoder_f ProtocolIE_Single_Container_8810P11_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _ProtocolIE_Single_Container_H_ */
+#include "asn_internal.h"