This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Pau Espin Pedrol gerrit-no-reply at lists.osmocom.orgReview at https://gerrit.osmocom.org/3723 Add cipher cfg param for modem and bts This parameter is contains a list of supported encryption ciphers by the modem or bts setting it. It is so far not directly/automatically used inside osmo-gsm-tester code, but can be useful to create scenarios for tests that require specific ciphering modes. For instance, aoip_encryption suite contains tests that require a BTS and a modem that supports a5 0 and a5 1, otherwise tests will fail. Change-Id: Ic0e368843a6e58bd3eeef36d2c0a7501296f0f3e --- M example/default-suites.conf M example/resources.conf A example/scenarios/cipher-a50.conf A example/scenarios/cipher-a51.conf M src/osmo_gsm_tester/resource.py M src/osmo_gsm_tester/schema.py 6 files changed, 45 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/23/3723/1 diff --git a/example/default-suites.conf b/example/default-suites.conf index 0198486..1e8d47a 100644 --- a/example/default-suites.conf +++ b/example/default-suites.conf @@ -6,4 +6,4 @@ - aoip_sms:trx-sysmocell5000 - smpp - aoip_smpp -- aoip_encryption +- aoip_encryption:cipher-a50+cipher-a51 diff --git a/example/resources.conf b/example/resources.conf index f190c2f..51f5a72 100644 --- a/example/resources.conf +++ b/example/resources.conf @@ -13,6 +13,9 @@ ipa_unit_id: 1 addr: 10.42.42.114 band: GSM-1800 + ciphers: + - 'a5 0' + - 'a5 1' - label: Ettus B200 type: osmo-bts-trx @@ -20,6 +23,9 @@ addr: 10.42.42.50 band: GSM-1800 launch_trx: true + ciphers: + - 'a5 0' + - 'a5 1' - label: sysmoCell 5000 type: osmo-bts-trx @@ -27,6 +33,9 @@ addr: 10.42.42.51 band: GSM-1800 trx_remote_ip: 10.42.42.112 + ciphers: + - 'a5 0' + - 'a5 1' arfcn: - arfcn: 512 @@ -56,21 +65,33 @@ imsi: '901700000009031' ki: '80A37E6FDEA931EAC92FFA5F671EFEAD' auth_algo: 'xor' + ciphers: + - 'a5 0' + - 'a5 1' - label: sierra_2 path: '/sierra_2' imsi: '901700000009029' ki: '00969E283349D354A8239E877F2E0866' auth_algo: 'xor' + ciphers: + - 'a5 0' + - 'a5 1' - label: gobi_0 path: '/gobi_0' imsi: '901700000009030' ki: 'BB70807226393CDBAC8DD3439FF54252' auth_algo: 'xor' + ciphers: + - 'a5 0' + - 'a5 1' - label: gobi_3 path: '/gobi_3' imsi: '901700000009032' ki: '2F70DCA43C45ACB97E947FDD0C7CA30A' auth_algo: 'xor' + ciphers: + - 'a5 0' + - 'a5 1' diff --git a/example/scenarios/cipher-a50.conf b/example/scenarios/cipher-a50.conf new file mode 100644 index 0000000..d4a2e46 --- /dev/null +++ b/example/scenarios/cipher-a50.conf @@ -0,0 +1,7 @@ +resources: + bts: + - ciphers: + - 'a5 0' + modem: + - ciphers: + - 'a5 0' diff --git a/example/scenarios/cipher-a51.conf b/example/scenarios/cipher-a51.conf new file mode 100644 index 0000000..c84cd96 --- /dev/null +++ b/example/scenarios/cipher-a51.conf @@ -0,0 +1,7 @@ +resources: + bts: + - ciphers: + - 'a5 1' + modem: + - ciphers: + - 'a5 1' diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py index da543f7..4f43bfc 100644 --- a/src/osmo_gsm_tester/resource.py +++ b/src/osmo_gsm_tester/resource.py @@ -56,6 +56,7 @@ 'bts[].band': schema.BAND, 'bts[].trx_remote_ip': schema.IPV4, 'bts[].launch_trx': schema.BOOL_STR, + 'bts[].ciphers[]': schema.CIPHER, 'bts[].trx_list[].hw_addr': schema.HWADDR, 'bts[].trx_list[].net_device': schema.STR, 'arfcn[].arfcn': schema.INT, @@ -65,6 +66,7 @@ 'modem[].imsi': schema.IMSI, 'modem[].ki': schema.KI, 'modem[].auth_algo': schema.AUTH_ALGO, + 'modem[].ciphers[]': schema.CIPHER, } WANT_SCHEMA = util.dict_add( diff --git a/src/osmo_gsm_tester/schema.py b/src/osmo_gsm_tester/schema.py index 2da80cd..86acbad 100644 --- a/src/osmo_gsm_tester/schema.py +++ b/src/osmo_gsm_tester/schema.py @@ -66,6 +66,11 @@ return raise ValueError('Unknown Authentication Algorithm: %r' % val) +def cipher(val): + if val in ('a5 0', 'a5 1', 'a5 2', 'a5 3'): + return + raise ValueError('Unknown Cipher value: %r' % val) + INT = 'int' STR = 'str' BOOL_STR = 'bool_str' @@ -76,6 +81,7 @@ KI = 'ki' MSISDN = 'msisdn' AUTH_ALGO = 'auth_algo' +CIPHER = 'cipher' SCHEMA_TYPES = { INT: int, STR: str, @@ -87,6 +93,7 @@ KI: ki, MSISDN: msisdn, AUTH_ALGO: auth_algo, + CIPHER: cipher, } def validate(config, schema): -- To view, visit https://gerrit.osmocom.org/3723 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic0e368843a6e58bd3eeef36d2c0a7501296f0f3e Gerrit-PatchSet: 1 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de>