]> git.pld-linux.org Git - packages/apache-mod_auth_shadow.git/blob - apache-mod_auth_shadow.spec
- spec already renamed to match Name
[packages/apache-mod_auth_shadow.git] / apache-mod_auth_shadow.spec
1 %define         mod_name        auth_shadow
2 %define         apxs            /usr/sbin/apxs
3 Summary:        Apache module: authenticating against a /etc/shadow file
4 Summary(pl):    Modu³ do apache: autoryzacja przez plik /etc/shadow
5 Name:           apache-mod_%{mod_name}
6 Version:        2.1
7 Release:        0.1
8 License:        GPL
9 Group:          Networking/Daemons
10 Source0:        http://dl.sourceforge.net/mod-auth-shadow/mod_auth_shadow-%{version}.tar.gz
11 # Source0-md5:  564f11a9d19ea546673644fdacb928e7
12 Patch0:         %{name}-make.patch
13 URL:            http://mod-auth-shadow.sourceforge.net/
14 BuildRequires:  %{apxs}
15 BuildRequires:  apache-devel >= 2.0
16 Requires:       apache(modules-api) = %apache_modules_api
17 Obsoletes:      apache-mod_auth-shadow
18 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
19
20 %define         _pkglibdir      %(%{apxs} -q LIBEXECDIR 2>/dev/null)
21 %define         _sysconfdir     %(%{apxs} -q SYSCONFDIR 2>/dev/null)
22
23 %description
24 mod_auth_shadow is an Apache module for authenticating users via an
25 /etc/shadow file.
26
27 When performing this task one encounters one fundamental difficulty:
28 the /etc/shadow file is supposed to be read/writeable only by root.
29 However, the webserver is supposed to run under a non-root user, such
30 as "http".
31
32 mod_auth_shadow addresses this difficulty by opening a pipe to an suid
33 root program, validate, which does the actual validation. When there
34 is a failure, validate writes an error message to the system log, and
35 waits three seconds before exiting.
36
37 %description -l pl
38 mod_auth_shadow to modu³ Apache'a do uwierzytelniania u¿ytkowników
39 poprzez plik /etc/shadow.
40
41 Przy wykonywaniu tego zadania jest jedna zasadnicza trudno¶æ: plik
42 /etc/shadow mo¿e byæ odczytywany/zapisywany tylko przez roota. Jednak
43 serwer WWW ma dzia³aæ z prawami u¿ytkownika innego ni¿ root, takiego
44 jak "http".
45
46 mod_auth_shadow obchodzi ten problem poprzez otwieranie potoku do
47 programu z ustawionym atrybutem suid root - validate - wykonuj±cego
48 w³a¶ciwe sprawdzanie has³a. W przypadku b³êdu validate zapisuje
49 komunikat do loga systemowego i czeka trzy sekundy przed zakoñczeniem.
50
51 %prep
52 %setup -q -n mod_%{mod_name}-%{version}
53 %patch0 -p1
54
55 %build
56 %{__make} \
57         CC="%{__cc}" \
58         INSTBINDIR=%{_sbindir} \
59         APXS=%{apxs}
60
61 %install
62 rm -rf $RPM_BUILD_ROOT
63 install -d $RPM_BUILD_ROOT{%{_pkglibdir},%{_sbindir},%{_sysconfdir}/httpd.conf}
64
65 install .libs/mod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
66 install validate $RPM_BUILD_ROOT%{_sbindir}
67 echo 'LoadModule %{mod_name}_module modules/mod_%{mod_name}.so' > \
68         $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/90_mod_%{mod_name}.conf
69
70 %clean
71 rm -rf $RPM_BUILD_ROOT
72
73 %post
74 if [ -f /var/lock/subsys/httpd ]; then
75         /etc/rc.d/init.d/httpd restart 1>&2
76 fi
77
78 %preun
79 if [ "$1" = "0" ]; then
80         if [ -f /var/lock/subsys/httpd ]; then
81                 /etc/rc.d/init.d/httpd restart 1>&2
82         fi
83 fi
84
85 %files
86 %defattr(644,root,root,755)
87 %doc CHANGES INSTALL README
88 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf/*_mod_%{mod_name}.conf
89 %attr(755,root,root) %{_pkglibdir}/*.so
90 %attr(4755,root,root) %{_sbindir}/validate
This page took 0.052572 seconds and 4 git commands to generate.