LinuxGuruz
  • Last 5 Forum Topics
    Replies
    Views
    Last post


The Web Only This Site
  • BOOKMARK

  • ADD TO FAVORITES

  • REFERENCES


  • MARC

    Mailing list ARChives
    - Search by -
     Subjects
     Authors
     Bodies





    FOLDOC

    Computing Dictionary




  • Text Link Ads






  • LINUX man pages
  • Linux Man Page Viewer


    The following form allows you to view linux man pages.

    Command:

    msgget

    
    
    

    SYNOPSIS

           #include <sys/types.h>
           #include <sys/ipc.h>
           #include <sys/msg.h>
    
           int msgget(key_t key, int msgflg);
    
    
    

    DESCRIPTION

           The  msgget() system call returns the System V message queue identifier
           associated with the value of the key argument.  A new message queue  is
           created  if  key has the value IPC_PRIVATE or key isn't IPC_PRIVATE, no
           message queue with the given key key exists, and IPC_CREAT is specified
           in msgflg.
    
           If  msgflg  specifies  both  IPC_CREAT and IPC_EXCL and a message queue
           already exists for key, then msgget() fails with errno set  to  EEXIST.
           (This  is  analogous  to the effect of the combination O_CREAT | O_EXCL
           for open(2).)
    
           Upon creation, the least significant bits of the argument msgflg define
           the  permissions  of the message queue.  These permission bits have the
           same format and semantics as the permissions  specified  for  the  mode
           argument of open(2).  (The execute permissions are not used.)
    
           If  a  new message queue is created, then its associated data structure
           msqid_ds (see msgctl(2)) is initialized as follows:
    
                  msg_perm.cuid and msg_perm.uid are set to the effective user  ID
                  of the calling process.
    
                  msg_perm.cgid and msg_perm.gid are set to the effective group ID
                  of the calling process.
    
                  The least significant 9 bits of msg_perm.mode  are  set  to  the
                  least significant 9 bits of msgflg.
    
                  msg_qnum, msg_lspid, msg_lrpid, msg_stime, and msg_rtime are set
                  to 0.
    
                  msg_ctime is set to the current time.
    
                  msg_qbytes is set to the system limit MSGMNB.
    
           If the message queue already exists the permissions are verified, and a
           check is made to see if it is marked for destruction.
    
    
    

    RETURN VALUE

           If successful, the return value will be the message queue identifier (a
           nonnegative integer), otherwise -1 with errno indicating the error.
    
    
    

    ERRORS

           On failure, errno is set to one of the following values:
           ENOSPC A  message  queue has to be created but the system limit for the
                  maximum number of message queues (MSGMNI) would be exceeded.
    
    
    

    CONFORMING TO

           SVr4, POSIX.1-2001.
    
    
    

    NOTES

           The inclusion of <sys/types.h> and <sys/ipc.h> isn't required on  Linux
           or by any version of POSIX.  However, some old implementations required
           the inclusion of these header files, and the SVID also documented their
           inclusion.   Applications  intended  to be portable to such old systems
           may need to include these header files.
    
           IPC_PRIVATE isn't a flag field but a key_t type.  If this special value
           is  used for key, the system call ignores everything but the least sig-
           nificant 9 bits of msgflg and creates a new message queue (on success).
    
           The  following is a system limit on message queue resources affecting a
           msgget() call:
    
           MSGMNI System wide maximum number of message queues:  policy  dependent
                  (on   Linux,   this   limit   can   be  read  and  modified  via
                  /proc/sys/kernel/msgmni).
    
       Linux notes
           Until version 2.3.20 Linux would return EIDRM for a msgget() on a  mes-
           sage queue scheduled for deletion.
    
    
    

    BUGS

           The name choice IPC_PRIVATE was perhaps unfortunate, IPC_NEW would more
           clearly show its function.
    
    
    

    SEE ALSO

           msgctl(2),    msgrcv(2),    msgsnd(2),    ftok(3),     capabilities(7),
           mq_overview(7), svipc(7)
    
    
    

    Linux 2012-05-31 MSGGET(2)

    
    
  • MORE RESOURCE


  • Linux

    The Distributions





    Linux

    The Software





    Linux

    The News



  • MARKETING






  • Toll Free

webmaster@linuxguruz.com
Copyright © 1999 - 2016 by LinuxGuruz