From 94cdfebec852a2429c008cc2a55f8e4183f36972 Mon Sep 17 00:00:00 2001 From: "djm@openbsd.org" Date: Thu, 24 Oct 2024 03:14:37 +0000 Subject: upstream: relax valid_domain() checks to allow an underscore as the first character. ok deraadt@ OpenBSD-Commit-ID: 3f8be6d32496e5596dd8b14e19cb067ddd7969ef --- misc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/misc.c b/misc.c index 1b4b55c50..dd0bd032a 100644 --- a/misc.c +++ b/misc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: misc.c,v 1.197 2024/09/25 01:24:04 djm Exp $ */ +/* $OpenBSD: misc.c,v 1.198 2024/10/24 03:14:37 djm Exp $ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2005-2020 Damien Miller. All rights reserved. @@ -2406,7 +2406,8 @@ valid_domain(char *name, int makelower, const char **errstr) strlcpy(errbuf, "empty domain name", sizeof(errbuf)); goto bad; } - if (!isalpha((u_char)name[0]) && !isdigit((u_char)name[0])) { + if (!isalpha((u_char)name[0]) && !isdigit((u_char)name[0]) && + name[0] != '_' /* technically invalid, but common */) { snprintf(errbuf, sizeof(errbuf), "domain name \"%.100s\" " "starts with invalid character", name); goto bad; -- cgit v1.2.3