11dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/*	$OpenBSD: _types.h,v 1.1 2006/01/06 18:53:05 millert Exp $	*/
21dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
31dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/*-
41dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Copyright (c) 1990, 1993
51dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *	The Regents of the University of California.  All rights reserved.
61dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *
71dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Redistribution and use in source and binary forms, with or without
81dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * modification, are permitted provided that the following conditions
91dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * are met:
101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 1. Redistributions of source code must retain the above copyright
111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *    notice, this list of conditions and the following disclaimer.
121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright
131dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *    notice, this list of conditions and the following disclaimer in the
141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *    documentation and/or other materials provided with the distribution.
151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 3. Neither the name of the University nor the names of its contributors
161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *    may be used to endorse or promote products derived from this software
171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *    without specific prior written permission.
181dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *
191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
231dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
251dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
271dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
281dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
291dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * SUCH DAMAGE.
301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *
311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *	@(#)types.h	8.3 (Berkeley) 1/5/94
321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project */
331dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifndef _SYS__TYPES_H_
351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define	_SYS__TYPES_H_
361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#undef  __KERNEL_STRICT_NAMES
381dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define __KERNEL_STRICT_NAMES  1
391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include <machine/_types.h>
411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	unsigned long	__cpuid_t;	/* CPU id */
431dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__int32_t	__dev_t;	/* device number */
441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__fixpt_t;	/* fixed point number */
451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__gid_t;	/* group id */
461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__id_t;		/* may contain pid, uid or gid */
471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef __uint32_t	__in_addr_t;	/* base type for internet address */
481dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef __uint16_t	__in_port_t;	/* IP port type */
491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__ino_t;	/* inode number */
501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	long		__key_t;	/* IPC key (for Sys V IPC) */
511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__mode_t;	/* permissions */
521dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__nlink_t;	/* link count */
531dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__int32_t	__pid_t;	/* process id */
541dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef __uint64_t	__rlim_t;	/* resource limit */
551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef __uint16_t	__sa_family_t;	/* sockaddr address family type */
561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__int32_t	__segsz_t;	/* segment size */
571dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef __uint32_t	__socklen_t;	/* length type for network syscalls */
581dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__int32_t	__swblk_t;	/* swap offset */
591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__uid_t;	/* user id */
601dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__uint32_t	__useconds_t;	/* microseconds */
611dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef	__int32_t	__suseconds_t;	/* microseconds (signed) */
621dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
631dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/*
641dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * mbstate_t is an opaque object to keep conversion state, during multibyte
651dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * stream conversions. The content must not be referenced by user programs.
661dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project */
671dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef union {
681dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project	char __mbstate8[128];
691dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project	__int64_t __mbstateL;			/* for alignment */
701dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project} __mbstate_t;
711dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
721dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/* BIONIC: if we're using non-cleaned up user-level kernel headers,
731dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project *         this will prevent many type declaration conflicts
741dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project */
751dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define  __KERNEL_STRICT_NAMES  1
761dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
771dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif /* !_SYS__TYPES_H_ */
78