mirror of
https://github.com/netbirdio/plugins.git
synced 2026-05-22 18:44:07 -07:00
Enable usage of no, one or several addresses per hosts
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
<id>host.extaddress</id>
|
||||
<label>Ext. Address</label>
|
||||
<type>text</type>
|
||||
<help>This machines external address to use</help>
|
||||
<help>This machines external addresses to use (separated by comma)</help>
|
||||
</field>
|
||||
<field>
|
||||
<id>host.extport</id>
|
||||
|
||||
+1
-1
@@ -69,7 +69,7 @@
|
||||
<id>network.extaddress</id>
|
||||
<label>Ext. Address</label>
|
||||
<type>text</type>
|
||||
<help>This machines external address to use</help>
|
||||
<help>This machines external addresses to use (separated by comma)</help>
|
||||
</field>
|
||||
<field>
|
||||
<id>network.extport</id>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<ValidationMessage>Please specify a valid hostname.</ValidationMessage>
|
||||
</hostname>
|
||||
<extaddress type="TextField">
|
||||
<Required>Y</Required>
|
||||
<Required>N</Required>
|
||||
<mask>/^([0-9a-zA-Z\.,_\-:]){0,1024}$/u</mask>
|
||||
</extaddress>
|
||||
<extport type="IntegerField">
|
||||
@@ -132,7 +132,7 @@
|
||||
<ValidationMessage>Port number must be between 1...65535</ValidationMessage>
|
||||
</extport>
|
||||
<extaddress type="TextField">
|
||||
<Required>Y</Required>
|
||||
<Required>N</Required>
|
||||
<mask>/^([0-9a-zA-Z\.,_\-:]){0,1024}$/u</mask>
|
||||
</extaddress>
|
||||
<subnet type="NetworkField">
|
||||
|
||||
@@ -30,8 +30,6 @@ class NetwConfObject(object):
|
||||
self._payload = dict()
|
||||
self._payload['hostname'] = None
|
||||
self._payload['network'] = None
|
||||
self._payload['address'] = None
|
||||
self._payload['port'] = None
|
||||
|
||||
def is_valid(self):
|
||||
for key in self._payload:
|
||||
@@ -97,6 +95,10 @@ class Network(NetwConfObject):
|
||||
def config_text(self):
|
||||
result = list()
|
||||
result.append('AddressFamily=any')
|
||||
if 'address' in self._payload:
|
||||
addresses = self._payload['address'].split(',')
|
||||
for address in addresses:
|
||||
result.append('Address=%s %s' % (address, self._payload['port']))
|
||||
result.append('Mode=%(mode)s' % self._payload)
|
||||
result.append('PMTUDiscovery=%(PMTUDiscovery)s' % self._payload)
|
||||
result.append('Port=%(port)s' % self._payload)
|
||||
@@ -137,7 +139,10 @@ class Host(NetwConfObject):
|
||||
|
||||
def config_text(self):
|
||||
result = list()
|
||||
result.append('Address=%(address)s %(port)s'%self._payload)
|
||||
if 'address' in self._payload:
|
||||
addresses = self._payload['address'].split(',')
|
||||
for address in addresses:
|
||||
result.append('Address=%s %s' % (address, self._payload['port']))
|
||||
if 'subnet' in self._payload:
|
||||
networks = self._payload['subnet'].split(',')
|
||||
for network in networks:
|
||||
|
||||
Reference in New Issue
Block a user