👤
Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:
Select Section of Man Page:
Select Man Page Repository:

OpenSolaris 2009.06 - man page for shmctl (opensolaris section 2)

shmctl(2)				   System Calls 				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 operations as specified
       by cmd. The permission required for a shared memory control operation is given as {token},
       where  token  is the type of permission 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 structure 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 structure 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 privi-
		     leges 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 identifier will be destroyed  when  all	processes
		     with the segment 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 memory. 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 appropriate 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 identifier; or the cmd  argu-
		    ment 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_MEM-
		    ORY} 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)

SunOS 5.11				   10 Apr 2007					shmctl(2)


All times are GMT -4. The time now is 08:09 PM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
×
UNIX.COM Login
Username:
Password:  
Show Password