diff options
author | Mike Heffner <mikeh@FreeBSD.org> | 2003-02-23 00:06:35 +0000 |
---|---|---|
committer | Mike Heffner <mikeh@FreeBSD.org> | 2003-02-23 00:06:35 +0000 |
commit | 215d1a9eb111ddd94a334071234651449448d943 (patch) | |
tree | 1f2b7bf1b92c80cafba6a243f9e1a018d4d2d0b5 /lib/libc/gen/setmode.c | |
parent | 01a06ce25031255391a36e58f231922f2a45047a (diff) | |
download | src-215d1a9eb111ddd94a334071234651449448d943.tar.gz src-215d1a9eb111ddd94a334071234651449448d943.zip |
Grab some changes from NetBSD:
fix const poisoning
add cast to silence warning
pull in unistd.h
Notes
Notes:
svn path=/head/; revision=111273
Diffstat (limited to 'lib/libc/gen/setmode.c')
-rw-r--r-- | lib/libc/gen/setmode.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/libc/gen/setmode.c b/lib/libc/gen/setmode.c index de8dd2993b1c..814e07a91ec5 100644 --- a/lib/libc/gen/setmode.c +++ b/lib/libc/gen/setmode.c @@ -48,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include <signal.h> #include <stddef.h> #include <stdlib.h> +#include <unistd.h> #ifdef SETMODE_DEBUG #include <stdio.h> @@ -83,13 +84,13 @@ static void dumpmode(BITCMD *); */ mode_t getmode(bbox, omode) - void *bbox; + const void *bbox; mode_t omode; { - BITCMD *set; + const BITCMD *set; mode_t clrval, newmode, value; - set = (BITCMD *)bbox; + set = (const BITCMD *)bbox; newmode = omode; for (value = 0;; set++) switch(set->cmd) { @@ -168,7 +169,7 @@ common: if (set->cmd2 & CMD2_CLR) { void * setmode(p) - char *p; + const char *p; { int perm, who; char op; @@ -366,7 +367,7 @@ addcmd(set, op, who, oparg, mask) set->cmd2 = ((who & S_IRUSR) ? CMD2_UBITS : 0) | ((who & S_IRGRP) ? CMD2_GBITS : 0) | ((who & S_IROTH) ? CMD2_OBITS : 0); - set->bits = ~0; + set->bits = (mode_t)~0; } else { set->cmd2 = CMD2_UBITS | CMD2_GBITS | CMD2_OBITS; set->bits = mask; |