<p>Neels Hofmeyr has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/9957">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">fix memleaks in mtp_user_prim_cb()<br><br>After dispatching to scrc_rx_mtp_xfer_ind_xua(), free the xua_msg.<br><br>Do not free the xua_msg in any of the code paths triggered within<br>scrc_rx_mtp_xfer_ind_xua(), i.e. remove xua_msg_free() from:<br>sccp_scoc_rx_from_scrc()<br> +->sccp_scoc_rx_unass_local_ref()<br>     +->tx_coerr_from_xua()<br>     +->tx_relco_from_xua()<br><br>Before this, some code paths would free the xua_msg, while most code paths<br>would not, causing mem leaks.<br><br>Change-Id: I72b3c6a6f57ba32d9ba191af33b4b236492174e0<br>---<br>M src/sccp_scoc.c<br>M src/sccp_user.c<br>2 files changed, 1 insertion(+), 2 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/libosmo-sccp refs/changes/57/9957/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/sccp_scoc.c b/src/sccp_scoc.c</span><br><span>index 3de986d..d7e1d08 100644</span><br><span>--- a/src/sccp_scoc.c</span><br><span>+++ b/src/sccp_scoc.c</span><br><span>@@ -1316,7 +1316,6 @@</span><br><span> </span><br><span>     /* sent to SCRC for transmission */</span><br><span>  sccp_scrc_rx_scoc_conn_msg(inst, xua);</span><br><span style="color: hsl(0, 100%, 40%);">-  xua_msg_free(xua);</span><br><span> }</span><br><span> </span><br><span> /* Generate a RELCO based in input arguments */</span><br><span>@@ -1354,7 +1353,6 @@</span><br><span> </span><br><span>   /* send to SCRC for transmission */</span><br><span>  sccp_scrc_rx_scoc_conn_msg(inst, xua);</span><br><span style="color: hsl(0, 100%, 40%);">-  xua_msg_free(xua);</span><br><span> }</span><br><span> </span><br><span> /* Generate a RLSD based in input arguments */</span><br><span>diff --git a/src/sccp_user.c b/src/sccp_user.c</span><br><span>index 99ed96e..ab9cb64 100644</span><br><span>--- a/src/sccp_user.c</span><br><span>+++ b/src/sccp_user.c</span><br><span>@@ -174,6 +174,7 @@</span><br><span>                 xua->mtp = omp->u.transfer;</span><br><span>            /* hand this primitive into SCCP via the SCRC code */</span><br><span>                rc = scrc_rx_mtp_xfer_ind_xua(inst, xua);</span><br><span style="color: hsl(120, 100%, 40%);">+             xua_msg_free(xua);</span><br><span>           break;</span><br><span>       default:</span><br><span>             LOGP(DLSCCP, LOGL_ERROR, "Unknown primitive %u:%u receivd\n",</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/9957">change 9957</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/9957"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libosmo-sccp </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I72b3c6a6f57ba32d9ba191af33b4b236492174e0 </div>
<div style="display:none"> Gerrit-Change-Number: 9957 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Neels Hofmeyr <nhofmeyr@sysmocom.de> </div>