3 # _without_pam - disable PAM support
4 # _with_ldap - enable LDAP suppoer
5 # _with_mysql - enable MySQL suppoer
6 # _with_quota - enable quota support
7 # _with_linuxprivs - enable libcap support
8 # _without_ipv6 - disable IPv6 and TCPD support
9 # _without_ssl - disbale TLS/SSL support
10 # --without pam --with ldap --with mysql --with quota --with linuxprivs
11 Summary: PROfessional FTP Daemon with apache-like configuration syntax
12 Summary(pl): PROfesionalny serwer FTP
21 Source0: ftp://ftp.proftpd.org/distrib/source/%{name}-%{version}.tar.bz2
23 Source2: %{name}.logrotate
25 Source4: %{name}.inetd
26 Source5: %{name}.sysconfig
28 Source7: %{name}-mod_tcpd.c
29 Patch0: %{name}-1.2.2rc3-v6-20010814.patch.gz
30 # ftp://ftp.runestig.com/pub/proftpd-tls/
31 Patch1: %{name}-1.2.2rc3+v6-tls.20010505.patch.gz
32 Patch2: %{name}-umode_t.patch
33 Patch3: %{name}-glibc.patch
34 Patch4: %{name}-paths.patch
35 Patch5: %{name}-release.patch
36 Patch6: %{name}-noautopriv.patch
37 Patch7: %{name}-DESTDIR.patch
38 Patch8: %{name}-wtmp.patch
39 Patch9: %{name}-link.patch
40 Patch10: %{name}-port-65535.patch
41 URL: http://www.proftpd.org/
42 %{?!_without_pam:BuildRequires: pam-devel}
43 %{?_with_ldap:BuildRequires: openldap-devel}
44 %{?_with_mysql:BuildRequires: mysql-devel}
45 %{?!_without_ssl:BuildRequires: openssl-devel >= 0.9.6a}
46 BuildRequires: libwrap-devel
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 %define _sysconfdir /etc/ftpd
50 %define _localstatedir /var/run
53 ProFTPD is a highly configurable ftp daemon for unix and unix-like
54 operating systems. ProFTPD is designed to be somewhat of a "drop-in"
55 replacement for wu-ftpd. Full online documentation is available at
56 http://www.proftpd.org/, including a server configuration directive
60 ProFTPD jest wysoce konfigurowalnym serwerem ftp dla systemów Unix.
61 ProFTPD jest robiony jako bezpo¶redni zamiennik wu-ftpd. Pe³na
62 dokunentacja jest dostêpna on-line pod http://www.proftpd.org/
63 w³±cznie z dokumentacj± dotycz±c± konfigurowania.
66 Summary: PROfessional FTP Daemon with apache-like configuration syntax - common files
67 Summary(pl): PROfesionalny serwer FTP - wspólne pliki
74 %{?!_without_pam:Requires: pam >= 0.67}
75 Obsoletes: proftpd < 0:1.2.2rc1-3
78 ProFTPD is a highly configurable ftp daemon for unix and unix-like
79 operating systems. ProFTPD is designed to be somewhat of a "drop-in"
80 replacement for wu-ftpd. Full online documentation is available at
81 http://www.proftpd.org/, including a server configuration directive
84 %description -l pl common
85 ProFTPD jest wysoce konfigurowalnym serwerem ftp dla systemów Unix.
86 ProFTPD jest robiony jako bezpo¶redni zamiennik wu-ftpd. Pe³na
87 dokunentacja jest dostêpna on-line pod http://www.proftpd.org/
88 w³±cznie z dokumentacj± dotycz±c± konfigurowania.
91 Summary: inetd configs for proftpd
92 Summary(pl): Pliki konfiguracyjne do u¿ycia proftpd poprzez inetd
96 Prereq: %{name}-common = %{epoch}:%{version}
98 Provides: proftpd = %{epoch}:%{version}-%{release}
101 Obsoletes: proftpd-standalone
106 Obsoletes: heimdal-ftpd
107 Obsoletes: linux-ftpd
112 ProFTPD configs for running from inetd.
114 %description -l pl inetd
115 Pliki konfiguracyjna ProFTPD do startowania demona poprzez inetd.
118 Summary: standalone daemon configs for proftpd
119 Summary(pl): Pliki konfiguracyjne do startowania proftpd w trybie standalone
123 Prereq: %{name}-common = %{version}
125 Prereq: /sbin/chkconfig
126 Provides: proftpd = %{epoch}:%{version}-%{release}
128 Obsoletes: proftpd-inetd
133 Obsoletes: heimdal-ftpd
134 Obsoletes: linux-ftpd
138 %description standalone
139 ProFTPD configs for running as a standalone daemon.
141 %description -l pl standalone
142 Pliki konfiguracyjne ProFTPD do startowania demona w trybie standalone.
157 install -m644 %{SOURCE7} contrib/mod_tcpd.c
161 RUN_DIR=%{_localstatedir} ; export RUN_DIR
163 --enable-autoshadow \
164 --with-modules=mod_ratio:mod_readme%{?!_without_ipv6::mod_tcpd}%{?!_without_pam::mod_pam}%{?_with_ldap::mod_ldap}%{?_with_quota::mod_quota}%{?_with_linuxprivs::mod_linuxprivs}%{?_with_mysql::mod_sql:mod_sql_mysql} \
165 %{?!_without_ipv6:--enable-ipv6} \
166 %{?_without_ssl:--disable-tls} \
172 rm -rf $RPM_BUILD_ROOT
174 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,pam.d,security,sysconfig/rc-inetd,rc.d/init.d} \
175 $RPM_BUILD_ROOT/{home/ftp/pub/Incoming,var/log}
177 %{__make} install DESTDIR=$RPM_BUILD_ROOT \
178 INSTALL_USER=`id -u` \
179 INSTALL_GROUP=`id -g`
181 rm -f $RPM_BUILD_ROOT%{_sbindir}/in.proftpd
183 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
184 install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/ftpd
185 %{?!_without_pam:install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/ftp}
186 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/ftpd
187 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/proftpd
188 install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/proftpd
189 install contrib/xferstats.holger-preiss $RPM_BUILD_ROOT%{_bindir}/xferstat
191 mv -f contrib/README contrib/README.modules
193 :> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers.default
194 :> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers
195 :> $RPM_BUILD_ROOT/var/log/xferlog
197 ln -s proftpd $RPM_BUILD_ROOT%{_sbindir}/ftpd
199 :> $RPM_BUILD_ROOT/etc/security/blacklist.ftp
201 gzip -9nf sample-configurations/{virtual,anonymous}.conf ChangeLog README \
202 README.linux-* contrib/README.modules README.IPv6 README.PAM README.TLS
205 rm -rf $RPM_BUILD_ROOT
208 touch /var/log/xferlog
209 awk 'BEGIN { FS = ":" }; { if(($3 < 1000)&&($1 != "ftp")) print $1; }' < /etc/passwd >> %{_sysconfdir}/ftpusers.default
210 if [ ! -f %{_sysconfdir}/ftpusers ]; then
211 ( cd %{_sysconfdir}; mv -f ftpusers.default ftpusers )
215 if grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf ; then
216 cp -a %{_sysconfdir}/proftpd.conf %{_sysconfdir}/proftpd.conf.rpmorig
217 sed -e "s/^ServerType[[:space:]]\+standalone/ServerType inetd/g" \
218 %{_sysconfdir}/proftpd.conf.rpmorig >%{_sysconfdir}/proftpd.conf
220 if [ -f /var/lock/subsys/rc-inetd ]; then
221 /etc/rc.d/init.d/rc-inetd reload 1>&2
223 echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
227 if [ "$1" = "0" -a -f /var/lock/subsys/rc-inetd ]; then
228 /etc/rc.d/init.d/rc-inetd reload 1>&2
232 /sbin/chkconfig --add proftpd
233 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf ; then
234 cp -a %{_sysconfdir}/proftpd.conf %{_sysconfdir}/proftpd.conf.rpmorig
235 sed -e "s/^ServerType[[:space:]]\+inetd/ServerType standalone/g" \
236 %{_sysconfdir}/proftpd.conf.rpmorig >%{_sysconfdir}/proftpd.conf
238 if [ -f /var/lock/subsys/proftpd ]; then
239 /etc/rc.d/init.d/proftpd restart 1>&2
241 echo "Run \"/etc/rc.d/init.d/proftpd start\" to start ProFTPD daemon."
245 if [ "$1" = "0" -a -f /var/lock/subsys/proftpd ]; then
246 /etc/rc.d/init.d/proftpd stop 1>&2
248 /sbin/chkconfig --del proftpd
251 %defattr(644,root,root,755)
252 %doc {ChangeLog,README*}.gz contrib/README.modules.gz
253 %doc sample-configurations/{virtual,anonymous}.conf.gz
256 %attr(750,root,ftp) %dir %{_sysconfdir}
257 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
258 %attr(640,root,root) /etc/logrotate.d/*
259 %attr(640,root,root) %ghost /var/log/*
260 %{?!_without_pam:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*}
262 %attr(640,root,root) %{_sysconfdir}/ftpusers.default
263 %attr(640,root,root) %ghost %{_sysconfdir}/ftpusers
264 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.ftp
266 %attr(755,root,root) %{_bindir}/*
267 %attr(755,root,root) %{_sbindir}/*
269 %{_mandir}/man[158]/*
272 %attr(711,root,root) %dir /home/ftp/pub/Incoming
275 %defattr(644,root,root,755)
276 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/ftpd
279 %defattr(644,root,root,755)
280 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/proftpd
281 %attr(754,root,root) /etc/rc.d/init.d/proftpd