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