daniel has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/osmo-pcu/+/26033 )


Change subject: gprs_bssgp_pcu: Fix crash when configuring an existing ns bind
......................................................................

gprs_bssgp_pcu: Fix crash when configuring an existing ns bind

ns_configure_nse() only sets bind when it doesn't exist yet. If it
already exists bind[i] stays NULL and causes a segfault in
gprs_ns2_is_ip_bind() later on.
This patch ensures bind[i] is either created of set to the existing
bind.

Change-Id: I103e82e6c64324c087a4ff325a83eeab0e5a4ee9
Related: SYS#4971
---
M src/gprs_bssgp_pcu.c
1 file changed, 2 insertions(+), 1 deletion(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/33/26033/1

diff --git a/src/gprs_bssgp_pcu.c b/src/gprs_bssgp_pcu.c
index 1fcacdb..0dd6cdc 100644
--- a/src/gprs_bssgp_pcu.c
+++ b/src/gprs_bssgp_pcu.c
@@ -1118,7 +1118,8 @@
                if (!(valid & (1 << i)))
                        continue;

-               if (!gprs_ns2_ip_bind_by_sockaddr(the_pcu->nsi, &local[i])) {
+               bind[i] = gprs_ns2_ip_bind_by_sockaddr(the_pcu->nsi, &local[i]);
+               if (!bind[i]) {
                        snprintf(name, sizeof(name), "pcu%u", i);
                        rc = gprs_ns2_ip_bind(the_pcu->nsi, name, &local[i], 0, 
&bind[i]);
                        if (rc < 0) {

--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/26033
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I103e82e6c64324c087a4ff325a83eeab0e5a4ee9
Gerrit-Change-Number: 26033
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <[email protected]>
Gerrit-MessageType: newchange

Reply via email to