diff options
author | David Cantrell <dcantrell@redhat.com> | 2007-06-22 14:31:14 +0000 |
---|---|---|
committer | David Cantrell <dcantrell@redhat.com> | 2007-06-22 14:31:14 +0000 |
commit | 1e0e0476cd9e972ffcd9abed6f2404164242aaff (patch) | |
tree | e94b9cf199967bc51946ab49c73e666618e38b12 /iw | |
parent | 1da9e7f3a3e5212b8f7417713c25ba9e979bddb5 (diff) | |
download | anaconda-1e0e0476cd9e972ffcd9abed6f2404164242aaff.tar.gz anaconda-1e0e0476cd9e972ffcd9abed6f2404164242aaff.tar.xz anaconda-1e0e0476cd9e972ffcd9abed6f2404164242aaff.zip |
* iw/netconfig_dialog.py (NetworkConfigurator): Handle IPv4 CIDR
prefixes in addition to dotted-quad netmasks (patch from HARA
Hiroshi <hhara AT miraclelinux DOT com>).
Diffstat (limited to 'iw')
-rw-r--r-- | iw/netconfig_dialog.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/iw/netconfig_dialog.py b/iw/netconfig_dialog.py index b8f5463bc..45146e140 100644 --- a/iw/netconfig_dialog.py +++ b/iw/netconfig_dialog.py @@ -204,6 +204,32 @@ class NetworkConfigurator: self._handleIPError(_("Netmask"), msg) return + if ipv4nm.find('.') == -1: + # user provided a CIDR prefix + try: + if int(ipv4nm) > 32 or int(ipv4nm) < 0: + msg = _("IPv4 CIDR prefix must be between 0 and 32.") + self._handleIPError(_("IPv4 Network Mask"), msg) + return + else: + ipv4nm = isys.prefix2netmask(int(ipv4nm)) + network.sanityCheckIPString(ipv4nm) + netdev.sef(('netmask', ipv4nm)) + except: + self._handleIPMissing(_("IPv4 Network Mask"), msg) + return + else: + # user provided a dotted-quad netmask + try: + network.sanityCheckIPString(ipv4nm) + netdev.sef(('netmask', ipv4nm)) + except network.IPMissing, msg: + self._handleIPMissing(_("IPv4 Network Mask"), msg) + return + except network.IPError, msg: + self._handleIPError(_("IPv4 Network Mask"), msh) + return + try: network.sanityCheckIPString(gateway) except network.IPMissing, msg: |