summaryrefslogtreecommitdiffstats
path: root/ggsn_tests/GGSN_Tests.ttcn
AgeCommit message (Collapse)AuthorFilesLines
2019-07-03ggsn: Add TC_pdp4_act_deact_ipcp_pap_broken()Harald Welte1-0/+35
This test case reproduces a real-world PCO capture including a broken PAP AuthenticationReq. It triggers some weird behavior in OsmoGGSN 1.3.0 where it would send duplicate IPCP repsonses and no PAP response. Change-Id: Ie89d984ed9e26fbbb2e4914bdb8623446d462a4c Related: OS#3914
2019-05-28ggsn: Add test to verify retransmit queue_respPau Espin Pedrol1-3/+34
Related: OS#3997 Change-Id: I8d937d0af9af8462418b174a54022655f9d77a5f
2019-05-27cosmetic: Update copyright statement, license notice and SPDXHarald Welte1-0/+12
Some of our files didn't have a copyright notice at all, let's add it. Also, update the notices in other files and ensure a SPDX identifier is present in all but the most trivial files. Change-Id: If7fa19ce484b415bc645e39b3d0d666b44b5f0fd
2019-05-10ggsn: Verify that there are no duplicate PCO protocolIDsHarald Welte1-0/+37
Introduce a function to verify there's no duplicate ProtocolIDs in the PCO returned from the GGSN. Change-Id: I9d439dab1696196cd125f4d7113b426f1711a405 Related: OS#3914
2019-03-14ggsn: add tests to validate IPv4v6 pdp ctxOliver Smith1-0/+175
Add related templates based on 3GPP TS 29.060 Figure 37A and create tests based on existing IPv4 and v6 ones. Related: OS#2900 Change-Id: I3bab7df5caddc5c8b973c81544f954d5473ac234
2018-07-19fix TC_pdp4_act_deact_with_separate_dnsStefan Sperling1-3/+2
Do not delete the PDP context too early, and look for the second DNS server in the correct place (2nd match on IPCP protocol, not 1st). Update a comment which talks about a bug which has been fixed. Change-Id: I109491cc9ccb060792e29bf6b2999ef48723edbf Related: OS#3319 Related: OS#3381
2018-07-06ggsn: Apply GPDU seqnum option to all APNsPau Espin Pedrol1-0/+17
Change-Id: I6efe926c8bb7a0056d26e15eefa282266e7bc6ca
2018-07-05GGSN_Tests: test what happens when PCO contains only one DNS entryPhilipp Maier1-0/+82
When the protocol configuration options (PCO) contain an IPCP container then lists only one one DNS server (normally there are two included, a primary and a secondary). Than the parser in osmo-ggsn runs into an endles loop. This testcase tries to provoke this behavior by sending PDP CONTEXT ACTIVATE messages with PCO that contain only a single DNS entry per IPCP container. The hanging of osmo-ggsn is already fixed (see Depends). However when Primary and Secondary DNS are in separate IPCP containers, then only the first IPCP container is parsed (see also OS#3381) Change-Id: I71761e1f9db7ceac3c3df43d2e539f8c8d53c4fc Depends: osmo-msc Icffde89f9bc5d8fcadf6e2dd6c0b4de03440edd5 Closes: OS#3288 Related: OS#3381
2018-04-26ggsn: Disable GTP-U tx sequence number by defaultHarald Welte1-1/+1
GTP-U transmit sequence numbers are entirely optional and probably don't serve any real purpose in real-world deployments. While OsmoGGSN in userspace implements support for it, the kernel GTP-U implementation doesn't. This means a number of tests fail against kernel GTP-U only for that reason. Let's switch all tests to disable GTP-U sequence numbers, and only enable it in one specific test. This way, we can execute the tests also against kernel GTP-U. Related: OS#3215 Change-Id: I666f5276749ef6a1a4dc170a3b9a747f626f6b2c
2018-04-26ggsn: Fix typo: 'gptu' -> 'gtpu'Harald Welte1-7/+7
Change-Id: I1da2e0da6b94dc43c742ec551d3b5de100ce405f
2018-04-06test GGSN support for optional GTP-U sequence numbersStefan Sperling1-5/+71
Add VTY functionality to GGSN tests, and use the VTY to enable/disable GTP-U Tx sequence numbers in the running osmo-ggsn. The GTPU packet template now makes sequence numbers optional. A template created with its sequence number set to 'omit' will result in a packet without a sequence number, i.e. the 'sequence number present' bit in the packet header is cleared, and the sequence number field is omitted from the encoded GTPU T-PDU packet. Re-use the existing TC_pdp4_clients_interact() test for testing the behaviour of osmo-ggsn. This test is now run twice, once with and once without GTP-U Tx sequence numbers. Verify that packets relayed by osmo-ggsn match its "g-pdu tx-sequence-numbers" configuration setting. Change-Id: I1dc299407c61b1c865035add44067b8ab89001b3 Related: OS#2519
2018-04-04document the purpose of IP addresses used by GGSN testsStefan Sperling1-0/+19
The purpose of the various IP addresses used by our GGSN tests is not immediately clear. Add documentation based on the current status quo. Change-Id: I079efcff3dab09d71330625f5b661cd81e42bf38
2018-04-01improve documentation of templates used in GGSN_TestsStefan Sperling1-7/+8
Various improvements to the comments documenting packet templates used in GGSN_Tests: fix IPv4 vs. IPv6 confusion, clearly indicate whether templates are used for sending or for receiving/matching packets, and add a missing comment. Found while studying code to prepare for issue OS#2519. Change-Id: I3bfc21a5ba74e0505457e4874f93501ad7c68b7b Related: OS#2519
2018-02-18ggsn: Move GTP templates to separate GTP_Templates + Add GTP_EmulationHarald Welte1-509/+1
Change-Id: I384e59738a9e0fc0186b69f0806f217a2a8d8a4b
2018-01-31ggsn_tests: Add test to validate if different pdp ctx can talk each otherPau Espin Pedrol1-0/+82
It seems due to the current network configuration, pdp v4 ctx can talk each other while pdp v6 ctx cannot. Change-Id: I67c04b056cc5c092d357abbb084b7665f59eaf3a
2018-01-31ggsn_tests: Add test case to validate packets forwarded vs droppedPau Espin Pedrol1-7/+255
New dependency is required: titan.ProtocolModules.ICMP It tests that ICMP echo packets can be sent successfully (reply is received or otherwise dest unreachable if routing is not set up correctly during the test). It also tests some cases in which osmo-ggsn is required to drop the packets (eg. unknown src ip unrelated to pdp ctx). It also checks that IPv6 packets are dropped in IPv4 pdp ctx and viceversa It also checks that IPv6 packets are dropped in IPv4 pdp ctx and vice versa. Change-Id: Ib9c6043a6cd3b6622782ec7e7fcd2815101755ba
2018-01-29ggsn_tests: Validate DNS PCO valuesPau Espin Pedrol1-2/+32
Change-Id: I54124cb5269c0992e6c72af1a1ecaa8e3202bf05
2018-01-29ggsn_tests: Configure expected GGSN DNS values and improve error messagePau Espin Pedrol1-2/+11
Change-Id: Ie64ca0b4cda22fd358c8c304d5b3909fd9685948
2018-01-26ggsn: Move random number helpers to Osmocom_Types.ttcnHarald Welte1-34/+0
Change-Id: I141289cbf1807e81d72f07ac1183fa48b2dc54af
2017-12-04ggsn: verify IPv4 addr + byte order in IPCP PCO DNS addressesHarald Welte1-1/+1
2017-12-04ggsn: Encode IPCP in IPCP Request, rather than using hard-coded hex stringHarald Welte1-2/+11
We now have a proper definition of IPCP in IPCP_Types and can thus encode/decode on the fly and avoid hand-crafted octetstrings.
2017-12-04ggsn: Verify presence of DNS addresses in IPCP of PCOHarald Welte1-0/+54
If we request DNS in IPCP in PCO, we also expect a corresponding result.
2017-09-21ggsn_tests: Remove incomplete user plane testing codeHarald Welte1-153/+1
In commit 0b7545dff13394fcaac2a9f904fe6858bca7d661 I accidentially committed incomplete support for user plane (GTP-U) testing to the GGSN test. This code has caused the jenkins tests since August 26th to fail, let's revert it until this is fully implemented + tested.
2017-09-07ggsn: Extend IPCP PDP IPv4 test with another PCO protocol beyond IPCPHarald Welte1-0/+3
This is to test for a bug that osmo-ggsn fixed in Icc2e6716c33d78d3c3e000f529806228d8aa155e
2017-08-26sysinfo: Fix the TC_telnet test case VTY command orderHarald Welte1-1/+153
2017-08-25GGSN_Tests: Fix IPv4 PCODNS matchingHarald Welte1-2/+2
2017-08-19GGSN_Tests: Make SGSN and GGSN addresses configurable via moduleparHarald Welte1-8/+18
2017-08-14GGSN_Tests: Verify EUA and PCO in PDP context creationHarald Welte1-1/+58
The EUA and PCO of the created PDP context mustmatc wat we sent in the request.
2017-08-13GGSN_Tests: Comment on each test caseHarald Welte1-0/+6
2017-08-13GGSN_Tests: Actually request the right IPv4 PCO according to the test caseHarald Welte1-9/+49
Missing: Verification of returned PCO
2017-08-13GGSN_Test: Use randomized sequence numbers in every testHarald Welte1-2/+2
2017-08-13GGSN_Tests: remove unneeded ctx argument from f_send_gtpc()Harald Welte1-3/+3
2017-08-13GGSN_Tests: Randomize IMSIs and use different APN for v4 + v6Harald Welte1-7/+38
2017-08-13GGSN_Tests: Make sure f_init() body is traversed only onceHarald Welte1-0/+7
We don't want the sequence numbers to be random-reinitialized on every test case, but only once.
2017-08-13GGSN_Tests: Sequence numbers are node-global and not per-PDP contextHarald Welte1-13/+16
2017-08-09GGSN: Test PDP Context activation wtih different PCOsHarald Welte1-14/+85
2017-08-09GGSN IPv6: Transmit Router Solicit, receive RouterAdv, transmit NeightSolicitHarald Welte1-7/+210
2017-08-05GGSN_Tests: Get it up to PDP Ctx ACT, GTP-U and Ctx DEACTHarald Welte1-40/+126
2017-08-05GGSN_Tests: Add function to send DELETE PDP CONTEXTHarald Welte1-0/+58
2017-08-04GGSN_Tests: Implement GTP-U ping/pong responseHarald Welte1-1/+74
2017-08-04GGSN_Tests: Prepare for separate IPs on control/user planeHarald Welte1-5/+7
2017-08-04GGSN_Tests: Add first functional PDP context activation tests for v4 + v6Harald Welte1-0/+322
2017-08-03initial template for GGSN / GTP test casesHarald Welte1-0/+3