linux/include/linux/msg.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef _LINUX_MSG_H
   3#define _LINUX_MSG_H
   4
   5#include <linux/list.h>
   6#include <linux/time64.h>
   7#include <uapi/linux/msg.h>
   8
   9/* one msg_msg structure for each message */
  10struct msg_msg {
  11        struct list_head m_list;
  12        long m_type;
  13        size_t m_ts;            /* message text size */
  14        struct msg_msgseg *next;
  15        void *security;
  16        /* the actual message follows immediately */
  17};
  18
  19/* one msq_queue structure for each present queue on the system */
  20struct msg_queue {
  21        struct kern_ipc_perm q_perm;
  22        time64_t q_stime;               /* last msgsnd time */
  23        time64_t q_rtime;               /* last msgrcv time */
  24        time64_t q_ctime;               /* last change time */
  25        unsigned long q_cbytes;         /* current number of bytes on queue */
  26        unsigned long q_qnum;           /* number of messages in queue */
  27        unsigned long q_qbytes;         /* max number of bytes on queue */
  28        pid_t q_lspid;                  /* pid of last msgsnd */
  29        pid_t q_lrpid;                  /* last receive pid */
  30
  31        struct list_head q_messages;
  32        struct list_head q_receivers;
  33        struct list_head q_senders;
  34} __randomize_layout;
  35
  36#endif /* _LINUX_MSG_H */
  37