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