RIC:1060: Change in PTL
[ric-plt/submgr.git] / e2ap / libe2ap_wrapper / E2AP_if.h
index 2678151..a98570c 100644 (file)
@@ -282,7 +282,24 @@ enum e2err {
     e2err_RICsubscriptionDeleteResponseRANfunctionIDMissing,
     e2err_RICsubscriptionDeleteFailureRICrequestIDMissing,
     e2err_RICsubscriptionDeleteFailureRANfunctionIDMissing,
-    e2err_RICsubscriptionDeleteFailureRICcauseMissing
+    e2err_RICsubscriptionDeleteFailureRICcauseMissing,
+    e2err_RICSubscriptionDeleteRequiredRICrequestIDMissing,
+    e2err_RICSubscriptionDeleteRequiredRANfunctionIDMissing,
+    e2err_RICSubscriptionDeleteRequiredRICcauseMissing,
+    e2err_RICSubscriptionDeleteRequiredEncodeFail,
+    e2err_RICSubscriptionDeleteRequiredAllocE2AP_PDUFail,
+    e2err_RICsubscriptionResponseRICrequestIDWrongOrder,
+    e2err_RICsubscriptionResponseRANfunctionIDWrongOrder,
+    e2err_RICsubscriptionResponseRICaction_Admitted_ListWrongOrder,
+    e2err_RICsubscriptionResponseRICaction_NotAdmitted_ListWrongOrder,
+    e2err_RICsubscriptionFailureRICrequestIDWrongOrder,
+    e2err_RICsubscriptionFailureRANfunctionIDWrongOrder,
+    e2err_RICsubscriptionFailureCauseWrongOrder,
+    e2err_RICsubscriptionDeleteResponseRICrequestIDWrongOrder,
+    e2err_RICsubscriptionDeleteResponseRANfunctionIDWrongOrder,
+    e2err_RICsubscriptionDeleteFailureRICrequestIDWrongOrder,
+    e2err_RICsubscriptionDeleteFailureRANfunctionIDWrongOrder,
+    e2err_RICsubscriptionDeleteFailureRICcauseWrongOrder
 };
 
 static const char* const E2ErrorStrings[] = {
@@ -338,7 +355,19 @@ static const char* const E2ErrorStrings[] = {
     "e2err_RICsubscriptionDeleteResponseRANfunctionIDMissing",
     "e2err_RICsubscriptionDeleteFailureRICrequestIDMissing",
     "e2err_RICsubscriptionDeleteFailureRANfunctionIDMissing",
-    "e2err_RICsubscriptionDeleteFailureRICcauseMissing"
+    "e2err_RICsubscriptionDeleteFailureRICcauseMissing",
+    "e2err_RICSubscriptionDeleteRequiredRICrequestIDMissing",
+    "e2err_RICSubscriptionDeleteRequiredRANfunctionIDMissing",
+    "e2err_RICSubscriptionDeleteRequiredRICcauseMissing",
+    "e2err_RICSubscriptionDeleteRequiredEncodeFail",
+    "e2err_RICSubscriptionDeleteRequiredAllocE2AP_PDUFail",
+    "e2err_RICsubscriptionResponseRICrequestIDWrongOrder",
+    "e2err_RICsubscriptionResponseRANfunctionIDWrongOrder",
+    "e2err_RICsubscriptionResponseRICaction_Admitted_ListWrongOrder",
+    "e2err_RICsubscriptionResponseRICaction_NotAdmitted_ListWrongOrder",
+    "e2err_RICsubscriptionFailureRICrequestIDWrongOrder",
+    "e2err_RICsubscriptionFailureRANfunctionIDWrongOrder",
+    "e2err_RICsubscriptionFailureCauseWrongOrder",
 };
 
 typedef struct {
@@ -359,6 +388,7 @@ extern const uint64_t cE2UnsuccessfulOutcome;
 // Initiating message
 extern const uint64_t cRICSubscriptionRequest;
 extern const uint64_t cRICSubscriptionDeleteRequest;
+extern const uint64_t cRICSubscriptionDeleteRequired;
 
 // Successful outcome
 extern const uint64_t cRICSubscriptionResponse;
@@ -408,11 +438,25 @@ typedef struct  {
     CriticalityDiagnostics__t criticalityDiagnostics; // OPTIONAL. Not used in RIC currently
 } RICSubscriptionDeleteFailure_t;
 
+typedef struct {
+    RICRequestID_t ricRequestID;
+    RANFunctionID_t ranFunctionID;
+    RICCause_t cause;
+} RICSubscriptionDeleteRequired_t;
+
+typedef struct {
+    int noOfRanSubscriptions;
+    RICSubscriptionDeleteRequired_t ranSubscriptionsDelRequired[1024];
+
+} RICSubsDeleteRequired_t;
+
 //////////////////////////////////////////////////////////////////////
 // Function declarations
 
 void allowASN1DebugPrints(bool);
 
+void allowOutOfOrderIEMsg(uint8_t);
+
 const char* getE2ErrorString(uint64_t);
 
 typedef void* e2ap_pdu_ptr_t;
@@ -423,6 +467,7 @@ uint64_t packRICSubscriptionFailure(size_t*, byte*, char*,RICSubscriptionFailure
 uint64_t packRICSubscriptionDeleteRequest(size_t*, byte*, char*,RICSubscriptionDeleteRequest_t*);
 uint64_t packRICSubscriptionDeleteResponse(size_t*, byte*, char*,RICSubscriptionDeleteResponse_t*);
 uint64_t packRICSubscriptionDeleteFailure(size_t*, byte*, char*,RICSubscriptionDeleteFailure_t*);
+uint64_t packRICSubscriptionDeleteRequired(size_t*, byte*, char*,RICSubsDeleteRequired_t*);
 
 e2ap_pdu_ptr_t* unpackE2AP_pdu(const size_t, const byte*, char*, E2MessageInfo_t*);
 uint64_t getRICSubscriptionRequestData(e2ap_pdu_ptr_t*, RICSubscriptionRequest_t*);
@@ -431,7 +476,7 @@ uint64_t getRICSubscriptionFailureData(e2ap_pdu_ptr_t*, RICSubscriptionFailure_t
 uint64_t getRICSubscriptionDeleteRequestData(e2ap_pdu_ptr_t*, RICSubscriptionDeleteRequest_t*);
 uint64_t getRICSubscriptionDeleteResponseData(e2ap_pdu_ptr_t*, RICSubscriptionDeleteResponse_t*);
 uint64_t getRICSubscriptionDeleteFailureData(e2ap_pdu_ptr_t*, RICSubscriptionDeleteFailure_t*);
-
+uint64_t getRICSubscriptionDeleteRequiredData(e2ap_pdu_ptr_t*, RICSubsDeleteRequired_t*);
 
 #if DEBUG
 bool TestRICSubscriptionRequest();
@@ -440,6 +485,7 @@ bool TestRICSubscriptionFailure();
 bool TestRICSubscriptionDeleteRequest();
 bool TestRICSubscriptionDeleteResponse();
 bool TestRICSubscriptionDeleteFailure();
+bool TestRICSubscriptionDeleteRequired();
 
 void printRICSubscriptionRequest(const RICSubscriptionRequest_t*);
 void printRICSubscriptionResponse(const RICSubscriptionResponse_t*);
@@ -447,6 +493,7 @@ void printRICSubscriptionFailure(const RICSubscriptionFailure_t*);
 void printRICSubscriptionDeleteRequest(const RICSubscriptionDeleteRequest_t*);
 void printRICSubscriptionDeleteResponse(const RICSubscriptionDeleteResponse_t*);
 void printRICSubscriptionDeleteFailure(const RICSubscriptionDeleteFailure_t*);
+void printRICSubscriptionDeleteRequired(const RICSubsDeleteRequired_t*);
 #endif
 
 #ifdef __cplusplus