From: Tom Kistner Date: Tue, 9 Jun 2009 14:19:56 +0000 (+0000) Subject: The last bits of DKIM support X-Git-Url: https://git.exim.org/users/jgh/exim.git/commitdiff_plain/6e85769c76ad2310bf6ff0ec10b20e8608103df3 The last bits of DKIM support --- diff --git a/src/src/acl.c b/src/src/acl.c index fece68be7..a317512ee 100644 --- a/src/src/acl.c +++ b/src/src/acl.c @@ -1,4 +1,4 @@ -/* $Cambridge: exim/src/src/acl.c,v 1.82.2.2 2009/05/20 14:30:14 tom Exp $ */ +/* $Cambridge: exim/src/src/acl.c,v 1.82.2.3 2009/06/09 14:19:56 tom Exp $ */ /************************************************* * Exim - an Internet mail transport agent * @@ -64,6 +64,10 @@ enum { ACLC_ACL, ACLC_DELAY, #ifdef WITH_OLD_DEMIME ACLC_DEMIME, +#endif +#ifndef DISABLE_DKIM + ACLC_DKIM_SIGNER, + ACLC_DKIM_STATUS, #endif ACLC_DNSLISTS, ACLC_DOMAINS, @@ -122,6 +126,10 @@ static uschar *conditions[] = { US"delay", #ifdef WITH_OLD_DEMIME US"demime", +#endif +#ifndef DISABLE_DKIM + US"dkim_signer", + US"dkim_status", #endif US"dnslists", US"domains", @@ -242,6 +250,10 @@ static uschar cond_expand_at_top[] = { TRUE, /* delay */ #ifdef WITH_OLD_DEMIME TRUE, /* demime */ +#endif +#ifndef DISABLE_DKIM + TRUE, /* dkim_signer */ + TRUE, /* dkim_status */ #endif TRUE, /* dnslists */ FALSE, /* domains */ @@ -298,6 +310,10 @@ static uschar cond_modifiers[] = { TRUE, /* delay */ #ifdef WITH_OLD_DEMIME FALSE, /* demime */ +#endif +#ifndef DISABLE_DKIM + FALSE, /* dkim_signer */ + FALSE, /* dkim_status */ #endif FALSE, /* dnslists */ FALSE, /* domains */ @@ -388,6 +404,14 @@ static unsigned int cond_forbids[] = { ~((1<next) break; #endif + #ifndef DISABLE_DKIM + case ACLC_DKIM_SIGNER: + rc = match_isinlist(dkim_signing_domain, + &arg,0,NULL,NULL,MCL_STRING,TRUE,NULL); + break; + + case ACLC_DKIM_STATUS: + rc = match_isinlist(dkim_exim_expand_query(DKIM_VERIFY_STATUS), + &arg,0,NULL,NULL,MCL_STRING,TRUE,NULL); + break; + #endif + case ACLC_DNSLISTS: rc = verify_check_dnsbl(&arg); break;