rpms/proftpd/F-11 proftpd-1.3.2-parallel-build.patch, NONE, 1.1 proftpd-1.3.2a-defines.patch, NONE, 1.1 proftpd-1.3.2rc3-nostrip.patch, NONE, 1.1 proftpd.sysconfig, NONE, 1.1 .cvsignore, 1.13, 1.14 proftpd.conf, 1.9, 1.10 proftpd.init, 1.6, 1.7 proftpd.spec, 1.47, 1.48 sources, 1.13, 1.14 proftpd-1.3.1-find-umode_t.patch, 1.1, NONE

Paul Howarth pghmcfc at fedoraproject.org
Mon Aug 3 12:46:17 UTC 2009


Author: pghmcfc

Update of /cvs/pkgs/rpms/proftpd/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv5947/F-11

Modified Files:
	.cvsignore proftpd.conf proftpd.init proftpd.spec sources 
Added Files:
	proftpd-1.3.2-parallel-build.patch 
	proftpd-1.3.2a-defines.patch proftpd-1.3.2rc3-nostrip.patch 
	proftpd.sysconfig 
Removed Files:
	proftpd-1.3.1-find-umode_t.patch 
Log Message:
Sync with devel

proftpd-1.3.2-parallel-build.patch:
 Makefile.in |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--- NEW FILE proftpd-1.3.2-parallel-build.patch ---
diff -ru proftpd-1.3.2-orig/Makefile.in proftpd-1.3.2/Makefile.in
--- proftpd-1.3.2-orig/Makefile.in	2008-11-19 04:51:38.000000000 +0100
+++ proftpd-1.3.2/Makefile.in	2009-02-16 14:28:43.000000000 +0100
@@ -54,13 +54,13 @@
 proftpd$(EXEEXT): lib src modules dirs locale
 	$(LIBTOOL) --mode=link --tag=CC $(CC) $(LDFLAGS) $(MAIN_LDFLAGS) -o $@ $(BUILD_PROFTPD_OBJS) $(BUILD_PROFTPD_ARCHIVES) $(LIBS) $(MAIN_LIBS)
 
-ftpcount$(EXEEXT): utils
+ftpcount$(EXEEXT): lib utils
 	$(CC) $(LDFLAGS) -o $@ $(BUILD_FTPCOUNT_OBJS) $(UTILS_LIBS)
 
-ftpdctl$(EXEEXT): src
+ftpdctl$(EXEEXT): lib src
 	$(CC) $(LDFLAGS) -o $@ $(BUILD_FTPDCTL_OBJS) $(LIBS)
 
-ftpshut$(EXEEXT): utils
+ftpshut$(EXEEXT): lib utils
 	$(CC) $(LDFLAGS) -o $@ $(BUILD_FTPSHUT_OBJS) $(UTILS_LIBS)
 
 ftptop$(EXEEXT): lib utils

proftpd-1.3.2a-defines.patch:
 dirtree.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

--- NEW FILE proftpd-1.3.2a-defines.patch ---
http://bugs.proftpd.org/show_bug.cgi?id=3221

--- proftpd-1.3.2a/src/dirtree.c	2009-04-28 23:33:57.000000000 +0100
+++ proftpd-1.3.2a/src/dirtree.c	2009-07-06 12:06:51.000000000 +0100
@@ -575,6 +575,17 @@
     }
   }
 
+  if (defines_perm_list) {
+    char **defines = defines_perm_list->elts;
+    register unsigned int i = 0;
+
+    for (i = 0; i < defines_perm_list->nelts; i++) {
+      if (defines[i] &&
+          strcmp(defines[i], definition) == 0)
+        return TRUE;
+    }
+  }
+
   errno = ENOENT;
   return FALSE;
 }

proftpd-1.3.2rc3-nostrip.patch:
 Make.rules.in                 |    4 ++--
 contrib/mod_load/Makefile.in  |    2 +-
 contrib/mod_wrap2/Makefile.in |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

--- NEW FILE proftpd-1.3.2rc3-nostrip.patch ---
Removing @INSTALL_STRIP@ prevents stripping of debuginfo at %install time

Cleaning up top_srcdir prevents debuginfo package creation fails like this:
/usr/lib/rpm/debugedit: canonicalization unexpectedly shrank by one character

--- proftpd-1.3.2rc3/Make.rules.in	2009-01-08 16:54:26.000000000 +0000
+++ proftpd-1.3.2rc3/Make.rules.in	2009-01-08 16:54:48.000000000 +0000
@@ -29,8 +29,8 @@
 INSTALL=@INSTALL@
 INSTALL_USER=@install_user@
 INSTALL_GROUP=@install_group@
-INSTALL_BIN=$(INSTALL) @INSTALL_STRIP@ -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755
-INSTALL_SBIN=$(INSTALL) @INSTALL_STRIP@ -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755
+INSTALL_BIN=$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755
+INSTALL_SBIN=$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755
 INSTALL_MAN=$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644
 
 RM=rm -f
--- proftpd-1.3.2rc3/contrib/mod_load/Makefile.in	2008-09-08 21:56:02.000000000 +0100
+++ proftpd-1.3.2rc3/contrib/mod_load/Makefile.in	2009-01-08 20:37:26.000000000 +0000
@@ -1,5 +1,5 @@
 top_builddir=../..
-top_srcdir=../../
+top_srcdir=../..
 srcdir=@srcdir@
 
 include $(top_srcdir)/Make.rules
--- proftpd-1.3.2rc3/contrib/mod_wrap2/Makefile.in	2008-09-08 21:56:02.000000000 +0100
+++ proftpd-1.3.2rc3/contrib/mod_wrap2/Makefile.in	2009-07-03 17:00:41.000000000 +0100
@@ -1,5 +1,5 @@
 top_builddir=../..
-top_srcdir=../../
+top_srcdir=../..
 srcdir=@srcdir@
 
 include $(top_srcdir)/Make.rules


--- NEW FILE proftpd.sysconfig ---
# Set PROFTPD_OPTIONS to add command-line options for proftpd.
# See proftpd(8) for a comprehensive list of what can be used.
#
# The following "Defines" can be used with the default configuration file:
# -DANONYMOUS_FTP	: Enable anonymous FTP
# -DDYNAMIC_BAN_LISTS	: Enable dynamic ban lists (mod_ban)
# -DTLS			: Enable TLS (mod_tls)
#
# For example, for anonymous FTP and dynamic ban list support:
# PROFTPD_OPTIONS="-DANONYMOUS_FTP -DDYNAMIC_BAN_LISTS"
PROFTPD_OPTIONS=""


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/proftpd/F-11/.cvsignore,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -p -r1.13 -r1.14
--- .cvsignore	6 Apr 2009 21:47:16 -0000	1.13
+++ .cvsignore	3 Aug 2009 12:46:16 -0000	1.14
@@ -1 +1 @@
-proftpd-1.3.2.tar.bz2
+proftpd-1.3.2a.tar.bz2


Index: proftpd.conf
===================================================================
RCS file: /cvs/pkgs/rpms/proftpd/F-11/proftpd.conf,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -p -r1.9 -r1.10
--- proftpd.conf	2 Jan 2009 13:31:48 -0000	1.9
+++ proftpd.conf	3 Aug 2009 12:46:16 -0000	1.10
@@ -1,169 +1,239 @@
 # This is the ProFTPD configuration file
+#
+# See: http://www.proftpd.org/docs/directives/linked/by-name.html
+
+# Server Config - config used for anything outside a <VirtualHost> or <Global> context
+# See: http://www.proftpd.org/docs/howto/Vhost.html
 
 ServerName			"ProFTPD server"
 ServerIdent			on "FTP Server ready."
 ServerAdmin			root at localhost
-ServerType			standalone
-#ServerType			inetd
 DefaultServer			on
-AccessGrantMsg			"User %u logged in."
-#DisplayConnect			/etc/ftpissue
-#DisplayLogin			/etc/ftpmotd
-#DisplayGoAway			/etc/ftpgoaway
-DeferWelcome			off
 
-# Use this to excude users from the chroot
+# Cause every FTP user except adm to be chrooted into their home directory
 DefaultRoot			~ !adm
 
 # Use pam to authenticate (default) and be authoritative
 AuthPAMConfig			proftpd
 AuthOrder			mod_auth_pam.c* mod_auth_unix.c
+# If you use NIS/YP/LDAP you may need to disable PersistentPasswd
+#PersistentPasswd		off
 
-# Do not perform ident nor DNS lookups (hangs when the port is filtered)
-IdentLookups			off
+# Don't do reverse DNS lookups (hangs on DNS problems)
 UseReverseDNS			off
 
-# Port 21 is the standard FTP port.
-Port				21
-
-# Umask 022 is a good standard umask to prevent new dirs and files
-# from being group and world writable.
-Umask				022
-
-# Default to show dot files in directory listings
-ListOptions			"-a"
-
-# See Configuration.html for these (here are the default values)
-#MultilineRFC2228		off
-#RootLogin			off
-#LoginPasswordPrompt		on
-#MaxLoginAttempts		3
-#MaxClientsPerHost		none
-#AllowForeignAddress		off	# For FXP
-
-# Allow to resume not only the downloads but the uploads too
-AllowRetrieveRestart		on
-AllowStoreRestart		on
+# Set the user and group that the server runs as
+User				nobody
+Group				nobody
 
 # To prevent DoS attacks, set the maximum number of child processes
-# to 30.  If you need to allow more than 30 concurrent connections
+# to 20.  If you need to allow more than 20 concurrent connections
 # at once, simply increase this value.  Note that this ONLY works
-# in standalone mode, in inetd mode you should use an inetd server
+# in standalone mode; in inetd mode you should use an inetd server
 # that allows you to limit maximum number of processes per service
 # (such as xinetd)
 MaxInstances			20
 
-# Set the user and group that the server normally runs at.
-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
-
-# Normally, we want users to do a few things.
-<Global>
-  AllowOverwrite		yes
-  <Limit ALL SITE_CHMOD>
-    AllowAll
-  </Limit>
-</Global>
+UseSendfile			off
 
 # Define the log formats
 LogFormat			default	"%h %l %u %t \"%r\" %s %b"
 LogFormat			auth	"%v [%P] %h %t \"%r\" %s"
 
-# TLS
-# Explained at http://www.castaglia.org/proftpd/modules/mod_tls.html
-#TLSEngine			on
-#TLSRequired			on
-#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_ban.c
-#  LoadModule mod_ifsession.c
-#  LoadModule mod_quotatab.c
-#  LoadModule mod_quotatab_file.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
-#  Group				ftp
-#  AccessGrantMsg		"Anonymous login ok, restrictions apply."
-#
-#  # We want clients to be able to login with "anonymous" as well as "ftp"
-#  UserAlias			anonymous ftp
-#
-#  # Limit the maximum number of anonymous logins
-#  MaxClients			10 "Sorry, max %m users -- try again later"
-#
-#  # Put the user into /pub right after login
-#  #DefaultChdir			/pub
-#
-#  # We want 'welcome.msg' displayed at login, '.message' displayed in
-#  # each newly chdired directory and tell users to read README* files. 
-#  DisplayLogin			/welcome.msg
-#  DisplayFirstChdir		.message
-#  DisplayReadme			README*
-#
-#  # Some more cosmetic and not vital stuff
-#  DirFakeUser			on ftp
-#  DirFakeGroup			on ftp
-#
-#  # Limit WRITE everywhere in the anonymous chroot
-#  <Limit WRITE SITE_CHMOD>
-#    DenyAll
-#  </Limit>
-#
-#  # An upload directory that allows storing files but not retrieving
-#  # or creating directories.
-#  <Directory uploads/*>
-#    AllowOverwrite		no
-#    <Limit READ>
-#      DenyAll
-#    </Limit>
-#
-#    <Limit STOR>
-#      AllowAll
-#    </Limit>
-#  </Directory>
-#
-#  # Don't write anonymous accesses to the system wtmp file (good idea!)
-#  WtmpLog			off
-#
-#  # Logging for the anonymous transfers
-#  ExtendedLog		/var/log/proftpd/access.log WRITE,READ default
-#  ExtendedLog		/var/log/proftpd/auth.log AUTH auth
-#
-#</Anonymous>
-
-# Configuration for mod_ban
-<IfModule mod_ban.c>
-  BanEngine on
-  BanLog /var/log/proftpd/ban.log
-  BanTable /var/run/proftpd/ban.tab
+# Dynamic Shared Object (DSO) loading
+# See README.DSO and howto/DSO.html for more details
+#
+# General database support (http://www.proftpd.org/docs/contrib/mod_sql.html)
+#   LoadModule mod_sql.c
+#
+# Mysql support (requires proftpd-mysql package)
+# (http://www.proftpd.org/docs/contrib/mod_sql.html)
+#   LoadModule mod_sql_mysql.c
+#
+# Postgresql support (requires proftpd-postgresql package)
+# (http://www.proftpd.org/docs/contrib/mod_sql.html)
+#   LoadModule mod_sql_postgres.c
+#
+# Quota support (http://www.proftpd.org/docs/contrib/mod_quotatab.html)
+#   LoadModule mod_quotatab.c
+#
+# File-specific "driver" for storing quota table information in files
+# (http://www.proftpd.org/docs/contrib/mod_quotatab_file.html)
+#   LoadModule mod_quotatab_file.c
+#
+# SQL database "driver" for storing quota table information in SQL tables
+# (http://www.proftpd.org/docs/contrib/mod_quotatab_sql.html)
+#   LoadModule mod_quotatab_sql.c
+#
+# LDAP support (requires proftpd-ldap package)
+# (http://www.proftpd.org/docs/directives/linked/config_ref_mod_ldap.html)
+#   LoadModule mod_ldap.c
+#
+# LDAP quota support (requires proftpd-ldap package)
+# (http://www.proftpd.org/docs/contrib/mod_quotatab_ldap.html)
+#   LoadModule mod_quotatab_ldap.c
+#
+# Support for authenticating users using the RADIUS protocol
+# (http://www.proftpd.org/docs/contrib/mod_radius.html)
+#   LoadModule mod_radius.c
+#
+# Retrieve quota limit table information from a RADIUS server
+# (http://www.proftpd.org/docs/contrib/mod_quotatab_radius.html)
+#   LoadModule mod_quotatab_radius.c
+#
+# Administrative control actions for the ftpdctl program
+# (http://www.proftpd.org/docs/contrib/mod_ctrls_admin.html)
+#   LoadModule mod_ctrls_admin.c
+#
+# Support for POSIX ACLs
+# (http://www.proftpd.org/docs/modules/mod_facl.html)
+#   LoadModule mod_facl.c
+#
+# Configure server availability based on system load
+# (http://www.proftpd.org/docs/contrib/mod_load.html)
+#   LoadModule mod_load.c
+#
+# Limit downloads to a multiple of upload volume (see README.ratio)
+#   LoadModule mod_ratio.c
+#
+# Rewrite FTP commands sent by clients on-the-fly,
+# using regular expression matching and substitution 
+# (http://www.proftpd.org/docs/contrib/mod_rewrite.html)
+#   LoadModule mod_rewrite.c
+#
+# Support for miscellaneous SITE commands such as SITE MKDIR, SITE SYMLINK,
+# and SITE UTIME (http://www.proftpd.org/docs/contrib/mod_site_misc.html)
+#   LoadModule mod_site_misc.c
+#
+# Use the /etc/hosts.allow and /etc/hosts.deny files, or other allow/deny
+# files, for IP-based access control
+# (http://www.proftpd.org/docs/contrib/mod_wrap.html)
+#   LoadModule mod_wrap.c
+#
+# Use the /etc/hosts.allow and /etc/hosts.deny files, or other allow/deny
+# files, as well as SQL-based access rules, for IP-based access control
+# (http://www.proftpd.org/docs/contrib/mod_wrap2.html)
+#   LoadModule mod_wrap2.c
+#
+# Support module for mod_wrap2 that handles access rules stored in specially
+# formatted files on disk
+# (http://www.proftpd.org/docs/contrib/mod_wrap2_file.html)
+#   LoadModule mod_wrap2_file.c
+#
+# Support module for mod_wrap2 that handles access rules stored in SQL
+# database tables (http://www.proftpd.org/docs/contrib/mod_wrap2_sql.html)
+#   LoadModule mod_wrap2_sql.c
+#
+# Provide a flexible way of specifying that certain configuration directives
+# only apply to certain sessions, based on credentials such as connection
+# class, user, or group membership
+# (http://www.proftpd.org/docs/contrib/mod_ifsession.html)
+#   LoadModule mod_ifsession.c
+
+# TLS (http://www.castaglia.org/proftpd/modules/mod_tls.html)
+<IfDefine TLS>
+  LoadModule			mod_tls.c
+  TLSEngine			on
+  TLSRequired			on
+  TLSRSACertificateFile		@PKIDIR@/certs/proftpd.pem
+  TLSRSACertificateKeyFile	@PKIDIR@/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
+</IfDefine>
+
+# Dynamic ban lists (http://www.proftpd.org/docs/contrib/mod_ban.html)
+# Enable this with PROFTPD_OPTIONS=-DDYNAMIC_BAN_LISTS in /etc/sysconfig/proftpd
+<IfDefine DYNAMIC_BAN_LISTS>
+  LoadModule			mod_ban.c
+  BanEngine			on
+  BanLog			/var/log/proftpd/ban.log
+  BanTable			/var/run/proftpd/ban.tab
 
   # If the same client reaches the MaxLoginAttempts limit 2 times
   # within 10 minutes, automatically add a ban for that client that
   # will expire after one hour.
-  BanOnEvent MaxLoginAttempts 2/00:10:00 01:00:00
+  BanOnEvent			MaxLoginAttempts 2/00:10:00 01:00:00
 
   # Allow the FTP admin to manually add/remove bans
-  BanControlsACLs all allow user ftpadm
-</IfModule>
+  BanControlsACLs		all allow user ftpadm
+</IfDefine>
+
+# Global Config - config common to Server Config and all virtual hosts
+# See: http://www.proftpd.org/docs/howto/Vhost.html
+<Global>
+
+  # Umask 022 is a good standard umask to prevent new dirs and files
+  # from being group and world writable
+  Umask				022
+
+  # Don't do ident queries (hangs when the port is filtered)
+  IdentLookups			off
+
+  # Allow users to overwrite files and change permissions
+  AllowOverwrite		yes
+  <Limit ALL SITE_CHMOD>
+    AllowAll
+  </Limit>
+
+</Global>
+
+# A basic anonymous configuration, with an upload directory
+# Enable this with PROFTPD_OPTIONS=-DANONYMOUS_FTP in /etc/sysconfig/proftpd
+<IfDefine ANONYMOUS_FTP>
+  <Anonymous ~ftp>
+    User			ftp
+    Group			ftp
+    AccessGrantMsg		"Anonymous login ok, restrictions apply."
+
+    # We want clients to be able to login with "anonymous" as well as "ftp"
+    UserAlias			anonymous ftp
+
+    # Limit the maximum number of anonymous logins
+    MaxClients			10 "Sorry, max %m users -- try again later"
+
+    # Put the user into /pub right after login
+    #DefaultChdir		/pub
+
+    # We want 'welcome.msg' displayed at login, '.message' displayed in
+    # each newly chdired directory and tell users to read README* files. 
+    DisplayLogin		/welcome.msg
+    DisplayChdir		.message
+    DisplayReadme		README*
+
+    # Cosmetic option to make all files appear to be owned by user "ftp"
+    DirFakeUser			on ftp
+    DirFakeGroup		on ftp
+
+    # Limit WRITE everywhere in the anonymous chroot
+    <Limit WRITE SITE_CHMOD>
+      DenyAll
+    </Limit>
+
+    # An upload directory that allows storing files but not retrieving
+    # or creating directories.
+    <Directory uploads/*>
+      AllowOverwrite		no
+      <Limit READ>
+        DenyAll
+      </Limit>
+
+      <Limit STOR>
+        AllowAll
+      </Limit>
+    </Directory>
+
+    # Don't write anonymous accesses to the system wtmp file (good idea!)
+    WtmpLog			off
+
+    # Logging for the anonymous transfers
+    ExtendedLog			/var/log/proftpd/access.log WRITE,READ default
+    ExtendedLog			/var/log/proftpd/auth.log AUTH auth
+
+  </Anonymous>
+</IfDefine>
 


Index: proftpd.init
===================================================================
RCS file: /cvs/pkgs/rpms/proftpd/F-11/proftpd.init,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -p -r1.6 -r1.7
--- proftpd.init	19 Aug 2007 16:18:30 -0000	1.6
+++ proftpd.init	3 Aug 2009 12:46:16 -0000	1.7
@@ -33,10 +33,16 @@
 # Source networking configuration.
 . /etc/sysconfig/network
 
+# Source ProFTPD configuration.
+PROFTPD_OPTIONS=""
+if [ -f /etc/sysconfig/proftpd ]; then
+	. /etc/sysconfig/proftpd
+fi
+
 # Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
+[ ${NETWORKING} = "no" ] && exit 1
 
-[ -x /usr/sbin/proftpd ] || exit 0
+[ -x /usr/sbin/proftpd ] || exit 5
 
 RETVAL=0
 
@@ -44,7 +50,7 @@ prog="proftpd"
 
 start() {
 	echo -n $"Starting $prog: "
-	daemon proftpd 2>/dev/null
+	daemon proftpd $PROFTPD_OPTIONS 2>/dev/null
 	RETVAL=$?
 	echo
 	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd


Index: proftpd.spec
===================================================================
RCS file: /cvs/pkgs/rpms/proftpd/F-11/proftpd.spec,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -p -r1.47 -r1.48
--- proftpd.spec	14 Apr 2009 16:24:11 -0000	1.47
+++ proftpd.spec	3 Aug 2009 12:46:16 -0000	1.48
@@ -1,36 +1,42 @@
-#define prever rc3
-
-Summary: Flexible, stable and highly-configurable FTP server
-Name: proftpd
-Version: 1.3.2
-Release: 2.1%{?prever:.%{prever}}%{?dist}
-License: GPLv2+
-Group: System Environment/Daemons
-URL: http://www.proftpd.org/
-Source0: ftp://ftp.proftpd.org/distrib/source/proftpd-%{version}%{?prever}.tar.bz2
-Source1: proftpd.conf
-Source2: proftpd.init
-Source3: proftpd-xinetd
-Source4: proftpd.logrotate
-Source5: proftpd-welcome.msg
-Source6: proftpd.pam
-Source7: proftpd-mod_quotatab_ldap.ldif
-Source8: proftpd-mod_quotatab_ldap.schema
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
-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: zlib-devel
-# On RHEL (up to 5 included), the devel part was still in tcp_wrappers but in
-# all recent Fedoras it's in tcp_wrappers-devel
-BuildRequires: /usr/include/tcpd.h
-BuildRequires: openldap-devel
-BuildRequires: mysql-devel
-BuildRequires: postgresql-devel
-Provides: ftpserver
+# Use certs in %{_sysconfdir}/pki/tls/certs if available (FC4, RHEL5 onwards)
+%global use_pki %(if [ -d %{_sysconfdir}/pki/tls/certs ]; then echo 1; else echo 0; fi)
+%if %{use_pki}
+%global pkidir %{_sysconfdir}/pki/tls
+%else
+%global pkidir %{_datadir}/ssl
+%endif
+
+#global prever rc3
+%global rpmrel 2
+
+Summary:		Flexible, stable and highly-configurable FTP server
+Name:			proftpd
+Version:		1.3.2a
+Release:		%{?prever:0.}%{rpmrel}%{?prever:.%{prever}}%{?dist}
+License:		GPLv2+
+Group:			System Environment/Daemons
+URL:			http://www.proftpd.org/
+Source0:		ftp://ftp.proftpd.org/distrib/source/proftpd-%{version}%{?prever}.tar.bz2
+Source1:		proftpd.conf
+Source2:		proftpd.init
+Source3:		proftpd-xinetd
+Source4:		proftpd.logrotate
+Source5:		proftpd-welcome.msg
+Source6:		proftpd.pam
+Source7:		proftpd-mod_quotatab_ldap.ldif
+Source8:		proftpd-mod_quotatab_ldap.schema
+Source9:		proftpd.sysconfig
+Patch0:			proftpd-1.3.2rc3-nostrip.patch
+Patch1:			proftpd-1.3.2a-defines.patch
+Patch2:			proftpd-1.3.2-parallel-build.patch
+BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-root
+Requires(post):		/sbin/chkconfig
+Requires(preun):	/sbin/service, /sbin/chkconfig, coreutils, findutils
+Requires(postun):	/sbin/service
+BuildRequires:		pam-devel, ncurses-devel, pkgconfig, gettext, zlib-devel
+BuildRequires:		openssl-devel, libacl-devel, libcap-devel, /usr/include/tcpd.h
+BuildRequires:		openldap-devel, mysql-devel, postgresql-devel
+Provides:		ftpserver
 
 %description
 ProFTPD is an enhanced FTP server with a focus toward simplicity, security,
@@ -44,27 +50,27 @@ needed scripts to have it run by xinetd 
 
 
 %package ldap
-Summary: Module to add LDAP support to the ProFTPD FTP server
-Group: System Environment/Daemons
-Requires: %{name} = %{version}-%{release}
+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}
+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}
+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.
@@ -73,52 +79,94 @@ Module to add PostgreSQL support to the 
 %prep
 %setup -q -n %{name}-%{version}%{?prever}
 
+# Don't strip binaries - needed for useful debuginfo
+%patch0 -p1 -b .nostrip
+
+# Reinstate command-line defines (http://bugs.proftpd.org/3221)
+%patch1 -p1 -b .defines
+
+# Fix parallel build (http://bugs.proftpd.org/3189)
+%patch2 -p1 -b .parallel
+
+# Avoid documentation name conflicts
+%{__mv} contrib/README contrib/README.contrib
+
+# Set up directory names in config file
+%{__sed} -e 's#@PKIDIR@#%{pkidir}#g' \
+	%{SOURCE1} > proftpd.conf
+
+# Avoid docfile dependencies
+%{__chmod} -x contrib/xferstats.holger-preiss
+
+# Copy in LDAP schema/LDIF
+%{__cp} -p %{SOURCE7} 70proftpd-quota.ldif
+%{__cp} -p %{SOURCE8} proftpd-quota.schema
+
+# PAM Configuration:
+# The "include" syntax used in our PAM configuration file was introduced in
+# PAM 0.78 and is therefore supported in FC-5 and EL-5 onwards; older
+# distributions such as EL-4 (PAM 0.77) need to fall back to using the
+# now-deprecated pam_stack module. Since the pam-devel package doesn't
+# include a pkgconfig file from whice we could check the version number, we
+# instead check for the absence of the file /etc/pam.d/config-util, which is
+# present in all PAM packages from 0.80 onwards and acts as a useful
+# indicator of the need to fall back to pam_stack.
+%{__cp} -p %{SOURCE6} .
+[ ! -f /etc/pam.d/config-util ] && %{__sed} -i -e \
+	's/include[[:space:]]*system-auth/required'\ \ \ \ \ 'pam_stack.so service=system-auth/' \
+	proftpd.pam
+
+# Fix character encoding in docs
+for f in ChangeLog; do
+	/usr/bin/iconv -f iso-8859-1 -t utf-8 < ${f} > ${f}.utf-8
+	%{__mv} -f ${f}.utf-8 ${f}
+done
 
 %build
-# Disable stripping in order to get useful debuginfo packages
-%{__perl} -pi -e 's|"-s"|""|g' configure
+
+# Modules to be built as DSO's (excluding mod_ifsession, always specified last)
+SMOD1=mod_sql:mod_sql_mysql:mod_sql_postgres
+SMOD2=mod_quotatab:mod_quotatab_file:mod_quotatab_ldap:mod_quotatab_radius:mod_quotatab_sql
+SMOD3=mod_ldap:mod_ban:mod_wrap:mod_ctrls_admin:mod_facl:mod_load
+SMOD4=mod_radius:mod_ratio:mod_rewrite:mod_site_misc
+SMOD5=mod_wrap2:mod_wrap2_file:mod_wrap2_sql
 
 %configure \
-    --libexecdir="%{_libexecdir}/proftpd" \
-    --localstatedir="%{_var}/run" \
-    --enable-ctrls \
-    --enable-facl \
-    --enable-dso \
-    --enable-ipv6 \
-    --enable-shadow \
-    --enable-openssl \
-    --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:mod_ifsession:mod_ban:mod_wrap
-
-# It seems that with _smp_mflags -lsupp tries to get linked before being built
-# (as of 1.3.0a-4 F7/devel with koji, happened on F8 x86_64 and F7 ppc64)
-%{__make}
+	--libexecdir="%{_libexecdir}/proftpd" \
+	--localstatedir="%{_localstatedir}/run" \
+	--enable-ctrls \
+	--enable-dso \
+	--enable-facl \
+	--enable-ipv6 \
+	--enable-nls \
+	--enable-openssl \
+	--enable-shadow \
+	--with-libraries="%{_libdir}/mysql" \
+	--with-includes="%{_includedir}/mysql" \
+	--with-modules=mod_readme:mod_auth_pam:mod_tls \
+	--with-shared=${SMOD1}:${SMOD2}:${SMOD3}:${SMOD4}:${SMOD5}:mod_ifsession
+
+%{__make} %{?_smp_mflags}
 
 
 %install
 %{__rm} -rf %{buildroot}
 %{__make} install DESTDIR=%{buildroot} \
-    rundir="%{_var}/run/proftpd" \
-    INSTALL_USER=`id -un` \
-    INSTALL_GROUP=`id -gn`
-%{__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
-%{__install} -D -p -m 0644 %{SOURCE7} 70proftpd-quota.ldif
-%{__install} -D -p -m 0644 %{SOURCE8} proftpd-quota.schema
-%{__mkdir_p} %{buildroot}/var/ftp/uploads
-%{__mkdir_p} %{buildroot}/var/ftp/pub
-%{__mkdir_p} %{buildroot}/var/log/proftpd
-touch %{buildroot}%{_sysconfdir}/ftpusers
+	rundir="%{_localstatedir}/run/proftpd" \
+	INSTALL_USER=`%{__id} -un` \
+	INSTALL_GROUP=`%{__id} -gn`
+%{__install} -D -p -m 640 proftpd.conf	%{buildroot}%{_sysconfdir}/proftpd.conf
+%{__install} -D -p -m 644 proftpd.pam	%{buildroot}%{_sysconfdir}/pam.d/proftpd
+%{__install} -D -p -m 755 %{SOURCE2}	%{buildroot}%{_sysconfdir}/rc.d/init.d/proftpd
+%{__install} -D -p -m 644 %{SOURCE3}	%{buildroot}%{_sysconfdir}/xinetd.d/xproftpd
+%{__install} -D -p -m 644 %{SOURCE4}	%{buildroot}%{_sysconfdir}/logrotate.d/proftpd
+%{__install} -D -p -m 644 %{SOURCE5}	%{buildroot}%{_localstatedir}/ftp/welcome.msg
+%{__install} -D -p -m 644 %{SOURCE9}	%{buildroot}%{_sysconfdir}/sysconfig/proftpd
+%{__mkdir_p} %{buildroot}%{_localstatedir}/{ftp/{pub,uploads},log/proftpd}
+/bin/touch %{buildroot}%{_sysconfdir}/ftpusers
+
+# Find translations
+%find_lang proftpd
 
 
 %clean
@@ -127,83 +175,157 @@ touch %{buildroot}%{_sysconfdir}/ftpuser
 
 %post
 if [ $1 -eq 1 ]; then
-    /sbin/chkconfig --add proftpd
-    IFS=":"; cat /etc/passwd | \
-    while { read username nu nu gid nu nu nu nu; }; do \
-        if [ $gid -lt 100 -a "$username" != "ftp" ]; then
-            echo $username >> %{_sysconfdir}/ftpusers
-        fi
-    done
+	/sbin/chkconfig --add proftpd
+	IFS=":"; %{__cat} /etc/passwd | \
+	while { read username nu nu gid nu nu nu nu; }; do \
+		if [ $gid -lt 100 -a "$username" != "ftp" ]; then
+			echo $username >> %{_sysconfdir}/ftpusers
+		fi
+	done
 fi
 
 %preun
 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/*
-    fi
+	/sbin/service proftpd stop &>/dev/null || :
+	/sbin/chkconfig --del proftpd || :
+	/sbin/service xinetd reload &>/dev/null || :
+	/usr/bin/find %{_localstatedir}/run/proftpd -depth -mindepth 1 |
+		/usr/bin/xargs %{__rm} -rf &>/dev/null || :
 fi
 
 %postun
 if [ $1 -ge 1 ]; then
-    /sbin/service proftpd condrestart &>/dev/null || :
+	/sbin/service proftpd condrestart &>/dev/null || :
 fi
 
 
-%files
+%files -f proftpd.lang
 %defattr(-,root,root,-)
-%doc COPYING CREDITS ChangeLog NEWS README*
-%doc doc/* sample-configurations/
+%doc COPYING CREDITS ChangeLog NEWS README
+%doc README.DSO README.modules README.IPv6 README.PAM
+%doc README.capabilities README.classes README.controls README.facl
+%doc contrib/README.contrib contrib/README.ratio
+%doc doc/* sample-configurations/ contrib/xferstats.holger-preiss
+%dir %{_localstatedir}/ftp/
+%dir %{_localstatedir}/ftp/pub/
 %dir %{_localstatedir}/run/proftpd/
+%config(noreplace) %{_localstatedir}/ftp/welcome.msg
+%config(noreplace) %{_sysconfdir}/ftpusers
+%config(noreplace) %{_sysconfdir}/logrotate.d/proftpd
+%config(noreplace) %{_sysconfdir}/pam.d/proftpd
 %config(noreplace) %{_sysconfdir}/proftpd.conf
+%config(noreplace) %{_sysconfdir}/sysconfig/proftpd
 %config(noreplace) %{_sysconfdir}/xinetd.d/xproftpd
-%config %{_sysconfdir}/ftpusers
-%config(noreplace) %{_sysconfdir}/pam.d/proftpd
-%config(noreplace) %{_sysconfdir}/logrotate.d/proftpd
 %{_sysconfdir}/rc.d/init.d/proftpd
-%{_mandir}/man?/*
-%{_bindir}/*
+%{_bindir}/ftpcount
+%{_bindir}/ftpdctl
+%{_bindir}/ftptop
+%{_bindir}/ftpwho
+%exclude %{_bindir}/prxs
+%{_sbindir}/ftpshut
+%{_sbindir}/in.proftpd
+%{_sbindir}/proftpd
+%{_mandir}/man1/ftpcount.1*
+%{_mandir}/man1/ftptop.1*
+%{_mandir}/man1/ftpwho.1*
+%{_mandir}/man5/xferlog.5*
+%{_mandir}/man8/ftpdctl.8*
+%{_mandir}/man8/ftpshut.8*
+%{_mandir}/man8/proftpd.8*
 %exclude %{_includedir}/proftpd/
 %exclude %{_libdir}/pkgconfig/
 %dir %{_libexecdir}/proftpd/
 %{_libexecdir}/proftpd/mod_ban.so
+%{_libexecdir}/proftpd/mod_ctrls_admin.so
+%{_libexecdir}/proftpd/mod_facl.so
 %{_libexecdir}/proftpd/mod_ifsession.so
+%{_libexecdir}/proftpd/mod_load.so
 %{_libexecdir}/proftpd/mod_quotatab.so
 %{_libexecdir}/proftpd/mod_quotatab_file.so
+%{_libexecdir}/proftpd/mod_quotatab_radius.so
+%{_libexecdir}/proftpd/mod_quotatab_sql.so
+%{_libexecdir}/proftpd/mod_radius.so
+%{_libexecdir}/proftpd/mod_ratio.so
+%{_libexecdir}/proftpd/mod_rewrite.so
+%{_libexecdir}/proftpd/mod_site_misc.so
 %{_libexecdir}/proftpd/mod_sql.so
 %{_libexecdir}/proftpd/mod_wrap.so
+%{_libexecdir}/proftpd/mod_wrap2.so
+%{_libexecdir}/proftpd/mod_wrap2_file.so
+%{_libexecdir}/proftpd/mod_wrap2_sql.so
 %exclude %{_libexecdir}/proftpd/*.a
 %exclude %{_libexecdir}/proftpd/*.la
-%{_sbindir}/*
-%dir /var/ftp/
-%attr(331, ftp, ftp) %dir /var/ftp/uploads/
-%dir /var/ftp/pub/
-%config(noreplace) /var/ftp/welcome.msg
-%attr(750, root, root) %dir /var/log/proftpd/
+%attr(331, ftp, ftp) %dir %{_localstatedir}/ftp/uploads/
+%attr(750, root, root) %dir %{_localstatedir}/log/proftpd/
 
 %files ldap
 %defattr(-,root,root,-)
-%doc 70proftpd-quota.ldif proftpd-quota.schema
-%dir %{_libexecdir}/proftpd/
+%doc README.LDAP 70proftpd-quota.ldif proftpd-quota.schema
 %{_libexecdir}/proftpd/mod_ldap.so
 %{_libexecdir}/proftpd/mod_quotatab_ldap.so
 
 %files mysql
 %defattr(-,root,root,-)
-%dir %{_libexecdir}/proftpd/
 %{_libexecdir}/proftpd/mod_sql_mysql.so
-%{_libexecdir}/proftpd/mod_quotatab_sql.so
 
 %files postgresql
 %defattr(-,root,root,-)
-%dir %{_libexecdir}/proftpd/
 %{_libexecdir}/proftpd/mod_sql_postgres.so
-%{_libexecdir}/proftpd/mod_quotatab_sql.so
 
 
 %changelog
+* Fri Jul 31 2009 Paul Howarth <paul at city-fan.org> 1.3.2a-2
+- Add upstream patch to fix parallel build (http://bugs.proftpd.org/3189)
+
+* Mon Jul 27 2009 Paul Howarth <paul at city-fan.org> 1.3.2a-1
+- Update to 1.3.2a
+- Add patch to reinstate support for -DPARAMETER (http://bugs.proftpd.org/3221)
+- Retain CAP_AUDIT_WRITE, needed for pam_loginuid (#506735, fixed upstream)
+- Remove ScoreboardFile directive from configuration file - default value
+  works better with SELinux (#498375)
+- Ship mod_quotatab_sql.so in the main package rather than the SQL backend
+  subpackages
+- New DSO modules:
+  - mod_ctrls_admin
+  - mod_facl
+  - mod_load
+  - mod_quotatab_radius
+  - mod_radius
+  - mod_ratio
+  - mod_rewrite
+  - mod_site_misc
+  - mod_wrap2
+  - mod_wrap2_file
+  - mod_wrap2_sql
+- Enable mod_lang/nls support for RFC 2640 (and buildreq gettext)
+- Add /etc/sysconfig/proftpd to set PROFTPD_OPTIONS and update initscript to
+  use this value so we can use a define to enable (e.g.) anonymous FTP support
+  rather than having a huge commented-out section in the config file
+- Rewrite config file to remove most settings that don't change upstream
+  defaults, and add brief descriptions for all available loadable modules
+- Move Umask and IdentLookups settings from server config to <Global> context
+  so that they apply to all servers, including virtual hosts (#509251)
+- Ensure mod_ifsession is always the last one specified, which makes sure that
+  mod_ifsession's changes are seen properly by other modules
+- Drop pam version requirement - all targets have sufficiently recent version
+- Drop redundant explicit dependency on pam
+- Subpackages don't need to own %%{_libexecdir}/proftpd directory
+- Drop redundant krb5-devel buildreq
+- Make SRPM back-compatible with EPEL-4 (TLS cert dirs, PAM config)
+- Don't include README files for non-Linux platforms
+- Recode ChangeLog as UTF-8
+- Don't ship the prxs tool for building custom DSO's since we don't ship the
+  headers either
+- Prevent stripping of binaries in a slightly more robust way
+- Fix release tag to be ready for future beta/rc versions
+- Define RPM macros in global scope
+- BuildRequire libcap-devel so that we use the system library rather than the
+  bundled one, and eliminate log messages like:
+  kernel: warning: `proftpd' uses 32-bit capabilities (legacy support in use)
+
+* Sun Jul 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.3.2-3.1
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
 * Thu Apr  9 2009 Matthias Saou <http://freshrpms.net/> 1.3.2-2.1
 - Update the tcp_wrappers BR to be just /usr/include/tcpd.h instead.
 
@@ -219,7 +341,7 @@ fi
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
 
 * Sat Jan 24 2009 Caolán McNamara 1.3.2-0.3.rc3
-- rebuild for dependencies
+- Rebuild for dependencies
 
 * Fri Jan  2 2009 Matthias Saou <http://freshrpms.net/> 1.3.2-0.2.rc3
 - Update default configuration to have a lit of available modules and more


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/proftpd/F-11/sources,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -p -r1.13 -r1.14
--- sources	6 Apr 2009 21:47:16 -0000	1.13
+++ sources	3 Aug 2009 12:46:16 -0000	1.14
@@ -1 +1 @@
-89f5e31fc3d3e02b66424dfc6cc5892d  proftpd-1.3.2.tar.bz2
+ad3cbb5db30c5ae39e09b308892392b3  proftpd-1.3.2a.tar.bz2


--- proftpd-1.3.1-find-umode_t.patch DELETED ---




More information about the fedora-extras-commits mailing list