1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-18 08:02:48 +00:00

Upgrade to 4.28

This commit is contained in:
Andrey A. Chernov 2002-05-11 03:26:45 +00:00
parent 34d54a633b
commit 2ed1107dfc
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=58891
15 changed files with 546 additions and 238 deletions

View File

@ -6,25 +6,24 @@
#
PORTNAME= drweb_sendmail
PORTVERSION= 4.27
PORTREVISION= 2
PORTVERSION= 4.28
CATEGORIES= security mail
MASTER_SITES= http://www.drweb.ru/ftp/web_pub/
DISTNAME= drwebd-${PORTVERSION}-freebsd4
EXTRACT_SUFX= .tgz
MASTER_SITES= http://drweb.spb.ru/download/unix/
DISTNAME= drweb-clients-${PORTVERSION}-sources
MAINTAINER= anton@urc.ac.ru
RUN_DEPENDS= ${LOCALBASE}/drweb/drwebd:${PORTSDIR}/security/drweb
RUN_DEPENDS= ${LOCALBASE}/etc/rc.d/drweb-0.sh:${PORTSDIR}/security/drwebd
WRKSRC= ${WRKDIR}/${DISTNAME}/clients/drwebdc
.include <bsd.port.pre.mk>
WRKSRC= ${WRKDIR}/drwebdc-${PORTVERSION}-src/opt/drweb/clients/drwebdc
INST_PREFIX= ${PREFIX}/${PORTNAME}
WITH_DRWEBSMF_SENDMAIL_DIR= /usr/src/contrib/sendmail
DOC_DIR= ${PREFIX}/share/doc/drweb-sendmail
.if !exists( /usr/include/libmilter/mfapi.h )
IGNORE= "requires libmilter installed in the base system, upgrade your FreeBSD"
.endif
.if !defined(WITH_DRWEBSMF_HOSTNAME)
.if defined(BATCH)
WITH_DRWEBSMF_HOSTNAME= your.domain.name
@ -33,103 +32,89 @@ WITH_DRWEBSMF_HOSTNAME!=hostname
.endif
.endif
.if exists( ${WITH_DRWEBSMF_SENDMAIL_DIR}/include/libmilter/mfapi.h )
RANDOM_NUMBER!=dd if=/dev/random count=1 2> /dev/null | md5
LANGS=en ru
CONFS=drweb_smf users
TMPLS=error-admin mailbomb-admin mailbomb-sender skipobj-sender \
virus-admin virus-rcpts virus-sender
SENDMAIL_VERSION!= ${AWK} '/^sendmail [0-9.]+$$/{print $$2}' ${WITH_DRWEBSMF_SENDMAIL_DIR}/FREEBSD-upgrade
SENDMAIL_MAJOR!= ${ECHO_CMD} ${SENDMAIL_VERSION} | ${AWK} 'BEGIN{ FS="." }{ print $$1 }'
SENDMAIL_MINOR!= ${ECHO_CMD} ${SENDMAIL_VERSION} | ${AWK} 'BEGIN{ FS="." }{ print $$2 }'
.if ${SENDMAIL_MAJOR} > 8 || ${SENDMAIL_MAJOR} == 8 && ${SENDMAIL_MINOR} >= 12
SENDMAIL8_12= y
.elif ${SENDMAIL_MAJOR} == 8 && ${SENDMAIL_MINOR} >= 10
SENDMAIL8_12= n
.else
IGNORE= "uses Sendmail sources that are expected to have version 8.10.0 or newer. Your system sources are too old - please upgrade them"
.endif
.else
IGNORE= "depends on the Sendmail sources. Please place them somewhere first and point WITH_DRWEBSMF_SENDMAIL_DIR there"
.endif
post-extract:
cd ${WRKDIR}/${DISTNAME} && \
${TAR} -xzf ${WRKDIR}/${DISTNAME}/${DISTNAME}.tar.gz \
clients/sendmail clients/drwebdc
post-patch:
${SED} "s#%PREFIX%#${PREFIX}#g" < ${FILESDIR}/drweb-sendmail.sh \
> ${WRKSRC}/drweb-sendmail.sh
cd ${WRKSRC} && \
${SED} "s#%PREFIX%#${PREFIX}#g" < dw_options.c > ndwo.c && \
mv ndwo.c dw_options.c
cd ${WRKSRC}/etc/sendmail/etc/drweb && \
${SED} "s#%PREFIX%#${PREFIX}#g;\
s#%HOSTNAME%#${WITH_DRWEBSMF_HOSTNAME}#g;\
s#!!!___EDIT_THIS___!!!#${RANDOM_NUMBER}#" \
< drweb_smf.conf > ndrwsmf.conf && \
mv ndrwsmf.conf drweb_smf.conf
post-configure:
.if defined(SENDMAIL_VERSION)
.if ${SENDMAIL8_12} == "n" || ${SENDMAIL_VERSION} == "8.12.0"
${MKDIR} ${WRKSRC}/libmilter
${CP} ${FILESDIR}/Makefile.libmilter ${WRKSRC}/libmilter/Makefile
.if ${SENDMAIL_VERSION} == "8.11.1"
${CP} ${WITH_DRWEBSMF_SENDMAIL_DIR}/libmilter/listener.c ${WRKSRC}/libmilter
cd ${WRKSRC}/libmilter && ${PATCH} < ${WRKSRC}/../sendmail/listener-8.11.1.patch
.elif ${SENDMAIL_VERSION} == "8.12.0"
${CP} ${WITH_DRWEBSMF_SENDMAIL_DIR}/libmilter/listener.c ${WRKSRC}/libmilter
cd ${WRKSRC}/libmilter && ${PATCH} < ${WRKSRC}/../sendmail/listener-8.12.0.patch
.endif
cd ${WRKSRC}/libmilter && ${MAKE} clean && ${MAKE} SENDMAIL_DIR=${WITH_DRWEBSMF_SENDMAIL_DIR}
.endif
.endif
cd ${WRKSRC} && { \
${ECHO_CMD} y; \
${ECHO_CMD} ; \
${ECHO_CMD} ; \
${ECHO_CMD} n; \
${ECHO_CMD} y; \
${ECHO_CMD} ${SENDMAIL8_12} ; \
${ECHO_CMD} ${WITH_DRWEBSMF_SENDMAIL_DIR} ; \
${ECHO_CMD} n; \
${ECHO_CMD} n; \
${ECHO_CMD} n; \
${ECHO_CMD} ; \
${ECHO_CMD} ; \
${ECHO_CMD} ${CFLAGS} ; \
${ECHO_CMD} y; \
${ECHO_CMD} ; \
} | ./configure
do-install:
${MKDIR} ${DOC_DIR}
.for LANG in ${LANGS}
${MKDIR} ${PREFIX}/etc/drweb/templates/${LANG}/sendmail
.endfor
.for CONF in ${CONFS}
${INSTALL_DATA} -m 600 ${WRKSRC}/etc/sendmail/etc/drweb/${CONF}.conf \
${PREFIX}/etc/drweb/${CONF}.conf-dist
if [ ! -f ${PREFIX}/etc/drweb/${CONF}.conf ]; then \
${INSTALL_DATA} -m 600 ${WRKSRC}/etc/sendmail/etc/drweb/${CONF}.conf \
${PREFIX}/etc/drweb/${CONF}.conf; \
fi
.endfor
.for LANG in ${LANGS}
.for TMPL in ${TMPLS}
cd ${WRKSRC}/etc/sendmail/etc/drweb/templates/${LANG}/sendmail && \
${INSTALL_DATA} ${TMPL}.msg \
${PREFIX}/etc/drweb/templates/${LANG}/sendmail/${TMPL}.msg-dist
if [ ! -f ${PREFIX}/etc/drweb/templates/${LANG}/sendmail/${TMPL}.msg ]; then \
cd ${PREFIX}/etc/drweb/templates/${LANG}/sendmail && \
${CP} ${TMPL}.msg-dist ${TMPL}.msg; \
fi
.endfor
.endfor
${INSTALL_PROGRAM} ${WRKSRC}/drweb-smf ${PREFIX}/sbin/
${INSTALL_PROGRAM} ${WRKSRC}/drwebdc ${PREFIX}/sbin/
cd ${WRKSRC}/../sendmail && { \
${ECHO_CMD} y; \
cd ${WRKSRC}/doc/sendmail && { \
${ECHO_CMD} ; \
${ECHO_CMD} "${PREFIX}/drweb"; \
${ECHO_CMD} "${PREFIX}/sbin"; \
${ECHO_CMD} "${PREFIX}/etc/drweb/drweb_smf.conf"; \
${ECHO_CMD} ; \
${ECHO_CMD} u; \
${ECHO_CMD} "${PREFIX}/drweb/run/drweb-smf.sock"; \
${ECHO_CMD} drweb; \
${ECHO_CMD} "${PREFIX}/drweb/infected"; \
${ECHO_CMD} y; \
${ECHO_CMD} /tmp; \
${ECHO_CMD} y; \
${ECHO_CMD} y; \
${ECHO_CMD} ; \
${ECHO_CMD} postmaster@${WITH_DRWEBSMF_HOSTNAME}; \
${ECHO_CMD} y; \
${ECHO_CMD} y; \
${ECHO_CMD} y; \
${ECHO_CMD} c; \
${ECHO_CMD} t; \
${ECHO_CMD} t; \
${ECHO_CMD} t; \
${ECHO_CMD} a; \
${ECHO_CMD} r; \
${ECHO_CMD} 160000; \
${ECHO_CMD} ${SENDMAIL8_12} ; \
${ECHO_CMD} n; \
${ECHO_CMD} y; \
${ECHO_CMD} ; \
${ECHO_CMD} ; \
} | ./configure
cd ${WRKSRC}/../sendmail; \
${INSTALL_DATA} example* readme.* sendmail.*.addon ${DOC_DIR}
cd ${WRKSRC}/../sendmail; \
${INSTALL_DATA} drweb-sendmail.sh \
${PREFIX}/etc/rc.d/drweb-sendmail.sh-dist
if [ ! -f ${PREFIX}/etc/rc.d/drweb-sendmail.sh ] ; then \
cd ${WRKSRC}/../sendmail; \
${INSTALL_SCRIPT} drweb-sendmail.sh \
${PREFIX}/etc/rc.d/; \
cd ${WRKSRC}/doc/sendmail; \
${INSTALL_DATA} readme* *.txt sendmail.??.addon ${DOC_DIR}
${INSTALL_DATA} ${WRKSRC}/drweb-sendmail.sh \
${PREFIX}/etc/rc.d/drweb-sendmail.sh-dist
if [ ! -f ${PREFIX}/etc/rc.d/drweb-sendmail.sh ]; then \
${INSTALL_SCRIPT} ${WRKSRC}/drweb-sendmail.sh \
${PREFIX}/etc/rc.d/; \
fi
post-install:
PKG_PREFIX=${PREFIX} ${SH} pkg-install ${PKGNAME} POST-INSTALL
@echo
@${CAT} pkg-message
@echo
@echo "Read documentation about additional sendmail tuning needed"
@echo "in ${DOC_DIR}."
@echo
.include <bsd.port.post.mk>
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (drwebd-4.27-freebsd4.tgz) = 1ea2c05c821bef64c3d050e971ad46e5
MD5 (drweb-clients-4.28-sources.tar.gz) = 80d7607a81b20972cb9ce6ee50f00234

View File

@ -1,21 +0,0 @@
# $FreeBSD$
#
SENDMAIL_DIR=/usr/src/contrib/sendmail
.PATH: ${SENDMAIL_DIR}/libmilter
CFLAGS+=-I${SENDMAIL_DIR}/src -I${SENDMAIL_DIR}/include
CFLAGS+=-DNEWDB -DNIS -DMAP_REGEX -DNOT_SENDMAIL -D_FFR_MILTER=1
CFLAGS+=-D_THREAD_SAFE
# User customizations to the sendmail build environment
CFLAGS+=${SENDMAIL_CFLAGS}
LIB= milter
SRCS+= comm.c engine.c handler.c listener.c main.c signal.c sm_gethost.c smfi.c
INTERNALLIB= true
NOPIC= true
INTERNALSTATICLIB= true
.include <bsd.lib.mk>

View File

@ -0,0 +1,20 @@
#!/bin/sh
case "$1" in
start)
if [ -x %PREFIX%/sbin/drweb-smf ]; then
rm -f %PREFIX%/drweb/run/drweb-smf.sock;
%PREFIX%/sbin/drweb-smf --conf=%PREFIX%/etc/drweb/drweb_smf.conf && \
echo -n ' drweb-smf';
fi
;;
stop)
killall drweb-smf >/dev/null 2>& 1;
echo -n ' drweb-smf';
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
;;
esac
exit 0

View File

@ -1,57 +1,73 @@
--- configure.orig Tue Oct 16 19:28:21 2001
+++ configure Wed Feb 20 23:50:34 2002
@@ -135,7 +135,7 @@
--- configure.orig Mon Mar 18 20:43:16 2002
+++ configure Fri May 10 11:49:42 2002
@@ -104,7 +104,7 @@
if [ "$INPUT" != "y" -a "x$INPUT" != "x" ] ; then
MILTER_VER="FFR"
fi
fi
- if [ $MILTER_VER = "STD" ] ; then
+ if [ $MILTER_VER = "xSTD" ] ; then
SM_LIB="libsm"
SM_LIB_CMD="-lsm"
elif [ $OS = "Linux_DW" ] ; then
@@ -173,40 +173,15 @@
rm -f configure.cache
echo $n "${SM_DIR}${c}" >> configure.cache
- OBJ_DIR=`ls -1 "$SM_DIR" | grep "obj.*"`
- if [ ! -d "$SM_DIR/$OBJ_DIR" ] ; then
- echo
- echo "Cannot found directory in that Sendmail puts results of compilation"
- echo "Please re-build Sendmail or enter name (not a path) of this directory"
- echo $n ">$c"
- read INPUT
- if [ "x$INPUT" = "x" ] ; then
- echo "Try later."
- exit 2
- elif [ ! -d "$SM_DIR/$INPUT" ] ; then
- echo "$SM_DIR/$INPUT not found"
- exit 1
elif [ $OS = "Linux" ] ; then
@@ -114,52 +114,6 @@
SM_LIB=""
SM_LIB_CMD=""
fi
- if [ ! -f include/libmilter/mfapi.h ] ; then
- echo "no include/libmilter/mfapi.h"
- fi
- if [ ! -f include/libmilter/mfdef.h ] ; then
- echo "no include/libmilter/mfdef.h"
- fi
- if [ "x$SM_LIB" != "x" -a ! -f "lib/$SM_LIB.a" ] ; then
- NO_ADD="yes"
- echo "no lib/$SM_LIB.a"
- else
- NO_ADD="no"
- fi
- if [ ! -f lib/libmilter.a ] ; then
- echo "no lib/libmilter.a"
- fi
- if [ ! -f include/libmilter/mfapi.h\
- -o\
- ! -f include/libmilter/mfdef.h\
- -o\
- ! -f lib/libmilter.a\
- -o $NO_ADD = "yes" ] ; then
- echo
- echo "Please copy (or make symlinks) for next files:"
- echo "in ./include/libmilter directory mfapi.h and mfdef.h"
- echo $n "in ./lib directory libmilter.a"
- if [ $SM_LIB = "libsm" -a $OS = "Linux" ] ; then
- echo " and libsm.a"
- elif [ $SM_LIB = "libsmutil" ] ; then
- echo " and libsmutil.a"
- else
- echo
- fi
- OBJ_DIR="$INPUT"
- fi
-
- if [ ! -f "$SM_DIR/$OBJ_DIR/libmilter/libmilter.a" ] ; then
- echo "Cannot found Milter library (libmilter.a)"
- echo "Please go to $SM_DIR/libmilter and build it"
- echo
- echo "So you should have next tree:"
- echo "include/libmilter/mfapi.h"
- echo " mfdef.h"
- echo "lib/libmilter.a"
- if [ $SM_LIB = "libsm" -a $OS = "Linux" ] ; then
- echo " libsm.a"
- elif [ $SM_LIB = "libsmutil" ] ; then
- echo " libsmutil.a"
- fi
- echo
- echo "Do it and try again"
- exit 1
- fi
- if [ "x$SM_LIB" != "x" -a ! -f "$SM_DIR/$OBJ_DIR/$SM_LIB/$SM_LIB.a" ] ; then
- echo "Cannot found additional library ($SM_LIB.a)"
- echo "Please go to $SM_DIR and check it"
- exit 1
- fi
rm -fr include/libmilter
rm -f lib/libmilter.a
- ln -s "$SM_DIR/include/libmilter" include/libmilter
- ln -s "$SM_DIR/$OBJ_DIR/libmilter/libmilter.a" lib/libmilter.a
+ if [ ! -f /usr/lib/libmilter.a ] ; then
+ ln -s "$SM_DIR/include/libmilter" include/libmilter
+ ln -s "../libmilter/libmilter.a" lib/libmilter.a
+ fi
if [ "x$SM_LIB" != "x" ] ; then
rm -f "lib/$SM_LIB.a"
- ln -s "$SM_DIR/$OBJ_DIR/$SM_LIB/$SM_LIB.a" "lib/$SM_LIB.a"
+ ln -s "../libsmutil/$SM_LIB.a" "lib/$SM_LIB.a"
fi
else
DRWEB_SM=""
fi
@@ -256,7 +210,7 @@
if [ "x$BSD_MAKE" = "xyes" ] ; then
COMPILE_RULE_1=".c.o:"
COMPILE_RULE_2=" \$(CC) -c \$(ADD_CFLAGS) -D__SIGNAL_BASED_DW \${.ALLSRC}"
- COMPILE_RULE_3=" \$(CC) -c \$(ADD_CFLAGS) -D__THREAD_BASED_DW \${.ALLSRC} -o \${.PREFIX}_r.o"
+ COMPILE_RULE_3=" \$(CC) -c \$(ADD_CFLAGS) -D_THREAD_SAFE -D__THREAD_BASED_DW \${.ALLSRC} -o \${.PREFIX}_r.o"
COMPILE_RULE_4=""
else
COMPILE_RULE_1="%.o: %.c"

View File

@ -1,11 +1,19 @@
--- src/Makefile.bsd.orig Tue Oct 16 19:03:59 2001
+++ src/Makefile.bsd Tue Feb 12 01:07:07 2002
@@ -63,7 +63,7 @@
--- src/Makefile.nix.orig Mon Mar 18 20:43:19 2002
+++ src/Makefile.nix Fri May 10 11:53:25 2002
@@ -18,7 +18,6 @@
CC_AIX = cc_r
CC_Solaris_GNU = gcc
CC_Solaris_SUN = cc
-CC = $(CC_$(OS)$(ENV))
.c.o:
$(CC) -c $(ADD_CFLAGS) -D__SIGNAL_BASED_DW $<
- $(CC) -c $(ADD_CFLAGS) -D__THREAD_BASED_DW $< -o ${.PREFIX}_r.o
+ $(CC) -c $(ADD_CFLAGS) -D__THREAD_BASED_DW -D_THREAD_SAFE $< -o ${.PREFIX}_r.o
# OS-specific compilation flags
ADDF_AIX = -qmaxmem=16384 -DNO_VSYSLOG -DNO_SNPRINTF -DNOT_GCC_DW -I../addons/aix/include
@@ -31,7 +30,7 @@
# Common flags
OPTFLAGS = ___OPT_FLAGS___
DEFFLAGS = -D__UNIX_DW -D$(OS)_DW
-INCFLAGS = -I./include -I./src
+INCFLAGS = -I./src
ADD_CFLAGS = $(OPTFLAGS) $(DEFFLAGS) $(INCFLAGS) $(ADDFLAGS)
clean:
rm -f *.bak *~ *.err *.o ../lib/libdwclient*.a ../include/*.h
SRCS = \

View File

@ -1,11 +1,25 @@
--- ../sendmail/configure.orig Tue Oct 16 19:28:24 2001
+++ ../sendmail/configure Sun Oct 21 00:09:16 2001
@@ -117,7 +117,7 @@
--- doc/sendmail/configure.orig Mon May 6 19:23:27 2002
+++ doc/sendmail/configure Fri May 10 18:21:04 2002
@@ -110,7 +110,7 @@
# Read transport
CACHE_ADDR="n"
POS=`$GREP PidFile $DAEMON_INI | $GREP -v ";"`
POS=`$GREP -i PidFile $DAEMON_INI | $GREP -v ";"`
-if [ "x$POS" = "x" ] ; then
+if [ "x" = "x" ] ; then
echo
echo -n "Daemon pidfile not defined in ini-file ..."
POS=`$GREP SocketMode $DAEMON_INI | $GREP -v ";" | $AWK '{ print match( $0, /[Tt][Cc][Pp]/ ) }'`
POS=`$GREP -i SocketMode $DAEMON_INI | $GREP -v ";" | $AWK '{ print match( $0, /[Tt][Cc][Pp]/ ) }'`
@@ -265,8 +265,13 @@
echo "Edit one of configuration files and try again."
exit 1
fi
+ else
+ echo "Press Enter"
+ read INPUT
fi
else
+ echo "Press Enter"
+ read INPUT
FILTER_TIMEOUT=0
fi

View File

@ -1,15 +1,44 @@
--- Makefile.bsd.orig Mon Oct 15 15:04:09 2001
+++ Makefile.bsd Tue Feb 12 01:30:40 2002
@@ -45,8 +45,11 @@
drweb_cgp.o: drweb_cgp.c $(LIBINCLUDES)
$(CC) -c $(ADD_CFLAGS) $< -I./src -D__THREAD_BASED_DW
--- Makefile.nix.orig Mon May 6 14:58:38 2002
+++ Makefile.nix Fri May 10 12:00:39 2002
@@ -25,7 +25,6 @@
CC_AIX = cc_r
CC_Solaris_GNU = gcc
CC_Solaris_SUN = cc
-CC = $(CC_$(OS)$(ENV))
+drwebdc.o: drwebdc.c $(LIBINCLUDES)
+ $(CC) -c $(ADD_CFLAGS) $< -I./src
+
.c.o: $(LIBINCLUDES)
- $(CC) -c $(ADD_CFLAGS) $<
+ $(CC) -c $(ADD_CFLAGS) -D_THREAD_SAFE $<
# OS-specific compilation flags
ADDF_AIX = -qmaxmem=16384 -DNO_VSYSLOG -DNO_SNPRINTF -I./addons/aix/include
@@ -37,7 +36,7 @@
# Common flags
OPTFLAGS = ___OPT_FLAGS___
DEFFLAGS = -D__UNIX_DW -D$(OS)_DW
-INCFLAGS = -I./include -I./src -I./addons/md5
+INCFLAGS = -I./src
ADD_CFLAGS = $(OPTFLAGS) $(DEFFLAGS) $(INCFLAGS) $(ADDFLAGS)
$(LIBINCLUDES):
@( cd src; make headers )
# Multihtreaded libraries
@@ -70,14 +69,13 @@
# Filter build options
DCOPT = -D__SIGNAL_BASED_DW
-SMOPT = -DDW_SENDMAIL -D__THREAD_BASED_DW
+SMOPT = -DDW_SENDMAIL -D__THREAD_BASED_DW -D_THREAD_SAFE
ZMOPT = -DDW_ZMAILER -D__SIGNAL_BASED_DW
QMOPT = -DDW_QMAIL -D__SIGNAL_BASED_DW
EXIMOPT= -DDW_PIPE -DDW_EXIM -D__SIGNAL_BASED_DW
PSTFOPT= -DDW_PIPE -DDW_POSTFIX -D__SIGNAL_BASED_DW
SMOBJS = \
- dwsm_md5.o\
dwsm_opt.o\
dwsm_user.o\
dwsm_file.o\
@@ -174,7 +172,7 @@
# Sendmail Filter Rules
drweb-smf : $(SMOBJS) $(DWLIB_R)
- $(CC) $(SMOBJS) -o $@ $(LINKLIBMT) $(LIBMILTER)
+ $(CC) $(SMOBJS) -o $@ -lmd $(LINKLIBMT) $(LIBMILTER)
drweb_smf.o: drweb_smf.c
$(CC) -c $(ADD_CFLAGS) $(SMOPT) ___SOURCE___ -o $@ $(CCOUTPUT)

View File

@ -0,0 +1,40 @@
--- dw_options.c.bak Mon May 6 19:21:02 2002
+++ dw_options.c Fri May 10 12:13:40 2002
@@ -68,7 +68,11 @@
#if defined(__UNIX_DW)
#if !defined(EMX_DW)
+#ifdef __FreeBSD__
+#define OS_SPEC_CONFNAME "%PREFIX%/etc/drweb/"CONF_FNAME
+#else
#define OS_SPEC_CONFNAME "/opt/drweb/"CONF_FNAME
+#endif
#else /* EMX */
#define OS_SPEC_CONFNAME "./"CONF_FNAME
#endif /* EMX */
@@ -900,6 +904,7 @@
return name;
}
DWC_Free( name );
+#ifndef __FreeBSD__
name = DWC_Strdup( FHS_SPEC_CONFNAME );
if( access( name, R_OK ) == 0 )
{
@@ -907,6 +912,7 @@
return name;
}
DWC_Free( name );
+#endif
printLib( DW_LL_ERROR, "incorrect usage, try run in console with %s or read documentation", HELP_PARAM_3 );
printf( "%s: configuration file not found\nTry run with %s for more information.\n", argv[0], HELP_PARAM_3 );
return NULL;
@@ -934,7 +940,9 @@
printf("Conf file must be present in one of location:\n");
#endif /* not QMAIL && not ZMAILER */
printf(" "OS_SPEC_CONFNAME"\n");
+#ifndef __FreeBSD__
printf(" "FHS_SPEC_CONFNAME"\n");
+#endif
printf("\n"PROG_NOTE"\n");
exit(EX_USAGE);
}

View File

@ -0,0 +1,131 @@
--- etc/sendmail/etc/drweb/drweb_smf.conf.orig Mon May 6 23:48:14 2002
+++ etc/sendmail/etc/drweb/drweb_smf.conf Fri May 10 18:12:59 2002
@@ -15,14 +15,14 @@
# Address = inet:3000@localhost
# Address = local:/var/drweb/run/drwebd.socket
# Address = pid:/var/drweb/run/drwebd.pid
-Address = inet:3000@localhost
+Address = local:%PREFIX%/drweb/run/drwebd.sock
# Enable/disable caching resolved daemon host
# (useful only if daemon uses TCP/IP communications)
Cache = yes
# Timeout for communication operations (in seconds)
-Timeout = 60
+Timeout = 90
#########################
# Communication section #
@@ -32,7 +32,7 @@
# Note: FAMILY pid is not valid
# Address = inet:3001@localhost
# Address = local:/usr/local/drweb/run/drweb-smf.skt
-Address = inet:3001@localhost
+Address = local:%PREFIX%/drweb/run/drweb-smf.sock
########################
# Scan options section #
@@ -58,10 +58,10 @@
SpamFilter = off
# Directory used for story temporary files
-Spool = /var/drweb/spool
+Spool = /tmp
# User account used by filter
-# FilterAccount =
+FilterAccount = drweb
# Deny scanning if at least one of recipient or sender address
# present in DenyList with "deny" option (yes/no), if "no" all
@@ -69,7 +69,7 @@
DenyOnOne = yes
# List with rules for users or domains to block scanning
-DenyList = /etc/drweb/users.conf
+DenyList = %PREFIX%/etc/drweb/users.conf
###################
# Actions section #
@@ -95,7 +95,8 @@
# pass (default) - pass such messages
# discard - discard such messages
# reject - reject this message
-SpamFilterAlert = pass
+SpamFilterAlert = discard
+
# EmptyFrom - mean that SMTP session initiated with empty envelope From:
# widely used spammers and Mailer-Daemons
# Actions:
@@ -111,7 +112,7 @@
# pass - accept messages with such objects
# quarantine - move message to quarantine and reject it
# reject (default) - reject messages
-SkipObject = reject
+SkipObject = pass
# MailbombObject - mean that daemon found object in archive with compression
# ratio exceeded MaxCompressionRation or size of object greater
@@ -138,19 +139,19 @@
# pass - accept messages
# reject (default) - reject messages
# tempfail - says that we temporary unavailable
-ProcessingErrors = reject
+ProcessingErrors = tempfail
# Admin mail address (may be unix-local address)
AdminMail = postmaster
# Filter address, that be used in From:
-FilterMail = DrWeb-DAEMON@your.domain.com
+FilterMail = DrWeb-DAEMON@%HOSTNAME%
# Quarantine directory.
# The infected files could be moved in that dir
# if you stay this field empty or commented then
# infected messages would not been storied
-Quarantine = /var/drweb/infected
+Quarantine = %PREFIX%/drweb/infected
#########################
@@ -177,31 +178,31 @@
RcptsNotify = yes
# Files with notification templates
-AdminTemplate = /etc/drweb/templates/en/sendmail/virus-admin.msg
-SenderTemplate = /etc/drweb/templates/en/sendmail/virus-sender.msg
-RcptsTemplate = /etc/drweb/templates/en/sendmail/virus-rcpts.msg
+AdminTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/virus-admin.msg
+SenderTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/virus-sender.msg
+RcptsTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/virus-rcpts.msg
[SkipNotifications]
AdminNotify = no
SenderNotify = yes
RcptsNotify = no
AdminTemplate =
-SenderTemplate = /etc/drweb/templates/en/sendmail/skipobj-sender.msg
+SenderTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/skipobj-sender.msg
RcptsTemplate =
[MailbombNotifications]
AdminNotify = yes
SenderNotify = yes
RcptsNotify = no
-AdminTemplate = /etc/drweb/templates/en/sendmail/mailbomb-admin.msg
-SenderTemplate = /etc/drweb/templates/en/sendmail/mailbomb-sender.msg
+AdminTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/mailbomb-admin.msg
+SenderTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/mailbomb-sender.msg
RcptsTemplate =
[ErrorNotifications]
AdminNotify = yes
SenderNotify = no
RcptsNotify = no
-AdminTemplate = /etc/drweb/templates/en/sendmail/error-admin.msg
+AdminTemplate = %PREFIX%/etc/drweb/templates/en/sendmail/error-admin.msg
SenderTemplate =
RcptsTemplate =

View File

@ -0,0 +1,16 @@
--- etc/sendmail/etc/drweb/users.conf.bak Fri Apr 12 18:13:50 2002
+++ etc/sendmail/etc/drweb/users.conf Fri May 10 13:47:35 2002
@@ -45,8 +45,8 @@
#deny asv@drweb.ru
#deny sergey@asv.internal.drweb.ru
-[version=2]
-deny to exact asv@drweb.ru
-deny any exact sergey@asv.internal.drweb.ru
-allow any subst drweb.ru
-deny any subst .ru
+#[version=2]
+#deny to exact asv@drweb.ru
+#deny any exact sergey@asv.internal.drweb.ru
+#allow any subst drweb.ru
+#deny any subst .ru

View File

@ -0,0 +1,63 @@
--- etc/sendmail/etc/drweb/templates/ru/sendmail/error-admin.msg.bak Fri Apr 12 20:31:53 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/error-admin.msg Fri May 10 13:44:52 2002
@@ -1,5 +1,5 @@
From: DrWeb-DAEMON
-Subject: óÂÏÊ ÁÎÔÉ×ÉÒÕÓÎÏÇÏ ÆÉÌØÔÒÁ
+Subject: =?koi8-r?B?88LPyiDBztTJ18nS1dPOz8fPIMbJ?= =?koi8-r?B?zNjU0sE=?=
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ áÄÍÉÎÉÓÔÒÁÔÏÒ,
--- etc/sendmail/etc/drweb/templates/ru/sendmail/mailbomb-admin.msg.bak Fri Apr 12 20:32:10 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/mailbomb-admin.msg Fri May 10 13:44:13 2002
@@ -1,5 +1,5 @@
From: DrWeb-DAEMON
-Subject: îÁÊÄÅÎ ÐÏÄÏÚÒÉÔÅÌØÎÙÊ ÏÂßÅËÔ
+Subject: =?koi8-r?B?7sHKxMXOINDPxM/a0snUxczYztnK?= =?koi8-r?B?IM/C38XL1A==?=
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ áÄÍÉÎÉÓÔÒÁÔÏÒ,
--- etc/sendmail/etc/drweb/templates/ru/sendmail/mailbomb-sender.msg.bak Fri Apr 12 20:41:18 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/mailbomb-sender.msg Fri May 10 13:45:00 2002
@@ -1,5 +1,5 @@
From: $FILTER_MAIL$
-Subject: îÅÄÏÓÔÁ×ÌÅÎÎÏÅ ÓÏÏÂÝÅÎÉÅ: $SUBJECT$
+Subject: =?koi8-r?B?7sXEz9PUwdfMxc7Oz8Ug08/Pwt3F?= =?koi8-r?B?zsnFOg==?= $SUBJECT$
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ ïÔÐÒÁ×ÉÔÅÌØ,
--- etc/sendmail/etc/drweb/templates/ru/sendmail/skipobj-sender.msg.bak Fri Apr 12 20:41:14 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/skipobj-sender.msg Fri May 10 13:45:00 2002
@@ -1,5 +1,5 @@
From: $FITLER_MAIL$
-Subject: îÅÄÏÓÔÁ×ÌÅÎÎÏÅ ÓÏÏÂÝÅÎÉÅ: $SUBJECT$
+Subject: =?koi8-r?B?7sXEz9PUwdfMxc7Oz8Ug08/Pwt3F?= =?koi8-r?B?zsnFOg==?= $SUBJECT$
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ ïÔÐÒÁ×ÉÔÅÌØ,
--- etc/sendmail/etc/drweb/templates/ru/sendmail/virus-admin.msg.bak Fri Apr 12 20:33:29 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/virus-admin.msg Fri May 10 13:45:00 2002
@@ -1,5 +1,5 @@
From: DrWeb-DAEMON
-Subject: îÁÊÄÅÍ ×ÉÒÕÓ !
+Subject: =?koi8-r?B?7sHKxMXOINfJ0tXTIQ==?=
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ áÄÍÉÎÉÓÔÒÁÔÏÒ,
--- etc/sendmail/etc/drweb/templates/ru/sendmail/virus-rcpts.msg.bak Fri Apr 12 20:41:08 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/virus-rcpts.msg Fri May 10 13:45:00 2002
@@ -1,5 +1,5 @@
From: $FILTER_MAIL$
-Subject: îÅÄÏÓÔÁ×ÌÅÎÎÏÅ ÓÏÏÂÝÅÎÉÅ: $SUBJECT$
+Subject: =?koi8-r?B?7sXEz9PUwdfMxc7Oz8Ug08/Pwt3F?= =?koi8-r?B?zsnFOg==?= $SUBJECT$
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ ðÏÌÕÞÁÔÅÌØ,
--- etc/sendmail/etc/drweb/templates/ru/sendmail/virus-sender.msg.bak Fri Apr 12 20:41:05 2002
+++ etc/sendmail/etc/drweb/templates/ru/sendmail/virus-sender.msg Fri May 10 13:45:00 2002
@@ -1,5 +1,5 @@
From: $FILTER_MAIL$
-Subject: îÅÄÏÓÔÁ×ÌÅÎÎÏÅ ÓÏÏÂÝÅÎÉÅ: $SUBJECT$
+Subject: =?koi8-r?B?7sXEz9PUwdfMxc7Oz8Ug08/Pwt3F?= =?koi8-r?B?zsnFOg==?= $SUBJECT$
Content-Type: text/plain; charset=koi8-r
õ×ÁÖÁÅÍÙÊ ïÔÐÒÁ×ÉÔÅÌØ,

View File

@ -1,36 +0,0 @@
#!/bin/sh
# $FreeBSD$
#
if [ "$2" != "POST-INSTALL" ]; then
exit 0
fi
USER=drweb
GROUP=${USER}
UID=426
GID=${UID}
ex=0
if ! pw groupshow "${GROUP}" 2>/dev/null 1>&2; then
if pw groupadd ${GROUP} -g ${GID}; then
echo "Added group \"${GROUP}\"."
else
echo "Adding group \"${GROUP}\" failed..."
ex=1
fi
fi
if ! pw usershow "${USER}" 2>/dev/null 1>&2; then
if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
-s "/sbin/nologin" -d "/nonexistent" -c "Dr. Web Scanner"
then
echo "Added user \"${USER}\"."
else
echo "Adding user \"${USER}\" failed..."
ex=1
fi
fi
[ "$ex" = "1" ] && exit 1
exit 0

View File

@ -1,16 +0,0 @@
This software requires Sendmail compiled with mail filter support.
If you have Sendmail less then 8.12.2, be sure you have the following
in your /etc/make.conf:
SENDMAIL_CFLAGS+= -D_FFR_MILTER=1
in order to have Sendmail always compiled with mail filtering support when you
build your system from sources. If Sendmail is not yet recompiled with this
flag, then do the following:
cd /usr/src/usr.sbin/sendmail
make clean
make
make install

View File

@ -1,12 +1,71 @@
@comment $FreeBSD$
@unexec if [ -f %D/etc/drweb/drweb_smf.conf ] && cmp -s %D/etc/drweb/drweb_smf.conf %D/etc/drweb/drweb_smf.conf-dist; then rm -f %D/etc/drweb/drweb_smf.conf; fi
etc/drweb/drweb_smf.conf-dist
@exec [ -f %B/drweb_smf.conf ] || cp %B/%f %B/drweb_smf.conf
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/error-admin.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/error-admin.msg %D/etc/drweb/templates/en/sendmail/error-admin.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/error-admin.msg; fi
etc/drweb/templates/en/sendmail/error-admin.msg-dist
@exec [ -f %B/error-admin.msg ] || cp %B/%f %B/error-admin.msg
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/mailbomb-admin.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/mailbomb-admin.msg %D/etc/drweb/templates/en/sendmail/mailbomb-admin.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/mailbomb-admin.msg; fi
etc/drweb/templates/en/sendmail/mailbomb-admin.msg-dist
@exec [ -f %B/mailbomb-admin.msg ] || cp %B/%f %B/mailbomb-admin.msg
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/mailbomb-sender.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/mailbomb-sender.msg %D/etc/drweb/templates/en/sendmail/mailbomb-sender.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/mailbomb-sender.msg; fi
etc/drweb/templates/en/sendmail/mailbomb-sender.msg-dist
@exec [ -f %B/mailbomb-sender.msg ] || cp %B/%f %B/mailbomb-sender.msg
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/skipobj-sender.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/skipobj-sender.msg %D/etc/drweb/templates/en/sendmail/skipobj-sender.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/skipobj-sender.msg; fi
etc/drweb/templates/en/sendmail/skipobj-sender.msg-dist
@exec [ -f %B/skipobj-sender.msg ] || cp %B/%f %B/skipobj-sender.msg
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/virus-admin.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/virus-admin.msg %D/etc/drweb/templates/en/sendmail/virus-admin.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/virus-admin.msg; fi
etc/drweb/templates/en/sendmail/virus-admin.msg-dist
@exec [ -f %B/virus-admin.msg ] || cp %B/%f %B/virus-admin.msg
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/virus-rcpts.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/virus-rcpts.msg %D/etc/drweb/templates/en/sendmail/virus-rcpts.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/virus-rcpts.msg; fi
etc/drweb/templates/en/sendmail/virus-rcpts.msg-dist
@exec [ -f %B/virus-rcpts.msg ] || cp %B/%f %B/virus-rcpts.msg
@unexec if [ -f %D/etc/drweb/templates/en/sendmail/virus-sender.msg ] && cmp -s %D/etc/drweb/templates/en/sendmail/virus-sender.msg %D/etc/drweb/templates/en/sendmail/virus-sender.msg-dist; then rm -f %D/etc/drweb/templates/en/sendmail/virus-sender.msg; fi
etc/drweb/templates/en/sendmail/virus-sender.msg-dist
@exec [ -f %B/virus-sender.msg ] || cp %B/%f %B/virus-sender.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/error-admin.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/error-admin.msg %D/etc/drweb/templates/ru/sendmail/error-admin.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/error-admin.msg; fi
etc/drweb/templates/ru/sendmail/error-admin.msg-dist
@exec [ -f %B/error-admin.msg ] || cp %B/%f %B/error-admin.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/mailbomb-admin.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/mailbomb-admin.msg %D/etc/drweb/templates/ru/sendmail/mailbomb-admin.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/mailbomb-admin.msg; fi
etc/drweb/templates/ru/sendmail/mailbomb-admin.msg-dist
@exec [ -f %B/mailbomb-admin.msg ] || cp %B/%f %B/mailbomb-admin.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/mailbomb-sender.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/mailbomb-sender.msg %D/etc/drweb/templates/ru/sendmail/mailbomb-sender.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/mailbomb-sender.msg; fi
etc/drweb/templates/ru/sendmail/mailbomb-sender.msg-dist
@exec [ -f %B/mailbomb-sender.msg ] || cp %B/%f %B/mailbomb-sender.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/skipobj-sender.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/skipobj-sender.msg %D/etc/drweb/templates/ru/sendmail/skipobj-sender.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/skipobj-sender.msg; fi
etc/drweb/templates/ru/sendmail/skipobj-sender.msg-dist
@exec [ -f %B/skipobj-sender.msg ] || cp %B/%f %B/skipobj-sender.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/virus-admin.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/virus-admin.msg %D/etc/drweb/templates/ru/sendmail/virus-admin.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/virus-admin.msg; fi
etc/drweb/templates/ru/sendmail/virus-admin.msg-dist
@exec [ -f %B/virus-admin.msg ] || cp %B/%f %B/virus-admin.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/virus-rcpts.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/virus-rcpts.msg %D/etc/drweb/templates/ru/sendmail/virus-rcpts.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/virus-rcpts.msg; fi
etc/drweb/templates/ru/sendmail/virus-rcpts.msg-dist
@exec [ -f %B/virus-rcpts.msg ] || cp %B/%f %B/virus-rcpts.msg
@unexec if [ -f %D/etc/drweb/templates/ru/sendmail/virus-sender.msg ] && cmp -s %D/etc/drweb/templates/ru/sendmail/virus-sender.msg %D/etc/drweb/templates/ru/sendmail/virus-sender.msg-dist; then rm -f %D/etc/drweb/templates/ru/sendmail/virus-sender.msg; fi
etc/drweb/templates/ru/sendmail/virus-sender.msg-dist
@exec [ -f %B/virus-sender.msg ] || cp %B/%f %B/virus-sender.msg
@unexec if [ -f %D/etc/drweb/users.conf ] && cmp -s %D/etc/drweb/users.conf %D/etc/drweb/users.conf-dist; then rm -f %D/etc/drweb/users.conf; fi
etc/drweb/users.conf-dist
@exec [ -f %B/users.conf ] || cp %B/%f %B/users.conf
@unexec if [ -f %D/etc/rc.d/drweb-sendmail.sh ] && cmp -s %D/etc/rc.d/drweb-sendmail.sh %D/etc/rc.d/drweb-sendmail.sh-dist; then rm -f %D/etc/rc.d/drweb-sendmail.sh; fi
etc/rc.d/drweb-sendmail.sh-dist
@exec if [ ! -f %D/etc/rc.d/drweb-sendmail.sh ] ; then cp -p %D/%F %B/drweb-sendmail.sh; chmod 555 %B/drweb-sendmail.sh; fi
sbin/drweb-smf
sbin/drwebdc
share/doc/drweb-sendmail/example.sh
share/doc/drweb-sendmail/example-rus.sh
share/doc/drweb-sendmail/readme.sendmail
share/doc/drweb-sendmail/readme.sendmail.rus
share/doc/drweb-sendmail/conf_file.rus.txt
share/doc/drweb-sendmail/conf_file.txt
share/doc/drweb-sendmail/notify.rus.txt
share/doc/drweb-sendmail/notify.txt
share/doc/drweb-sendmail/readme
share/doc/drweb-sendmail/readme.rus
share/doc/drweb-sendmail/sendmail.cf.addon
share/doc/drweb-sendmail/sendmail.mc.addon
share/doc/drweb-sendmail/users_list.rus.txt
share/doc/drweb-sendmail/users_list.txt
@dirrm etc/drweb/templates/ru/sendmail
@dirrm etc/drweb/templates/ru
@dirrm etc/drweb/templates/en/sendmail
@dirrm etc/drweb/templates/en
@dirrm etc/drweb/templates
@dirrm etc/drweb
@dirrm share/doc/drweb-sendmail