From cd74f4d61b20cfacb71a10cea80ba24f6ad85626 Mon Sep 17 00:00:00 2001
From: shahab SHARIAT BAGHERI <shahab.shariat@eurecom.fr>
Date: Sun, 10 Dec 2017 16:19:27 +0100
Subject: [PATCH] Message balance

---
 .../ENB_APP/MESSAGES/V2/config_messages.proto |   2 +-
 .../MESSAGES/V2/control_delegation.proto      |   2 +-
 .../MESSAGES/V2/controller_commands.proto     |   8 +-
 openair2/ENB_APP/MESSAGES/V2/flexran.proto    |  22 +---
 openair2/ENB_APP/MESSAGES/V2/header.proto     |   3 +-
 .../ENB_APP/MESSAGES/V2/mac_primitives.proto  |  37 ------
 .../ENB_APP/MESSAGES/V2/stats_common.proto    | 106 +++++++++---------
 .../ENB_APP/MESSAGES/V2/stats_messages.proto  |  12 +-
 .../ENB_APP/MESSAGES/V2/time_common.proto     |   4 +-
 openair2/ENB_APP/flexran_agent_common.c       |   8 --
 10 files changed, 70 insertions(+), 134 deletions(-)

diff --git a/openair2/ENB_APP/MESSAGES/V2/config_messages.proto b/openair2/ENB_APP/MESSAGES/V2/config_messages.proto
index 657f362873..995865f1ab 100644
--- a/openair2/ENB_APP/MESSAGES/V2/config_messages.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/config_messages.proto
@@ -38,7 +38,7 @@ message flex_cell_config {
 	optional uint32 srs_mac_up_pts = 32;		// Boolean value. See TS 36.211, section 5.5.3.2. TDD only
 	optional uint32 enable_64QAM = 33;		// One of the FLEQ_* enum values
 	optional uint32 carrier_index = 34;		// Carrier component index
-	optional uint32 dl_freq = 35;       // operating downlink frequency 
+	optional uint32 dl_freq = 35;        // operating downlink frequency
 	optional uint32 ul_freq = 36;       // operating uplink frequency 
 	optional uint32 eutra_band= 37;       // operating band 
 	optional int32 dl_pdsch_power = 38;       // operating downlink power 
diff --git a/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto b/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto
index 0f7e34de15..ef0eea3bd2 100644
--- a/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto
@@ -3,4 +3,4 @@ package protocol;
 
 enum flex_control_delegation_type {
      FLCDT_MAC_DL_UE_SCHEDULER = 1;		// DL UE scheduler delegation
-}
\ No newline at end of file
+}
diff --git a/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto b/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto
index eeda90b8cb..6f30ea4755 100644
--- a/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto
@@ -4,7 +4,7 @@ package protocol;
 import "mac_primitives.proto";
 
 //
-// Body of UE DL/UL MAC scheduling configuration info
+// Body of UE DL MAC scheduling configuration info
 //
 
 message flex_dl_data {
@@ -16,12 +16,6 @@ message flex_dl_data {
 	optional uint32 act_deact_ce = 6; //Hex content of MAC CE for Activation/Deactivation in CA
 }
 
-
-message flex_ul_data {
-	optional uint32 rnti = 1;
-  	optional flex_ul_dci ul_dci = 2;
-}
-
 //
 // Body of the RAR scheduler configuration
 //
diff --git a/openair2/ENB_APP/MESSAGES/V2/flexran.proto b/openair2/ENB_APP/MESSAGES/V2/flexran.proto
index 18eb760cc3..45a139b73a 100644
--- a/openair2/ENB_APP/MESSAGES/V2/flexran.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/flexran.proto
@@ -8,6 +8,7 @@ import "config_messages.proto";
 import "controller_commands.proto";
 import "control_delegation.proto";
 
+
 message flexran_message {
        optional flexran_direction msg_dir = 100;
 	oneof msg {
@@ -24,12 +25,11 @@ message flexran_message {
 	      flex_ue_config_reply ue_config_reply_msg = 11;
 	      flex_lc_config_request lc_config_request_msg = 12;
 	      flex_lc_config_reply lc_config_reply_msg = 13;
-	      flex_dl_mac_config dl_mac_config_msg = 14;	      
+	      flex_dl_mac_config dl_mac_config_msg = 14;
 	      flex_ue_state_change ue_state_change_msg = 15;
 	      flex_control_delegation control_delegation_msg = 16;
 	      flex_agent_reconfiguration agent_reconfiguration_msg = 17;
 	      flex_rrc_triggering rrc_triggering = 18;
-	      flex_ul_mac_config ul_mac_config_msg = 19;
 	}
 }
 
@@ -166,22 +166,6 @@ message flex_dl_mac_config {
 	repeated flex_pdcch_ofdm_sym_count ofdm_sym = 6; // OFDM symbol count for each CC
 }
 
-
-message flex_ul_mac_config {
-	optional flex_header header = 1;
-    optional uint32 sfn_sf = 2;
-    repeated flex_ul_data ul_ue_data = 3;
-}
-
-
-message flex_rrc_triggering {
-
-  optional flex_header header = 1;
-  optional string rrc_trigger = 2;        
-}
-
-
-
 //
 // UE state change message
 //
@@ -209,7 +193,7 @@ message flex_control_delegation {
 
 message flex_agent_reconfiguration {
 	optional flex_header header = 1;
-	optional string policy = 2;		// The policy changes using YAML syntax in string format
+	optional string policy = 2;		// The policy changes using YAML syntax in string format    
 }
 
 // Extensions of the echo request and reply
diff --git a/openair2/ENB_APP/MESSAGES/V2/header.proto b/openair2/ENB_APP/MESSAGES/V2/header.proto
index 4f03e0755e..12110de24e 100644
--- a/openair2/ENB_APP/MESSAGES/V2/header.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/header.proto
@@ -33,7 +33,7 @@ enum flex_type {
 
      //Controller command messages
      FLPT_DL_MAC_CONFIG = 13;
-     
+
      // UE state change messages
      FLPT_UE_STATE_CHANGE = 14;
 
@@ -41,6 +41,5 @@ enum flex_type {
      FLPT_DELEGATE_CONTROL = 15;
      FLPT_RECONFIGURE_AGENT = 16;
      FLPT_RRC_TRIGGERING = 17;
-     FLPT_UL_MAC_CONFIG = 18;
 }
 
diff --git a/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto b/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto
index a34e9b6eaf..d3acb51318 100644
--- a/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto
@@ -36,37 +36,6 @@ message flex_dl_dci {
 	optional uint32 cif = 27;     		// CIF for cross-carrier scheduling
 }
 
-message flex_ul_dci {
-	optional uint32 rnti = 1;
-	optional uint32 rb_start = 2;		// The start RB allocated to the UE 
-	optional uint32 rb_len = 3;		// The number of RBs allocated to the UE
-	optional uint32 mcs = 4;		// Modulation and coding scheme
-	optional uint32 cyclic_shift2 = 5;	//  match DCI format 0/4 PDU 
-	optional uint32 freq_hop_flag = 6;   	// 0 no hopping, 1 hoppping
-	optional uint32 freq_hop_map = 7;	// Frequency hopping bits (0..4) 
-	optional uint32 ndi = 8;		// New data indicator
-  	optional uint32 rv = 9;			// Redundancy version
-  	optional uint32 harq_pid = 10; 		//  The harq process id
-	optional uint32 ultx_mode = 11; 	//  A FLULM_* value
-  	optional uint32 tbs_size = 12;		// The size of each TBS
-	optional uint32 n_srs = 13;    		// Overlap indication with srs
-  	optional uint32 res_alloc = 14;		// Type of resource allocation
-  	optional uint32 size = 15;    // Size of the ULSCH PDU in bytes for UL Grant.
-
-	optional uint32 dai = 16;      		// TDD only
-
-//	optional uint32 tb_swap = 17;	 	// Boolean. TB to codeword swap flag
-
-//	optional uint32 pdcch_order = 19;
-//	optional uint32 preamble_index = 20;	// Only valid if pdcch_order = 1
-//	optional uint32 prach_mask_index = 21;	// Only valid if pdcch_order = 1
-	
-//	optional uint32 tbs_idx = 23;		// The TBS index for Format 1A
-	
-
-
-
-}
 
 //
 // Messages related to the creation of RLC PDUs
@@ -107,9 +76,3 @@ enum flex_ngap_val {
      FLNGV_1 = 0;
      FLNGV_2 = 1;
 }
-
-enum flex_mod_type {
-    FLMOD_QPSK = 2; 
-    FLMOD_16QAM = 4;
-    FLMOD_64QAM = 6;
-}
diff --git a/openair2/ENB_APP/MESSAGES/V2/stats_common.proto b/openair2/ENB_APP/MESSAGES/V2/stats_common.proto
index a7d78841a3..35550c3733 100644
--- a/openair2/ENB_APP/MESSAGES/V2/stats_common.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/stats_common.proto
@@ -183,83 +183,87 @@ message flex_noise_interference_report {
 }
 
 //
-// RRC Primitives
+// RRC Measurements Primitives
 //
+
+
 message flex_rrc_measurements {
-       // Measurement identifier.
-       optional int32 measid = 1;
-       // Primary Cell Reference Signal Received Power (RSRP).
-        optional int32 pcell_rsrp = 2;
-        // Primary Cell Reference Signal Received Quality (RSRQ).
-        optional int32 pcell_rsrq = 3;
-       // Neighboring cells measurements performed by UE.
-        optional flex_neigh_cells_measurements neigh_meas = 4;
+	// Measurement identifier.
+	optional int32 measid = 1;
+	// Primary Cell Reference Signal Received Power (RSRP).
+	optional int32 pcell_rsrp = 2;
+	// Primary Cell Reference Signal Received Quality (RSRQ).
+	optional int32 pcell_rsrq = 3;
+	// Neighboring cells measurements performed by UE.
+	optional flex_neigh_cells_measurements neigh_meas = 4;
 }
 
 message flex_neigh_cells_measurements {
-        // Neighboring EUTRA cells measurements.
-        repeated flex_eutra_measurements eutra_meas = 1;
+	// Neighboring EUTRA cells measurements.
+	repeated flex_eutra_measurements eutra_meas = 1;
 }
 
 message flex_eutra_measurements {
-        // Physical Cell identifier.
-        optional int32 phys_cell_id = 1;
-        // EUTRA Cell Global Identity (CGI) measurement.
-        optional flex_eutra_cgi_measurements cgi_meas = 2;
-        // EUTRA nearby cell reference signal measurement.
-        optional flex_eutra_ref_signal_meas meas_result = 3;
+	// Physical Cell identifier.
+	optional int32 phys_cell_id = 1;
+	// EUTRA Cell Global Identity (CGI) measurement.
+	optional flex_eutra_cgi_measurements cgi_meas = 2;
+	// EUTRA nearby cell reference signal measurement.
+	optional flex_eutra_ref_signal_meas meas_result = 3;
 }
 
 message flex_eutra_cgi_measurements {
-        // EUTRA Cell Global Identity (CGI).
-        optional flex_cell_global_eutra_id cgi = 1;
-        // Tracking area code of the neighbor cell.
-        optional uint32 tracking_area_code = 2;
-        // Public land mobile network identifiers of neighbor cell.
-        repeated flex_plmn_identity plmn_id = 3;
+	// EUTRA Cell Global Identity (CGI).
+	optional flex_cell_global_eutra_id cgi = 1;
+	// Tracking area code of the neighbor cell.
+	optional uint32 tracking_area_code = 2;
+	// Public land mobile network identifiers of neighbor cell.
+	repeated flex_plmn_identity plmn_id = 3;
 }
 
 message flex_cell_global_eutra_id {
-       // Public land mobile network identifier of neighbor cell.
-        optional flex_plmn_identity plmn_id = 1;
-        // Cell identifier of neighbor cell.
-        optional uint32 cell_id = 2;
+	// Public land mobile network identifier of neighbor cell.
+	optional flex_plmn_identity plmn_id = 1;
+	// Cell identifier of neighbor cell.
+	optional uint32 cell_id = 2;
 }
 
 message flex_plmn_identity {
-        // Mobile Network Code (MNC).
-        repeated uint32 mnc = 1;
-        // Mobile Country Code (MCC).
-        repeated uint32 mcc = 2;
-        // tracking area code        
-        repeated uint32 tac = 3;
-}        
+	// Mobile Network Code (MNC).
+	repeated uint32 mnc = 1;
+	// Mobile Country Code (MCC).
+	repeated uint32 mcc = 2;
+	// tracking area code 
+	repeated uint32 tac = 3;
+}
 
 message flex_eutra_ref_signal_meas {
-        // Neighboring Cell Reference Signal Received Power (RSRP).
-        optional int32 rsrp = 1;
-        // Neighboring Cell Reference Signal Received Quality (RSRQ).
-        optional int32 rsrq = 2;
-
+	// Neighboring Cell RSRP
+	optional int32 rsrp = 1;
+	// Neighboring Cell RSRQ	
+	optional int32 rsrq = 2;
 }
 
+//
+// PDCP Statistics
+//
+
 message flex_pdcp_stats {
 
-        optional uint32 pkt_tx = 1;
-        optional uint32 pkt_tx_bytes = 2;
-        optional uint32 pkt_tx_sn = 3;
-        optional uint32 pkt_tx_rate_s = 4;
+	optional uint32 pkt_tx = 1;
+	optional uint32 pkt_tx_bytes = 2;
+	optional uint32 pkt_tx_sn = 3;
+	optional uint32 pkt_tx_rate_s = 4;
 	optional uint32 pkt_tx_throughput_s = 5;
-        optional uint32 pkt_tx_aiat = 7;
+	optional uint32 pkt_tx_aiat = 7;
 	optional uint32 pkt_tx_aiat_s = 8;
 	
 	optional uint32 pkt_rx = 9;
-        optional uint32 pkt_rx_bytes = 10;
-        optional uint32 pkt_rx_sn = 11;
-        optional uint32 pkt_rx_rate_s = 12;
+	optional uint32 pkt_rx_bytes = 10;
+	optional uint32 pkt_rx_sn = 11;
+	optional uint32 pkt_rx_rate_s = 12;
 	optional uint32 pkt_rx_goodput_s = 13;
-        optional uint32 pkt_rx_aiat = 14;
+	optional uint32 pkt_rx_aiat = 14;
 	optional uint32 pkt_rx_aiat_s = 15;
-        optional uint32 pkt_rx_oo = 16;
- }
-
+	optional uint32 pkt_rx_oo = 16;
+}
diff --git a/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto b/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto
index 8cad6f4fbe..b8126c55f2 100644
--- a/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto
@@ -47,8 +47,8 @@ message flex_ue_stats_report {
 	optional flex_dl_cqi_report dl_cqi_report = 7;
 	optional flex_paging_buffer_report pbr = 8;
 	optional flex_ul_cqi_report ul_cqi_report = 9;
-        optional flex_rrc_measurements rrc_measurements = 10;
-        optional flex_pdcp_stats pdcp_stats = 11;
+	optional flex_rrc_measurements rrc_measurements = 10;
+    optional flex_pdcp_stats pdcp_stats = 11;
 }
 
 //
@@ -85,9 +85,9 @@ enum flex_ue_stats_type {
      FLUST_DL_CQI = 16;
      FLUST_PBS = 32;
      FLUST_UL_CQI = 64;
-     
-     FLUST_PDCP_STATS = 1024; // To be changed
-     // To be extended with more types of stats
+
+     FLUST_PDCP_STATS = 1024;     
      FLUST_RRC_MEASUREMENTS = 65536;
-     
+     // To be extended with more types of stats
+    
 }
diff --git a/openair2/ENB_APP/MESSAGES/V2/time_common.proto b/openair2/ENB_APP/MESSAGES/V2/time_common.proto
index baf0c0e9ae..6c0affbe51 100644
--- a/openair2/ENB_APP/MESSAGES/V2/time_common.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/time_common.proto
@@ -25,7 +25,7 @@ message flex_ul_info {
 	repeated uint32 ul_reception = 2;
 	optional uint32 reception_status = 3;
 	optional uint32 tpc = 4;
-	optional uint32 serv_cell_index = 5; 
-        optional uint32 rssi = 6;
+	optional uint32 serv_cell_index = 5;
+	optional uint32 rssi = 6;
 }
 
diff --git a/openair2/ENB_APP/flexran_agent_common.c b/openair2/ENB_APP/flexran_agent_common.c
index e56ebdfd22..386dd18f1e 100644
--- a/openair2/ENB_APP/flexran_agent_common.c
+++ b/openair2/ENB_APP/flexran_agent_common.c
@@ -387,7 +387,6 @@ int flexran_agent_control_delegation(mid_t mod_id, const void *params, Protocol_
   Protocol__FlexControlDelegation *control_delegation_msg = input->control_delegation_msg;
 
   //  struct timespec vartime = timer_start();
-  int status;
   //Write the payload lib into a file in the cache and load the lib
   char lib_name[120];
   char target[512];
@@ -395,13 +394,6 @@ int flexran_agent_control_delegation(mid_t mod_id, const void *params, Protocol_
   strcpy(target, local_cache);
   strcat(target, lib_name);
   
-  status = mkdir(local_cache, S_IRWXU | S_IRWXG | S_IRWXO);
-
-  if (status < 0){
-
-     LOG_W(ENB_APP, "Couldn't create local cache!");
-  }
-
   FILE *f;
   f = fopen(target, "wb");
   fwrite(control_delegation_msg->payload.data, control_delegation_msg->payload.len, 1, f);
-- 
GitLab