]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
iprule: Allow specifying ports in hexadecimal notation
authorIdo Schimmel <idosch@nvidia.com>
Tue, 25 Feb 2025 09:09:15 +0000 (11:09 +0200)
committerDavid Ahern <dsahern@kernel.org>
Fri, 28 Feb 2025 15:48:04 +0000 (15:48 +0000)
This will be useful when enabling port masks in the next patch.

Before:

 # ip rule add sport 0x1 table 100
 Invalid "sport"

After:

 # ip rule add sport 0x1 table 100
 $ ip rule show sport 0x1
 32765:  from all sport 1 lookup 100

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: David Ahern <dsahern@kernel.org>
ip/iprule.c

index 61e092bc56931f4a4f26b002a051b64d90a1e160..64d389bebb760dca0924ed46eb1a9f79feed2e19 100644 (file)
@@ -608,16 +608,16 @@ static void iprule_port_parse(char *arg, struct fib_rule_port_range *r)
        if (sep) {
                *sep = '\0';
 
-               if (get_u16(&r->start, arg, 10))
+               if (get_u16(&r->start, arg, 0))
                        invarg("invalid port range start", arg);
 
-               if (get_u16(&r->end, sep + 1, 10))
+               if (get_u16(&r->end, sep + 1, 0))
                        invarg("invalid port range end", sep + 1);
 
                return;
        }
 
-       if (get_u16(&r->start, arg, 10))
+       if (get_u16(&r->start, arg, 0))
                invarg("invalid port", arg);
 
        r->end = r->start;