X-Git-Url: http://git.pld-linux.org/?p=packages%2Fvsftpd.git;a=blobdiff_plain;f=vsftpd.spec;h=f3f88db5503452f9b3326dfbca8f9bcea2e9a7c9;hp=9de7b89beaf7237456915675e39e11e1aaa04435;hb=9f41143;hpb=a65fc8bc28cf5b65c7be46be108f43a5d0532d87 diff --git a/vsftpd.spec b/vsftpd.spec index 9de7b89..f3f88db 100644 --- a/vsftpd.spec +++ b/vsftpd.spec @@ -1,45 +1,43 @@ +### TODO: +# - default config does not work with inetd configuration # %define _ftpdir /home/services/ftp # +%bcond_with clamav #ClamAV scanning support + Summary: vsftpd - Very Secure FTP Daemon -Summary(pl): Bardzo Bezpieczny Demon FTP -Summary(pt_BR): vsftpd - Daemon Ftp Muito Seguro +Summary(pl.UTF-8): Bardzo Bezpieczny Demon FTP +Summary(pt_BR.UTF-8): vsftpd - Daemon FTP Muito Seguro Name: vsftpd -Version: 2.0.0 -Release: 1 +Version: 2.3.2 +Release: 2 License: GPL v2 Group: Daemons Source0: ftp://vsftpd.beasts.org/users/cevans/%{name}-%{version}.tar.gz -# Source0-md5: 16227daec616f64e093fffeb358a50c5 +# Source0-md5: bad7b117d737a738738836041edc00db Source1: %{name}.inetd Source2: %{name}.pamd Source3: %{name}-ftpusers Source4: ftpusers.tar.bz2 # Source4-md5: 76c80b6ec9f4d079a1e27316edddbe16 +Source5: %{name}.init Patch0: %{name}-builddefs.patch +Patch1: %{name}-amd64-findlibs.patch +Patch2: %{name}-clamav.patch +Patch3: %{name}-switch_sha256_to_sha1.patch URL: http://vsftpd.beasts.org/ -PreReq: rc-inetd BuildRequires: libcap-devel BuildRequires: libwrap-devel +%if "%{pld_release}" == "ac" BuildRequires: openssl-devel >= 0.9.7d -Requires: FHS >= 2.3 +%else +BuildRequires: openssl-devel >= 0.9.8 +%endif +BuildRequires: rpmbuild(macros) >= 1.268 +Requires: %{name}-init = %{version}-%{release} +Requires: filesystem >= 3.0-11 Requires: pam >= 0.77.3 Provides: ftpserver -Obsoletes: ftpserver -Obsoletes: anonftp -Obsoletes: bftpd -Obsoletes: ftpd-BSD -Obsoletes: glftpd -Obsoletes: heimdal-ftpd -Obsoletes: linux-ftpd -Obsoletes: muddleftpd -Obsoletes: proftpd -Obsoletes: proftpd-common -Obsoletes: proftpd-inetd -Obsoletes: proftpd-standalone -Obsoletes: pure-ftpd -Obsoletes: troll-ftpd -Obsoletes: wu-ftpd Conflicts: man-pages < 1.51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -47,17 +45,59 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) A Very Secure FTP Daemon - written from scratch - by Chris "One Man Security Audit Team" Evans. -%description -l pl +%description -l pl.UTF-8 Bardzo Bezpieczny Demon FTP - napisany od zera przez Chrisa "One Man Security Audit Team" Evansa. -%description -l pt_BR +%description -l pt_BR.UTF-8 A Very Secure FTP Daemon (vsftpd) - escrito do zero - por Chris "One Man Security Audit Team" Evans. +%package inetd +Summary: vsftpd - Very Secure FTP Daemon +Summary(pl.UTF-8): Bardzo Bezpieczny Demon FTP +Summary(pt_BR.UTF-8): vsftpd - Daemon FTP Muito Seguro +Group: Networking/Daemons +Requires: %{name} = %{version}-%{release} +Requires: rc-inetd +Provides: %{name}-init = %{version}-%{release} +Obsoletes: vsftpd-standalone +Conflicts: %{name} <= 2.0.3-1 + +%description inetd +This package allows to start vsftpd as inetd service. + +%description inetd -l pl.UTF-8 +Ten pakiet pozwala na wystartowanie vsftpd jako usługi inetd. + +%package standalone +Summary: vsftpd - Very Secure FTP Daemon +Summary(pl.UTF-8): Bardzo Bezpieczny Demon FTP +Summary(pt_BR.UTF-8): vsftpd - Daemon FTP Muito Seguro +Group: Networking/Daemons +Requires(post,preun): /sbin/chkconfig +Requires: %{name} = %{version}-%{release} +Requires: rc-scripts +Provides: %{name}-init = %{version}-%{release} +Obsoletes: vsftpd-inetd +Conflicts: %{name} <= 2.0.3-1 + +%description standalone +This package allows to start vsftpd as standalone daemon. + +%description standalone -l pl.UTF-8 +Ten pakiet pozwala na wystartowanie vsftpd jako samodzielnego demona. + %prep %setup -q %patch0 -p1 +%patch1 -p1 +%if %{with clamav} +%patch2 -p1 +%endif +%if "%{pld_release}" == "ac" +%patch3 -p1 +%endif %build %{__make} \ @@ -67,8 +107,8 @@ Man Security Audit Team" Evans. %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_sbindir},%{_datadir}/empty,%{_mandir}/man{5,8}} \ - $RPM_BUILD_ROOT/etc/{pam.d,sysconfig/rc-inetd,logrotate.d,ftpd} \ +install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man{5,8}} \ + $RPM_BUILD_ROOT/etc/{pam.d,sysconfig/rc-inetd,logrotate.d,ftpd,rc.d/init.d} \ $RPM_BUILD_ROOT{%{_ftpdir}/pub/incoming,/var/log} install vsftpd $RPM_BUILD_ROOT%{_sbindir}/vsftpd @@ -80,10 +120,12 @@ install RedHat/vsftpd.log $RPM_BUILD_ROOT/etc/logrotate.d/vsftpd install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/vsftpd install %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/ftp install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/ftpd/ftpusers +install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/vsftpd > $RPM_BUILD_ROOT/var/log/vsftpd.log bzip2 -dc %{SOURCE4} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} +rm -f $RPM_BUILD_ROOT/usr/share/man/ftpusers-path.diff %clean rm -rf $RPM_BUILD_ROOT @@ -91,26 +133,34 @@ rm -rf $RPM_BUILD_ROOT %post touch /var/log/vsftpd.log chmod 640 /var/log/vsftpd.log -if [ -f /var/lock/subsys/rc-inetd ]; then - /etc/rc.d/init.d/rc-inetd reload 1>&2 -else - echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2 + +%post inetd +%service -q rc-inetd reload + +%postun inetd +if [ "$1" = "0" ]; then + %service -q rc-inetd reload fi -%postun -if [ "$1" = "0" -a -f /var/lock/subsys/rc-inetd ]; then - /etc/rc.d/init.d/rc-inetd reload 1>&2 +%post standalone +/sbin/chkconfig --add %{name} +%service vsftpd restart "vsftpd server" + +%preun standalone +if [ "$1" = "0" ]; then + %service vsftpd stop + /sbin/chkconfig --del %{name} fi %files %defattr(644,root,root,755) -%doc AUDIT BENCHMARKS BUGS Changelog FAQ README REWARD SIZE SPEED TODO TUNING EXAMPLE SECURITY +%doc AUDIT BENCHMARKS BUGS Changelog FAQ README README.ssl REWARD SIZE SPEED TODO TUNING EXAMPLE SECURITY %attr(755,root,root) %{_sbindir}/vsftpd -%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/vsftpd.conf -%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/ftpd/ftpusers -%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rc-inetd/vsftpd -%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/ftp -%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/vsftpd +%dir %attr(750,root,ftp) %dir %{_sysconfdir}/ftpd +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vsftpd.conf +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ftpd/ftpusers +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/ftp +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/vsftpd %attr(640,root,root) %ghost /var/log/vsftpd.log %{_mandir}/man5/vsftpd.conf.5* %{_mandir}/man8/vsftpd.8* @@ -123,3 +173,11 @@ fi %dir %{_ftpdir}/pub # it's safe - by default anon_upload_enable=NO, anon_world_readable_only=YES %attr(775,root,ftp) %dir %{_ftpdir}/pub/incoming + +%files inetd +%defattr(644,root,root,755) +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/vsftpd + +%files standalone +%defattr(644,root,root,755) +%attr(754,root,root) /etc/rc.d/init.d/vsftpd