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