diff options
author | Tobias Brunner <tobias@strongswan.org> | 2017-02-21 19:12:32 +0100 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2017-03-02 08:50:54 +0100 |
commit | 4b5cbb3db1582fd14d09e55d344e78aa0c6344a0 (patch) | |
tree | 78b67849c5b3869b1b6887d4ac975f4bbd30ba26 /src/libstrongswan | |
parent | 6a8f1b8f2cb737011223f0d5b92249cad8e9728d (diff) | |
download | strongswan-4b5cbb3db1582fd14d09e55d344e78aa0c6344a0.tar.bz2 strongswan-4b5cbb3db1582fd14d09e55d344e78aa0c6344a0.tar.xz |
settings: Add support for hex integers (0x prefix) via get_int()
Diffstat (limited to 'src/libstrongswan')
-rw-r--r-- | src/libstrongswan/settings/settings.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libstrongswan/settings/settings.c b/src/libstrongswan/settings/settings.c index 829e78482..b00e8190c 100644 --- a/src/libstrongswan/settings/settings.c +++ b/src/libstrongswan/settings/settings.c @@ -512,11 +512,16 @@ inline int settings_value_as_int(char *value, int def) { int intval; char *end; + int base = 10; if (value) { errno = 0; - intval = strtol(value, &end, 10); + if (value[0] == '0' && value[1] == 'x') + { /* manually detect 0x prefix as we want to avoid octal encoding */ + base = 16; + } + intval = strtol(value, &end, base); if (errno == 0 && *end == 0 && end != value) { return intval; |