diff options
author | Rob Crittenden <rcritten@redhat.com> | 2010-11-23 17:47:29 -0500 |
---|---|---|
committer | Simo Sorce <ssorce@redhat.com> | 2010-11-23 18:23:29 -0500 |
commit | 6d51a48af8afc52a0bf3f9437b2de1c2b8c1c0d4 (patch) | |
tree | 35d4bdbc63877cd3596f607f0b95b61ae31cd8c4 /ipalib/util.py | |
parent | aa70959f16bc9111798e14da5371c34438a7c146 (diff) | |
download | freeipa-6d51a48af8afc52a0bf3f9437b2de1c2b8c1c0d4.tar.gz freeipa-6d51a48af8afc52a0bf3f9437b2de1c2b8c1c0d4.tar.xz freeipa-6d51a48af8afc52a0bf3f9437b2de1c2b8c1c0d4.zip |
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
Diffstat (limited to 'ipalib/util.py')
-rw-r--r-- | ipalib/util.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/ipalib/util.py b/ipalib/util.py index 1803e65ab..0f84b7975 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 |