134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project/*
234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * Copyright (c) 1991, 1992 Paul Kranenburg <pk@cs.few.eur.nl>
334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * Copyright (c) 1993 Branko Lankester <branko@hacktic.nl>
434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * Copyright (c) 1993, 1994, 1995, 1996 Rick Sladkey <jrs@world.std.com>
534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * Copyright (c) 1996-2001 Wichert Akkerman <wichert@cistron.nl>
634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * All rights reserved.
734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *
834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * Redistribution and use in source and binary forms, with or without
934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * modification, are permitted provided that the following conditions
1034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * are met:
1134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * 1. Redistributions of source code must retain the above copyright
1234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *    notice, this list of conditions and the following disclaimer.
1334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright
1434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *    notice, this list of conditions and the following disclaimer in the
1534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *    documentation and/or other materials provided with the distribution.
1634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * 3. The name of the author may not be used to endorse or promote products
1734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *    derived from this software without specific prior written permission.
1834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *
1934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
2034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
2134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
2234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
2334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
2434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
2834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *
30f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown *	$Id$
3134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project */
3234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
3334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#include "defs.h"
3434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
3534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent ioctlent0[] = {
3634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project/*
3734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * `ioctlent.h' may be generated from `ioctlent.raw' by the auxiliary
3834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * program `ioctlsort', such that the list is sorted by the `code' field.
3934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * This has the side-effect of resolving the _IO.. macros into
4034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * plain integers, eliminating the need to include here everything
4134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * in "/usr/include" .
4234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project */
4334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#include "ioctlent.h"
4434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project};
4534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
4634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef LINUX
4734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#include <asm/ioctl.h>
4834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif
4934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
5034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst int nioctlents0 = sizeof ioctlent0 / sizeof ioctlent0[0];
5134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
5234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#if SUPPORTED_PERSONALITIES >= 2
5334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent ioctlent1[] = {
5434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#include "ioctlent1.h"
5534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project};
5634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
5734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst int nioctlents1 = sizeof ioctlent1 / sizeof ioctlent1[0];
5834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* SUPPORTED_PERSONALITIES >= 2 */
5934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
6034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#if SUPPORTED_PERSONALITIES >= 3
6134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent ioctlent2[] = {
6234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#include "ioctlent2.h"
6334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project};
6434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
6534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst int nioctlents2 = sizeof ioctlent2 / sizeof ioctlent2[0];
6634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* SUPPORTED_PERSONALITIES >= 3 */
6734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
6834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent *ioctlent;
6934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectint nioctlents;
7034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
7134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectstatic int
7234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectcompare(a, b)
7334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst void *a;
7434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst void *b;
7534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project{
7634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	unsigned long code1 = ((struct ioctlent *) a)->code;
7734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	unsigned long code2 = ((struct ioctlent *) b)->code;
7834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	return (code1 > code2) ? 1 : (code1 < code2) ? -1 : 0;
7934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project}
8034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
8134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent *
8234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectioctl_lookup(code)
8334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectlong code;
8434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project{
8534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	struct ioctlent *iop, ioent;
8634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
8734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	ioent.code = code;
8834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef LINUX
8934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	ioent.code &= (_IOC_NRMASK<<_IOC_NRSHIFT) | (_IOC_TYPEMASK<<_IOC_TYPESHIFT);
9034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif
9134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	iop = (struct ioctlent *) bsearch((char *) &ioent, (char *) ioctlent,
9234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project			nioctlents, sizeof(struct ioctlent), compare);
9334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	while (iop > ioctlent)
9434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		if ((--iop)->code != ioent.code) {
9534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project			iop++;
9634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project			break;
9734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		}
9834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	return iop;
9934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project}
10034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
10134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent *
10234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectioctl_next_match(iop)
10334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectconst struct ioctlent *iop;
10434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project{
10534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	long code;
10634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
10734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	code = (iop++)->code;
10834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	if (iop < ioctlent + nioctlents && iop->code == code)
10934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		return iop;
11034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	return NULL;
11134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project}
11234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
11334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectint
11434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectioctl_decode(tcp, code, arg)
11534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectstruct tcb *tcp;
11634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Projectlong code, arg;
11734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project{
11834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	switch ((code >> 8) & 0xff) {
11934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef LINUX
12034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#if defined(ALPHA) || defined(POWERPC)
12134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'f': case 't': case 'T':
12234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#else /* !ALPHA */
12334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 0x54:
12434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* !ALPHA */
12534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#else /* !LINUX */
12634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'f': case 't': case 'T':
12734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* !LINUX */
12834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		return term_ioctl(tcp, code, arg);
12934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef LINUX
13034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 0x89:
13134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#else /* !LINUX */
13234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'r': case 's': case 'i':
13334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifndef FREEBSD
13434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'p':
13534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif
13634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* !LINUX */
13734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		return sock_ioctl(tcp, code, arg);
13834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef USE_PROCFS
13934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifndef HAVE_MP_PROCFS
14034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifndef FREEBSD
14134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'q':
14234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#else
14334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'p':
14434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif
14534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		return proc_ioctl(tcp, code, arg);
14634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif
14734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* USE_PROCFS */
14834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef HAVE_SYS_STREAM_H
14934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'S':
15034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		return stream_ioctl(tcp, code, arg);
15134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif /* HAVE_SYS_STREAM_H */
15234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#ifdef LINUX
15334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	case 'p':
15434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		return rtc_ioctl(tcp, code, arg);
155f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown	case 0x03:
156f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown	case 0x12:
157f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown		return block_ioctl(tcp, code, arg);
158f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown#ifndef HAVE_ANDROID_OS
159f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown	case 0x22:
160f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown		return scsi_ioctl(tcp, code, arg);
161f76f96e20f766e6bb91593885b1e800f8bc14a52Jeff Brown#endif
16234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project#endif
16334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	default:
16434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project		break;
16534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	}
16634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project	return 0;
16734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project}
16834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project
16934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project/*
17034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * Registry of ioctl characters, culled from
17134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *	@(#)ioccom.h 1.7 89/06/16 SMI; from UCB ioctl.h 7.1 6/4/86
17234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *
17334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * char	file where defined		notes
17434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * ----	------------------		-----
17534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   F	sun/fbio.h
17634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   G	sun/gpio.h
17734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   H	vaxif/if_hy.h
17834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   M	sundev/mcpcmd.h			*overlap*
17934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   M	sys/modem.h			*overlap*
18034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   S	sys/stropts.h
18134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   T	sys/termio.h			-no overlap-
18234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   T	sys/termios.h			-no overlap-
18334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   V	sundev/mdreg.h
18434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   a	vaxuba/adreg.h
18534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   d	sun/dkio.h			-no overlap with sys/des.h-
18634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   d	sys/des.h			(possible overlap)
18734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   d	vax/dkio.h			(possible overlap)
18834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   d	vaxuba/rxreg.h			(possible overlap)
18934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   f	sys/filio.h
19034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   g	sunwindow/win_ioctl.h		-no overlap-
19134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   g	sunwindowdev/winioctl.c		!no manifest constant! -no overlap-
19234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   h	sundev/hrc_common.h
19334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   i	sys/sockio.h			*overlap*
19434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   i	vaxuba/ikreg.h			*overlap*
19534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   k	sundev/kbio.h
19634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   m	sundev/msio.h			(possible overlap)
19734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   m	sundev/msreg.h			(possible overlap)
19834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   m	sys/mtio.h			(possible overlap)
19934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   n	sun/ndio.h
20034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   p	net/nit_buf.h			(possible overlap)
20134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   p	net/nit_if.h			(possible overlap)
20234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   p	net/nit_pf.h			(possible overlap)
20334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   p	sundev/fpareg.h			(possible overlap)
20434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   p	sys/sockio.h			(possible overlap)
20534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   p	vaxuba/psreg.h			(possible overlap)
20634d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   q	sun/sqz.h
20734d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   r	sys/sockio.h
20834d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   s	sys/sockio.h
20934d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   t	sys/ttold.h			(possible overlap)
21034d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   t	sys/ttycom.h			(possible overlap)
21134d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   v	sundev/vuid_event.h		*overlap*
21234d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *   v	sys/vcmd.h			*overlap*
21334d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project *
21434d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project * End of Registry
21534d6eabc451f16d5f168fc1595ee604f21bccc51The Android Open Source Project */
216