June 2025 | ||||||
Mo | Tu | We | Th | Fr | Sa | Su |
26 | 27 | 28 | 29 | 30 | 31 | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 1 | 2 | 3 | 4 | 5 | 6 |
01: /* Copyright (C) 2003 Krzysztof Benedyczak & Michal Wronski 02: 03: This program is free software; you can redistribute it and/or 04: modify it under the terms of the GNU Lesser General Public 05: License as published by the Free Software Foundation; either 06: version 2.1 of the License, or (at your option) any later version. 07: 08: It is distributed in the hope that it will be useful, 09: but WITHOUT ANY WARRANTY; without even the implied warranty of 10: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11: Lesser General Public License for more details. 12: 13: You should have received a copy of the GNU Lesser General Public 14: License along with this software; if not, write to the Free 15: Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 16: 02111-1307 USA. */ 17: 18: #ifndef _LINUX_MQUEUE_H 19: #define _LINUX_MQUEUE_H 20: 21: #define MQ_PRIO_MAX 32768 22: /* per-uid limit of kernel memory used by mqueue, in bytes */ 23: #define MQ_BYTES_MAX 819200 24: 25: struct mq_attr { 26: long mq_flags; /* message queue flags */ 27: long mq_maxmsg; /* maximum number of messages */ 28: long mq_msgsize; /* maximum message size */ 29: long mq_curmsgs; /* number of messages currently queued */ 30: long __reserved[4]; /* ignored for input, zeroed for output */ 31: }; 32: 33: /* 34: * SIGEV_THREAD implementation: 35: * SIGEV_THREAD must be implemented in user space. If SIGEV_THREAD is passed 36: * to mq_notify, then 37: * - sigev_signo must be the file descriptor of an AF_NETLINK socket. It's not 38: * necessary that the socket is bound. 39: * - sigev_value.sival_ptr must point to a cookie that is NOTIFY_COOKIE_LEN 40: * bytes long. 41: * If the notification is triggered, then the cookie is sent to the netlink 42: * socket. The last byte of the cookie is replaced with the NOTIFY_?? codes: 43: * NOTIFY_WOKENUP if the notification got triggered, NOTIFY_REMOVED if it was 44: * removed, either due to a close() on the message queue fd or due to a 45: * mq_notify() that removed the notification. 46: */ 47: #define NOTIFY_NONE 0 48: #define NOTIFY_WOKENUP 1 49: #define NOTIFY_REMOVED 2 50: 51: #define NOTIFY_COOKIE_LEN 32 52: 53: #endif 54: