<p>laforge <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-cbc/+/22416">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, but someone else must approve
  laforge: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">VTY: don't save dynamically-allocated "unknown" peers<br><br>The VTY code should write/save only those peers that were configured<br>using the VTY.<br><br>Closes: OS#4929<br>Change-Id: If02694be4e4cb9cb27e7d9d07e533bfed4a999a9<br>---<br>M src/cbc_data.h<br>M src/cbc_vty.c<br>M src/cbsp_server.c<br>3 files changed, 7 insertions(+), 1 deletion(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/cbc_data.h b/src/cbc_data.h</span><br><span>index e88ae45..d6fc3d2 100644</span><br><span>--- a/src/cbc_data.h</span><br><span>+++ b/src/cbc_data.h</span><br><span>@@ -26,6 +26,7 @@</span><br><span> </span><br><span>     char *remote_host;      /* remote IP address in string format */</span><br><span>     int remote_port;                /* remote port number or -1 for random */</span><br><span style="color: hsl(120, 100%, 40%);">+     bool unknown_dynamic_peer;      /* dynamic/unknown peer; not saved in VTY */</span><br><span> </span><br><span>     enum cbc_peer_protocol proto;</span><br><span>        union {</span><br><span>diff --git a/src/cbc_vty.c b/src/cbc_vty.c</span><br><span>index 98e2703..9a36aa4 100644</span><br><span>--- a/src/cbc_vty.c</span><br><span>+++ b/src/cbc_vty.c</span><br><span>@@ -494,8 +494,12 @@</span><br><span> static int config_write_peer(struct vty *vty)</span><br><span> {</span><br><span>        struct cbc_peer *peer;</span><br><span style="color: hsl(0, 100%, 40%);">-  llist_for_each_entry(peer, &g_cbc->peers, list)</span><br><span style="color: hsl(120, 100%, 40%);">+        llist_for_each_entry(peer, &g_cbc->peers, list) {</span><br><span style="color: hsl(120, 100%, 40%);">+              /* only save those configured via the VTY, not the "unknown" peers */</span><br><span style="color: hsl(120, 100%, 40%);">+               if (peer->unknown_dynamic_peer)</span><br><span style="color: hsl(120, 100%, 40%);">+                    continue;</span><br><span>            write_one_peer(vty, peer);</span><br><span style="color: hsl(120, 100%, 40%);">+    }</span><br><span>    return CMD_SUCCESS;</span><br><span> }</span><br><span> </span><br><span>diff --git a/src/cbsp_server.c b/src/cbsp_server.c</span><br><span>index 8a62790..3aa6332 100644</span><br><span>--- a/src/cbsp_server.c</span><br><span>+++ b/src/cbsp_server.c</span><br><span>@@ -150,6 +150,7 @@</span><br><span>                          remote_ip, remote_port);</span><br><span>                     client->peer = cbc_peer_create(NULL, CBC_PEER_PROTO_CBSP);</span><br><span>                        OSMO_ASSERT(client->peer);</span><br><span style="color: hsl(120, 100%, 40%);">+                 client->peer->unknown_dynamic_peer = true;</span><br><span>             } else {</span><br><span>                     LOGPCC(client, LOGL_NOTICE, "Rejecting unknown CBSP peer %s:%d (not permitted)\n",</span><br><span>                                 remote_ip, remote_port);</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-cbc/+/22416">change 22416</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-cbc/+/22416"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-cbc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: If02694be4e4cb9cb27e7d9d07e533bfed4a999a9 </div>
<div style="display:none"> Gerrit-Change-Number: 22416 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>