summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreric <eric@openbsd.org>2020-04-28 21:46:43 +0000
committereric <eric@openbsd.org>2020-04-28 21:46:43 +0000
commitd48edb0478f1e77ff7fd50177b582d0c8e0c2c18 (patch)
treed45ab77660ff961f3cc20e1653545a11f8d554c1
parentupdate filter documentation after protocol change (diff)
downloadOpenSMTPD-native.tar.xz
OpenSMTPD-native.zip
In virtual alias context, do not try to match catchall entries fornative
usernames, but only for email addresses. fixes an issue where usernames always expand to the @ wildcard if defined in the virtual alias file. discussed with Gilles Chehade ok millert@
-rw-r--r--aliases.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/aliases.c b/aliases.c
index 884f6963..1c602e9f 100644
--- a/aliases.c
+++ b/aliases.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: aliases.c,v 1.77 2018/12/28 12:47:28 eric Exp $ */
+/* $OpenBSD: aliases.c,v 1.78 2020/04/28 21:46:43 eric Exp $ */
/*
* Copyright (c) 2008 Gilles Chehade <gilles@poolp.org>
@@ -164,6 +164,10 @@ aliases_virtual_get(struct expand *expand, const struct mailaddr *maddr)
if (ret)
goto expand;
+ /* Do not try catch-all entries if there is no domain */
+ if (domain[0] == '\0')
+ return 0;
+
if (!bsnprintf(buf, sizeof(buf), "@%s", domain))
return 0;
/* Failed ? We lookup for catch all for virtual domain */