aboutsummaryrefslogtreecommitdiffstats
path: root/smtpd/ruleset.c
diff options
context:
space:
mode:
authorGilles Chehade <gilles@poolp.org>2019-11-12 21:32:40 +0100
committerGilles Chehade <gilles@poolp.org>2019-11-12 21:32:40 +0100
commit64a905d9cb8b3dba05a56c200fd027096360a20d (patch)
tree946721cd5f69595194de3c6af4ba82bceed5552a /smtpd/ruleset.c
parentMerge pull request #992 from OpenSMTPD/clang_scan_2 (diff)
parentsync (diff)
downloadOpenSMTPD-64a905d9cb8b3dba05a56c200fd027096360a20d.tar.xz
OpenSMTPD-64a905d9cb8b3dba05a56c200fd027096360a20d.zip
Merge branch 'master' into portable
Diffstat (limited to 'smtpd/ruleset.c')
-rw-r--r--smtpd/ruleset.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/smtpd/ruleset.c b/smtpd/ruleset.c
index 286a2a43..2eae58c0 100644
--- a/smtpd/ruleset.c
+++ b/smtpd/ruleset.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ruleset.c,v 1.45 2019/11/04 00:05:38 gilles Exp $ */
+/* $OpenBSD: ruleset.c,v 1.46 2019/11/12 20:21:46 gilles Exp $ */
/*
* Copyright (c) 2009 Gilles Chehade <gilles@poolp.org>
@@ -86,9 +86,12 @@ ruleset_match_from(struct rule *r, const struct envelope *evp)
}
else {
key = ss_to_text(&evp->ss);
- if (strcmp(key, "local") == 0)
- if (r->flag_from_socket)
+ if (r->flag_from_socket) {
+ if (strcmp(key, "local") == 0)
return MATCH_RESULT(1, r->flag_from);
+ else
+ return r->flag_from < 0 ? 1 : 0;
+ }
}
if (r->flag_from_regex)
service = K_REGEX;