3 %bcond_without doc # don't build documentation
4 %bcond_with prelude # build with Prelude IDS support (in libpam)
5 %bcond_without selinux # build without SELinux support
6 %bcond_without audit # build with Linux Auditing library support
8 %define pam_pld_version 1.1.2-1
9 Summary: Pluggable Authentication Modules: modular, incremental authentication
10 Summary(de.UTF-8): Einsteckbare Authentifizierungsmodule: modulare, inkrementäre Authentifizierung
11 Summary(es.UTF-8): Módulos de autentificación plugables (PAM)
12 Summary(fr.UTF-8): PAM : Pluggable Authentication Modules: modular, incremental authentication
13 Summary(pl.UTF-8): Modularny system uwierzytelniania
14 Summary(pt_BR.UTF-8): Módulos de autenticação plugáveis (PAM)
15 Summary(ru.UTF-8): Интструмент, обеспечивающий аутентификацию для приложений
16 Summary(tr.UTF-8): Modüler, artımsal doğrulama birimleri
17 Summary(uk.UTF-8): Інструмент, що забезпечує аутентифікацію для програм
24 #Source0: http://ftp.kernel.org/pub/linux/libs/pam/library/Linux-PAM-%{version}.tar.bz2
25 Source0: https://fedorahosted.org/releases/l/i/linux-pam/Linux-PAM-%{version}.tar.bz2
26 # Source0-md5: 35b6091af95981b1b2cd60d813b5e4ee
27 #xSource1: http://ftp.kernel.org/pub/linux/libs/pam/library/Linux-PAM-%{version}.tar.bz2.sign
28 # xSource1-md5: 2435d4a23aaf871bcec436f863b0de6c
29 Source2: ftp://ftp.pld-linux.org/software/pam/%{name}-pld-%{pam_pld_version}.tar.gz
30 # Source2-md5: f9ec6fcafcf1801bf318e60040244f2e
32 Source4: system-auth.pamd
33 Source5: config-util.pamd
34 Source6: %{name}_selinux_check.pamd
35 Source7: system-auth.5
36 Source8: config-util.5
37 Source9: %{name}.tmpfiles
38 Patch0: %{name}-pld-modules.patch
39 Patch2: %{name}-tally-fail-close.patch
40 Patch3: %{name}-mkhomedir-notfound.patch
41 Patch4: %{name}-db-gdbm.patch
42 Patch5: %{name}-exec-failok.patch
43 Patch6: update-motd.patch
44 URL: http://www.kernel.org/pub/linux/libs/pam/
45 %{?with_audit:BuildRequires: audit-libs-devel >= 1.6.9}
46 BuildRequires: autoconf >= 2.61
47 BuildRequires: automake
49 BuildRequires: cracklib-devel >= 2.8.3
50 # gdbm due to db pulling libpthread
52 BuildRequires: gdbm-devel >= 1.8.3-7
53 BuildRequires: gettext-devel >= 0.15
54 BuildRequires: glibc-devel >= 6:2.10.1
55 BuildRequires: glibc-misc
56 %{?with_prelude:BuildRequires: libprelude-devel >= 0.9.0}
57 %{?with_selinux:BuildRequires: libselinux-devel >= 1.33.2}
58 #BuildRequires: libtirpc-devel
59 BuildRequires: libtool >= 2:1.5
60 BuildRequires: libxcrypt-devel
61 %{?with_audit:BuildRequires: linux-libc-headers >= 2.6.23.1}
62 BuildRequires: zlib-devel
64 BuildRequires: docbook-dtd412-xml
65 BuildRequires: docbook-dtd43-xml
66 BuildRequires: docbook-dtd44-xml
67 BuildRequires: docbook-style-xsl >= 1.69.1
70 BuildRequires: libxml2-progs
71 BuildRequires: libxslt-progs
74 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
75 Requires: /usr/bin/make
81 Conflicts: dev < 3.4-4
82 Conflicts: udev < 1:138-5
83 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
85 %define _sbindir /sbin
88 PAM (Pluggable Authentication Modules) is a powerful, flexible,
89 extensible authentication system which allows the system administrator
90 to configure authentication services individually for every
91 pam-compliant application without recompiling any of the applications.
93 %description -l de.UTF-8
94 PAM (Pluggable Authentication Modules) ist ein leistungsfähiges,
95 flexibles und erweiterbares Authentifizierungssystem, mit dem der
96 Systemverwalter Authentifizierungs-Dienste individuell für jede
97 pam-kompatible Anwendung konfigurieren kann, ohne diese neu
98 kompilieren zu müssen.
100 %description -l es.UTF-8
101 PAM (Módulos de Autenticación Plugables) es un potente, flexible y
102 extensible sistema de autentificación, que permite al administrador
103 del sistema configurar servicios de autentificación individualmente
104 para cada aplicación pam compatible, sin la necesidad de recompilar
105 cualquier una de las aplicaciones.
107 %description -l fr.UTF-8
108 PAM (Pluggable Authentication Modules) est un systéme
109 d'authentification puissant, souple et extensible permettant à
110 l'administrateur système de configurer les individuellement les
111 services d'authentification pour chaque application conforme à PAM,
112 sans recompiler aucune application.
114 %description -l pl.UTF-8
115 PAM (Pluggable Authentication Modules) jest silnym i łatwo
116 dostosowywalnym do potrzeb systemem uwierzytelniania, który umożliwia
117 administratorowi indywidualne konfigurowanie poszczególnych usług,
118 które są dostosowane i skonsolidowane z bibliotekami PAM, bez
119 późniejszej ich rekompilacji w momencie zmiany sposobu
120 uwierzytelniania tychże usług.
122 %description -l pt_BR.UTF-8
123 PAM (Módulos de Autenticação Plugáveis) é um poderoso, flexível e
124 extensível sistema de autenticação, que permite o administrador do
125 sistema configurar serviços de autenticação individualmente para cada
126 aplicação pam compatível, sem necessidade de recompilar qualquer uma
129 %description -l uk.UTF-8
130 PAM (Pluggable Authentication Modules) - це потужна, гнучка, здатна до
131 розширення система аутентикації, яка дозволяє системному
132 адміністратору налагоджувати севіси авторизації доступу (аутентикації)
133 індивідуально для кожної pam-сумісної програми без необхідності
134 перекомпіляції самої програми. Це базовий механізм аутентикації в PLD
137 %description -l tr.UTF-8
138 PAM (Pluggable Authentication Modules) sistem yöneticilerinin
139 uygulamalardan herhangi birini yeniden derlemeksizin bütün PAM uyumlu
140 uygulamalar için doğrulama hizmetlerini ayarlamalarına yardımcı olan,
141 güclü, esnek ve kapsamlı bir doğrulama sistemidir.
143 %description -l ru.UTF-8
144 PAM (Pluggable Authentication Modules) - это мощная, гибкая,
145 расширяемая система аутентикации, позволяющая системному
146 администратору конфигурировать сервисы авторизации доступа
147 (аутентикации) индивидуально для каждой pam-совместимой программы без
148 необходимости перекомпилляции самой программы. Это базовый механизм
149 аутентикации в PLD Linux.
152 Summary: PAM modules and libraries
153 Summary(pl.UTF-8): Moduły i biblioteki PAM
155 Requires(triggerpostun): sed >= 4.0
156 %{?with_audit:Requires: audit-libs >= 1.0.8}
157 Requires: cracklib >= 2.8.3
158 Requires: cracklib-dicts >= 2.8.3
159 Requires: crypt(blowfish)
160 Requires: gdbm >= 1.8.3-7
161 Requires: glibc >= 6:2.5-0.5
162 %{?with_selinux:Requires: libselinux >= 1.33.2}
163 Obsoletes: pam-pam_opie
164 Obsoletes: pam-pam_pwdb
165 Obsoletes: pam-pam_radius
166 Obsoletes: pam-pam_skey
167 Obsoletes: pam-pam_tcpd
168 Conflicts: pam < 0:0.80.1-2
171 Core PAM modules and libraries.
173 %description libs -l pl.UTF-8
174 Moduły i biblioteki PAM.
177 Summary: PAM header files
178 Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja programisty do PAM
179 Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
180 Summary(ru.UTF-8): Библиотеки разработчика для PAM
181 Summary(uk.UTF-8): Бібліотеки програміста для PAM
182 Group: Development/Libraries
183 Requires: %{name} = %{epoch}:%{version}-%{release}
184 %{?with_audit:Requires: audit-libs-devel >= 1.0.8}
185 Requires: filesystem >= 3.0-11
188 Header files for developing PAM based applications.
190 %description devel -l pl.UTF-8
191 Pliki nagłówkowe i dokumentacja programisty do PAM.
193 %description devel -l pt_BR.UTF-8
194 Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
196 %description devel -l ru.UTF-8
197 Этот пакет содержит хедеры и библиотеки разработчика для PAM.
199 %description devel -l uk.UTF-8
200 Цей пакет містить хедери та бібліотеки програміста для PAM.
203 Summary: PAM static libraries
204 Summary(pl.UTF-8): Biblioteki statyczne PAM
205 Summary(ru.UTF-8): Статические библиотеки разработчика для PAM
206 Summary(uk.UTF-8): Статичні бібліотеки програміста для PAM
207 Group: Development/Libraries
208 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
211 PAM static libraries.
213 %description static -l pl.UTF-8
214 Biblioteki statyczne PAM.
216 %description static -l ru.UTF-8
217 Этот пакет содержит статические библиотеки разработчика для PAM.
219 %description static -l uk.UTF-8
220 Цей пакет містить статичні бібліотеки програміста для PAM.
223 Summary: PAM module - SELinux support
224 Summary(pl.UTF-8): Moduł PAM pozwalający na zmianę kontekstów SELinuksa
227 %description pam_selinux
228 PAM module - SELinux support.
230 %description pam_selinux -l pl.UTF-8
231 Moduł PAM pozwalający na zmianę kontekstów SELinuksa.
234 %setup -q -a2 -n Linux-PAM-%{version}
252 --includedir=%{_includedir}/security \
253 --enable-isadir=../../%{_lib}/security \
255 %{!?with_selinux:--disable-selinux} \
256 %{!?with_prelude:--disable-prelude} \
257 %{!?with_audit:--disable-audit}
259 # we must explicitely update-gmo as we patch a po file
260 %{__make} -C po update-gmo
262 DEFS="-DHAVE_CONFIG_H -D_GNU_SOURCE"
265 rm -rf $RPM_BUILD_ROOT
266 install -d $RPM_BUILD_ROOT{%{_libdir},/etc/pam.d,/var/{log,run/sepermit}} \
267 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
270 DESTDIR=$RPM_BUILD_ROOT
273 install -p modules/pam_selinux/.libs/pam_selinux_check $RPM_BUILD_ROOT%{_sbindir}
274 cp -p modules/pam_selinux/pam_selinux_check.8 $RPM_BUILD_ROOT%{_mandir}/man8
275 cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/pam_selinux_check
278 cp -p %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
281 for r in modules/pam_*/README ; do
282 cp -f $r doc/txts/README.$(basename $(dirname $r))
285 cp -f doc/index.html doc/html/
287 # fix PAM/pam man page
288 echo ".so PAM.8" > $RPM_BUILD_ROOT%{_mandir}/man8/pam.8
290 :> $RPM_BUILD_ROOT/etc/security/opasswd
291 :> $RPM_BUILD_ROOT/etc/security/blacklist
293 :> $RPM_BUILD_ROOT/var/log/tallylog
295 mv -f $RPM_BUILD_ROOT/%{_lib}/lib*.a $RPM_BUILD_ROOT%{_libdir}
297 cd $RPM_BUILD_ROOT/%{_lib}
298 for f in lib*.la ; do
299 sed -e 's|/%{_lib}/libpam|%{_libdir}/libpam|g' $f > $RPM_BUILD_ROOT%{_libdir}/$f
301 sed -i -e "s|libdir='/%{_lib}|libdir='%{_libdir}|g" $RPM_BUILD_ROOT%{_libdir}/$f
303 ln -sf /%{_lib}/$(echo libpam.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam.so
304 ln -sf /%{_lib}/$(echo libpam_misc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam_misc.so
305 ln -sf /%{_lib}/$(echo libpamc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpamc.so
308 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/other
309 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/system-auth
310 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/config-util
312 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_mandir}/man5/system-auth.5
313 cp -p %{SOURCE8} $RPM_BUILD_ROOT%{_mandir}/man5/config-util.5
315 # Make sure every module subdirectory gave us a module. Yes, this is hackish.
316 for dir in modules/pam_* ; do
317 %if %{without selinux}
318 [ ${dir} = "modules/pam_selinux" ] && continue
319 [ ${dir} = "modules/pam_sepermit" ] && continue
322 [ ${dir} = "modules/pam_tty_audit" ] && continue
324 if [ -d ${dir} ] ; then
325 if ! ls -1 $RPM_BUILD_ROOT/%{_lib}/security/`basename ${dir}`*.so ; then
326 echo ERROR `basename ${dir}` did not build a module.
332 for module in $RPM_BUILD_ROOT/%{_lib}/security/pam*.so ; do
333 # Check for module problems. Specifically, check that every module we just
334 # installed can actually be loaded by a minimal PAM-aware application.
335 if ! env LD_LIBRARY_PATH=$RPM_BUILD_ROOT/%{_lib} \
336 ./dlopen.sh -ldl -lpam -L$RPM_BUILD_ROOT/%{_lib} ${module} ; then
337 echo ERROR module: ${module} cannot be loaded.
342 # useless - shut up check-files
343 rm -f $RPM_BUILD_ROOT/%{_lib}/security/*.{la,a}
344 rm -f $RPM_BUILD_ROOT/%{_lib}/lib*.so
345 rm -rf $RPM_BUILD_ROOT%{_docdir}/Linux-PAM
347 %if %{without selinux}
348 rm -rf $RPM_BUILD_ROOT{/%{_lib}/security/pam_selinux.so,%{_sbindir}/pam_selinux_check,%{_mandir}/man8/pam_selinux*.8*}
354 rm -rf $RPM_BUILD_ROOT
356 %triggerpostun libs -- %{name}-libs < 0.99.7.1
357 for f in $(grep -l "\(pam_make\|pam_homedir\)" /etc/pam.d/*); do
359 *rpmorig|*rpmnew|*rpmsave|*~|*.orig)
363 cp -f "$f" "$f.rpmorig"
364 sed -i -e 's/pam_make\.so \(.*\)/pam_exec.so failok seteuid \/usr\/bin\/make -C \1/g' \
365 -e 's/pam_homedir\.so/pam_mkhomedir.so/g' "$f"
369 if [ -d /var/lock/console -a -d /var/run/console ]; then
370 cp -a /var/lock/console/* /var/run/console/ 2> /dev/null
371 rm -rf /var/lock/console
374 %triggerin -- cronie,vixie-cron,hc-cron,fcron,mcron
375 # restart crond if pam is upgraded
376 # (crond is linked with old libpam but tries to open modules linked with new libpam)
377 if [ "$1" != 1 ]; then
378 %service -q crond restart
382 %triggerpostun -- %{name} < 1:1.1.5-8
384 if grep -qs change_uid /etc/pam.d/system-auth; then
385 %{__sed} -i -e '/session/ s/change_uid//' /etc/pam.d/system-auth
388 # We want it added for painless upgarde even if it mean log pollution for non-systemd
390 # If this module is not present on systemd enabled system then `systemctl restart sshd.service`
391 # will kill all sessions.
392 if ! grep -qs pam_systemd /etc/pam.d/system-auth; then
393 echo "-session optional pam_systemd.so" >>/etc/pam.d/system-auth
397 fh, error = io.open("/var/log/tallylog")
401 fh = io.open("/var/log/tallylog", "w+")
403 posix.chmod("/var/log/tallylog", "rw-------")
406 %post libs -p /sbin/ldconfig
407 %postun libs -p /sbin/ldconfig
409 %files -f Linux-PAM.lang
410 %defattr(644,root,root,755)
411 %doc AUTHORS CHANGELOG ChangeLog Copyright NEWS doc/txts/README*
413 %doc doc/specs/*.txt doc/sag/Linux-PAM_*.txt doc/{sag,}/html
416 %dir /etc/security/console.apps
417 %dir /etc/security/console.perms.d
418 %dir /var/run/console
419 %{systemdtmpfilesdir}/%{name}.conf
420 %config(noreplace) %verify(not md5 mtime size) /etc/environment
421 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/other
422 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/system-auth
423 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/config-util
424 %config(noreplace) %verify(not md5 mtime size) /etc/security/access.conf
425 %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist
426 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.handlers
427 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.perms
428 %config(noreplace) %verify(not md5 mtime size) /etc/security/group.conf
429 %config(noreplace) %verify(not md5 mtime size) /etc/security/limits.conf
430 %config(noreplace) %verify(not md5 mtime size) /etc/security/namespace.conf
431 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/namespace.init
432 %config(noreplace) %verify(not md5 mtime size) /etc/security/pam_env.conf
433 %config(noreplace) %verify(not md5 mtime size) /etc/security/time.conf
434 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram
435 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.en
436 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.de
437 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.dk
438 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.es
439 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.fi
440 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.it
441 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.ja
442 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.no
443 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.pl
444 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.perms.d/50-default.perms
445 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/opasswd
446 %attr(755,root,root) %{_bindir}/pam_pwgen
447 %attr(755,root,root) %{_sbindir}/mkhomedir_helper
448 %attr(755,root,root) %{_sbindir}/pam_console_apply
449 %attr(755,root,root) %{_sbindir}/pam_tally
450 %attr(755,root,root) %{_sbindir}/pam_tally2
451 %attr(755,root,root) %{_sbindir}/pam_timestamp_check
452 %attr(755,root,root) %{_sbindir}/pwgen_trigram
453 %attr(4755,root,root) %{_sbindir}/unix_chkpwd
454 %attr(4755,root,root) %{_sbindir}/unix_update
455 %{_mandir}/man5/access.conf.5*
456 %{_mandir}/man5/config-util.5*
457 %{_mandir}/man5/console.apps.5*
458 %{_mandir}/man5/console.handlers.5*
459 %{_mandir}/man5/console.perms.5*
460 %{_mandir}/man5/group.conf.5*
461 %{_mandir}/man5/limits.conf.5*
462 %{_mandir}/man5/namespace.conf.5*
463 %{_mandir}/man5/pam.conf.5*
464 %{_mandir}/man5/pam.d.5*
465 %{_mandir}/man5/pam_env.conf.5*
466 %{_mandir}/man5/system-auth.5*
467 %{_mandir}/man5/time.conf.5*
468 %{_mandir}/man8/PAM.8*
469 %{_mandir}/man8/mkhomedir_helper.8*
470 %{_mandir}/man8/pam.8*
471 %{_mandir}/man8/pam_*.8*
472 %{_mandir}/man8/unix_chkpwd.8*
473 %{_mandir}/man8/unix_update.8*
475 %exclude %{_mandir}/man8/pam_selinux*.8*
476 %exclude %{_mandir}/man8/pam_sepermit.8*
478 %ghost %verify(not md5 mtime size) /var/log/tallylog
481 %defattr(644,root,root,755)
482 %dir /%{_lib}/security/pam_filter
483 %attr(755,root,root) /%{_lib}/libpam.so.*.*.*
484 %attr(755,root,root) %ghost /%{_lib}/libpam.so.0
485 %attr(755,root,root) /%{_lib}/libpam_misc.so.*.*.*
486 %attr(755,root,root) %ghost /%{_lib}/libpam_misc.so.0
487 %attr(755,root,root) /%{_lib}/libpamc.so.*.*.*
488 %attr(755,root,root) %ghost /%{_lib}/libpamc.so.0
489 %attr(755,root,root) /%{_lib}/security/pam_access.so
490 %attr(755,root,root) /%{_lib}/security/pam_console.so
491 %attr(755,root,root) /%{_lib}/security/pam_cracklib.so
492 %attr(755,root,root) /%{_lib}/security/pam_debug.so
493 %attr(755,root,root) /%{_lib}/security/pam_deny.so
494 %attr(755,root,root) /%{_lib}/security/pam_echo.so
495 %attr(755,root,root) /%{_lib}/security/pam_env.so
496 %attr(755,root,root) /%{_lib}/security/pam_exec.so
497 %attr(755,root,root) /%{_lib}/security/pam_faildelay.so
498 %attr(755,root,root) /%{_lib}/security/pam_filter.so
499 %attr(755,root,root) /%{_lib}/security/pam_filter/upperLOWER
500 %attr(755,root,root) /%{_lib}/security/pam_ftp.so
501 %attr(755,root,root) /%{_lib}/security/pam_group.so
502 %attr(755,root,root) /%{_lib}/security/pam_issue.so
503 %attr(755,root,root) /%{_lib}/security/pam_keyinit.so
504 %attr(755,root,root) /%{_lib}/security/pam_lastlog.so
505 %attr(755,root,root) /%{_lib}/security/pam_limits.so
506 %attr(755,root,root) /%{_lib}/security/pam_listfile.so
507 %attr(755,root,root) /%{_lib}/security/pam_localuser.so
508 %attr(755,root,root) /%{_lib}/security/pam_loginuid.so
509 %attr(755,root,root) /%{_lib}/security/pam_mail.so
510 %attr(755,root,root) /%{_lib}/security/pam_mkhomedir.so
511 %attr(755,root,root) /%{_lib}/security/pam_motd.so
512 %attr(755,root,root) /%{_lib}/security/pam_namespace.so
513 %attr(755,root,root) /%{_lib}/security/pam_nologin.so
514 %attr(755,root,root) /%{_lib}/security/pam_permit.so
515 %attr(755,root,root) /%{_lib}/security/pam_pwexport.so
516 %attr(755,root,root) /%{_lib}/security/pam_pwgen.so
517 %attr(755,root,root) /%{_lib}/security/pam_pwhistory.so
518 %attr(755,root,root) /%{_lib}/security/pam_rhosts.so
519 %attr(755,root,root) /%{_lib}/security/pam_rootok.so
520 %attr(755,root,root) /%{_lib}/security/pam_rps.so
521 %attr(755,root,root) /%{_lib}/security/pam_securetty.so
522 %attr(755,root,root) /%{_lib}/security/pam_shells.so
523 %attr(755,root,root) /%{_lib}/security/pam_stress.so
524 %attr(755,root,root) /%{_lib}/security/pam_succeed_if.so
525 %attr(755,root,root) /%{_lib}/security/pam_tally2.so
526 %attr(755,root,root) /%{_lib}/security/pam_tally.so
527 %attr(755,root,root) /%{_lib}/security/pam_time.so
528 %attr(755,root,root) /%{_lib}/security/pam_timestamp.so
529 %{?with_audit:%attr(755,root,root) /%{_lib}/security/pam_tty_audit.so}
530 %attr(755,root,root) /%{_lib}/security/pam_umask.so
531 %attr(755,root,root) /%{_lib}/security/pam_unix.so
532 %attr(755,root,root) /%{_lib}/security/pam_userdb.so
533 %attr(755,root,root) /%{_lib}/security/pam_warn.so
534 %attr(755,root,root) /%{_lib}/security/pam_wheel.so
535 %attr(755,root,root) /%{_lib}/security/pam_xauth.so
538 %defattr(644,root,root,755)
540 %doc doc/{adg,mwg}/Linux-PAM_*.txt doc/{adg,mwg,}/html
542 %attr(755,root,root) %{_libdir}/libpam.so
543 %attr(755,root,root) %{_libdir}/libpam_misc.so
544 %attr(755,root,root) %{_libdir}/libpamc.so
546 %{_libdir}/libpam_misc.la
547 %{_libdir}/libpamc.la
548 %{_includedir}/security/_pam_*.h
549 %{_includedir}/security/pam*.h
550 %{_mandir}/man3/misc_conv.3*
551 %{_mandir}/man3/pam*.3*
554 %defattr(644,root,root,755)
557 %{_libdir}/libpam_misc.a
561 %defattr(644,root,root,755)
562 %attr(755,root,root) /%{_lib}/security/pam_selinux.so
563 %attr(755,root,root) /%{_lib}/security/pam_sepermit.so
564 %attr(755,root,root) %{_sbindir}/pam_selinux_check
565 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/pam_selinux_check
566 %config(noreplace) %verify(not md5 mtime size) /etc/security/sepermit.conf
567 %{_mandir}/man5/sepermit.conf.5*
568 %{_mandir}/man8/pam_selinux*.8*
569 %{_mandir}/man8/pam_sepermit.8*
570 %dir /var/run/sepermit