Commit Graph
2183 Commits
Author SHA1 Message Date
Michael Cook 27c40d563f build_oai: Add --sanitize-address option
To enable -fsanitize=address option to the compiler
which enables run-time checks for some kinds of memory
mismanagement.
2021-03-01 09:10:50 -08:00
Michael Cook 8988d8ef8c Revert change that enabled -fsanituze=address 2021-03-01 08:26:59 -08:00
Michael Cook 706f0e4421 pdcp_fifo_flush_sdus: Fix message size calculation
-fsanitize=address detected that we were trying to access bytes
past the end of a block of malloc'ed memory.

Specifically, in this code:

```
    } else if (ENB_NAS_USE_TUN) {
      if( LOG_DEBUGFLAG(DEBUG_PDCP) )
        log_dump(PDCP, pdcpData, sizeToWrite, LOG_DUMP_CHAR,"PDCP
      output to be sent to TUN interface: \n");
      ret = write(nas_sock_fd[0], pdcpData, sizeToWrite);
```

-fsanitize=address said:

```
==80==ERROR: AddressSanitizer: heap-buffer-overflow on address
0x61100004ffdc at pc 0x7f57c5f576a5 bp 0x7f57bb53c240 sp
0x7f57bb53b9e8
READ of size 108 at 0x61100004ffdc thread T7

0x61100004ffdc is located 0 bytes to the right of 220-byte region
[0x61100004ff00,0x61100004ffdc)
```

So, the code was trying to access the first byte after a block of
heap memory.

sizeToWrite was calculated like this:

```
    int sizeToWrite= sizeof (pdcp_data_ind_header_t) +
      pdcpHead->data_size;
```

There were a few other similar invocations of write() in the same
function used the wrong size.  That sizeToWrite calculation
should be used only when the header is being sent, too, which
happens in only one place in this function.

With this commit, our tests pass and -fsanitize=address is happy.
2021-02-28 07:39:33 -08:00
Melissa Elkadi 8b2b78e477 Fixed remote_addr.sin_port
For some reason the htons invocation got deleted which broke
the VNF P7 interface.

Also fixed some build issues, not sure how these got onto the
develop branch to begin with.
2021-02-26 15:57:35 -08:00
Melissa Elkadi 98c8ddb673 Merge remote-tracking branch 'origin/develop' into episys-merge
Removing references to memcpy_dl_config_req and
memcpy_tx_req because these functions are leaking
memory. For our standalone mode we have created
new/modified memcpy_dl/tx_req functions.
2021-02-24 11:49:17 -08:00
hardy accae67113 Merge remote-tracking branch 'origin/nr-pdcp-nea2-security' into integration_2021_wk08 2021-02-23 09:31:05 +01:00
hardy 90d6a57a3c Merge remote-tracking branch 'origin/NR_UL_SCFDMA_100MHz' into integration_2021_wk08 2021-02-23 09:30:22 +01:00
Cedric Roux 10e021e96d NSA: first draft of nea2 security for gNB
The code is forced to use nea2, no matter what the UE supports.

After 2^18 PDCP packets, it will fail to work (we don't use HFN yet).

These limitations will be fixed in later commits.

The existing security function was not reused, because it does too
much memory allocation and initializes the security context at each
ciphering. So here comes nr_pdcp_security_nea2_cipher(). And also
the ciphering is done inplace. To be changed if necessary.
2021-02-15 15:25:47 +01:00
Raymond Knopp a446eb0ebc Merge branch 'episys/master' into episys-merge
Conflicts:
	common/utils/LOG/log.h
	common/utils/ocp_itti/intertask_interface.cpp
	nfapi/oai_integration/nfapi_vnf.c
	nfapi/open-nFAPI/nfapi/src/nfapi.c
	openair2/LAYER2/MAC/main_ue.c
	openair2/LAYER2/PDCP_v10.1.0/pdcp.c
	openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
	openair2/PHY_INTERFACE/phy_stub_UE.c
	openair2/RRC/LTE/rrc_UE.c
	openair2/RRC/LTE/rrc_eNB.c
	openair3/NAS/UE/ESM/esm_ebr_context.c
	targets/COMMON/openairinterface5g_limits.h
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-uesoftmodem.c
2021-02-13 22:52:33 +01:00
Thomas Schlichter 13086925c9 Add tests for 80 and 100 MHz SC-FDMA to nr_ulsim autotests for CI 2021-02-10 11:21:40 +01:00
Mahesh 2d58536c52 Phy simulators build error fixed 2021-02-09 02:11:54 +05:30
Mahesh 0e6f1e6ad6 Merge conflicts resolved 2021-02-08 18:05:29 +05:30
hardy 663dd1251c Merge remote-tracking branch 'origin/NR_RA_cleanup' into integration_2021_wk05 2021-02-05 12:00:38 +01:00
Xue Song 6a3b7b40a5 Merge branch 'master' into develop_SA_L3
Conflicts:
	openair2/GNB_APP/gnb_config.c
	openair2/RRC/NR/rrc_gNB.c
	openair2/RRC/NR/rrc_gNB_NGAP.c
	openair2/RRC/NR_UE/rrc_UE.c
2021-02-03 14:58:07 +09:00
Mahesh ae422aca1f Merge conficts resolved 2021-02-02 09:36:49 +05:30
Thomas Schlichter bca9f74e66 Merge remote-tracking branch 'develop' into NR_RA_cleanup 2021-01-29 18:52:37 +01:00
hardy 6e12f8f8d3 Merge remote-tracking branch 'origin/nr_ul_scfdma' into integration_2021_wk04_b 2021-01-29 07:40:42 +01:00
hardy 9c810b311d Merge remote-tracking branch 'origin/itti-enhancement' into integration_2021_wk04_b 2021-01-29 07:40:07 +01:00
Xue Song 36487515c4 fix double definition in rrc_gNB_NGAP.c and nr_ngap_gnb.c 2021-01-28 14:20:35 +09:00
Mahesh ca74163cdd OCP build errors resolved. 2021-01-27 11:34:52 +05:30
Thomas Schlichter c107b9b756 Merge remote-tracking branch 'develop' 2021-01-21 18:28:33 +01:00
cig e8989b2015 Moved UE UL scheduling functions to new MAC file
- this commit was necessary because the location of the MAC UE
  functions does not reflect the context in which they are used
- therefore all UL scheduling-related functions have been moved
  to a new nr_ue_scheduler.c file
- and the irrelevant file rar_tools_nrUE.c has been deleted
  (nr_ue_process_rar moved to nr_ue_procedures)
- the new locations are supposed to make the file and functions
  organisations more structured and cleaner
2021-01-20 14:59:52 +01:00
He Shanyun e4ff0d5b31 Merge remote-tracking branch 'remotes/origin/master' into develop_SA_L3 2021-01-20 01:51:32 +00:00
Thomas Schlichter 691ad0bba0 Merge remote-tracking branch 'develop' into nr_ul_scfdma
Conflicts:
	openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
2021-01-15 14:54:37 +01:00
Mahesh 185fcbf7fe Merged latest commit(MR957) 2021-01-15 18:53:02 +05:30
Melissa Elkadi a288e502f0 Cleanup before merge
The clean up includes removing white space changes, adding logs,
adding comments to make various changes more obvious, etc.
2021-01-08 14:31:13 -08:00
Thomas Schlichter 41f319b02a add test cases for UL transform precoding (SC-FDMA) 2021-01-08 17:26:38 +01:00
Wu.Jing f22a779881 Merge branch 'master' into develop_SA_L3 2021-01-07 13:55:40 +09:00
Michael Cook f9898d97e8 gdb.txt: Refine
Based on issues discovered by Zaid
2020-12-29 16:04:21 -05:00
Laurent 42a110338c itti dynamic queue creation, and 64 bits instance id 2020-12-23 13:56:01 +01:00
frtabu d3919b6af4 Merge branch 'develop' into cleanup_softmodem_main 2020-12-22 23:07:54 +01:00
Michael Cook a0ddf3b015 Run lte-softmodem via gdb and vscode
See cmake_targets/gdb.txt for notes
2020-12-22 08:13:53 -05:00
dir a17f00784c NR_SC_FDMA changes
- CDM groups used, multiple DMRS locations tested
- REMOVED compiler define NR_SC_FDMA
- enabled -Z option in ulsim for testing NR SC-FDMA
- Gnb UL Processing of LLRS even if last symbol allocated has no data
- transform precoding Enumerations used
2020-12-21 14:01:59 +02:00
He Shanyun c6cd8f3731 fix build error of phy_sim 2020-12-21 08:05:24 +00:00
Mahesh 024849983a Merge develop(w51 2) to nfapi_nr
Setting of nFAPI mode in NR yet to be updated
2020-12-18 23:26:21 +05:30
Wu.Jing 19118c13d1 Merge branch 'master' into develop_SA_L3 2020-12-18 11:52:59 +09:00
hardy 69cc0767c0 Merge remote-tracking branch 'origin/ldpc_short_codeword_fixes' into integration_2020_wk51_2 2020-12-16 11:09:56 +01:00
hardy 4e0e95aa49 Merge remote-tracking branch 'origin/ci-deploy-docker-compose' into integration_2020_wk51 2020-12-14 13:33:05 +01:00
Remi Hardy e9cf51f58d Merge remote-tracking branch 'origin/bugfix-nr-pdcp-sn-size' into rh_wk50_debug 2020-12-09 13:11:02 +01:00
Remi Hardy 39d1774a11 fixing dependency issue for gNB build 2020-12-09 09:45:10 +01:00
Thomas Schlichter 18bf5b5522 CI: add automatic tests for multiple DMRS positions to nr_dlsim 2020-12-09 09:08:43 +01:00
Raphael Defosseux e0731d54a0 Merge remote-tracking branch 'origin/develop' into ci-deploy-docker-compose 2020-12-04 10:08:40 +01:00
frtabu fdc1049a70 Fix phy simulators compilation, number of threads for dlsch configurable 2020-12-03 23:22:07 +01:00
Mahesh e174ebdc30 Resolved merge conflicts with nfapi_nr_develop 2020-12-02 16:28:18 +05:30
Raphael Defosseux 2d6fea51b3 Merge remote-tracking branch 'origin/oc-docker-october-improvements' into ci-deploy-docker-compose 2020-12-01 10:09:02 +01:00
Cedric Roux f36a1ef93f nr pdcp: use pdcp config
There was a problem with SN size. It was hardcoded to 12 bits (so max
sn = 4095) but we configure the UE with 18 bits. After a while, iperf
didn't work anymore because of this (what a surprise!).

So let's get the correct value from pdcp_Config.

And while we're at it, let's store also discard_timer and t_reordering
that will be used later by a proper NR PDCP layer (which is currently
work in progress).
2020-11-29 07:41:26 +01:00
hardy b16d7b2eed Merge remote-tracking branch 'origin/NR_mac_uci_functions_rework' into integration_2020_wk48_2 2020-11-25 18:15:43 +01:00
hardy 40085ad064 Merge remote-tracking branch 'origin/nr_dl_ul_ptrs' into integration_2020_wk48_2 2020-11-25 12:23:55 +01:00
Thomas Schlichter 6803e78ceb Merge remote-tracking branch 'develop'
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_dlsch.c
	openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c
	openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c
	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
	openair2/RRC/NR/nr_rrc_proto.h
2020-11-24 16:58:58 +01:00
hardy 865888b3d8 Merge remote-tracking branch 'origin/nr_prach_fr2' into integration_2020_wk48_2 2020-11-24 15:26:59 +01:00