From a2663259295a3326695cbaca65958b73aacb6b72 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Mon, 10 Sep 2018 10:21:44 +0200 Subject: Osmocom_VTY_Functions: Generalize to handle multiple VTY ports The existing Osmocom_VTY_Functions code was centered around a global module parameter specifying the prompt prefix. This prevented a single test to use multiple VTY connections to different Osmocom programs. This patch generalize the code by widening the prompt matching in f_vty_wait_for_prompt() and by allowing the caller to specify the prompt prefix to override the modulepar. Change-Id: I574b56c42fe95540af44a2c43d0fb469938c0e65 --- library/Osmocom_VTY_Functions.ttcn | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/library/Osmocom_VTY_Functions.ttcn b/library/Osmocom_VTY_Functions.ttcn index 427bd5c3..b8226458 100644 --- a/library/Osmocom_VTY_Functions.ttcn +++ b/library/Osmocom_VTY_Functions.ttcn @@ -12,24 +12,24 @@ module Osmocom_VTY_Functions { template charstring t_vty_unknown := pattern "*% Unknown command."; /* configure prompts in TELNETasp module */ - function f_vty_set_prompts(TELNETasp_PT pt) { + function f_vty_set_prompts(TELNETasp_PT pt, charstring prompt_prefix := mp_prompt_prefix) { var ASP_TelnetDynamicConfig vty_prompt[3] := { { prompt := { id := 1, - prompt := mp_prompt_prefix & VTY_VIEW_SUFFIX, + prompt := prompt_prefix & VTY_VIEW_SUFFIX, has_wildcards := false } }, { prompt := { id := 2, - prompt := mp_prompt_prefix & VTY_ENABLE_SUFFIX, + prompt := prompt_prefix & VTY_ENABLE_SUFFIX, has_wildcards := false } }, { prompt := { id := 3, - prompt := mp_prompt_prefix & VTY_CFG_SUFFIX, + prompt := prompt_prefix & VTY_CFG_SUFFIX, has_wildcards := true } } @@ -51,9 +51,9 @@ module Osmocom_VTY_Functions { T.start; alt { - [] pt.receive(mp_prompt_prefix & VTY_VIEW_SUFFIX) { }; - [] pt.receive(mp_prompt_prefix & VTY_ENABLE_SUFFIX) { }; - [] pt.receive(pattern mp_prompt_prefix & VTY_CFG_SUFFIX) { }; + [] pt.receive(pattern "\w+" & VTY_VIEW_SUFFIX) { }; + [] pt.receive(pattern "\w+\# ") { }; + [] pt.receive(pattern "\w+" & VTY_CFG_SUFFIX) { }; [] pt.receive(t_vty_unknown) { testcase.stop(fail, "VTY: Unknown Command"); }; -- cgit v1.2.3