mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-12-25 18:14:53 +00:00
ip6_addr.c: Convert several macros to private #defines
The macros are functions from ctype.h, but ctype.h declares them as functions, not as #defines It makes no sense to abstract them in lwIPs portability layer, the functions are of low complexity and they are only used in this file.
This commit is contained in:
parent
a9a3d473ac
commit
93f4245e89
@ -50,14 +50,12 @@
|
|||||||
/* used by IP6_ADDR_ANY(6) in ip6_addr.h */
|
/* used by IP6_ADDR_ANY(6) in ip6_addr.h */
|
||||||
const ip_addr_t ip6_addr_any = IPADDR6_INIT(0ul, 0ul, 0ul, 0ul);
|
const ip_addr_t ip6_addr_any = IPADDR6_INIT(0ul, 0ul, 0ul, 0ul);
|
||||||
|
|
||||||
#ifndef isprint
|
#define lwip_in_range(c, lo, up) ((u8_t)c >= lo && (u8_t)c <= up)
|
||||||
#define in_range(c, lo, up) ((u8_t)c >= lo && (u8_t)c <= up)
|
#define lwip_isprint(c) lwip_in_range(c, 0x20, 0x7f)
|
||||||
#define isprint(c) in_range(c, 0x20, 0x7f)
|
#define lwip_isdigit(c) lwip_in_range(c, '0', '9')
|
||||||
#define isdigit(c) in_range(c, '0', '9')
|
#define lwip_isxdigit(c) (lwip_isdigit(c) || lwip_in_range(c, 'a', 'f') || lwip_in_range(c, 'A', 'F'))
|
||||||
#define isxdigit(c) (isdigit(c) || in_range(c, 'a', 'f') || in_range(c, 'A', 'F'))
|
#define lwip_islower(c) lwip_in_range(c, 'a', 'z')
|
||||||
#define islower(c) in_range(c, 'a', 'z')
|
#define lwip_isspace(c) (c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\t' || c == '\v')
|
||||||
#define isspace(c) (c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\t' || c == '\v')
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define lwip_xchar(i) ((char)((i) < 10 ? '0' + (i) : 'A' + (i) - 10))
|
#define lwip_xchar(i) ((char)((i) < 10 ? '0' + (i) : 'A' + (i) - 10))
|
||||||
|
|
||||||
@ -82,7 +80,7 @@ ip6addr_aton(const char *cp, ip6_addr_t *addr)
|
|||||||
for (s = cp; *s != 0; s++) {
|
for (s = cp; *s != 0; s++) {
|
||||||
if (*s == ':') {
|
if (*s == ':') {
|
||||||
zero_blocks--;
|
zero_blocks--;
|
||||||
} else if (!isxdigit(*s)) {
|
} else if (!lwip_isxdigit(*s)) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -130,11 +128,11 @@ ip6addr_aton(const char *cp, ip6_addr_t *addr)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (isxdigit(*s)) {
|
} else if (lwip_isxdigit(*s)) {
|
||||||
/* add current digit */
|
/* add current digit */
|
||||||
current_block_value = (current_block_value << 4) +
|
current_block_value = (current_block_value << 4) +
|
||||||
(isdigit(*s) ? (u32_t)(*s - '0') :
|
(lwip_isdigit(*s) ? (u32_t)(*s - '0') :
|
||||||
(u32_t)(10 + (islower(*s) ? *s - 'a' : *s - 'A')));
|
(u32_t)(10 + (lwip_islower(*s) ? *s - 'a' : *s - 'A')));
|
||||||
} else {
|
} else {
|
||||||
/* unexpected digit, space? CRLF? */
|
/* unexpected digit, space? CRLF? */
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user