summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2009-05-29 07:34:54 +0000
committerdelphij <delphij@FreeBSD.org>2009-05-29 07:34:54 +0000
commitdafeb495e62f85e08a23a9536ffd3edd8ac1104e (patch)
tree44436f983479393b845c3edbafd07b6421b43c47 /lib
parent4647ce79b7a81091aead12f229e5dddaa966e080 (diff)
downloadFreeBSD-src-dafeb495e62f85e08a23a9536ffd3edd8ac1104e.zip
FreeBSD-src-dafeb495e62f85e08a23a9536ffd3edd8ac1104e.tar.gz
Add an option to enforce strict RFC 1034 compliance.
PR: kern/129477
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/resolv/res_comp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/libc/resolv/res_comp.c b/lib/libc/resolv/res_comp.c
index a00755f..81bce5e 100644
--- a/lib/libc/resolv/res_comp.c
+++ b/lib/libc/resolv/res_comp.c
@@ -148,7 +148,11 @@ dn_skipname(const u_char *ptr, const u_char *eom) {
#define digitchar(c) ((c) >= 0x30 && (c) <= 0x39)
#define borderchar(c) (alphachar(c) || digitchar(c))
+#ifdef RES_ENFORCE_RFC1034
+#define middlechar(c) (borderchar(c) || hyphenchar(c))
+#else
#define middlechar(c) (borderchar(c) || hyphenchar(c) || underscorechar(c))
+#endif
#define domainchar(c) ((c) > 0x20 && (c) < 0x7f)
int
OpenPOWER on IntegriCloud