diff --git a/openair2/COMMON/s1ap_messages_def.h b/openair2/COMMON/s1ap_messages_def.h
index a39953d8f77e777ca79b1e4644be41690ae3f799..d81bd87ed5f97b990caf7abfbc0dae4d2180182e 100644
--- a/openair2/COMMON/s1ap_messages_def.h
+++ b/openair2/COMMON/s1ap_messages_def.h
@@ -38,6 +38,7 @@ MESSAGE_DEF(S1AP_E_RAB_MODIFY_RESPONSE_LOG    , MESSAGE_PRIORITY_MED, IttiMsgTex
 MESSAGE_DEF(S1AP_PAGING_LOG    , MESSAGE_PRIORITY_MED, IttiMsgText                      , s1ap_paging_log)
 MESSAGE_DEF(S1AP_E_RAB_RELEASE_REQUEST_LOG   , MESSAGE_PRIORITY_MED, IttiMsgText                      , s1ap_e_rab_release_request_log)
 MESSAGE_DEF(S1AP_E_RAB_RELEASE_RESPONSE_LOG  , MESSAGE_PRIORITY_MED, IttiMsgText                      , s1ap_e_rab_release_response_log)
+MESSAGE_DEF(S1AP_E_RAB_ERROR_INDICATION_LOG  , MESSAGE_PRIORITY_MED, IttiMsgText                      , s1ap_error_indication_log)
 
 /* eNB application layer -> S1AP messages */
 MESSAGE_DEF(S1AP_REGISTER_ENB_REQ          , MESSAGE_PRIORITY_MED, s1ap_register_enb_req_t          , s1ap_register_enb_req)
diff --git a/openair3/S1AP/s1ap_eNB_decoder.c b/openair3/S1AP/s1ap_eNB_decoder.c
index eac52c53ba6fc52cf13340267630a41d1de68c8c..447ca2c81bf2ece7a4032ff63cdc9721dea968e1 100644
--- a/openair3/S1AP/s1ap_eNB_decoder.c
+++ b/openair3/S1AP/s1ap_eNB_decoder.c
@@ -168,6 +168,22 @@ static int s1ap_eNB_decode_initiating_message(s1ap_message *message,
     S1AP_INFO("TODO  E_RABRelease nitiating message\n");    
     break;
 
+  case S1ap_ProcedureCode_id_ErrorIndication:
+    ret = s1ap_decode_s1ap_errorindicationies(
+            &message->msg.s1ap_ErrorIndicationIEs, &initiating_p->value);
+    s1ap_xer_print_s1ap_errorindication(s1ap_xer__print2sp, message_string, message);
+    message_id = S1AP_E_RAB_ERROR_INDICATION_LOG;
+    message_string_size = strlen(message_string);
+    message_p           = itti_alloc_new_message_sized(TASK_S1AP,
+                          message_id,
+                          message_string_size + sizeof (IttiMsgText));
+    message_p->ittiMsg.s1ap_e_rab_release_request_log.size = message_string_size;
+    memcpy(&message_p->ittiMsg.s1ap_error_indication_log.text, message_string, message_string_size);
+    itti_send_msg_to_task(TASK_UNKNOWN, INSTANCE_DEFAULT, message_p);
+    free(message_string);
+    S1AP_INFO("ErrorIndication initiating message\n");
+    break;
+
   default:
     S1AP_ERROR("Unknown procedure ID (%d) for initiating message\n",
                (int)initiating_p->procedureCode);