|
@@ -17,6 +17,7 @@
|
|
|
#include <linux/module.h>
|
|
|
#include <linux/jiffies.h>
|
|
|
#include <linux/kernel.h>
|
|
|
+#include <linux/ctype.h>
|
|
|
#include <linux/inet.h>
|
|
|
#include <linux/mm.h>
|
|
|
#include <linux/net.h>
|
|
@@ -348,9 +349,7 @@ int mac_pton(const char *s, u8 *mac)
|
|
|
|
|
|
/* Don't dirty result unless string is valid MAC. */
|
|
|
for (i = 0; i < ETH_ALEN; i++) {
|
|
|
- if (!strchr("0123456789abcdefABCDEF", s[i * 3]))
|
|
|
- return 0;
|
|
|
- if (!strchr("0123456789abcdefABCDEF", s[i * 3 + 1]))
|
|
|
+ if (!isxdigit(s[i * 3]) || !isxdigit(s[i * 3 + 1]))
|
|
|
return 0;
|
|
|
if (i != ETH_ALEN - 1 && s[i * 3 + 2] != ':')
|
|
|
return 0;
|