]> Zhao Yanbai Git Server - minix.git/commitdiff
Message type for PM_GETGID
authorLionel Sambuc <lionel@minix3.org>
Tue, 13 May 2014 12:47:11 +0000 (14:47 +0200)
committerLionel Sambuc <lionel@minix3.org>
Mon, 28 Jul 2014 15:05:37 +0000 (17:05 +0200)
Change-Id: If3f788b0ad5a7389a62ecec3da78d6d71090f9a8

include/minix/callnr.h
include/minix/ipc.h
lib/libc/sys-minix/getegid.c
servers/pm/getset.c

index 813d9d03ffd79c898e1be6cc72921ca537b64b48..9646a8e9becc2f399cb2596aba2f094ebf9fc673 100644 (file)
@@ -85,9 +85,6 @@
 #define PM_SIG_SET             m2_sigset /* sigset_t */
 #define PM_SIG_CTX             m2_p1   /* struct sigcontext * */
 
-/* Field names for the getgid(2) call. */
-#define PM_GETGID_EGID         m1_i1   /* gid_t */
-
 /* Field names for the setuid(2)/seteuid(2) calls. */
 #define PM_SETUID_UID          m1_i1   /* uid_t */
 
index 721c3818d4d64a0615d64a0dc4ec73c7af7caa9b..9aebc8442efe88546aff15640939b94a1b5a32f8 100644 (file)
@@ -554,6 +554,13 @@ typedef struct {
 } mess_lsys_vfs_mapdriver;
 _ASSERT_MSG_SIZE(mess_lsys_vfs_mapdriver);
 
+typedef struct {
+       uid_t egid;
+
+       uint8_t padding[52];
+} mess_pm_lc_getgid;
+_ASSERT_MSG_SIZE(mess_pm_lc_getgid);
+
 typedef struct {
        uid_t euid;
 
@@ -1068,6 +1075,7 @@ typedef struct {
 
                mess_pm_lexec_exec_new  m_pm_lexec_exec_new;
 
+               mess_pm_lc_getgid       m_pm_lc_getgid;
                mess_pm_lc_getuid       m_pm_lc_getuid;
                mess_pm_lc_ptrace       m_pm_lc_ptrace;
                mess_pm_lc_time         m_pm_lc_time;
index 9aa368f85e0dec645f5744cefc56c9ee045cf458..190f79556ef0ba568612f82ccb224524b6499112 100644 (file)
@@ -15,6 +15,6 @@ gid_t getegid(void)
    * are not always successful and Minix returns the unreserved value
    * (gid_t) -1 when there is an error.
    */
-  if (_syscall(PM_PROC_NR, PM_GETGID, &m) < 0) return ( (gid_t) -1);
-  return( (gid_t) m.PM_GETGID_EGID);
+  if (_syscall(PM_PROC_NR, PM_GETGID, &m) < 0) return(-1);
+  return(m.m_pm_lc_getgid.egid);
 }
index a6c38c13916167ee9252911a90c03c8ce75df4a1..6a0f0942641f78ad3c8f5ef6b7c3897443f0e353 100644 (file)
@@ -54,7 +54,7 @@ int do_get()
 
        case PM_GETGID:
                r = rmp->mp_realgid;
-               rmp->mp_reply.PM_GETGID_EGID = rmp->mp_effgid;
+               rmp->mp_reply.m_pm_lc_getgid.egid = rmp->mp_effgid;
                break;
 
        case PM_GETPID: