From c383e755979b743c8180e95adaec8a6dde8198dd Mon Sep 17 00:00:00 2001 From: dadevel Date: Thu, 10 Dec 2020 22:19:28 +0100 Subject: [PATCH] handle missing allowed-ips key with grace --- wg-netns.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/wg-netns.py b/wg-netns.py index dd84f7a..b4933f7 100755 --- a/wg-netns.py +++ b/wg-netns.py @@ -153,7 +153,7 @@ def interface_bring_up(interface, namespace): def interface_create_routes(interface, namespace): for peer in interface['peers']: - for network in peer['allowed-ips']: + for network in peer.get('allowed-ips', ()): ip('-n', namespace['name'], '-6' if ':' in network else '-4', 'route', 'add', network, 'dev', interface['name']) @@ -166,13 +166,12 @@ def peer_setup(peer, interface, namespace): options = [ 'peer', peer['public-key'], 'preshared-key', '/dev/stdin' if peer.get('preshared-key') else '/dev/null', + 'persistent-keepalive', peer.get('persistent-keepalive', 0), ] if peer.get('endpoint'): options.extend(('endpoint', peer.get('endpoint'))) - options += [ - 'persistent-keepalive', peer.get('persistent-keepalive', 0), - 'allowed-ips', ','.join(peer['allowed-ips']), - ] + if peer.get('allowed-ips'): + options.extend(('allowed-ips', ','.join(peer['allowed-ips']))) wg('set', interface['name'], *options, stdin=peer.get('preshared-key'), netns=namespace)