Edward Haas has uploaded a new change for review.
Change subject: net: Validate nameservers setup
......................................................................
net: Validate nameservers setup
Add address validation for the nameservers setup.
Change-Id: I68b8a834eabd9775178e395f643d555a18eecc81
Signed-off-by: Edward Haas <edwardh(a)redhat.com>
---
M lib/vdsm/network/ip/validator.py
1 file changed, 24 insertions(+), 4 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/13/65613/1
diff --git a/lib/vdsm/network/ip/validator.py b/lib/vdsm/network/ip/validator.py
index 55e5d7e..9e84bd1 100644
--- a/lib/vdsm/network/ip/validator.py
+++ b/lib/vdsm/network/ip/validator.py
@@ -23,12 +23,32 @@
from vdsm.network import errors as ne
+from .address import IPv4, IPv6
+
def validate(nets):
for net, attrs in six.iteritems(nets):
if 'remove' in attrs:
continue
- elif attrs['nameservers'] and not attrs['defaultRoute']:
- raise ne.ConfigNetworkError(
- ne.ERR_BAD_PARAMS,
- 'Name servers may only be defined on the default host network')
+ _validate_nameservers(net, attrs)
+
+
+def _validate_nameservers(net, attrs):
+ if attrs['nameservers']:
+ _validate_nameservers_network(attrs)
+ _validate_nameservers_address(attrs['nameservers'])
+
+
+def _validate_nameservers_network(attrs):
+ if not attrs['defaultRoute']:
+ raise ne.ConfigNetworkError(
+ ne.ERR_BAD_PARAMS,
+ 'Name servers may only be defined on the default host network')
+
+
+def _validate_nameservers_address(nameservers_addr):
+ for addr in nameservers_addr:
+ if ':' in addr:
+ IPv6.validateAddress(addr)
+ else:
+ IPv4.validateAddress(addr)
--
To view, visit
https://gerrit.ovirt.org/65613
To unsubscribe, visit
https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I68b8a834eabd9775178e395f643d555a18eecc81
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Edward Haas <edwardh(a)redhat.com>