diff options
author | Xin LI <delphij@FreeBSD.org> | 2006-09-17 14:57:21 +0000 |
---|---|---|
committer | Xin LI <delphij@FreeBSD.org> | 2006-09-17 14:57:21 +0000 |
commit | 0c3f4073362270f5703ea9924b8ddaa643badaf1 (patch) | |
tree | 992ec8ba903d65564ba89c709e8954a02182d2a2 /mail | |
parent | a996c3134b0166cbb7ce9e6056b35c29f018a333 (diff) | |
download | ports-0c3f4073362270f5703ea9924b8ddaa643badaf1.tar.gz ports-0c3f4073362270f5703ea9924b8ddaa643badaf1.zip |
Apply a vendor patch which addresses the "syntax error in signature data"
introduced in 0.4.1:
dk-filter/dk-filter.c: 1.158 -> 1.159
libdk/dk.c: 1.168 -> 1.169
Obtained from: Sendmail (msk@)
Notes
Notes:
svn path=/head/; revision=173244
Diffstat (limited to 'mail')
-rw-r--r-- | mail/dk-milter/Makefile | 1 | ||||
-rw-r--r-- | mail/dk-milter/files/patch-vendor-postfix | 71 |
2 files changed, 72 insertions, 0 deletions
diff --git a/mail/dk-milter/Makefile b/mail/dk-milter/Makefile index 56923c3b91a3..99689a39faab 100644 --- a/mail/dk-milter/Makefile +++ b/mail/dk-milter/Makefile @@ -7,6 +7,7 @@ PORTNAME= dk-milter PORTVERSION= 0.4.1 +PORTREVISION= 1 CATEGORIES= mail MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= dk-milter diff --git a/mail/dk-milter/files/patch-vendor-postfix b/mail/dk-milter/files/patch-vendor-postfix new file mode 100644 index 000000000000..bfcd3bcb71a2 --- /dev/null +++ b/mail/dk-milter/files/patch-vendor-postfix @@ -0,0 +1,71 @@ +Index: dk-filter/dk-filter.c +=================================================================== +RCS file: /cvs/dk-filter/dk-filter.c,v +retrieving revision 1.158 +retrieving revision 1.159 +diff -u -r1.158 -r1.159 +--- dk-filter/dk-filter.c 19 May 2006 21:42:05 -0000 1.158 ++++ dk-filter/dk-filter.c 26 Jun 2006 19:41:23 -0000 1.159 +@@ -1625,6 +1625,8 @@ + } + #endif /* _FFR_REQUIRED_HEADERS */ + ++ msgsigned = (dkf_findheader(dfc, DK_SIGNHEADER, 0) != NULL); ++ + /* find the Sender: or From: header */ + memset(addr, '\0', sizeof addr); + from = dkf_findheader(dfc, "Sender", 0); +@@ -1639,7 +1641,8 @@ + dfc->mctx_jobid); + } + +- dfc->mctx_addheader = TRUE; ++ if (msgsigned) ++ dfc->mctx_addheader = TRUE; + dfc->mctx_headeronly = TRUE; + dfc->mctx_status = DKF_STATUS_BADFORMAT; + return SMFIS_CONTINUE; +@@ -1669,7 +1672,6 @@ + originok = FALSE; + + /* is it a domain we sign for? */ +- msgsigned = (dkf_findheader(dfc, DK_SIGNHEADER, 0) != NULL); + if (!msgsigned && domains != NULL && dfc->mctx_domain != NULL) + { + int n; +Index: libdk/dk.c +=================================================================== +RCS file: /cvs/libdk/dk.c,v +retrieving revision 1.168 +retrieving revision 1.169 +diff -u -r1.168 -r1.169 +--- libdk/dk.c 6 Jun 2006 23:22:45 -0000 1.168 ++++ libdk/dk.c 26 Jun 2006 19:40:00 -0000 1.169 +@@ -1890,8 +1890,6 @@ + else + hdr = sender; + +- /* if we found a signature but the sender doesn't match it, say so */ +- + /* if verifying and no from/sender header was found, short-circuit */ + if (hdr == NULL && dk->dk_mode == DK_MODE_VERIFY) + { +@@ -1924,6 +1922,7 @@ + return DK_STAT_OK; + } + ++ /* if we found a signature but the sender doesn't match it, say so */ + if (hdr != NULL) + { + int status; +@@ -2418,7 +2417,7 @@ + int status; + + /* no sender header was found below the signature */ +- if (dk->dk_skipbody) ++ if (dk->dk_skipbody && dk->dk_processing) + return DK_STAT_SYNTAX; + + if (dk->dk_key == NULL) + + |