]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Added 0x... for numbers
authorAlan T. DeKok <aland@freeradius.org>
Sun, 3 Mar 2013 16:45:04 +0000 (11:45 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Sun, 3 Mar 2013 16:45:04 +0000 (11:45 -0500)
src/modules/rlm_expr/rlm_expr.c

index 9e2398bce4d4da44b035c5082594778fa416c5f3..579d0ee1ddf9a34919c15f8710dc0ac84bb41a04 100644 (file)
@@ -150,6 +150,15 @@ static int get_number(REQUEST *request, const char **string, int64_t *answer)
                         *
                         *  If it isn't, then we die.
                         */
+                       if ((*p == '0') && (p[1] == 'x')) {
+                               char *end;
+
+                               x = strtoul(p, &end, 16);
+                               p = end;
+                               goto calc;
+                       }
+
+
                        if ((*p < '0') || (*p > '9')) {
                                RDEBUG2("Not a number at \"%s\"", p);
                                return -1;
@@ -167,6 +176,7 @@ static int get_number(REQUEST *request, const char **string, int64_t *answer)
                        }
                }
 
+       calc:
                switch (this) {
                default:
                case TOKEN_NONE: