]> git.pld-linux.org Git - packages/pam.git/blob - pam.spec
- updated to 1.4.0
[packages/pam.git] / pam.spec
1 # TODO
2 # - fix pdf gen or disable it: No fo2pdf processor installed, skip PDF generation
3 # - replace pam_cracklib.so with pam_pwquality.so (backwards compatible with its options), comes with pam-pam_pwquality package
4 # - pam_tally, pam_tally2 are deprecated in favor of pam_faillock
5 # NOTE: https://github.com/linux-pam/linux-pam/releases/download/v%{version}/Linux-PAM-%{version}-docs.tar.xz
6 #   is not needed here: it contains documentation in target formats (HTML, PDF) built from sources included in main tarball
7 #
8 # Conditional build:
9 %bcond_without  doc             # documentation
10 %bcond_with     prelude         # Prelude IDS support (in libpam)
11 %bcond_without  cracklib        # (deprecated) cracklib module
12 %bcond_without  selinux         # SELinux support
13 %bcond_without  audit           # Linux Auditing library support
14
15 %define         pam_pld_version 1.1.2-1
16 Summary:        Pluggable Authentication Modules: modular, incremental authentication
17 Summary(de.UTF-8):      Einsteckbare Authentifizierungsmodule: modulare, inkrementäre Authentifizierung
18 Summary(es.UTF-8):      Módulos de autentificación plugables (PAM)
19 Summary(fr.UTF-8):      PAM : Pluggable Authentication Modules: modular, incremental authentication
20 Summary(pl.UTF-8):      Modularny system uwierzytelniania
21 Summary(pt_BR.UTF-8):   Módulos de autenticação plugáveis (PAM)
22 Summary(ru.UTF-8):      Интструмент, обеспечивающий аутентификацию для приложений
23 Summary(tr.UTF-8):      Modüler, artımsal doğrulama birimleri
24 Summary(uk.UTF-8):      Інструмент, що забезпечує аутентифікацію для програм
25 Name:           pam
26 Version:        1.4.0
27 Release:        1
28 Epoch:          1
29 # The library is BSD licensed with option to relicense as GPLv2+
30 # - this option is redundant as the BSD license allows that anyway.
31 # pam_timestamp, pam_loginuid, and pam_console modules are GPLv2+.
32 License:        BSD and GPL v2+
33 Group:          Base
34 Source0:        https://github.com/linux-pam/linux-pam/releases/download/v%{version}/Linux-PAM-%{version}.tar.xz
35 # Source0-md5:  39fca0523bccec6af4b63b5322276c84
36 Source2:        ftp://ftp.pld-linux.org/software/pam/%{name}-pld-%{pam_pld_version}.tar.gz
37 # Source2-md5:  f9ec6fcafcf1801bf318e60040244f2e
38 Source3:        other.pamd
39 Source4:        system-auth.pamd
40 Source5:        config-util.pamd
41 Source6:        %{name}_selinux_check.pamd
42 Source7:        system-auth.5
43 Source8:        config-util.5
44 Source9:        %{name}.tmpfiles
45 Source10:       postlogin.pamd
46 Patch0:         %{name}-pld-modules.patch
47 Patch1:         %{name}_console-lex-static.patch
48 Patch2:         %{name}-tally-fail-close.patch
49 Patch3:         %{name}-mkhomedir-notfound.patch
50 Patch4:         %{name}-db-gdbm.patch
51 Patch5:         %{name}-exec-failok.patch
52 Patch6:         update-motd.patch
53 URL:            http://www.linux-pam.org/
54 %{?with_audit:BuildRequires:    audit-libs-devel >= 1.6.9}
55 BuildRequires:  autoconf >= 2.61
56 BuildRequires:  automake
57 BuildRequires:  bison
58 %{?with_cracklib:BuildRequires: cracklib-devel >= 2.8.3}
59 BuildRequires:  flex
60 # gdbm due to db pulling libpthread
61 BuildRequires:  gdbm-devel >= 1.8.3-7
62 BuildRequires:  gettext-tools >= 0.18.3
63 BuildRequires:  glibc-devel >= 6:2.10.1
64 BuildRequires:  libnsl-devel
65 %{?with_prelude:BuildRequires:  libprelude-devel >= 0.9.0}
66 %{?with_selinux:BuildRequires:  libselinux-devel >= 2.1.9}
67 BuildRequires:  libtirpc-devel
68 BuildRequires:  libtool >= 2:2
69 BuildRequires:  libxcrypt-devel
70 %{?with_audit:BuildRequires:    linux-libc-headers >= 2.6.23.1}
71 BuildRequires:  pkgconfig
72 BuildRequires:  tar >= 1:1.22
73 BuildRequires:  xz
74 BuildRequires:  zlib-devel
75 %if %{with doc}
76 BuildRequires:  docbook-dtd412-xml
77 BuildRequires:  docbook-dtd43-xml
78 BuildRequires:  docbook-dtd44-xml
79 BuildRequires:  docbook-style-xsl >= 1.69.1
80 # For building PDFs
81 #BuildRequires: fop
82 BuildRequires:  libxml2-progs
83 BuildRequires:  libxslt-progs
84 BuildRequires:  w3m
85 %endif
86 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
87 %{?with_audit:Requires: audit-libs >= 1.0.8}
88 Requires:       awk
89 Requires:       crypt(blowfish)
90 Requires:       glibc >= 6:2.5-0.5
91 %{?with_selinux:Requires:       libselinux >= 2.1.9}
92 %{?with_cracklib:Requires:      pam-pam_cracklib = %{epoch}:%{version}-%{release}}
93 Suggests:       make
94 Suggests:       pam-pam_pwquality
95 Suggests:       pam-pam_userdb = %{epoch}:%{version}-%{release}
96 Obsoletes:      pam-doc
97 Obsoletes:      pam-pam_opie
98 Obsoletes:      pam-pam_pwdb
99 Obsoletes:      pam-pam_radius
100 Obsoletes:      pam-pam_skey
101 Obsoletes:      pam-pam_tcpd
102 Obsoletes:      pam_make
103 Obsoletes:      pamconfig
104 Conflicts:      dev < 3.4-4
105 Conflicts:      pam < 0:0.80.1-2
106 Conflicts:      udev < 1:138-5
107 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
108
109 %define         _sbindir        /sbin
110
111 %description
112 PAM (Pluggable Authentication Modules) is a powerful, flexible,
113 extensible authentication system which allows the system administrator
114 to configure authentication services individually for every
115 pam-compliant application without recompiling any of the applications.
116
117 %description -l de.UTF-8
118 PAM (Pluggable Authentication Modules) ist ein leistungsfähiges,
119 flexibles und erweiterbares Authentifizierungssystem, mit dem der
120 Systemverwalter Authentifizierungs-Dienste individuell für jede
121 pam-kompatible Anwendung konfigurieren kann, ohne diese neu
122 kompilieren zu müssen.
123
124 %description -l es.UTF-8
125 PAM (Módulos de Autenticación Plugables) es un potente, flexible y
126 extensible sistema de autentificación, que permite al administrador
127 del sistema configurar servicios de autentificación individualmente
128 para cada aplicación pam compatible, sin la necesidad de recompilar
129 cualquier una de las aplicaciones.
130
131 %description -l fr.UTF-8
132 PAM (Pluggable Authentication Modules) est un systéme
133 d'authentification puissant, souple et extensible permettant à
134 l'administrateur système de configurer les individuellement les
135 services d'authentification pour chaque application conforme à PAM,
136 sans recompiler aucune application.
137
138 %description -l pl.UTF-8
139 PAM (Pluggable Authentication Modules) jest silnym i łatwo
140 dostosowywalnym do potrzeb systemem uwierzytelniania, który umożliwia
141 administratorowi indywidualne konfigurowanie poszczególnych usług,
142 które są dostosowane i skonsolidowane z bibliotekami PAM, bez
143 późniejszej ich rekompilacji w momencie zmiany sposobu
144 uwierzytelniania tychże usług.
145
146 %description -l pt_BR.UTF-8
147 PAM (Módulos de Autenticação Plugáveis) é um poderoso, flexível e
148 extensível sistema de autenticação, que permite o administrador do
149 sistema configurar serviços de autenticação individualmente para cada
150 aplicação pam compatível, sem necessidade de recompilar qualquer uma
151 das aplicações.
152
153 %description -l uk.UTF-8
154 PAM (Pluggable Authentication Modules) - це потужна, гнучка, здатна до
155 розширення система аутентикації, яка дозволяє системному
156 адміністратору налагоджувати севіси авторизації доступу (аутентикації)
157 індивідуально для кожної pam-сумісної програми без необхідності
158 перекомпіляції самої програми. Це базовий механізм аутентикації в PLD
159 Linux.
160
161 %description -l tr.UTF-8
162 PAM (Pluggable Authentication Modules) sistem yöneticilerinin
163 uygulamalardan herhangi birini yeniden derlemeksizin bütün PAM uyumlu
164 uygulamalar için doğrulama hizmetlerini ayarlamalarına yardımcı olan,
165 güclü, esnek ve kapsamlı bir doğrulama sistemidir.
166
167 %description -l ru.UTF-8
168 PAM (Pluggable Authentication Modules) - это мощная, гибкая,
169 расширяемая система аутентикации, позволяющая системному
170 администратору конфигурировать сервисы авторизации доступа
171 (аутентикации) индивидуально для каждой pam-совместимой программы без
172 необходимости перекомпилляции самой программы. Это базовый механизм
173 аутентикации в PLD Linux.
174
175 %package libs
176 Summary:        PAM libraries
177 Summary(pl.UTF-8):      Moduły PAM
178 Group:          Libraries
179 Requires(triggerpostun):        sed >= 4.0
180
181 %description libs
182 PAM libraries.
183
184 %description libs -l pl.UTF-8
185 Moduły PAM.
186
187 %package devel
188 Summary:        PAM header files
189 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja programisty do PAM
190 Summary(pt_BR.UTF-8):   Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
191 Summary(ru.UTF-8):      Библиотеки разработчика для PAM
192 Summary(uk.UTF-8):      Бібліотеки програміста для PAM
193 Group:          Development/Libraries
194 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
195 %{?with_audit:Requires: audit-libs-devel >= 1.0.8}
196 Requires:       filesystem >= 3.0-11
197
198 %description devel
199 Header files for developing PAM based applications.
200
201 %description devel -l pl.UTF-8
202 Pliki nagłówkowe i dokumentacja programisty do PAM.
203
204 %description devel -l pt_BR.UTF-8
205 Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
206
207 %description devel -l ru.UTF-8
208 Этот пакет содержит хедеры и библиотеки разработчика для PAM.
209
210 %description devel -l uk.UTF-8
211 Цей пакет містить хедери та бібліотеки програміста для PAM.
212
213 %package static
214 Summary:        PAM static libraries
215 Summary(pl.UTF-8):      Biblioteki statyczne PAM
216 Summary(ru.UTF-8):      Статические библиотеки разработчика для PAM
217 Summary(uk.UTF-8):      Статичні бібліотеки програміста для PAM
218 Group:          Development/Libraries
219 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
220
221 %description static
222 PAM static libraries.
223
224 %description static -l pl.UTF-8
225 Biblioteki statyczne PAM.
226
227 %description static -l ru.UTF-8
228 Этот пакет содержит статические библиотеки разработчика для PAM.
229
230 %description static -l uk.UTF-8
231 Цей пакет містить статичні бібліотеки програміста для PAM.
232
233 %package pam_cracklib
234 Summary:        PAM module to check the password against dictionary words
235 Summary(pl.UTF-8):      Moduł PAM do sprawdzania haseł względem słów ze słownika
236 Group:          Base
237 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
238 Requires:       cracklib >= 2.8.3
239 Requires:       cracklib-dicts >= 2.8.3
240
241 %description pam_cracklib
242 PAM module to check the password against dictionary words.
243
244 %description pam_cracklib -l pl.UTF-8
245 Moduł PAM do sprawdzania haseł względem słów ze słownika.
246
247 %package pam_selinux
248 Summary:        PAM module - SELinux support
249 Summary(pl.UTF-8):      Moduł PAM pozwalający na zmianę kontekstów SELinuksa
250 Group:          Base
251 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
252 Requires:       libselinux >= 2.1.9
253
254 %description pam_selinux
255 PAM module - SELinux support.
256
257 %description pam_selinux -l pl.UTF-8
258 Moduł PAM pozwalający na zmianę kontekstów SELinuksa.
259
260 %package pam_userdb
261 Summary:        PAM module - authenticate against GDBM database
262 Summary(pl.UTF-8):      Moduł PAM do uwierzytelniania względem bazy danych GDBM
263 Group:          Base
264 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
265 Requires:       gdbm >= 1.8.3-7
266
267 %description pam_userdb
268 pam_userdb - PAM module to authenticate against GDBM database.
269
270 %description pam_userdb -l pl.UTF-8
271 pam_userdb - moduł PAM służący do uwierzytelniania względem bazy
272 danych GDBM.
273
274 %prep
275 %setup -q -a2 -n Linux-PAM-%{version}
276 %patch0 -p1
277 %patch1 -p1
278 %patch2 -p1
279 %patch3 -p1
280 %patch4 -p1
281 %patch5 -p1
282 # upstream has similar approach for multiple files (not no exec):
283 # https://github.com/linux-pam/linux-pam/pull/48
284 #%patch6 -p1
285
286 %build
287 %{__libtoolize}
288 %{__aclocal} -I m4
289 %{__autoconf}
290 %{__autoheader}
291 %{__automake}
292 %configure \
293         ac_cv_path_FO2PDF= \
294         --enable-static \
295         --enable-shared \
296         --libdir=/%{_lib} \
297         --includedir=%{_includedir}/security \
298         %{!?with_audit:--disable-audit} \
299         %{?with_cracklib:--enable-cracklib} \
300         --enable-db=gdbm \
301         --enable-isadir=../../%{_lib}/security \
302         %{!?with_prelude:--disable-prelude} \
303         %{!?with_selinux:--disable-selinux} \
304         --enable-tally \
305         --enable-tally2
306
307 # we must explicitely update-gmo as we patch a po file
308 %{__make} -C po update-gmo
309 %{__make} \
310         DEFS="-DHAVE_CONFIG_H -D_GNU_SOURCE"
311
312 %install
313 rm -rf $RPM_BUILD_ROOT
314 install -d $RPM_BUILD_ROOT{%{_libdir},/etc/pam.d,/var/{log,run/sepermit}} \
315         $RPM_BUILD_ROOT%{systemdtmpfilesdir}
316
317 %{__make} install \
318         DESTDIR=$RPM_BUILD_ROOT \
319         servicedir=%{systemdunitdir}
320
321 %if %{with selinux}
322 install -p modules/pam_selinux/.libs/pam_selinux_check $RPM_BUILD_ROOT%{_sbindir}
323 cp -p modules/pam_selinux/pam_selinux_check.8 $RPM_BUILD_ROOT%{_mandir}/man8
324 cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/pam_selinux_check
325 %endif
326
327 cp -p %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
328
329 install -d doc/txts
330 for r in modules/pam_*/README; do
331         cp -pf $r doc/txts/README.$(basename $(dirname $r))
332 done
333 %{__rm} doc/txts/README.pam_userdb
334 %{__rm} doc/txts/README.pam_cracklib
335 install -d doc/html
336 cp -pf doc/index.html doc/html/
337
338 # fix PAM/pam man page
339 echo ".so PAM.8" > $RPM_BUILD_ROOT%{_mandir}/man8/pam.8
340
341 :> $RPM_BUILD_ROOT/etc/security/opasswd
342 :> $RPM_BUILD_ROOT/etc/security/blacklist
343
344 :> $RPM_BUILD_ROOT/var/log/tallylog
345
346 %{__mv} $RPM_BUILD_ROOT/%{_lib}/lib*.a $RPM_BUILD_ROOT%{_libdir}
347
348 cd $RPM_BUILD_ROOT/%{_lib}
349 for f in lib*.la ; do
350         %{__sed} -e 's|/%{_lib}/libpam|%{_libdir}/libpam|g' \
351                  -e "s|libdir='/%{_lib}|libdir='%{_libdir}|g" $f > $RPM_BUILD_ROOT%{_libdir}/$f
352         %{__rm} $f
353 done
354 ln -sf /%{_lib}/$(echo libpam.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam.so
355 ln -sf /%{_lib}/$(echo libpam_misc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam_misc.so
356 ln -sf /%{_lib}/$(echo libpamc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpamc.so
357 cd -
358
359 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/other
360 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/system-auth
361 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/config-util
362 cp -p %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/postlogin
363
364 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_mandir}/man5/system-auth.5
365 cp -p %{SOURCE8} $RPM_BUILD_ROOT%{_mandir}/man5/config-util.5
366
367 # Make sure every module subdirectory gave us a module.  Yes, this is hackish.
368 for dir in modules/pam_* ; do
369 %if %{without selinux}
370 [ ${dir} = "modules/pam_selinux" ] && continue
371 [ ${dir} = "modules/pam_sepermit" ] && continue
372 %endif
373 %if %{without audit}
374 [ ${dir} = "modules/pam_tty_audit" ] && continue
375 %endif
376         if [ -d ${dir} ] ; then
377                 if ! ls -1 $RPM_BUILD_ROOT/%{_lib}/security/`basename ${dir}`*.so ; then
378                         echo ERROR `basename ${dir}` did not build a module.
379                         exit 1
380                 fi
381         fi
382 done
383
384 for module in $RPM_BUILD_ROOT/%{_lib}/security/pam*.so ; do
385 # Check for module problems.  Specifically, check that every module we just
386 # installed can actually be loaded by a minimal PAM-aware application.
387         if ! env LD_LIBRARY_PATH=$RPM_BUILD_ROOT/%{_lib} \
388                         ./dlopen.sh -ldl -lpam -L$RPM_BUILD_ROOT/%{_lib} ${module} ; then
389                 echo ERROR module: ${module} cannot be loaded.
390                 exit 1
391         fi
392 done
393
394 # useless - shut up check-files
395 %{__rm} $RPM_BUILD_ROOT/%{_lib}/security/*.{la,a}
396 %{__rm} $RPM_BUILD_ROOT/%{_lib}/lib*.so
397 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/Linux-PAM
398
399 %if %{without selinux}
400 rm -rf $RPM_BUILD_ROOT{/%{_lib}/security/pam_selinux.so,%{_sbindir}/pam_selinux_check,%{_mandir}/man8/pam_selinux*.8*}
401 %endif
402
403 %find_lang Linux-PAM
404
405 %clean
406 rm -rf $RPM_BUILD_ROOT
407
408 %triggerpostun libs -- %{name}-libs < 0.99.7.1
409 for f in $(grep -l "\(pam_make\|pam_homedir\)" /etc/pam.d/*); do
410         case "$f" in
411         *rpmorig|*rpmnew|*rpmsave|*~|*.orig)
412                 continue
413                 ;;
414         *)
415                 cp -f "$f" "$f.rpmorig"
416                 sed -i -e 's/pam_make\.so \(.*\)/pam_exec.so failok seteuid \/usr\/bin\/make -C \1/g' \
417                        -e 's/pam_homedir\.so/pam_mkhomedir.so/g' "$f"
418                 ;;
419         esac
420 done
421 if [ -d /var/lock/console -a -d /var/run/console ]; then
422         cp -a /var/lock/console/* /var/run/console/ 2> /dev/null
423         rm -rf /var/lock/console
424 fi
425
426 %triggerin -- cronie,vixie-cron,hc-cron,fcron,mcron
427 # restart crond if pam is upgraded
428 # (crond is linked with old libpam but tries to open modules linked with new libpam)
429 if [ "$1" != 1 ]; then
430         %service -q crond restart
431 fi
432 exit 0
433
434 %triggerpostun -- %{name} < 1:1.1.5-8
435 # removed in 1.1.4
436 if grep -qs change_uid /etc/pam.d/system-auth; then
437         %{__sed} -i -e '/session/ s/change_uid//' /etc/pam.d/system-auth
438 fi
439
440 # We want it added for painless upgarde even if it mean log pollution for non-systemd
441 # enabled systems,
442 # If this module is not present on systemd enabled system then `systemctl restart sshd.service`
443 # will kill all sessions.
444 if ! grep -qs pam_systemd /etc/pam.d/system-auth; then
445         echo "-session  optional        pam_systemd.so" >>/etc/pam.d/system-auth
446 fi
447
448 %post -p <lua>
449 fh, error = io.open("/var/log/tallylog")
450 if fh ~= nil then
451         io.close(fh)
452 else
453         fh = io.open("/var/log/tallylog", "w+")
454         io.close(fh)
455         posix.chmod("/var/log/tallylog", "rw-------")
456 end
457
458 %post   libs -p /sbin/ldconfig
459 %postun libs -p /sbin/ldconfig
460
461 %files -f Linux-PAM.lang
462 %defattr(644,root,root,755)
463 %doc AUTHORS CHANGELOG ChangeLog Copyright NEWS doc/txts/README*
464 %if %{with doc}
465 %doc doc/specs/*.txt doc/sag/Linux-PAM_*.txt doc/{sag,}/html
466 %endif
467 %dir /etc/pam.d
468 %dir /etc/security/console.apps
469 %dir /etc/security/console.perms.d
470 %dir /var/run/console
471 %{systemdtmpfilesdir}/%{name}.conf
472 %config(noreplace) %verify(not md5 mtime size) /etc/environment
473 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/other
474 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/system-auth
475 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/config-util
476 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/postlogin
477 %config(noreplace) %verify(not md5 mtime size) /etc/security/access.conf
478 %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist
479 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.handlers
480 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.perms
481 %config(noreplace) %verify(not md5 mtime size) /etc/security/faillock.conf
482 %config(noreplace) %verify(not md5 mtime size) /etc/security/group.conf
483 %config(noreplace) %verify(not md5 mtime size) /etc/security/limits.conf
484 %config(noreplace) %verify(not md5 mtime size) /etc/security/namespace.conf
485 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/namespace.init
486 %config(noreplace) %verify(not md5 mtime size) /etc/security/pam_env.conf
487 %config(noreplace) %verify(not md5 mtime size) /etc/security/time.conf
488 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram
489 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.en
490 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.de
491 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.dk
492 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.es
493 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.fi
494 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.it
495 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.ja
496 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.no
497 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram.pl
498 %config(noreplace) %verify(not md5 mtime size) /etc/security/console.perms.d/50-default.perms
499 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/opasswd
500 %attr(755,root,root) %{_bindir}/pam_pwgen
501 %attr(755,root,root) %{_sbindir}/faillock
502 %attr(755,root,root) %{_sbindir}/mkhomedir_helper
503 %attr(755,root,root) %{_sbindir}/pam_console_apply
504 %attr(755,root,root) %{_sbindir}/pam_namespace_helper
505 %attr(755,root,root) %{_sbindir}/pam_tally
506 %attr(755,root,root) %{_sbindir}/pam_tally2
507 %attr(755,root,root) %{_sbindir}/pam_timestamp_check
508 %attr(755,root,root) %{_sbindir}/pwgen_trigram
509 %attr(4755,root,root) %{_sbindir}/unix_chkpwd
510 %attr(4755,root,root) %{_sbindir}/unix_update
511 %{systemdunitdir}/pam_namespace.service
512 %{_mandir}/man5/access.conf.5*
513 %{_mandir}/man5/config-util.5*
514 %{_mandir}/man5/console.apps.5*
515 %{_mandir}/man5/console.handlers.5*
516 %{_mandir}/man5/console.perms.5*
517 %{_mandir}/man5/environment.5*
518 %{_mandir}/man5/faillock.conf.5*
519 %{_mandir}/man5/group.conf.5*
520 %{_mandir}/man5/limits.conf.5*
521 %{_mandir}/man5/namespace.conf.5*
522 %{_mandir}/man5/pam.conf.5*
523 %{_mandir}/man5/pam.d.5*
524 %{_mandir}/man5/pam_env.conf.5*
525 %{_mandir}/man5/system-auth.5*
526 %{_mandir}/man5/time.conf.5*
527 %{_mandir}/man8/PAM.8*
528 %{_mandir}/man8/faillock.8*
529 %{_mandir}/man8/mkhomedir_helper.8*
530 %{_mandir}/man8/pam.8*
531 %{_mandir}/man8/pam_*.8*
532 %{_mandir}/man8/unix_chkpwd.8*
533 %{_mandir}/man8/unix_update.8*
534 %if %{with cracklib}
535 %exclude %{_mandir}/man8/pam_cracklib.8*
536 %endif
537 %if %{with selinux}
538 %exclude %{_mandir}/man8/pam_selinux*.8*
539 %exclude %{_mandir}/man8/pam_sepermit.8*
540 %endif
541 %exclude %{_mandir}/man8/pam_userdb.8*
542 %ghost %verify(not md5 mtime size) /var/log/tallylog
543
544 # PAM modules
545 %attr(755,root,root) /%{_lib}/security/pam_access.so
546 %attr(755,root,root) /%{_lib}/security/pam_console.so
547 %attr(755,root,root) /%{_lib}/security/pam_debug.so
548 %attr(755,root,root) /%{_lib}/security/pam_deny.so
549 %attr(755,root,root) /%{_lib}/security/pam_echo.so
550 %attr(755,root,root) /%{_lib}/security/pam_env.so
551 %attr(755,root,root) /%{_lib}/security/pam_exec.so
552 %attr(755,root,root) /%{_lib}/security/pam_faildelay.so
553 %attr(755,root,root) /%{_lib}/security/pam_faillock.so
554 %attr(755,root,root) /%{_lib}/security/pam_filter.so
555 %attr(755,root,root) /%{_lib}/security/pam_filter/upperLOWER
556 %attr(755,root,root) /%{_lib}/security/pam_ftp.so
557 %attr(755,root,root) /%{_lib}/security/pam_group.so
558 %attr(755,root,root) /%{_lib}/security/pam_issue.so
559 %attr(755,root,root) /%{_lib}/security/pam_keyinit.so
560 %attr(755,root,root) /%{_lib}/security/pam_lastlog.so
561 %attr(755,root,root) /%{_lib}/security/pam_limits.so
562 %attr(755,root,root) /%{_lib}/security/pam_listfile.so
563 %attr(755,root,root) /%{_lib}/security/pam_localuser.so
564 %attr(755,root,root) /%{_lib}/security/pam_loginuid.so
565 %attr(755,root,root) /%{_lib}/security/pam_mail.so
566 %attr(755,root,root) /%{_lib}/security/pam_mkhomedir.so
567 %attr(755,root,root) /%{_lib}/security/pam_motd.so
568 %attr(755,root,root) /%{_lib}/security/pam_namespace.so
569 %attr(755,root,root) /%{_lib}/security/pam_nologin.so
570 %attr(755,root,root) /%{_lib}/security/pam_permit.so
571 %attr(755,root,root) /%{_lib}/security/pam_pwexport.so
572 %attr(755,root,root) /%{_lib}/security/pam_pwgen.so
573 %attr(755,root,root) /%{_lib}/security/pam_pwhistory.so
574 %attr(755,root,root) /%{_lib}/security/pam_rhosts.so
575 %attr(755,root,root) /%{_lib}/security/pam_rootok.so
576 %attr(755,root,root) /%{_lib}/security/pam_rps.so
577 %attr(755,root,root) /%{_lib}/security/pam_securetty.so
578 %attr(755,root,root) /%{_lib}/security/pam_setquota.so
579 %attr(755,root,root) /%{_lib}/security/pam_shells.so
580 %attr(755,root,root) /%{_lib}/security/pam_stress.so
581 %attr(755,root,root) /%{_lib}/security/pam_succeed_if.so
582 %attr(755,root,root) /%{_lib}/security/pam_tally.so
583 %attr(755,root,root) /%{_lib}/security/pam_tally2.so
584 %attr(755,root,root) /%{_lib}/security/pam_time.so
585 %attr(755,root,root) /%{_lib}/security/pam_timestamp.so
586 %{?with_audit:%attr(755,root,root) /%{_lib}/security/pam_tty_audit.so}
587 %attr(755,root,root) /%{_lib}/security/pam_umask.so
588 %attr(755,root,root) /%{_lib}/security/pam_unix.so
589 %attr(755,root,root) /%{_lib}/security/pam_usertype.so
590 %attr(755,root,root) /%{_lib}/security/pam_warn.so
591 %attr(755,root,root) /%{_lib}/security/pam_wheel.so
592 %attr(755,root,root) /%{_lib}/security/pam_xauth.so
593
594 %files libs
595 %defattr(644,root,root,755)
596 %dir /%{_lib}/security/pam_filter
597 %attr(755,root,root) /%{_lib}/libpam.so.*.*.*
598 %attr(755,root,root) %ghost /%{_lib}/libpam.so.0
599 %attr(755,root,root) /%{_lib}/libpam_misc.so.*.*.*
600 %attr(755,root,root) %ghost /%{_lib}/libpam_misc.so.0
601 %attr(755,root,root) /%{_lib}/libpamc.so.*.*.*
602 %attr(755,root,root) %ghost /%{_lib}/libpamc.so.0
603
604 %files devel
605 %defattr(644,root,root,755)
606 %if %{with doc}
607 %doc doc/{adg,mwg}/Linux-PAM_*.txt doc/{adg,mwg,}/html
608 %endif
609 %attr(755,root,root) %{_libdir}/libpam.so
610 %attr(755,root,root) %{_libdir}/libpam_misc.so
611 %attr(755,root,root) %{_libdir}/libpamc.so
612 %{_libdir}/libpam.la
613 %{_libdir}/libpam_misc.la
614 %{_libdir}/libpamc.la
615 %{_includedir}/security/_pam_*.h
616 %{_includedir}/security/pam*.h
617 %{_mandir}/man3/misc_conv.3*
618 %{_mandir}/man3/pam*.3*
619
620 %files static
621 %defattr(644,root,root,755)
622 %{_libdir}/libpam.a
623 %{_libdir}/libpamc.a
624 %{_libdir}/libpam_misc.a
625
626 %if %{with cracklib}
627 %files pam_cracklib
628 %defattr(644,root,root,755)
629 %doc modules/pam_cracklib/README
630 %attr(755,root,root) /%{_lib}/security/pam_cracklib.so
631 %{_mandir}/man8/pam_cracklib.8*
632 %endif
633
634 %if %{with selinux}
635 %files pam_selinux
636 %defattr(644,root,root,755)
637 %attr(755,root,root) /%{_lib}/security/pam_selinux.so
638 %attr(755,root,root) /%{_lib}/security/pam_sepermit.so
639 %attr(755,root,root) %{_sbindir}/pam_selinux_check
640 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/pam_selinux_check
641 %config(noreplace) %verify(not md5 mtime size) /etc/security/sepermit.conf
642 %{_mandir}/man5/sepermit.conf.5*
643 %{_mandir}/man8/pam_selinux*.8*
644 %{_mandir}/man8/pam_sepermit.8*
645 %dir /var/run/sepermit
646 %endif
647
648 %files pam_userdb
649 %defattr(644,root,root,755)
650 %doc modules/pam_userdb/README
651 %attr(755,root,root) /%{_lib}/security/pam_userdb.so
652 %{_mandir}/man8/pam_userdb.8*
This page took 0.104856 seconds and 3 git commands to generate.