From 259838277ba4f363ebbb1c3abf87315915f0e0bc Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Mon, 26 Apr 1999 12:20:26 +0000 Subject: [PATCH] Use proper mode_t types and macros. Don't assume the traditional Unix values for mode bits. --- src/mknod.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/mknod.c b/src/mknod.c index f1c5d6985f..13cb1c5814 100644 --- a/src/mknod.c +++ b/src/mknod.c @@ -65,7 +65,7 @@ usage (int status) printf (_("\ Create the special file NAME of the given TYPE.\n\ \n\ - -m, --mode=MODE set permission mode (as in chmod), not 0666 - umask\n\ + -m, --mode=MODE set permission mode (as in chmod), not a=rw - umask\n\ --help display this help and exit\n\ --version output version information and exit\n\ \n\ @@ -84,7 +84,7 @@ MAJOR MINOR are forbidden for TYPE p, mandatory otherwise. TYPE may be:\n\ int main (int argc, char **argv) { - unsigned short newmode; + mode_t newmode; struct mode_change *change; const char *symbolic_mode; int optc; @@ -115,7 +115,8 @@ main (int argc, char **argv) } } - newmode = 0666 & ~umask (0); + newmode = ((S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH) + & ~ umask (0)); if (symbolic_mode) { change = mode_compile (symbolic_mode, 0); -- 2.47.3