diff options
| author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2022-11-02 14:55:27 +0200 | 
|---|---|---|
| committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2022-11-02 12:59:57 +0000 | 
| commit | 46eda54c88ae96ed1f4aaa9ce56c505ed837f3d7 (patch) | |
| tree | 852b802c592919fec3fe66c14dd2f4aaaf8fd7ed /src/conf_mode/interfaces-wireguard.py | |
| parent | 738641a6c66d22c09b8c028ee3d8a90527d9701f (diff) | |
| parent | f2ec92a78c4ee2a35e7d071387460fc6ce360740 (diff) | |
| download | vyos-1x-46eda54c88ae96ed1f4aaa9ce56c505ed837f3d7.tar.gz vyos-1x-46eda54c88ae96ed1f4aaa9ce56c505ed837f3d7.zip | |
T4758: Fix conflicts op-mode-standardized
Diffstat (limited to 'src/conf_mode/interfaces-wireguard.py')
| -rwxr-xr-x | src/conf_mode/interfaces-wireguard.py | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/src/conf_mode/interfaces-wireguard.py b/src/conf_mode/interfaces-wireguard.py index 8d738f55e..762bad94f 100755 --- a/src/conf_mode/interfaces-wireguard.py +++ b/src/conf_mode/interfaces-wireguard.py @@ -87,6 +87,8 @@ def verify(wireguard):                                 'cannot be used for the interface!')      # run checks on individual configured WireGuard peer +    public_keys = [] +      for tmp in wireguard['peer']:          peer = wireguard['peer'][tmp] @@ -100,6 +102,11 @@ def verify(wireguard):              raise ConfigError('Both Wireguard port and address must be defined '                                f'for peer "{tmp}" if either one of them is set!') +        if peer['public_key'] in public_keys: +            raise ConfigError(f'Duplicate public-key defined on peer "{tmp}"') + +        public_keys.append(peer['public_key']) +  def apply(wireguard):      tmp = WireGuardIf(wireguard['ifname'])      if 'deleted' in wireguard: | 
