1Introduction 2************ 3 4This is the README for `qsf', a quick spam filter. QSF uses a database of 5"tokens" taken from previous emails to determine whether any given email is 6likely to be spam or not. If an email is miscategorised, simply send the 7email back to QSF with the appropriate parameters to modify the database and 8make it more accurate. 9 10Note that `qsf' works well with either its own backend databases, GDBM, 11SQLite, or MySQL. GDBM and SQLite are fast but the builtin database reduces 12dependencies on other libraries, whereas MySQL can be harder to set up. 13 14If you use the MySQL backend, "make test" may fail. Read the documentation 15in the "MYSQL BACKEND" part of the manual for information on how to use 16`qsf' with MySQL. Also, it has been reported that MySQL 4.1.x works much 17better with QSF than 4.0.x or the 3.23.x series. 18 19 20Documentation 21************* 22 23A manual page is included in this distribution. If you prefer plain text, 24then look at `doc/quickref.txt' for a text version. 25 26 27Dependencies 28************ 29 30The internal binary tree and list databases have no dependencies. 31 32The GDBM backend requires GDBM: http://www.gnu.org/software/gdbm/ 33 34The MySQL backend requires MySQL: http://www.mysql.com/ 35 36The SQLite backend requires SQLite: http://www.sqlite.org/ (version 2.x). 37 38Note that if you try to compile MySQL support but the MySQL libraries cannot 39be found, make sure you have the MySQL development package installed. 40You may also need to install the "zlib-devel" package. 41 42 43Compilation 44*********** 45 46To compile the package, type "sh ./configure", which should generate a 47Makefile for your system. You may then type "make" to build everything. 48You may need GNU `make' for compilation to work properly. 49 50See the file `doc/INSTALL' for more about the `configure' script. 51 52Developers note that you can do "./configure --enable-debugging" to cause 53debugging support to be built in. Also note that doing "make index" will 54generate an HTML code index (using `ctags' and `cproto'); this index lists 55all files used, all functions defined, and all TODOs marked in the code. 56 57Memory allocation tracing (MALLOC_TRACE) may cause a crash if the allocation 58log file gets too large (>2GB usually). This is a bug in the C library; 59unfortunately it cannot be fixed in `qsf'. 60 61There are some extra shell scripts in the "extra/" directory, which can help 62with generation of statistics. Read the scripts for full details. 63 64 65Author 66****** 67 68This package is copyright (C) 2007 Andrew Wood, and is being distributed 69under the terms of the Artistic License 2.0. For more details, see the 70file `doc/COPYING'. 71 72You can contact me by email at andrew.wood@ivarch.com or by using the 73contact form on my web page at http://www.ivarch.com/. 74 75Suggestions and patches have been received from the following people: 76 77 Tom Parker <http://www.bits.bris.ac.uk/palfrey/> 78 Dr Kelly A. Parker 79 Vesselin Mladenov <http://www.antipodes.bg/> 80 Glyn Faulkner 81 Mark Reynolds <http://www.reynolds.net.au/> 82 Ondrej Suchy 83 Sam Roberts 84 Scott Allen 85 Karsten Kankowski 86 M. Kolbl 87 Micha Holzmann 88 Jef Poskanzer <http://www.acme.com/jef/> 89 Clemens Fischer <http://ino-waiting.gmxhome.de/> 90 Nelson A. de Oliveira 91 Michal Vitecek 92 Tommy Pettersson <http://www.lysator.liu.se/~ptp> 93 94The `qsf' home page is at: 95 96 http://www.ivarch.com/programs/qsf/ 97 98The latest version can always be found here. 99 100----------------------------------------------------------------------------- 101