diff --git a/security/tinc/Makefile b/security/tinc/Makefile index 79a4140ba..3b2b3c10d 100644 --- a/security/tinc/Makefile +++ b/security/tinc/Makefile @@ -1,6 +1,5 @@ PLUGIN_NAME= tinc -PLUGIN_VERSION= 1.2 -PLUGIN_REVISION= 2 +PLUGIN_VERSION= 1.3 PLUGIN_COMMENT= Tinc VPN PLUGIN_DEPENDS= tinc PLUGIN_MAINTAINER= ad@opnsense.org diff --git a/security/tinc/src/opnsense/mvc/app/controllers/OPNsense/Tinc/forms/dialogNetwork.xml b/security/tinc/src/opnsense/mvc/app/controllers/OPNsense/Tinc/forms/dialogNetwork.xml index e37f379db..e2d9697f8 100644 --- a/security/tinc/src/opnsense/mvc/app/controllers/OPNsense/Tinc/forms/dialogNetwork.xml +++ b/security/tinc/src/opnsense/mvc/app/controllers/OPNsense/Tinc/forms/dialogNetwork.xml @@ -42,6 +42,13 @@ It is best to use only those ciphers which support CBC mode + + network.PMTUDiscovery + + checkbox + When this option is enabled, tinc will try to discover the path MTU to this node. After the path MTU has been discovered, it will be enforced on the VPN. + true + network.debuglevel diff --git a/security/tinc/src/opnsense/mvc/app/models/OPNsense/Tinc/Tinc.xml b/security/tinc/src/opnsense/mvc/app/models/OPNsense/Tinc/Tinc.xml index 6a3086b78..9741c5d3b 100644 --- a/security/tinc/src/opnsense/mvc/app/models/OPNsense/Tinc/Tinc.xml +++ b/security/tinc/src/opnsense/mvc/app/models/OPNsense/Tinc/Tinc.xml @@ -1,6 +1,6 @@ //OPNsense/Tinc - 1.0.1 + 1.0.2 OPNsense Tinc VPN @@ -70,6 +70,10 @@ switch + + 1 + Y + 1 Y diff --git a/security/tinc/src/opnsense/scripts/OPNsense/Tinc/lib/objects.py b/security/tinc/src/opnsense/scripts/OPNsense/Tinc/lib/objects.py index d6b5cdbdf..05c3fdf67 100644 --- a/security/tinc/src/opnsense/scripts/OPNsense/Tinc/lib/objects.py +++ b/security/tinc/src/opnsense/scripts/OPNsense/Tinc/lib/objects.py @@ -63,6 +63,7 @@ class Network(NetwConfObject): self._payload['intaddress'] = None self._payload['debuglevel'] = 'd0' self._payload['mode'] = 'switch' + self._payload['PMTUDiscovery'] = 'yes' self._hosts = list() def get_id(self): @@ -87,10 +88,17 @@ class Network(NetwConfObject): hostObj.set(host_prop.tag, host_prop) self._hosts.append(hostObj) + def set_PMTUDiscovery(self, value): + if value.text != '1': + self._payload['PMTUDiscovery'] = 'no' + else: + self._payload['PMTUDiscovery'] = 'yes' + def config_text(self): result = list() result.append('AddressFamily=any') result.append('Mode=%(mode)s' % self._payload) + result.append('PMTUDiscovery=%(PMTUDiscovery)s' % self._payload) result.append('Port=%(port)s' % self._payload) result.append('PingTimeout=%(pingtimeout)s' % self._payload) for host in self._hosts: diff --git a/security/tinc/src/opnsense/service/templates/OPNsense/Tinc/tinc_deploy.xml b/security/tinc/src/opnsense/service/templates/OPNsense/Tinc/tinc_deploy.xml index 440afed75..3479c3dea 100644 --- a/security/tinc/src/opnsense/service/templates/OPNsense/Tinc/tinc_deploy.xml +++ b/security/tinc/src/opnsense/service/templates/OPNsense/Tinc/tinc_deploy.xml @@ -5,6 +5,7 @@ {{network.id}} {{network.mode}} + {{network.PMTUDiscovery}} {{network.hostname}} {{network.name}} {{network.intaddress}}