diff options
author | Martin Wilke <miwi@FreeBSD.org> | 2009-06-02 21:43:10 +0000 |
---|---|---|
committer | Martin Wilke <miwi@FreeBSD.org> | 2009-06-02 21:43:10 +0000 |
commit | 3fcd9d13872a1d1b3a80f3bfda5e99190f7ce7c6 (patch) | |
tree | a201c97aa2427aa8220aacf7876217d3d595f775 /mail/bogofilter | |
parent | 7aa0225d7087b6067897201812f0ea5587148c62 (diff) | |
download | ports-3fcd9d13872a1d1b3a80f3bfda5e99190f7ce7c6.tar.gz ports-3fcd9d13872a1d1b3a80f3bfda5e99190f7ce7c6.zip |
Notes
Diffstat (limited to 'mail/bogofilter')
-rw-r--r-- | mail/bogofilter/Makefile | 14 | ||||
-rw-r--r-- | mail/bogofilter/files/patch-fixqp | 305 | ||||
-rw-r--r-- | mail/bogofilter/files/patch-src-tests-tframe | 8 |
3 files changed, 313 insertions, 14 deletions
diff --git a/mail/bogofilter/Makefile b/mail/bogofilter/Makefile index 856b0f6cc90e..a12403b90e0b 100644 --- a/mail/bogofilter/Makefile +++ b/mail/bogofilter/Makefile @@ -7,7 +7,7 @@ PORTNAME= bogofilter PORTVERSION= 1.2.0 -PORTREVISION?= 1 +PORTREVISION?= 2 CATEGORIES?= mail MASTER_SITES= SF @@ -27,15 +27,12 @@ CONFLICTS?= bogofilter-sqlite-[0-9]* bogofilter-qdbm-[0-9]* bogofilter-tc-[0-9]* USE_BZIP2= yes USE_PERL5_RUN= yes GNU_CONFIGURE= yes -PATCH_STRIP= -p1 MAKE_JOBS_SAFE= yes +USE_AUTOTOOLS= aclocal:110 automake:110 autoconf:262 autoheader:262 +ACLOCAL_ARGS= -Im4 .include <bsd.port.pre.mk> -.if ${ARCH} == "sparc64" -BROKEN= Fails self-tests on sparc64 -.endif - BF_LIBS?= -l${BDB_LIB_NAME} BF_CPPFLAGS?= -I${BDB_INCLUDE_DIR} -I${LOCALBASE}/include CONFIGURE_ARGS+= --sysconfdir=${PREFIX}/etc @@ -56,6 +53,11 @@ INSTALL_TARGET= install-strip prefix=${PREFIX} mandir=${MANPREFIX}/man MAN1= bogofilter.1 bogoutil.1 bogoupgrade.1 bogolexer.1 bogotune.1 \ bf_copy.1 bf_compact.1 bf_tar.1 +# remove files that were accidentally shipped, but should get rebuilt +post-extract: + ${RM} ${WRKSRC}/src/bogoupgrade + ${RM} ${WRKSRC}/src/tests/t.query.config + post-patch: ${REINPLACE_CMD} -e 's|^#!.*perl|#! ${PERL}|' \ ${WRKSRC}/src/tests/unsort.pl \ diff --git a/mail/bogofilter/files/patch-fixqp b/mail/bogofilter/files/patch-fixqp new file mode 100644 index 000000000000..be922fcd7931 --- /dev/null +++ b/mail/bogofilter/files/patch-fixqp @@ -0,0 +1,305 @@ +Index: src/version.sh +=================================================================== +--- src/version.sh (revision 6820) ++++ src/version.sh (revision 6838) +@@ -4,8 +4,8 @@ + # + # create version.c to define BOGOFILTER_VERSION + # +-# if VERSION in config.h does not contain 'cvs', use its value. +-# if it does contain 'cvs', append a date to it. ++# if VERSION in config.h does not contain 'svn', use its value. ++# if it does contain 'svn', append a date to it. + # + # We'll first try to find CVS/Entries files and use the most + # current date from the files. To parse, we need Perl 5 and +Index: src/tests/inputs/mime-qp-cont-with-cr.txt +=================================================================== +--- src/tests/inputs/mime-qp-cont-with-cr.txt (revision 0) ++++ src/tests/inputs/mime-qp-cont-with-cr.txt (revision 6838) +@@ -0,0 +1,31 @@ ++Subject: This is a test message to check bogofilter's qp decoding of ++ continuation lines in the presence of spurious CR characters. ++MIME-Version: 1.0 ++Content-Type: multipart/alternative; ++ boundary="----=_NextPart_000_0007_01C9DC27.B9F73130" ++ ++This is a multi-part message in MIME format. ++ ++------=_NextPart_000_0007_01C9DC27.B9F73130 ++Content-Type: text/html; ++ charset="iso-8859-2" ++Content-Transfer-Encoding: quoted-printable ++ ++<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> ++<HTML><HEAD> ++<META http-equiv=3DContent-Type content=3D"text/html; charset=3Diso-8859-2"= ++> ++<META content=3D"MSHTML 6.00.2800.1506" name=3DGENERATOR> ++<STYLE></STYLE> ++</HEAD> ++<BODY> ++<DIV align=3Dcenter><FONT face=3DArial size=3D2>50mg x 10 pills $6.00 per p= ++ill</FONT></DIV> ++<DIV align=3Dcenter><FONT face=3DArial size=3D2></FONT> </DIV> ++<DIV align=3Dcenter><FONT face=3DArial size=3D2> ++<A href=3D"http://groups.yahoo.com/group/ganebawusexut64/message/1">Visit h= ++ere</A></FONT></DIV> ++</BODY></HTML> ++ ++------=_NextPart_000_0007_01C9DC27.B9F73130-- ++ + +Property changes on: src/tests/inputs/mime-qp-cont-with-cr.txt +___________________________________________________________________ +Added: svn:eol-style + + native + +Index: src/tests/t.frame +=================================================================== +--- src/tests/t.frame (revision 6820) ++++ src/tests/t.frame (revision 6838) +@@ -39,7 +39,7 @@ + export _POSIX2_VERSION + + # Obtain data base file suffix +-DB_NAME=$("$BOGOFILTER" -C -V 2>&1 | sed -n '/Database:/ { p;q }') ++DB_NAME=$("$BOGOFILTER" -C -V 2>&1 | sed -n '/Database:/ {p;q;}') + case $DB_NAME in + *BerkeleyDB*|*"Berkeley DB"*) + case $DB_NAME in +Index: src/tests/outputs/mime-qp-cont-with-cr.exp +=================================================================== +--- src/tests/outputs/mime-qp-cont-with-cr.exp (revision 0) ++++ src/tests/outputs/mime-qp-cont-with-cr.exp (revision 6838) +@@ -0,0 +1,50 @@ ++subj:This ++subj:test ++subj:message ++subj:check ++subj:bogofilter's ++subj:decoding ++subj:continuation ++subj:lines ++subj:the ++subj:presence ++subj:spurious ++subj:characters ++head:MIME-Version ++head:Content-Type ++head:multipart ++head:alternative ++This ++multi-part ++message ++MIME ++format ++mime:Content-Type ++mime:text ++mime:html ++mime:charset ++mime:iso-8859-2 ++mime:Content-Transfer-Encoding ++mime:quoted-printable ++face ++Arial ++size ++pills ++$6.00 ++per ++pill ++face ++Arial ++size ++nbsp ++face ++Arial ++size ++href ++http ++groups.yahoo.com ++group ++ganebawusexut64 ++message ++Visit ++here +Index: src/tests/t.lexer.qpcr +=================================================================== +--- src/tests/t.lexer.qpcr (revision 0) ++++ src/tests/t.lexer.qpcr (revision 6838) +@@ -0,0 +1,16 @@ ++#! /bin/sh ++ ++# This check sees if bogofilter can reassemble lines with spurious CR ++# during QP decoding. It used to fail up to and including 1.2.0 with ++# lines ending in =<CR>, not considering these as continuation. ++ ++. ${srcdir:=.}/t.frame ++ ++ifn=mime-qp-cont-with-cr.txt ++ofn=mime-qp-cont-with-cr.out ++efn=mime-qp-cont-with-cr.exp ++ ++cat "$srcdir/inputs/$ifn" \ ++| $BOGOLEXER -p -C > "$TMPDIR/$ofn" ++ ++exec diff $DIFF_BRIEF "$OUTPUTS/$efn" "$TMPDIR/$ofn" +Index: src/tests/Makefile.am +=================================================================== +--- src/tests/Makefile.am (revision 6820) ++++ src/tests/Makefile.am (revision 6838) +@@ -38,7 +38,7 @@ + t.passthrough-hb \ + t.escaped.html t.escaped.url \ + t.split t.parsing \ +- t.lexer t.lexer.mbx \ ++ t.lexer t.lexer.mbx t.lexer.qpcr \ + t.spam.header.place \ + t.block.on.subnets \ + t.token.count \ +@@ -49,16 +49,19 @@ + + WORDLIST_TESTS = t.dump.load t.nonascii.replace t.maint t.robx t.regtest t.upgrade.subnet.prefix t.multiple.wordlists t.probe t.bf_compact + +-SCORING_TESTS = t.query.config t.score1 t.score2 t.systest t.grftest t.wordhist ++SCORING_TESTS = t.score1 t.score2 t.systest t.grftest t.wordhist + + BULKMODE_TESTS = t.bulkmode t.MH t.maildir t.bogoutil + + INTEGRITY_TESTS = t.lock1 t.lock3 t.valgrind + # INTEGRITY_TESTS += t.lock2 + ++# these tests are built, but must not be shipped: ++BUILT_TESTS = t.query.config ++ + TESTSCRIPTS = ${ENVIRON_TESTS} ${PARSING_TESTS} ${WORDLIST_TESTS} ${SCORING_TESTS} ${BULKMODE_TESTS} ${INTEGRITY_TESTS} + +-TESTS=$(TESTSCRIPTS) ++TESTS=$(BUILT_TESTS) $(TESTSCRIPTS) + + TESTS_ENVIRONMENT=RUN_FROM_MAKE=1 AWK=$(AWK) srcdir=$(srcdir) SHELL="$(SHELL)" $(SHELL) $(VERBOSE) + +@@ -73,6 +76,7 @@ + inputs/lexer.inp \ + inputs/lexer.mbx \ + inputs/lexer.out \ ++ inputs/mime-qp-cont-with-cr.txt \ + inputs/msg.1.txt \ + inputs/msg.2.txt \ + inputs/msg.3.txt \ +@@ -103,6 +107,7 @@ + outputs/maildir.out \ + outputs/message_addr.ref \ + outputs/message_id.ref \ ++ outputs/mime-qp-cont-with-cr.exp \ + outputs/msg.1.v \ + outputs/msg.2a.vv \ + outputs/msg.2a.vvv \ +Index: src/Makefile.am +=================================================================== +--- src/Makefile.am (revision 6820) ++++ src/Makefile.am (revision 6838) +@@ -254,8 +254,7 @@ + fgetsl_test_CFLAGS= -DMAIN + + # what to distribute +-EXTRA_DIST = $(bin_SCRIPTS) \ +- bogoupgrade.in \ ++EXTRA_DIST = bogoupgrade.in \ + version.sh \ + strlcat.3 strlcpy.3 \ + patch.lexer.254.txt patch.lexer.253x.txt +Index: src/qp.c +=================================================================== +--- src/qp.c (revision 6820) ++++ src/qp.c (revision 6838) +@@ -41,6 +41,10 @@ + } + } + ++/* Function Prototypes */ ++ ++static int qp_eol_check(byte *s, byte *e); ++ + /* Function Definitions */ + + uint qp_decode(word_t *word, qp_mode mode) +@@ -56,10 +60,13 @@ + int x, y; + switch (ch) { + case '=': +- if (mode == RFC2045 && s + 1 <= e && s[0] == '\n') { +- /* continuation line, trailing = */ +- s++; +- continue; ++ if (mode == RFC2045) { ++ int c = qp_eol_check(s, e); ++ if (c != 0) { ++ /* continuation line, trailing = */ ++ s += c; ++ continue; ++ } + } + if (s + 2 <= e && + (y = hex_to_bin(s[0])) >= 0 && (x = hex_to_bin(s[1])) >= 0) { +@@ -129,3 +136,22 @@ + + return true; + } ++ ++static int qp_eol_check(byte *s, byte *e) ++{ ++ if (s + 1 <= e) { ++ /* test for LF */ ++ if (s[0] == '\n') ++ { ++ /* only LF */ ++ return 1; ++ } ++ ++ if (s[0] == '\r' ++ && s + 2 <= e && s[1] == '\n') ++ /* CR LF */ ++ return 2; ++ } ++ ++ return 0; ++} +Index: NEWS +=================================================================== +--- NEWS (revision 6820) ++++ NEWS (revision 6838) +@@ -15,8 +15,19 @@ + + ------------------------------------------------------------------------------- + +-1.2.0 2009-02-21 (released) ++ 2009-05-28 ++ * Removed two scripts that are auto-built. ++ * Added test case for Stephen Davies' Q-P EOL problem (see below). + ++ 2009-05-25 ++ * Fixed EOL problem in quoted_printable text. Problem reported by ++ Stephen Davies and identified by Pavel Kankovsky. ++ ++ 2009-03-28 ++ * Promoted to "stable" ++ ++1.2.0 2009-02-21 (released) ++ + 2009-02-20 + * Flex-2.5.35 has fix for memory allocation problem in 2.5.4, + 2.5.31, and 2.5.33, making bogofilter's flex patch obsolete. +@@ -70,8 +81,11 @@ + systems to do that are reported to be shipped in 1987 by the autoconf + manual, so ditch them. + +-1.1.7 2008-05-04 (released) ++ 2008-05-18 ++ * Promoted to "stable" + ++1.1.7 2008-05-04 (released) ++ + 2008-04-30 + + * Updated sendmail milter contrib/bogofilter-milter.pl to v1.45 diff --git a/mail/bogofilter/files/patch-src-tests-tframe b/mail/bogofilter/files/patch-src-tests-tframe deleted file mode 100644 index e59e1b488cbd..000000000000 --- a/mail/bogofilter/files/patch-src-tests-tframe +++ /dev/null @@ -1,8 +0,0 @@ ---- ./src/tests/t.frame -+++ ./src/tests/t.frame -@@ -41,4 +41,4 @@ - # Obtain data base file suffix --DB_NAME=$("$BOGOFILTER" -C -V 2>&1 | sed -n '/Database:/ { p;q }') -+DB_NAME=$("$BOGOFILTER" -C -V 2>&1 | sed -n '/Database:/ {p;q;}') - case $DB_NAME in - *BerkeleyDB*|*"Berkeley DB"*) |