Annotation of cci/usr/src/man/man2/shmctl.2i, revision 1.1

1.1     ! root        1: .TH SHMCTL 2
        !             2: .SH NAME
        !             3: shmctl \- shared memory control operations
        !             4: .SH SYNOPSIS
        !             5: .B #include <sys/types.h>
        !             6: .br
        !             7: .B #include <sys/ipc.h>
        !             8: .br
        !             9: .B #include <sys/shm.h>
        !            10: .PP
        !            11: .nf
        !            12: .B int shmctl (shmid, cmd, buf)
        !            13: .B int shmid, cmd;
        !            14: .B struct shmid_ds \(**buf;
        !            15: .fi
        !            16: .SH DESCRIPTION
        !            17: .I Shmctl
        !            18: provides a variety of shared memory control operations as specified by
        !            19: .IR cmd .
        !            20: The following
        !            21: .IR cmd s
        !            22: are available:
        !            23: .RS
        !            24: .TP \w'IPC_RMID\ \ \ 'u
        !            25: .SM
        !            26: .B IPC_STAT
        !            27: Place the current value of each member of the data structure associated with
        !            28: .I shmid
        !            29: into the structure pointed to by
        !            30: .IR buf .
        !            31: The contents of this structure are defined in
        !            32: .IR intro (2).
        !            33: .SM {READ}
        !            34: .TP
        !            35: .SM
        !            36: .B IPC_SET
        !            37: Set the value of the following members of the data structure associated with
        !            38: .I shmid
        !            39: to the corresponding value found in the structure pointed to by
        !            40: .IR buf :
        !            41: .nf
        !            42: .RS
        !            43: shm_perm.uid
        !            44: shm_perm.gid
        !            45: shm_perm.mode /\(** only low 9 bits \(**/
        !            46: .fi
        !            47: .RE
        !            48: .IP
        !            49: This \fIcmd\fP can only be executed by a process that has an effective user
        !            50: .SM ID
        !            51: equal to either that of super-user or to the value of
        !            52: .B shm_perm.uid
        !            53: in the data structure associated with
        !            54: .IR shmid .
        !            55: .TP
        !            56: .SM
        !            57: .B IPC_RMID
        !            58: Remove the shared memory identifier specified by
        !            59: .I shmid
        !            60: from the system and destroy the shared memory segment and data structure
        !            61: associated with it.
        !            62: This \fIcmd\fP can only be executed by a process that has an effective user
        !            63: .SM ID
        !            64: equal to either that of super-user or to the value of
        !            65: .B shm_perm.uid
        !            66: in the data structure associated with
        !            67: .IR shmid .
        !            68: .PP
        !            69: .I Shmctl
        !            70: will fail if one or more of the following are true:
        !            71: .TP 15
        !            72: .SM
        !            73: \%[EINVAL]
        !            74: .I Shmid
        !            75: is not a valid shared memory identifier.
        !            76: .TP
        !            77: .SM
        !            78: \%[EINVAL]
        !            79: .I Cmd
        !            80: is not a valid command.
        !            81: .TP
        !            82: .SM
        !            83: \%[EACCES]
        !            84: .I Cmd
        !            85: is equal to
        !            86: .B IPC_STAT
        !            87: and
        !            88: .SM {READ}
        !            89: operation permission is denied to the calling process (see
        !            90: .IR intro (2)).
        !            91: .TP
        !            92: .SM
        !            93: \%[EPERM]
        !            94: .I Cmd
        !            95: is equal to
        !            96: .SM
        !            97: .B IPC_RMID
        !            98: or
        !            99: .SM
        !           100: .B IPC_SET
        !           101: and the effective user
        !           102: .SM ID
        !           103: of the calling process is not equal to that of super-user and it is
        !           104: not equal to the value of
        !           105: .B shm_perm.uid
        !           106: in the data structure associated with
        !           107: .IR shmid .
        !           108: .TP
        !           109: .SM
        !           110: \%[EFAULT]
        !           111: .I Buf
        !           112: points to an illegal address.
        !           113: .SH "RETURN VALUE"
        !           114: Upon successful completion, a value of 0 is returned. Otherwise, a
        !           115: value of \-1 is returned and
        !           116: .I errno\^
        !           117: is set to indicate the error.
        !           118: .SH SEE ALSO
        !           119: intro(2), shmget(2), shmop(2).
        !           120: .\"    @(#)shmctl.2    6.2 of 9/6/83

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.