Commit Graph

95 Commits

Author SHA1 Message Date
Andre Puschmann 7145cd2358 fix padding BSR generation and add test for it 2019-06-26 17:57:25 +02:00
Andre Puschmann db224335a7 add MUX step function for PBR counting 2019-06-26 17:57:25 +02:00
Andre Puschmann 2dfc6698eb add MAC tests 2019-06-26 17:57:25 +02:00
Francisco Paisana 8f8d9f3f30 applied changes in the stack internal method naming 2019-06-21 13:01:41 +02:00
Francisco Paisana ce29ed545d moved mac thread to the stack. Protect the interface of the stack with PHY and gateway via a queue of tasks 2019-06-21 13:01:41 +02:00
Francisco Paisana 46d298fd9a formatting 2019-06-20 15:26:52 +02:00
Francisco Paisana 10a56e2a84 moved GW out of the UE stack. This is important to keep concurrency out of the stack once it becomes single-threaded 2019-06-20 15:26:52 +02:00
Andre Puschmann 2b7b4d0e7e remove hard-coded LCID for dedicated bearer in GW 2019-06-07 21:40:03 +02:00
Pedro Alvarez 7a184a8cd8 Added log to tft_packet_filter. 2019-06-07 21:40:03 +02:00
Pedro Alvarez 39f5b03674 Removed empty line. Changed comment. Removed unused variables. 2019-06-07 21:40:03 +02:00
Pedro Alvarez 2723aa9b12 Added EPS bearer id to apply_tft interface. Sending packets to the correct LCID if they match the packet filter. 2019-06-07 21:40:03 +02:00
Pedro Alvarez 684ee2834e Starting to add ToS field checking to tft_packet_filter. 2019-06-07 21:40:03 +02:00
Pedro Alvarez 40dd3e332c Added logic and test to match IPv4 local address 2019-06-07 21:40:03 +02:00
Pedro Alvarez 0f6c55023b Adding logic and testing for single remote port matching. 2019-06-07 21:40:03 +02:00
Pedro Alvarez 326aef4431 Added match logic for local UDP port. Starting to add logic for remote UDP port. 2019-06-07 21:40:03 +02:00
Pedro Alvarez ccf404f12b Fix in getting filter information for local port. 2019-06-07 21:40:03 +02:00
Pedro Alvarez ede5f3318b Remove test function that is no longer used. 2019-06-07 21:40:03 +02:00
Pedro Alvarez 190a0ff37e Adding test to unpacking of the packet filters. 2019-06-07 21:40:03 +02:00
Pedro Alvarez a7e0a0624b Starting to add interface apply_traffic_flow_template between NAS and GW. 2019-06-07 21:40:03 +02:00
Pedro Alvarez d3761ccee5 Added some basic test of NAS activate dedicated EPS bearer context request handling. 2019-06-07 21:40:03 +02:00
Pedro Alvarez d67d18cc6b Removing deplicated error codes. 2019-06-07 13:51:56 +02:00
Andre Puschmann 3f613d7183 nas/gw/rrc: make LCID for DRB dynamic
- add interface to RRC to allow NAS to query the DRB for a given
  EPS bearer id
- extend interface for NAS to setup GW to also pass LCID of bearer
- in NAS, use this new interface to pass actual LCID of the default
  DRB when creating the TUN device
2019-06-05 20:50:52 +02:00
Andre Puschmann 34bf738501 nas: add test for dedicated EPS bearer handling 2019-05-30 13:05:02 +02:00
Andre Puschmann 65f50cd7ba introduce new UE layer design
- abstract UE object now consists of a radio, a PHY, and a stack layer
- add new stack abstraction layer that combines MAC, RLC, RRC, PDCP, NAS and GW
- PHY layer now has a single stack interface and does not talk to MAC and RRC seperatly
2019-05-17 17:46:28 +02:00
Andre Puschmann 3a6dd9b164 move UE RRC into own folder 2019-05-17 17:25:50 +02:00
Francisco Paisana 3bedc93ba5 added _t to unique_byte_buffer type 2019-05-16 12:35:01 +02:00
Francisco Paisana f469e2178b replaced byte_buffer_t allocated by the buffer pool for unique_byte_buffer which is safer and easier to use 2019-05-16 12:35:01 +02:00
Andre Puschmann 4b01a2e4a0 update copyright notice 2019-04-29 09:20:02 +02:00
Ismael Gomez 7780b1aba5 add tdd/ca support 2019-04-25 20:57:58 +02:00
Andre Puschmann 0aef6f8d4a fix various uninitialized variables 2019-02-10 09:08:06 +01:00
Andre Puschmann c8f8c16d50
make EIA and EEA algorithms configurable (#323)
this patch allows to configure the EIA and EEA algorithms
the UE uses and announces during attach. They can
be specified as a comma-separated list.

The patch also removes a dedicated NAS config class and uses
the default nas_args_t type for this. There was a full
duplication of members before.

The patch also converts nas_args_t and usim_args_t into a class
with a default constructor that initialize all booleans.
2019-02-08 22:37:16 +01:00
Francisco Paisana 0204db2e12 new asn1 rrc library 2019-01-17 17:43:13 +01:00
Andre Puschmann 8326299ec5 fix uninitialized variables 2019-01-15 16:34:41 +01:00
Andre Puschmann 2590ebd10b fix bugs reported by coverity 2019-01-15 15:59:38 +01:00
Andre Puschmann d6196ba234 simplify RRC-NAS interface and only have msg as param (RRC selects LCID) 2018-12-10 17:48:52 +01:00
Andre Puschmann c3441046c9 simplify RLC buffer status query procedures
- add a simple and low-overhead has_data() method to check whether
  an RLC entity has data to transmit or not
- use this method for all calls that are actually not interested
  in the amount of data to send
- use the more expensive get_buffer_state() for all cases where
  the actual size of the buffer is of importance
2018-12-10 17:48:52 +01:00
Andre Puschmann f7bdfdc3a8 in NAS test, use real GW class in attach test 2018-11-15 10:48:47 +01:00
Pedro Alvarez 5c29dba741 Changed Interface between NAS and GW to avoid the GW start function being called twice in IPv4v6 mode. 2018-10-26 11:42:27 +02:00
Pedro Alvarez ac1c300126 Adding the ability to set the interface local link IPv6 address. 2018-10-26 11:42:27 +02:00
Andre Puschmann 3ebf4792de fix missing length reset in NAS test 2018-10-10 16:01:51 +02:00
Andre Puschmann 4a68d0777b fix NAS tests
- Modifications needed after only accepting NAS messages whose integrity check passes
- Turns off loading a (possibly) existing NAS ctxt
- Modifies some test vectors such that they have a zero MAC and counter 0
2018-09-26 10:16:11 +02:00
Pedro Alvarez f301bb6373 Merging next into op_vs_opc and resolving conflicts. 2018-06-26 11:36:40 +01:00
Pedro Alvarez 25aafa1f63 Fixing the USIM test. 2018-06-26 10:49:46 +01:00
Pedro Alvarez 4eb9d1abac Revert "fix USIM test by replacing OP with OPc"
This reverts commit 16b2172e36.
2018-06-19 18:11:26 +01:00
Andre Puschmann 16b2172e36 fix USIM test by replacing OP with OPc 2018-06-13 17:44:34 +02:00
Paul Sutton 2f73b52419 Fixing and disabling faulty tests - asserts only failing in debug 2018-06-12 18:31:37 +01:00
Andre Puschmann 9ce3be974a Merge branch 'next' into embms_merge_final 2018-05-15 22:32:56 +02:00
yagoda 12c9f50ba9 adding upper layer embms support to the UE 2018-05-15 17:20:51 +02:00
Andre Puschmann a30ad8952c fix indent and simplify auth request packing 2018-05-15 12:40:29 +02:00
Andre Puschmann d0457211ad adding support for CHAP auth 2018-05-15 12:40:29 +02:00