[23892] in Source-Commits

home help back first fref pref prev next nref lref last post

/svn/athena r23502 - in trunk/debathena/config/linerva: debian files/usr/sbin

daemon@ATHENA.MIT.EDU (Anders Kaseorg)
Sat Feb 28 23:32:59 2009

Date: Sat, 28 Feb 2009 23:32:13 -0500
From: Anders Kaseorg <andersk@MIT.EDU>
Message-Id: <200903010432.n214WDFb025327@drugstore.mit.edu>
To: source-commits@mit.edu
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Author: andersk
Date: 2009-02-28 23:32:13 -0500 (Sat, 28 Feb 2009)
New Revision: 23502

Modified:
   trunk/debathena/config/linerva/debian/changelog
   trunk/debathena/config/linerva/files/usr/sbin/linerva-clean-setugid
Log:
In linerva:
  * Make linerva-clean-setugid use dpkg-statoverride again.


Modified: trunk/debathena/config/linerva/debian/changelog
===================================================================
--- trunk/debathena/config/linerva/debian/changelog	2009-03-01 04:16:35 UTC (rev 23501)
+++ trunk/debathena/config/linerva/debian/changelog	2009-03-01 04:32:13 UTC (rev 23502)
@@ -1,3 +1,9 @@
+debathena-linerva (1.15) unstable; urgency=low
+
+  * Make linerva-clean-setugid use dpkg-statoverride again.
+
+ -- Anders Kaseorg <andersk@mit.edu>  Sat, 28 Feb 2009 23:30:44 -0500
+
 debathena-linerva (1.14) unstable; urgency=low
 
   * Move logcheck configuration into a separate git repository.

Modified: trunk/debathena/config/linerva/files/usr/sbin/linerva-clean-setugid
===================================================================
--- trunk/debathena/config/linerva/files/usr/sbin/linerva-clean-setugid	2009-03-01 04:16:35 UTC (rev 23501)
+++ trunk/debathena/config/linerva/files/usr/sbin/linerva-clean-setugid	2009-03-01 04:32:13 UTC (rev 23502)
@@ -27,45 +27,35 @@
 }
 
 case "$1" in
-  --list|"")
+  --list|""|--clean)
     found=""
     setuid="$(list_bad_setuid)"
     setgid="$(list_bad_setgid)"
     if [ -n "$setuid" ]; then
         echo "Unexpected setuid files:"
-        ls -l $(list_bad_setuid)
+        ls -l $setuid
         echo
         found=1
     fi
     if [ -n "$setgid" ]; then
         echo "Unexpected setgid files:"
-        ls -l $(list_bad_setgid)
+        ls -l $setgid
         echo
         found=1
     fi
     if [ -n "$found" ]; then
-        echo "Run $0 --clean to fix these."
+        if [ "$1" = --clean ]; then
+            stat -c "%U %G %a %n" $setuid $setgid | \
+                while read user group mode file; do
+                dpkg-statoverride --update --add \
+                    "$user" "$group" "${mode:${#mode}-3}" "$file"
+            done
+        else
+            echo "Run $0 --clean to fix these."
+        fi
     fi
   ;;
 
-  --clean)
-    setuid="$(list_bad_setuid)"
-    setgid="$(list_bad_setgid)"
-    if [ -n "$setuid" ]; then
-        echo "Unexpected setuid files:"
-        ls -l $setuid
-        echo
-        chmod u-s $setuid
-    fi
-
-    if [ -n "$setgid" ]; then
-        echo "Unexpected setgid files:"
-        ls -l $setgid
-        echo
-        chmod g-s $setgid
-    fi
-  ;;
-
   *)
     echo "Huh?  Try --list or --clean." >&2
     exit 2


home help back first fref pref prev next nref lref last post