Home | History | Annotate | Line # | Download | only in common
linux32_ipc.h revision 1.1.22.3
      1  1.1.22.3  yamt /* $NetBSD: linux32_ipc.h,v 1.1.22.3 2010/03/11 15:03:17 yamt Exp $ */
      2  1.1.22.2  yamt 
      3  1.1.22.2  yamt /*
      4  1.1.22.2  yamt  * Copyright (c) 2008 Nicolas Joly
      5  1.1.22.2  yamt  * All rights reserved.
      6  1.1.22.2  yamt  *
      7  1.1.22.2  yamt  * Redistribution and use in source and binary forms, with or without
      8  1.1.22.2  yamt  * modification, are permitted provided that the following conditions
      9  1.1.22.2  yamt  * are met:
     10  1.1.22.2  yamt  * 1. Redistributions of source code must retain the above copyright
     11  1.1.22.2  yamt  *    notice, this list of conditions and the following disclaimer.
     12  1.1.22.2  yamt  * 2. Redistributions in binary form must reproduce the above copyright
     13  1.1.22.2  yamt  *    notice, this list of conditions and the following disclaimer in the
     14  1.1.22.2  yamt  *    documentation and/or other materials provided with the distribution.
     15  1.1.22.2  yamt  *
     16  1.1.22.2  yamt  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS
     17  1.1.22.2  yamt  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
     18  1.1.22.2  yamt  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     19  1.1.22.2  yamt  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
     20  1.1.22.2  yamt  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     21  1.1.22.2  yamt  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     22  1.1.22.2  yamt  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     23  1.1.22.2  yamt  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     24  1.1.22.2  yamt  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     25  1.1.22.2  yamt  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     26  1.1.22.2  yamt  * POSSIBILITY OF SUCH DAMAGE.
     27  1.1.22.2  yamt  */
     28  1.1.22.2  yamt 
     29  1.1.22.2  yamt #ifndef _LINUX32_IPC_H
     30  1.1.22.2  yamt #define _LINUX32_IPC_H
     31  1.1.22.2  yamt 
     32  1.1.22.2  yamt typedef	int32_t	linux32_key_t;
     33  1.1.22.2  yamt 
     34  1.1.22.2  yamt struct linux32_ipc_perm {
     35  1.1.22.2  yamt 	linux32_key_t	l_key;
     36  1.1.22.2  yamt 	ushort		l_uid;
     37  1.1.22.2  yamt 	ushort		l_gid;
     38  1.1.22.2  yamt 	ushort		l_cuid;
     39  1.1.22.2  yamt 	ushort		l_cgid;
     40  1.1.22.2  yamt 	ushort		l_mode;
     41  1.1.22.2  yamt 	ushort		l_seq;
     42  1.1.22.2  yamt };
     43  1.1.22.2  yamt 
     44  1.1.22.2  yamt struct linux32_ipc64_perm {
     45  1.1.22.2  yamt 	linux32_key_t	l_key;
     46  1.1.22.2  yamt 	uint		l_uid;
     47  1.1.22.2  yamt 	uint		l_gid;
     48  1.1.22.2  yamt 	uint		l_cuid;
     49  1.1.22.2  yamt 	uint		l_cgid;
     50  1.1.22.2  yamt 	ushort		l_mode;
     51  1.1.22.2  yamt 	ushort		l___pad1;
     52  1.1.22.2  yamt 	ushort		l_seq;
     53  1.1.22.2  yamt 	ushort		l___pad2;
     54  1.1.22.2  yamt 	netbsd32_u_long	l___unused1;
     55  1.1.22.2  yamt 	netbsd32_u_long	l___unused2;
     56  1.1.22.2  yamt };
     57  1.1.22.2  yamt 
     58  1.1.22.3  yamt struct linux32_msqid_ds {
     59  1.1.22.3  yamt 	struct linux32_ipc_perm	l_msg_perm;
     60  1.1.22.3  yamt 	netbsd32_pointer_t	l_msg_first;
     61  1.1.22.3  yamt 	netbsd32_pointer_t	l_msg_last;
     62  1.1.22.3  yamt 	linux32_time_t		l_msg_stime;
     63  1.1.22.3  yamt 	linux32_time_t		l_msg_rtime;
     64  1.1.22.3  yamt 	linux32_time_t		l_msg_ctime;
     65  1.1.22.3  yamt 	netbsd32_pointer_t	l_wwait;	/* Linux internal */
     66  1.1.22.3  yamt 	netbsd32_pointer_t	l_rwait;	/* Linux internal */
     67  1.1.22.3  yamt 	ushort	l_msg_cbytes;
     68  1.1.22.3  yamt 	ushort	l_msg_qnum;
     69  1.1.22.3  yamt 	ushort	l_msg_qbytes;
     70  1.1.22.3  yamt 	ushort	l_msg_lspid;
     71  1.1.22.3  yamt 	ushort	l_msg_lrpid;
     72  1.1.22.3  yamt };
     73  1.1.22.3  yamt 
     74  1.1.22.3  yamt struct linux32_msqid64_ds {
     75  1.1.22.3  yamt 	struct linux32_ipc64_perm	l_msg_perm;
     76  1.1.22.3  yamt 	linux32_time_t		l_msg_stime;
     77  1.1.22.3  yamt 	netbsd32_u_long		l___unused1;
     78  1.1.22.3  yamt 	linux32_time_t		l_msg_rtime;
     79  1.1.22.3  yamt 	netbsd32_u_long		l___unused2;
     80  1.1.22.3  yamt 	linux32_time_t		l_msg_ctime;
     81  1.1.22.3  yamt 	netbsd32_u_long		l___unused3;
     82  1.1.22.3  yamt 	netbsd32_u_long		l_msg_cbytes;
     83  1.1.22.3  yamt 	netbsd32_u_long		l_msg_qnum;
     84  1.1.22.3  yamt 	netbsd32_u_long		l_msg_qbytes;
     85  1.1.22.3  yamt 	int			l_msg_lspid;
     86  1.1.22.3  yamt 	int			l_msg_lrpid;
     87  1.1.22.3  yamt 	netbsd32_u_long		l___unused4;
     88  1.1.22.3  yamt 	netbsd32_u_long		l___unused5;
     89  1.1.22.3  yamt 
     90  1.1.22.3  yamt };
     91  1.1.22.3  yamt 
     92  1.1.22.2  yamt #define LINUX32_IPC_RMID	0
     93  1.1.22.2  yamt #define LINUX32_IPC_SET		1
     94  1.1.22.2  yamt #define LINUX32_IPC_STAT	2
     95  1.1.22.2  yamt #define LINUX32_IPC_INFO	3
     96  1.1.22.2  yamt 
     97  1.1.22.2  yamt #define LINUX32_IPC_64		0x0100
     98  1.1.22.2  yamt 
     99  1.1.22.2  yamt #endif /* _LINUX32_IPC_H */
    100