]> git.pld-linux.org Git - packages/proftpd.git/blame_incremental - proftpd.spec
- restore pre-1.3.3 /var/run/proftpd path
[packages/proftpd.git] / proftpd.spec
... / ...
CommitLineData
1# TODO
2# - mod_caps uses uname -r for detection
3# - don't use internal libltdl
4#
5# Conditional build:
6%bcond_without pam # disable PAM support
7%bcond_without ipv6 # disable IPv6 and TCPD support
8%bcond_without ssl # disbale TLS/SSL support
9%bcond_without ldap # disable LDAP support
10%bcond_without mysql # disable MySQL support
11%bcond_without pgsql # disable PostgreSQL support
12%bcond_without quotafile # disable quota file support
13%bcond_without quotaldap # disable quota ldap support
14%bcond_without quotamysql # disable quota mysql support
15%bcond_without quotapgsql # disable quota pgsql support
16#
17%define mod_clamav_version 0.11rc
18
19Summary: PROfessional FTP Daemon with apache-like configuration syntax
20Summary(es.UTF-8): Servidor FTP profesional, con sintaxis de configuración semejante a la del apache
21Summary(pl.UTF-8): PROfesionalny serwer FTP
22Summary(pt_BR.UTF-8): Servidor FTP profissional, com sintaxe de configuração semelhante à do apache
23Summary(zh_CN.UTF-8): 易于管理的,安全的 FTP 服务器
24Name: proftpd
25Version: 1.3.3b
26Release: 0.3
27Epoch: 2
28License: GPL v2+
29Group: Networking/Daemons
30Source0: ftp://ftp.proftpd.org/distrib/source/%{name}-%{version}.tar.bz2
31# Source0-md5: 721b8232fcac36317a6a1d29fa86250e
32Source1: https://secure.thrallingpenguin.com/redmine/attachments/download/1/mod_clamav-%{mod_clamav_version}.tar.gz
33# Source1-md5: 42e560ec0bd5964e13fad1b2bb7afe21
34Source2: %{name}.conf
35Source3: ftp.pamd
36Source4: %{name}.inetd
37Source5: %{name}.sysconfig
38Source6: %{name}.init
39Source7: ftpusers.tar.bz2
40# Source7-md5: 76c80b6ec9f4d079a1e27316edddbe16
41Source9: %{name}-mod_pam.conf
42Source10: %{name}-mod_tls.conf
43Source11: %{name}-anonftp.conf
44Patch0: %{name}-paths.patch
45Patch1: %{name}-noautopriv.patch
46Patch2: %{name}-wtmp.patch
47Patch3: %{name}-pool.patch
48Patch4: %{name}-nostrip.patch
49Patch5: %{name}-link.patch
50URL: http://www.proftpd.org/
51BuildRequires: acl-devel
52BuildRequires: autoconf
53BuildRequires: automake
54BuildRequires: libcap-devel
55BuildRequires: libstdc++-devel
56BuildRequires: libwrap-devel
57%if %{with mysql} || %{with quotamysql}
58BuildRequires: mysql-devel
59%endif
60BuildRequires: ncurses-devel
61%if %{with ldap} || %{with quotaldap}
62BuildRequires: openldap-devel
63%endif
64%{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
65%{?with_pam:BuildRequires: pam-devel}
66%if %{with pgsql} || %{with quotapgsql}
67BuildRequires: postgresql-devel
68%endif
69BuildRequires: rpmbuild(macros) >= 1.268
70BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
71
72%define _sysconfdir /etc/ftpd
73%define _localstatedir /var/run
74%define _libexecdir %{_prefix}/%{_lib}/%{name}
75
76%description
77ProFTPD is a highly configurable FTP daemon for Unix and Unix-like
78operating systems. ProFTPD is designed to be somewhat of a "drop-in"
79replacement for wu-ftpd. Full online documentation is available at
80<http://www.proftpd.org/>, including a server configuration directive
81reference manual.
82
83%description -l es.UTF-8
84ProFTPD es un servidor FTP altamente configurable para sistemas
85operativos Unix. Está proyectado para ser un substituto directo al
86wu-ftpd. La documentación completa está disponible en
87<http://www.proftpd.org/>, incluido el manual de referencia para las
88directivas de configuración del servidor.
89
90%description -l pl.UTF-8
91ProFTPD jest wysoce konfigurowalnym serwerem FTP dla systemów Unix.
92ProFTPD jest robiony jako bezpośredni zamiennik wu-ftpd. Pełna
93dokumentacja jest dostępna on-line pod <http://www.proftpd.org/>
94włącznie z dokumentacją dotyczącą konfigurowania.
95
96%description -l pt_BR.UTF-8
97O ProFTPD é um servidor FTP altamente configurável para sistemas
98operacionais Unix.
99
100É projetado para ser um substituto direto para o wu-ftpd. A
101documentação completa está disponível em <http://www.proftpd.org/>,
102incluindo o manual de referência para as diretivas de configuração do
103servidor.
104
105%package common
106Summary: PROfessional FTP Daemon with apache-like configuration syntax - common files
107Summary(pl.UTF-8): PROfesionalny serwer FTP - wspólne pliki
108Group: Networking/Daemons
109Requires(post): awk
110Requires(post): fileutils
111Obsoletes: proftpd < 0:1.2.2rc1-3
112
113%description common
114ProFTPD is a highly configurable FTP daemon for Unix and Unix-like
115operating systems. ProFTPD is designed to be somewhat of a "drop-in"
116replacement for wu-ftpd. Full online documentation is available at
117<http://www.proftpd.org/>, including a server configuration directive
118reference manual.
119
120%description common -l es.UTF-8
121ProFTPD es un servidor FTP altamente configurable para sistemas
122operativos Unix. Está proyectado para ser un substituto directo al
123wu-ftpd. La documentación completa está disponible en
124<http://www.proftpd.org/>, incluido el manual de referencia para las
125directivas de configuración del servidor.
126
127%description common -l pl.UTF-8
128ProFTPD jest wysoce konfigurowalnym serwerem FTP dla systemów Unix.
129ProFTPD jest robiony jako bezpośredni zamiennik wu-ftpd. Pełna
130dokumentacja jest dostępna on-line pod <http://www.proftpd.org/>
131włącznie z dokumentacją dotyczącą konfigurowania.
132
133%description common -l pt_BR.UTF-8
134O ProFTPD é um servidor FTP altamente configurável para sistemas
135operacionais Unix.
136
137É projetado para ser um substituto direto para o wu-ftpd. A
138documentação completa está disponível em <http://www.proftpd.org/>,
139incluindo o manual de referência para as diretivas de configuração do
140servidor.
141
142%package inetd
143Summary: inetd configs for proftpd
144Summary(pl.UTF-8): Pliki konfiguracyjne do użycia proftpd poprzez inetd
145Group: Networking/Daemons
146Requires(post): fileutils
147Requires(post): grep
148Requires(post): sed >= 4.0
149Requires(triggerpostun): sed >= 4.0
150Requires: %{name}-common = %{epoch}:%{version}-%{release}
151Requires: rc-inetd
152Provides: ftpserver
153Provides: proftpd = %{epoch}:%{version}-%{release}
154Obsoletes: anonftp
155Obsoletes: bftpd
156Obsoletes: ftpd-BSD
157Obsoletes: ftpserver
158Obsoletes: glftpd
159Obsoletes: heimdal-ftpd
160Obsoletes: krb5-ftpd
161Obsoletes: linux-ftpd
162Obsoletes: muddleftpd
163Obsoletes: proftpd-standalone
164Obsoletes: pure-ftpd
165Obsoletes: troll-ftpd
166Obsoletes: vsftpd
167Obsoletes: wu-ftpd
168Conflicts: man-pages < 1.51
169Conflicts: rpm < 4.4.2-0.2
170
171%description inetd
172ProFTPD configs for running from inetd.
173
174%description inetd -l pl.UTF-8
175Pliki konfiguracyjna ProFTPD do startowania demona poprzez inetd.
176
177%package standalone
178Summary: Standalone daemon configs for proftpd
179Summary(pl.UTF-8): Pliki konfiguracyjne do startowania proftpd w trybie standalone
180Group: Networking/Daemons
181Requires(post): fileutils
182Requires(post): grep
183Requires(post): sed >= 4.0
184Requires(post,preun): /sbin/chkconfig
185Requires(triggerpostun): sed >= 4.0
186Requires: %{name}-common = %{epoch}:%{version}-%{release}
187Requires: rc-scripts
188Provides: ftpserver
189Provides: proftpd = %{epoch}:%{version}-%{release}
190Obsoletes: anonftp
191Obsoletes: bftpd
192Obsoletes: ftpd-BSD
193Obsoletes: ftpserver
194Obsoletes: glftpd
195Obsoletes: heimdal-ftpd
196Obsoletes: krb5-ftpd
197Obsoletes: linux-ftpd
198Obsoletes: muddleftpd
199Obsoletes: proftpd-inetd
200Obsoletes: pure-ftpd
201Obsoletes: troll-ftpd
202Obsoletes: vsftpd
203Obsoletes: wu-ftpd
204Conflicts: man-pages < 1.51
205Conflicts: rpm < 4.4.2-0.2
206
207%description standalone
208ProFTPD configs for running as a standalone daemon.
209
210%description standalone -l pl.UTF-8
211Pliki konfiguracyjne ProFTPD do startowania demona w trybie
212standalone.
213
214%package devel
215Summary: Header files ProFTPD
216Summary(pl.UTF-8): Pliki nagłówkowe ProFTPD
217Group: Development/Libraries
218Requires: acl-devel
219
220%description devel
221This is the package containing the header files for ProFTPD.
222
223%description devel -l pl.UTF-8
224Ten pakiet zawiera pliki nagłówkowe ProFTPD
225
226%package anonftp
227Summary: Anonymous FTP config for ProFTPD
228Summary(pl.UTF-8): Konfiguracja anonimowego FTP dla ProFTPD
229Group: Networking/Daemons
230Requires: %{name}-common = %{epoch}:%{version}-%{release}
231
232%description anonftp
233Anonymous FTP config for ProFTPD.
234
235%description anonftp -l pl.UTF-8
236Konfiguracja anonimowego FTP dla ProFTPD.
237
238%package mod_auth_pam
239Summary: ProFTPD PAM auth module
240Summary(pl.UTF-8): Moduł uwierzytelnienia PAM dla ProFTPD
241Group: Networking/Daemons
242Requires: %{name}-common = %{epoch}:%{version}-%{release}
243Requires: pam >= 0.79.0
244
245%description mod_auth_pam
246PAM authentication method for ProFTPD.
247
248%description mod_auth_pam -l pl.UTF-8
249Metoda uwierzytelnienia PAM dla ProFTPD.
250
251%package mod_ldap
252Summary: ProFTPD OpenLDAP module
253Summary(pl.UTF-8): Moduł OpenLDAP dla ProFTPD
254Group: Networking/Daemons
255Requires: %{name}-common = %{epoch}:%{version}-%{release}
256
257%description mod_ldap
258mod_ldap provides LDAP authentication support for ProFTPD. It supports
259many features useful in "toaster" environments such as default UID/GID
260and autocreation/autogeneration of home directories.
261
262%description mod_ldap -l pl.UTF-8
263mod_ldap dodaje obsługę uwierzytelnienia LDAP do ProFTPD. Obsługuje
264wiele cech przydatnych w środowiskach "tosterowych", takich jak
265domyślny UID/GID i automatyczne tworzenie/generowanie katalogów
266domowych.
267
268%package mod_quotatab
269Summary: ProFTPD quotatab module
270Summary(pl.UTF-8): Moduł quotatab dla ProFTPD
271Group: Networking/Daemons
272Requires: %{name}-common = %{epoch}:%{version}-%{release}
273
274%description mod_quotatab
275A module for managing FTP byte/file quotas via centralized tables.
276
277%description mod_quotatab -l pl.UTF-8
278Moduł do zarządzania ograniczeniami bajtów/plików FTP poprzez
279scentralizowane tabele.
280
281%package mod_quotatab_file
282Summary: ProFTPD quotatab file module
283Summary(pl.UTF-8): Moduł quotatab_file dla ProFTPD
284Group: Networking/Daemons
285Requires: %{name}-common = %{epoch}:%{version}-%{release}
286Requires: %{name}-mod_quotatab = %{epoch}:%{version}-%{release}
287
288%description mod_quotatab_file
289A mod_quotatab sub-module for managing quota data via file-based
290tables.
291
292%description mod_quotatab_file -l pl.UTF-8
293Podmoduł mod_quotatab do zarządzania danymi o ograniczeniach poprzez
294tabele zapisane w pliku.
295
296%package mod_quotatab_ldap
297Summary: ProFTPD quotatab ldap module
298Summary(pl.UTF-8): Moduł quotatab_ldap dla ProFTPD
299Group: Networking/Daemons
300Requires: %{name}-common = %{epoch}:%{version}-%{release}
301Requires: %{name}-mod_ldap = %{epoch}:%{version}-%{release}
302Requires: %{name}-mod_quotatab = %{epoch}:%{version}-%{release}
303
304%description mod_quotatab_ldap
305A mod_quotatab sub-module for obtaining quota information from an LDAP
306directory.
307
308%description mod_quotatab_ldap -l pl.UTF-8
309Podmoduł mod_quotatab do pobierania informacji o ograniczeniach z
310katalogu LDAP.
311
312%package mod_quotatab_sql
313Summary: ProFTPD quotatab sql module
314Summary(pl.UTF-8): Moduł quotatab_sql dla ProFTPD
315Group: Networking/Daemons
316Requires: %{name}-common = %{epoch}:%{version}-%{release}
317Requires: %{name}-mod_quotatab = %{epoch}:%{version}-%{release}
318Requires: %{name}-mod_sql = %{epoch}:%{version}-%{release}
319
320%description mod_quotatab_sql
321A mod_quotatab sub-module for managing quota data via SQL-based
322tables.
323
324%description mod_quotatab_sql -l pl.UTF-8
325Podmoduł mod_quotatab do zarządzania danymi o ograniczeniach poprzez
326tabele SQL.
327
328%package mod_ratio
329Summary: ProFTPD ratio module
330Summary(pl.UTF-8): Moduł ratio dla ProFTPD
331Group: Networking/Daemons
332Requires: %{name}-common = %{epoch}:%{version}-%{release}
333
334%description mod_ratio
335Support upload/download ratios.
336
337%description mod_ratio -l pl.UTF-8
338Obsługa współczynników upload/download.
339
340%package mod_readme
341Summary: ProFTPD readme module
342Summary(pl.UTF-8): Moduł readme dla ProFTPD
343Group: Networking/Daemons
344Requires: %{name}-common = %{epoch}:%{version}-%{release}
345
346%description mod_readme
347"README" file support.
348
349%description mod_readme -l pl.UTF-8
350Obsługa pliku "README".
351
352%package mod_rewrite
353Summary: ProFTPD rewrite module
354Summary(pl.UTF-8): Moduł rewrite dla ProFTPD
355Group: Networking/Daemons
356Requires: %{name}-common = %{epoch}:%{version}-%{release}
357
358%description mod_rewrite
359Runtime rewrite engine.
360
361%description mod_rewrite -l pl.UTF-8
362Silnik przepisujący adresy w locie.
363
364%package mod_sql
365Summary: ProFTPD SQL support module
366Summary(pl.UTF-8): Moduł obsługi SQL dla ProFTPD
367Group: Networking/Daemons
368Requires: %{name}-common = %{epoch}:%{version}-%{release}
369
370%description mod_sql
371This module provides the necessary support for SQL based
372authentication, logging and other features as required.
373
374%description mod_sql -l pl.UTF-8
375Ten moduł dodaje obsługę SQL potrzebną do uwierzytelniania, logowania
376i innych możliwości opartych o SQL.
377
378%package mod_sql_mysql
379Summary: ProFTPD sql mysql module
380Summary(pl.UTF-8): Moduł sql_mysql dla ProFTPD
381Group: Networking/Daemons
382Requires: %{name}-common = %{epoch}:%{version}-%{release}
383Requires: %{name}-mod_sql = %{epoch}:%{version}-%{release}
384
385%description mod_sql_mysql
386Support for connecting to MySQL databases.
387
388%description mod_sql_mysql -l pl.UTF-8
389Obsługa łączenia się z bazami danych MySQL.
390
391%package mod_sql_postgres
392Summary: ProFTPD sql postgres module
393Summary(pl.UTF-8): Moduł sql_postgres dla ProFTPD
394Group: Networking/Daemons
395Requires: %{name}-common = %{epoch}:%{version}-%{release}
396Requires: %{name}-mod_sql = %{epoch}:%{version}-%{release}
397
398%description mod_sql_postgres
399Support for connecting to PostgreSQL databases.
400
401%description mod_sql_postgres -l pl.UTF-8
402Obsługa łączenia się z bazami danych PostgreSQL.
403
404%package mod_tls
405Summary: ProFTPD TLS support
406Summary(pl.UTF-8): Obsługa TLS dla ProFTPD
407Group: Networking/Daemons
408Requires: %{name}-common = %{epoch}:%{version}-%{release}
409
410%description mod_tls
411An RFC2228 SSL/TLS module for ProFTPD.
412
413%description mod_tls -l pl.UTF-8
414Moduł SSL/TLS zgodny z RFC2228 dla ProFTPD.
415
416%package mod_wrap
417Summary: ProFTPD interface to libwrap
418Summary(pl.UTF-8): Interfejs ProFTPD do libwrap
419Group: Networking/Daemons
420Requires: %{name}-common = %{epoch}:%{version}-%{release}
421Requires: libwrap
422
423%description mod_wrap
424It enables the daemon to use the common tcpwrappers access control
425library while in standalone mode, and in a very configurable manner.
426
427Many programs will automatically add entries in the common allow/deny
428files, and use of this module will allow a ProFTPD daemon running in
429standalone mode to adapt as these entries are added. The portsentry
430program does this, for example: when illegal access is attempted, it
431will add hosts to the /etc/hosts.deny file.
432
433%description mod_wrap -l pl.UTF-8
434Ten pakiet pozwala demonowi używać wspólnej biblioteki kontroli
435dostępu tcpwrappers w trybie samodzielnym w bardzo wygodny sposób.
436
437Wiele programów automatycznie dodaje wpisy we wspólnych plikach
438allow/deny, a użycie tego modułu pozwala demonowi ProFTPD działającemu
439w trybie samodzielnym adaptować te wpisy w miarę dodawania. Robi tak
440na przykład program portsentry: przy próbie niedozwolonego dostępu
441dodaje hosty do pliku /etc/hosts.deny.
442
443%prep
444%setup -q -n %{name}-%{version}%{?_rc} -a1
445%patch0 -p1
446%patch1 -p1
447%patch2 -p1
448%patch3 -p1
449%patch4 -p1
450%patch5 -p1
451
452# mod_clamav
453patch -p0 < mod_clamav-%{mod_clamav_version}/proftpd.patch
454cp -a mod_clamav-%{mod_clamav_version}/*.{c,h} contrib/
455
456cp -f /usr/share/automake/config.sub .
457
458# cleanup backups after patching
459find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
460
461%build
462%{__autoconf}
463
464MODULES="
465mod_auth_file
466mod_ident
467mod_ratio
468mod_readme
469mod_rewrite
470mod_wrap
471mod_facl
472mod_ifsession
473mod_lang
474%{?with_ssl:mod_tls}
475%{?with_pam:mod_auth_pam}
476%{?with_ldap:mod_ldap}
477%{?with_quotafile:mod_quotatab mod_quotatab_file}
478%{?with_quotaldap:mod_quotatab mod_quotatab_ldap}
479%{?with_quotamysql:mod_quotatab mod_quotatab_sql}
480%{?with_quotapgsql:mod_quotatab mod_quotatab_sql}
481%{?with_mysql:mod_sql mod_sql_mysql}
482%{?with_pgsql:mod_sql mod_sql_postgres}
483"
484
485MODARG=$(echo $MODULES | tr ' ' '\n' | sort -u | xargs | tr ' ' ':')
486%configure \
487 --with-includes=/usr/include/ncurses%{?with_mysql::%{_includedir}/mysql} \
488 --disable-auth-file \
489 --enable-autoshadow \
490 --enable-ctrls \
491 --enable-dso \
492 %{?with_ipv6:--enable-ipv6} \
493 --enable-sendfile \
494 %{!?with_ssl:--disable-tls} \
495 --with-shared=$MODARG \
496 --with-modules=mod_clamav
497
498%{__make} -j1
499
500%install
501rm -rf $RPM_BUILD_ROOT
502install -d $RPM_BUILD_ROOT/etc/{pam.d,security,sysconfig/rc-inetd,rc.d/init.d} \
503 $RPM_BUILD_ROOT/var/{lib/ftp/pub/Incoming,log,run/proftpd} \
504 $RPM_BUILD_ROOT%{_sysconfdir}/conf.d \
505 $RPM_BUILD_ROOT%{_includedir}/%{name}
506
507%{__make} install \
508 DESTDIR=$RPM_BUILD_ROOT \
509 INSTALL_USER=%(id -u) \
510 INSTALL_GROUP=%(id -g)
511
512rm $RPM_BUILD_ROOT%{_sbindir}/in.proftpd
513
514install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}
515install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/mod_auth_pam.conf
516MODULES="
517mod_auth_file
518mod_ident
519mod_ratio
520mod_readme
521mod_rewrite
522mod_wrap
523%{?with_ldap:mod_ldap}
524%{?with_quotafile:mod_quotatab mod_quotatab_file}
525%{?with_quotaldap:mod_quotatab mod_quotatab_ldap}
526%{?with_quotamysql:mod_quotatab mod_quotatab_sql}
527%{?with_quotapgsql:mod_quotatab mod_quotatab_sql}
528%{?with_mysql:mod_sql mod_sql_mysql}
529%{?with_pgsql:mod_sql mod_sql_postgres}
530"
531for module in $MODULES; do
532 echo "LoadModule $module.c" > $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/$module.conf
533done
534install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/mod_tls.conf
535install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/anonftp.conf
536
537%{?with_pam:install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/ftp}
538install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/ftpd
539install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/proftpd
540install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/proftpd
541install contrib/xferstats.holger-preiss $RPM_BUILD_ROOT%{_bindir}/xferstat
542
543bzip2 -dc %{SOURCE7} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
544
545:> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers.default
546:> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers
547
548# only for -inetd package?
549ln -sf proftpd $RPM_BUILD_ROOT%{_sbindir}/ftpd
550
551:> $RPM_BUILD_ROOT/etc/security/blacklist.ftp
552
553rm $RPM_BUILD_ROOT%{_libexecdir}/*.a
554rm $RPM_BUILD_ROOT%{_libexecdir}/*.la
555
556rm -f $RPM_BUILD_ROOT%{_mandir}/ftpusers-path.diff*
557cp -aL include/* config.h $RPM_BUILD_ROOT%{_includedir}/%{name}
558
559%clean
560rm -rf $RPM_BUILD_ROOT
561
562%post common
563umask 027
564awk -F: '{ if (($3 < 500) && ($1 != "ftp")) print $1; }' < /etc/passwd >> %{_sysconfdir}/ftpusers.default
565if [ ! -f %{_sysconfdir}/ftpusers ]; then
566 cp -f %{_sysconfdir}/ftpusers.default %{_sysconfdir}/ftpusers
567fi
568
569%posttrans inetd
570if grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf ; then
571 cp -f %{_sysconfdir}/proftpd.conf{,.rpmorig}
572 sed -i -e 's/^ServerType[[:space:]]\+standalone/ServerType inetd/g' %{_sysconfdir}/proftpd.conf
573fi
574%service -q rc-inetd reload
575
576%postun inetd
577if [ "$1" = "0" ]; then
578 %service -q rc-inetd reload
579fi
580
581%posttrans standalone
582if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf ; then
583 cp -f %{_sysconfdir}/proftpd.conf{,.rpmorig}
584 sed -i -e 's/^ServerType[[:space:]]\+inetd/ServerType standalone/g' %{_sysconfdir}/proftpd.conf
585fi
586/sbin/chkconfig --add proftpd
587%service proftpd restart "ProFTPD daemon"
588
589%preun standalone
590if [ "$1" = "0" ]; then
591 %service proftpd stop
592 /sbin/chkconfig --del proftpd
593fi
594
595# macro called at module post scriptlet
596%define module_post \
597if [ "$1" = "1" ]; then \
598 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf; then \
599 %service -q rc-inetd reload \
600 elif grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf; then \
601 %service -q proftpd restart \
602 fi \
603fi
604
605# macro called at module postun scriptlet
606%define module_postun \
607if [ "$1" = "0" ]; then \
608 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf; then \
609 %service -q rc-inetd reload \
610 elif grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf; then \
611 %service -q proftpd restart \
612 fi \
613fi
614
615# it's sooo annoying to write them
616%define module_scripts() \
617%post %1 \
618%module_post \
619\
620%postun %1 \
621%module_postun
622
623%module_scripts mod_auth_pam
624%module_scripts mod_ldap
625%module_scripts mod_quotatab
626%module_scripts mod_quotatab_file
627%module_scripts mod_quotatab_ldap
628%module_scripts mod_quotatab_sql
629%module_scripts mod_ratio
630%module_scripts mod_readme
631%module_scripts mod_rewrite
632%module_scripts mod_sql
633%module_scripts mod_sql_mysql
634%module_scripts mod_sql_postgres
635%module_scripts mod_tls
636%module_scripts mod_wrap
637
638%files common
639%defattr(644,root,root,755)
640%doc sample-configurations/*.conf CREDITS ChangeLog NEWS RELEASE_NOTES
641%doc README README.capabilities README.classes README.controls README.IPv6
642%doc README.modules
643%doc doc/*.html doc/contrib doc/howto doc/modules
644%dir %attr(750,root,ftp) %dir %{_sysconfdir}
645%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
646%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/ftpusers
647%attr(640,root,root) %{_sysconfdir}/ftpusers.default
648%dir %attr(750,root,root) %{_sysconfdir}/conf.d
649%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_auth_file.conf
650%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_ident.conf
651#%attr(640,root,root) %ghost /var/log/*
652%attr(755,root,root) %{_bindir}/*
653%attr(755,root,root) %{_sbindir}/*
654%dir %{_libexecdir}
655%attr(755,root,root) %{_libexecdir}/mod_auth_file.so
656%attr(755,root,root) %{_libexecdir}/mod_facl.so
657%attr(755,root,root) %{_libexecdir}/mod_ident.so
658%attr(755,root,root) %{_libexecdir}/mod_ifsession.so
659%attr(755,root,root) %{_libexecdir}/mod_lang.so
660%dir %{_localstatedir}/proftpd
661%{_mandir}/man[18]/*
662%dir /var/lib/ftp
663%dir /var/lib/ftp/pub
664%attr(711,ftp,ftp) %dir /var/lib/ftp/pub/Incoming
665
666%files inetd
667%defattr(644,root,root,755)
668%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/ftpd
669%{_mandir}/man5/*
670%lang(ja) %{_mandir}/ja/man5/ftpusers*
671%lang(pl) %{_mandir}/pl/man5/ftpusers*
672%lang(pt_BR) %{_mandir}/pt_BR/man5/ftpusers*
673%lang(ru) %{_mandir}/ru/man5/ftpusers*
674
675%files standalone
676%defattr(644,root,root,755)
677%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/proftpd
678%attr(754,root,root) /etc/rc.d/init.d/proftpd
679%{_mandir}/man5/*
680%lang(ja) %{_mandir}/ja/man5/ftpusers*
681%lang(pl) %{_mandir}/pl/man5/ftpusers*
682%lang(pt_BR) %{_mandir}/pt_BR/man5/ftpusers*
683%lang(ru) %{_mandir}/ru/man5/ftpusers*
684
685%files devel
686%defattr(644,root,root,755)
687%{_includedir}/%{name}
688%{_pkgconfigdir}/%{name}.pc
689
690%files anonftp
691%defattr(644,root,root,755)
692%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/anonftp.conf
693
694%if %{with pam}
695%files mod_auth_pam
696%defattr(644,root,root,755)
697%doc README.PAM
698%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
699%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.ftp
700%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_auth_pam.conf
701%attr(755,root,root) %{_libexecdir}/mod_auth_pam.so
702%endif
703
704%if %{with ldap}
705%files mod_ldap
706%defattr(644,root,root,755)
707%doc README.LDAP
708%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_ldap.conf
709%attr(755,root,root) %{_libexecdir}/mod_ldap.so
710%endif
711
712%files mod_quotatab
713%defattr(644,root,root,755)
714%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab.conf
715%attr(755,root,root) %{_libexecdir}/mod_quotatab.so
716
717%if %{with quotafile}
718%files mod_quotatab_file
719%defattr(644,root,root,755)
720%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab_file.conf
721%attr(755,root,root) %{_libexecdir}/mod_quotatab_file.so
722%endif
723
724%if %{with quotaldap}
725%files mod_quotatab_ldap
726%defattr(644,root,root,755)
727%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab_ldap.conf
728%attr(755,root,root) %{_libexecdir}/mod_quotatab_ldap.so
729%endif
730
731%if %{with quotamysql} || %{with quotapgsql}
732%files mod_quotatab_sql
733%defattr(644,root,root,755)
734%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab_sql.conf
735%attr(755,root,root) %{_libexecdir}/mod_quotatab_sql.so
736%endif
737
738%files mod_ratio
739%defattr(644,root,root,755)
740%doc contrib/README.ratio
741%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_ratio.conf
742%attr(755,root,root) %{_libexecdir}/mod_ratio.so
743
744%files mod_readme
745%defattr(644,root,root,755)
746%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_readme.conf
747%attr(755,root,root) %{_libexecdir}/mod_readme.so
748
749%files mod_rewrite
750%defattr(644,root,root,755)
751%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_rewrite.conf
752%attr(755,root,root) %{_libexecdir}/mod_rewrite.so
753
754%if %{with mysql} || %{with pgsql}
755%files mod_sql
756%defattr(644,root,root,755)
757%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_sql.conf
758%attr(755,root,root) %{_libexecdir}/mod_sql.so
759%endif
760
761%if %{with mysql}
762%files mod_sql_mysql
763%defattr(644,root,root,755)
764%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_sql_mysql.conf
765%attr(755,root,root) %{_libexecdir}/mod_sql_mysql.so
766%endif
767
768%if %{with pgsql}
769%files mod_sql_postgres
770%defattr(644,root,root,755)
771%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_sql_postgres.conf
772%attr(755,root,root) %{_libexecdir}/mod_sql_postgres.so
773%endif
774
775%files mod_tls
776%defattr(644,root,root,755)
777%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_tls.conf
778%attr(755,root,root) %{_libexecdir}/mod_tls.so
779
780%files mod_wrap
781%defattr(644,root,root,755)
782%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_wrap.conf
783%attr(755,root,root) %{_libexecdir}/mod_wrap.so
This page took 0.039805 seconds and 4 git commands to generate.