Commit graph

13 commits

Author SHA1 Message Date
darcy
dd6c94875a Upgrade to 1.2.3.
Fixes:
	2012-10-24
	* Update configure.ac to avoid autoconf 2.68 warnings, by
	  (a) quoting the first AC_RUN_IFELSE argument, an
	      AC_LANG_PROGRAM(), with [ ], and
	  (b) providing an explicit "true" assumption for Berkeley DB
	      capabilities to avoid cross-compilation warnings.

	2012-10-22
	* Security bugfix for CVE-2012-5468 (bogofilter-SA-2012-01):
	  Fix a heap corruption in base64 decoder on invalid input.
	  Analysis and patch by Julius Plenz <plenz@cis.fu-berlin.de>.

	2011-01-02
	* Added bogofilter-faq-bg.html, a Bulgarian translation of the FAQ.
	  (thanks to Albert Ward)

	2010-10-29
	* Mark "Berkeley DB 5.1.19: (August 27, 2010)" supported.
2012-12-26 16:58:27 +00:00
obache
e3e486af02 Update bogofilter to 1.2.2.
pkgsrc changes:
 * accept bdb3 and bdb5, rename db4 option to bdb.
 * accept tokyocabinet for db engine.
 * buildlink with libiconv for UNICODE support.
-------------------------------------------------------------------------------

1.2.2	2010-10-08 (released)

	2010-07-05
	* Use a better PRNG for random sleeps. That is arc4random() where
	  available, and drand48() elsewhere.

	* Assorted fixes for issues found with clang analyzer:
	  + Fix a potential NULL deference
	  + Fix a potential division by zero
	  + Remove dead assignments and increments

	* Update Doxyfile and source contrib/bogogrep.c for docs, too.

	2010-07-03

	* Security bugfix, CVE-2010-2494:
	  Fix a heap corruption in base64 decoder on invalid input.
	  Analysis and patch by Julius Plenz <plenz@cis.fu-berlin.de>.
	  Please see doc/bogofilter-SA-2010-01 for details.

	2010-04-07

	* Updated sendmail milter contrib/bogofilter-milter.pl to v1.??????
	  (thanks to Jonathan Kamens)

	2010-04-01

	* Bump supported/minimum SQLite3 versions and warning threshold.
	  See doc/README.sqlite for details.

	* Mark BerkeleyDB 4.8.26 and 5.0.21 supported.

	  Note that Berkeley DB 5.0's SQLite3 compatibility API is NOT
	  supported, it causes shifts in scores and write failures under
	  contention.  Bogofilter can use Berkeley DB 5.0's native interface,
	  and using that is more efficient than the added SQL shim layer.

	2010-03-06

	* Make t.maint more robust; ignore .ENCODING token. To fix test
	  failures on, for instance, FreeBSD with unicode enabled.

	2010-02-15

	* Fix several compiler warnings "array subscript has type 'char'", by
	  casting the arguments to unsigned char.
	     A security audit was conducted and showed that all affected
	  functions either received the relevant input from the user running
	  bogofilter, or the input had already been pre-validated by the token
	  lexer.

	2010-02-14

	* Split error messages for ENOENT and EINVAL into new function.
	* Avoid divison by zero in robx computation by checking if there are at
	  least one ham message and one spam message registered.

	2009-08-13

	* contrib/spamitarium.pl updated to version 0.4.0
	  (thanks to Tom Anderson)

	2009-08-05

	* Updated and integrated Ted Phelps's "Patch to prevent .ENCODING from
	  being discarded by bogoutil -m" (SourceForge Patch #1743984).
	  Thanks to Ted for debugging the issue and providing the patch (which
	  was for bogofilter v1.1.5).

	2009-09-15
	* Promoted to "stable"

1.2.1	2009-08-01 (released)

	2009-08-01

	* Update configure to use "host" rather than "target", to match the
	  newer autotools cross-build semantics. Untested.
	  Developers changing the build system and users who build from SVN
	  will now need automake 1.9 and autoconf 2.60.

	2009-07-31

	* Fix Christian Frommeyer's MIME decoding bug, Ubuntu/Launchpad Bug
	  #320829. As a side effect, also fixes misattribution of MIME bodies
	  as MIME headers with mime: tag.  Original bug report:
	  https://bugs.launchpad.net/ubuntu/+source/bogofilter/+bug/320829

	  Before this fix, bogofilter did not properly MIME-decode the first
	  line in a body. This was especially bad with Christian's samples
	  where the whole body was only one long base64 line.

	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-03-28 (declared stable)

	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.

	2009-02-12

	* Bogofilter now uses listsort in place of qsort.

	2009-01-31

	* Added token-count=n, token-count-min=n, and token-count-max=n options.

	* Minor code cleanups.

	2009-01-21

	* spamitarium.pl updated to version 0.3.0
	  (thanks to Tom Anderson)

	2009-01-11

	* For compatibility with Sun's Sun Studio 12 compiler, provide
          a name for the anonymous union in typedef word_t.
	  Patch provided by Jack Bailey.

	2008-10-20

	* update bf_compact documentation by removing explicit Berkeley DB
	  references, as it has been fixed to work with other database drivers
	  in March 2008.

	2008-10-15

	* bf_compact, bf_copy and bf_tar now support transformed program names
	  (fixes Debian Bug#501947).

	* Update sqlite3 adaptor to take advantage of sqlite3_prepare_v2()
	  API function that appeared in SQLite 3.3.9. The new _v2 interface
	  allows for more specific error messages when executing SQL
	  statements.  Also enable extended result codes for more precise error
	  reporting.

	2008-07-21

	* Update doc/integrating-with-postfix: the script now suggests sendmail
	  -G -i (where -G will be ignored by Postfix before 2.3) to tell
	  Postfix it's a gateway submission, not an original injection; the
	  filter pipe(8) magic for master.cf now suggests flags=Rq (was
	  flags=R), as per Postfix's FILTER_README.

	2008-07-09

	* Drop support for systems that reverse setvbuf arguments. The last
	  systems to do that are reported to be shipped in 1987 by the autoconf
	  manual, so ditch them.
2010-07-24 09:33:09 +00:00
martti
c223dd2351 Updated mail/bogofilter to 1.1.7
* Lots of bug fixes and improvements since 1.0.3
2008-10-15 12:15:40 +00:00
obache
a2638f3362 Add DESTDIR support, based on patch in PR 38524. 2008-05-02 13:44:02 +00:00
obache
7d1f3485f0 Update bogofilter to 1.0.3.
Patch provided by Kimura Fuyuki in PR 35595.
And regen patch-aa.

1.0.3	2006-07-10

	* Released 1.0.3 to provide the bogotune bugfixes to a wider
	  audience.

	2006-07-09

	* Work around GNU make 3.81 incompatibility in doc/Makefile*
	  (it does not work properly with "}\" at the line ends, but
	   wants "} \" instead).

	2006-06-02

	* "make rpm" changes:
	  - document use with gpg-agent (see Makefile.am)
	  - build static RPMs (these won't fail) before shared RPMs

	2006-05-29

	* #include cleanups in common.h, system.h and C files.

	2006-04-28

	* Updated copyright dates.

	2006-04-13

	* Included additional config file options in bogofilter's
	  --help message.

	2006-03-27

	* Corrected option parsing in bogotune to support -n ham1 ham2
	  -s spam1 spam2 as suggested by bogotune -h; broken since 0.93.2.

	2006-03-26

	* Corrected problem with bogotune's -D option (thanks to Jason Smith).

	* Corrected man page description of bogotune's -n and -s options.

	2006-03-17

	* Fixed bf_compact's test for transactional environment.

	2006-03-12

	* 1.0.2 Promoted to "Stable" status

1.0.2	2006-03-03

	2006-02-19

	* Added vm-bogofilter.el for using bogofilter with VM, an
          Emacs mail tool (thanks to Björn Knutsson).
	* Added FAQ question "How do I use bogofilter with VM (an
          Emacs mail tool)?" (thanks to Pimpon).

	2006-02-14

	* SleepyCat has been acquired by Oracle, who are now providing
	  Berkeley DB. Since most of the references are to actual
	  strings in the programs or addresses that remain unchanged,
	  this will only gradually show in the bogofilter sources and
	  documentation.

	2006-02-06

	* Flush output after writing spam header line and/or message body.
	* When database is near to maximum allowed size, allow reading
	  it and disallow writing to it.

	2006-01-30

	* Fix formatting of Rtable output when in the message header,
	  this keeps verbose passthrough modes RFC-822/2822 compliant.

	2006-01-29

	* The configure script, when checking Berkeley DB capabilities,
	  now checks for logging and transactional subsystems rather
	  than the locking subsystem that was abandoned before 1.0.0.
	  This appears a suitable workaround for configure lockups on
	  OpenBSD 3.7 macppc with db 4.2 or 4.3.

	2006-01-28

	* Only print Berkeley DB file size message once per run.

	2006-01-21

	* 1.0.1 Promoted to "Stable" status

	2006-01-02

	* Fixed --input-file and --output-file command line options.

	2006-01-01

	* Added CVE-2005 identifiers for defects described in
          doc/bogofilter-SA-2005-01

1.0.1	2006-01-01

	* New names for binary rpms:

	  bogofilter-db42 - requires shared library for DB-4.2.52
	  bogofilter-db42-static - statically linked with DB-4.2.52
	  bogofilter-sqlite3 - requires shared library for SQLite3-3.2.8
	  bogofilter-sqlite3-static - statically linked with SQLite3-3.2.8

	2005-12-30

	* The configure help texts have been revised, the IEEE checks
	  for trio have been simplified (they are no longer nested) and
	  configure.ac has been updated to quiet autoconf -Wobsolete
	  warnings. The README file now reflects the new requirements.

	2005-12-29

	* For maintainers: Add install-staticdblibs.sh, a script to
	  fetch and build static & lean BerkeleyDB 4.2.52.4 and SQLite
	  3.2.8 libraries. Modify some parts of the RPM building so that
	  the binary RPMs are built without external dependencies beyond
	  glibc 2.2. This may render "make rpm" unusable on non-Linux
	  platforms, but you should still be able to "rpmbuild -tb" from
	  the source .tar.gz file.

	2005-12-27

	* Add '-O' option to direct bogoutil output to a file.
	* Fix building of binary rpms with SQLite support.
	* Include SQLite binary rpm as standard part of "make rpm"

	2005-12-26

	* Split NEWS file into files NEWS and NEWS.0 for new (version
	  1.0 and after) and old (version 0.x.y) info

	2005-12-25

	* Capitalize variables in bogofilter.spec.in to please RH9's
          RPM 4.2 implementation.

	2005-12-18

	* Fix bad return code in db_loop() in datastore_sqlite.c
	  (reported by Sami Farin).

	2005-12-17

	* XML documentation cleanups (thanks to Nicholas Kaiser).

	2005-12-06

	* bogofilter.cf.example was updated to reflect the proper default of
	  db_log_autoremove=yes. It previously claimed the default were "off".

1.0.0	2005-11-30

	2005-11-28

	* Minor FAQ updates and correctons.
	* Abort if ar(1) is not available during build.

	2005-11-19

	* bogofilter supports BerkeleyDB 4.4.16. doc/README.db and INSTALL have
	  been updated accordingly.
2007-02-16 15:47:39 +00:00
wiz
e6e87219df Update to 0.96.6, provided by Geert Hendrickx in private mail:
0.96.6	2005-11-11

	* Fix parsing error after binary attachment.

	2005-11-10

	* Correct charset_default value in bogofilter.cf.example

0.96.5	2005-11-07

	2005-11-04

	* Fix parsing of config file string options.

	* Fix handling of unknown charset name.

0.96.4	2005-10-31

	2005-10-29

	* Removed the BUGS section from the bogofilter man page as
          it's now obsolete.

	2005-10-26

	* The bash-dependent contrib/* scripts were changed so they may now
	  work on regular POSIX compliant sh (NOTE: Solaris has a POSIX sh in
	  /usr/xpg4/bin/sh, Solaris's /bin/sh is unsuitable for bogofilter!)

	* The contrib/ directory is now managed by the top-level Makefile.am,
	  which removes one "make" recursion. This implies that "bogogrep" is
	  now built on the top level rather than in contrib/.

	* Renamed all contrib/ scripts to that their suffix gives a hint what
	  kind of script it is (.pl, .sh).

	* Recognize all image/ types as opaque data that we do not parse,
	  rather than just image/bmp.

0.96.3	2005-10-25 (a.k.a. 1.0.0-rc3)

	* Don't decode mime-audio and mime-video attachments.
	* Remove unused CP866 code.

	2005-10-23

	* Fix possible SIGSEGV with long html comments.

	2005-10-22

	* Don't decode mime-image and mime-application attachments.

	2005-10-21

	* Avoid pointer use after freeing its memory.
	* Avoid buffer overflow during conversion to unicode.

	2005-10-15

	* Fix program abort when bad options are used.
	* Remove unused Berkeley DB locking options.

	2005-10-12

	* Fixed sqlite build option in bogofilter.spec.in
	  (contributed by Tobias Roppelt)

	2005-10-07

	* Added contrib scripts bfproxy, spamitarium, and stripsearch
	  (contributed by Tom Anderson)

0.96.2	2005-10-06 - Promoted to Stable Release
        2005-09-25 (a.k.a. 1.0.0-rc2)

	2005-09-25

	* SQLite3 - no longer using EXCLUSIVE in BEGIN TRANSACTION as
	  it seems unnecessary and it causes trouble on MAC OSX

	2005-09-19

	* Require sqlite 3.2.6 and print warning if older version installed, to
	  avoid people running into critical bugs in older sqlite3 versions.
	  The test can be defeated by setting the environment variable
	  BF_USE_OLD_SQLITE to any value.  Also warn on 32-bit machines.

	2005-09-16

	* Fix bogus t.maint failures on some systems that don't use bash for
	  /bin/sh (for instance, FreeBSD).

	2005-09-11

	* Resurrected atexit() code to ensure databases have been
          closed (needed for rare cases on RISC OS).

	2005-09-07

	* Perform unicode conversion after base64 and quoted-printable
	  decoding.  (Thanks to Mikhael Zabaluev for the patch)

	2005-09-06

	* (sqlite3 based builds only) Print reminder to register tokens before
	  scoring if preparing the SELECT statement fails.

	* Avoid "obsolete option -I- used, please use -iquote instead" nagging
	  from GCC version 4. (Heck, autoconf has even reached include lines
	  that worked for ages.)

	2005-09-05

	* Replace mime stack by linked list (to correct gentoo bug #69893).
	* Fix configure's --with-included-gsl option.  (Thanks to
          Torsten Veller for the patch)

0.96.1	2005-09-05 (a.k.a. 1.0.0-rc1)

	2005-08-24

	* Fix incompatibility with SunOS make(1S), adding a missing trailing
	  backslash character to src/Makefile.am.

	2005-08-17

	* Update RISC OS versions of Makefile and config.h

0.96.0	2005-08-15

	2005-08-14

	* When directory name is argument for bogoutil's dump/load
	  option, use "wordlist.db" to avoid a sigsegv.

	* Remove support for TDB, the Trivial Database.

	2005-08-05

	* db_lock.c: rename "cell_t" to "bf_cell_t" to avoid clashing with
	  IRIX's cell_t. Reported by Daichi Kawahata.

	* configure.ac: MIPS doesn't have extended FP precisiopn. Patch by
	  Daichi Kawahata.

	2005-08-03

	* bogotune - Restored code for recommending db_cachesize value.

	2005-07-10

	* Bogofilter now complains if sqlite 3.2.1 or older is used on a
	  machine with a word width greater than 32 bits, but tries to proceed.
	  It may however crash with SIGBUS as sqlite 3.2.1 performs unaligned
	  64-bit accesses.  sqlite 3.2.2 or newer is strongly recommended.

	2005-07-04

	* Updated history of stable releases (file RELEASES).

	2005-07-03

	* Switched t.encoding test to use the POSIX utility cksum,
	  rather than OS-specific utilities such as md5sum or md5.

0.95.2	2005-07-08 - Promoted to Stable Release
	2005-06-30

	2005-06-29

	* Fix incorrect directory creation revealed by t.bogodir.
	* Use unicode & transaction enable/disable flags to limit
	  'make check' tests being run.

	2005-06-28

	* Fixed buffer allocation error causing problem processing
	  RFC2047 encoded words.
	* Fixed wordlist access problems causing bogotune to
	  incorrectly complain of mixed database encodings.

	2005-06-21

	* Bogofilter programs now use their own locking for transactional
	  databases, to evade the problems with overflowing lock tables,
	  resizing. The database is locked globally, which no longer allows
	  registrations to happen concurrently with read access.

	  The db-lk-max-locks and db-lk-max-objects options and the bf_resize
	  scripts and pages have been removed.

0.95.1	2005-06-26

	* Fixed some wordlist open conflicts in bogotune.
	* Document unicode requirements for 'make check'

	2005-06-25

	* Added unicode processing of encoded tokens.

	2005-06-24

	* Use iso-8859-1 for default charset, rather than us-ascii.

0.95.0	2005-06-20

	* Fix bf_resize bash-isms (let BLAH...) and use POSIX-sh arithmetic
	  expansion $((...)) instead, to fix bf_resize on FreeBSD.
	  Reported by Andrey Chernov.

	2005-06-19

	* New unicode capabilities!

	  - default configuration:
	    . bogofilter auto-detects whether database is using
	      unicode (utf-8) or not.
	    . bogofilter uses unicode when creating new databases.
	    . bogoutil preserves unicode/non-unicode stat during
	      dump/load.
	    . bogofilter, bogolexer, and bogoutil have "--unicode=yes/no"
	      options which permit user selectable modes for experimenting,
	      testing, and wordlist conversion.

	  - configure with "--enable-unicode" or "--disable--unicode"
	    builds bogofilter and bogolexer restricted to a single mode.

	  - bogoutil uses "--unicode=yes/no" when creating a new wordlists.
	  - bogoutil uses "--unicode=yes/no" in maintenance mode to
	    convert a wordlist to/from unicode.
	  - bogolexer uses "--unicode=yes/no" to control parsing

	2005-06-18

	* Added FAQ entry on using bogofilter with qmail.

	2005-06-11

	* Output --help messages to stdout (rather than stderr) so
	  more can be used for paging.

	2005-06-10

	* TDB driver now copies TDB returned data in the traversor to
	  align data at proper boundaries, to avoid SIGBUS on some
	  architectures and performance loss on others.

	2005-06-09

	* Close environment after probing if it has transactions, to
	  conform to Berkeley DB documentation and not leak a file
	  descriptor.

	2005-06-07

	* Additional unicode support:
	   Added global variable encoding { E_RAW, E_UNICODE }
	   Added --unicode=yes/no options for bogolexer and bogoutil.
	   Added meta-token .ENCODING { 1=raw, 2=unicode }

0.94.14	2005-06-18 - Promoted to Stable Release
	2005-06-08

	* Fix bug in transactional auto-detection that caused recovery
	  to fail if the environment was in PANIC state.
	  (Reported by Andrey Chernov.)

	2005-06-06

	* Removed extra SunOS 4.1.x support code.

	2005-05-31

	* Support systems with GNU iconv or separate libiconv.

	* Split up acinclude.m4 into separate files under m4/.

	2005-05-29

	* Refactor charset and unicode functions into charset.[ch],
	  convert_charset.[ch], and conver_unicode.[ch]

	* Add configure and runtime options to select charset and/or
	  unicode character conversion:

	  ./configure                   - runtime selection
	  ./configure --enable-unicode  - unicode only
	  ./configure --disable-unicode - charset only

	  bogofilter --unicode=yes      - use unicode conversion
	  bogofilter --unicode=no       - use charset conversion

	2005-05-29

	* Consistency: Skip test if Berkeley DB supports shared environments
	  when ./configure --disable-transactions is run, as shared
	  environments are only needed for transactions.
	  (Fixes SunOS portability problem reported by Charles Hewson.)

0.94.13	2005-05-28

	* Minor cleanups to iconv code.

	2005-05-26

	* Fixed buffer sizing problem affecting unicode encoding of
	  long lines.

	* Added '-q' (quiet) option for bogofilter to suppress
	  printing of statistics.

	* Added return code to lookup function to support error
	  retries.

	2005-05-24

	* Fixed compilation problems with --enable-iconv and
	  --enable-russian.  Thanks to Lev Butyrev and Yar Tikhiy for
	  reporting them.

	* Modified configure.ac and added t.query.config.in so
	  t.query.con regression test works with --enable-iconv.

	2005-05-21

	* Efficiency: The SQLite adaptor now creates new databases with an
	  additional index, to reduce CPU time for lookups.
	  You can add the same index to existing databases by typing:

	  sqlite3 ~/.bogofilter/wordlist.db \
	    'CREATE INDEX bfidx ON bogofilter(key,value);'

	2005-05-19

	* Efficiency: The SQLite adaptor now precompiles the common SQL
	  statements with variables, which avoids the need to parse/compile
	  them for every single token we acces, and which avoids the need to
	  hex encode/decode tokens (suggested by D. Richard Hipp, SQLite
	  maintainer).

	* Efficiency: save one malloc() in db_get_dbvalue().

	* Cleanup: The SQLite adaptor now uses a single central busy handler,
	  which simplifies the code.

	* Bugfix: Fix abort/retry logic with transactional interfaces
	  (Berkeley DB and SQLite) so that retries actually work.

0.94.12	2005-05-15 - Stable Release

	* RELEASE notes now has a brief summary of the changes since
	  the last stable release (0.92.8) in October 2004.

	* Man pages added for the utility scripts bf_compact, bf_copy,
	  bf_resize, and bf_tar.

	* bf_tar now includes the DB_CONFIG file in the output if present.

	2005-05-13

	* French FAQ updated by Fabrice Prigent.

	2005-05-12

	* bogofilter-milter.pl update by Jonathan Kamens.  Use Spam/Ham
	  rather than Yes/No, fixes to syslog calls, efficiency improvements.

0.94.11	2005-05-10

	* Correct variable name in bf_resize.

0.94.10	2005-05-08

	* Substitute path to the same awk program that configure found
	  into bf_compact so it works on systems that have only nawk or gawk
	  but not awk.

	* Substitute path to SUSv2 compliant shell in bf_* script "magic
	  shebang" lines, so they use /usr/xpg4/bin/sh on Solaris 7+
	  and don't fail any more.

	* Repaired t.abort and t.probe tests to work with ancient shells.

	2005-05-07

	* Fixed pathing problem in bogoutil.  Default directory should be "."

	* Revised utility scripts (bf_copy, bf_compact, bf_tar,
	  bf_resize) for consistency and Solaris 9 compatibility.

0.94.9	2005-05-06

	* Fixed pathing regression which caused 'bogofilter_dir=dir' option
	  to supercede '-d dir' option.

0.94.8	2005-05-03

	* Revised manpage's description of -p (passthrough) option.

	* When configured with --enable-transactions or --disable-transactions
	  - Fixed compilation problem
	  - Fixed bogofilter -Q reporting
	  - Skip t.probe during "make check"

0.94.7	2005-04-30

	* Fix transaction enabling/disabling so that command line
	  options, i.e. --db-transactions=yes/no, are primary and
	  probing is secondary.

0.94.6	2005-04-26

	* Fixed bogoutil help and documentation to show that -d, -l,
	  -w, -p, and -H options expect a filename, not a directory.
	* Refactored bfpath creation to clean up open modes and lessen
	  number of external calls into paths.c
	* Added db-3.2.9 compatibility macro for db->stat().
	* Updated bogominitrain.pl to v1.6

0.94.5	2005-04-23

	* Fixed database open bug in bogoutil.

	2005-04-20

	* bf_compact now removes the $BOGOHOME.old directory before renaming
	  the backup to this name, to avoid nested backup directories.

	* Let bf_compact maintain current state of transactions vs.
	  non-transactions. (Bug report: Bill McClain)

	2005-04-10

	* Use bogoutil --db-print-leafpage-count in bf_resize.

	* Add --db-print-leafpage-count mode to bogoutil.

	* Use bogofilter -QQ in bf_resize and bf_tar.

	* Use bogoutil --db-list-logfiles in bf_copy and bf_tar.

	* Add --db-list-logfiles mode to bogoutil. Can list inactive or all
	  logfiles in relative or absolute paths.

	* Repair bf_copy script that lost log.* files, possibly corrupting
	  database if they had been transactional.  The defect was introduced
	  into bogofilter 0.94.2.

	2005-04-09

	* Suppress valgrind reports of errors in glibc::strchr.

0.94.4	2005-04-07

	* The RELEASE.NOTES file has been reformatted for readability.

	* When using transactions, the db_log_autoremove option is now
	  enabled by default (to match the documentation).

	* Option db_log_autoremove has been added to bogofilter.cf.example

	2005-04-05

	* Fix segfault in VERP processing.

	2005-04-04

	* The code for handling file and directory names has been
	  rewritten for clarity and maintainability.  Some options for
	  bogoutil which used to take a directory argument now take a filename,
	  for example -H, -r, and -R which all operate on a database,
	  not on a database environment.

	2005-04-03

	* File handling code rewritten to use bfpath structure for
	  holding all info and with a 3 step use of the info.  1 -
	  create bfpaths during command line and config file
	  processing; 2 - validate directories and file names; and 3 -
	  use files for processing.

0.94.3	2005-03-29

	2005-03-27

	* Added FAQ info on using bogofilter with mutt and sylpheed claws.

	* Fixed --db-print-pagesize so that the proper directory is
	  used for database environment.

	2005-03-25

	* Add error checking to bogoutil's ROBX calculation.

	* Allow --db-verify to work for non-transactional databases.

	* Repair several minor defects around --db-print-pagesize.  Support
	  page size detection with Berkeley DB 3.1 and 3.2 (it was already
	  supported for 3.3 - 4.3). Offer --db-print-pagesize function in
	  bogoutil --help when compiled against SQLite3.

	* Add more intensive bogoutil inspection to the test suite.

	* Fix incomplete cleanups that broke several bogoutil functions again,
	  among them --db-recover[-harder], --db-remove-environment,
	  --db-verify and --db-print-pagesize.

	* Let SQLite3 retry when the database is busy (rather than locked).

0.94.2	2005-03-24

	* Fix SQLite3 open problem, trying again when the table it is
	  locked.

	2005-03-23

	* Fix --enable-iconv breaking with non-ASCII default charset.

	* bogolexer now understands the --charset-default options.

	2005-03-22

	* Fix SQLite3 regression in 0.94.0 that broke consistency guarantees
	  and caused a _massive_ slowdown.

	* Add 'bogoutil --db-print-pagesize', to query the database size,
	  useful to replace running awk on 'db_stat -d database.db' output.

	2005-03-20

	* Fixed dirname/filename problem in bogotune.

0.94.1	2005-03-16

	* Long options cleanup: options that have no meaning for a particular
	  program are now rejected, to meet common expectations. The option
	  parsing code was cleaned up and is easier to maintain now.

	2005-03-14

	* Add 'bogoutil --db-checkpoint', to replace db_checkpoint -1h.

	2005-03-13

	* Modified get_token() to use static storage in order to
	  lessen malloc/free overhead.

	2005-03-09

	* Fix segfault in 'bogoutil --db-verify'.

	2005-03-08

	* Support for Berkeley DB 3.1 is back.
	* Terminate 'bogoutil -d' when SIGINT or SIGTERM is received.

	2005-03-07

	* Fixed query_config ('-Q') option.

0.94.0	2005-03-05

	Default mode is transactions disabled for Berkeley DB.

	2005-02-26

	* Remove bogus signal handler, remove SIGKILL handling; ignore SIGINT,
	  SIGTERM and SIGPIPE.

	* Fix non-transactional mode for Berkeley DB 4.0 and older.

	2005-02-25

	* Implement --db-log-autoremove=BOOL option, defaults to on.
	  This option removes outdated log files automatically before closing
	  the environment, to conserve disk space.

	* Added signal handler to catch SIGINT, SIGKILL, and SIGTERM
	  and exit cleanly.

	* Support for Berkeley DB 3.1 has been removed as a side
	  effect of automatically detecting transactional mode at
	  run-time, since 3.1 lacks DB_JOINENV.

	2005-02-24

	* Transactional datastore autoprobing was completed, it assumes
	  transactional mode if log.NNNNNNNNNN files (where N in {0, 1, ... 9})
	  are found.

	* Add swapped endian support for SQlite3 database, to support reading
	  big endian (SPARC) generated databases on little endian machines
	  (x86) and vice versa. To enable reading databases on machines with
	  differing endian, dump and re-load the databases on a machine with
	  same endian as the machine that created them.

	2005-02-18

	* Added code to auto-detect when a transaction environment
	  exists and act accordingly (if none of the enable/disable
	  options are specified in the config file or on the command
	  line).

	2005-02-10

	* Fixed problem causing SIGSEGV when using options "-p" and
	  "-s" with multiple wordlists.

	2005-02-06

	* Code to enable/disable Berkeley DB transactions now uses an
	  OO paradigm (implemented via struct of method addresses).
	* Enabling/disabling transactions is now run-time selectable
	  using "--enable-transactions=yes/no" on the command line and
	  "enable_transactions=yes/no" in the config file.
	* Use "./configure --enable/disable-transactions" for build
	  time specification.

	2005-01-28

	* Add option "--db-transaction=yes/no" for run-time
	  enabling/disabling of transactions.

	2005-01-25

	* Removed unused program bogowordfreq.

	2005-01-23

	* Included charset_iconv.c in the build.

0.93.5	2005-01-22

	2005-01-21

	* Revised t.systest to remove vestiges of different scoring
	  algorithms.

	2005-01-17

	* bogotune's '-M' option for converting a message to msg-count
	  format now requires a filename option.

	2005-01-15

	* Fixed segfault caused by using non-existant option 'F'
	* Fixed size/count errors in wordhash code used by bogotune.

	2005-01-12

	* Fixed an array overrun in bogotune that caused problems when
	  using msg-count files.

	* Include saving of Unsures in procmail example in man page.

	* Change Yes/No/Unsure to Spam/Ham/Unsure in FAQ.

	2005-01-09

	* bf_util scripts now use name 'BOGOHOME' for their directory
	  parameter and check that it really is a directory.

0.93.4	2005-01-09

	2005-01-08

	* Misc fixing of compiler warning messages.
	* Minor refactoring of charset code.

	2005-01-05

	* Fix --enable-transactions logic, was inverted since 2004-12-26
	  (affected release: 0.93.3.1 only, 0.93.3 was fine). Note that
	  giving neither --enable-transactions nor --disable-transactions would
	  still enable transactions.

	2005-01-04

	* bogoutil now reads the configuration files to know the user's
	  db_lk_max_* values.  Reported by Karl O. Pinc.

	* Added '--config-file=name' to bogoutil to name a config file and
	  '-C' option to suppress reading a config file.

	* Berkeley DB Transactional recovery now uses the actual db_lk_max_*
	  values rather than hardcoded 1024.  Reported by Karl O. Pinc.

	2005-01-03

	* Added '--default-charset=name' option to configure script.

	2005-01-02

	* Initial support for Russian character sets.  (Thanks to Evgeny
	  Kotsuba)

	2004-12-30

	* Bogolexer man page:  replaced incorrect references to
	  'bogofilter' with 'bogolexer'.

	* Added '-O file' to specify bogolexer output file.

	2004-12-28

	* Fixed bogoutil --db-remove-environment DIR, which would just abort.

	* Fixed several memory leaks.

	* Refactored long option code.	All definitions are now in one
	  file (longoptions.c).	 Programs bogolexer and bogoutil
	  ignore options that don't apply to them, rather than abort.

	* Long options used in the config file use underscores in
	  their names.	Used on the command line, they have hyphens.
	  This fixes a problem where some options had hyphens and some
	  had underscores.

0.93.3.1 2004-12-26

	* Fixed errors in bogoutil's usage and help messages.

0.93.3	2004-12-24

	* Bogoutil's options for maintaining the database environment
	  are all long options with a "db-" prefix.
	* Bogoutil's help message and man page include the new long
	  options.

	2004-12-21

	* Early Christmas Gift: Bogofilter now supports SQLite v3.
	  Requires SQLite v3.0.8. See the RELEASE.NOTES.

	2004-12-20

	* Internal cleanup: Move transaction handling back into database space,
	  and let the database backend driver map this into the environment if
	  necessary.

	* Portability fix for BerkeleyDB versions 3.1 and 3.2:
	  log_archive expects a fourth argument.

	2004-12-17

	* lexer_v3 HTML parser fix for urlencoded characters, by Krzysztof
	  Foltman. Speeds up a particular case of malformatted mail.

	2004-12-14

	* bogoutil -C file  now checks if the database file file is intact.
	  (Only implemented for Berkeley DB stores with and without
	  transactions.)

	2004-12-13

	* bf_compact now uses db_archive without -d option and loops on the
	  results instead, calling rm in turn for each file. -d is not
	  supported by older Berkeley DB versions such as 4.0.

	* bogoutil -P directory	 now checkpoints the database and removes
	  inactive log files. Note you must save the database and remaining log
	  files, in that order, if you want to be able to recover from
	  corrupted files.

	2004-12-10

	* Limit mime overflow error messages to 1 per email.

	2004-12-09

	* configure now checks if Berkeley DB supports shared environments and
	  suggests workarounds if it doesn't, to aid Fedora Core users.

	2004-12-05

	* New directory doc/programmer/OS2 contains configure.os2
	  script contributed by Yuri Dario

0.93.2	2004-12-03

	* New script bf_resize DIR that checks the sizes of all databases in an
	  environment and writes a lock size to DB_CONFIG.

	2004-12-02

	* Accuracy fix: message counts of ignore lists (that can be present)
	  will be ignored and no longer skew the spamicity.

	2004-12-01

	* Allow environment to be group writable, reported by Fletcher Mattox.

	* Accuracy fix: no longer pretend that we had seen an empty message
	  registered when there was no registration. Use ROBX for spamicity.
	  This changes the output format of bogofilter -vvv mode when no spam
	  or no ham messages have been registered previously.

	2004-11-29

	* Support for Berkeley DB 3.0 was explicitly removed again, so that no
	  stable bogofilter version since 0.17.5 will have had support for this
	  version. This eliminates the need for on-disk database format
	  upgrades and keeps things simple.
	  As the unadvertised breaking of BDB 3.0 didn't raise a single
	  complaint and 3.1 has been around since July 2000, this should be
	  safe.

	* Support long options in bogoutil.

	* Add --remove-environment DIR long option to bogoutil, to remove the
	  environment. Only one such option can be used and there is no
	  corresponding short option.

	* Remove useless numeric Berkeley DB error codes from error messages.

	2004-11-26

	* bogofilter processes will refuse to open multiple wordlists in
	  different database environments (directories) when the transactional
	  Berkeley DB datastore is compiled (default). The non-transactional
	  (--disable-transactions), QDBM and TDB datastores are unaffected.

	2004-11-21

	* bogotune now uses getopt() to process the argument list,
	  hence requires a '-n' flag before each non-spam file and a
	  '-s' flag before each spam file.
	* bogotune now accepts '-x flags' to set debug flags.

	2004-11-20

	* Make scoring one huge transaction, rather than one individual
	  transaction per token. This fixes consistency and should improve
	  score speed.

	  WARNING: this seems to have broken bogotune, which, BTW, doesn't
	  return errors to the test suite (t.bulkmode, with message-count
	  files), it reports a bogus "PASS" in spite of database PANICs.

	2004-11-19

	* Restored the old traditional Berkeley DB datastore that cannot be
	  recovered. Its use is discouraged, to use this, type
	  ./configure --disable-transactions

	* Restored the error message when recovery is attempted on QDBM
	  databases, was lost in the DEPOT (hash) ->VILLA (B+tree) switch.

	2004-11-15

	* Added utility script bf_tar.

	2004-11-14

	* Added utility scripts bf_copy and bf_compact.
	* Added BerkeleyDB warning for binary rpm users.

	2004-11-12

	* New entries in bogofilter-faq.html on error messages
	      "Lock table is out of available locks" and
	      "Lock table is out of available object entries"

	* Add %u formatting option to print login or user ID information,
	  SourceForge Feature Request #1056729.

0.93.1	2004-11-11

	* The README.db file now has information on the DB_CONFIG file that
	  can be created and used to configure the Berkeley DB module.

	* Bogofilter's config file now supports setting max lock and
	  object counts for Berkeley DB using options
	      db_lk_max_locks=N
	      db_lk_max_objects=N

	* Bogofilter and bogoutil now allow these options on the
	  command line, as:
	      --db_lk_max_locks=N
	      --db_lk_max_objects=N

	* When running database recovery automatically, don't let go of the
	  lockfile, so we can do our actual work subsequently.

	2004-11-10

	* Support for BerkeleyDB 4.3 was added. We'll avoid DB_NOSYNC on
	  DB->close() when DB_LOG_INMEMORY is configured for now.

	* Update manual pages/example outputs and filter recipe examples from
	  "X-Bogosity: yes" to "X-Bogosity: Spam". Fixes Debian bug #280557.

	* Bugfix for BerkeleyDB 4.2 support: check the data base flags, not the
	  environment flags, for DB_TXN_NOT_DURABLE, when determining whether
	  DB_NOSYNC is safe on DB->close(). May fix some kinds of database
	  corruption encountered with DB_TXN_NOT_DURABLE.

	* Return DB_VERSION_STRING contents in -V (version) output when
	  compiled against Berkeley DB. Minor change to the output format.

	2004-11-09

	* Unify and clean up the horrible RELEASE.NOTES-*, CHANGES* and NEWS-*
	  mess with lots of duplicated info.
	  There shall only be one RELEASE.NOTES file and one NEWS file.
	  RELEASE.NOTES shall contain important information for updates.
	  NEWS shall contain noteworthy code changes in technical detail.

	  This also removes the confusion that RELEASE.NOTES didn't contain
	  information relevant for 0.93.X.

	2004-11-08

	* Berkeley DB mode: do not create data base in read mode (properly map
	  open_mode to DB_RDONLY flag, store open_mode).

	* Berkeley DB mode: exit with error code if lock file cannot be
	  created. Attempt recovery even if creation of lock file succeeded.

	2004-11-07

	* Fixed negative buffer index in mime.c

0.93.0	2004-11-06 "Broken compatibility" release

	* Fix bogotune's '-D' option.

	2004-11-02

	* Use only reentrant functions in the signal handler that runs
	  periodically to check for crashed processes.
	  Reported by Pavel Kankovsky.

	2004-11-01

	* Add a debugged and enhanced version of Stefan Bellon's QDBM
	  Hash->B+tree converter.

	* Broke QDBM compatibility with 2004-10-30 change, check unsigned
	  characters to match Berkeley DB behavior of bogoutil -d.

	2004-10-31

	* Rearranged flag setting for Berkeley DB data store, so as only to set
	  DB_CHKSUM[_SHA1] when creating the data base.
	  Fixes "checksum error: catastrophic recovery required" and
	  consequential "wordlist.db: page 1: reference count overflow" errors
	  Reported by Torsten Veller.

	* Revised RELEASE.NOTES-0.93 to move QDBM change into "Incompatible
	  Changes" section and to mention BerkeleyDB dump/load for 4.1 and 4.2
	  to add checksums.

	* Inserted new section 2.2 into doc/README.db to mention that it is
	  recommended to dump/load the data base when using BerkeleyDB 4.1 and
	  4.2.

	2004-10-30

	* Converted QDBM from hash files (DEPOT API) to B+ trees
	  (Villa API) for better speed (Stefan Bellon).

	2004-10-29

	* Attempting recovery with TDB or QDBM data bases results in an error,
	  so the user does not think it succeeded.

	* Document that recovery only works for Berkeley DB, but not TDB or
	  QDBM.

	2004-10-28

	* Merged Transactional branch (for BerkeleyDB) back into the trunk.
	  Further changes below.

	2004-10-25

	* Added GETTING.STARTED document.

	* Changed default mode from two-state to three-state
	  - with ham_cutoff=0.45 and spam_cutoff=0.99
	    The ham_cutoff value is new and spam_cutoff is unchanged.
	  - changed the "Yes/No" tags used in the "X-Bogosity:" line
	    to "Spam/Ham/Unsure"

	NOTE: the next entries appear to be out of order, the pertinent changes
	have been developed on a side branch of bogofilter and have been merged
	for bogofilter 0.93.0.

	2004-09-21

	* bogofilter can now be used with Berkeley DB 3.0 or 3.1 although this
	  is not recommended. You should prefer 4.2 or 4.1 instead.
	  UPDATE: support for 3.0 was later removed on 2004-11-29

	* Documentation on the write cache issue (recoverability of data bases)
	  has been revised.

	2004-09-13

	* Updates doc/README.db with a section on the log file size and
	  pointers to db_checkpoint and db_archive.

	2004-09-03 (txn 2.1)

	* The on-line crash detector would consider its own process a zombie,
	  so all processes that lasted 30 s or longer would abort themselves
	  after that period.

	  This was particularly prominent with BerkeleyDB 4.1 with
	  x86/gcc-assembly mutexes as this combination appears rather slow when
	  facing lock contention, causing t.lock3 failure. BDB 4.1 compiled to
	  use POSIX mutexes (where working) appears to be a lot faster in this
	  situation.

	2004-09-01 (txn 2.0)

	* Hook up crash detection code. Bogofilter is now able to detect
	  when recovery is necessary and should detect stalled data bases
	  within 30 seconds.
	  NOTE: this means if one process crashes all other processes
	  accessing the same data base will abort with an error code.

	  Stalled data bases happen when one process or the system crashes and
	  doesn't have a chance to clear its locks.

	  This code uses ideas from Matthias Andree and Pavel Kankovsky.

	2004-08-23 (txn 1.1)

	* Add -f and -F options to bogoutil (mnemonic: fix) to run data base
	  recovery.

	* Reimplement our own locking so that recovery and data base access
	  don't collide and no two processes try running recovery at the same
	  time.
2005-11-21 23:47:02 +00:00
wiz
75ec1b6bba Fix patch-ac (db4 patch). From UHO Yaranaika. Closes PR 28949,
confirmed by Hauke Fath.
Bump PKGREVISION.
2005-01-17 15:22:33 +00:00
jlam
c8db35a95b bogofilter seems to require db4, so include db4/buildlink3.mk directly
instead of indirectly via bdb.buildlink3.mk.  Also, fix compilation
to account for differences beteween db-4.3.x and db-4.2.x.  This should
fix PR pkg/28949.
2005-01-14 18:20:33 +00:00
snj
dd8e4df73a Update to 0.92.8.
Changes:
* Portability fixes
* Documentation fixes
* '-M' allows processing 1 msg-count file with multiple messages.
  Otherwise allow multiple msg-count files with 1 message in each.
* Allow only one of '-d' and '-D' options for bogotune.
* Remove check for bogohome since it breaks "bogotune -D".
* Ignore 'X-Bogosity' lines in mime attachments.
* Bogotune now warns when using '-E' to suppress ESF checking
  and non 1.0 esf values are read from the config file.
* Limit bogotune's scanning to rx values between 0.4 and 0.6.
* Fix a potential crash on malformatted input (writing a NUL byte to
  the wrong place) in the RFC-2047 decoder. Reported by Clint Adams.
* bogofilter will now properly exit with code 3 when encountering write
  errors in pass-through mode. It would use the wrong code, 2, since
  the introduction of the "unsure" exit code.
* Properly flush existing data before changing I/O buffer size. Fixes
  t.bogodir failure seen, for instance, on Solaris, particularly with
  -D and redirected output.
2004-10-26 05:41:41 +00:00
snj
52c9faf6ff Upgrade to 0.92.0, the latest stable release.
Changes include bugfixes, documentation improvements, etc.  See the included
CHANGES file for the specifics.
2004-06-29 02:20:17 +00:00
snj
db1484fd1b Update to bogofilter-0.16.4, bl3ify, tidy up DESCR. Okayed by jmmv and wiz.
Changes since 0.15.7:
* Perl 5.6 fixes in bogoupgrade
* Install bogotune and bogotune man page
* The -q and -F flags (both unused) were removed
* Alpha/SH(3?) portability fixes
* Gobs and gobs of bugfixes
* The Graham and Robinson algorithms were removed
* Support for old style (separate good/bad) wordlists was removed
* Support for ignore lists was removed
2004-02-09 00:59:06 +00:00
manu
d56247f977 Fix build bug with cc -g, patch submitted by john heasley. 2004-01-14 20:16:39 +00:00
xtraeme
0841b2f807 Updated to 0.14.5.4.
While updating, make bogofilter use the bsd.pkg.install.mk
framework to install the configuration file into PKG_SYSCONFDIR.

Patch provided by Soren Jacobsen in PR pkg/22983.

Changes:

Changes:
0.14.5.4
* _Really_ fix defective printing in 'bogofilter -Q' output.
0.14.5.3
* Fix parser errors that can cause:
  1. Incorrect processing of html comments.
  2. "fatal flex scanner internal error--end of buffer missed",
     which kills bogofilter.
* Fix defective printing in 'bogofilter -Q' output.
* Compiles with TDB again.
0.14.5.2
* bogominitrain.pl - removed email 'cruft' and revised format
  of verbose output.
0.14.5.1
* Fixed parameter type error in dbh_print_names() that causes
  segfault.
* Enhanced verbose output of bogominitrain.pl
* Documented '-T' option in man page.
* Fixed parsing error that treated "^From " in encoded text as
  a message separator.
* Revised format for '-T'.
* Fixed defect in bogominitrain.pl's norepetition mode.
0.14.5
* Updated bogominitrain.pl to version 1.3.
* Corrected parsing error (in html code) that caused
  bogofilter to miss message separators.
* Added '-T' as terse mode (with fixed formatting).
* Revised processing of From and empty lines so that parsing
  works correctly with both flex-2.5.4 and flex-2.5.31.
0.14.4
* Revised database API so that there are 3 distinct layers
  (program, datastore, and database) with a clean interface
  between them.
* Correct exitcodes in bogoutil by using EX_ERROR.
* Fixed token registration bug in 0.14.x versions.
* Fixed seg fault caused by database lock contention.
0.14.3
* Fixed critical locking bug introduced into bogofilter 0.14.0
  with the combined-wordlist code: when working with separate
  wordlists, bogofilter would lock only the first one opened,
  rather than all.
* Documentation updates.
* %g formatting is now supported by bogofilter's formatting functions.
* Merged trio 1.10 (http://ctrio.sourceforge.net/) to support
  compilation on ancient systems (Solaris 2.5) that do not have
  [v]snprintf functions.
  Trio is Copyright (C) 1998-2000 Bjorn Reese and Daniel Stenberg.
* Various documentation updates, including the FAQ.
* The test suite was adjusted for older grep variants (Solaris
  2.5) that don't cope with long lines.
* Print database version in print_version().
* Postfix integration instructions have been upgraded.
* Debug output for wordlists and databases was enhanced.
2003-09-30 07:11:48 +00:00