2
0
mirror of https://github.com/sudo-project/sudo.git synced 2025-08-31 14:25:15 +00:00

Add ldap "flavor" for debian, controlled by the SUDO_FLAVOR environment

variable.
This commit is contained in:
Todd C. Miller
2010-07-14 14:09:34 -04:00
parent 3910c8fb50
commit eccbde77da
3 changed files with 23 additions and 9 deletions

View File

@@ -62,10 +62,11 @@ DOCS = sudo.man visudo.man sudoers.man sudoers.ldap.man sudoers.man \
@DEV@ $(srcdir)/sudo_plugin.man.in $(srcdir)/sudo_plugin.cat \
@DEV@ $(srcdir)/HISTORY $(srcdir)/LICENSE
OTHER_DOCS= $(top_srcdir)/ChangeLog $(top_srcdir)/README* \
OTHER_DOCS= $(top_srcdir)/ChangeLog $(top_srcdir)/README \
$(top_srcdir)/WHATSNEW $(srcdir)/HISTORY $(srcdir)/LICENSE \
$(srcdir)/TROUBLESHOOTING $(srcdir)/UPGRADE $(srcdir)/sample.* \
$(srcdir)/schema.*
$(srcdir)/TROUBLESHOOTING $(srcdir)/UPGRADE $(srcdir)/sample.*
OTHER_DOCS_LDAP= $(top_srcdir)/README.LDAP $(srcdir)/schema.*
VERSION = @PACKAGE_VERSION@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
@@ -149,6 +150,7 @@ install-includes:
install-doc: install-dirs
for f in $(OTHER_DOCS); do $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 $$f $(DESTDIR)$(docdir); done
@LDAP@for f in $(OTHER_DOCS_LDAP); do $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 $$f $(DESTDIR)$(docdir); done
$(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudo.$(mantype) $(DESTDIR)$(mandirsu)/sudo.$(mansectsu)
@rm -f $(DESTDIR)$(mandirsu)/sudoedit.$(mansectsu)
ln $(DESTDIR)$(mandirsu)/sudo.$(mansectsu) $(DESTDIR)$(mandirsu)/sudoedit.$(mansectsu)

10
mkpkg
View File

@@ -3,7 +3,6 @@
# Build a binary package using polypkg
# Usage: mkpkg
#
# TODO: add flavors (e.g. LDAP)
IFS=
@@ -147,14 +146,16 @@ case "$platform" in
deb[456].*)
# XXX - create sudo group like debian does
# debian now has a %sudo entry in its sample sudoers
# XXX - debian has separate ldap and non-ldap packages
# Note, must indent with tabs, not spaces due to IFS trickery
configure_opts="
if test "${SUDO_FLAVOR:-vanilla}" == "ldap"; then
configure_opts="--with-ldap
--with-ldap-conf-file=/etc/sudo-ldap.conf"
fi
configure_opts="$configure_opts
--prefix=/usr
--with-all-insults
--with-exempt=sudo
--with-pam
--with-ldap
--with-fqdn
--with-logging=syslog
--with-logfac=authpriv
@@ -167,7 +168,6 @@ case "$platform" in
--disable-root-mailer
--disable-setresuid
--with-sendmail=/usr/sbin/sendmail
--with-ldap-conf-file=/etc/ldap/ldap.conf
--mandir=/usr/share/man
--libexecdir=/usr/lib/sudo
--with-secure-path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin"

14
sudo.pp
View File

@@ -1,5 +1,9 @@
%set
name="sudo"
if test -n "$SUDO_FLAVOR"; then
name="sudo-$SUDO_FLAVOR"
else
name="sudo"
fi
summary="Provide limited super-user priveleges to specific users"
description="Sudo is a program designed to allow a sysadmin to give \
limited root privileges to users and log root activity. \
@@ -150,6 +154,14 @@ still allow people to get their work done."
# installs it 0640 when sudo requires 0440
chmod %{sudoers_mode} %{sudoersdir}/sudoers
# create symlink to ease transition to new path for ldap config
# if old config file exists and new one doesn't
if test X"%{SUDO_FLAVOR}" = X"ldap"; then
if test -r /etc/ldap/ldap.conf -a ! -r /etc/sudo-ldap.conf; then
ln -s /etc/ldap/ldap.conf /etc/sudo-ldap.conf
fi
fi
# Debian uses a sudo group in its default sudoers file
perl -e '
exit 0 if getgrnam("sudo");