gprs_ns2_fr: fix resource leaks due to early return in set_ifupdown()
Change-Id: Ie52bf8ac6d62e7f2d760294bf2fe90119cc96b4b
Related: CID#215869
diff --git a/src/gb/gprs_ns2_fr.c b/src/gb/gprs_ns2_fr.c
index ca2d38c..2c797f3 100644
--- a/src/gb/gprs_ns2_fr.c
+++ b/src/gb/gprs_ns2_fr.c
@@ -448,11 +448,15 @@
OSMO_STRLCPY_ARRAY(req.ifr_name, netif);
rc = ioctl(sock, SIOCGIFFLAGS, &req);
- if (rc < 0)
+ if (rc < 0) {
+ close(sock);
return rc;
+ }
- if ((req.ifr_flags & IFF_UP) == up)
+ if ((req.ifr_flags & IFF_UP) == up) {
+ close(sock);
return 0;
+ }
if (up)
req.ifr_flags |= IFF_UP;