commit a55cc8c95e37c55c2b685d1f7a9775f0c6e4e767
parent 35053c1d4803738bb6f3c40c8418748e29358bfa
Author: Markus Wichmann <nullplan@gmx.net>
Date: Sun, 20 Oct 2013 10:53:43 +0200
Make chmod and ls recognize sticky bit (S_ISVTX).
Diffstat:
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/chmod.c b/chmod.c
@@ -31,9 +31,9 @@ main(int argc, char *argv[])
case 'R':
rflag = true;
break;
- case 'r': case 'w': case 'x': case 's':
+ case 'r': case 'w': case 'x': case 's': case 't':
/*
- * -[rwxs] are valid modes so do not interpret
+ * -[rwxst] are valid modes so do not interpret
* them as options - in any case we are done if
* we hit this case
*/
diff --git a/ls.c b/ls.c
@@ -228,6 +228,7 @@ output(Entry *ent)
if(ent->mode & S_ISUID) mode[3] = (mode[3] == 'x') ? 's' : 'S';
if(ent->mode & S_ISGID) mode[6] = (mode[6] == 'x') ? 's' : 'S';
+ if(ent->mode & S_ISVTX) mode[9] = (mode[9] == 'x') ? 't' : 'T';
errno = 0;
pw = getpwuid(ent->uid);