shmctl man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

SHMCTL(2)							     SHMCTL(2)

NAME
       shmctl - shared memory control operations

SYNOPSIS
       #include <sys/types.h>
       #include <sys/ipc.h>
       #include <sys/shm.h>

       int shmctl(int shmid, int cmd, struct shmid_ds *buf);

DESCRIPTION
       The shmctl() function provides a variety of shared memory control oper‐
       ations as specified by cmd. The permission required for a shared memory
       control	operation is given as {token}, where token is the type of per‐
       mission needed. The types of permission are interpreted as follows:

	 00400	  READ by user
	 00200	  WRITE by user
	 00040	  READ by group
	 00020	  WRITE by group
	 00004	  READ by others
	 00002	  WRITE by others

       See the Shared Memory Operation Permissions  section  of	 Intro(2)  for
       more information.

       The following operations require the specified tokens:

       IPC_STAT
		     Place the current value of each member of the data struc‐
		     ture associated with shmid into the structure pointed  to
		     by	 buf.  The  contents  of this structure are defined in
		     Intro(2). {READ}

       IPC_SET
		     Set the value of the following members of the data struc‐
		     ture  associated  with  shmid  to the corresponding value
		     found in the structure pointed to by buf:

		       shm_perm.uid
		       shm_perm.gid
		       shm_perm.mode  /* access permission bits only */

		     This command can be executed only by a process  that  has
		     appropriate  privileges  or an effective user ID equal to
		     the value of shm_perm.cuid or shm_perm.uid	 in  the  data
		     structure associated with shmid.

       IPC_RMID
		     Remove  the  shared  memory identifier specified by shmid
		     from the system.  The segment referenced by  the  identi‐
		     fier  will	 be destroyed when all processes with the seg‐
		     ment attached have either detached the segment or exited.
		     If	 the  segment  is  not	attached  to  any process when
		     IPC_RMID is invoked, it will  be  destroyed  immediately.
		     This  command  can be executed only by a process that has
		     appropriate privileges or an effective user ID  equal  to
		     the  value	 of  shm_perm.cuid or shm_perm.uid in the data
		     structure associated with shmid.

       SHM_LOCK
		     Lock the shared memory segment specified by shmid in mem‐
		     ory.  This command can be executed only by a process that
		     has appropriate privileges.

       SHM_UNLOCK
		     Unlock the shared memory segment specified by shmid. This
		     command can be executed only by a process that has appro‐
		     priate privileges.

       A shared memory segment	must  be  explicitly  removed  using  IPC_RMID
       before the system can deallocate it and the resources it uses.

RETURN VALUES
       Upon  successful	 completion,  0 is returned. Otherwise, −1 is returned
       and errno is set to indicate the error.

ERRORS
       The shmctl() function will fail if:

       EACCES
		    The cmd argument is equal to IPC_STAT and {READ} operation
		    permission is denied to the calling process.

       EFAULT
		    The buf argument points to an illegal address.

       EINVAL
		    The	 shmid	argument  is not a valid shared memory identi‐
		    fier; or the cmd argument is not a	valid  command	or  is
		    IPC_SET and shm_perm.uid or shm_perm.gid is not valid.

       ENOMEM
		    The	 cmd  argument	is  equal to SHM_LOCK and there is not
		    enough memory, or the operation would exceed  a  limit  or
		    resource control on locked memory.

       EOVERFLOW
		    The	 cmd  argument is IPC_STAT and uid or gid is too large
		    to be stored in the structure pointed to by buf.

       EPERM
		    The cmd argument is equal  to  IPC_RMID  or	 IPC_SET,  the
		    effective  user  ID of the calling process is not equal to
		    the value of shm_perm.cuid or  shm_perm.uid	 in  the  data
		    structure  associated  with shmid, and {PRIV_IPC_OWNER} is
		    not asserted in the effective set of the calling process.

		    The cmd argument is equal to SHM_LOCK  or  SHM_UNLOCK  and
		    {PRIV_PROC_LOCK_MEMORY}  is	 not asserted in the effective
		    set of the calling process.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌────────────────────┬─────────────────┐
       │  ATTRIBUTE TYPE    │ ATTRIBUTE VALUE │
       ├────────────────────┼─────────────────┤
       │Interface Stability │ Standard	      │
       └────────────────────┴─────────────────┘

SEE ALSO
       ipcs(1), Intro(2), shmget(2), shmop(2),	attributes(5),	privileges(5),
       standards(5)

				 Apr 10, 2007			     SHMCTL(2)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net