  | 
»  | 
 | 
  
 | 
 | 
Macros |    |  
 - MSG_NOERROR   
 No error if big message
 - MSG_WWAIT     
 A writer is waiting on the queue
 - MSG_RWAIT     
 A reader is waiting on the queue
 
 Functions |    |  
 If __STDC__ is defined: 
   extern int msgget( key_t, int );
   extern int msgctl( int, int, struct msqid_ds * );
   extern int msgrcv( int, void *, int, long, int );
   extern int msgsnd( int, void *, int, int );
  |  
 If __STDC__ is not defined: 
   extern int msgget( );
   extern int msgctl( );
   extern int msgrcv( );
   extern int msgsnd( );
  |  
 Structures |    |  
 Message queue control structure: 
   struct msqid_ds {
      struct ipc_perm   msg_perm;    /* msg_perm defined in sys/ipc.h    */
      void              *msg_first;  /* not used on MPE/iX               */
      void              *msg_last;   /* not used on MPE/iX               */
      int               msg_cbytes;  /* current # bytes on queue         */
      int               msg_qnum;    /* # of messages on queue           */
      int               msg_qbytes;  /* max # of bytes on queue          */
      pid_t             msg_lspid;   /* pid of last msgsnd               */
      pid_t             msg_lrpid;   /* pid of last msgrcv               */
      time_t            msg_stime;   /* last msgsnd time                 */
      time_t            msg_rtime;   /* last msgrcv time                 */
      time_t            msg_ctime;   /* last change time                 */
   };
 |  
 Message buffer template structure: 
struct msgbuf {                      /*This is a sample template only    */
      long   mtype;                  /* message type                     */
      char   mtext[1];               /* message text                     */
      };
 |  
  
 |