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