Fix bug when http:// parsed in ip proxy input 96/111796/1
authorKyungwook Tak <k.tak@samsung.com>
Tue, 24 Jan 2017 04:33:09 +0000 (13:33 +0900)
committerKyungwook Tak <k.tak@samsung.com>
Tue, 24 Jan 2017 04:33:09 +0000 (13:33 +0900)
ValueError exception occured when parse proxy ip when protocol comes at
the fromt of ip string

File "/usr/bin/mic", line 37, in <module>
  from mic.conf import configmgr
File "/usr/lib/pymodules/python2.7/mic/conf.py", line 287, in <module>
  configmgr = ConfigMgr()
File "/usr/lib/pymodules/python2.7/mic/conf.py", line 108, in __init__
  self._siteconf = siteconf
File "/usr/lib/pymodules/python2.7/mic/conf.py", line 124, in __set_siteconf
  self._parse_siteconf(siteconf)
File "/usr/lib/pymodules/python2.7/mic/conf.py", line 183, in _parse_siteconf
  proxy.set_proxies(self.create['proxy'], self.create['no_proxy'])
File "/usr/lib/pymodules/python2.7/mic/utils/proxy.py", line 169, in set_proxies
  _set_noproxy_list()
File "/usr/lib/pymodules/python2.7/mic/utils/proxy.py", line 120, in _set_noproxy_list
  ip = _ip_to_int(needle)
File "/usr/lib/pymodules/python2.7/mic/utils/proxy.py", line 80, in _ip_to_int
  ipint |= int(dec) << shift
ValueError: invalid literal for int() with base 10: 'http:'

Change-Id: Ib7f7e83ff0ae6eea5db128871130a680e04448c3
Signed-off-by: Kyungwook Tak <k.tak@samsung.com>
mic/utils/proxy.py

index acb05e4..63b5f63 100644 (file)
@@ -77,6 +77,8 @@ def _ip_to_int(ip):
     ipint = 0
     shift = 24
     for dec in ip.split("."):
+        if not dec.isdigit():
+            continue
         ipint |= int(dec) << shift
         shift -= 8
     return ipint
@@ -129,6 +131,8 @@ def _set_noproxy_list():
                 shift = 24
                 netmask = 0
                 for dec in mask.split("."):
+                    if not dec.isdigit():
+                        continue
                     netmask |= int(dec) << shift
                     shift -= 8
                 ip &= netmask