diff --git a/3rdparty/libe2ap/RICserviceUpdateFailure.c b/3rdparty/libe2ap/RICserviceUpdateFailure.c
new file mode 100644
index 0000000..79a2ef3
--- /dev/null
+++ b/3rdparty/libe2ap/RICserviceUpdateFailure.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	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`
+ */
+
+#include "RICserviceUpdateFailure.h"
+
+asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure, protocolIEs),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_Container_8807P12,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"protocolIEs"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RICserviceUpdateFailure_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateFailure_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */
+};
+asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_specs_1 = {
+	sizeof(struct RICserviceUpdateFailure),
+	offsetof(struct RICserviceUpdateFailure, _asn_ctx),
+	asn_MAP_RICserviceUpdateFailure_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateFailure = {
+	"RICserviceUpdateFailure",
+	"RICserviceUpdateFailure",
+	&asn_OP_SEQUENCE,
+	asn_DEF_RICserviceUpdateFailure_tags_1,
+	sizeof(asn_DEF_RICserviceUpdateFailure_tags_1)
+		/sizeof(asn_DEF_RICserviceUpdateFailure_tags_1[0]), /* 1 */
+	asn_DEF_RICserviceUpdateFailure_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RICserviceUpdateFailure_tags_1)
+		/sizeof(asn_DEF_RICserviceUpdateFailure_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RICserviceUpdateFailure_1,
+	1,	/* Elements count */
+	&asn_SPC_RICserviceUpdateFailure_specs_1	/* Additional specs */
+};
+
