summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Vazgenovich Shakaryan <dvshakaryan@gmail.com>2025-12-15 08:58:03 -0800
committerDavid Vazgenovich Shakaryan <dvshakaryan@gmail.com>2025-12-15 08:58:03 -0800
commita23ca3aeae75ab9b7e90280c222882961a916a70 (patch)
tree56587eb163b7cc7d1d0dc58d9230f288e059ecc0
parent33d416b313b0d18f333e1442ce6fece23effab33 (diff)
downloadwg-genconf-a23ca3aeae75ab9b7e90280c222882961a916a70.tar.gz
wg-genconf-a23ca3aeae75ab9b7e90280c222882961a916a70.tar.xz
stricter regex for ipspecs
-rwxr-xr-xwg-genconf.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/wg-genconf.py b/wg-genconf.py
index f94022d..b56347a 100755
--- a/wg-genconf.py
+++ b/wg-genconf.py
@@ -120,7 +120,7 @@ def deep_merge(d, src):
# by default, this returns network addresses with host bits removed.
# passing interface=True will maintain the host bits.
def ipspec_to_ips(peer, ipspec, interface=False):
- if not (m := re.fullmatch(r'\{peer(.)?(/.*)?\}', ipspec)):
+ if not (m := re.fullmatch(r'\{peer([46])?(/.+)?\}', ipspec)):
return [ipspec]
version = m[1]
@@ -130,7 +130,7 @@ def ipspec_to_ips(peer, ipspec, interface=False):
lambda x: ipaddress.ip_network(x, False))
return [
- str(f(x if subnet == '/-' else f'{x.ip}{subnet if subnet else ''}'))
+ str(f(x if subnet == '/-' else f'{x.ip}{subnet or ''}'))
for x in peer.ip_interfaces(version)]
def ipspecs_to_ips(peer, ipspecs, interface=False):