Skip to content

Commit

Permalink
Only package parent directories that match a non-default prefix
Browse files Browse the repository at this point in the history
For example, if sudo is installed into /opt/sudo we only want to
package directories under /opt and not /var.
  • Loading branch information
millert committed Feb 8, 2025
1 parent 43f16c1 commit a9e1120
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 3 deletions.
8 changes: 7 additions & 1 deletion etc/sudo-logsrvd.pp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from sudo clients.
This makes it possible to have all sudo I/O logs on a central server."
vendor="Todd C. Miller"
copyright="Copyright 2019-2024 Todd C. Miller"
copyright="Copyright 2019-2025 Todd C. Miller"

%if [aix]
# Convert to 4 part version for AIX, including patch level
Expand Down Expand Up @@ -167,10 +167,16 @@
extradirs="$extradirs `dirname $docdir` `dirname $rundir`"
test "`dirname $exampledir`" != "$docdir" && extradirs="$extradirs `dirname $exampledir`"
for dir in $sbindir $extradirs; do
# Only package directories that match the prefix,
# otherwise we could package directories like /var.
case "$dir" in
${prefix}*)
while test "$dir" != "/"; do
parentdirs="${parentdirs}${parentdirs+ }$dir/"
dir=`dirname $dir`
done
;;
esac
done
parentdirs=`echo $parentdirs | tr " " "\n" | sort -u`
fi
Expand Down
8 changes: 7 additions & 1 deletion etc/sudo-python.pp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
summary="Sudo Python plugin framework"
description="The sudo Python plugin allows you to extend sudo using Python."
vendor="Todd C. Miller"
copyright="Copyright 2019-2024 Todd C. Miller"
copyright="Copyright 2019-2025 Todd C. Miller"

%if [aix]
# Convert to 4 part version for AIX, including patch level
Expand Down Expand Up @@ -117,10 +117,16 @@
extradirs="$extradirs `dirname $docdir`"
test "`dirname $exampledir`" != "$docdir" && extradirs="$extradirs `dirname $exampledir`"
for dir in $libexecdir $extradirs; do
# Only package directories that match the prefix,
# otherwise we could package directories like /var.
case "$dir" in
${prefix}*)
while test "$dir" != "/"; do
parentdirs="${parentdirs}${parentdirs+ }$dir/"
dir=`dirname $dir`
done
;;
esac
done
parentdirs=`echo $parentdirs | tr " " "\n" | sort -u`
fi
Expand Down
8 changes: 7 additions & 1 deletion etc/sudo.pp
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
The basic philosophy is to give as few privileges as possible but \
still allow people to get their work done."
vendor="Todd C. Miller"
copyright="Copyright 1994-1996,1998-2024 Todd C. Miller"
copyright="Copyright 1994-1996,1998-2025 Todd C. Miller"
sudoedit_man=`echo ${pp_destdir}$mandir/*/sudoedit.*|sed "s:^${pp_destdir}::"`
sudoedit_man_target=`basename $sudoedit_man | sed 's/edit//'`

Expand Down Expand Up @@ -295,10 +295,16 @@
test "`dirname $exampledir`" != "$docdir" && extradirs="$extradirs `dirname $exampledir`"
test -d ${pp_destdir}${localedir} && extradirs="$extradirs $localedir"
for dir in $bindir $sbindir $libexecdir $includedir $extradirs; do
# Only package directories that match the prefix,
# otherwise we could package directories like /var.
case "$dir" in
${prefix}*)
while test "$dir" != "/"; do
parentdirs="${parentdirs}${parentdirs+ }$dir/"
dir=`dirname $dir`
done
;;
esac
done
parentdirs=`echo $parentdirs | tr " " "\n" | sort -u`
fi
Expand Down

0 comments on commit a9e1120

Please sign in to comment.