rpms/proftpd/FC-4 proftpd-1.3.0-ctrls-restart.patch, NONE, 1.1 proftpd-1.3.0-rpath.patch, NONE, 1.1 .cvsignore, 1.5, 1.6 proftpd.conf, 1.5, 1.6 proftpd.init, 1.4, 1.5 proftpd.spec, 1.9, 1.10 sources, 1.5, 1.6
Matthias Saou (thias)
fedora-extras-commits at redhat.com
Wed Aug 23 14:45:53 UTC 2006
Author: thias
Update of /cvs/extras/rpms/proftpd/FC-4
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv9488/FC-4
Modified Files:
.cvsignore proftpd.conf proftpd.init proftpd.spec sources
Added Files:
proftpd-1.3.0-ctrls-restart.patch proftpd-1.3.0-rpath.patch
Log Message:
Add mod_quotatab, _file, _ldap and _sql (#134291) + backport 1.3.0 to FC-4.
proftpd-1.3.0-ctrls-restart.patch:
--- NEW FILE proftpd-1.3.0-ctrls-restart.patch ---
Index: modules/mod_ctrls.c
===================================================================
RCS file: /cvsroot/proftp/proftpd/modules/mod_ctrls.c,v
retrieving revision 1.30
diff -u -r1.30 mod_ctrls.c
--- modules/mod_ctrls.c 11 Nov 2005 21:05:32 -0000 1.30
+++ modules/mod_ctrls.c 23 May 2006 17:31:51 -0000
@@ -3,7 +3,7 @@
* server, as well as several utility functions for other Controls
* modules
*
- * Copyright (c) 2000-2005 TJ Saunders
+ * Copyright (c) 2000-2006 TJ Saunders
*
* 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
@@ -34,7 +34,7 @@
#include "privs.h"
#include "mod_ctrls.h"
-#define MOD_CTRLS_VERSION "mod_ctrls/0.9.3"
+#define MOD_CTRLS_VERSION "mod_ctrls/0.9.4"
/* Master daemon in standalone mode? (from src/main.c) */
extern unsigned char is_master;
@@ -518,7 +518,7 @@
} else if (res == PR_LOG_WRITABLE_DIR) {
pr_log_pri(PR_LOG_NOTICE, MOD_CTRLS_VERSION
": unable to open ControlsLog '%s': "
- "containing directory is world writeable", ctrls_logname);
+ "containing directory is world writable", ctrls_logname);
} else if (res == PR_LOG_SYMLINK) {
pr_log_pri(PR_LOG_NOTICE, MOD_CTRLS_VERSION
@@ -1476,7 +1476,7 @@
if (res == -2)
CONF_ERROR(cmd, pstrcat(cmd->tmp_pool,
- "unable to log to a world-writeable directory", NULL));
+ "unable to log to a world-writable directory", NULL));
}
return HANDLED(cmd);
@@ -1506,10 +1506,12 @@
CONF_ERROR(cmd, "must be an absolute path");
/* Close the socket. */
- pr_log_debug(DEBUG3, MOD_CTRLS_VERSION ": closing ctrls socket '%s'",
- ctrls_sock_file);
- close(ctrls_sockfd);
- ctrls_sockfd = -1;
+ if (ctrls_sockfd >= 0) {
+ pr_log_debug(DEBUG3, MOD_CTRLS_VERSION ": closing ctrls socket '%s' (%d)",
+ ctrls_sock_file, ctrls_sockfd);
+ close(ctrls_sockfd);
+ ctrls_sockfd = -1;
+ }
/* Change the path. */
if (strcmp(cmd->argv[1], ctrls_sock_file) != 0)
@@ -1608,9 +1610,28 @@
PRIVS_ROOT
ctrls_sockfd = ctrls_listen(ctrls_sock_file);
PRIVS_RELINQUISH
- if (ctrls_sockfd < 0)
+ if (ctrls_sockfd < 0) {
pr_log_pri(PR_LOG_NOTICE, "notice: unable to listen to local socket: %s",
strerror(errno));
+
+ } else {
+ /* Ensure that the listen socket used is not one of the major three
+ * (stdin, stdout, or stderr).
+ */
+ if (ctrls_sockfd < 3) {
+ if (dup2(ctrls_sockfd, 3) < 0) {
+ pr_log_pri(PR_LOG_NOTICE, MOD_CTRLS_VERSION
+ ": error duplicating listen socket: %s", strerror(errno));
+ (void) close(ctrls_sockfd);
+ ctrls_sockfd = -1;
+
+ } else {
+ (void) close(ctrls_sockfd);
+ ctrls_sockfd = 3;
+ }
+ }
+ }
+
}
static void ctrls_restart_ev(const void *event_data, void *user_data) {
@@ -1633,10 +1654,11 @@
cl_list = NULL;
cl_listlen = 0;
- pr_log_debug(DEBUG3, MOD_CTRLS_VERSION ": closing ctrls socket '%s'",
- ctrls_sock_file);
+ pr_log_debug(DEBUG3, MOD_CTRLS_VERSION ": closing ctrls socket '%s' (%d)",
+ ctrls_sock_file, ctrls_sockfd);
close(ctrls_sockfd);
ctrls_sockfd = -1;
+
ctrls_closelog();
/* Clear the existing pool */
proftpd-1.3.0-rpath.patch:
--- NEW FILE proftpd-1.3.0-rpath.patch ---
diff -Naupr proftpd-1.3.0.orig/configure proftpd-1.3.0/configure
--- proftpd-1.3.0.orig/configure 2006-03-09 19:20:04.000000000 +0100
+++ proftpd-1.3.0.orig/configure 2006-03-09 19:20:04.000000000 +0100
@@ -19660,7 +19660,7 @@ if test "${enable_dso+set}" = set; then
ac_build_core_modules="$ac_build_core_modules modules/mod_dso.o"
ac_build_addl_includes="$INCLTDL $ac_build_addl_includes"
- MAIN_LDFLAGS="-L\$(top_srcdir)/lib/libltdl -dlopen self -export-dynamic -rpath \$(DESTDIR)\$(sbindir)"
+ MAIN_LDFLAGS="-L\$(top_srcdir)/lib/libltdl -dlopen self -export-dynamic"
MAIN_LIBS="\$(LIBLTDL)"
MODULE_LDFLAGS="-avoid-version -export-dynamic -module"
diff -Naupr proftpd-1.3.0.orig/configure.in proftpd-1.3.0/configure.in
--- proftpd-1.3.0.orig/configure.in 2006-03-09 19:12:35.000000000 +0100
+++ proftpd-1.3.0.orig/configure.in 2006-03-09 19:12:35.000000000 +0100
@@ -372,7 +372,7 @@ AC_ARG_ENABLE(dso,
ac_build_core_modules="$ac_build_core_modules modules/mod_dso.o"
ac_build_addl_includes="$INCLTDL $ac_build_addl_includes"
- MAIN_LDFLAGS="-L\$(top_srcdir)/lib/libltdl -dlopen self -export-dynamic -rpath \$(DESTDIR)\$(sbindir)"
+ MAIN_LDFLAGS="-L\$(top_srcdir)/lib/libltdl -dlopen self -export-dynamic"
MAIN_LIBS="\$(LIBLTDL)"
MODULE_LDFLAGS="-avoid-version -export-dynamic -module"
Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/proftpd/FC-4/.cvsignore,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- .cvsignore 13 Dec 2004 18:00:15 -0000 1.5
+++ .cvsignore 23 Aug 2006 14:45:53 -0000 1.6
@@ -1 +1 @@
-proftpd-1.2.10.tar.bz2
+proftpd-1.3.0.tar.bz2
Index: proftpd.conf
===================================================================
RCS file: /cvs/extras/rpms/proftpd/FC-4/proftpd.conf,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- proftpd.conf 1 Aug 2005 15:17:48 -0000 1.5
+++ proftpd.conf 23 Aug 2006 14:45:53 -0000 1.6
@@ -58,6 +58,10 @@
User nobody
Group nobody
+# Disable sendfile by default since it breaks displaying the download speeds in
+# ftptop and ftpwho
+UseSendfile no
+
# This is where we want to put the pid file
ScoreboardFile /var/run/proftpd.score
@@ -77,14 +81,22 @@
# Explained at http://www.castaglia.org/proftpd/modules/mod_tls.html
#TLSEngine on
#TLSRequired on
-#TLSRSACertificateFile /usr/share/ssl/certs/proftpd.pem
-#TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd.pem
+#TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem
+#TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem
#TLSCipherSuite ALL:!ADH:!DES
#TLSOptions NoCertRequest
#TLSVerifyClient off
##TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
#TLSLog /var/log/proftpd/tls.log
+# SQL authentication Dynamic Shared Object (DSO) loading
+# See README.DSO and howto/DSO.html for more details.
+#<IfModule mod_dso.c>
+# LoadModule mod_sql.c
+# LoadModule mod_sql_mysql.c
+# LoadModule mod_sql_postgres.c
+#</IfModule>
+
# A basic anonymous configuration, with an upload directory.
#<Anonymous ~ftp>
# User ftp
Index: proftpd.init
===================================================================
RCS file: /cvs/extras/rpms/proftpd/FC-4/proftpd.init,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- proftpd.init 16 Nov 2004 18:34:32 -0000 1.4
+++ proftpd.init 23 Aug 2006 14:45:53 -0000 1.5
@@ -32,7 +32,7 @@
start() {
echo -n $"Starting $prog: "
- daemon proftpd
+ daemon proftpd 2>/dev/null
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd
Index: proftpd.spec
===================================================================
RCS file: /cvs/extras/rpms/proftpd/FC-4/proftpd.spec,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- proftpd.spec 1 Aug 2005 21:57:52 -0000 1.9
+++ proftpd.spec 23 Aug 2006 14:45:53 -0000 1.10
@@ -1,7 +1,7 @@
Summary: Flexible, stable and highly-configurable FTP server
Name: proftpd
-Version: 1.2.10
-Release: 6%{?_with_ldap:_ldap}%{?_with_mysql:_mysql}%{?_with_postgresql:_pgsql}%{?dist}
+Version: 1.3.0
+Release: 6%{?dist}
License: GPL
Group: System Environment/Daemons
URL: http://www.proftpd.org/
@@ -12,19 +12,17 @@
Source4: proftpd.logrotate
Source5: welcome.msg
Source6: proftpd.pam
+Patch0: proftpd-1.3.0-rpath.patch
+Patch1: proftpd-1.3.0-ctrls-restart.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
-Requires: pam >= 0.59, /sbin/service, /sbin/chkconfig
-BuildRequires: pam-devel, perl, ncurses-devel, pkgconfig
-%{!?_without_tls:Requires: openssl}
-%{!?_without_tls:BuildRequires: openssl-devel, krb5-devel}
-%{?_with_ldap:Requires: openldap}
-%{?_with_ldap:BuildRequires: openldap-devel}
-%{?_with_mysql:Requires: mysql}
-%{?_with_mysql:BuildRequires: mysql-devel, zlib-devel}
-%{?_with_postgresql:Requires: postgresql-libs}
-%{?_with_postgresql:BuildRequires: postgresql-devel}
+Requires: pam >= 0.59
+Requires(post): /sbin/chkconfig
+Requires(preun): /sbin/service, /sbin/chkconfig
+Requires(postun): /sbin/service
+BuildRequires: pam-devel, ncurses-devel, pkgconfig
+BuildRequires: openssl-devel, krb5-devel, libacl-devel
+BuildRequires: openldap-devel, mysql-devel, zlib-devel, postgresql-devel
Provides: ftpserver
-Conflicts: wu-ftpd, anonftp, vsftpd
%description
ProFTPD is an enhanced FTP server with a focus toward simplicity, security,
@@ -36,51 +34,75 @@
This package defaults to the standalone behaviour of ProFTPD, but all the
needed scripts to have it run by xinetd instead are included.
-Available rpmbuild rebuild options :
---without : tls
---with : ldap mysql postgresql
+
+%package ldap
+Summary: Module to add LDAP support to the ProFTPD FTP server
+Group: System Environment/Daemons
+Requires: %{name} = %{version}-%{release}
+
+%description ldap
+Module to add LDAP support to the ProFTPD FTP server.
+
+
+%package mysql
+Summary: Module to add MySQL support to the ProFTPD FTP server
+Group: System Environment/Daemons
+Requires: %{name} = %{version}-%{release}
+
+%description mysql
+Module to add MySQL support to the ProFTPD FTP server.
+
+
+%package postgresql
+Summary: Module to add PostgreSQL support to the ProFTPD FTP server
+Group: System Environment/Daemons
+Requires: %{name} = %{version}-%{release}
+
+%description postgresql
+Module to add PostgreSQL support to the ProFTPD FTP server.
%prep
%setup
+%patch0 -p1 -b .rpath
+%patch1 -p0 -b .ctrls-restart
%build
-# Workaround for the PostgreSQL include file
-%{__perl} -pi -e 's|pgsql/libpq-fe.h|libpq-fe.h|g' contrib/mod_sql_postgres.c
-
# Disable stripping in order to get useful debuginfo packages
%{__perl} -pi -e 's|"-s"|""|g' configure
-# TLS includes
-OPENSSL_INC=""
-if OPENSSL_CFLAGS=`pkg-config --cflags openssl`; then
- for i in ${OPENSSL_CFLAGS}; do
- INCPATH=`echo $i | perl -pi -e 's|-I([a-z/]*)|$1|g'`
- test ! -z ${INCPATH} && OPENSSL_INC="${OPENSSL_INC}:${INCPATH}"
- done
-fi
-
%configure \
- --localstatedir="/var/run" \
- --with-includes="%{_includedir}%{!?_without_tls:${OPENSSL_INC}}%{?_with_mysql::%{_includedir}/mysql}" \
- %{?_with_mysql:--with-libraries="%{_libdir}/mysql"} \
- %{?_with_postgresql:--with-libraries="%{_libdir}"} \
- --with-modules=mod_readme:mod_auth_pam%{?_with_ldap::mod_ldap}%{?_with_mysql::mod_sql:mod_sql_mysql}%{?_with_postgresql::mod_sql:mod_sql_postgres}%{!?_without_tls::mod_tls}
+ --libexecdir="%{_libexecdir}/proftpd" \
+ --localstatedir="%{_var}/run" \
+ --enable-ctrls \
+ --enable-facl \
+ --enable-dso \
+ --enable-ipv6 \
+ --with-libraries="%{_libdir}/mysql" \
+ --with-includes="%{_includedir}/mysql" \
+ --with-modules=mod_readme:mod_auth_pam:mod_tls \
+ --with-shared=mod_ldap:mod_sql:mod_sql_mysql:mod_sql_postgres:mod_quotatab:mod_quotatab_file:mod_quotatab_ldap:mod_quotatab_sql
+
%{__make} %{?_smp_mflags}
%install
%{__rm} -rf %{buildroot}
-%makeinstall rundir="%{buildroot}%{_localstatedir}/run/proftpd" \
+%{__make} install DESTDIR=%{buildroot} \
+ rundir="%{_var}/run/proftpd" \
INSTALL_USER=`id -un` \
INSTALL_GROUP=`id -gn`
-%{__install} -D -m 640 %{SOURCE1} %{buildroot}%{_sysconfdir}/proftpd.conf
-%{__install} -D -m 755 %{SOURCE2} %{buildroot}%{_sysconfdir}/rc.d/init.d/proftpd
-%{__install} -D -m 640 %{SOURCE3} %{buildroot}%{_sysconfdir}/xinetd.d/xproftpd
-%{__install} -D -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/logrotate.d/proftpd
-%{__install} -D -m 644 %{SOURCE5} %{buildroot}/var/ftp/welcome.msg
-%{__install} -D -m 644 %{SOURCE6} %{buildroot}%{_sysconfdir}/pam.d/proftpd
+%{__install} -D -p -m 0640 %{SOURCE1} \
+ %{buildroot}%{_sysconfdir}/proftpd.conf
+%{__install} -D -p -m 0755 %{SOURCE2} \
+ %{buildroot}%{_sysconfdir}/rc.d/init.d/proftpd
+%{__install} -D -p -m 0640 %{SOURCE3} \
+ %{buildroot}%{_sysconfdir}/xinetd.d/xproftpd
+%{__install} -D -p -m 0644 %{SOURCE4} \
+ %{buildroot}%{_sysconfdir}/logrotate.d/proftpd
+%{__install} -D -p -m 0644 %{SOURCE5} %{buildroot}/var/ftp/welcome.msg
+%{__install} -D -p -m 0644 %{SOURCE6} %{buildroot}%{_sysconfdir}/pam.d/proftpd
%{__mkdir_p} %{buildroot}/var/ftp/uploads
%{__mkdir_p} %{buildroot}/var/ftp/pub
%{__mkdir_p} %{buildroot}/var/log/proftpd
@@ -92,7 +114,7 @@
%post
-if [ $1 = 1 ]; then
+if [ $1 -eq 1 ]; then
/sbin/chkconfig --add proftpd
IFS=":"; cat /etc/passwd | \
while { read username nu nu gid nu nu nu nu; }; do \
@@ -103,12 +125,12 @@
fi
%preun
-if [ $1 = 0 ]; then
+if [ $1 -eq 0 ]; then
/sbin/service proftpd stop &>/dev/null || :
/sbin/chkconfig --del proftpd
/sbin/service xinetd reload &>/dev/null || :
- if [ -d /var/run/proftpd ]; then
- rm -rf /var/run/proftpd/*
+ if [ -d %{_var}/run/proftpd ]; then
+ rm -rf %{_var}/run/proftpd/*
fi
fi
@@ -126,11 +148,17 @@
%config(noreplace) %{_sysconfdir}/proftpd.conf
%config(noreplace) %{_sysconfdir}/xinetd.d/xproftpd
%config %{_sysconfdir}/ftpusers
-%config %{_sysconfdir}/pam.d/proftpd
-%config %{_sysconfdir}/logrotate.d/proftpd
+%config(noreplace) %{_sysconfdir}/pam.d/proftpd
+%config(noreplace) %{_sysconfdir}/logrotate.d/proftpd
%{_sysconfdir}/rc.d/init.d/proftpd
%{_mandir}/*/*
%{_bindir}/*
+%dir %{_libexecdir}/proftpd/
+%{_libexecdir}/proftpd/mod_quotatab.so
+%{_libexecdir}/proftpd/mod_quotatab_file.so
+%{_libexecdir}/proftpd/mod_sql.so
+%exclude %{_libexecdir}/proftpd/*.a
+%exclude %{_libexecdir}/proftpd/*.la
%{_sbindir}/*
%dir /var/ftp/
%attr(331, ftp, ftp) %dir /var/ftp/uploads/
@@ -138,8 +166,71 @@
%config(noreplace) /var/ftp/welcome.msg
%attr(750, root, root) %dir /var/log/proftpd/
+%files ldap
+%defattr(-, root, root, 0755)
+%dir %{_libexecdir}/proftpd/
+%{_libexecdir}/proftpd/mod_ldap.so
+%{_libexecdir}/proftpd/mod_quotatab_ldap.so
+
+%files mysql
+%defattr(-, root, root, 0755)
+%dir %{_libexecdir}/proftpd/
+%{_libexecdir}/proftpd/mod_sql_mysql.so
+%{_libexecdir}/proftpd/mod_quotatab_sql.so
+
+%files postgresql
+%defattr(-, root, root, 0755)
+%dir %{_libexecdir}/proftpd/
+%{_libexecdir}/proftpd/mod_sql_postgres.so
+%{_libexecdir}/proftpd/mod_quotatab_sql.so
+
%changelog
+* Mon Aug 23 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-6
+- Add mod_quotatab, _file, _ldap and _sql (#134291).
+
+* Mon Jul 3 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-5
+- Disable sendfile by default since it breaks displaying the download speed in
+ ftptop and ftpwho (#196913).
+
+* Mon Jun 19 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-4
+- Include ctrls restart patch, see #195884 (patch from proftpd.org #2792).
+
+* Wed May 10 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-3
+- Add commented section about DSO loading to the default proftpd.conf.
+- Update TLS cert paths in the default proftpd.conf to /etc/pki/tls.
+
+* Fri Apr 28 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-2
+- Mark pam.d and logrotate.d config files as noreplace.
+- Include patch to remove -rpath to DESTDIR/usr/sbin/ in the proftpd binary
+ when DSO is enabled (#190122).
+
+* Fri Apr 21 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-1
+- Update to 1.3.0 final.
+- Remove no longer needed PostgreSQL and OpenSSL detection workarounds.
+- Remove explicit conflicts on wu-ftpd, anonftp and vsftpd to let people
+ install more than one ftp daemon (what for? hmm...) (#189023).
+- Enable LDAP, MySQL and PostgreSQL as DSOs by default, and stuff them in
+ new sub-packages. This won't introduce any regression since they weren't
+ enabled by default.
+- Remove useless explicit requirements.
+- Rearrange scriplets requirements.
+- Enable ctrls (controls via ftpdctl) and facl (POSIX ACLs).
+- Using --disable-static makes the build fail, so exclude .a files in %%files.
+- Silence harmless IPv6 failure message at startup when IPv6 isn't available.
+
+* Tue Mar 7 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-0.2.rc4
+- Update to 1.3.0rc4 (bugfix release).
+
+* Mon Mar 6 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-0.2.rc3
+- FC5 rebuild.
+
+* Thu Feb 9 2006 Matthias Saou <http://freshrpms.net/> 1.3.0-0.1.rc3
+- Update to 1.3.0rc3, which builds with the latest openssl.
+
+* Thu Nov 17 2005 Matthias Saou <http://freshrpms.net/> 1.2.10-7
+- Rebuild against new openssl library... not.
+
* Wed Jul 13 2005 Matthias Saou <http://freshrpms.net/> 1.2.10-6
- The provided pam.d file no longer works, use our own based on the one from
the vsftpd package (#163026).
Index: sources
===================================================================
RCS file: /cvs/extras/rpms/proftpd/FC-4/sources,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- sources 13 Dec 2004 18:00:15 -0000 1.5
+++ sources 23 Aug 2006 14:45:53 -0000 1.6
@@ -1 +1 @@
-5feb4a7348e12faefc25e34fd92efdd6 proftpd-1.2.10.tar.bz2
+fae47d01b52e035eb6b7190e74c17722 proftpd-1.3.0.tar.bz2
More information about the fedora-extras-commits
mailing list