4 # s/pam_make\.so \(.*\)/pam_exec.so make -C \1/g
5 # s/pam_homedir\.so/pam_mkhomedir.so/g
6 # /var/lock/console -> /var/run/console
9 %bcond_without doc # don't build documentation
10 %bcond_with prelude # build with Prelude IDS support
11 %bcond_without selinux # build without SELinux support
12 %bcond_with audit # build with Linux Auditing library support
14 %define pam_pld_version 0.99.7.1-1
16 Summary: Pluggable Authentication Modules: modular, incremental authentication
17 Summary(de): Einsteckbare Authentifizierungsmodule: modulare, inkrementäre Authentifizierung
18 Summary(es): Módulos de autentificación plugables (PAM)
19 Summary(fr): PAM : Pluggable Authentication Modules: modular, incremental authentication
20 Summary(pl): Modularny system uwierzytelniania
21 Summary(pt_BR): Módulos de autenticação plugáveis (PAM)
22 Summary(ru): éÎÔÓÔÒÕÍÅÎÔ, ÏÂÅÓÐÅÞÉ×ÁÀÝÉÊ ÁÕÔÅÎÔÉÆÉËÁÃÉÀ ÄÌÑ ÐÒÉÌÏÖÅÎÉÊ
23 Summary(tr): Modüler, artýmsal doðrulama birimleri
24 Summary(uk): ¶ÎÓÔÒÕÍÅÎÔ, ÝÏ ÚÁÂÅÚÐÅÞÕ¤ ÁÕÔÅÎÔÉƦËÁæÀ ÄÌÑ ÐÒÏÇÒÁÍ
30 Source0: http://ftp.kernel.org/pub/linux/libs/pam/pre/library/Linux-PAM-%{version}.tar.bz2
31 # Source0-md5: 385458dfb4633071594e255a6ebec9da
32 Source1: http://ftp.kernel.org/pub/linux/libs/pam/pre/library/Linux-PAM-%{version}.tar.bz2.sign
33 # Source1-md5: 259c57009369eda92a00d1a153776ac6
34 Source2: ftp://ftp.pld-linux.org/software/pam/pam-pld-%{pam_pld_version}.tar.gz
35 # Source2-md5: 62ee3a41c59000c78a3d6aa024ee55bd
37 Source4: system-auth.pamd
38 Source5: config-util.pamd
39 Source6: pam_selinux_check.pamd
40 Source7: system-auth.5
41 Source8: config-util.5
42 Patch0: %{name}-pld-modules.patch
43 Patch1: %{name}-modutil_mem_limit.patch
44 Patch2: %{name}-cracklib-try-first-pass.patch
45 Patch3: %{name}-cracklib-enforce.patch
46 Patch4: %{name}-tally-fail-close.patch
47 Patch5: %{name}-selinux-nofail.patch
48 Patch6: %{name}-selinux-drop-multiple.patch
49 Patch7: %{name}-selinux-keycreate.patch
50 Patch8: %{name}-selinux-select-context.patch
51 Patch9: %{name}-selinux-use-current-range.patch
52 Patch10: %{name}-namespace-no-unmount.patch
53 Patch11: %{name}-namespace-preserve-uid.patch
54 Patch12: %{name}-namespace-level.patch
55 Patch13: %{name}-namespace-unmnt-override.patch
56 Patch14: %{name}-unix-nullcheck.patch
57 Patch15: %{name}-unix-blowfish.patch
58 Patch16: %{name}-mkhomedir-new-features.patch
59 URL: http://www.kernel.org/pub/linux/libs/pam/
60 %{?with_audit:BuildRequires: audit-libs-devel >= 1.0.8}
61 BuildRequires: autoconf
62 BuildRequires: automake
64 BuildRequires: cracklib-devel
65 BuildRequires: db-devel
67 %{?with_prelude:BuildRequires: libprelude-devel}
68 %{?with_selinux:BuildRequires: libselinux-devel >= 1.33.2}
69 BuildRequires: libtool >= 2:1.5
71 BuildRequires: docbook-dtd43-xml
72 BuildRequires: docbook-dtd44-xml
73 BuildRequires: docbook-style-xsl >= 1.69.1
74 BuildRequires: libxml2-progs
75 BuildRequires: libxslt-progs
78 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
81 Requires: cracklib-dicts
87 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
89 %define specflags -fno-strict-aliasing
91 %define _sbindir /sbin
94 PAM (Pluggable Authentication Modules) is a powerful, flexible,
95 extensible authentication system which allows the system administrator
96 to configure authentication services individually for every
97 pam-compliant application without recompiling any of the applications.
100 PAM (Pluggable Authentication Modules) ist ein leistungsfähiges,
101 flexibles und erweiterbares Authentifizierungssystem, mit dem der
102 Systemverwalter Authentifizierungs-Dienste individuell für jede
103 pam-kompatible Anwendung konfigurieren kann, ohne diese neu
104 kompilieren zu müssen.
107 PAM (Módulos de Autenticación Plugables) es un potente, flexible y
108 extensible sistema de autentificación, que permite al administrador
109 del sistema configurar servicios de autentificación individualmente
110 para cada aplicación pam compatible, sin la necesidad de recompilar
111 cualquier una de las aplicaciones.
114 PAM (Pluggable Authentication Modules) est un systéme
115 d'authentification puissant, souple et extensible permettant à
116 l'administrateur système de configurer les individuellement les
117 services d'authentification pour chaque application conforme à PAM,
118 sans recompiler aucune application.
121 PAM (Pluggable Authentication Modules) jest silnym i ³atwo
122 dostosowywalnym do potrzeb systemem uwierzytelniania, który umo¿liwia
123 administratorowi indywidualne konfigurowanie poszczególnych us³ug,
124 które s± dostosowane i skonsolidowane z bibliotekami PAM, bez
125 pó¼niejszej ich rekompilacji w momencie zmiany sposobu
126 uwierzytelniania tych¿e us³ug.
128 %description -l pt_BR
129 PAM (Módulos de Autenticação Plugáveis) é um poderoso, flexível e
130 extensível sistema de autenticação, que permite o administrador do
131 sistema configurar serviços de autenticação individualmente para cada
132 aplicação pam compatível, sem necessidade de recompilar qualquer uma
136 PAM (Pluggable Authentication Modules) - ÃÅ ÐÏÔÕÖÎÁ, ÇÎÕÞËÁ, ÚÄÁÔÎÁ ÄÏ
137 ÒÏÚÛÉÒÅÎÎÑ ÓÉÓÔÅÍÁ ÁÕÔÅÎÔÉËÁæ§, ÑËÁ ÄÏÚ×ÏÌѤ ÓÉÓÔÅÍÎÏÍÕ
138 ÁÄͦΦÓÔÒÁÔÏÒÕ ÎÁÌÁÇÏÄÖÕ×ÁÔÉ ÓÅצÓÉ Á×ÔÏÒÉÚÁæ§ ÄÏÓÔÕÐÕ (ÁÕÔÅÎÔÉËÁæ§)
139 ¦ÎÄÉצÄÕÁÌØÎÏ ÄÌÑ ËÏÖÎϧ pam-ÓÕͦÓÎϧ ÐÒÏÇÒÁÍÉ ÂÅÚ ÎÅÏÂȦÄÎÏÓÔ¦
140 ÐÅÒÅËÏÍЦÌÑæ§ ÓÁÍϧ ÐÒÏÇÒÁÍÉ. ãÅ ÂÁÚÏ×ÉÊ ÍÅÈÁΦÚÍ ÁÕÔÅÎÔÉËÁæ§ × PLD
144 PAM (Pluggable Authentication Modules) sistem yöneticilerinin
145 uygulamalardan herhangi birini yeniden derlemeksizin bütün PAM uyumlu
146 uygulamalar için doðrulama hizmetlerini ayarlamalarýna yardýmcý olan,
147 güclü, esnek ve kapsamlý bir doðrulama sistemidir.
150 PAM (Pluggable Authentication Modules) - ÜÔÏ ÍÏÝÎÁÑ, ÇÉÂËÁÑ,
151 ÒÁÓÛÉÒÑÅÍÁÑ ÓÉÓÔÅÍÁ ÁÕÔÅÎÔÉËÁÃÉÉ, ÐÏÚ×ÏÌÑÀÝÁÑ ÓÉÓÔÅÍÎÏÍÕ
152 ÁÄÍÉÎÉÓÔÒÁÔÏÒÕ ËÏÎÆÉÇÕÒÉÒÏ×ÁÔØ ÓÅÒ×ÉÓÙ Á×ÔÏÒÉÚÁÃÉÉ ÄÏÓÔÕÐÁ
153 (ÁÕÔÅÎÔÉËÁÃÉÉ) ÉÎÄÉ×ÉÄÕÁÌØÎÏ ÄÌÑ ËÁÖÄÏÊ pam-ÓÏ×ÍÅÓÔÉÍÏÊ ÐÒÏÇÒÁÍÍÙ ÂÅÚ
154 ÎÅÏÂÈÏÄÉÍÏÓÔÉ ÐÅÒÅËÏÍÐÉÌÌÑÃÉÉ ÓÁÍÏÊ ÐÒÏÇÒÁÍÍÙ. üÔÏ ÂÁÚÏ×ÙÊ ÍÅÈÁÎÉÚÍ
155 ÁÕÔÅÎÔÉËÁÃÉÉ × PLD Linux.
158 Summary: PAM modules and libraries
159 Summary(pl): Modu³y i biblioteki PAM
161 Conflicts: pam < 0:0.80.1-2
162 %{?with_audit:Requires: audit-libs >= 1.0.8}
163 %{?with_selinux:Requires: libselinux >= 1.33.2}
166 Core PAM modules and libraries.
168 %description libs -l pl
169 Modu³y i biblioteki PAM.
172 Summary: PAM header files
173 Summary(pl): Pliki nag³ówkowe i dokumentacja programisty do PAM
174 Summary(pt_BR): Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
175 Summary(ru): âÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ PAM
176 Summary(uk): â¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ PAM
177 Group: Development/Libraries
178 Requires: %{name} = %{epoch}:%{version}-%{release}
179 Requires: filesystem >= 3.0-11
182 Header files for developing PAM based applications.
184 %description devel -l pl
185 Pliki nag³ówkowe i dokumentacja programisty do PAM.
187 %description devel -l pt_BR
188 Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
190 %description devel -l ru
191 üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÈÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ PAM.
193 %description devel -l uk
194 ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÈÅÄÅÒÉ ÔÁ ¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ PAM.
197 Summary: PAM static libraries
198 Summary(pl): Biblioteki statyczne PAM
199 Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ PAM
200 Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ PAM
201 Group: Development/Libraries
202 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
205 PAM static libraries.
207 %description static -l pl
208 Biblioteki statyczne PAM.
210 %description static -l ru
211 üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ PAM.
213 %description static -l uk
214 ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ PAM.
217 Summary: PAM module - SELinux support
218 Summary(pl): Modu³ PAM pozwalaj±cy na zmianê kontekstów SELinuksa
221 %description pam_selinux
222 PAM module - SELinux support.
224 %description pam_selinux -l pl
225 Modu³ PAM pozwalaj±cy na zmianê kontekstów SELinuksa.
228 %setup -q -a2 -n Linux-PAM-%{version}
257 --includedir=%{_includedir}/security \
258 --enable-isadir=../../%{_lib}/security \
259 %{!?with_selinux:--disable-selinux} \
260 %{!?with_prelude:--disable-prelude} \
261 %{!?with_audit:--disable-audit}
263 # we must explicitely update-gmo as we patch a po file
264 %{__make} -C po update-gmo
268 rm -rf $RPM_BUILD_ROOT
269 install -d $RPM_BUILD_ROOT{%{_libdir},/etc/pam.d,/var/log}
272 DESTDIR=$RPM_BUILD_ROOT
274 install modules/pam_selinux/.libs/pam_selinux_check $RPM_BUILD_ROOT%{_sbindir}
275 install modules/pam_selinux/pam_selinux_check.8 $RPM_BUILD_ROOT%{_mandir}/man8
278 for r in modules/pam_*/README ; do
279 cp -f $r doc/txts/README.$(basename $(dirname $r))
282 cp -f doc/index.html doc/html/
284 # fix PAM/pam man page
285 echo ".so PAM.8" > $RPM_BUILD_ROOT%{_mandir}/man8/pam.8
287 :> $RPM_BUILD_ROOT/etc/security/opasswd
288 :> $RPM_BUILD_ROOT/etc/security/blacklist
290 #:> $RPM_BUILD_ROOT/var/log/faillog
291 :> $RPM_BUILD_ROOT/var/log/tallylog
293 mv -f $RPM_BUILD_ROOT/%{_lib}/lib*.{la,a} $RPM_BUILD_ROOT/%{_libdir}
295 cd $RPM_BUILD_ROOT/%{_lib}
296 ln -sf /%{_lib}/$(echo libpam.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam.so
297 ln -sf /%{_lib}/$(echo libpam_misc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam_misc.so
298 ln -sf /%{_lib}/$(echo libpamc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpamc.so
301 install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/other
302 install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/system-auth
303 install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/config-util
304 install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/pam_selinux_check
306 install %{SOURCE7} $RPM_BUILD_ROOT%{_mandir}/man5/system-auth.5
307 install %{SOURCE8} $RPM_BUILD_ROOT%{_mandir}/man5/config-util.5
309 # useless - shut up check-files
310 rm -f $RPM_BUILD_ROOT/%{_lib}/security/*.{la,a}
311 rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/Linux-PAM
314 rm -rf $RPM_BUILD_ROOT{/%{_lib}/security/pam_selinux.so,%{_sbindir}/pam_selinux_check,%{_mandir}/man8/pam_selinux*.8*}
320 rm -rf $RPM_BUILD_ROOT
322 %post libs -p /sbin/ldconfig
323 %postun libs -p /sbin/ldconfig
325 %files -f Linux-PAM.lang
326 %defattr(644,root,root,755)
327 %doc AUTHORS CHANGELOG ChangeLog Copyright NEWS
328 %doc doc/txts/README*
331 %doc doc/{adg,mwg,sag}/Linux-PAM_*.txt
332 %doc doc/{adg,mwg,sag,}/html
334 %dir %attr(755,root,root) /etc/pam.d
335 %dir %attr(755,root,root) /etc/security/console.apps
336 %dir %attr(755,root,root) /etc/security/console.perms.d
337 %dir %attr(755,root,root) /var/run/console
338 %config /etc/security/console.perms.d/50-default.perms
339 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/other
340 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/system-auth
341 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/config-util
342 %config(noreplace) %verify(not md5 mtime size) /etc/security/access.conf
343 %config(noreplace) %verify(not md5 mtime size) /etc/security/pam_env.conf
344 %config(noreplace) %verify(not md5 mtime size) /etc/security/group.conf
345 %config(noreplace) %verify(not md5 mtime size) /etc/security/limits.conf
346 %config(noreplace) %verify(not md5 mtime size) /etc/security/time.conf
347 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.handlers
348 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.perms
349 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram*
350 %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist
351 %config(noreplace) %verify(not md5 mtime size) /etc/environment
352 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/opasswd
353 %attr(4755,root,root) /sbin/unix_chkpwd
354 %attr(755,root,root) %{_bindir}/pam_pwgen
355 %attr(755,root,root) %{_sbindir}/pam_console_apply
356 %attr(755,root,root) %{_sbindir}/pam_tally
357 %attr(755,root,root) %{_sbindir}/pam_tally2
358 %attr(755,root,root) %{_sbindir}/pam_timestamp_check
359 %attr(755,root,root) %{_sbindir}/pwgen_trigram
361 %{_mandir}/man8/PAM.*
362 %{_mandir}/man8/pam.*
363 %{_mandir}/man8/pam_[a-r]*
364 %{_mandir}/man8/pam_securetty*
365 %{_mandir}/man8/pam_shells*
366 %{_mandir}/man8/pam_succeed_if*
367 %{_mandir}/man8/pam_[t-x]*
368 %{_mandir}/man8/unix_chkpwd*
369 #%ghost %verify(not md5 size mtime) /var/log/faillog
370 %ghost %verify(not md5 size mtime) /var/log/tallylog
373 %defattr(644,root,root,755)
374 %attr(755,root,root) /%{_lib}/lib*.so.*.*
375 %attr(755,root,root) /%{_lib}/security/pam_access.so
376 %attr(755,root,root) /%{_lib}/security/pam_console.so
377 %attr(755,root,root) /%{_lib}/security/pam_cracklib.so
378 %attr(755,root,root) /%{_lib}/security/pam_debug.so
379 %attr(755,root,root) /%{_lib}/security/pam_deny.so
380 %attr(755,root,root) /%{_lib}/security/pam_echo.so
381 %attr(755,root,root) /%{_lib}/security/pam_env.so
382 %attr(755,root,root) /%{_lib}/security/pam_exec.so
383 %attr(755,root,root) /%{_lib}/security/pam_faildelay.so
384 %attr(755,root,root) /%{_lib}/security/pam_filter.so
385 %attr(755,root,root) /%{_lib}/security/pam_filter/upperLOWER
386 %attr(755,root,root) /%{_lib}/security/pam_ftp.so
387 %attr(755,root,root) /%{_lib}/security/pam_group.so
388 %attr(755,root,root) /%{_lib}/security/pam_issue.so
389 %attr(755,root,root) /%{_lib}/security/pam_keyinit.so
390 %attr(755,root,root) /%{_lib}/security/pam_lastlog.so
391 %attr(755,root,root) /%{_lib}/security/pam_limits.so
392 %attr(755,root,root) /%{_lib}/security/pam_listfile.so
393 %attr(755,root,root) /%{_lib}/security/pam_localuser.so
394 %attr(755,root,root) /%{_lib}/security/pam_loginuid.so
395 %attr(755,root,root) /%{_lib}/security/pam_mail.so
396 %attr(755,root,root) /%{_lib}/security/pam_mkhomedir.so
397 %attr(755,root,root) /%{_lib}/security/pam_motd.so
398 %attr(755,root,root) /%{_lib}/security/pam_nologin.so
399 %attr(755,root,root) /%{_lib}/security/pam_permit.so
400 %attr(755,root,root) /%{_lib}/security/pam_pwexport.so
401 %attr(755,root,root) /%{_lib}/security/pam_pwgen.so
402 %attr(755,root,root) /%{_lib}/security/pam_rhosts_auth.so
403 %attr(755,root,root) /%{_lib}/security/pam_rhosts.so
404 %attr(755,root,root) /%{_lib}/security/pam_rootok.so
405 %attr(755,root,root) /%{_lib}/security/pam_rps.so
406 %attr(755,root,root) /%{_lib}/security/pam_securetty.so
407 %attr(755,root,root) /%{_lib}/security/pam_shells.so
408 %attr(755,root,root) /%{_lib}/security/pam_stress.so
409 %attr(755,root,root) /%{_lib}/security/pam_succeed_if.so
410 %attr(755,root,root) /%{_lib}/security/pam_tally2.so
411 %attr(755,root,root) /%{_lib}/security/pam_tally.so
412 %attr(755,root,root) /%{_lib}/security/pam_time.so
413 %attr(755,root,root) /%{_lib}/security/pam_timestamp.so
414 %attr(755,root,root) /%{_lib}/security/pam_umask.so
415 %attr(755,root,root) /%{_lib}/security/pam_unix.so
416 %attr(755,root,root) /%{_lib}/security/pam_userdb.so
417 %attr(755,root,root) /%{_lib}/security/pam_warn.so
418 %attr(755,root,root) /%{_lib}/security/pam_wheel.so
419 %attr(755,root,root) /%{_lib}/security/pam_xauth.so
422 %defattr(644,root,root,755)
423 %attr(755,root,root) %{_libdir}/lib*.so
425 %{_includedir}/security/*.h
429 %defattr(644,root,root,755)
432 %{_libdir}/libpam_misc.a
436 %defattr(644,root,root,755)
437 %attr(755,root,root) /%{_lib}/security/pam_selinux.so
438 %attr(755,root,root) %{_sbindir}/pam_selinux_check
439 %config(noreplace) %verify(not size mtime md5) /etc/pam.d/pam_selinux_check
440 %{_mandir}/man8/pam_selinux*.8*