ports/162768: [PATCH] ftp/proftpd port update which fixes mod_sql_mysql bug.

Piotr Florczyk piotr.florczyk at nnv.pl
Tue Nov 22 23:00:11 UTC 2011


>Number:         162768
>Category:       ports
>Synopsis:       [PATCH] ftp/proftpd port update which fixes mod_sql_mysql bug.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Nov 22 23:00:11 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Piotr Florczyk
>Release:        9.0-RC2
>Organization:
NNV Sp. z o.o.
>Environment:
>Description:
Proftpd with mysql support built from current port just dies after couple of seconds.
>How-To-Repeat:
cd /usr/ports/ftp/proftpd
make WITH_MYSQL= install
proftpd -n

After couple off seconds proftpd will exit with message:
"Alarm clock"
>Fix:
Update to version 1.3.4 or later. Attached shar contains version 1.3.4a

Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	proftpd/
#	proftpd/pkg-plist
#	proftpd/distinfo
#	proftpd/Makefile
#	proftpd/files
#	proftpd/files/patch-src-wtmp.c
#	proftpd/files/patch-sample-configurations_basic.conf
#	proftpd/files/proftpd.in
#	proftpd/files/extra-patch-modules_mod_xfer.c
#	proftpd/files/patch-doc::Configuration.html
#	proftpd/files/patch-contrib-mod_sftp-Makefile.in
#	proftpd/files/patch-src_proftpd.8.in
#	proftpd/pkg-descr
#
echo c - proftpd/
mkdir -p proftpd/ > /dev/null 2>&1
echo x - proftpd/pkg-plist
sed 's/^X//' >proftpd/pkg-plist << '94cc88633dd9ba450c9acd9f7659a14e'
Xbin/ftpasswd
Xbin/ftpcount
Xbin/ftpdctl
Xbin/ftpmail
Xbin/ftpquota
Xbin/ftptop
Xbin/ftpwho
Xbin/prxs
X at unexec if cmp -s %Detc/proftpd.conf %D/etc/proftpd.conf.sample; then rm -f %D/etc/proftpd.conf; fi
Xetc/proftpd.conf.sample
X at exec cp -n %D/%F %B/proftpd.conf
X%%SFTP%%@unexec if cmp -s %D/etc/proftpd/dhparams.pem %D/etc/proftpd/dhparams.pem.sample; then rm -f %D/etc/proftpd/dhparams.pem; fi
X%%SFTP%%etc/proftpd/dhparams.pem.sample
X%%SFTP%%@exec cp -n %D/%F %B/dhparams.pem
X%%SFTP%%@unexec if cmp -s %D/etc/proftpd/blacklist.dat %D/etc/proftpd/blacklist.dat.sample; then rm -f %D/etc/proftpd/blacklist.dat; fi
X%%SFTP%%etc/proftpd/blacklist.dat.sample
X%%SFTP%%@exec cp -n %D/%F %B/blacklist.dat
X at exec mkdir -p %%LOCALSTATEDIR%%/proftpd
Xinclude/proftpd/auth.h
Xinclude/proftpd/bindings.h
Xinclude/proftpd/buildstamp.h
Xinclude/proftpd/child.h
Xinclude/proftpd/class.h
Xinclude/proftpd/cmd.h
Xinclude/proftpd/compat.h
Xinclude/proftpd/conf.h
Xinclude/proftpd/config.h
Xinclude/proftpd/ctrls.h
Xinclude/proftpd/data.h
Xinclude/proftpd/default_paths.h
Xinclude/proftpd/dirtree.h
Xinclude/proftpd/display.h
Xinclude/proftpd/encode.h
Xinclude/proftpd/env.h
Xinclude/proftpd/event.h
Xinclude/proftpd/expr.h
Xinclude/proftpd/feat.h
Xinclude/proftpd/filter.h
Xinclude/proftpd/fsio.h
Xinclude/proftpd/ftp.h
Xinclude/proftpd/glibc-glob.h
Xinclude/proftpd/help.h
Xinclude/proftpd/inet.h
Xinclude/proftpd/libsupp.h
Xinclude/proftpd/log.h
Xinclude/proftpd/memcache.h
Xinclude/proftpd/mkhome.h
Xinclude/proftpd/mod_ctrls.h
X%%CLAMAV%%include/proftpd/mod_clamav.h
X%%WRAP%%include/proftpd/mod_wrap2.h
X%%SFTP%%include/proftpd/mod_sftp.h
X%%SQL%%include/proftpd/mod_sql.h
X%%TLS%%include/proftpd/mod_tls.h
X%%QUOTA%%include/proftpd/mod_quotatab.h
Xinclude/proftpd/modules.h
Xinclude/proftpd/netacl.h
Xinclude/proftpd/netaddr.h
Xinclude/proftpd/netio.h
Xinclude/proftpd/options.h
Xinclude/proftpd/parser.h
Xinclude/proftpd/pidfile.h
Xinclude/proftpd/pool.h
Xinclude/proftpd/pr-syslog.h
Xinclude/proftpd/privs.h
Xinclude/proftpd/proctitle.h
Xinclude/proftpd/proftpd.h
Xinclude/proftpd/regexp.h
Xinclude/proftpd/response.h
Xinclude/proftpd/scoreboard.h
Xinclude/proftpd/session.h
Xinclude/proftpd/sets.h
Xinclude/proftpd/stash.h
Xinclude/proftpd/str.h
Xinclude/proftpd/support.h
Xinclude/proftpd/table.h
Xinclude/proftpd/throttle.h
Xinclude/proftpd/timers.h
Xinclude/proftpd/tpl.h
Xinclude/proftpd/trace.h
Xinclude/proftpd/var.h
Xinclude/proftpd/version.h
Xinclude/proftpd/xferlog.h
Xlibdata/pkgconfig/proftpd.pc
Xsbin/ftpscrub
Xsbin/ftpshut
Xsbin/proftpd
X%%CTRLS_ADMIN%%sbin/ftpdctl
X%%NLS%%share/locale/bg_BG/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/en_US/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/fr_FR/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/it_IT/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/ja_JP/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/ko_KR/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/ru_RU/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/zh_CN/LC_MESSAGES/proftpd.mo
X%%NLS%%share/locale/zh_TW/LC_MESSAGES/proftpd.mo
X%%NLS%%@dirrmtry share/locale/bg_BG/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/en_US/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/fr_FR/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/it_IT/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/ja_JP/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/ko_KR/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/ru_RU/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/zh_CN/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/zh_TW/LC_MESSAGES
X%%NLS%%@dirrmtry share/locale/bg_BG
X%%NLS%%@dirrmtry share/locale/en_US
X%%NLS%%@dirrmtry share/locale/fr_FR
X%%NLS%%@dirrmtry share/locale/it_IT
X%%NLS%%@dirrmtry share/locale/ja_JP
X%%NLS%%@dirrmtry share/locale/ko_KR
X%%NLS%%@dirrmtry share/locale/ru_RU
X%%NLS%%@dirrmtry share/locale/zh_CN
X%%NLS%%@dirrmtry share/locale/zh_TW
X at dirrmtry etc/proftpd
X at dirrmtry lib/proftpd
X at dirrm include/proftpd
X at unexec rmdir %%LOCALSTATEDIR%%/proftpd 2>/dev/null || true
94cc88633dd9ba450c9acd9f7659a14e
echo x - proftpd/distinfo
sed 's/^X//' >proftpd/distinfo << '1b1800dccb36a5bd6413ddb143396e95'
XSHA256 (proftpd-1.3.4a.tar.bz2) = ad92eec86deccc385ac144e3925f9b9cbe085e60f10b33d1de6da91d32f39f3e
XSIZE (proftpd-1.3.4a.tar.bz2) = 6805631
1b1800dccb36a5bd6413ddb143396e95
echo x - proftpd/Makefile
sed 's/^X//' >proftpd/Makefile << '65160aed9e527ed1b3791030d487e754'
X# New ports collection makefile for:	proftpd
X# Date created:		26 January 1998
X# Whom:			Stephane Legrand
X#
X# $FreeBSD$
X#
X
XPORTNAME=	proftpd
XPORTVERSION=	1.3.4a
XCATEGORIES?=	ftp
XMASTER_SITES=	ftp://ftp.proftpd.org/distrib/source/ \
X		ftp://ftp.fastorama.com/mirrors/ftp.proftpd.org/distrib/source/ \
X		ftp://ftp.dataguard.no/ftp/pub/proftpd/distrib/source/ \
X		ftp://spirit.bentel.sk/mirrors/Proftpd/distrib/source/ \
X		ftp://proftpd.networkedsystems.co.uk/distrib/source/ \
X		http://mirrors.ibiblio.org/pub/mirrors/proftpd/distrib/source/ \
X		http://www.mirrorservice.org/sites/ftp.proftpd.org/distrib/source/ \
X		http://labratsoftware.com/mod_sql_tds/:sql_tds \
X		https://secure.thrallingpenguin.com/redmine/attachments/download/1/:clam \
X		LOCAL/beech:sql_tds
XDISTFILES=	${DISTNAME}${EXTRACT_SUFX}
XEXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
X
XMAINTAINER?=	mm at FreeBSD.org
XCOMMENT?=	Highly configurable ftp daemon
X
XLICENSE=	GPLv2
XLICENSE_FILE=	${WRKSRC}/COPYING
X
XMAN1=	ftpcount.1 ftpwho.1 ftptop.1 ftpquota.1 ftpmail.1 ftpasswd.1
XMAN5=	xferlog.5
XMAN8=	proftpd.8 ftpscrub.8 ftpshut.8 ftpdctl.8
X
XMAKE_JOBS_UNSAFE=	yes
XPORTDOCS=	*
X
XUSE_GMAKE=	yes
XUSE_BZIP2=	yes
XUSE_AUTOTOOLS=	autoconf
XGNU_CONFIGURE=	yes
X
XCONFLICTS=	proftpd-devel-1.[0-9].*
X
XUSE_RC_SUBR=	proftpd
X
XLOCALSTATEDIR?=	/var/run
X
XCONFIGURE_ARGS=	--localstatedir=${LOCALSTATEDIR} \
X		--with-pkgconfig=libdata/pkgconfig \
X		--sysconfdir=${PREFIX}/etc \
X		--enable-dso \
X		--disable-sendfile
X
XOPTIONS=	BAN "Include mod_ban (Requires CTRLS)" off \
X		CLAMAV "Include mod_clamav" off \
X		CTRLS "Include controls" off \
X		EXEC "Include mod_exec" off \
X		HTMLDOCS "Include HTML documentation" off \
X		IFSESSION "Include mod_ifsession" on \
X		IPV6 "Use IPv6" on \
X		LDAP "Use LDAP" off \
X		LDAP_TLS "Use LDAP TLS (Requires LDAP, OPENSSL)" off
X
X# Set the MYSQL option based upon the setting from the
X# slave port (ftp/proftpd-mysql).
X.if defined(WITH_MYSQL)
XOPTIONS+=	MYSQL "MySQL auth" on
X.else
XOPTIONS+=	MYSQL "MySQL auth" off
X.endif
X
XOPTIONS+=	NLS "Use nls (builds mod_lang)" on \
X		ODBC "ODBC" off \
X		OPENSSL "Include mod_tls" on \
X		PGSQL "Postgres auth" off \
X		QUOTA "Include mod_quota" off \
X		QUOTATAB_RADIUS "include mod_quotatab_radius" off \
X		SHAPER "Shaper module" off \
X		SQLITE "SQLite auth" off \
X		RADIUS "Include mod_radius" on \
X		RATIO "Include mod_ratio" on \
X		README "Include mod_readme" on \
X		REWRITE "Include mod_rewrite" on \
X		TLS_SHMCACHE "TLS SHM session cache (requires OPENSSL)" off \
X		TDS "Include mod_sql_tds" off \
X		SFTP "Include mod_sftp" off\
X		SFTP_SQL "Include mod_sftp_sql" off \
X		SFTP_PAM "Include mod_sftp_pam" off \
X		SITE_MISC "Include mod_site_misc" off \
X		SQL_PASSWD "Include mod_sql_passwd" off \
X		UNIQUE "Include mod_unique_id" off \
X		WRAP "Include mod_wrap2" on \
X		WRAP_FILE "Include mod_wrap2_file (requires WRAP)" off \
X		WRAP_SQL "Include mod_wrap2_sql (requires WRAP)" off
X
XMODULES?=
XLIBDIRS?=
XINCLUDEDIRS?=
X
XPLIST_SUB+=	LOCALSTATEDIR="${LOCALSTATEDIR}"
X
X.include <bsd.port.pre.mk>
X
X.if !defined(WITHOUT_RATIO)
XMODULES:=${MODULES}:mod_ratio
X.endif
X
X.if !defined(WITHOUT_README)
XMODULES:=${MODULES}:mod_readme
X.endif
X
X.if !defined(WITHOUT_REWRITE)
XMODULES:=${MODULES}:mod_rewrite
X.endif
X
X.if !defined(WITHOUT_WRAP)
XMODULES:=${MODULES}:mod_wrap2
XINCLUDEDIRS:=${INCLUDEDIRS}:${WORKDIR}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XPLIST_SUB+=	WRAP=""
X.else
XPLIST_SUB+=	WRAP="@comment "
X.endif
X
X.if ( defined(WITH_WRAP_FILE) || defined(WITH_WRAP_SQL) ) && defined(WITHOUT_WRAP)
XIGNORE=	options WRAP_FILE and WRAP_FILE_SQL require WRAP
X.endif
X
X.if defined(WITH_WRAP_FILE)
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XMODULES:=${MODULES}:mod_wrap2_file
X.endif
X
X.if defined(WITH_WRAP_SQL)
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XMODULES:=${MODULES}:mod_wrap2_sql
X.endif
X
X.if defined(WITH_EXEC)
XMODULES:=${MODULES}:mod_exec
X.endif
X
X.if defined(WITH_RADIUS)
XMODULES:=${MODULES}:mod_radius
X.endif
X
X.if defined(WITH_SHAPER)
XMODULES:=${MODULES}:mod_shaper
X.endif
X
X.if defined(WITH_SITE_MISC)
XMODULES:=${MODULES}:mod_site_misc
X.endif
X
X.if defined(WITH_QUOTATAB_RADIUS)
XMODULES:=${MODULES}:mod_quotatab_radius
X.endif
X
X.if defined(WITH_BAN)
X.if !defined(WITH_CTRLS)
XIGNORE=	option BAN requires CTRLS
X.endif
XMODULES:=${MODULES}:mod_ban
X.endif
X
X.if defined(WITH_UNIQUE)
XMODULES:=${MODULES}:mod_unique_id
X.endif
X
X.if defined(WITH_SETPASSENT)
XCONFIGURE_ARGS+=	--enable-force-setpassent
X.endif
X
X.if defined(WITHOUT_PAM)
XCONFIGURE_ARGS+=	--disable-auth-pam
X.endif
X
X.if defined(WITH_IPV6)
XCONFIGURE_ARGS+=	--enable-ipv6
X.else
XCONFIGURE_ARGS+=	--disable-ipv6
X.endif
X
X.if !defined(WITHOUT_NLS)
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XCONFIGURE_ARGS+=	--enable-nls
XUSE_GETTEXT=yes
XPROFTPD_LIBS+=	-lintl -L${LOCALBASE}/lib
XPLIST_SUB+=	NLS=""
X.else
XPLIST_SUB+=	NLS="@comment "
X.endif
X
X#allow user to override
XMODULES?=	mod_ratio:mod_readme:mod_rewrite:mod_wrap2:mod_ifsession:mod_lang
X
XINCLUDEDIRS?=
XLIBDIRS?=
X
X.if defined(WITH_LDAP)
XUSE_OPENLDAP=	yes
XMODULES:=${MODULES}:mod_ldap
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
X.endif
X
X# LDAP_TLS and TLS_SHMCACHE require OPENSSL
X.if ( defined(WITH_LDAP_TLS) || defined(WITH_TLS_SHMCACHE) ) && !defined(WITH_OPENSSL)
XIGNORE=	options LDAP_TLS and TLS_SHMCACHE require OPENSSL
X.endif
X
X# MYSQL, PGSQL, SQLITE, ODBC, TDS, SFTP_SQL and SQL_PASSWD require mod_sql
X.if defined(WITH_MYSQL) || defined(WITH_PGSQL) || \
Xdefined(WITH_SQLITE) || defined(WITH_ODBC) || defined(WITH_TDS) \
X|| defined(WITH_SFTP_SQL) || defined (WITH_SQL_PASSWD)
XMODULES:=${MODULES}:mod_sql
X.endif
X
X.if defined(WITH_MYSQL)
XUSE_MYSQL=	yes
XMODULES:=${MODULES}:mod_sql_mysql
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include:${LOCALBASE}/include/mysql:${WRKSRC}/contrib
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib/mysql
X.endif
X
X.if defined(WITH_PGSQL)
XUSE_PGSQL=	yes
XMODULES:=${MODULES}:mod_sql_postgres
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
X.endif
X
X.if defined(WITH_SQLITE)
XUSE_SQLITE=     yes
XMODULES:=${MODULES}:mod_sql_sqlite
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
X.endif
X
X.if defined(WITH_ODBC)
XLIB_DEPENDS=    iodbc.3:${PORTSDIR}/databases/libiodbc
XMODULES:=${MODULES}:mod_sql_odbc
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XCONFIGURE_ARGS+=LIBS=-liodbc LD_LIBRARY_PATH=${LOCALBASE}/lib LDFLAGS=-L${LOCALBASE}/lib
X.endif
X
X.if defined(WITH_TDS)
XDISTFILES+=	mod_sql_tds-4.13.tar.bz2:sql_tds
XEXTRACT_ONLY+=	mod_sql_tds-4.13.tar.bz2
XMODULES:=${MODULES}:mod_sql_tds
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XLIB_DEPENDS+=	sybdb.5:${PORTSDIR}/databases/freetds
X.endif
X
X.if defined(WITH_SQL_PASSWD)
XMODULES:=${MODULES}:mod_sql_passwd
X.endif
X
X.if ${MODULES:M*mod_sql*}
XPLIST_SUB+=	SQL=""
X.else
XPLIST_SUB+=	SQL="@comment "
X.endif
X
X.if defined(WITH_TLS_SHMCACHE)
XMODULES:=${MODULES}:mod_tls_shmcache
X.endif
X
X.if defined(WITH_OPENSSL)
X.include <${PORTSDIR}/Mk/bsd.openssl.mk>
XCFLAGS+=	-DHAVE_OPENSSL -I${OPENSSLINC}
XPROFTPD_LIBS+=	-lssl -lcrypto -L${OPENSSLLIB}
XMODULES:=${MODULES}:mod_tls
XPLIST_SUB+=	TLS=""
X.else
XPLIST_SUB+=	TLS="@comment "
X.endif
X
X.if defined(WITH_CTRLS)
XCONFIGURE_ARGS+=	--enable-ctrls
X.if !defined(WITHOUT_CTRLS_ADMIN)
XMODULES:=${MODULES}:mod_ctrls_admin
X.endif
XPLIST_SUB+=	CTRLS_ADMIN=""
X.else
XPLIST_SUB+=	CTRLS_ADMIN="@comment "
X.endif
X
X# LDAP, PGSQL and MYSQL options due nothing (in this case)
X# without QUOTA support.
X.if defined(WITH_QUOTA)
XMODULES:=${MODULES}:mod_quotatab:mod_quotatab_file
XPLIST_SUB+=	QUOTA=""
X.if defined(WITH_LDAP)
XMODULES:=${MODULES}:mod_quotatab_ldap
X.endif
X.if defined(WITH_PGSQL) || defined(WITH_MYSQL)
XMODULES:=${MODULES}:mod_quotatab_sql
X.endif
X.else
XPLIST_SUB+=	QUOTA="@comment "
X.endif
X
X.if defined(WITH_CLAMAV)
XDISTFILES+=	mod_clamav-0.11rc.tar.gz:clam
XEXTRA_PATCHES+=	${FILESDIR}/extra-patch-modules_mod_xfer.c
XUSE_CLAMAV=	yes
XMODULES:=${MODULES}:mod_clamav
XLIB_DEPENDS+=	clamav.7:${PORTSDIR}/security/clamav
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XPLIST_SUB+=	CLAMAV=""
X.else
XPLIST_SUB+=	CLAMAV="@comment "
X.endif
X
X.if defined(WITH_SFTP)
XMODULES:=${MODULES}:mod_sftp
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XPLIST_SUB+=     SFTP=""
X.else
XPLIST_SUB+=     SFTP="@comment "
X.endif
X
X.if defined(WITH_SFTP_SQL)
XMODULES:=${MODULES}:mod_sftp_sql
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XPLIST_SUB+=     SFTP_SQL=""
X.else
XPLIST_SUB+=     SFTP_SQL="@comment "
X.endif
X
X.if defined(WITH_SFTP_PAM)
XMODULES:=${MODULES}:mod_sftp_pam
XINCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
XLIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
XPLIST_SUB+=     SFTP_PAM=""
X.else
XPLIST_SUB+=     SFTP_PAM="@comment "
X.endif
X
X# mod_ifsession should be the last item in the modules list
X.if !defined(WITHOUT_IFSESSION)
XMODULES:=${MODULES}:mod_ifsession
X.endif
X
X# Keep this here below, in case similar constructs need to be made
XCONFIGURE_ENV+=	"LIBS=${PROFTPD_LIBS}"
X
X.if !empty(MODULES)
XCONFIGURE_ARGS+=	--with-modules=${MODULES:C/^://g}
X.endif
X
X.if !empty(INCLUDEDIRS)
XCONFIGURE_ARGS+=	--with-includes=${INCLUDEDIRS}
X.endif
X
X.if !empty(LIBDIRS)
XCONFIGURE_ARGS+=	--with-libraries=${LIBDIRS}
X.endif
X
Xpost-extract:
X.if defined(WITH_CLAMAV)
X	(cd ${WRKDIR} && ${GZIP_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/mod_clamav-0.11rc.tar.gz ${EXTRACT_AFTER_ARGS})
X	@${CP} ${WRKDIR}/mod_clamav-0.11rc/mod_clamav.* ${WRKSRC}/contrib
X.endif
X.if defined(WITH_TDS)
X	 @${MV} ${WRKDIR}/mod_sql_tds.c ${WRKSRC}/contrib/
X.endif
X
Xpost-patch:
X.if defined(WITH_NLS)
X	@${REINPLACE_CMD} -e 's|-lsupp|-lsupp -lintl|g' ${WRKSRC}/Makefile.in
X.endif
X.if defined(WITH_LDAP_TLS)
X	@${REINPLACE_CMD} -e 's:/\* #define USE_LDAP_TLS \*/:#define USE_LDAP_TLS:' \
X		${WRKSRC}/contrib/mod_ldap.c
X.endif
X	@${REINPLACE_CMD} -e 's|proftpd\.conf|proftpd.conf.sample|g' ${WRKSRC}/Makefile.in
X
Xpre-configure:
X	@${ECHO_MSG} "==> Configuring with ${MODULES:C/^://g}"
X
Xpost-configure:
X	${REINPLACE_CMD} -e 's: -lnsl::' ${WRKSRC}/Make.rules
X	${REINPLACE_CMD} -e 's:/usr/sbin:${PREFIX}/sbin:' \
X		-e 's:/usr/bin:${PREFIX}/bin:' \
X		${WRKSRC}/src/proftpd.8 ${WRKSRC}/utils/ftpshut.8 \
X		${WRKSRC}/utils/ftpcount.1
X
Xpost-install:
X	@cd  ${PREFIX}/etc/ && ${CP} -n proftpd.conf.sample proftpd.conf
X	@${MKDIR} ${LOCALSTATEDIR}/proftpd
X.if defined(WITH_SFTP)
X	@cd  ${PREFIX}/etc/proftpd && ${CP} -n dhparams.pem.sample dhparams.pem
X	@cd  ${PREFIX}/etc/proftpd && ${CP} -n blacklist.dat.sample blacklist.dat
X.endif
X.if !defined(NOPORTDOCS)
X	@${INSTALL} -d ${DOCSDIR}
X	@cd ${WRKSRC} && ${CP} README* RELEASE_NOTES ${DOCSDIR}
X	@cd ${WRKSRC}/doc/ && ${INSTALL_DATA} license.txt ${DOCSDIR}
X. if defined(WITH_HTMLDOCS)
X	@${INSTALL} -d ${DOCSDIR}/html
X	@cd ${WRKSRC}/doc/ && ${INSTALL_DATA} Configuration.html faq.html ${DOCSDIR}/html
X	@${CP} -RP ${WRKSRC}/doc/contrib ${DOCSDIR}/html/contrib
X	@${CP} -RP ${WRKSRC}/doc/modules ${DOCSDIR}/html/modules
X	@${CP} -RP ${WRKSRC}/doc/howto ${DOCSDIR}/html/howto
X. endif
X.endif
X.if defined(WITH_CTRLS)
X	@${INSTALL_PROGRAM} ${WRKSRC}/ftpdctl ${PREFIX}/sbin/
X	@${INSTALL_MAN} ${WRKSRC}/src/ftpdctl.8 ${MAN8PREFIX}/man/man8/
X.endif
X
X.include <bsd.port.post.mk>
65160aed9e527ed1b3791030d487e754
echo c - proftpd/files
mkdir -p proftpd/files > /dev/null 2>&1
echo x - proftpd/files/patch-src-wtmp.c
sed 's/^X//' >proftpd/files/patch-src-wtmp.c << '60a4d9747b5cd2305e5997393b17340a'
X--- src/wtmp.c.orig	2010-07-05 09:52:50.147213835 +0200
X+++ src/wtmp.c	2010-07-05 09:53:25.075513542 +0200
X@@ -126,7 +126,9 @@
X   }
X 
X #else /* Non-SVR4 systems */
X+#if !defined(__FreeBSD_version) || __FreeBSD_version < 900007 || !defined(HAVE_UTMPX_H)
X   struct utmp ut;
X+#endif
X   static int fd = -1;
X 
X   if (fd < 0 &&
60a4d9747b5cd2305e5997393b17340a
echo x - proftpd/files/patch-sample-configurations_basic.conf
sed 's/^X//' >proftpd/files/patch-sample-configurations_basic.conf << '672c5d299881a7491db4a6e9e86f4489'
X--- sample-configurations/basic.conf.orig	2008-01-21 08:44:06.000000000 -0900
X+++ sample-configurations/basic.conf	2009-01-28 11:25:31.000000000 -0900
X@@ -1,3 +1,7 @@
X+#
X+# For more informations about Proftpd configuration
X+# look at : http://www.proftpd.org/
X+#
X # This is a basic ProFTPD configuration file (rename it to 
X # 'proftpd.conf' for actual use.  It establishes a single server
X # and a single anonymous login.  It assumes that you have a user/group
X@@ -6,12 +10,13 @@
X ServerName			"ProFTPD Default Installation"
X ServerType			standalone
X DefaultServer			on
X+ScoreboardFile		/var/run/proftpd/proftpd.scoreboard
X 
X # Port 21 is the standard FTP port.
X Port				21
X 
X-# Don't use IPv6 support by default.
X-UseIPv6				off
X+# Use IPv6 support by default.
X+UseIPv6				on
X 
X # Umask 022 is a good standard umask to prevent new dirs and files
X # from being group and world writable.
X@@ -25,6 +30,8 @@
X # (such as xinetd).
X MaxInstances			30
X 
X+CommandBufferSize	512
X+
X # Set the user and group under which the server will run.
X User				nobody
X Group				nogroup
X@@ -43,23 +50,31 @@
X 
X # A basic anonymous configuration, no upload directories.  If you do not
X # want anonymous users, simply delete this entire <Anonymous> section.
X-<Anonymous ~ftp>
X-  User				ftp
X-  Group				ftp
X-
X-  # We want clients to be able to login with "anonymous" as well as "ftp"
X-  UserAlias			anonymous ftp
X-
X-  # Limit the maximum number of anonymous logins
X-  MaxClients			10
X-
X-  # We want 'welcome.msg' displayed at login, and '.message' displayed
X-  # in each newly chdired directory.
X-  DisplayLogin			welcome.msg
X-  DisplayChdir			.message
X-
X-  # Limit WRITE everywhere in the anonymous chroot
X-  <Limit WRITE>
X-    DenyAll
X-  </Limit>
X-</Anonymous>
X+
X+#########################################################################
X+#                                                                       #
X+# Uncomment lines with only one # to allow basic anonymous access       #
X+#                                                                       #
X+#########################################################################
X+
X+#<Anonymous ~ftp>
X+#   User				ftp
X+#   Group				ftp
X+
X+  ### We want clients to be able to login with "anonymous" as well as "ftp"
X+  # UserAlias			anonymous ftp
X+
X+  ### Limit the maximum number of anonymous logins
X+  # MaxClients			10
X+
X+  ### We want 'welcome.msg' displayed at login, and '.message' displayed
X+  ### in each newly chdired directory.
X+  # DisplayLogin			welcome.msg
X+  # DisplayFirstChdir		.message
X+
X+  ### Limit WRITE everywhere in the anonymous chroot
X+  # <Limit WRITE>
X+  #   DenyAll
X+  # </Limit>
X+#</Anonymous>
X+
672c5d299881a7491db4a6e9e86f4489
echo x - proftpd/files/proftpd.in
sed 's/^X//' >proftpd/files/proftpd.in << '3e25aa6a181417ca418a3566d8374214'
X#!/bin/sh
X#
X# $FreeBSD: ports/ftp/proftpd/files/proftpd.in,v 1.1 2010/01/04 04:34:07 pgollucci Exp $
X#
X
X# PROVIDE: proftpd
X# REQUIRE: DAEMON
X# BEFORE: LOGIN
X# KEYWORD: shutdown
X
X#
X# Add the following lines to /etc/rc.conf to enable proftpd:
X#
X# proftpd_enable="YES"
X# proftpd_flags="<set as needed>"
X#
X# See proftpd(8) for flags
X#
X
X. /etc/rc.subr
X
Xname=proftpd
Xrcvar=`set_rcvar`
X
Xcommand=%%PREFIX%%/sbin/proftpd
Xpidfile=$(grep PidFile /usr/local/etc/proftpd.conf | awk '{print($2)}')
Xrequired_files=%%PREFIX%%/etc/proftpd.conf
X
Xstop_postcmd=stop_postcmd
X
Xstop_postcmd()
X{
X  rm -f $pidfile
X}
X
X# set defaults
X
Xproftpd_enable=${proftpd_enable:-"NO"}
X
Xextra_commands="reload"
X
Xload_rc_config $name
Xrun_rc_command "$1"
3e25aa6a181417ca418a3566d8374214
echo x - proftpd/files/extra-patch-modules_mod_xfer.c
sed 's/^X//' >proftpd/files/extra-patch-modules_mod_xfer.c << '28100a5e68997d231c44e668bacc50cf'
X--- modules/mod_xfer.c.org	Tue Jan  1 12:31:32 2008
X+++ modules/mod_xfer.c	Tue Jan  1 16:45:20 2008
X@@ -42,6 +42,8 @@
X #include <regex.h>
X #endif
X 
X+#include "mod_clamav.h"
X+
X extern module auth_module;
X extern pid_t mpid;
X 
X@@ -1582,6 +1584,11 @@
X       return PR_ERROR(cmd);
X     }
X 
X+	if (clamav_scan(cmd)) {
X+		pr_data_close(FALSE);
X+		return PR_ERROR(cmd);
X+	}
X+	
X     if (session.xfer.path &&
X         session.xfer.path_hidden) {
X       if (pr_fsio_rename(session.xfer.path_hidden, session.xfer.path) != 0) {
28100a5e68997d231c44e668bacc50cf
echo x - proftpd/files/patch-doc::Configuration.html
sed 's/^X//' >proftpd/files/patch-doc::Configuration.html << '475099efa59d2292942e99375c6ec0a6'
X--- ./doc/Configuration.html.orig	Wed Jan 29 12:27:24 2003
X+++ ./doc/Configuration.html	Sat Mar 15 11:34:14 2003
X@@ -4226,7 +4226,7 @@
X ></DT
X ><DD
X ><P
X->ftp</P
X+>ftpd</P
X ></DD
X ><DT
X ><PRE
X@@ -32252,4 +32252,4 @@
X ></DIV
X ></BODY
X ></HTML
X->
X\ No newline at end of file
X+>
475099efa59d2292942e99375c6ec0a6
echo x - proftpd/files/patch-contrib-mod_sftp-Makefile.in
sed 's/^X//' >proftpd/files/patch-contrib-mod_sftp-Makefile.in << 'afac0e61d73539123788548897a77956'
X--- contrib/mod_sftp/Makefile.in.orig	2009-09-16 08:09:57.000000000 +0200
X+++ contrib/mod_sftp/Makefile.in	2010-03-24 17:38:46.947039120 +0100
X@@ -45,8 +45,9 @@
X 	fi
X 
X install-misc:
X-	$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 dhparams.pem $(DESTDIR)$(sysconfdir)/dhparams.pem 
X-	$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 blacklist.dat $(DESTDIR)$(sysconfdir)/blacklist.dat
X+	$(INSTALL) -d -m 0755 $(DESTDIR)$(sysconfdir)/proftpd
X+	$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 dhparams.pem $(DESTDIR)$(sysconfdir)/proftpd/dhparams.pem.sample
X+	$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 blacklist.dat $(DESTDIR)$(sysconfdir)/proftpd/blacklist.dat.sample
X 
X clean:
X 	$(RM) $(MODULE_NAME).a *.o *.la *.lo
afac0e61d73539123788548897a77956
echo x - proftpd/files/patch-src_proftpd.8.in
sed 's/^X//' >proftpd/files/patch-src_proftpd.8.in << '3939994806628bbede18fe2e225d0c1c'
X--- src/proftpd.8.in.orig	Sat Sep 18 07:40:30 2004
X+++ src/proftpd.8.in	Thu Nov  3 15:35:56 2005
X@@ -22,6 +22,12 @@
X connection to the FTP service is made, or alternatively it can be run as a
X standalone daemon.
X .PP
X+.br
X+Each successful and failed ftp(1) session is logged using syslog with a
X+facility of LOG_FTP.  Note: LOG_FTP messages are not displayed
X+by syslogd(8) by default, and may have to be enabled in syslogd(8)'s 
X+configuration file.
X+.PP
X When
X .B proftpd
X is run in standalone mode and it receives a SIGHUP then it will reread its
3939994806628bbede18fe2e225d0c1c
echo x - proftpd/pkg-descr
sed 's/^X//' >proftpd/pkg-descr << 'ed31a62aa2059ae0b43d3ecb43623f3a'
XProFTPD is a highly configurable ftp daemon for unix
Xand unix-like operating systems. ProFTPD is designed
Xto be somewhat of a "drop-in" replacement for wu-ftpd
Xwith a configuration format like Apache.
X
XFull online documentation is available at
Xhttp://www.proftpd.org/, including a server
Xconfiguration directive reference manual.
X
XWWW: http://www.proftpd.org/
ed31a62aa2059ae0b43d3ecb43623f3a
exit



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list