Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c6f2eb979c314b6362e655f3ff15749af565f86
Commit:     4c6f2eb979c314b6362e655f3ff15749af565f86
Parent:     f2434ec1e08e44c2568b29c2879b3346aa29dbd2
Author:     Mike Frysinger <[EMAIL PROTECTED]>
AuthorDate: Thu May 10 22:44:28 2007 -0700
Committer:  Sam Ravnborg <[EMAIL PROTECTED]>
CommitDate: Mon Jul 16 21:15:52 2007 +0200

    kbuild: add support for squashing uid/gid in gen_initramfs_list.sh
    
    Sometimes it is useful to squash all uid's/gid's to 0:0 regardless of
    current owner.  For example, in build systems that get run as arbitrary
    users (uClinux-dist).  This adds a special "squash" keyword so you can do
    '-g squash -u squash' and have ownership squashed to root.
    
    Signed-off-by: Mike Frysinger <[EMAIL PROTECTED]>
    Cc: Sam Ravnborg <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---
 scripts/gen_initramfs_list.sh |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/scripts/gen_initramfs_list.sh b/scripts/gen_initramfs_list.sh
index 683eb12..684fb9c 100644
--- a/scripts/gen_initramfs_list.sh
+++ b/scripts/gen_initramfs_list.sh
@@ -19,11 +19,11 @@ $0 [-o <file>] [-u <uid>] [-g <gid>] {-d | <cpio_source>} 
...
        -o <file>      Create gzipped initramfs file named <file> using
                       gen_init_cpio and gzip
        -u <uid>       User ID to map to user ID 0 (root).
-                      <uid> is only meaningful if <cpio_source>
-                      is a directory.
+                      <uid> is only meaningful if <cpio_source> is a
+                      directory.  "squash" forces all files to uid 0.
        -g <gid>       Group ID to map to group ID 0 (root).
-                      <gid> is only meaningful if <cpio_source>
-                      is a directory.
+                      <gid> is only meaningful if <cpio_source> is a
+                      directory.  "squash" forces all files to gid 0.
        <cpio_source>  File list or directory for cpio archive.
                       If <cpio_source> is a .cpio file it will be used
                       as direct input to initramfs.
@@ -113,8 +113,8 @@ parse() {
        local gid="$4"
        local ftype=$(filetype "${location}")
        # remap uid/gid to 0 if necessary
-       [ "$uid" -eq "$root_uid" ] && uid=0
-       [ "$gid" -eq "$root_gid" ] && gid=0
+       [ "$root_uid" = "squash" ] && uid=0 || [ "$uid" -eq "$root_uid" ] && 
uid=0
+       [ "$root_gid" = "squash" ] && gid=0 || [ "$gid" -eq "$root_gid" ] && 
gid=0
        local str="${mode} ${uid} ${gid}"
 
        [ "${ftype}" == "invalid" ] && return 0
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to