diff options
-rw-r--r-- | system/clamsmtp/README | 6 | ||||
-rw-r--r-- | system/clamsmtp/clamsmtp.SlackBuild | 98 | ||||
-rw-r--r-- | system/clamsmtp/clamsmtp.info | 8 | ||||
-rw-r--r-- | system/clamsmtp/doinst.sh | 25 | ||||
-rw-r--r-- | system/clamsmtp/rc.clamsmtpd | 50 | ||||
-rw-r--r-- | system/clamsmtp/slack-desc | 19 |
6 files changed, 206 insertions, 0 deletions
diff --git a/system/clamsmtp/README b/system/clamsmtp/README new file mode 100644 index 0000000000..a341644856 --- /dev/null +++ b/system/clamsmtp/README @@ -0,0 +1,6 @@ +ClamSMTP is an SMTP filter that allows you to check for viruses using the +ClamAV anti-virus software. It accepts SMTP connections and forwards the +SMTP commands and responses to another SMTP server. The 'DATA' email body +is intercepted and scanned before forwarding. + +ClamAV (available at SlackBuilds.org) is required for this package. diff --git a/system/clamsmtp/clamsmtp.SlackBuild b/system/clamsmtp/clamsmtp.SlackBuild new file mode 100644 index 0000000000..2fbd9d2e45 --- /dev/null +++ b/system/clamsmtp/clamsmtp.SlackBuild @@ -0,0 +1,98 @@ +#!/bin/sh + +# Slackware Package Build Script for clamsmtp + +# Copyright (c) 2007, Nishant Limbachia (nishant@mnspace.net) +# All rights reserved. + +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of script must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Modified by Robby Workman <rworkman@slackbuilds.org> for better consistency +# with other scripts in our repository - no new license terms. + +PRGNAM=clamsmtp +VERSION=1.9 +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" +fi + +rm -rf $PKG $TMP/$PRGNAM-$VERSION +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1 +cd $PRGNAM-$VERSION || exit 1 +chown -R root.root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --exec-prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --datarootdir=/usr \ + --mandir=/usr/man \ + --program-prefix="" \ + --program-suffix="" \ + --build=$ARCH-slackware-linux \ + || exit 1 + +make || exit 1 +make install DESTDIR=$PKG || exit 1 + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a AUTHORS ChangeLog COPYING INSTALL NEWS README TODO \ + $PKG/usr/doc/$PRGNAM-$VERSION + +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +) + +find $PKG/usr/man -name "*.?" -type f 2> /dev/null | xargs gzip -9 2> /dev/null + +if [ -d $PKG/usr/info ]; then + rm -f $PKG/usr/info/dir + find $PKG/usr/info -name "*.info" -type f 2> /dev/null | xargs gzip -9 2> /dev/null +fi + +mkdir -p $PKG/etc/rc.d +cat $CWD/rc.clamsmtpd > $PKG/etc/rc.d/rc.clamsmtpd.new +cat $TMP/$PRGNAM-$VERSION/doc/clamsmtpd.conf > $PKG/etc/clamsmtpd.conf.new + +mkdir -p $PKG/install +cat $CWD/doinst.sh > $PKG/install/doinst.sh +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/system/clamsmtp/clamsmtp.info b/system/clamsmtp/clamsmtp.info new file mode 100644 index 0000000000..9284d6e588 --- /dev/null +++ b/system/clamsmtp/clamsmtp.info @@ -0,0 +1,8 @@ +PRGNAM="clamsmtp" +VERSION="1.9" +HOMEPAGE="http://memberwebs.com/stef/software/clamsmtp/" +DOWNLOAD="http://memberwebs.com/stef/software/clamsmtp/clamsmtp-1.9.tar.gz" +MD5SUM="cdc7a318e9583f7c3ff925f6ef5f6ae7" +MAINTAINER="Nishant Limbachia" +EMAIL="nishant@mnspace.net" +APPROVED="rworkman" diff --git a/system/clamsmtp/doinst.sh b/system/clamsmtp/doinst.sh new file mode 100644 index 0000000000..5eaefb58b7 --- /dev/null +++ b/system/clamsmtp/doinst.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then + # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Keep same perms on rc.clamsmtpd.new: +if [ -e etc/rc.d/rc.clamsmtpd ]; then + cp -a etc/rc.d/rc.clamsmtpd etc/rc.d/rc.clamsmtpd.new.incoming + cat etc/rc.d/rc.clamsmtpd.new > etc/rc.d/rc.clamsmtpd.new.incoming + mv etc/rc.d/rc.clamsmtpd.new.incoming etc/rc.d/rc.clamsmtpd.new +fi + +config etc/rc.d/rc.clamsmtpd.new +config etc/clamsmtpd.conf.new + diff --git a/system/clamsmtp/rc.clamsmtpd b/system/clamsmtp/rc.clamsmtpd new file mode 100644 index 0000000000..559eee4faf --- /dev/null +++ b/system/clamsmtp/rc.clamsmtpd @@ -0,0 +1,50 @@ +#!/bin/sh +# +# /etc/rc.d/rc.clamsmtpd +# +# start/stop/restart clamsmtp mail filter daemon +# +# To make clamsmtpd start automatically at boot, make this file executable: +# chmod 0755 /etc/rc.d/rc.clamsmtpd +# To edit the startup options, refer to "man 8 clamsmtpd" + +CONFIG="/etc/clamsmtpd.conf" +PIDFILE="/var/run/clamsmtpd.pid" + +clamsmtpd_start() { + echo "Starting clamsmtp daemon: /usr/sbin/clamsmtpd " + /usr/sbin/clamsmtpd -f $CONFIG -p $PIDFILE +} + +clamsmtpd_stop() { + if [ -f $PIDFILE ]; then + echo "Stopping clamsmtp daemon" + /bin/kill $(cat $PIDFILE) 2>/dev/null + else + echo "clamsmtpd doesn't seem to be running... exiting" + exit 1 + fi +} + +clamsmtpd_restart() { + clamsmtpd_stop + sleep 2 + clamsmtpd_start +} + +case "$1" in +'start') + clamsmtpd_start + ;; +'stop') + clamsmtpd_stop + ;; +'restart') + clamsmtpd_restart + ;; +'*') + echo "USAGE: $0 start|stop|restart" + exit 1 + ;; +esac + diff --git a/system/clamsmtp/slack-desc b/system/clamsmtp/slack-desc new file mode 100644 index 0000000000..d94571cc9f --- /dev/null +++ b/system/clamsmtp/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +clamsmtp: clamsmt (ClamAV SMTP filter) +clamsmtp: +clamsmtp: ClamSMTP is an SMTP filter that allows you to check for viruses +clamsmtp: using the ClamAV anti-virus software. It accepts SMTP connections +clamsmtp: and forwards the SMTP commands and responses to another SMTP server. +clamsmtp: The 'DATA' email body is intercepted and scanned before forwarding. +clamsmtp: +clamsmtp: Home Page: http://memberwebs.com/stef/software/clamsmtp +clamsmtp: +clamsmtp: +clamsmtp: |