HP 3000 Manuals

sys/msg.h [ MPE/iX Developer's Kit Reference Manual Volume II ] MPE/iX 5.0 Documentation


MPE/iX Developer's Kit Reference Manual Volume II

sys/msg.h 

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                     */

        };



MPE/iX 5.0 Documentation