summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/os/ipc.c
diff options
context:
space:
mode:
authorcasper <none@none>2007-05-25 05:43:42 -0700
committercasper <none@none>2007-05-25 05:43:42 -0700
commitf48205be61a214698b763ff550ab9e657525104c (patch)
treebc63168b8468284765bb770eb48473b7a0bf980e /usr/src/uts/common/os/ipc.c
parent7387092aa96cd872b317dfab3fee34a96c681f3e (diff)
downloadillumos-joyent-f48205be61a214698b763ff550ab9e657525104c.tar.gz
PSARC 2007/064 Unified POSIX and Windows Credentials for Solaris
4994017 data structure sharing between rpcbind and libnsl leads to accidents 6549510 Need the ability to store SIDs in the Solaris cred_t 6549515 PSARC 2007/064: uid_t and gid_t to become unsigned
Diffstat (limited to 'usr/src/uts/common/os/ipc.c')
-rw-r--r--usr/src/uts/common/os/ipc.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/usr/src/uts/common/os/ipc.c b/usr/src/uts/common/os/ipc.c
index 0094652f15..367089e686 100644
--- a/usr/src/uts/common/os/ipc.c
+++ b/usr/src/uts/common/os/ipc.c
@@ -529,7 +529,7 @@ ipcperm_set(ipc_service_t *service, struct cred *cr,
if (secpolicy_ipc_owner(cr, kperm) != 0)
return (EPERM);
- if ((uid < 0) || (uid > MAXUID) || (gid < 0) || (gid > MAXUID))
+ if (!VALID_UID(uid) || !VALID_GID(gid))
return (EINVAL);
kperm->ipc_uid = uid;
@@ -568,8 +568,7 @@ ipcperm_set64(ipc_service_t *service, struct cred *cr,
if (secpolicy_ipc_owner(cr, kperm) != 0)
return (EPERM);
- if ((perm64->ipcx_uid < 0) || (perm64->ipcx_uid > MAXUID) ||
- (perm64->ipcx_gid < 0) || (perm64->ipcx_gid > MAXUID))
+ if (!VALID_UID(perm64->ipcx_uid) || !VALID_GID(perm64->ipcx_gid))
return (EINVAL);
kperm->ipc_uid = perm64->ipcx_uid;