Home | History | Annotate | Download | only in libnewipc
      1 /*
      2  * Copyright (c) 2016 Xiao Yang <yangx.jy (at) cn.fujitsu.com>
      3  *
      4  * This program is free software;  you can redistribute it and/or modify
      5  * it under the terms of the GNU General Public License as published by
      6  * the Free Software Foundation; either version 2 of the License, or
      7  * (at your option) any later version.
      8  *
      9  * This program is distributed in the hope that it will be useful,
     10  * but WITHOUT ANY WARRANTY;  without even the implied warranty of
     11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
     12  * the GNU General Public License for more details.
     13  *
     14  * You should have received a copy of the GNU General Public License
     15  * along with this program.
     16  */
     17 
     18 /*
     19  * common definitions for the IPC system calls.
     20  */
     21 
     22 #ifndef __LIBNEWIPC_H
     23 #define __LIBNEWIPC_H	1
     24 
     25 #define MSG_RD	0400
     26 #define MSG_WR	0200
     27 #define MSG_RW	(MSG_RD | MSG_WR)
     28 #define MSGSIZE	1024
     29 #define MSGTYPE	1
     30 #define NR_MSGQUEUES	16
     31 #define min(a, b)	(((a) < (b)) ? (a) : (b))
     32 
     33 #define SEM_RD	0400
     34 #define SEM_ALT	0200
     35 #define SEM_RA	(SEM_RD | SEM_ALT)
     36 #define PSEMS	10
     37 
     38 #define SHM_RD	0400
     39 #define SHM_WR	0200
     40 #define SHM_RW	(SHM_RD | SHM_WR)
     41 #define SHM_SIZE	2048
     42 #define INT_SIZE	4
     43 #define MODE_MASK	0x01FF
     44 
     45 key_t getipckey(const char *file, const int lineno);
     46 #define GETIPCKEY() \
     47 	getipckey(__FILE__, __LINE__)
     48 
     49 int get_used_queues(const char *file, const int lineno);
     50 #define GET_USED_QUEUES() \
     51 	get_used_queues(__FILE__, __LINE__)
     52 
     53 void *probe_free_addr(const char *file, const int lineno);
     54 #define PROBE_FREE_ADDR() \
     55 	probe_free_addr(__FILE__, __LINE__)
     56 
     57 #endif /* newlibipc.h */
     58