From 28b5118ad2f35c984ea53e3df817b6cd0a090ab9 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 5 Apr 2018 17:33:21 +0200 Subject: [PATCH] platform: assert in nm_platform_link_tun_add() for unsupported options It doesn't make sense that NetworkManager adds non-persist tun devices, likewise, only the type IFF_TUN or IFF_TAP is supported. Assert that the values are as expected. --- src/platform/nm-linux-platform.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c index b8d252070e..495d765b12 100644 --- a/src/platform/nm-linux-platform.c +++ b/src/platform/nm-linux-platform.c @@ -5597,8 +5597,9 @@ link_tun_add (NMPlatform *platform, struct ifreq ifr = { }; nm_auto_close int fd = -1; - if (!NM_IN_SET (props->type, IFF_TAP, IFF_TUN)) - return FALSE; + if ( !NM_IN_SET (props->type, IFF_TAP, IFF_TUN) + || !props->persist) + g_return_val_if_reached (FALSE); fd = open ("/dev/net/tun", O_RDWR | O_CLOEXEC); if (fd < 0)