From fdea03b40859057fb85014ace8cdb65e57c2b373 Mon Sep 17 00:00:00 2001 From: Alexander Couzens Date: Tue, 29 Dec 2020 23:13:23 +0100 Subject: gprs_ns2: fr: check the device state before changing state Reduce the required capabilities if the device is already set up. Change-Id: I72eb2567078758694c648a493324b212461ee735 --- src/gb/gprs_ns2_fr.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gb/gprs_ns2_fr.c b/src/gb/gprs_ns2_fr.c index 1b0ec003..e972a343 100644 --- a/src/gb/gprs_ns2_fr.c +++ b/src/gb/gprs_ns2_fr.c @@ -447,6 +447,13 @@ static int set_ifupdown(const char *netif, bool up) memset(&req, 0, sizeof req); OSMO_STRLCPY_ARRAY(req.ifr_name, netif); + rc = ioctl(sock, SIOCGIFFLAGS, &req); + if (rc < 0) + return rc; + + if ((req.ifr_flags & IFF_UP) == up) + return 0; + if (up) req.ifr_flags |= IFF_UP; -- cgit v1.2.3