From 3fa9bb8316ebcea1952c292b8200c1cf292afaa9 Mon Sep 17 00:00:00 2001
From: Nikos Makris <nimakris@gmail.com>
Date: Tue, 4 Oct 2016 18:59:01 +0300
Subject: [PATCH] Fixed broken UL for data plane split

---
 openair2/LAYER2/PDCP_v10.1.0/pdcp.c           | 13 +++-------
 .../LAYER2/PROTO_AGENT/proto_agent_common.c   |  2 +-
 openair2/LAYER2/RLC/rlc.c                     | 26 +++++++++----------
 3 files changed, 18 insertions(+), 23 deletions(-)

diff --git a/openair2/LAYER2/PDCP_v10.1.0/pdcp.c b/openair2/LAYER2/PDCP_v10.1.0/pdcp.c
index 86bbeffa29..24c3ccdc42 100755
--- a/openair2/LAYER2/PDCP_v10.1.0/pdcp.c
+++ b/openair2/LAYER2/PDCP_v10.1.0/pdcp.c
@@ -368,16 +368,10 @@ boolean_t pdcp_data_req(
 #endif
 
   
-  //starting async
-//   const Enb_properties_array_t   *enb_properties_p  = NULL;
-   Enb_properties_array_t *enb_properties_p  = NULL;
-//   enb_properties_p = malloc(sizeof(Enb_properties_array_t));
-//   memset(enb_properties_p, 0, sizeof(Enb_properties_array_t));
-//   printf("starting the client\n\n");
 
-//   printf("Starting the async client\n");
-//   new_thread(proto_server_start, NULL);
-   enb_properties_p = enb_config_get();
+  Enb_properties_array_t *enb_properties_p  = NULL;
+
+  enb_properties_p = enb_config_get();
 
   static int agent_started = 1;
 
@@ -407,6 +401,7 @@ boolean_t pdcp_data_req(
   }
   else
   {
+    // It should never get here
     rlc_status = rlc_data_req(ctxt_pP, srb_flagP, MBMS_FLAG_NO, rb_idP, muiP, confirmP, pdcp_pdu_size, pdcp_pdu_p);
   }
   }
diff --git a/openair2/LAYER2/PROTO_AGENT/proto_agent_common.c b/openair2/LAYER2/PROTO_AGENT/proto_agent_common.c
index d16b9ef9ad..8bb8d8de66 100644
--- a/openair2/LAYER2/PROTO_AGENT/proto_agent_common.c
+++ b/openair2/LAYER2/PROTO_AGENT/proto_agent_common.c
@@ -437,7 +437,7 @@ int proto_agent_pdcp_data_ind(mid_t mod_id, const void *params, Protocol__Flexsp
   
   printf("MSG payload is %u", args->sdu_size);
   
-  //memcpy(pdu->fsp_pdu_data.data, args->sdu_p, args->sdu_size); 
+  memcpy(pdu->fsp_pdu_data.data, args->sdu_p, args->sdu_size); 
   pdu->has_fsp_pdu_data = 1;
   
   // Copy data to the ctxt structure
diff --git a/openair2/LAYER2/RLC/rlc.c b/openair2/LAYER2/RLC/rlc.c
index 775f83654e..66a4b07652 100644
--- a/openair2/LAYER2/RLC/rlc.c
+++ b/openair2/LAYER2/RLC/rlc.c
@@ -653,25 +653,25 @@ void rlc_data_ind     (
     T(T_ENB_RLC_UL, T_INT(ctxt_pP->module_id), T_INT(ctxt_pP->rnti), T_INT(rb_idP), T_INT(sdu_sizeP));
 #endif
 
-  if (!srb_flagP)
-  {
+//   if (!srb_flagP)
+//   {
     proto_agent_send_pdcp_data_ind(ctxt_pP,
     srb_flagP,
     MBMS_flagP,
     rb_idP,
     sdu_sizeP,
     sdu_pP);
-  }
-  else
-  {
-    pdcp_data_ind (
-    ctxt_pP,
-    srb_flagP,
-    MBMS_flagP,
-    rb_idP,
-    sdu_sizeP,
-    sdu_pP);
-  }
+//   }
+//   else
+//   {
+//     pdcp_data_ind (
+//     ctxt_pP,
+//     srb_flagP,
+//     MBMS_flagP,
+//     rb_idP,
+//     sdu_sizeP,
+//     sdu_pP);
+//   }
 }
 //-----------------------------------------------------------------------------
 void rlc_data_conf     (const protocol_ctxt_t* const ctxt_pP,
-- 
2.26.2