aboutsummaryrefslogtreecommitdiffstats
path: root/tests/sgsn
AgeCommit message (Collapse)AuthorFilesLines
2019-09-02Move out sgsn to its own subdirPau Espin Pedrol1-22/+22
Change-Id: I16fccc0eadf588599b9e5578d0f4dbaf9df81737
2019-09-02Introduce FSM mm_state_iu_fsmPau Espin Pedrol1-0/+1
Implement TS 23.060 6.1.2 Mobility Management States (Iu mode) using osmocom FSM and drop old implementation. Most of the logic on each state is still kept in gprs_gmm.c, will be inserted into the FSM later. Change-Id: I4c9cf8c27194817c56e8949af0205e1cc14af317
2019-09-02Introduce FSM mm_state_gb_fsmPau Espin Pedrol1-0/+1
Implement TS 23.060 6.1.1 Mobility Management States (A/Gb mode) using osmocom FSM and drop old implementation. Most of the logic on each state is still kept in gprs_gmm.c, will be inserted into the FSM later. Change-Id: I04004423e993107374d5a3549b8a93ac169251dd
2019-09-02Move llc->MM/SM Gb specific glue code to its own filePau Espin Pedrol1-0/+1
Now that we have RANAP/Iu handling specificities in its own file, let's have also Gb specific glue code for messages coming from llc up to MM/SM layer in its own file. This way same entry points in gprs_gmm.c are used by Gb and Iu: gsm0408_rcv_gmm() (for MM) and gsm0408_rcv_gsm() (for SM). Change-Id: Iaf57922a0970c1d03f6f1d6337d27ae3d4aaf32c
2019-09-02Move lots of Iu/ranap specific code into its own filePau Espin Pedrol1-0/+1
RANAP related functionalities were splitted among several files (gprs_gmm.c, gprs_sgsn.c and sgsn_libgtp.c). Let's move it into its own file to shrink complexity/size of existing files. It also allows to keep a lot of conditionally enabled code (BUILD_IU) and its dependencies (osmo-iuh) together. Change-Id: I549042aaff045a378de77d657cc396ee08f22f33
2019-08-20Replace own timer infra with libosmocore osmo_tdefPau Espin Pedrol1-0/+7
VTY command "show timer" is also available now. Change-Id: Ia0cf5f0a49737fbc419e2ccc86312d01c6e0056e
2019-05-11gprs_gmm: send Service Reject when no PDP ctxs are available.efistokl2-0/+18
Look at PDP Context Status IE: if there are any PDP contexts which are ACTIVE on MS side and there are no PDP contexts which are ACTIVE on the network side, then send Service Reject with the cause "NO PDP ACTIVATED". This forces MS to reactivate the PDP contexts. 3GPP TS 24.008 Section 4.7.13.4 Service request procedure not accepted by the network. Cause # 40. Fixes: OS#3937 Change-Id: If610cbef17c25ec44e65d4f1b2340d102c560437
2018-12-11Use explicit parameter for sgsn_auth_init()Max1-1/+1
This is necessary to properly test ACLs in follow-up patches. Change-Id: Ibeba371234680f33ad35afbfffce9dca185228c1
2018-10-30Remove local libgsupclient; Use libosmo-gsup-client from osmo-hlrHarald Welte2-13/+14
osmo-hlr has recently (as of Change-Id Iad227bb477d64da30dd6bfbbe1bd0c0a55be9474) a working shared library implementation of libosmo-gsup-client. We can remove the local implementation in osmo-sgsn and use the system-installed shared library instead. Change-Id: I6f542945403cf2e3ddac419186b09ec0e2d43b69
2018-10-30Update wrong references to bsc in sgsn codePau Espin Pedrol1-3/+3
Change-Id: I93f0dc721c2eff8a87fb9248882f24768f708713
2018-09-13gprs_gmm: introduce a GMM Attach Request FSMAlexander Couzens1-0/+1
The old GMM Attach Request handling used a recursive function which can not handle certain states and is quite complex and hard to extend. The new FSM handles such request in a FSM and can be called multiple times. Change-Id: I58b9c17be9776a03bb2a5b21e99135cfefc8c912
2018-09-13tests: remove gmm unit testsAlexander Couzens2-836/+0
The test cases now implemented by TTCN3 which should not be as fragile as the unit tests. Because the unit tests expect a quite strong internal state to be happen. Change-Id: Iac1c8854b5ea4aa03279990390ebc110c979aac2
2018-07-30migrate to oap_client in libosmogsmHarald Welte1-1/+0
libosmogsm in libosmocore.git from Change-Id Ie36729996abd30b84d1c30a09f62ebc6a9794950 onwards contains oap_client.c, so we don't need our local copy here in this repo anymore. Change-Id: I7b194f98ef3f925b6178d8a8dbd9fcf2f0c6e132 Requires: libosmocore.git Change-Id Ie36729996abd30b84d1c30a09f62ebc6a9794950
2018-05-01GERAN: allow GSM SRES on UMTS AKA challengeNeels Hofmeyr1-1/+1
Store the established security context type (GSM or UMTS) instead of the boolean flag is_authenticated. Provide the previous boolean query with thin sgsn_mm_ctx_is_authenticated() function. Knowing which security context was established will be necessary for OS#3224, i.e. using the proper ciphering key, which is not yet tested properly, and probably not correct at this stage. This change will make new SGSN_Tests.TC_attach_umts_aka_gsm_sres pass. Related: OS#3193 OS#3224 Change-Id: I36807bad3bc55c0030d4f09cb2c369714f24bec7
2018-04-16use osmo_init_logging2(), fix regression test memleaksNeels Hofmeyr1-1/+1
Particularly gbproxy_test.c had various mem leaks, which (will) show up with gcc (Debian 7.3.0-15) 7.3.0 address sanitizer. Fix those leaks to verify that we don't have memleaks in the production code. Change-Id: Ia4204c8b3d895b42c103edecb61b99d3d22bd36f
2018-02-21sgsn_test: guard against struct gprs_ra_id changingNeels Hofmeyr1-3/+3
sgsn_test initializes various struct gprs_ra_id without naming the actual members, which is vulnerable to struct member re-ordering. Name the members explicitly. An upcoming ABI change in libosmocore would cause test failures here without this patch. Change-Id: I517ed9edf77fac37d9de7a39df24c419a8a65d96
2018-01-16fix build: missing LIBGTP_CFLAGS in sgsn_testNeels Hofmeyr1-0/+1
Change-Id: I250cadecaf90238df1afa6997e5d165fb9eee8b6
2018-01-07cosmetic: tests: sgsn_test: Use proper formatting and remove uneeded semicolonsPau Espin Pedrol1-6/+7
Change-Id: I144175b89f8058f6f8dedfa931c6768d9c43b70e
2018-01-07tests: sgsn_test: Define wrap APIs with correct parametersPau Espin Pedrol1-4/+8
Fixes following compilation warnings: osmo-sgsn/tests/sgsn/sgsn_test.c: In function ‘test_gmm_attach_subscr’: osmo-sgsn/tests/sgsn/sgsn_test.c:1110:30: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types] subscr_request_auth_info_cb = my_subscr_request_auth_info; ^ osmo-sgsn/tests/sgsn/sgsn_test.c: In function ‘test_gmm_attach_subscr_fake_auth’: osmo-sgsn/tests/sgsn/sgsn_test.c:1144:30: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types] subscr_request_auth_info_cb = my_subscr_request_auth_info_fake_auth; ^ osmo-sgsn/tests/sgsn/sgsn_test.c: In function ‘test_gmm_attach_subscr_gsup_auth’: osmo-sgsn/tests/sgsn/sgsn_test.c:1275:30: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types] subscr_request_auth_info_cb = my_subscr_request_auth_info_gsup_auth; ^ Change-Id: I5fcb3d460d8becb4cc917fc8d27bfc7e49d50b90
2017-12-27Migrate from OpenSSL to osmo_get_rand_id()Max2-11/+10
This avoids potential licensing incompatibility and makes integration of Debian packaging patches easier. The libosmocore version requirements are fine already but for jenkins tests to pass we have to have Ic77866ce65acf524b768882c751a4f9c0635740b merged into libosmocore master. Related: OS#1694 Change-Id: I2b687b7f07ef05bbd861b8479cad5a958a3dde92
2017-09-06move include/openbsc to include/osmocom/sgsnNeels Hofmeyr1-8/+8
Change-Id: I281ef585fffc2644682c8282224fb1c2da5ca795
2017-08-30split off osmo-sgsn: remove files, apply build1.1.0Neels Hofmeyr1-1/+2
Change-Id: I5d27ff93e56cd13e0e70edd15e2080201e35e91f
2017-08-30move libiu to osmo-iuh/libosmo-ranapNeels Hofmeyr1-1/+0
Remove libiu here, use the functions from libosmo-ranap instead, by applying the ranap_ / RANAP_ prefix. Corresponding change-id in osmo-iuh.git is I6a3f7ad15be03fb94689b4af6ccfa828c25f45c0 To be able to run the msc_vlr tests for RAN_UTRAN_IU without Iu client headers available, add iu_dummy.h, containing mere function signatures that match iu_dummy.c and a mostly empty struct ranap_ue_conn_ctx. Make sure we can build with and without --enable-iu: include osmo-iuh headers only with --enable-iu. Change-Id: Ib8c4fcdb4766c5e575618b95ce16dce51063206b
2017-08-27sgsn_test: Fix wrong definition of wrap funcPau Espin Pedrol1-5/+5
Commit 058cd573d8 added 2 new pointer parameters to gprs_subscr_request_auth_info, but forgot to update wraps of the function in sgsn_test. I catched this today because openbsc build test sgsn_test was failing. Closed look up to the logs showed: Assert failed (auts != NULL) == (auts_rand != NULL) openbsc/openbsc/src/gprs/gprs_subscriber.c:791 Change-Id: Ie9e4af6da0339536fb20ca0b7bbcf6f485bd522c
2017-08-27move openbsc/* to repos rootNeels Hofmeyr3-0/+2614
This is the first step in creating this repository from the legacy openbsc.git. Like all other Osmocom repositories, keep the autoconf and automake files in the repository root. openbsc.git has been the sole exception, which ends now. Change-Id: I9c6f2a448d9cb1cc088cf1cf6918b69d7e69b4e7