aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/xmon
diff options
context:
space:
mode:
authorVincent Bernat <vincent@bernat.im>2014-07-15 07:43:47 -0400
committerMichael Ellerman <mpe@ellerman.id.au>2014-12-28 23:45:43 -0500
commit05b981f493e07856371ecd4a9294f187f5b50cf6 (patch)
tree0619f47359e1ecc71bf4c587bdec9b8b9c0db0c9 /arch/powerpc/xmon
parente3a8446a6a1bff8c2345cacd4f3b8bdea0ba36d8 (diff)
powerpc/xmon: use isspace/isxdigit/isalnum from linux/ctype.h
isxdigit() macro definition is the same. isalnum() from linux/ctype.h will accept additional latin non-ASCII characters. This is harmless since this macro is used in scanhex() which parses user input. isspace() from linux/ctype.h will accept vertical tab and form feed but not NULL. The use of this macro is modified to accept NULL as well. Additional characters are harmless since this macro is also only used in scanhex(). Signed-off-by: Vincent Bernat <vincent@bernat.im> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/xmon')
-rw-r--r--arch/powerpc/xmon/xmon.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c
index 5b150f0c5df9..e66ace703a69 100644
--- a/arch/powerpc/xmon/xmon.c
+++ b/arch/powerpc/xmon/xmon.c
@@ -25,6 +25,7 @@
25#include <linux/irq.h> 25#include <linux/irq.h>
26#include <linux/bug.h> 26#include <linux/bug.h>
27#include <linux/nmi.h> 27#include <linux/nmi.h>
28#include <linux/ctype.h>
28 29
29#include <asm/ptrace.h> 30#include <asm/ptrace.h>
30#include <asm/string.h> 31#include <asm/string.h>
@@ -183,14 +184,6 @@ extern void xmon_leave(void);
183#define GETWORD(v) (((v)[0] << 24) + ((v)[1] << 16) + ((v)[2] << 8) + (v)[3]) 184#define GETWORD(v) (((v)[0] << 24) + ((v)[1] << 16) + ((v)[2] << 8) + (v)[3])
184#endif 185#endif
185 186
186#define isxdigit(c) (('0' <= (c) && (c) <= '9') \
187 || ('a' <= (c) && (c) <= 'f') \
188 || ('A' <= (c) && (c) <= 'F'))
189#define isalnum(c) (('0' <= (c) && (c) <= '9') \
190 || ('a' <= (c) && (c) <= 'z') \
191 || ('A' <= (c) && (c) <= 'Z'))
192#define isspace(c) (c == ' ' || c == '\t' || c == 10 || c == 13 || c == 0)
193
194static char *help_string = "\ 187static char *help_string = "\
195Commands:\n\ 188Commands:\n\
196 b show breakpoints\n\ 189 b show breakpoints\n\
@@ -2164,9 +2157,6 @@ static void dump_pacas(void)
2164} 2157}
2165#endif 2158#endif
2166 2159
2167#define isxdigit(c) (('0' <= (c) && (c) <= '9') \
2168 || ('a' <= (c) && (c) <= 'f') \
2169 || ('A' <= (c) && (c) <= 'F'))
2170static void 2160static void
2171dump(void) 2161dump(void)
2172{ 2162{
@@ -2569,7 +2559,7 @@ scanhex(unsigned long *vp)
2569 int i; 2559 int i;
2570 for (i=0; i<63; i++) { 2560 for (i=0; i<63; i++) {
2571 c = inchar(); 2561 c = inchar();
2572 if (isspace(c)) { 2562 if (isspace(c) || c == '\0') {
2573 termch = c; 2563 termch = c;
2574 break; 2564 break;
2575 } 2565 }