From 6d51a48af8afc52a0bf3f9437b2de1c2b8c1c0d4 Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Tue, 23 Nov 2010 17:47:29 -0500 Subject: Add ability to add/remove DNS records when adding/removing a host entry. A host in DNS must have an IP address so a valid IP address is required when adding a host. The --force flag will be needed too since you are adding a host that isn't in DNS. For IPv4 it will create an A and a PTR DNS record. IPv6 isn't quite supported yet. Some basic work in the DNS installer is needed to get this working. Once the get_reverse_zone() returns the right value then this should start working and create an AAAA record and the appropriate reverse entry. When deleting a host with the --updatedns flag it will try to remove all records it can find in the zone for this host. ticket 238 --- ipalib/util.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'ipalib/util.py') diff --git a/ipalib/util.py b/ipalib/util.py index 1803e65a..0f84b797 100644 --- a/ipalib/util.py +++ b/ipalib/util.py @@ -170,3 +170,18 @@ def isvalid_base64(data): return False else: return True + +def validate_ipaddr(ipaddr): + """ + Check to see if the given IP address is a valid IPv4 or IPv6 address. + + Returns True or False + """ + try: + socket.inet_pton(socket.AF_INET, ipaddr) + except socket.error: + try: + socket.inet_pton(socket.AF_INET6, ipaddr) + except socket.error: + return False + return True -- cgit