Something like the attached patch is what I have in mind at the moment (not tested).
Index: dkim.c
===================================================================
RCS file: /cvs/libdkim/dkim.c,v
retrieving revision 1.448
diff -u -r1.448 dkim.c
--- dkim.c      9 Jan 2008 21:20:19 -0000       1.448
+++ dkim.c      14 Jan 2008 23:55:53 -0000
@@ -4075,13 +4075,31 @@
 
        if (pstate == NULL || pstate->ps_state < 1)
        {
+               char *i;
+               char *at;
+
                for (c = 0; c < dkim->dkim_sigcount; c++)
                {
                        sig = dkim->dkim_siglist[c];
 
+                       /* check for domain match */
+                       i = dkim_param_get(sig->sig_taglist, "i");
+                       if (i == NULL)
+                       {
+                               i = sig->sig_domain;
+                       }
+                       else
+                       {
+                               at = strchr(i, '@');
+                               if (at != NULL)
+                                       i = at + 1;
+                       }
+
+                       if (strcasecmp(i, dkim->dkim_domain) != 0)
+                               continue;
+
                        if ((sig->sig_flags & DKIM_SIGFLAG_PASSED) != 0 &&
-                           sig->sig_bh == DKIM_SIGBH_MATCH &&
-                           strcasecmp(dkim->dkim_domain, sig->sig_domain) == 0)
+                           sig->sig_bh == DKIM_SIGBH_MATCH)
                        {
                                dkim->dkim_presult = DKIM_PRESULT_VALIDOSIG;
                                *susp = FALSE;
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
dkim-milter-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dkim-milter-discuss

Reply via email to