--- mimedefang-2.78.orig/Makefile.in +++ mimedefang-2.78/Makefile.in @@ -161,21 +161,21 @@ -chmod 600 $(DESTDIR)${CONFDIR}/mimedefang-ip-key > /dev/null 2>&1 ; \ fi - if test "$(DEFANGUSER)" != "" ; then \ - if id "$(DEFANGUSER)" > /dev/null 2>&1 ; then \ - chown "$(DEFANGUSER)" $(DESTDIR)${CONFDIR}/mimedefang-ip-key > /dev/null 2>&1 || true; \ - test ! -d $(DESTDIR)$(SPOOLDIR) && $(INSTALL) -m 750 -o $(DEFANGUSER) -d $(DESTDIR)$(SPOOLDIR) > /dev/null 2>&1 || true; \ - test ! -d $(DESTDIR)$(QDIR) && $(INSTALL) -m 750 -o $(DEFANGUSER) -d $(DESTDIR)$(QDIR) > /dev/null 2>&1 || true; \ - fi \ - else \ - echo ""; \ - echo "Please create the spool directory, '$(SPOOLDIR)',"; \ - echo "if it does not exist. Give it mode 700 or 750, and make"; \ - echo "it owned by the user and group you intend to run MIMEDefang as."; \ - if test "$(QDIR)" != "$(SPOOLDIR)" ; then \ - echo "Please do the same with the quarantine directory, '$(QDIR)'."; \ - fi; \ - fi +# if test "$(DEFANGUSER)" != "" ; then \ +# if id "$(DEFANGUSER)" > /dev/null 2>&1 ; then \ +# chown "$(DEFANGUSER)" $(DESTDIR)${CONFDIR}/mimedefang-ip-key > /dev/null 2>&1 || true; \ +# test ! -d $(DESTDIR)$(SPOOLDIR) && $(INSTALL) -m 750 -o $(DEFANGUSER) -d $(DESTDIR)$(SPOOLDIR) > /dev/null 2>&1 || true; \ +# test ! -d $(DESTDIR)$(QDIR) && $(INSTALL) -m 750 -o $(DEFANGUSER) -d $(DESTDIR)$(QDIR) > /dev/null 2>&1 || true; \ +# fi \ +# else \ +# echo ""; \ +# echo "Please create the spool directory, '$(SPOOLDIR)',"; \ +# echo "if it does not exist. Give it mode 700 or 750, and make"; \ +# echo "it owned by the user and group you intend to run MIMEDefang as."; \ +# if test "$(QDIR)" != "$(SPOOLDIR)" ; then \ +# echo "Please do the same with the quarantine directory, '$(QDIR)'."; \ +# fi; \ +# fi $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/bin $(INSTALL) -m 755 -d $(DESTDIR)$(MANDIR)/man1 @@ -185,10 +185,10 @@ -test ! -d $(DESTDIR)$(SPOOLDIR) && mkdir -p $(DESTDIR)$(SPOOLDIR) && chmod 750 $(DESTDIR)$(SPOOLDIR) || true -test ! -d $(DESTDIR)$(QDIR) && mkdir -p $(DESTDIR)$(QDIR) && chmod 750 $(DESTDIR)$(QDIR) || true - if test -f $(DESTDIR)${CONFDIR}/mimedefang-filter ; then \ - $(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${CONFDIR}/mimedefang-filter.example || exit 1; \ + if test -f $(DESTDIR)${sysconfdir}/mail/mimedefang-filter ; then \ + $(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${sysconfdir}/mail/mimedefang-filter.example || exit 1; \ else \ - $(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${CONFDIR}/mimedefang-filter || exit 1; \ + $(INSTALL) -m 644 examples/suggested-minimum-filter-for-windows-clients $(DESTDIR)${sysconfdir}/mimedefang-filter || exit 1; \ fi $(INSTALL) -m 755 $(INSTALL_STRIP_FLAG) mimedefang-multiplexor $(DESTDIR)$(prefix)/bin/mimedefang-multiplexor @@ -210,10 +210,10 @@ $(INSTALL) -m 644 mimedefang-protocol.7 $(DESTDIR)$(MANDIR)/man7/mimedefang-protocol.7 $(INSTALL) -m 644 mimedefang-notify.7 $(DESTDIR)$(MANDIR)/man7/mimedefang-notify.7 if test "$(HAVE_SPAM_ASSASSIN)" = "yes" ; then \ - if test -f $(DESTDIR)${CONFDIR}/sa-mimedefang.cf ; then \ - $(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${CONFDIR}/sa-mimedefang.cf.example || exit 1; \ + if test -f $(DESTDIR)${sysconfdir}/mail/sa-mimedefang.cf ; then \ + $(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${sysconfdir}/mail/sa-mimedefang.cf.example || exit 1; \ else \ - $(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${CONFDIR}/sa-mimedefang.cf || exit 1; \ + $(INSTALL) -m 644 SpamAssassin/spamassassin.cf $(DESTDIR)${sysconfdir}/mail/sa-mimedefang.cf || exit 1; \ fi \ fi --- mimedefang-2.78.orig/configure +++ mimedefang-2.78/configure @@ -3066,7 +3066,7 @@ ac_config_headers="$ac_config_headers config.h" -PATH=$PATH:/usr/local/bin +#PATH=$PATH:/usr/local/bin ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do @@ -3922,7 +3922,7 @@ $as_echo "Compile-time checking for Perl modules disabled" >&6; } HAVE_SPAM_ASSASSIN=yes else - for module in 'IO::Socket' 'MIME::Tools 5.410 ()' 'MIME::WordDecoder' 'Digest::SHA1' ; do + for module in 'IO::Socket' 'MIME::Tools 5.410 ()' 'MIME::WordDecoder' 'Digest::SHA' ; do { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Perl module $module" >&5 $as_echo_n "checking for Perl module $module... " >&6; } (echo "use lib '$PERLINSTALLSITELIB'; use $module;" ; echo "exit(0);") | $PERL > /dev/null 2>&1 @@ -3935,8 +3935,8 @@ $as_echo "$as_me: WARNING: *** MIME::Tools version 5.410 or higher (5.411a recommended)" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** MIME::WordDecoder" >&5 $as_echo "$as_me: WARNING: *** MIME::WordDecoder" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** Digest::SHA1" >&5 -$as_echo "$as_me: WARNING: *** Digest::SHA1" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** Digest::SHA" >&5 +$as_echo "$as_me: WARNING: *** Digest::SHA" >&2;} exit 1 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 --- mimedefang-2.78.orig/configure.in +++ mimedefang-2.78/configure.in @@ -141,7 +141,7 @@ dnl for installation of spamassassin.cf HAVE_SPAM_ASSASSIN=yes else - for module in 'IO::Socket' 'MIME::Tools 5.410 ()' 'MIME::WordDecoder' 'Digest::SHA1' ; do + for module in 'IO::Socket' 'MIME::Tools 5.410 ()' 'MIME::WordDecoder' 'Digest::SHA' ; do AC_MSG_CHECKING([for Perl module $module]) (echo "use lib '$PERLINSTALLSITELIB'; use $module;" ; echo "exit(0);") | $PERL > /dev/null 2>&1 if test $? != 0 ; then @@ -149,7 +149,7 @@ AC_MSG_WARN([*** Make sure the following Perl modules are installed:]) AC_MSG_WARN([*** MIME::Tools version 5.410 or higher (5.411a recommended)]) AC_MSG_WARN([*** MIME::WordDecoder]) - AC_MSG_WARN([*** Digest::SHA1]) + AC_MSG_WARN([*** Digest::SHA]) exit 1 fi AC_MSG_RESULT(ok) --- mimedefang-2.78.orig/contrib/graphdefang-0.9/graphdefang-config +++ mimedefang-2.78/contrib/graphdefang-0.9/graphdefang-config @@ -0,0 +1,225 @@ +#!/usr/bin/perl -w +# $Id: graphdefang-config-mimedefang-example,v 1.1 2003/10/22 20:08:57 dfs Exp $ +# +# GraphDefang -- a set of tools to create graphs of your mimedefang +# spam and virus logs. +# +# Written by: John Kirkland +# jpk@bl.org +# +# Copyright (c) 2002-2003, John Kirkland +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +#============================================================================= + +# +# Path to incoming log file or log files +# If you have only one log file, use $DATAFILE. +# +# If you have more than one log file to parse, say from different hosts, +# use @DATAFILES as follows and you MUST COMMENT OUT OR DELETE $DATAFILE: +# +# $DATAFILES[0] = '/var/log/maillog.host1'; +# $DATAFILES[1] = '/var/log/maillog.host2'; + +$DATAFILE = '/var/log/mail/mail.log'; + +# +# Optional Timezone variable by host name. The host name must match +# the host name presented in the syslog file(s). This variable is +# useful when you have a central syslog server collecting logs for +# machines that are in different timezones. By default, graphdefang +# uses the timezone that is local to the machine upon which it is +# running. It is not necessary to define the TZ for EVERY host, but +# only for the ones that aren't in the same timezone as the log +# server. The timezone must be understood by the Time::Zone perl +# module. +# +# $TZ{'westover'} = 'cst6cdt'; +# $TZ{'GD_Display'} = 'cst6cdt'; +# + +# +# Output directory for png files that are created +# + +$OUTPUT_DIR = '/var/lib/graphdefang'; + +# Set graph settings +# +# Possible settings: +# +# Name: data_types (required) +# Description: Array of events from the mimedefang log file to +# graph. +# Supported Values: These event names are not fixed. If you put an event +# in mimedefang-filter with md_log('event'), then you +# can use it here. The values used in the example +# mimedefang-filter are 'spam', 'virus', +# 'suspicious_chars', 'message/partial', 'bad_filename', +# 'non_rfc822', 'non_multipart'. +# 'all' is also supported, but it must be listed by itself. +# +# Name: graph_type (required) +# Description: Type of graph to output. +# Supported Values: 'line' or 'stacked_bar' +# +# Name: grouping (required) +# Description: Which value to graph from the md_log file. +# Supported Values: 'summary', 'value1', 'value2', 'sender', 'recipient' +# 'subject'. value1 and value2 are the optional +# parameters that can be logged with the md_log command +# from mimedefang-filter. +# +# Name: grouping_times (required) +# Description: Array of Time intervals to use for grouping +# Supported Values: 'hourly', 'daily', or 'monthly' +# +# Name: top_n (optional) +# Description: Limit number of values to the top n. This +# value is recommended when looking at +# senders, recipients, or subjects. +# +# Name: value1_title (optional) +# Description: Title used in the header if value1 is +# graphed. +# +# Name: value2_title (optional) +# Description: Title used in the header if value2 is +# graphed. +# +# Name: filter (optional) +# Description: Regular expression filter that can be +# used with value1, value2, sender, +# recipient, and subject +# Common uses: +# '@westover.org' to filter sender or recipient by domain +# '^(?:(?!klez).)*$' to filter OUT klez in a virusname +# +# Name: filter_name (optional) +# Description: If a filter is used, the filtername will be appended +# to the Graph Title as "filtered by $filter_name" and +# appended to the end of the filename. +# +# Name: $GraphSettings{'title'} (optional) +# Description: Assigns a title for the chart. +# +# Name: $GraphSettings{'filename'} (optional) +# Description: Sets the filename for a given chart (note: +# the grouping_time is appended to this variable +# to determine the final file name. +# +# Name: $GraphSettings{'x_graph_size'} (optional) +# Name: $GraphSettings{'y_graph_size'} (optional) +# Description: Size, in pixels, for this graph. This overrides the +# default. +# +# Name: $GraphSettings{'num_hourly_values'} (optional) +# Name: $GraphSettings{'num_daily_values'} (optional) +# Name: $GraphSettings{'num_monthly_values'} (optional) +# Description: Number of data points for this graph. This overrides +# the default. + +my %GraphSettings; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['spam', 'probable_spam', 'virus', 'mail_in'], + 'graph_type' => 'line', + 'grouping' => 'summary', + 'grouping_times'=> ['hourly','daily','monthly'], + ); +push @GRAPHS, { %GraphSettings }; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['virus'], + 'graph_type' => 'stacked_bar', + 'grouping' => 'value1', + 'value1_title' => 'VirusName', + 'grouping_times'=> ['hourly','daily','monthly'], + #'filter' => '^(?:(?!klez).)*$', + #'filter_name' => 'Not Klez', + ); +push @GRAPHS, { %GraphSettings }; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['spam'], + 'graph_type' => 'stacked_bar', + 'grouping' => 'recipient', + 'top_n' => '9', + 'grouping_times'=> ['hourly','daily','monthly'], + 'filter' => '^(?:(?!westover.org).)*$', + 'filter_name' => 'Heartlight Traffic', + 'title' => 'Heartlight Spam Traffic', + ); +push @GRAPHS, { %GraphSettings }; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['spam', 'virus'], + 'graph_type' => 'stacked_bar', + 'grouping' => 'recipient', + 'top_n' => '9', + 'grouping_times'=> ['hourly','daily','monthly'], + ); +push @GRAPHS, { %GraphSettings }; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['spam'], + 'graph_type' => 'stacked_bar', + 'grouping' => 'sender', + 'top_n' => '9', + 'grouping_times'=> ['hourly','daily','monthly'], + ); +push @GRAPHS, { %GraphSettings }; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['spam'], + 'graph_type' => 'stacked_bar', + 'grouping' => 'value2', + 'value2_title' => 'Relay Address', + 'top_n' => '9', + 'grouping_times'=> ['hourly','daily','monthly'], + ); +push @GRAPHS, { %GraphSettings }; + +#------------------------------------------------------------- + +%GraphSettings = (); +%GraphSettings = ( + 'data_types' => ['virus'], + 'graph_type' => 'stacked_bar', + 'grouping' => 'value2', + 'value2_title' => 'Relay Address', + 'top_n' => '9', + 'grouping_times'=> ['hourly','daily','monthly'], + ); +push @GRAPHS, { %GraphSettings }; --- mimedefang-2.78.orig/contrib/graphdefang-0.9/graphdefang.pl +++ mimedefang-2.78/contrib/graphdefang-0.9/graphdefang.pl @@ -24,7 +24,7 @@ #============================================================================= use strict; -use vars qw($MYDIR $OUTPUT_DIR $SUMMARYDB $QUIET $NODB $DATAFILE @DATAFILES @GRAPHS %TZ); +use vars qw($SHAREDIR $OUTPUT_DIR $SUMMARYDB $QUIET $NODB $DATAFILE @DATAFILES @GRAPHS %TZ); # Argument parsing use Getopt::Long; @@ -51,19 +51,20 @@ # Get the directory from where graphdefang.pl is running use File::Basename (); -($MYDIR) = (File::Basename::dirname($0) =~ /(.*)/); +#($MYDIR) = (File::Basename::dirname($0) =~ /(.*)/); +$SHAREDIR="/usr/share/graphdefang"; # Get graph configurations -require("$MYDIR/graphdefang-config"); +require("/etc/graphdefang/graphdefang-config"); # Require the graphdefang library file -require ("$MYDIR/graphdefanglib.pl"); +require ("/usr/share/graphdefang/graphdefanglib.pl"); # # Path to summary database # -$SUMMARYDB = "$MYDIR/SummaryDB.db"; +$SUMMARYDB = "/var/cache/graphdefang/SummaryDB.db"; # Do we do a database trim? if ($trim) { @@ -108,9 +109,9 @@ __END__ -=head1 graphdefang.pl +=head1 NAME -Application for generating graphs from mimedefang log files. +graphdefang.pl - Application for generating graphs from mimedefang log files. =head1 SYNOPSIS --- mimedefang-2.78.orig/contrib/graphdefang-0.9/graphdefanglib.pl +++ mimedefang-2.78/contrib/graphdefang-0.9/graphdefanglib.pl @@ -203,7 +203,7 @@ my @GraphTimes = ("hourly","daily","monthly"); # Load event processing perl code from the events subdirectory - my $dirname = "$MYDIR/event"; + my $dirname = "$SHAREDIR/event"; opendir(DIR, $dirname) or die "can't opendir $dirname: $!"; while (defined(my $file = readdir(DIR))) { if (!($file =~ m/^\./) and !($file =~ m/^CVS/)) { --- mimedefang-2.78.orig/contrib/graphdefang-0.9/web/graphdefang.cgi +++ mimedefang-2.78/contrib/graphdefang-0.9/web/graphdefang.cgi @@ -29,15 +29,16 @@ use Fcntl; use Data::Dumper; -use vars qw($MYDIR $OUTPUT_DIR $SUMMARYDB $QUIET $NODB $NOFILE $DATAFILE @GRAPHS %TZ); +use vars qw($SHAREDIR $OUTPUT_DIR $SUMMARYDB $QUIET $NODB $NOFILE $DATAFILE @GRAPHS %TZ); # CONFIGURE HERE -my $GRAPHDEFANGDIR = '/home/jpk/graphdefang'; -$SUMMARYDB = "$GRAPHDEFANGDIR/SummaryDB.db"; +#my $GRAPHDEFANGDIR = '/home/jpk/graphdefang'; +$SUMMARYDB = "/var/cache/graphdefang/SummaryDB.db"; +$SHAREDIR = "/usr/share/graphdefang"; # THE REST SHOULD BE OKAY # Require the graphdefang library file -require ("$GRAPHDEFANGDIR/graphdefanglib.pl"); +require ("$SHAREDIR/graphdefanglib.pl"); # Don't output messages for the web app $QUIET = 1; --- mimedefang-2.78.orig/contrib/graphdefang-0.9/web/index.php +++ mimedefang-2.78/contrib/graphdefang-0.9/web/index.php @@ -27,7 +27,7 @@ @@ -77,7 +77,7 @@ Graphs created with GraphDefang.

-Interactive CGI Version at: GraphDefang CGI. +Interactive CGI Version at: GraphDefang CGI.

Mon, 08 Oct 2012 12:38:02 +0200 + +mimedefang (2.56-1) unstable; urgency=low + + - mimedefang.pl.in: The filter_begin function is now passed + a single argument ($entity) representing the parsed message. + + *** NOTE INCOMPATIBILITY *** + + filter_begin NOW TAKES ONE ARGUMENT, + NOT ZERO. IF YOUR FILTER HAS A + PROTOTYPE FOR filter_begin, YOU SHOULD + FIX OR REMOVE THE PROTOTYPE + + - mimedefang.c: Do NOT strip "bare CR" characters from e-mails by + default. The new "-c" command-line option enables the older behavior. + + *** NOTE INCOMPATIBILITY *** + + WE NO LONGER STRIP BARE CR's FROM + MESSAGES BY DEFAULT. TEST YOUR FILTERS + CAREFULLY TO MAKE SURE THEY CAN COPE + WITH THIS, OR USE THE -c FLAG. + + -- Christoph Martin Mon, 13 Mar 2006 17:17:12 +0100 + +mimedefang (2.53-1) unstable; urgency=low + + - mimedefang.pl: We don't detect and load Perl modules until + the detect_and_load_perl_modules() function is called. + + *** NOTE INCOMPATIBILITY *** + + You *MUST* call detect_and_load_perl_modules() inside your filter + before you can rely on the %Features hash being set correctly, + and before you can rely on SpamAssassin being loaded!!! + + -- Christoph Martin Tue, 27 Sep 2005 17:26:15 +0200 + +mimedefang (2.48-1) unstable; urgency=low + + - Support for $Stupidity{"flatten"} removed. + + *** NOTE INCOMPATIBILITY *** + + - we try to preserve original multipart type of message. + action_add_part now simply keeps a list + of parts to be added. At the end: + + a) If original message was multipart/mixed, we simply add + the part. + + b) Otherwise, we make a new multipart/mixed container, put + original message as the first part of this new container, and + then add part to the multipart/mixed container. + + *** NOTE INCOMPATIBILITY *** + + -- Christoph Martin Fri, 12 Nov 2004 17:27:29 +0100 + +mimedefang (2.43-1) unstable; urgency=low + + *** NOTE INCOMPATIBILITY *** + + Modified C and Perl code so that filter_relay is called + when remote client connects rather than after MAIL FROM. + This means the $helo argument is NOT available! + + filter_relay no longer has access to the HELO argument, nor + does the MIMEDefang spool directory exist when filter_relay is called. + + -- Christoph Martin Mon, 5 Jul 2004 15:28:09 +0200 + --- mimedefang-2.78.orig/debian/README.Debian +++ mimedefang-2.78/debian/README.Debian @@ -0,0 +1,19 @@ +mimedefang for Debian +--------------------- + +The Debian Mimedefang package will not modify your sendmail.mc +file. Instead you have to do it yourself. + +You have to include a line like: + +INPUT_MAIL_FILTER(`mimedefang', `S=unix:/var/spool/MIMEDefang/mimedefang.sock, F=T, T=S:1m;R:1m') + +before the MAILER definitions. + +If you have installed some virus scanner, you have to configure the +path in /etc/mail/mimedefang.pl.conf + +For more information see the Sendmail documentation and the mimedefang +Howto: http://www.rudolphtire.com/mimedefang-howto/ + + -- Christoph Martin , Tue, 30 Jul 2002 19:11:14 +0200 --- mimedefang-2.78.orig/debian/changelog +++ mimedefang-2.78/debian/changelog @@ -0,0 +1,834 @@ +mimedefang (2.78-1) unstable; urgency=low + + * New upstream release + * Fix bug in logic that coalesces multiparts to single-parts if + possible; the bug broke DKIM signing. Fix is courtesy of + Peter Nagel. + * Change old author's name to "Dianne Skoll" in many places. + * Add support for filter_wrapup callback. This is called at the + very end and permits header modifications, but not body + modifications. Useful for DKIM-signing. + * Fix FTBFS with -Werror=format-security (closes: #646347) + * remove obsolete dependency from libfile-scan-perl + + -- Christoph Martin Thu, 11 Jun 2015 17:24:23 +0200 + +mimedefang (2.75-1) unstable; urgency=high + + [ Christoph Martin ] + * New upstream release + * Add rcpt_addr, rcpt_host and rcpt_mailer to default set of + macros that we ask for. + * Do not invokve smfi_setsymlist unless "-y" option to + mimedefang is given. smfi_setsymlist leaks memory in versions + of Sendmail prior to 8.14.4. + * Implement new "load1" md-mx-ctrl command which gives statistics + in more useful format than "load" + * watch-multiple-mimedefangs.tcl: Major improvements; see the + new -n, -r, -s and -t command-line options. + * Add action_add_entity function. + * don't leave temp files on debconf handling of /etc/default/mimedefang + and remove old ones on package purge (closes: #715002) + * New upstream release + + -- Christoph Martin Tue, 14 Oct 2014 11:34:09 +0200 + +mimedefang (2.73-2) unstable; urgency=low + + [ gregor herrmann ] + * Fix "modifies conffiles (policy 10.7.3): /etc/default/mimedefang": + - debian/{dir,rules}: install configuration file under /usr/share + - debian/mimedefang.postinst: copy it to /etc/default if necessary + - debian/mimedefang.postrm: remove it on purge + - debian/config: also handle no/false case + (Closes: #688196) + + [ Christoph Martin ] + * Add MD_ALLOW_GROUP_ACCESS and MX_RECIPOK_PERDOMAIN_LIMIT to the + reference configuration in /usr/share/mimedefang/mimedefang.conf + and hint to NEWS (Closes: #687344) + + -- Christoph Martin Mon, 08 Oct 2012 12:40:36 +0200 + +mimedefang (2.73-1) unstable; urgency=low + + * New upstream release + * Pass along the client port number, server IP address and server port + number to all filter functions. This feature was sponsored by Scayl. + * Add "-G" option to mimedefang and mimedefang-multiplexor. This + makes their sockets group-readable and group-writable. + * Fix Graphdefang to handle new md_syslog output style. + * Change md_syslog to log the Sendmail Queue-ID if it is + available. + * add new nb debconf translation (Closes: #654452) + * correct some lintian warnings + + -- Christoph Martin Tue, 24 Jul 2012 16:25:00 +0200 + +mimedefang (2.71-2) unstable; urgency=low + + [ Salvatore Bonaccorso ] + * Use Digest::SHA instead of Digest::SHA1. Remove libdigest-sha1-perl from + (Build-)Depends (Closes: #625870). + + [ Christoph Martin ] + * include Danish debconf translation (Closes: #623091) + + -- Christoph Martin Mon, 29 Aug 2011 10:10:17 +0200 + +mimedefang (2.71-1) unstable; urgency=low + + * New upstream release + * Fixed a bug in embedded Perl: We have to call + PERL_SET_CONTEXT after forking or Perl gets confused. + In particular, setting signal-handling dispositions using + $SIG{FOO} = sub { ... } breaks. + * really include spanish debconf translation (closes: #580200) + + -- Christoph Martin Wed, 25 Aug 2010 11:54:00 +0200 + +mimedefang (2.69-1) unstable; urgency=low + + * New upstream release (closes: #586168) + * Fix bug with Perl 5.10 and embedded perl + NOTE: This is a bug in Perl, not MIMEDefang, but we need to work + around it. (closes: #516913) + * Try hard not to lose any STDERR messages before reaping a slave. + * Make relay_is_blacklisted and relay_is_blacklisted_multi handle + IPv6 addresses. Patch loosely based on submission by Michiel + Brandenburg. NOTE: relay_is_blacklisted_multi and relay_is_blacklisted + are DEPRECATED. Use the CPAN module Net::DNSBL::Client instead. + * The functions add_recipient, change_sender, delete_recipient, + action_add_header and action_insert_header can be called from + outside message context (that is, from filter_sender and + filter_recipient). Based on suggestion from D. Stussy. + * Add new "-y" option to mimedefang-multiplexor. This limits + the number of concurrent "recipok" commands on a per-domain basis. + * Remove obsolete code that used to attempt to generate working + directory names. Deactivate the no-longer-needed "-M" mimedefang + option. + * Remove Anomy::HTMLCleaner support. + * refer to correct GPL license file + * update to standards version 3.8.4 (no changes) + * include spanish debconf translation (closes: #580200) + + -- Christoph Martin Wed, 23 Jun 2010 16:36:07 +0200 + +mimedefang (2.67-3) unstable; urgency=low + + * because of change in apt-get/aptitude change recommends on + tk8.3 | wish, sendmail to suggests (closes: #555657, #531530) + + -- Christoph Martin Thu, 12 Nov 2009 10:31:12 +0100 + +mimedefang (2.67-2) unstable; urgency=low + + * Fix watch file (closes: #554490) + * Include fix for embedded perl (closes: #516913) + + -- Christoph Martin Fri, 06 Nov 2009 12:19:31 +0100 + +mimedefang (2.67-1) unstable; urgency=low + + * New upstream release + * embperl.c, configure.in: Fix problems with embedded Perl on + Debian HPPA architecture. + * Added support for FPROTD version 6 daemonized scanner. + + -- Christoph Martin Tue, 24 Feb 2009 16:20:36 +0100 + +mimedefang (2.64-6) unstable; urgency=low + + * fix init script to not exit with error when stopping and daemon is not + running (closes: #497503) + * include fix from upstream to correctly invoke embedded perl + interpreter and make it run on hppa again (closes: #495070) + * update japanese debconf translation (closes: #490666, #494116) + * update swedish debconf translation (closes: #491948) + + -- Christoph Martin Tue, 2 Sep 2008 10:23:51 +0200 + +mimedefang (2.64-5) unstable; urgency=low + + * disable embedded perl on hppa to fix build problem + + -- Christoph Martin Fri, 11 Jul 2008 16:19:30 +0200 + +mimedefang (2.64-4) unstable; urgency=low + + * update standards version + * update build-depends + * reformat NEWS.Debian to make lintian happy + + -- Christoph Martin Fri, 13 Jun 2008 13:31:15 +0200 + +mimedefang (2.64-3) unstable; urgency=low + + * Debconf translations + - Dutch. Closes: #474765 + - French. Closes: #479435 + - Basque. Closes: #483467 + + -- Christoph Martin Wed, 4 Jun 2008 16:37:42 +0200 + +mimedefang (2.64-2) unstable; urgency=low + + * add LSB formatted dependency info in init.d script (closes: #469747) + * include pointer to mimedefang-multiplexor manpage in debconf template + on using an embedded perl interpreter (closes: #461307) + * include updated ta.po, ru.po, pt.po, vi.po, it.po, gl.po, cs.po, + fi.po, nb.po, nl.po (closes: #470516, #470563, #470565, #470598, #471145, + #470527, #471045, #470593) + * fix some lintian warnings + * update to standards version 3.7.3 (no changes needed) + + -- Christoph Martin Mon, 7 Apr 2008 12:34:16 +0200 + +mimedefang (2.64-1) unstable; urgency=low + + * New upstream release + * mimedefang.pl.in: Make md_check_against_smtp_server include the + Sendmail Queue-ID in the syslog message. + * embperl.c: Fix Perl's $$ variable so it reflects the actual PID + of the slave process. If you are using Embedded Perl, this should + remove a major source of irritation (log messages previously used + the PID of the master multiplexor process.) + * Add support for Sophos "savscan" scanner (Adam Lanier) + * Add support for NOD32 command-line scanner (Dusan Zovinec) + * watch-multiple-mimedefangs.tcl: Works better with Tcl/Tk 8.5. + Displays message volumes/day in more human-readable form. New + -archive option logs statistics to files. + * apply patch from debian-l10n-english team (closes: #461013) + * include Tamil, Galician, Basque, Finnish, Italian, Russian, Norwegian + debconf translation (closes: #461842, #461749, #462345, #462685, + #463702, #463727, #463939) + * include updated Portuguese, German, French, Vietnamese, Dutch, Czech + debconf translation (closes: #455075, #455288, #461743, #461847, + #462311, #462381, #462435, #463735) + + -- Christoph Martin Wed, 6 Feb 2008 12:42:52 +0100 + +mimedefang (2.63-2) unstable; urgency=low + + * fix init-script (closes: #455295) + + -- Christoph Martin Mon, 10 Dec 2007 14:51:39 +0100 + +mimedefang (2.63-1) unstable; urgency=low + + * New upstream release + * mimedefang.c: A new "-N" flag causes Sendmail not to make + filter_recipient callbacks for invalid recipients. Only works + with Sendmail/Milter 8.14.0! Note that without the -N flag, + MIMEDefang now works the same with 8.14.0 and 8.13.x -- you always + see all recipients by default, even invalid ones. + * mimedefang.pl.in: A new "change_sender" action lets you change + the envelope sender. Only works with Sendmail/Milter 8.14.0 and + newer! + * You can invoke mimedefang like this: mimedefang prcap + and it prints details about the version of libmilter it's linked + with and exit. + * examples/init-script.in: Added MD_SKIP_BAD_RCPTS init + script option (suggested by John Nemeth) + * graphdefang now recommends php5 (closes: #432240) + * fix sendmail call via unix-socket (closes: #439432) + * fix typo in debconf template (closes: #421590) + * include Dutch and Portuguese debconf translation (closes: #423058, + #434283) + * fix build to make DEB_BUILD_OPTIONS=nostrip working (closes: #437567) + + -- Christoph Martin Fri, 7 Dec 2007 17:57:59 +0100 + +mimedefang (2.61-1) unstable; urgency=low + + * New upstream release (closes: #416147) + * mimedefang.c: Fix filter registration so MIMEDefang works + correctly against libmilter from Sendmail 8.14 + * mimedefang.c: Major changes: We build up the contents of + COMMANDS in memory and write it out in one big chunk per milter + callback. Not only does this reduce the number of system calls, + but we also now _check the return code_ of those calls! + * mimedefang.pl.in(item_contains_virus_fprotd): More careful inspection + of F-PROT output to determine virus name. (Jan-Pieter Cornet) + * Added a new tool (watch-multiple-mimedefangs.tcl) for monitoring + a cluster of MIMEDefang scanners + * Modify multiplexor and mimedefang.pl.in so slave status updates + work correctly (the -Z multiplexor flag.) Previously, the slave + status wasn't being reset correctly. + * mimedefang.pl.in(read_commands_file): If the COMMANDS file did not + end with an F, the slave would give up and become idle, but not + inform the multiplexor. As a result, the multiplexor would think + the slave was busy, and the slave would be unavailable until the + busy timeout elapsed and it was killed by the multiplexor. This + bug has been fixed. + * move /etc/mail/mimedefang.conf to /etc/default/mimedefang (closes: + #335988) + * spamassassin >= 3.1.5 now finds automatically updates in + /var/lib/spamassassin. mimedefang.pl includes some code to only set + the spamassassin statedir if version is < 3.1.5 (closes: #366636) + + -- Christoph Martin Tue, 27 Mar 2007 12:00:34 +0200 + +mimedefang (2.57-5) unstable; urgency=low + + * Remove obsolete mbox switches from clamscan command line (closes: #413606) + * initial German debconf translation (closes: #413902) + * Updated Czech translation (closes: #413218) + + -- Christoph Martin Thu, 8 Mar 2007 18:05:15 +0100 + +mimedefang (2.57-4) unstable; urgency=high + + * add depend on adduser (closes: #408255) + * fix japanese debconf translation (closes: #403488) + + -- Christoph Martin Fri, 26 Jan 2007 14:43:57 +0100 + +mimedefang (2.57-3) unstable; urgency=low + + * update japanese debconf translation (closes: #402618) + + -- Christoph Martin Wed, 13 Dec 2006 15:11:01 +0100 + +mimedefang (2.57-2) unstable; urgency=high + + * change group of /var/spool/MIMEDefang back to defang, because we no + longer depend on sendmail (closes: #398368, #398996) + * add if available user smmsp to group defang (closes: #381335) + + -- Christoph Martin Fri, 17 Nov 2006 16:33:42 +0100 + +mimedefang (2.57-1) unstable; urgency=low + + * New upstream release + * mimedefang-multiplexor: New scheduling algorithm tries to keep + commands "sticky". For example, when looking for a slave to run + "recipok", we prefer to use a slave that recently ran "recipok". + NOTE!!! If your filter incorrectly retains state from earlier + callbacks into filter_begin, this scheduling change WILL expose + the bugs in your filter. + * mimedefang-multiplexor.c: New "md-mx-ctrl hload" command keeps track + of load for past 1, 4, 12 and 24 hours. Gives long-term data to + complement the short-term "md-mx-ctrl load" data. + * mimedefang.pl.in: Pass LOCAL_STATE_DIR => '/var/lib' to + Mail::SpamAssassin constructor. If your LOCAL_STATE_DIR + is elsewhere, you'll have to hack the Perl code, I'm afraid. + (closes: #366636) + * change depends on sendmail to recommends, since mimedefang can run on + different host than sendmail (closes: #373300) + + -- Christoph Martin Mon, 7 Aug 2006 17:55:31 +0200 + +mimedefang (2.56-1) unstable; urgency=low + + * New upstream release (closes: #351288) + * mimedefang.c: The new '-R' option lets you reserve a specified + number of slaves for connections from localhost. The idea is to + try to allow clientmqueue runs to succeed even on heavily-loaded + systems. + * mimedefang.pl.in: The filter_begin function is now passed + a single argument ($entity) representing the parsed message. + *** NOTE INCOMPATIBILITY *** filter_begin NOW TAKES ONE ARGUMENT, + NOT ZERO. IF YOUR FILTER HAS A + PROTOTYPE FOR filter_begin, YOU SHOULD + FIX OR REMOVE THE PROTOTYPE + * mimedefang.c, mimedefang.pl.in: Added new action_insert_header + to prepend headers (rather than appending them). Only works + properly with Sendmail 8.13; on older versions of Sendmail, falls + back to action_add_header. Based on patch from Matthew van Eerde. + * mimedefang.pl.in: Added new function md_get_bogus_mx_hosts. + Allows to test for sender domains with bogus MX hosts (such as + hosts that resolve to the loopback or private IP addresses.) + * mimedefang.c: Do NOT strip "bare CR" characters from e-mails by + default. The new "-c" command-line option enables the older behavior. + *** NOTE INCOMPATIBILITY *** WE NO LONGER STRIP BARE CR's FROM + MESSAGES BY DEFAULT. TEST YOUR FILTERS + CAREFULLY TO MAKE SURE THEY CAN COPE + WITH THIS, OR USE THE -c FLAG. + * mimedefang.c(rcptto): If you returned ACCEPT_AND_NO_MORE_FILTERING + from filter_recipient, the spool files wouldn't get cleaned up, + eventually clogging the spool directory. This has been fixed. + + -- Christoph Martin Mon, 13 Mar 2006 17:17:12 +0100 + +mimedefang (2.53-2) unstable; urgency=low + + * added swedish debconf translation (closes: #331556) + * updated french debconf translation (closes: #332329) + + -- Christoph Martin Mon, 13 Mar 2006 16:08:54 +0100 + +mimedefang (2.53-1) unstable; urgency=low + + * New upstream release (closes: #312278) + * mimedefang.pl: We don't detect and load Perl modules until + the detect_and_load_perl_modules() function is called. + * should bring speed improvements + * include alternate dependency on debconf-2.0 + * fix type on debconf template (closes: #312788) + * include virnamese debconf translation (closes: #312787) + * add french debconf translation (closes: #302651) + * include japanese debconf translation (closes: #310162) + * add czeck debconf translation (closes: #319851) + + -- Christoph Martin Tue, 27 Sep 2005 17:26:15 +0200 + +mimedefang (2.51-2) unstable; urgency=low + + * make mimedefang again read /etc/mail/sa-mimedefang.cf (closes: #295467) + * reformulate debconf templates files and correct Description line + (closes: #294936) + * add french debconf translation (closes: #295962) + + -- Christoph Martin Wed, 23 Feb 2005 15:53:15 +0100 + +mimedefang (2.51-1) unstable; urgency=high + + * New upstream security fix release + * fixes a possible security hole in function percent_encode + * Added "-q" option to mimedefang. This permits the multiplexor + to queue new incoming connections. It may make higher utilization + of slaves and improve throughput. + + -- Christoph Martin Fri, 11 Feb 2005 18:31:44 +0100 + +mimedefang (2.49-1) unstable; urgency=low + + * New upstream release + * mimedefang.c: Fix stupid logic error that made MIMEDefang ignore + the Sendmail {if_addr} macro when setting IP address for + X-Scanned-By: header. + * embperl.c: Soften warning about file descriptors being opened + in filter. Some systems seem to do this (Solaris). + * change group of user defang from nogroup to new group defang (closes: + #285998) + * put spam_assassin_init in mimedefang-filter into filter_initialize to + remove warning about opened file descriptors outside a function when + using embperl (closes: #283495) + * include debconf support + * ask for embedded perl usage + + -- Christoph Martin Fri, 4 Feb 2005 15:48:52 +0100 + +mimedefang (2.48-1) unstable; urgency=low + + * New upstream release (closes: #279558) + * SECURITY FIX: mimedefang.c: Tempfail message if RESULTS file + doesn't terminate with 'F' line. (Detects disk-full condition.) + * mimedefang-multiplexor.c: Added mechanism for slaves to send + back "status reports" to the multiplexor. The command + "md-mx-ctrl slaves" now shows the current status of busy slaves + (eg, "Running SpamAssassin", "recipok ", etc.) + * Added support for Command "csav" anti-virus. + * mimedefang.pl.in: append_html_boilerplate and append_text_boilerplate + refuse to tamper with S/MIME messages. They won't descend into + multipart/signed or multipart/encrypted parts. Similarly for + remove_redundant_html_parts. + * mimedefang.pl.in: Split-and-rebuild algorithm is greatly improved. + In particular: In filter_end, the $entity->head correctly contains + all message headers. And we try to avoid creating useless + multipart containers -- if we would end up with a multipart/mixed + or multipart/alternative with only one sub-part, we "pop" the sub-part + up to the top level. + * mimedefang.c: Add IP address of scanning host to X-Scanned-By: + header. + * mimedefang.pl.in: flatten_mime removed. + * action_add_part revamped completely; + + -- Christoph Martin Fri, 12 Nov 2004 17:28:53 +0100 + +mimedefang (2.45-2) unstable; urgency=low + + * install sa-mimedefang.cf in correct location and remove the wrong one + (closes: #275295) + * make description more precise (dependency on sendmail) (closes: + #275787) + + -- Christoph Martin Mon, 11 Oct 2004 17:26:44 +0200 + +mimedefang (2.45-1) unstable; urgency=low + + * New upstream release + * mimedefang-multiplexor.c: Add the "-a" command-line option + for opening a socket that only allows unprivileged commands. + These are commands that fetch status, but can't affect operation + of multiplexor. + * mimedefang.pl.in: Added filter_create_parser user-supplied + callback to create a MIME::Parser object. This lets you customize + how parsing happens. + * mimedefang.pl.in (md_check_against_smtp_server): Add optional + $port argument to specify checking against a port other than 25. + * watch-mimedefang.in: Huge rewrite. Displays a lot more info about + the MIMEDefang server. Can monitor a remote MIMEDefang server over + a low-bandwidth SSH connection. + * mimedefang.pl.in: Implemented a new set of RBL lookup functions + that perform multiple lookups in parallel and allow you to set + a timeout (the timeout applies to ALL lookups, not each individual + lookup.) These new functions require the Net::DNS module. + * move Depends: tk8.3 | wish to Recommends to help install mimedefang + without X11 and tcl (closes: #273752) + + -- Christoph Martin Mon, 4 Oct 2004 18:55:16 +0200 + +mimedefang (2.44-1) unstable; urgency=high + + * remove patch for #256927 which causes a segfault with newer perl + version (5.8.4) and makes it unusable (closes: #262590) + * new upstream version (closes: #263490) + * NEW: Support for Sendmail's SOCKETMAP map class. + * NEW: Support for Sendmail's QUARANTINE feature. This leaves + quarantined messages in your mail queue, and is NOT THE SAME as + MIMEDefang's quarantine. + * mimedefang.pl.in: Add "Precedence: bulk" headers to all + MIMEDefang-generated notifications. + * mimedefang-multiplexor.c (sigterm): If multiplexor is killed, + we kill all slaves with SIGTERM. We wait for up to 10 seconds, and + if there are still slaves that haven't exited, we kill them + with SIGKILL. + * remove sleep while restarting. Issue should be solved by upstream (see + above) + * change mimedefang.pl so that more variables can be set via + mimedefang.pl.conf (closes: #261651) + + -- Christoph Martin Thu, 5 Aug 2004 18:02:49 +0200 + +mimedefang (2.43-2) unstable; urgency=low + + * fix watchfile + + -- Christoph Martin Wed, 28 Jul 2004 11:21:58 +0200 + +mimedefang (2.43-1) unstable; urgency=low + + * new upstream version (closing: #256833) + * filter_relay, filter_sender and filter_recipient can return + a fifth element specifying a delay before returning a code + to the SMTP client. This lets you implement tarpitting without + tying up a Perl slave. However, the delay does tie up a libmilter + thread. + * Modified C and Perl code so that filter_relay is called + when remote client connects rather than after MAIL FROM. + * mimedefang-multiplexor.c: Add -X option to run a "tick" request + every so often. Added -Y option to set syslog label. + * mimedefang.pl.in: Call md_openlog lazily so users can call it from + filter to change syslog label. + * fix X_SCANNED_BY option processing in init script (closes: 251077) + (thanks to Jonathan Hankins) + * backport memory-leak fix from 2.44Beta (closes: #256927) + + -- Christoph Martin Mon, 5 Jul 2004 15:28:05 +0200 + +mimedefang (2.42-1) unstable; urgency=low + + * new upstream version + * mimedefang.pl.in (md_copy_orig_msg_to_work_dir): Added + md_copy_orig_msg_to_work_dir and + md_copy_orig_msg_to_work_dir_as_mbox_file functions to help + virus-scanners that want the entire message, or want it in + UNIX mbox format. + * mimedefang.pl.in (spam_assassin_mail): Add support for + SpamAssassin 3.0.0's new Perl API. + + -- Christoph Martin Tue, 4 May 2004 11:41:30 +0200 + +mimedefang (2.41-2) unstable; urgency=low + + * include new package graphdefang + * remove *conffiles to get rid of lintian warning + + -- Christoph Martin Wed, 31 Mar 2004 11:21:15 +0200 + +mimedefang (2.41-1) unstable; urgency=low + + * new upstream version + * mimedefang.pl.in (send_quarantine_notifications): Include + host name in quarantine mail body (Dirk Mueller). + * mimedefang.pl.in (entity_contains_virus_clamd): Check for "ERROR" + return message from clamd (Nate Carlson). + (action_quarantine_entire_message): Do not send out an e-mail + message if $msg is non-blank (pointed out by many users...) + (entity_contains_virus_hbedv): Replace -allfiles with correct + --allfiles (Ken Cormack) + (entity_contains_virus_sophos): Add -mime option for Sophos sweep + (Dirk Mueller) + * include a backported fix from 2.42-BETA-1 to close the syslog file + descriptor before others + + -- Christoph Martin Tue, 30 Mar 2004 15:00:58 +0200 + +mimedefang (2.40-1) unstable; urgency=low + + * new upstream version + * mimedefang.pl.in: Added message_contains_virus and + entity_contains_virus functions to mimedefang.pl.in. They use + *every* installed virus scanner. Based on idea from Chris Myers. + *** NOTE INCOMPATIBILITY *** + The previous example filter defined functions called + message_contains_virus and entity_contains_virus. These are now + defined in mimedefang.pl itself; you should remove the definitions + from your filter! + * Default action for viruses is now discard. + * Added a new "notification" facility to allow external software to + react to changes in multiplexor state. + * We now pass both the raw input message and the unpacked, decoded + parts to the virus scanner. This makes virus detection much more + reliable. + + -- Christoph Martin Tue, 16 Mar 2004 16:53:24 +0100 + +mimedefang (2.39-1) unstable; urgency=low + + * new upstream + * mimedefang-multiplexor.c: Added support for embedding a + Perl interpreter, which should improve performance a fair bit. + * mimedefang.pl.in: Added support for "filter_initialize" function + that gets called once each time a slave is activated. If you + are using an embedded Perl interpreter, read the mimedefang-filter + man page carefully, especially the INITIALIZATION AND CLEANUP + section! + * (doHistogram): Added "histo" command to md-mx-ctrl. It prints + a histogram showing how often a given number of slaves have been + busy. + * examples/suggested-minimum-filter-for-windows-clients: Made + the filter_bad_filename tests less paranoid. (closes: #231078) + * add a sleep of 3 seconds to make restart not fail sometimes (closes: + #201990) + * change permission of /var/spool/MIMEDefang to 750 and group smmsp to + make sendmail able to read (closes: #225785) + + -- Christoph Martin Wed, 18 Feb 2004 17:28:48 +0100 + +mimedefang (2.38-2) unstable; urgency=low + + * add X_SCANNED_BY config option (closes: #220504) + + -- Christoph Martin Mon, 17 Nov 2003 16:33:53 +0100 + +mimedefang (2.38-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * mimedefang.pl.in: Disable action_notify_sender if a virus + is detected. (closes: #212222) + * mimedefang.h: Change SMALLBUF definition from 4096 to 16384 for + longer SpamAssassin reports. + + -- Christoph Martin Tue, 21 Oct 2003 16:50:27 +0200 + +mimedefang (2.37-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * mimedefang.c: Make more conservative use of file descriptors. + Added "-C" option to enable ultra-conservative use of file + descriptors (by closing/reopening files in each callback.) + * examples/suggested-minimum-filter-for-windows-clients: Proper + regexp to detect CLSID attacks (Nik Clayton) + * mimedefang-multiplexor.c, mimedefang.c: Added -D option + to stay in foreground instead of daemonizing (Ben Kamen). + * mimedefang.pl.in: Initialize $SALocalTestsOnly to 1. + + -- Christoph Martin Wed, 8 Oct 2003 16:59:57 +0200 + +mimedefang (2.35-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * (action_notify_administrator): action_notify_administrator can + be called OUTSIDE a message context, in which case it immediately + sends e-mail to the administrator. (Suggested by Dirk Mueller.) + + -- Christoph Martin Mon, 7 Jul 2003 13:04:41 +0200 + +mimedefang (2.34-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * Renamed md_log to md_graphdefang_log. + YOU MUST update your filter, and change all instances of + "md_log_enable" to "md_graphdefang_log_enable" and + "md_log" to "md_graphdefang_log" + * New feature: Added the filter_unknown_cmd hook so user-filters + can extend the MIMEDefang protocol. Updated md-mx-ctrl as well. + See mimedefang-protocol(7) and mimedefang-filter(5) for details. + * mimedefang.pl.in (spam_assassin_mail): More fixes to the + headers that get generated for SpamAssassin (Dirk Mueller). + Also created and documented the $AddApparentlyToForSpamAssassin + variable. + * mimedefang-filter.5.in: Documented md_syslog. md_syslog + is now an officially-supported API function. + * mimedefang.c, mimedefang.pl.in: Allow Perl filters to specify + SMTP reply codes (4xx, 5xx) and DSN status codes (4.x.y, 5.x.y) + (Suggested by user "jkohan" on the MIMEDefang Web site.) + * unset HOME in init script to prevent SpamAssassin from trying to use + root's home directory when restarting from the command line (closes: + #198428) + + -- Christoph Martin Mon, 7 Jul 2003 09:49:47 +0200 + +mimedefang (2.33-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * mimedefang.c: Clean up working directory sooner in many different + places. + * mimedefang.c(eom): Delete all but the first "Content-Type:" header + in the e-mail message, and log a warning if there is more than one + such header. + * syslog-fac.c: Added "-S" option to mimedefang and + mimedefang-multiplexor to set syslog facility. Also, created + and documented global variable $SyslogFacility in mimedefang-filter. + * mimedefang.pl.in (synthesize_received_header): Add a Received: + header when remailing messages. + + -- Christoph Martin Fri, 4 Jul 2003 09:46:07 +0200 + +mimedefang (2.32-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * Updated documentation (mimedefang-filter.5, mimedefang-protocol.7) + to reflect current reality. + * mimedefang-multiplexor.c: Major changes to the internal logic + of the slave scheduler. Should be more efficient than the old + system. + * mimedefang.pl.in: Added remove_redundant_html_parts() to delete HTML + parts if a corresponding text/plain part is present in the message. + * mimedefang.pl.in (replace_entire_message): Added + replace_entire_message function to replace the entire message + with a user-supplied MIME::Entity in filter_end. + * From filter_begin to filter_end, the hash %RecipientMailers + contains rcpt_mailer, rcpt_host and rcpt_addr for each recipient. + * The function filter_recipient gets passed three additional + arguments: $rcpt_mailer, $rcpt_host and $rcpt_addr, which are + taken from the corresponding Sendmail macros. See the Sendmail + documentation for more information. + + *** NOTE INCOMPATIBILITY *** filter_recipient is passed + three additional arguments; if you use function prototypes, + you may need to adjust your filter! + + -- Christoph Martin Fri, 25 Apr 2003 14:44:21 +0200 + +mimedefang (2.30-1) unstable; urgency=low + + * new upstream ( for all changes see upstream Changelog ) + * Better syslog messages on certain system call failures + * Add handling for filter_cleanup, that lets you run Perl code just + before a slave is killed. + * Multiplexor reads commands in chunks rather than a character at a + time. Greatly reduces system-call overhead, but not likely to make + much difference except on incredibly busy mail servers. + * Add support for Trophie scanning library. + * Log the Sendmail QUEUE-ID in most logging messages + * For filter_relay, filter_sender and filter_recipient, use + 'CONTINUE', 'TEMPFAIL' and 'REJECT' instead of 1, -1, and 0. Also add + 'ACCEPT_AND_NO_MORE_FILTERING' to accept mail without further + processing. The old numeric return codes still work,but are + deprecated. + * More explicit log messages. + * Set global variables in filter_relay, filter_sender and + filter_recipient based on the information available so far in the SMTP + transaction. + * Quarantine notifications no longer sent unless you explicitly ask + for them. + * Added send_quarantine_notifications routine which actually sends + quarantine notifications. Unless you call this function in + filter_end, quarantine notifications are NO LONGER SENT. + * Added md_check_against_smtp_server to check recipient addresses + before accepting them. + * fix typo in init script (closes: #177557) + + -- Christoph Martin Mon, 17 Feb 2003 16:46:06 +0100 + +mimedefang (2.24-2) unstable; urgency=low + + * fix problem with wrong DEFANGUSER in init script (closes: #167294) + + -- Christoph Martin Mon, 4 Nov 2002 11:39:12 +0100 + +mimedefang (2.24-1) unstable; urgency=low + + * new upstream + * mimedefang.pl.in: Many functions which only make sense if called + from filter_begin, filter, filter_multipart or filter_end syslog error + messages if they are called from outside one of those functions. + * mimedefang-multiplexor.c (activateSlave): Reset signal handlers to + default before starting Perl filter program. + * Added md-mx-ctrl program and watch-mimedefang GUI. Tcl/Tk is + required for "watch-mimedefang". + * mimedefang-protocol.7.in: Updated protocol documentation. + * mimedefang.pl.in (resend_message): Do not remove angle brackets from + $Sender when resending message. + * SECURITY UPDATE: An attacker with sufficient bandwidth may be able to + crash mimedefang-multiplexor for versions up to 2.22. This + attack cannot be used to execute attacker's code; it's only a + denial-of-service attack. + * mimedefang.pl.in: Added action_delete_all_headers + * mimedefang.pl.in: Added $VirusName variable (John Kirkland) + + -- Christoph Martin Thu, 31 Oct 2002 11:05:52 +0100 + +mimedefang (2.21-1) unstable; urgency=low + + * new upstream + * SECURITY UPDATE: Default filter rejects attachments of type + "message/partial". See + http://online.securityfocus.com/archive/1/291514 + * mimedefang-multiplexor.c (statsLog): Do not log the date/time + if we log stats using syslog; it's redundant. We still include + a UNIX timestamp. + * mimedefang.pl.in: Quarantine functions try to make a + hard link when copying messages; fall back to actual copy + if hard link fails. This can greatly improve performance. + * examples/suggested-minimum-filter-for-windows-clients: + More "dangerous" extensions; tighter conditions for suspecting + CLSID attack (thanks to Nik Clayton). + * examples/suggested-minimum-filter-for-windows-clients: + Added three new "dangerous" extensions: .app, .fxp and .prg. + Thanks to Marco Berizzi. + * examples/suggested-minimum-filter-for-windows-clients: + Allow filenames like "foo@bar.com,innocuous.txt" rather + than choking on the ".com," part. + * mimedefang.c (cleanup): Use an internal C implementation of + "rm -rf" rather than forking and execing /bin/rm. This should + improve performance on heavily-loaded systems. + * corrected include of /etc/mail/mimedefang.conf in init script (closes: + #162044) + * change priority to extra, because we depend on sendmail, which is + extra + + -- Christoph Martin Thu, 26 Sep 2002 13:52:58 +0200 + +mimedefang (2.19-1) unstable; urgency=low + + * new upstream + * mimedefang.pl.in (send_mail): Invoke Sendmail with "-odb" + (background delivery) rather than "-odi" (immediate delivery). + * mimedefang.c (eom): Write a final 'F' line to signify end + of COMMANDS file. + * mimedefang.c (eom): Fixed dumb error in which cmdFP was + closed before the final command was written. + * All internally-generated messages and resent messages are + delivered in "deferred" mode now. + * Fixed warnings about uninitialized variables. + * Lowered some syslog output to "debug" level. + * mimedefang.pl.in (signal_complete): Improved quarantine notification + message. + + -- Christoph Martin Thu, 29 Aug 2002 17:08:38 +0200 + +mimedefang (2.16-3) unstable; urgency=low + + * exclude /usr/local/bin from PATH in configure script to prevent it to + find localy installed virus scanner (closes: #156699) + * improve description (closes: #156536) + + -- Christoph Martin Fri, 16 Aug 2002 10:39:25 +0200 + +mimedefang (2.16-2) unstable; urgency=low + + * added some missing builddepends (closes: #156418) + + -- Christoph Martin Tue, 13 Aug 2002 11:30:55 +0200 + +mimedefang (2.16-1) unstable; urgency=low + + * Initial Release. (closes #130634, #155124) + + -- Christoph Martin Wed, 7 Aug 2002 15:08:57 +0200 + --- mimedefang-2.78.orig/debian/compat +++ mimedefang-2.78/debian/compat @@ -0,0 +1 @@ +5 --- mimedefang-2.78.orig/debian/config +++ mimedefang-2.78/debian/config @@ -0,0 +1,41 @@ +#!/bin/sh +CONFIGFILE=/etc/default/mimedefang +set -e + +# We need debconf. +. /usr/share/debconf/confmodule + +db_version 2.0 +db_capb backup +db_title "MIMEDefang" + +# Load config file, if it exists. +if [ -e $CONFIGFILE ]; then + . $CONFIGFILE || true + + #Store values from config file into debconf db. + if [ "$MX_EMBED_PERL"x = "yes"x ] + then + db_set mimedefang/embedperl true + elif [ "$MX_EMBED_PERL"x = "no"x ] + then + db_set mimedefang/embedperl false + fi +fi + +# Use a state machine to allow jumping back to previous questions. +STATE=1 +while [ "$STATE" != 0 -a "$STATE" != 2 ]; do + case "$STATE" in + 1) + db_input medium mimedefang/embedperl || true + ;; + + esac + + if db_go; then + STATE=$(($STATE + 1)) + else + STATE=$(($STATE - 1)) + fi +done --- mimedefang-2.78.orig/debian/control +++ mimedefang-2.78/debian/control @@ -0,0 +1,27 @@ +Source: mimedefang +Section: mail +Priority: extra +Maintainer: Christoph Martin +Build-Depends: debhelper (>= 5), po-debconf, libmilter-dev, bsd-mailx, libunix-syslog-perl, libperl-dev, libmime-tools-perl, libmail-spamassassin-perl, sanitizer, libhtml-parser-perl, libarchive-zip-perl +Standards-Version: 3.9.3 + +Package: mimedefang +Architecture: any +Depends: ${shlibs:Depends}, ${perl:Depends}, ${misc:Depends}, debconf (>= 0.5) | debconf-2.0, libmime-tools-perl, libio-stringy-perl, libmime-base64-perl, libmailtools-perl, libunix-syslog-perl, psmisc, adduser +Suggests: libmail-spamassassin-perl, sanitizer, libhtml-parser-perl, wv, clamav, libarchive-zip-perl, graphdefang, tk8.3 | wish, sendmail | postfix +Description: e-mail filter program for sendmail + MIMEDefang is an e-mail filter program which processes all messages sent + via Sendmail. It splits multi-part MIME messages into their components + and can delete or modify those parts before reassembling the message and + sending it on its way. + +Package: graphdefang +Architecture: any +Depends: ${perl:Depends}, ${misc:Depends}, libfile-readbackwards-perl, libgd-graph-perl, libgd-text-perl (>= 0.86-1), libtimedate-perl, libmldbm-perl, perl (>= 5.8.3) | libstorable-perl +Recommends: php5 +Suggests: mimedefang +Description: grapher for MIMEDefang spam and virus logs + GraphDefang is a configurable utility that parses arbitrary + syslog entries and creates a set of configurable charts (PNG files) + with the data. These files can be written to disk or displayed by a + web server through a CGI script. --- mimedefang-2.78.orig/debian/copyright +++ mimedefang-2.78/debian/copyright @@ -0,0 +1,31 @@ +This package was debianized by Christoph Martin on +Tue, 30 Jul 2002 19:11:14 +0200. + +It was downloaded from http://www.roaringpenguin.com/mimedefang/ + +Copyright 2000-2015 Dianne Skoll + +MIMEDefang is licensed under the GNU General Public License, version +2, which follows. + +NOTE FOR ASPs and ISPs: +----------------------- + +If you use MIMEDefang as a service provider to provide mail filtering +services for paying clients, Roaring Penguin Software Inc. considers +this to be "distribution" of MIMEDefang. Therefore, if you use +MIMEDefang in this manner, you *must* provide the source code to +MIMEDefang *and* to any modifications you have made to anyone who asks +for it, and you must license your modifications under the GNU General +Public License. By using MIMEDefang, you are agreeing with our +interpretation that providing services using MIMEDefang is equivalent +to distributing MIMEDefang. You do not have to agree with our +interpretation, but if you do not agree, then you may not use +MIMEDefang, because only this license gives you the right to use +MIMEDefang. + +Note that the above paragraph is not a change in MIMEDefang's license; it +is merely a clarification, and therefore applies to all previous versions +of MIMEDefang as well as the current version. + +See: /usr/share/common-licenses/GPL-2 --- mimedefang-2.78.orig/debian/graphdefang.README.Debian +++ mimedefang-2.78/debian/graphdefang.README.Debian @@ -0,0 +1,14 @@ +graphdefang for Debian +---------------------- + +graphdefang installes with /etc/graphdefang/graphdefang-config file +which is an example for working with mimedefang log entries. Change +for your convenience. + +You have to configure your webserver to access +/var/lib/graphdefang/index.php and /usr/lib/cgi-bin/graphdefang.cgi. + +graphdefang for Debian is tuned to find its config in +/etc/graphdefang/, its library in /usr/share/graphdefang, write it's +summary.db to /var/cache/graphdefang and it's graphs to +/var/lib/graphdefang. --- mimedefang-2.78.orig/debian/graphdefang.dirs +++ mimedefang-2.78/debian/graphdefang.dirs @@ -0,0 +1,7 @@ +usr/bin +usr/lib/cgi-bin +usr/share/graphdefang +usr/share/man/man1 +etc/graphdefang +var/cache/graphdefang +var/lib/graphdefang --- mimedefang-2.78.orig/debian/graphdefang.docs +++ mimedefang-2.78/debian/graphdefang.docs @@ -0,0 +1,4 @@ +contrib/graphdefang-0.9/*example +contrib/graphdefang-0.9/README +contrib/graphdefang-0.9/ChangeLog +contrib/graphdefang-0.9/TODO --- mimedefang-2.78.orig/debian/init.d +++ mimedefang-2.78/debian/init.d @@ -0,0 +1,433 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: mimedefang +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +### END INIT INFO +# +# FreeBSD/NetBSD start/stop script for MIMEDefang. +# +# PROVIDE: mimedefang +# REQUIRE: LOGIN +# BEFORE: mail +# KEYWORD: shutdown + +unset HOME +RETVAL=0 +prog='mimedefang' +SPOOLDIR='/var/spool/MIMEDefang' +PID="$SPOOLDIR/$prog.pid" +MXPID="$SPOOLDIR/$prog-multiplexor.pid" + +# These lines keep SpamAssassin happy. Not needed if you +# aren't using SpamAssassin. +HOME="$SPOOLDIR" +export HOME +# Is the program executable? We search in /usr/bin and /usr/local/bin. + +if [ -x /usr/bin/$prog ] ; then + PROGDIR=/usr/bin +elif [ -x /usr/bin/$prog ] ; then + PROGDIR=/usr/bin +elif [ -x /usr/local/bin/$prog ] ; then + PROGDIR=/usr/local/bin +else + exit 0 +fi + +# Locale should be set to "C" for generating valid date headers +LC_ALL=C +export LC_ALL + +# The settings which follow are defaults. You can override them by +# placing assignments in /etc/default/mimedefang + +# The socket used by mimedefang to communicate with sendmail +# SOCKET=$SPOOLDIR/mimedefang.sock + +# Run the multiplexor and filters as this user, not root. RECOMMENDED +MX_USER=defang + +# Syslog facility +# SYSLOG_FACILITY=mail + +# If you want to keep spool directories around if the filter fails, +# set the next one to yes +# KEEP_FAILED_DIRECTORIES=no + +# "yes" turns on the multiplexor relay checking function +# MX_RELAY_CHECK=no + +# "yes" turns on the multiplexor HELO checking function +# MX_HELO_CHECK=no + +# "yes" turns on the multiplexor sender checking function +# MX_SENDER_CHECK=no + +# "yes" turns on the multiplexor recipient checking function +# MX_RECIPIENT_CHECK=no + +# Set to yes if you want the multiplexor to log events to syslog +MX_LOG=yes + +# Set to yes if you want the milter and multiplexor sockets to +# be group-writable and files created by mimedefang group-readable. +MD_ALLOW_GROUP_ACCESS=no + +# Set to yes if you want to use an embedded Perl interpreter +# MX_EMBED_PERL=yes + +# Set to full path of socket for Sendmail's SOCKETMAP map, if you +# want to use it with MIMEDefang +# MX_MAP_SOCKET=$SPOOLDIR/map.sock + +# The multiplexor does not start all slaves at the same time. Instead, +# it starts one slave every MX_SLAVE_DELAY seconds when the system is idle. +# (If the system is busy, the multiplexor starts slaves as incoming mail +# requires attention.) +# MX_SLAVE_DELAY=3 + +# The next setting is an absolute limit on slave activation. The multiplexor +# will NEVER activate a slave within MX_MIN_SLAVE_DELAY seconds of another. +# The default of zero means that the multiplexor will activate slaves as +# quickly as necessary to keep up with incoming mail. +# MX_MIN_SLAVE_DELAY=0 + +# Set to yes if you want the multiplexor to log stats in +# /var/log/mimedefang/stats The /var/log/mimedefang directory must +# exist and be writable by the user you're running MIMEDefang as. +# MX_STATS=no + +# Number of slaves reserved for connections from loopback. Use -1 +# for default behaviour, 0 to allow loopback connections to queue, +# or >0 to reserve slaves for loopback connections +LOOPBACK_RESERVED_CONNECTIONS=-1 + +# If you want new connections to be allowed to queue, set the +# next variable to yes. Normally, only existing connections are +# allowed to queue requests for work. +ALLOW_NEW_CONNECTIONS_TO_QUEUE=no + +# Set to yes if you want the stats file flushed after each entry +# MX_FLUSH_STATS=no + +# Set to yes if you want the multiplexor to log stats to syslog +# MX_STATS_SYSLOG=no + +# The socket used by the multiplexor +# MX_SOCKET=$SPOOLDIR/mimedefang-multiplexor.sock + +# Maximum # of requests a process handles +# MX_REQUESTS=200 + +# Minimum number of processes to keep. The default of 0 is probably +# too low; we suggest 2 instead. +MX_MINIMUM=2 + +# Maximum number of processes to run (mail received while this many +# processes are running is rejected with a temporary failure, so be +# wary of how many emails you receive at a time). This applies only +# if you DO use the multiplexor. The default value of 2 is probably +# too low; we suggest 10 instead +MX_MAXIMUM=10 + +# Uncomment to log slave status; it will be logged every +# MX_LOG_SLAVE_STATUS_INTERVAL seconds +# MX_LOG_SLAVE_STATUS_INTERVAL=30 + +# Uncomment next line to have busy slaves send status updates to the +# multiplexor. NOTE: Consumes one extra file descriptor per slave, plus +# a bit of CPU time. +# MX_STATUS_UPDATES=yes + +# Limit slave processes' resident-set size to this many kilobytes. Default +# is unlimited. +# MX_MAX_RSS=10000 + +# Limit total size of slave processes' memory space to this many kilobytes. +# Default is unlimited. +# MX_MAX_AS=30000 + +# If you want to use the "notification" facility, set the appropriate port. +# See the mimedefang-notify man page for details. +# MX_NOTIFIER=inet:4567 + +# Number of seconds a process should be idle before checking for +# minimum number and killed +# MX_IDLE=300 + +# Number of seconds a process is allowed to scan an email before it is +# considered dead. The default is 30 seconds; we suggest 600. +MX_BUSY=600 + +# Maximum number of concurrent recipok requests on a per-domain basis. +# 0 means no limit +MX_RECIPOK_PERDOMAIN_LIMIT=0 + +# Extra sendmail macros to pass. Actually, you can add any extra +# mimedefang options here... +# MD_EXTRA="-a auth_author" + +# Multiplexor queue size -- default is 0 (no queueing) +# MX_QUEUE_SIZE=10 + +# Multiplexor queue timeout -- default is 30 seconds +# MX_QUEUE_TIMEOUT=30 + +# Set to yes if you don't want MIMEDefang to see invalid recipients. +# Only works with Sendmail 8.14.0 and later. +# MD_SKIP_BAD_RCPTS=no + +# SUBFILTER specifies which filter rules file to use +# SUBFILTER=/etc/mimedefang-filter + +# The contents of the "X-Scanned-By" header added to each mail. Do +# not use the quote mark (') in this setting. Setting it to "-" +# prevents the header from getting added at all. +# X_SCANNED_BY="MIMEDefang N.NN (www . roaringpenguin . com / mimedefang)" + +# Source configuration +if [ -f /etc/default/$prog ] ; then + . /etc/default/$prog +fi + +# BSD specific setup +if [ -f /etc/rc.subr ] +then + . /etc/rc.subr + + name=$prog + rcvar=`set_rcvar` + # default to not enabled, enable in rc.conf + eval $rcvar=\${$rcvar:-NO} + + load_rc_config $name + + pidfile=$MXPID + procname=$PROGDIR/$prog-multiplexor + start_cmd="start_it" + stop_cmd="stop_it" + sig_reload="INT" + reread_cmd="reread_it" + # provide both "reload", the FreeBSD default, with a direct signal to + # the multiplexor, and "reread", the MIMEDefang default, using md-mx-ctrl + extra_commands="reload reread" +fi + +# Make sure required vars are set +SOCKET=${SOCKET:=$SPOOLDIR/$prog.sock} +MX_SOCKET=${MX_SOCKET:=$SPOOLDIR/$prog-multiplexor.sock} + +start_it() { + if test -r $PID ; then + if kill -0 `cat $PID` > /dev/null 2>&1 ; then + echo "mimedefang (`cat $PID`) seems to be running." + return 1 + fi + fi + if test -r $MXPID ; then + if kill -0 `cat $MXPID` > /dev/null 2>&1 ; then + echo "mimedefang-multiplexor (`cat $MXPID`) seems to be running." + return 1 + fi + fi + + printf "%-60s" "Starting $prog-multiplexor: " + rm -f $MX_SOCKET > /dev/null 2>&1 + if [ "$MX_EMBED_PERL" = "yes" ] ; then + EMBEDFLAG=-E + else + EMBEDFLAG="" + fi + $PROGDIR/$prog-multiplexor -p $MXPID \ + $EMBEDFLAG \ + `[ -n "$SPOOLDIR" ] && echo "-z $SPOOLDIR"` \ + `[ -n "$FILTER" ] && echo "-f $FILTER"` \ + `[ -n "$SYSLOG_FACILITY" ] && echo "-S $SYSLOG_FACILITY"` \ + `[ -n "$SUBFILTER" ] && echo "-F $SUBFILTER"` \ + `[ -n "$MX_MINIMUM" ] && echo "-m $MX_MINIMUM"` \ + `[ -n "$MX_MAXIMUM" ] && echo "-x $MX_MAXIMUM"` \ + `[ -n "$MX_MAP_SOCKET" ] && echo "-N $MX_MAP_SOCKET"` \ + `[ -n "$MX_LOG_SLAVE_STATUS_INTERVAL" ] && echo "-L $MX_LOG_SLAVE_STATUS_INTERVAL"` \ + `[ -n "$MX_USER" ] && echo "-U $MX_USER"` \ + `[ -n "$MX_IDLE" ] && echo "-i $MX_IDLE"` \ + `[ -n "$MX_BUSY" ] && echo "-b $MX_BUSY"` \ + `[ -n "$MX_REQUESTS" ] && echo "-r $MX_REQUESTS"` \ + `[ -n "$MX_SLAVE_DELAY" ] && echo "-w $MX_SLAVE_DELAY"` \ + `[ -n "$MX_MIN_SLAVE_DELAY" ] && echo "-W $MX_MIN_SLAVE_DELAY"` \ + `[ -n "$MX_MAX_RSS" ] && echo "-R $MX_MAX_RSS"` \ + `[ -n "$MX_MAX_AS" ] && echo "-M $MX_MAX_AS"` \ + `[ "$MX_LOG" = "yes" ] && echo "-l"` \ + `[ "$MX_STATS" = "yes" ] && echo "-t /var/log/mimedefang/stats"` \ + `[ "$MX_STATS" = "yes" -a "$MX_FLUSH_STATS" = "yes" ] && echo "-u"` \ + `[ "$MX_STATS_SYSLOG" = "yes" ] && echo "-T"` \ + `[ "$MD_ALLOW_GROUP_ACCESS" = "yes" ] && echo "-G"` \ + `[ "$MX_STATUS_UPDATES" = "yes" ] && echo "-Z"` \ + `[ -n "$MX_QUEUE_SIZE" ] && echo "-q $MX_QUEUE_SIZE"` \ + `[ -n "$MX_QUEUE_TIMEOUT" ] && echo "-Q $MX_QUEUE_TIMEOUT"` \ + `[ -n "$MX_NOTIFIER" ] && echo "-O $MX_NOTIFIER"` \ + `[ -n "$MX_RECIPOK_PERDOMAIN_LIMIT" ] && echo "-y $MX_RECIPOK_PERDOMAIN_LIMIT"` \ + -s $MX_SOCKET + RETVAL=$? + if [ $RETVAL = 0 ] ; then + echo "[ OK ]" + else + echo "[FAILED]" + return 1 + fi + + # Start mimedefang + printf "%-60s" "Starting $prog: " + rm -f $SOCKET > /dev/null 2>&1 + $PROGDIR/$prog -P $PID -R $LOOPBACK_RESERVED_CONNECTIONS \ + -m $MX_SOCKET \ + `[ -n "$SPOOLDIR" ] && echo "-z $SPOOLDIR"` \ + `[ -n "$MX_USER" ] && echo "-U $MX_USER"` \ + `[ -n "$SYSLOG_FACILITY" ] && echo "-S $SYSLOG_FACILITY"` \ + `[ "$MX_RELAY_CHECK" = "yes" ] && echo "-r"` \ + `[ "$MX_HELO_CHECK" = "yes" ] && echo "-H"` \ + `[ "$MX_SENDER_CHECK" = "yes" ] && echo "-s"` \ + `[ "$MX_RECIPIENT_CHECK" = "yes" ] && echo "-t"` \ + `[ "$KEEP_FAILED_DIRECTORIES" = "yes" ] && echo "-k"` \ + `[ "$MD_EXTRA" != "" ] && echo $MD_EXTRA` \ + `[ "$MD_SKIP_BAD_RCPTS" = "yes" ] && echo "-N"` \ + "`[ -n "$X_SCANNED_BY" ] && \ + ( [ "$X_SCANNED_BY" = "-" ] && \ + echo "-X" || echo "-x$X_SCANNED_BY" )`" \ + `[ "$MD_ALLOW_GROUP_ACCESS" = "yes" ] && echo "-G"` \ + `[ "$ALLOW_NEW_CONNECTIONS_TO_QUEUE" = "yes" ] && echo "-q"` \ + -p $SOCKET + RETVAL=$? + if [ $RETVAL = 0 ] ; then + echo "[ OK ]" + else + echo "[FAILED]" + kill `cat $MXPID` + return 1 + fi + return 0 +} + +stop_it() { + # Stop daemon + printf "%-60s" "Shutting down $prog: " + if test -f "$PID" ; then + kill `cat $PID` + RETVAL=$? + # killing the parent does not work when the children are still + # running + killall $PROGDIR/$prog + else + RETVAL=1 + fi + if [ $RETVAL = 0 ] ; then + echo "[ OK ]" + else + echo "[FAILED]" + fi + + # Stop daemon + printf "%-60s" "Shutting down $prog-multiplexor: " + if test -f "$MXPID" ; then + kill `cat $MXPID` + RETVAL=$? + else + RETVAL=1 + fi + if [ $RETVAL = 0 ] ; then + echo "[ OK ]" + else + echo "[FAILED]" + fi + + rm -f $MX_SOCKET > /dev/null 2>&1 + rm -f $SOCKET > /dev/null 2>&1 + + if [ "$1" = "wait" ] ; then + printf "Waiting for daemons to exit." + WAITPID="" + test -f $PID && WAITPID=`cat $PID` + test -f $MXPID && WAITPID="$WAITPID `cat $MXPID`" + n=0 + while [ -n "$WAITPID" ] ; do + W2="" + for pid in $WAITPID ; do + if kill -0 $pid > /dev/null 2>&1 ; then + W2="$W2 $pid" + fi + done + printf "." + n=`expr $n + 1` + test $n -eq 30 && kill -KILL $WAITPID > /dev/null 2>&1 + test $n -eq 60 && break + WAITPID=$W2 + sleep 1 + done + echo "" + fi + + rm -f $MXPID > /dev/null 2>&1 + rm -f $PID > /dev/null 2>&1 +} + +reread_it() { + if [ -x $PROGDIR/md-mx-ctrl ] ; then + $PROGDIR/md-mx-ctrl -s $MX_SOCKET reread > /dev/null 2>&1 + RETVAL=$? + if [ $RETVAL = 0 ] ; then + echo "Told $prog-multiplexor to force reread of filter rules." + else + echo "Could not communicate with $prog-multiplexor" + fi + else + if [ -r $MXPID ] ; then + kill -INT `cat $MXPID` + RETVAL=$? + if [ $RETVAL = 0 ] ; then + echo "Told $prog-multiplexor to force reread of filter rules." + else + echo "Could not signal $prog-multiplexor" + fi + else + RETVAL=1 + echo "Could not find process-ID of $prog-multiplexor" + fi + fi +} + +if type run_rc_command > /dev/null 2>&1 +then + # NetBSD/FreeBSD compatible startup script + run_rc_command "$1" + exit $RETVAL +fi + +# See how we were called. +case "$1" in + start) + start_it + ;; + + stop) + stop_it $2 + ;; + + restart|force-reload) + stop_it wait + start_it + RETVAL=$? + ;; + + reread|reload) + reread_it + ;; + + *) + echo "Usage: $0 {start|stop|restart|force-reload|reread|reload}" + exit 1 +esac + +exit $RETVAL --- mimedefang-2.78.orig/debian/logrotate +++ mimedefang-2.78/debian/logrotate @@ -0,0 +1,6 @@ +/var/log/mimedefang/stats { + missingok + postrotate + /usr/bin/killall -HUP mimedefang-multiplexor 2> /dev/null || true + endscript +} --- mimedefang-2.78.orig/debian/mimedefang.conf +++ mimedefang-2.78/debian/mimedefang.conf @@ -0,0 +1,147 @@ +# Mimedefang configuration file +# This file is read by the init script +# See /etc/init.d/mimedefang + +# The socket used by mimedefang to communicate with sendmail +# SOCKET=$SPOOLDIR/mimedefang.sock + +# Run the multiplexor and filters as this user, not root. RECOMMENDED +# MX_USER=defang + +# Syslog facility +# SYSLOG_FACILITY=mail + +# If you want to keep spool directories around if the filter fails, +# set the next one to yes +# KEEP_FAILED_DIRECTORIES=no + +# "yes" turns on the multiplexor relay checking function +# MX_RELAY_CHECK=no + +# "yes" turns on the multiplexor HELO checking function +# MX_HELO_CHECK=no + +# "yes" turns on the multiplexor sender checking function +# MX_SENDER_CHECK=no + +# "yes" turns on the multiplexor recipient checking function +# MX_RECIPIENT_CHECK=no + +# Set to yes if you want the multiplexor to log events to syslog +# MX_LOG=yes + +# Set to yes if you want the milter and multiplexor sockets to +# be group-writable and files created by mimedefang group-readable. +MD_ALLOW_GROUP_ACCESS=no + +# Set to yes if you want to use an embedded Perl interpreter +# MX_EMBED_PERL=yes + +# Set to full path of socket for Sendmail's SOCKETMAP map, if you +# want to use it with MIMEDefang +# MX_MAP_SOCKET=$SPOOLDIR/map.sock + +# The multiplexor does not start all slaves at the same time. Instead, +# it starts one slave every MX_SLAVE_DELAY seconds when the system is idle. +# (If the system is busy, the multiplexor starts slaves as incoming mail +# requires attention.) +# MX_SLAVE_DELAY=3 + +# The next setting is an absolute limit on slave activation. The multiplexor +# will NEVER activate a slave within MX_MIN_SLAVE_DELAY seconds of another. +# The default of zero means that the multiplexor will activate slaves as +# quickly as necessary to keep up with incoming mail. +# MX_MIN_SLAVE_DELAY=0 + +# Set to yes if you want the multiplexor to log stats in +# /var/log/mimedefang/stats The /var/log/mimedefang directory must +# exist and be writable by the user you're running MIMEDefang as. +# MX_STATS=no + +# Number of slaves reserved for connections from loopback. Use -1 +# for default behaviour, 0 to allow loopback connections to queue, +# or >0 to reserve slaves for loopback connections +LOOPBACK_RESERVED_CONNECTIONS=-1 + +# If you want new connections to be allowed to queue, set the +# next variable to yes. Normally, only existing connections are +# allowed to queue requests for work. +ALLOW_NEW_CONNECTIONS_TO_QUEUE=no + +# Set to yes if you want the stats file flushed after each entry +# MX_FLUSH_STATS=no + +# Set to yes if you want the multiplexor to log stats to syslog +# MX_STATS_SYSLOG=no + +# The socket used by the multiplexor +# MX_SOCKET=$SPOOLDIR/mimedefang-multiplexor.sock + +# Maximum # of requests a process handles +# MX_REQUESTS=200 + +# Minimum number of processes to keep. The default of 0 is probably +# too low; we suggest 2 instead. +# MX_MINIMUM=2 + +# Maximum number of processes to run (mail received while this many +# processes are running is rejected with a temporary failure, so be +# wary of how many emails you receive at a time). This applies only +# if you DO use the multiplexor. The default value of 2 is probably +# too low; we suggest 10 instead +# MX_MAXIMUM=10 + +# Uncomment to log slave status; it will be logged every +# MX_LOG_SLAVE_STATUS_INTERVAL seconds +# MX_LOG_SLAVE_STATUS_INTERVAL=30 + +# Uncomment next line to have busy slaves send status updates to the +# multiplexor. NOTE: Consumes one extra file descriptor per slave, plus +# a bit of CPU time. +# MX_STATUS_UPDATES=yes + +# Limit slave processes' resident-set size to this many kilobytes. Default +# is unlimited. +# MX_MAX_RSS=10000 + +# Limit total size of slave processes' memory space to this many kilobytes. +# Default is unlimited. +# MX_MAX_AS=30000 + +# If you want to use the "notification" facility, set the appropriate port. +# See the mimedefang-notify man page for details. +# MX_NOTIFIER=inet:4567 + +# Number of seconds a process should be idle before checking for +# minimum number and killed +# MX_IDLE=300 + +# Number of seconds a process is allowed to scan an email before it is +# considered dead. The default is 30 seconds; we suggest 300. +# MX_BUSY=300 + +# Maximum number of concurrent recipok requests on a per-domain basis. +# 0 means no limit +MX_RECIPOK_PERDOMAIN_LIMIT=0 + +# Extra sendmail macros to pass. Actually, you can add any extra +# mimedefang options here... +# MD_EXTRA="-a auth_author" + +# Multiplexor queue size -- default is 0 (no queueing) +# MX_QUEUE_SIZE=10 + +# Multiplexor queue timeout -- default is 30 seconds +# MX_QUEUE_TIMEOUT=30 + +# Set to yes if you don't want MIMEDefang to see invalid recipients. +# Only works with Sendmail 8.14.0 and later. +# MD_SKIP_BAD_RCPTS=no + +# SUBFILTER specifies which filter rules file to use +# SUBFILTER=/etc/mimedefang-filter + +# The contents of the "X-Scanned-By" header added to each mail. Do +# not use the quote mark (') in this setting. Setting it to "-" +# prevents the header from getting added at all. +# X_SCANNED_BY="MIMEDefang N.NN (www . roaringpenguin . com / mimedefang)" --- mimedefang-2.78.orig/debian/mimedefang.dirs +++ mimedefang-2.78/debian/mimedefang.dirs @@ -0,0 +1,4 @@ +usr/bin +usr/sbin +etc/mail +usr/share/mimedefang --- mimedefang-2.78.orig/debian/mimedefang.docs +++ mimedefang-2.78/debian/mimedefang.docs @@ -0,0 +1,4 @@ +README +README.NONROOT +README.SECURITY +README.SPAMASSASSIN --- mimedefang-2.78.orig/debian/mimedefang.pl.conf +++ mimedefang-2.78/debian/mimedefang.pl.conf @@ -0,0 +1,9 @@ +# Mimedefang configuration file +# This file is a perl file which gets 'require'd from mimedefang +# You can set the virus-scanner paths etc. +# See mimedefang.pl + +#$Features{'Virus:NAI'} = '/usr/local/bin/uvscan'; + +# DO NOT delete the next line, or Perl will complain. +1; --- mimedefang-2.78.orig/debian/mimedefang.postinst +++ mimedefang-2.78/debian/mimedefang.postinst @@ -0,0 +1,125 @@ +#! /bin/sh +# postinst script for mimedefang +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +set_value() { + CONFFILE=$1 + KEY=$2 + VALUE=$3 + TEMPFILE=$1.$$ + + if [ -e $CONFFILE ]; then + sed s/.*$2=.*/$2=$3/ $CONFFILE > $TEMPFILE + if ! diff $CONFFILE $TEMPFILE > /dev/null; then + mv $TEMPFILE $CONFFILE + else + rm $TEMPFILE + fi + else + touch $1 + fi + + if ! grep "^$2=$3" $1 2>&1 >/dev/null; then + echo "$2=$3" >> $1 + fi +} + +. /usr/share/debconf/confmodule + +case "$1" in + configure) + + # If existing user defang is still in group nogroup remove it + + if [ `id -g defang 2> /dev/null`x = 65534x ]; then + deluser --quiet defang + fi + + # Add defang group if not already present + + addgroup --quiet --system defang > /dev/null 2>&1 || true + + # Create user defang in group defang + + if ! id -u defang >/dev/null 2>&1; then + adduser --quiet --system --ingroup defang --home /var/spool/MIMEDefang --no-create-home defang + fi + + # Add User smmsp to group defang + if id -u smmsp >/dev/null 2>&1; then + adduser --quiet smmsp defang + fi + # Create spool directory + + if [ ! -e /var/spool/MIMEDefang ] + then + mkdir -p /var/spool/MIMEDefang + fi + chmod 750 /var/spool/MIMEDefang + chown defang:defang /var/spool/MIMEDefang + mkdir -p /var/spool/MIMEDefang/.spamassassin + chmod 700 /var/spool/MIMEDefang/.spamassassin + chown defang /var/spool/MIMEDefang/.spamassassin + if [ -f /etc/sa-mimedefang.cf ] + then + echo "removing conffile /etc/sa-mimedefang.cf because of wrong location" + rm -f /etc/sa-mimedefang.cf + fi + if [ -f /etc/mail/mimedefang.conf ] + then + echo "removing conffile /etc/mail/mimedefang.conf because of wrong location" + rm -f /etc/mail/mimedefang.conf + fi + # Setup embeded perl + CONFFILE=/etc/default/mimedefang + # Copy file if it doesn't exist + if [ ! -e $CONFFILE ]; then + cp /usr/share/mimedefang/mimedefang.conf $CONFFILE + fi + db_get mimedefang/embedperl || true + if [ "$RET" = 'true' ]; then + set_value $CONFFILE MX_EMBED_PERL yes + else + set_value $CONFFILE MX_EMBED_PERL no + fi + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- mimedefang-2.78.orig/debian/mimedefang.postrm +++ mimedefang-2.78/debian/mimedefang.postrm @@ -0,0 +1,46 @@ +#! /bin/sh +# postrm script for mimedefang +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `purge' +# * `upgrade' +# * `failed-upgrade' +# * `abort-install' +# * `abort-install' +# * `abort-upgrade' +# * `disappear' overwrit>r> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +if [ "$1" = "purge" ] ; then + rm -fr /var/spool/MIMEDefang + deluser --quiet defang 2> /dev/null || true + deluser --quiet smmsp defang 2> /dev/null || true + delgroup --quiet defang 2> /dev/null || true + rm -f /etc/default/mimedefang* +fi + +case "$1" in + purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + + + ;; + + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 --- mimedefang-2.78.orig/debian/mimedefang.preinst +++ mimedefang-2.78/debian/mimedefang.preinst @@ -0,0 +1,37 @@ +#! /bin/sh + +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `install' +# * `install' +# * `upgrade' +# * `abort-upgrade' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + +case "$1" in + install|upgrade) + if [ -f /etc/mail/mimedefang.conf -a ! -f /etc/default/mimedefang ] + then + echo "Copying /etc/mail/mimedefang.conf to /etc/default/mimedefang" + cp -p /etc/mail/mimedefang.conf /etc/default/mimedefang + fi + ;; + + abort-upgrade) + ;; + + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +#DEBHELPER# + +exit 0 --- mimedefang-2.78.orig/debian/po/POTFILES.in +++ mimedefang-2.78/debian/po/POTFILES.in @@ -0,0 +1 @@ +[type: gettext/rfc822deb] templates --- mimedefang-2.78.orig/debian/po/cs.po +++ mimedefang-2.78/debian/po/cs.po @@ -0,0 +1,43 @@ +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-15 14:25+0100\n" +"Last-Translator: Miroslav Kure \n" +"Language-Team: Czech \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Má MIMEDefang používat vestavěný interpretr Perlu?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Povolení této možnosti je obvykle bezpečné a značně se tím zlepší výkon, " +"některé systémy ji však nepodporují. Více o používání vestavěného " +"interpretru Perlu naleznete v manuálové stránce mimedefang-multiplexor(8)." --- mimedefang-2.78.orig/debian/po/da.po +++ mimedefang-2.78/debian/po/da.po @@ -0,0 +1,35 @@ +# Danish translation mimedefang. +# Copyright (C) 2011 mimedefang & nedenstående oversættere. +# This file is distributed under the same license as the mimedefang package. +# Joe Hansen , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2011-04-17 17:30+01:00\n" +"Last-Translator: Joe Hansen \n" +"Language-Team: Danish \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Skal MIMEDefang bruge en indlejret Perlfortolker? " + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Valg af denne indstilling er normalt sikker og vil væsentlig forbedre " +"ydelsen. Nogle systemer understøtter dog ikke dette. Se mimedefang-" +"multiplexor(8) for yderligere detaljer om brug af en indlejret Perlfortolker." --- mimedefang-2.78.orig/debian/po/de.po +++ mimedefang-2.78/debian/po/de.po @@ -0,0 +1,35 @@ +# Translation of mimedefang debconf templates to German +# Copyright (C) Helge Kreutzmann , 2007, 2008. +# This file is distributed under the same license as the mimedefang package. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.64-2\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-11 23:14+0100\n" +"Last-Translator: Helge Kreutzmann \n" +"Language-Team: de \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-15\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Soll MIMEDefang einen eingebetteten Perl-Interpreter verwenden?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Die Auswahl dieser Option ist im allgemeinen problemlos und wird die " +"Leistung signifikant erhhen. Allerdings untersttzen einige Systeme sie " +"nicht. Lesen Sie mimedefang-multiplexor(8) fr Details ber die Verwendung " +"eines eingebetteten Perl-Interpreters." --- mimedefang-2.78.orig/debian/po/es.po +++ mimedefang-2.78/debian/po/es.po @@ -0,0 +1,57 @@ +# mimedefang po-debconf translation to Spanish +# Copyright (C) 2010 Software in the Public Interest +# This file is distributed under the same license as the mimedefang package. +# +# Changes: +# - Initial translation +# Ricardo Fraile , 2010 +# +# Traductores, si no conocen el formato PO, merece la pena leer la +# documentación de gettext, especialmente las secciones dedicadas a este +# formato, por ejemplo ejecutando: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Equipo de traducción al español, por favor lean antes de traducir +# los siguientes documentos: +# +# - El proyecto de traducción de Debian al español +# http://www.debian.org/intl/spanish/ +# especialmente las notas y normas de traducción en +# http://www.debian.org/intl/spanish/notas +# +# - La guía de traducción de po's de debconf: +# /usr/share/doc/po-debconf/README-trans +# o http://www.debian.org/intl/l10n/po-debconf/README-trans +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.67-3\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2009-10-16 10:52+0200\n" +"Last-Translator: Ricardo Fraile \n" +"Language-Team: Spanish \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "¿Debe MIMEDefang usar un intérprete de perl embebido?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Eligiendo esta opción es generalmente seguro y mejora de manera " +"significativael rendimiento. Sin embargo, algunos sistemas no permiten " +"usarla. Por favor, mire mimedefang-multiplexor(8) para más detalles sobre el " +"uso de un intérprete embebido de Perl" --- mimedefang-2.78.orig/debian/po/eu.po +++ mimedefang-2.78/debian/po/eu.po @@ -0,0 +1,38 @@ +# translation of eu.po to Euskara +# Aitor Ibanez , 2007,2008. +# Piarres Beobide , 2007,2008. +# Piarres Beobide , 2008. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +msgid "" +msgstr "" +"Project-Id-Version: eu\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-05-28 23:00+0200\n" +"Last-Translator: Piarres Beobide \n" +"Language-Team: Euskara \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "MIMEDefang-ek barneratutako Perl interpretea erabili behar al du? " + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Aukera hau erabiliaz gero, orokorrean, segurua da eta performantzia asko " +"hobetzen du. Nahiz zenbait sistemek, ez duten onartzen. Begiratu mimedefang-" +"multiplexor(8) barneratutako Perl interpretea erabiltzeari buruz xehetasun " +"gehiagorako" --- mimedefang-2.78.orig/debian/po/fi.po +++ mimedefang-2.78/debian/po/fi.po @@ -0,0 +1,33 @@ +msgid "" +msgstr "" +"Project-Id-Version: mimedefang\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-12 09:10+0200\n" +"Last-Translator: Esko Arajärvi \n" +"Language-Team: Finnish \n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Finnish\n" +"X-Poedit-Country: Finland\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Tulisiko MIMEDefangin käyttää sulautettua Perl-tulkkia?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Tämän vaihtoehdon valitseminen on yleisesti ottaen turvallista ja parantaa " +"huomattavasti suorituskykyä. Kaikki järjestelmät eivät kuitenkaan tue sitä. " +"Lisätietoja sulautetun Perl-tulkin käytöstä löytyy man-ohjesivulta " +"mimedefang-multiplexor(8)." --- mimedefang-2.78.orig/debian/po/fr.po +++ mimedefang-2.78/debian/po/fr.po @@ -0,0 +1,39 @@ +# Debian MIMEdefang debconf +# Copyright (C) 2008 Christophe Masson +# This file is distributed under the same license as the MIMEdefang package. +# +# Christophe Masson , +# Christian Perrier \n" +"Language-Team: French \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Souhaitez-vous que MIMEDefang utilise un interpréteur Perl embarqué ?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Le choix de cette option est, en général, sans risque et améliore les " +"performances de manière significative. Elle n'est néanmoins pas prise en " +"charge par tous les systèmes. Veuillez consulter la page de manuel de " +"mimedefang-multiplexor(8) pour plus de détails sur l'utilisation d'un " +"interpréteur Perl embarqué." --- mimedefang-2.78.orig/debian/po/gl.po +++ mimedefang-2.78/debian/po/gl.po @@ -0,0 +1,35 @@ +# Galician translation of mimedefang's debconf templates +# This file is distributed under the same license as the mimedefang package. +# Jacobo Tarrio , 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-11 19:16+0000\n" +"Last-Translator: Jacobo Tarrio \n" +"Language-Team: Galician \n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "¿Quere que MIMEDefang empregue un intérprete de Perl embebido?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Escoller esta opción adoita ser seguro e ha mellorar o rendemento de xeito " +"significativo. Nembargantes, algúns sistemas non o admiten. Consulte a " +"páxina man de mimedefang-multiplexor(8) para ter máis detalles sobre o " +"emprego dun intérprete de Perl embebido." --- mimedefang-2.78.orig/debian/po/it.po +++ mimedefang-2.78/debian/po/it.po @@ -0,0 +1,36 @@ +# Italian (it) translation of debconf templates for mimedefang +# Copyright (C) 2008 Software in the Public Interest +# This file is distributed under the same license as the mimedefang package. +# Luca Monducci , 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.64 debconf templates\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-12 10:41+0100\n" +"Last-Translator: Luca Monducci \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "MIMEDefang deve usare un interprete Perl incorporato?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"La scelta di questa opzione è solitamente sicura e implica un significativo " +"miglioramento delle prestazioni. Purtroppo non è supportata su tutti i " +"sistemi. Si veda mimedefang-multiplexor(8) per i dettagli su come usare un " +"interprete Perl incorporato." --- mimedefang-2.78.orig/debian/po/ja.po +++ mimedefang-2.78/debian/po/ja.po @@ -0,0 +1,44 @@ +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.64-5\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-08-06 20:05+0900\n" +"Last-Translator: Hideki Yamane (Debian-JP) \n" +"Language-Team: Japanese \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "MIMEDefang に組み込まれているの Perl インタプリタを利用しますか?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"このオプションは、おおよそ安全、かつパフォーマンスを劇的に向上させることがで" +"きます。ただし、いくつかのシステムではサポートされていません。組み込み Perl " +"インタプリタの利用について、詳細は mimedefang-multiplexor(8) を参照してくださ" +"い。" --- mimedefang-2.78.orig/debian/po/nb.po +++ mimedefang-2.78/debian/po/nb.po @@ -0,0 +1,38 @@ +# translation of templates.pot_[9CexDb].po to Norwegian Bokmål +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Bjørn Steensrud , 2008, 2012. +msgid "" +msgstr "" +"Project-Id-Version: templates.pot_[9CexDb]\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2012-01-03 21:25+0100\n" +"Last-Translator: Bjørn Steensrud \n" +"Language-Team: Norwegian Bokmål \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Skal MIMEdefang bruke en innebygget Perl-tolker? " + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Det er som regel trygt å velge dette, og det gir vesentlig bedre ytelse, men " +"noen systemer støtter det ikke. Se manualsida mimedefang-multiplexor(8) for " +"fler detaljer om å bruke en innebygget Perl-tolker." + --- mimedefang-2.78.orig/debian/po/nl.po +++ mimedefang-2.78/debian/po/nl.po @@ -0,0 +1,38 @@ +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Bart Cornelis , 2008. +msgid "" +msgstr "" +"Project-Id-Version: mimedefang\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-04-07 19:02+0100\n" +"Last-Translator: Bart Cornelis \n" +"Language-Team: Dutch \n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Dutch\n" +"X-Generator: KAider 0.1\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Wilt u dat MIMEDefang de ingebouwde Perl-interpreter gebruikt?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Deze optie kiezen levert normaal geen risico op en verbeterd de prestaties " +"significant. Er zijn echter systemen die dit niet ondersteunen. Meer " +"informatie over de ingebouwde Perl-interpreter vindt u in mimedefang-" +"multiplexor(8)." --- mimedefang-2.78.orig/debian/po/pt.po +++ mimedefang-2.78/debian/po/pt.po @@ -0,0 +1,37 @@ +# translation of mimedefang debconf to Portuguese +# Copyright (C) 2007 Américo Monteiro +# This file is distributed under the same license as the mimedefang package. +# +# Américo Monteiro , 2007, 2008. +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.64-2\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-11 22:00+0000\n" +"Last-Translator: Américo Monteiro \n" +"Language-Team: Portuguese \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Deverá o MIMEDefang usar um interpretador Perl embutido? " + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Escolher esta opção é geralmente seguro e irá melhorar significamente a " +"performance. No entanto, alguns sistemas não o suportam. Veja mimedefang-" +"multiplexor(8) para mais detalhes acerca da utilização de um interpretador " +"Perl embutido." --- mimedefang-2.78.orig/debian/po/ru.po +++ mimedefang-2.78/debian/po/ru.po @@ -0,0 +1,39 @@ +# translation of ru.po to Russian +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Yuri Kozlov , 2008. +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.64-2\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-11 21:00+0300\n" +"Last-Translator: Yuri Kozlov \n" +"Language-Team: Russian \n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Нужно ли MIMEDefang использовать встроенный интерпретатор Perl?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Утвердительный ответ ничего не сломает, и значительно увеличивается " +"производительность. Однако, для некоторых систем это не подходит. Подробней " +"об использовании встроенного интерпретатора Perl смотрите на странице " +"mimedefang-multiplexor(8)." --- mimedefang-2.78.orig/debian/po/sv.po +++ mimedefang-2.78/debian/po/sv.po @@ -0,0 +1,41 @@ +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# Developers do not need to manually edit POT or PO files. +# , fuzzy +# +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.53-1\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-07-22 20:07+0100\n" +"Last-Translator: Martin Bagge \n" +"Language-Team: Swedish \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "Ska MIMEDefang använda en inbakad Perl-tolk?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Välja denna funktion kommer att öka prestandan vesäntligt. Men några system " +"stödjer inte det. Läs vidare i mimedefang-multiplexor(8) om Perl-tolk." --- mimedefang-2.78.orig/debian/po/ta.po +++ mimedefang-2.78/debian/po/ta.po @@ -0,0 +1,36 @@ +# translation of mimedefang.po to Tamil +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Dr.T.Vasudevan , 2008. +msgid "" +msgstr "" +"Project-Id-Version: mimedefang\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: 2008-03-18 15:24+0530\n" +"Last-Translator: Dr.T.Vasudevan \n" +"Language-Team: Tamil \n" +"Language: ta\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "மைம்தெபாங்க் உட்பொதிந்த பெர்ல் இன் மொழிமாற்றியை பயன்படுத்த வேண்டுமா?" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"இதை தேர்ந்தெடுப்பது பொதுவாக பாதுகாப்பானது; செயலை மிகவும் துரிதமாக்ககூடியது. எனினும் " +"சில கணினிகள் இதை ஆதரிக்கவில்லை. உட்பொதிந்த பெர்ல் இன் மொழிமாற்றி குறித்து மேலும் அறிய " +"மைம்தெபாங்க் மல்டிப்னெக்ஸர்(8) ஐ பார்க்கவும்" --- mimedefang-2.78.orig/debian/po/templates.pot +++ mimedefang-2.78/debian/po/templates.pot @@ -0,0 +1,32 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" --- mimedefang-2.78.orig/debian/po/vi.po +++ mimedefang-2.78/debian/po/vi.po @@ -0,0 +1,38 @@ +# Vietnamese Translation for mimedefang. +# Copyright © 2008 Free Software Foundation, Inc. +# Clytie Siddall , 2005-2008. +# +msgid "" +msgstr "" +"Project-Id-Version: mimedefang 2.64-2\n" +"Report-Msgid-Bugs-To: christoph.martin@uni-mainz.de\n" +"POT-Creation-Date: 2008-03-11 14:58+0100\n" +"PO-Revision-Date: dda\n" +"Last-Translator: Clytie Siddall \n" +"Language-Team: Vietnamese \n" +"Language: vi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: LocFactoryEditor 1.7b3\n" + +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "Should MIMEDefang use an embedded Perl interpreter? " +msgstr "MIMEDefang nên dùng trình phiên dịch Perl nhúng không?" + +# Choosing this option will significantly improve performance. However some +# systems do not support it. If in doubt, you can select this option.. +#. Type: boolean +#. Description +#: ../templates:2001 +msgid "" +"Choosing this option is generally safe and will significantly improve " +"performance. However, some systems do not support it. See mimedefang-" +"multiplexor(8) for more details on using an embedded Perl interpreter" +msgstr "" +"Bật tùy chọn này thì thường an toàn và rất tăng tốc độ. Tuy nhiên, một số hệ " +"thống nào đó không hỗ trợ. Xem mimedefang-multiplexor(8) để tìm chi tiết về " +"sử dụng trình phiên dịch Perl nhúng." --- mimedefang-2.78.orig/debian/rules +++ mimedefang-2.78/debian/rules @@ -0,0 +1,125 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + + +#ifneq (,$(findstring hppa-linux-gnu,$(DEB_BUILD_GNU_TYPE))) +# NO_EMBED = --disable-embedded-perl +#endif +ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) + CFLAGS += -g +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +config.status: configure + dh_testdir + # Add here commands to configure the package. +# ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --disable-check-perl-modules --disable-anti-virus --with-confsubdir=/ --with-quarantinedir=/var/spool/MIMEDefang + ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --disable-anti-virus --with-confsubdir=/ --with-quarantinedir=/var/spool/MIMEDefang $(NO_EMBED) + + +build: build-arch build-indep +build-arch: build-stamp +build-indep: build-stamp + +build-stamp: config.status + dh_testdir + + # Add here commands to compile the package. + $(MAKE) INSTALL_STRIP_FLAG='' + #/usr/bin/docbook-to-man debian/mimedefang.sgml > mimedefang.1 + + pod2man contrib/graphdefang-0.9/graphdefang.pl > graphdefang.pl.1 + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + + # Add here commands to clean up after the build process. + [ ! -f Makefile ] || $(MAKE) distclean + rm -f graphdefang.pl.1 + #-test -r /usr/share/misc/config.sub && \ + # cp -f /usr/share/misc/config.sub config.sub + #-test -r /usr/share/misc/config.guess && \ + # cp -f /usr/share/misc/config.guess config.guess + + debconf-updatepo + + dh_clean + +GDSRCDIR=contrib/graphdefang-0.9 + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/mimedefang. + $(MAKE) install DESTDIR=$(CURDIR)/debian/mimedefang + cp debian/mimedefang.conf debian/mimedefang/usr/share/mimedefang/ + cp debian/mimedefang.pl.conf debian/mimedefang/etc/mail/mimedefang.pl.conf + rmdir debian/mimedefang/usr/sbin +# rmdir debian/mimedefang/etc/spamassassin + + # Install graphdefang + cp -r $(GDSRCDIR)/event debian/graphdefang/usr/share/graphdefang/ + cp -p $(GDSRCDIR)/graphdefang-config debian/graphdefang/etc/graphdefang/ + cp -p $(GDSRCDIR)/graphdefang.pl debian/graphdefang/usr/bin/ + cp -p $(GDSRCDIR)/graphdefanglib.pl debian/graphdefang/usr/share/graphdefang/ + cp -p $(GDSRCDIR)/reset-max-date.pl debian/graphdefang/usr/share/graphdefang/ + cp -p $(GDSRCDIR)/web/graphdefang.cgi debian/graphdefang/usr/lib/cgi-bin + install -m 644 $(GDSRCDIR)/web/index.php debian/graphdefang/var/lib/graphdefang + cp -p graphdefang.pl.1 debian/graphdefang/usr/share/man/man1 + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installdebconf + dh_installdocs + dh_installexamples examples/stream-by-domain-filter examples/suggested-minimum-filter-for-windows-clients + dh_installmenu + cp -p examples/redhat-logrotate-file debian/logrotate + dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime + cp -p examples/init-script debian/init.d + dh_installinit + dh_installcron + dh_installman + dh_installinfo +# dh_undocumented + dh_installchangelogs Changelog + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_makeshlibs + dh_installdeb + dh_perl + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- mimedefang-2.78.orig/debian/templates +++ mimedefang-2.78/debian/templates @@ -0,0 +1,17 @@ +# These templates have been reviewed by the debian-l10n-english +# team +# +# If modifications/additions/rewording are needed, please ask +# debian-l10n-english@lists.debian.org for advice. +# +# Even minor modifications require translation updates and such +# changes should be coordinated with translators and reviewers. + +Template: mimedefang/embedperl +Type: boolean +Default: true +_Description: Should MIMEDefang use an embedded Perl interpreter? + Choosing this option is generally safe and will significantly improve + performance. However, some systems do not support it. See + mimedefang-multiplexor(8) for more details on using an embedded Perl + interpreter --- mimedefang-2.78.orig/debian/watch +++ mimedefang-2.78/debian/watch @@ -0,0 +1,3 @@ +version=3 +http://www.mimedefang.org/download \ +/static/mimedefang-([\d+\.]+|\d+)\.tar\.gz debian uupdate --- mimedefang-2.78.orig/embperl.c +++ mimedefang-2.78/embperl.c @@ -81,6 +81,15 @@ perl_destruct(my_perl); perl_free(my_perl); my_perl = NULL; +#ifdef PERL_SET_CONTEXT + PERL_SET_CONTEXT(NULL); +#endif +/* The next line should NOT be necessary, but perl 5.10 appears to have + a bug as described at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=516913 +*/ +#ifdef PERL_SET_INTERP + PERL_SET_INTERP(NULL); +#endif #else syslog(LOG_WARNING, "Cannot destroy and recreate a Perl interpreter safely on this platform. Filter rules will NOT be reread."); return 0; --- mimedefang-2.78.orig/examples/init-script.in +++ mimedefang-2.78/examples/init-script.in @@ -1,5 +1,13 @@ #!/bin/sh # +### BEGIN INIT INFO +# Provides: mimedefang +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +### END INIT INFO +# # FreeBSD/NetBSD start/stop script for MIMEDefang. # # PROVIDE: mimedefang @@ -7,6 +15,7 @@ # BEFORE: mail # KEYWORD: shutdown +unset HOME RETVAL=0 prog='mimedefang' SPOOLDIR='@SPOOLDIR@' @@ -34,7 +43,7 @@ export LC_ALL # The settings which follow are defaults. You can override them by -# placing assignments in @CONFDIR_EVAL@/mimedefang.conf +# placing assignments in @CONFDIR_EVAL@/default/mimedefang # The socket used by mimedefang to communicate with sendmail # SOCKET=$SPOOLDIR/mimedefang.sock @@ -175,10 +184,14 @@ # SUBFILTER specifies which filter rules file to use # SUBFILTER=@CONFDIR_EVAL@/mimedefang-filter +# The contents of the "X-Scanned-By" header added to each mail. Do +# not use the quote mark (') in this setting. Setting it to "-" +# prevents the header from getting added at all. +# X_SCANNED_BY="MIMEDefang N.NN (www . roaringpenguin . com / mimedefang)" # Source configuration -if [ -f @CONFDIR_EVAL@/$prog.conf ] ; then - . @CONFDIR_EVAL@/$prog.conf +if [ -f @CONFDIR_EVAL@/default/$prog ] ; then + . @CONFDIR_EVAL@/default/$prog fi # BSD specific setup @@ -281,6 +294,9 @@ `[ "$KEEP_FAILED_DIRECTORIES" = "yes" ] && echo "-k"` \ `[ "$MD_EXTRA" != "" ] && echo $MD_EXTRA` \ `[ "$MD_SKIP_BAD_RCPTS" = "yes" ] && echo "-N"` \ + "`[ -n "$X_SCANNED_BY" ] && \ + ( [ "$X_SCANNED_BY" = "-" ] && \ + echo "-X" || echo "-x$X_SCANNED_BY" )`" \ `[ "$MD_ALLOW_GROUP_ACCESS" = "yes" ] && echo "-G"` \ `[ "$ALLOW_NEW_CONNECTIONS_TO_QUEUE" = "yes" ] && echo "-q"` \ -p $SOCKET @@ -301,6 +317,9 @@ if test -f "$PID" ; then kill `cat $PID` RETVAL=$? + # killing the parent does not work when the children are still + # running + killall $PROGDIR/$prog else RETVAL=1 fi @@ -396,7 +415,7 @@ stop_it $2 ;; - restart) + restart|force-reload) stop_it wait start_it RETVAL=$? @@ -407,7 +426,7 @@ ;; *) - echo "Usage: $0 {start|stop|restart|reread|reload}" + echo "Usage: $0 {start|stop|restart|force-reload|reread|reload}" exit 1 esac --- mimedefang-2.78.orig/gen-ip-validator.pl +++ mimedefang-2.78/gen-ip-validator.pl @@ -8,9 +8,9 @@ # #*********************************************************************** -use Digest::SHA1; +use Digest::SHA; -$ctx = Digest::SHA1->new; +$ctx = Digest::SHA->new; $data = ""; for ($i=0; $i<256; $i++) { --- mimedefang-2.78.orig/mimedefang-filter.5.in +++ mimedefang-2.78/mimedefang-filter.5.in @@ -20,7 +20,7 @@ Each part is represented internally as an instance of MIME::Entity. .PP -2) If the file \fB@CONFDIR_EVAL@/mimedefang-filter.pl\fR defines a +2) If the file \fB@sysconfdir@/mail/mimedefang-filter.pl\fR defines a Perl function called \fBfilter_begin\fR, it is called with a single argument consisting of a MIME::Entity representing the parsed e-mail message. Any return value is ignored. @@ -1738,7 +1738,7 @@ @CONFDIR_EVAL@/sa-mimedefang.cf .TP .B o -@CONFDIR_EVAL@/spamassassin/sa-mimedefang.cf +@sysconfdir@/mail/sa-mimedefang.cf .TP .B o @CONFDIR_EVAL@/spamassassin/local.cf --- mimedefang-2.78.orig/mimedefang.pl.in +++ mimedefang-2.78/mimedefang.pl.in @@ -68,7 +68,7 @@ use IO::File; use MIME::Tools 5.410 (); use MIME::Words qw(:all); -use Digest::SHA1; +use Digest::SHA; use Time::Local; use MIME::Parser; use Sys::Hostname; @@ -174,6 +174,8 @@ $ClamdSock = '@SPOOLDIR@/clamd.sock'; $TrophieSock = '@SPOOLDIR@/trophie'; +require "/etc/mail/mimedefang.pl.conf"; + #*********************************************************************** # %PROCEDURE: expand_ipv6_address # %ARGUMENTS: @@ -5241,7 +5243,7 @@ sub main { my($Filter); my($workdir); - $Filter = '@CONFDIR_EVAL@/mimedefang-filter'; + $Filter = '@sysconfdir@/mail/mimedefang-filter'; $DoStatusTags = 0; @@ -5364,7 +5366,7 @@ # And print Perl module versions print("\n"); my($version); - foreach $thing (qw(Archive::Zip Digest::SHA1 HTML::Parser IO::Socket IO::Stringy MIME::Base64 MIME::Tools MIME::Words Mail::Mailer Mail::SpamAssassin Net::DNS Unix::Syslog )) { + foreach $thing (qw(Archive::Zip Digest::SHA HTML::Parser IO::Socket IO::Stringy MIME::Base64 MIME::Tools MIME::Words Mail::Mailer Mail::SpamAssassin Net::DNS Unix::Syslog )) { unless (eval "require $thing") { printf("%-30s: missing\n", $thing); next; @@ -6678,7 +6680,7 @@ return 0 unless defined($path); open(IN, "<$path") or return 0; - $ctx = Digest::SHA1->new; + $ctx = Digest::SHA->new; $ctx->addfile(*IN); $ctx->add($salt) if defined($salt); close(IN); @@ -6862,8 +6864,8 @@ if (!defined($config)) { if (-r '@CONFDIR_EVAL@/sa-mimedefang.cf') { $config = '@CONFDIR_EVAL@/sa-mimedefang.cf'; - } elsif (-r '@CONFDIR_EVAL@/spamassassin/sa-mimedefang.cf') { - $config = '@CONFDIR_EVAL@/spamassassin/sa-mimedefang.cf'; + } elsif (-r '@CONFDIR_EVAL@/mail/sa-mimedefang.cf') { + $config = '@CONFDIR_EVAL@/mail/sa-mimedefang.cf'; } elsif (-r '@CONFDIR_EVAL@/spamassassin/local.cf') { $config = '@CONFDIR_EVAL@/spamassassin/local.cf'; } else {