sudo/sudo.spec
Stephan Kulow c78d53b990 Accepting request 225988 from home:vitezslav_cizek:branches:Base:System
- update to 1.8.10p1
  * Fixed a bug with netgated commands in "sudo -l command" that
    could cause the command to be listed even when it was explicitly
    denied. This only affected list mode when a command was specified.
    Bug #636.
  * It is now possible to disable network interface probing in sudo.conf
    by changing the value of the probe_interfaces setting.
  * When listing a user's privileges (sudo -l), the sudoers plugin
    will now prompt for the user's password even if the targetpw,
    rootpw or runaspw options are set.
  * The sudoers plugin uses a new format for its time stamp files.
    Bug #616.
  * sudo's -K option will now remove all of the user's time stamps,
    not just the time stamp for the current terminal.
    The -k option can be used to only disable time stamps for
    the current terminal.
  * If sudo was started in the background and needed to prompt for a
    password, it was not possible to suspend it at the password prompt
  * LDAP-based sudoers now uses a default search filter of
    (objectClass=sudoRole) for more efficient queries.
    The netgroup query has been modified to avoid falling below the
    minimum length for OpenLDAP substring indices.
  * The new use_netgroups sudoers option can be used to explicitly
    enable or disable netgroups support. For LDAP-based sudoers,
    netgroup support requires an expensive substring match on the server.
    If netgroups are not needed, this option can be disabled to
    reduce the load on the LDAP server.
  * Sudo is once again able to open the sudoers file when the group
    on sudoers doesn't match the expected value, so long as the
    file is not group writable.

OBS-URL: https://build.opensuse.org/request/show/225988
OBS-URL: https://build.opensuse.org/package/show/Base:System/sudo?expand=0&rev=71
2014-03-15 06:41:25 +00:00

169 lines
5.2 KiB
RPMSpec

#
# spec file for package sudo
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: sudo
Version: 1.8.10p1
Release: 0
Summary: Execute some commands as root
License: ISC
Group: System/Base
Url: http://www.sudo.ws/
Source0: http://sudo.ws/sudo/dist/%{name}-%{version}.tar.gz
Source1: sudo.pamd
Source2: README.SUSE
Source3: fate_313276_test.sh
Source4: README_313276.test
Patch0: sudoers2ldif-env.patch
# PATCH-OPENSUSE: the "SUSE" branding of the default sudo config
Patch1: sudo-sudoers.patch
# PATCH-FIX-UPSTREAM: fixes 64bit-portability-issue ./sssd.c:829; sent upstream
BuildRequires: audit-devel
BuildRequires: groff
BuildRequires: libselinux-devel
BuildRequires: libsss_sudo
BuildRequires: openldap2-devel
BuildRequires: pam-devel
Requires(pre): coreutils
Requires(pre): permissions
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Sudo is a command that allows users to execute some commands as root.
The /etc/sudoers file (edited with 'visudo') specifies which users have
access to sudo and which commands they can run. Sudo logs all its
activities to syslogd, so the system administrator can keep an eye on
things. Sudo asks for the password for initializing a check period of a
given time N (where N is defined at installation and is set to 5
minutes by default).
%package devel
Summary: Header files needed for sudo plugin development
Group: Development/Libraries/C and C++
%description devel
These header files are needed for building of sudo plugins.
%package test
Summary: Tests for the package
Group: Development/Tests
Requires: %{name} = %{version}
%description test
Tests for fate#313276
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%build
%ifarch s390 s390x %sparc
F_PIE=-fPIE
%else
F_PIE=-fpie
%endif
export CFLAGS="%{optflags} -Wall $F_PIE -DLDAP_DEPRECATED"
export LDFLAGS="-pie"
%configure \
--libexecdir=%{_libexecdir}/sudo \
--docdir=%{_docdir}/%{name} \
--with-noexec=%{_libexecdir}/sudo/sudo_noexec.so \
--with-pam \
--with-ldap \
--with-selinux \
--with-linux-audit \
--with-logfac=auth \
--with-insults \
--with-all-insults \
--with-ignore-dot \
--with-tty-tickets \
--enable-shell-sets-home \
--enable-warnings \
--with-sendmail=%{_sbindir}/sendmail \
--with-sudoers-mode=0440 \
--with-env-editor \
--without-secure-path \
--with-passprompt='%%p\x27s password:' \
--with-rundir=%{_localstatedir}/lib/sudo \
--with-sssd
make %{?_smp_mflags}
%install
%make_install
install -d -m 755 %{buildroot}%{_sysconfdir}/pam.d
install -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/pam.d/sudo
mv %{buildroot}%{_docdir}/%{name}/sudoers2ldif %{buildroot}%{_sbindir}
rm -f %{buildroot}%{_bindir}/sudoedit
ln -sf %{_bindir}/sudo %{buildroot}%{_bindir}/sudoedit
install -d -m 755 %{buildroot}%{_sysconfdir}/openldap/schema
install -m 644 doc/schema.OpenLDAP %{buildroot}%{_sysconfdir}/openldap/schema/sudo.schema
install -m 644 %{SOURCE2} %{buildroot}%{_docdir}/%{name}/
rm -f %{buildroot}%{_docdir}/%{name}/sample.pam
rm -f %{buildroot}%{_docdir}/%{name}/sample.syslog.conf
rm -f %{buildroot}%{_docdir}/%{name}/schema.OpenLDAP
rm -f %{buildroot}%{_libexecdir}/%{name}/sudoers.la
%find_lang %{name}
%find_lang sudoers
cat sudoers.lang >> %{name}.lang
# tests
install -d -m 755 %{buildroot}/var/lib/tests/sudo
install -m 755 %{SOURCE3} %{buildroot}/var/lib/tests/sudo
install -m 755 %{SOURCE4} %{buildroot}/var/lib/tests/sudo
install -d %{buildroot}%{_docdir}/%{name}-test
install -m 755 %{buildroot}%{_docdir}/%{name}/LICENSE %{buildroot}%{_docdir}/%{name}-test/LICENSE
%post
chmod 0440 %{_sysconfdir}/sudoers
%if 0%{?suse_version} <= 1130
%run_permissions
%else
%set_permissions /usr/bin/sudo
%endif
%verifyscript
%verify_permissions -e /usr/bin/sudo
%files -f %{name}.lang
%defattr(-,root,root)
%doc %{_docdir}/%{name}
%doc %{_mandir}/man?/*
%config(noreplace) %attr(0440,root,root) %{_sysconfdir}/sudoers
%dir %{_sysconfdir}/sudoers.d
%config %{_sysconfdir}/pam.d/sudo
%attr(4755,root,root) %{_bindir}/sudo
%dir %{_sysconfdir}/openldap
%dir %{_sysconfdir}/openldap/schema
%attr(0444,root,root) %config %{_sysconfdir}/openldap/schema/sudo.schema
%{_bindir}/sudoedit
%{_bindir}/sudoreplay
%{_sbindir}/visudo
%attr(0755,root,root) %{_sbindir}/sudoers2ldif
%{_libexecdir}/sudo
%attr(0700,root,root) %dir %ghost %{_localstatedir}/lib/sudo
%files devel
%defattr(-,root,root)
%{_includedir}/sudo_plugin.h
%files test
%defattr(-,root, root)
/var/lib/tests
%{_docdir}/%{name}-test/
%changelog