Review at  https://gerrit.osmocom.org/3245

VIRT-PHY: Fix handling of default values for vty configuration

The defaults must be set during bts_model_phy_link_set_defaults()
and can then later be overridden by the vty (from the config file).

They should only be written back to the file if they differ from
the default settings.

Change-Id: I5d7f2c1dc8bc3d11db5c607b664730e4dcd58c96
---
M src/osmo-bts-virtual/l1_if.c
M src/osmo-bts-virtual/main.c
M src/osmo-bts-virtual/virtualbts_vty.c
3 files changed, 6 insertions(+), 14 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/45/3245/1

diff --git a/src/osmo-bts-virtual/l1_if.c b/src/osmo-bts-virtual/l1_if.c
index b649461..c3382d4 100644
--- a/src/osmo-bts-virtual/l1_if.c
+++ b/src/osmo-bts-virtual/l1_if.c
@@ -186,18 +186,6 @@
 
        phy_link_state_set(plink, PHY_LINK_CONNECTING);
 
-       if (!plink->u.virt.bts_mcast_group)
-               plink->u.virt.bts_mcast_group = DEFAULT_BTS_MCAST_GROUP;
-
-       if (!plink->u.virt.bts_mcast_port)
-               plink->u.virt.bts_mcast_port = DEFAULT_BTS_MCAST_PORT;
-
-       if (!plink->u.virt.ms_mcast_group)
-               plink->u.virt.ms_mcast_group = DEFAULT_MS_MCAST_GROUP;
-
-       if (!plink->u.virt.ms_mcast_port)
-               plink->u.virt.ms_mcast_port = DEFAULT_MS_MCAST_PORT;
-
        plink->u.virt.virt_um = virt_um_init(plink, 
plink->u.virt.ms_mcast_group, plink->u.virt.ms_mcast_port,
                                             plink->u.virt.bts_mcast_group, 
plink->u.virt.bts_mcast_port,
                                             virt_um_rcv_cb);
diff --git a/src/osmo-bts-virtual/main.c b/src/osmo-bts-virtual/main.c
index 6ceeaec..f1dc293 100644
--- a/src/osmo-bts-virtual/main.c
+++ b/src/osmo-bts-virtual/main.c
@@ -104,6 +104,10 @@
 
 void bts_model_phy_link_set_defaults(struct phy_link *plink)
 {
+       plink->u.virt.bts_mcast_group = DEFAULT_BTS_MCAST_GROUP;
+       plink->u.virt.bts_mcast_port = DEFAULT_BTS_MCAST_PORT;
+       plink->u.virt.ms_mcast_group = DEFAULT_MS_MCAST_GROUP;
+       plink->u.virt.ms_mcast_port = DEFAULT_MS_MCAST_PORT;
 }
 
 void bts_model_phy_instance_set_defaults(struct phy_instance *pinst)
diff --git a/src/osmo-bts-virtual/virtualbts_vty.c 
b/src/osmo-bts-virtual/virtualbts_vty.c
index 45c1086..323222b 100644
--- a/src/osmo-bts-virtual/virtualbts_vty.c
+++ b/src/osmo-bts-virtual/virtualbts_vty.c
@@ -72,13 +72,13 @@
        if (strcmp(plink->u.virt.ms_mcast_group, DEFAULT_BTS_MCAST_GROUP))
                vty_out(vty, " virtual-um ms-multicast-group %s%s",
                        plink->u.virt.ms_mcast_group, VTY_NEWLINE);
-       if (plink->u.virt.ms_mcast_port)
+       if (plink->u.virt.ms_mcast_port != DEFAULT_BTS_MCAST_PORT)
                vty_out(vty, " virtual-um ms-udp-port %u%s",
                        plink->u.virt.ms_mcast_port, VTY_NEWLINE);
        if (strcmp(plink->u.virt.bts_mcast_group, DEFAULT_MS_MCAST_GROUP))
                vty_out(vty, " virtual-um bts-multicast-group %s%s",
                        plink->u.virt.bts_mcast_group, VTY_NEWLINE);
-       if (plink->u.virt.bts_mcast_port)
+       if (plink->u.virt.bts_mcast_port != DEFAULT_MS_MCAST_PORT)
                vty_out(vty, " virtual-um bts-udp-port %u%s",
                        plink->u.virt.bts_mcast_port, VTY_NEWLINE);
 

-- 
To view, visit https://gerrit.osmocom.org/3245
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5d7f2c1dc8bc3d11db5c607b664730e4dcd58c96
Gerrit-PatchSet: 1
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <[email protected]>

Reply via email to