Release Notes: QMVC 1.7 ======================= This document describes the changes from QMVC Release 1.5 to 1.7. (Release 1.6 was an intermittend development). 1. Introduction --------------- The goales of the new release are - increased effectivity: new bad_loader filter capability modulare AV Scanner support by means of plug-ins - increased efficiency: qmvc uses now a CAR scheme for processing fewer control files, less I/O, less forking - increased prortability: POSIX conformance use of help routines removed dependency on qtools 2. User Interface ----------------- The control files - incidents - options - nullsenders - trustedhosts - avguards - bmguards - bmforward - vmforward have been removed and partially absorbed in the control file - filters. A typical - filters file has the following structure: # CONDITION ; ACTION ; REACTION , REACTION , REACTION , ... ; OPTION , OPTION ; errors=y;trash; subject=y;block;notify=r,forward=spamtrap@localhost,inform=erwin@localhost; bodytext=n;;;ignorecase filename=y;block;notify=r; mimetype=y;keep;notify=r;;quitasap loadertype=y;keep;notify=r,inform=erwin@localhost; virus=y;block;notify=r; Check man page qmvc-filters for more details. The control files - badloadertypes and - mailheaders were added. qmvc allows to be called with two new arguments (in addition to '-v' and '-u'): - 'qmvc -n' use control file 'noscantypes' (was part of the old 'options'). - 'qmvc -c BASEDIR' use 'profile' available under BASEDIR (ie. /home/vpopmail/mydomain/qmvc). qmvc support now the qmail-users mechnism for virtual domains. A virtualdomain dedicated to a user [PREPEND] and modified by the qmail-assign/users mechanism can now be treated with - 'qmvc -v PREPEND' in order to restore the orginal Recipient address. See man qmail-send and qmai-users. Caution! The order of arguments is important. The control file - scanners supports a modulare (and user defined) use of up to four concurrent AV Scanners: # ENGINE ; INITIAL; NAME ; [ COMMENT ] clamscan;C;CLAM AV; fsav;F;FSecure 4.5; # without Kaspersky's engine Support for AV Scanners is facilitated during installation thru - conf-scanners. Added Brasilian notification templates (thanks to Carlos Cesario). The message templates for senders/receivers have been renamed. The executable 'nullmail' has been removed; obsolete. 'vupdate' will not be developed any further; use the AV vendors's update facility. 3. Internals ------------ qmvc and virulator have now almost 30% fewer LoC. virulator scans now only qmvc.rep and is therefore much robuster and faster. qmvc complies now to the "CAR" principal: By means of the control file - filters you first define a filter CONDITION, if this is met, qmvc performs an ACTION, and further qmvc facilitats a set of REACTIONS. The chose of ACTION/REACTION can be defined seperately for each CONDITION. Check man page qmvc-filters for more details. qmvc includes now the unique "!NOPASARAN!" filter technique for loadable executables. While the - badmimetype filter checks for the "magic" of a file, by means of the - badloadertype control file, qmvc identifies an attachment whether it is "loadable" by a OS. qmvc allows now a modulare and configurable AV Scanner support. Each AV Scanner can be integrated by means of an API as defined in the control file - scanners. For each new AV Scanner you have to add an external call-module; which is easy customizable. Up to four AV Scanners can be used mutually. 4. Logging ---------- qmvc logging was adjusted to support the CAR scheme, thus you have to use the new qmvclog2html, virulator, and qmvcmonth. qmvcmonth includes a new option '-a' to archive the log files. You can use the improved 'qmvcportal' routine to view qmvc's HTML output (WebCalendar etc.) for your virtual domains. Erwin Hoffmann - Cologne 2004/05/23