diff options
author | Petr Viktorin <pviktori@redhat.com> | 2015-09-21 13:29:18 +0200 |
---|---|---|
committer | Tomas Babej <tbabej@redhat.com> | 2015-10-13 14:16:32 +0200 |
commit | e0eff8b8346f62b667f5e5b923fcaccd1beb12b7 (patch) | |
tree | d38061aed60f791f12f0fa3e06cc4b2d6bb50aa5 /ipalib/parameters.py | |
parent | c44dd40b26bd9803d042cc75b133b739838a9022 (diff) | |
download | freeipa-e0eff8b8346f62b667f5e5b923fcaccd1beb12b7.tar.gz freeipa-e0eff8b8346f62b667f5e5b923fcaccd1beb12b7.tar.xz freeipa-e0eff8b8346f62b667f5e5b923fcaccd1beb12b7.zip |
ipalib.parameters: Handle 0-prefixed octal format of ints
In Python 2, numbers prfixed with '0' are parsed as octal,
e.g. '020' -> 16. In Python 3, the prefix is '0o'.
Handle the old syntax for IPA's parameter conversion to keep
backwards compatibility.
Reviewed-By: Tomas Babej <tbabej@redhat.com>
Diffstat (limited to 'ipalib/parameters.py')
-rw-r--r-- | ipalib/parameters.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ipalib/parameters.py b/ipalib/parameters.py index c74686271..8d27d900a 100644 --- a/ipalib/parameters.py +++ b/ipalib/parameters.py @@ -1072,6 +1072,9 @@ class Int(Number): if type(value) is unicode: if u'.' in value: return int(float(value)) + if six.PY3 and re.match('0[0-9]+', value): + # 0-prefixed octal format + return int(value, 8) return int(value, 0) raise ValueError(value) |