diff options
-rw-r--r-- | networking/libiproute/ll_addr.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/networking/libiproute/ll_addr.c b/networking/libiproute/ll_addr.c index ab5a2c522..e732efdb2 100644 --- a/networking/libiproute/ll_addr.c +++ b/networking/libiproute/ll_addr.c | |||
@@ -64,11 +64,7 @@ int ll_addr_a2n(unsigned char *lladdr, int len, char *arg) | |||
64 | *cp = 0; | 64 | *cp = 0; |
65 | cp++; | 65 | cp++; |
66 | } | 66 | } |
67 | if (sscanf(arg, "%x", &temp) != 1) { | 67 | if (sscanf(arg, "%x", &temp) != 1 || (temp < 0 || temp > 255)) { |
68 | bb_error_msg("\"%s\" is invalid lladdr", arg); | ||
69 | return -1; | ||
70 | } | ||
71 | if (temp < 0 || temp > 255) { | ||
72 | bb_error_msg("\"%s\" is invalid lladdr", arg); | 68 | bb_error_msg("\"%s\" is invalid lladdr", arg); |
73 | return -1; | 69 | return -1; |
74 | } | 70 | } |