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