From 4b5cbb3db1582fd14d09e55d344e78aa0c6344a0 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Tue, 21 Feb 2017 19:12:32 +0100 Subject: [PATCH] settings: Add support for hex integers (0x prefix) via get_int() --- src/libstrongswan/settings/settings.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libstrongswan/settings/settings.c b/src/libstrongswan/settings/settings.c index 829e784820..b00e8190ca 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; -- 2.47.2