From 230ac0a202acd7ae9ad9bccb9e777ee5a0e0b7b7 Mon Sep 17 00:00:00 2001
From: Viacheslav Hletenko <v.gletenko@vyos.io>
Date: Wed, 9 Feb 2022 16:07:55 +0000
Subject: openvpn: T3686: Fix for check local-address in script and tmpl

Local-address should be checked/executed only if it exists in the
openvpn configuration, dictionary, jinja2 template
---
 data/templates/openvpn/server.conf.tmpl | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

(limited to 'data/templates')

diff --git a/data/templates/openvpn/server.conf.tmpl b/data/templates/openvpn/server.conf.tmpl
index 7a0470d0e..fb7ad9e16 100644
--- a/data/templates/openvpn/server.conf.tmpl
+++ b/data/templates/openvpn/server.conf.tmpl
@@ -141,11 +141,13 @@ ping {{ keep_alive.interval }}
 ping-restart {{ keep_alive.failure_count }}
 
 {%   if device_type == 'tap' %}
-{%     for laddr, laddr_conf in local_address.items() if laddr | is_ipv4 %}
-{%       if laddr_conf is defined and laddr_conf.subnet_mask is defined and laddr_conf.subnet_mask is not none %}
+{%     if local_address is defined and local_address is not none  %}
+{%       for laddr, laddr_conf in local_address.items() if laddr | is_ipv4 %}
+{%         if laddr_conf is defined and laddr_conf.subnet_mask is defined and laddr_conf.subnet_mask is not none %}
 ifconfig {{ laddr }} {{ laddr_conf.subnet_mask }}
-{%       endif %}
-{%     endfor %}
+{%         endif %}
+{%       endfor %}
+{%     endif %}
 {%   else %}
 {%     for laddr in local_address if laddr | is_ipv4 %}
 {%       for raddr in remote_address if raddr | is_ipv4 %}
-- 
cgit v1.2.3