From cfa7d7cdda61640942af43a222a9cbf0cddaf00a Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Mon, 4 Sep 2017 16:26:08 +0200 Subject: Use own format to specify encryption algorithm ... instead of using the one from from osmo vty directly. This way we avoid having multiple word attribute value and we can skip using quotes in the conf files. Change-Id: I5265cc9990dd5e99dba1f6262b3a8c597a3e958d --- example/defaults.conf | 6 +++--- selftest/template_test/osmo-nitb.cfg.tmpl | 2 +- src/osmo_gsm_tester/osmo_bsc.py | 5 ++++- src/osmo_gsm_tester/osmo_msc.py | 5 ++++- src/osmo_gsm_tester/osmo_nitb.py | 5 ++++- src/osmo_gsm_tester/util.py | 4 ++++ suites/aoip_encryption/register_a5_0_authopt.py | 4 ++-- suites/aoip_encryption/register_a5_0_authreq.py | 4 ++-- suites/aoip_encryption/register_a5_1_authreq.py | 4 ++-- 9 files changed, 26 insertions(+), 13 deletions(-) diff --git a/example/defaults.conf b/example/defaults.conf index f6ecedd..e2921a4 100644 --- a/example/defaults.conf +++ b/example/defaults.conf @@ -5,7 +5,7 @@ nitb: short_name: osmo-gsm-tester-nitb long_name: osmo-gsm-tester-nitb auth_policy: closed - encryption: a5 0 + encryption: a5_0 bsc: net: @@ -14,7 +14,7 @@ bsc: short_name: osmo-gsm-tester-msc long_name: osmo-gsm-tester-msc auth_policy: closed - encryption: a5 0 + encryption: a5_0 authentication: optional msc: @@ -24,7 +24,7 @@ msc: short_name: osmo-gsm-tester-msc long_name: osmo-gsm-tester-msc auth_policy: closed - encryption: a5 0 + encryption: a5_0 authentication: optional bsc_bts: diff --git a/selftest/template_test/osmo-nitb.cfg.tmpl b/selftest/template_test/osmo-nitb.cfg.tmpl index 200dfdc..2559b14 100644 --- a/selftest/template_test/osmo-nitb.cfg.tmpl +++ b/selftest/template_test/osmo-nitb.cfg.tmpl @@ -24,7 +24,7 @@ network long name ${net_name_long} auth policy ${net_auth_policy} location updating reject cause 13 - encryption a5 ${encryption} + encryption ${encryption} neci 1 rrlp mode none mm info 1 diff --git a/src/osmo_gsm_tester/osmo_bsc.py b/src/osmo_gsm_tester/osmo_bsc.py index f9eb858..5fbeea6 100644 --- a/src/osmo_gsm_tester/osmo_bsc.py +++ b/src/osmo_gsm_tester/osmo_bsc.py @@ -81,7 +81,10 @@ class OsmoBsc(log.Origin): # runtime parameters: if self.encryption is not None: - config.overlay(values, dict(bsc=dict(net=dict(encryption=self.encryption)))) + encryption_vty = util.encryption2osmovty(self.encryption) + else: + encryption_vty = util.encryption2osmovty(values['bsc']['net']['encryption']) + config.overlay(values, dict(bsc=dict(net=dict(encryption=encryption_vty)))) self.dbg('BSC CONFIG:\n' + pprint.pformat(values)) diff --git a/src/osmo_gsm_tester/osmo_msc.py b/src/osmo_gsm_tester/osmo_msc.py index f023b29..67234e3 100644 --- a/src/osmo_gsm_tester/osmo_msc.py +++ b/src/osmo_gsm_tester/osmo_msc.py @@ -81,7 +81,10 @@ class OsmoMsc(log.Origin): # runtime parameters: if self.encryption is not None: - config.overlay(values, dict(msc=dict(net=dict(encryption=self.encryption)))) + encryption_vty = util.encryption2osmovty(self.encryption) + else: + encryption_vty = util.encryption2osmovty(values['msc']['net']['encryption']) + config.overlay(values, dict(msc=dict(net=dict(encryption=encryption_vty)))) if self.authentication is not None: config.overlay(values, dict(msc=dict(net=dict(authentication=self.authentication)))) diff --git a/src/osmo_gsm_tester/osmo_nitb.py b/src/osmo_gsm_tester/osmo_nitb.py index 8f91bbd..b0a706d 100644 --- a/src/osmo_gsm_tester/osmo_nitb.py +++ b/src/osmo_gsm_tester/osmo_nitb.py @@ -82,7 +82,10 @@ class OsmoNitb(log.Origin): # runtime parameters: if self.encryption is not None: - config.overlay(values, dict(nitb=dict(net=dict(encryption=self.encryption)))) + encryption_vty = util.encryption2osmovty(self.encryption) + else: + encryption_vty = util.encryption2osmovty(values['nitb']['net']['encryption']) + config.overlay(values, dict(nitb=dict(net=dict(encryption=encryption_vty)))) self.config = values diff --git a/src/osmo_gsm_tester/util.py b/src/osmo_gsm_tester/util.py index f3655c0..2524f47 100644 --- a/src/osmo_gsm_tester/util.py +++ b/src/osmo_gsm_tester/util.py @@ -337,4 +337,8 @@ def empty_instance_type(t): return () raise ValueError('type %r not supported!' % t) +def encryption2osmovty(val): + assert val[:3] == 'a5_' + return 'a5 ' + val[3:] + # vim: expandtab tabstop=4 shiftwidth=4 diff --git a/suites/aoip_encryption/register_a5_0_authopt.py b/suites/aoip_encryption/register_a5_0_authopt.py index ff93cb8..0224ee0 100755 --- a/suites/aoip_encryption/register_a5_0_authopt.py +++ b/suites/aoip_encryption/register_a5_0_authopt.py @@ -11,8 +11,8 @@ ms = suite.modem() print('start network...') msc.set_authentication(False) -msc.set_encryption('a5 0') -bsc.set_encryption('a5 0') +msc.set_encryption('a5_0') +bsc.set_encryption('a5_0') hlr.start() stp.start() msc.start() diff --git a/suites/aoip_encryption/register_a5_0_authreq.py b/suites/aoip_encryption/register_a5_0_authreq.py index be8f8a1..a191008 100755 --- a/suites/aoip_encryption/register_a5_0_authreq.py +++ b/suites/aoip_encryption/register_a5_0_authreq.py @@ -11,8 +11,8 @@ ms = suite.modem() print('start network...') msc.set_authentication(True) -msc.set_encryption('a5 0') -bsc.set_encryption('a5 0') +msc.set_encryption('a5_0') +bsc.set_encryption('a5_0') hlr.start() stp.start() msc.start() diff --git a/suites/aoip_encryption/register_a5_1_authreq.py b/suites/aoip_encryption/register_a5_1_authreq.py index dd41348..bbcc3e5 100755 --- a/suites/aoip_encryption/register_a5_1_authreq.py +++ b/suites/aoip_encryption/register_a5_1_authreq.py @@ -11,8 +11,8 @@ ms = suite.modem() print('start network...') msc.set_authentication(True) -msc.set_encryption('a5 1') -bsc.set_encryption('a5 1') +msc.set_encryption('a5_1') +bsc.set_encryption('a5_1') hlr.start() stp.start() msc.start() -- cgit v1.2.3