summaryrefslogtreecommitdiffstats
path: root/cpukit/libnetworking/sys
diff options
context:
space:
mode:
authorVijay Kumar Banerjee <vijay@rtems.org>2021-02-24 19:06:38 -0700
committerVijay Kumar Banerjee <vijay@rtems.org>2021-04-07 16:15:38 -0600
commit2a13ad389af61429a184e1cfac53c69eb673ad76 (patch)
tree035aca3f29ec996074a55d22b028f29c1d0cc4ea /cpukit/libnetworking/sys
parentcpukit: Move ftpfs from libnetworking to libfs (diff)
downloadrtems-2a13ad389af61429a184e1cfac53c69eb673ad76.tar.bz2
cpukit: Remove libnetworking
Update #3850
Diffstat (limited to 'cpukit/libnetworking/sys')
-rw-r--r--cpukit/libnetworking/sys/callout.h53
-rw-r--r--cpukit/libnetworking/sys/conf.h57
-rw-r--r--cpukit/libnetworking/sys/domain.h70
-rw-r--r--cpukit/libnetworking/sys/kernel.h188
-rw-r--r--cpukit/libnetworking/sys/libkern.h93
-rw-r--r--cpukit/libnetworking/sys/linker_set.h109
-rw-r--r--cpukit/libnetworking/sys/malloc.h354
-rw-r--r--cpukit/libnetworking/sys/mbuf.h438
-rw-r--r--cpukit/libnetworking/sys/mount.h120
-rw-r--r--cpukit/libnetworking/sys/proc.h6
-rw-r--r--cpukit/libnetworking/sys/protosw.h300
-rw-r--r--cpukit/libnetworking/sys/reboot.h105
-rw-r--r--cpukit/libnetworking/sys/resourcevar.h1
-rw-r--r--cpukit/libnetworking/sys/selinfo.h55
-rw-r--r--cpukit/libnetworking/sys/signalvar.h176
-rw-r--r--cpukit/libnetworking/sys/socketvar.h271
-rw-r--r--cpukit/libnetworking/sys/sysctl.h642
-rw-r--r--cpukit/libnetworking/sys/systm.h108
-rw-r--r--cpukit/libnetworking/sys/ucred.h60
19 files changed, 0 insertions, 3206 deletions
diff --git a/cpukit/libnetworking/sys/callout.h b/cpukit/libnetworking/sys/callout.h
deleted file mode 100644
index 150609eef6..0000000000
--- a/cpukit/libnetworking/sys/callout.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- * (c) UNIX System Laboratories, Inc.
- * All or some portions of this file are derived from material licensed
- * to the University of California by American Telephone and Telegraph
- * Co. or Unix System Laboratories, Inc. and are reproduced herein with
- * the permission of UNIX System Laboratories, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)callout.h 8.2 (Berkeley) 1/21/94
- * $FreeBSD: src/sys/sys/callout.h,v 1.27 2004/04/20 15:49:31 cperciva Exp $
- */
-
-#ifndef _SYS_CALLOUT_H_
-#define _SYS_CALLOUT_H_
-
-struct callout {
- struct callout *c_next; /* next callout in queue */
- void *c_arg; /* function argument */
- void (*c_func)(void *); /* function to call */
- int c_time; /* ticks to the event */
-};
-
-#ifdef _KERNEL
-extern struct callout *callfree, *callout, calltodo;
-extern int ncallout;
-#endif
-
-#endif
diff --git a/cpukit/libnetworking/sys/conf.h b/cpukit/libnetworking/sys/conf.h
deleted file mode 100644
index 45abb1c4d6..0000000000
--- a/cpukit/libnetworking/sys/conf.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- * Copyright (c) 2000
- * Poul-Henning Kamp. All rights reserved.
- * (c) UNIX System Laboratories, Inc.
- * All or some portions of this file are derived from material licensed
- * to the University of California by American Telephone and Telegraph
- * Co. or Unix System Laboratories, Inc. and are reproduced herein with
- * the permission of UNIX System Laboratories, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)conf.h 8.5 (Berkeley) 1/9/95
- * $FreeBSD: src/sys/sys/conf.h,v 1.231 2007/02/02 22:27:45 bms Exp $
- */
-
-
-#ifndef _SYS_CONF_H_
-#define _SYS_CONF_H_
-
-#ifdef _KERNEL
-
-/*
- * Definitions of device driver entry switches
- */
-
-struct buf;
-struct proc;
-struct tty;
-struct uio;
-struct vnode;
-#endif /* _KERNEL */
-
-#endif /* !_SYS_CONF_H_ */
diff --git a/cpukit/libnetworking/sys/domain.h b/cpukit/libnetworking/sys/domain.h
deleted file mode 100644
index 0112f574be..0000000000
--- a/cpukit/libnetworking/sys/domain.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)domain.h 8.1 (Berkeley) 6/2/93
- */
-
-#ifndef _SYS_DOMAIN_H_
-#define _SYS_DOMAIN_H_
-
-/*
- * Structure per communications domain.
- */
-
-/*
- * Forward structure declarations for function prototypes [sic].
- */
-struct mbuf;
-
-struct domain {
- int dom_family; /* AF_xxx */
- char *dom_name;
- void (*dom_init) /* initialize domain data structures */
- (void);
- int (*dom_externalize) /* externalize access rights */
- (struct mbuf *);
- void (*dom_dispose) /* dispose of internalized rights */
- (struct mbuf *);
- struct protosw *dom_protosw, *dom_protoswNPROTOSW;
- struct domain *dom_next;
- int (*dom_rtattach) /* initialize routing table */
- (void **, int);
- int dom_rtoffset; /* an arg to rtattach, in bits */
- int dom_maxrtkey; /* for routing layer */
-};
-
-#ifdef _KERNEL
-extern struct domain *domains;
-extern struct domain localdomain;
-
-#define DOMAIN_SET(name) \
- DATA_SET(domain_set, name ## domain);
-
-#endif
-
-#endif
diff --git a/cpukit/libnetworking/sys/kernel.h b/cpukit/libnetworking/sys/kernel.h
deleted file mode 100644
index 045bf19baf..0000000000
--- a/cpukit/libnetworking/sys/kernel.h
+++ /dev/null
@@ -1,188 +0,0 @@
-/*-
- * Copyright (c) 1995 Terrence R. Lambert
- * All rights reserved.
- *
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- * (c) UNIX System Laboratories, Inc.
- * All or some portions of this file are derived from material licensed
- * to the University of California by American Telephone and Telegraph
- * Co. or Unix System Laboratories, Inc. and are reproduced herein with
- * the permission of UNIX System Laboratories, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)kernel.h 8.3 (Berkeley) 1/21/94
- */
-
-#ifndef _SYS_KERNEL_H_
-#define _SYS_KERNEL_H_
-
-#include <sys/linker_set.h>
-
-#ifdef _KERNEL
-
-/* Global variables for the kernel. */
-
-/* 1.1 */
-extern long hostid;
-extern char hostname[MAXHOSTNAMELEN];
-extern char domainname[MAXHOSTNAMELEN];
-extern char kernelname[MAXPATHLEN];
-
-/* 1.2 */
-extern volatile struct timeval mono_time;
-extern struct timeval boottime;
-extern struct timeval runtime;
-/* extern volatile struct timeval time; */
-extern struct timezone tz; /* XXX */
-
-extern int tick; /* usec per tick (1000000 / hz) */
-extern int hz; /* system clock's frequency */
-extern int psratio; /* ratio: prof / stat */
-extern int stathz; /* statistics clock's frequency */
-extern int profhz; /* profiling clock's frequency */
-extern int ticks;
-
-#endif /* _KERNEL */
-
-/*
- * Enumerated types for known system startup interfaces.
- *
- * Startup occurs in ascending numeric order; the list entries are
- * sorted prior to attempting startup to guarantee order. Items
- * of the same level are arbitrated for order based on the 'order'
- * element.
- *
- * These numbers are arbitrary and are chosen ONLY for ordering; the
- * enumeration values are explicit rather than implicit to provide
- * for binary compatibility with inserted elements.
- *
- * The SI_SUB_RUN_SCHEDULER value must have the highest lexical value.
- *
- * The SI_SUB_CONSOLE and SI_SUB_SWAP values represent values used by
- * the BSD 4.4Lite but not by FreeBSD; they are maintained in dependent
- * order to support porting.
- *
- * The SI_SUB_PROTO_BEGIN and SI_SUB_PROTO_END bracket a range of
- * initializations to take place at splimp(). This is a historical
- * wart that should be removed -- probably running everything at
- * splimp() until the first init that doesn't want it is the correct
- * fix. They are currently present to ensure historical behavior.
- */
-enum sysinit_sub_id {
- SI_SUB_DUMMY = 0x00000000, /* not executed; for linker*/
- SI_SUB_CONSOLE = 0x08000000, /* console*/
- SI_SUB_COPYRIGHT = 0x08000001, /* first use of console*/
- SI_SUB_VM = 0x10000000, /* virtual memory system init*/
- SI_SUB_KMEM = 0x18000000, /* kernel memory*/
- SI_SUB_CPU = 0x20000000, /* CPU resource(s)*/
- SI_SUB_DEVFS = 0x22000000, /* get DEVFS ready */
- SI_SUB_DRIVERS = 0x23000000, /* Let Drivers initialize */
- SI_SUB_CONFIGURE = 0x24000000, /* Configure devices */
- SI_SUB_INTRINSIC = 0x28000000, /* proc 0*/
- SI_SUB_RUN_QUEUE = 0x30000000, /* the run queue*/
- SI_SUB_VM_CONF = 0x38000000, /* config VM, set limits*/
- SI_SUB_VFS = 0x40000000, /* virtual file system*/
- SI_SUB_CLOCKS = 0x48000000, /* real time and stat clocks*/
- SI_SUB_MBUF = 0x50000000, /* mbufs*/
- SI_SUB_CLIST = 0x58000000, /* clists*/
- SI_SUB_SYSV_SHM = 0x64000000, /* System V shared memory*/
- SI_SUB_SYSV_SEM = 0x68000000, /* System V semaphores*/
- SI_SUB_SYSV_MSG = 0x6C000000, /* System V message queues*/
- SI_SUB_PSEUDO = 0x70000000, /* pseudo devices*/
- SI_SUB_PROTO_BEGIN = 0x80000000, /* XXX: set splimp (kludge)*/
- SI_SUB_PROTO_IF = 0x84000000, /* interfaces*/
- SI_SUB_PROTO_DOMAIN = 0x88000000, /* domains (address families?)*/
- SI_SUB_PROTO_END = 0x8fffffff, /* XXX: set splx (kludge)*/
- SI_SUB_KPROF = 0x90000000, /* kernel profiling*/
- SI_SUB_KICK_SCHEDULER = 0xa0000000, /* start the timeout events*/
- SI_SUB_ROOT = 0xb0000000, /* root mount*/
- SI_SUB_ROOT_FDTAB = 0xb8000000, /* root vnode in fd table...*/
- SI_SUB_SWAP = 0xc0000000, /* swap*/
- SI_SUB_INTRINSIC_POST = 0xd0000000, /* proc 0 cleanup*/
- SI_SUB_KTHREAD_INIT = 0xe0000000, /* init process*/
- SI_SUB_KTHREAD_PAGE = 0xe4000000, /* pageout daemon*/
- SI_SUB_KTHREAD_VM = 0xe8000000, /* vm daemon*/
- SI_SUB_KTHREAD_UPDATE = 0xec000000, /* update daemon*/
- SI_SUB_RUN_SCHEDULER = 0xffffffff /* scheduler: no return*/
-};
-
-
-/*
- * Some enumerated orders; "ANY" sorts last.
- */
-enum sysinit_elem_order {
- SI_ORDER_FIRST = 0x00000000, /* first*/
- SI_ORDER_SECOND = 0x00000001, /* second*/
- SI_ORDER_THIRD = 0x00000002, /* third*/
- SI_ORDER_MIDDLE = 0x10000000, /* somewhere in the middle */
- SI_ORDER_ANY = 0xffffffff /* last*/
-};
-
-
-/*
- * A system initialization call instance
- *
- * The subsystem
- */
-struct sysinit {
- unsigned int subsystem; /* subsystem identifier*/
- unsigned int order; /* init order within subsystem*/
- void (*func)(void *); /* init function*/
- void *udata; /* multiplexer/argument */
-};
-
-
-/*
- * Default: no special processing
- */
-#define SYSINIT(uniquifier, subsystem, order, func, ident)
-
-/*
- * Call 'fork()' before calling '(*func)(ident)';
- * for making a kernel 'thread' (or builtin process.)
- */
-#define SYSINIT_KT(uniquifier, subsystem, order, func, ident)
-
-
-/*
- * A kernel process descriptor; used to start "internal" daemons
- *
- * Note: global_procpp may be NULL for no global save area
- */
-struct kproc_desc {
- char *arg0; /* arg 0 (for 'ps' listing)*/
- void (*func)(void); /* "main" for kernel process*/
- struct proc **global_procpp; /* ptr to proc ptr save area*/
-};
-
-void kproc_start(void *udata);
-
-#endif /* !_SYS_KERNEL_H_*/
diff --git a/cpukit/libnetworking/sys/libkern.h b/cpukit/libnetworking/sys/libkern.h
deleted file mode 100644
index 7aa6e8b7c9..0000000000
--- a/cpukit/libnetworking/sys/libkern.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/*-
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)libkern.h 8.1 (Berkeley) 6/10/93
- * $FreeBSD: src/sys/sys/libkern.h,v 1.48 2005/02/10 20:39:39 glebius Exp $
- */
-
-
-#ifndef _SYS_LIBKERN_H_
-#define _SYS_LIBKERN_H_
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-
-/* BCD conversions. */
-extern u_char const bcd2bin_data[];
-extern u_char const bin2bcd_data[];
-extern char const hex2ascii_data[];
-
-#define bcd2bin(bcd) (bcd2bin_data[bcd])
-#define bin2bcd(bin) (bin2bcd_data[bin])
-#define hex2ascii(hex) (hex2ascii_data[hex])
-
-static __inline int imax(int a, int b) { return (a > b ? a : b); }
-static __inline int imin(int a, int b) { return (a < b ? a : b); }
-static __inline long lmax(long a, long b) { return (a > b ? a : b); }
-static __inline long lmin(long a, long b) { return (a < b ? a : b); }
-static __inline u_int max(u_int a, u_int b) { return (a > b ? a : b); }
-static __inline u_int min(u_int a, u_int b) { return (a < b ? a : b); }
-static __inline quad_t qmax(quad_t a, quad_t b) { return (a > b ? a : b); }
-static __inline quad_t qmin(quad_t a, quad_t b) { return (a < b ? a : b); }
-static __inline u_long ulmax(u_long a, u_long b) { return (a > b ? a : b); }
-static __inline u_long ulmin(u_long a, u_long b) { return (a < b ? a : b); }
-
-/* Prototypes for non-quad routines. */
-int bcmp(const void *, const void *, size_t);
-#ifndef HAVE_INLINE_FFS
-int ffs(int);
-#endif
-#ifndef HAVE_INLINE_FLS
-int fls(int);
-#endif
-int locc(int, char *, u_int);
-void qsort(void *base, size_t nmemb, size_t size,
- int (*compar)(const void *, const void *));
-#if defined(__rtems__)
-u_long rtems_bsdnet_random(void);
-#define random() rtems_bsdnet_random()
-#else
-u_long random(void);
-#endif
-char *index(const char *, int);
-char *rindex(const char *, int);
-int scanc(u_int, const u_char *, const u_char *, int);
-int skpc(int, int, char *);
-#if !defined(__rtems__)
-void srandom(u_long);
-#endif
-char *strcat(char * __restrict, const char * __restrict);
-int strcmp(const char *, const char *);
-char *strdup(const char *s);
-char *strcpy(char * __restrict, const char * __restrict);
-size_t strlen(const char *);
-int strncmp(const char *, const char *, size_t);
-char *strncpy(char * __restrict, const char * __restrict, size_t);
-char *strerror(int errnum);
-
-#endif /* !_SYS_LIBKERN_H_ */
diff --git a/cpukit/libnetworking/sys/linker_set.h b/cpukit/libnetworking/sys/linker_set.h
deleted file mode 100644
index c83d7c845a..0000000000
--- a/cpukit/libnetworking/sys/linker_set.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/*-
- * Copyright (c) 1999 John D. Polstra
- * Copyright (c) 1999,2001 Peter Wemm <peter@FreeBSD.org>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $FreeBSD: src/sys/sys/linker_set.h,v 1.13 2002/09/23 06:11:29 peter Exp $
- */
-
-#ifndef _SYS_LINKER_SET_H_
-#define _SYS_LINKER_SET_H_
-
-/* FIXME: These macros should not be here
- * BSD has them macros in sys/cdefs.h
- * older rtems had them in rtems/bsd/sys/cdefs.h
- * newlib has some of them in sys/cdefs.h
- */
-
-#if defined(__rtems__)
-#ifndef __used
-#define __used __attribute__((__used__))
-#endif
-#ifndef __CONCAT
-#define __CONCAT1(x,y) x ## y
-#define __CONCAT(x,y) __CONCAT1(x,y)
-#endif
-#endif
-
-/*
- * The following macros are used to declare global sets of objects, which
- * are collected by the linker into a `linker_set' as defined below.
- * For ELF, this is done by constructing a separate segment for each set.
- */
-
-/*
- * Private macros, not to be used outside this header file.
- */
-#ifdef __GNUC__
-#define __MAKE_SET(set, sym) \
- static void const * const __set_##set##_sym_##sym \
- __attribute((section("set_" #set))) __used = &sym
-#else /* !__GNUC__ */
-#ifndef lint
-#error "This file needs to be compiled by GCC or lint"
-#endif /* lint */
-#define __MAKE_SET(set, sym) extern void const * const (__set_##set##_sym_##sym)
-#endif /* __GNUC__ */
-
-/*
- * Public macros.
- */
-#define TEXT_SET(set, sym) __MAKE_SET(set, sym)
-#define DATA_SET(set, sym) __MAKE_SET(set, sym)
-#define BSS_SET(set, sym) __MAKE_SET(set, sym)
-#define ABS_SET(set, sym) __MAKE_SET(set, sym)
-#define SET_ENTRY(set, sym) __MAKE_SET(set, sym)
-
-/*
- * Initialize before referring to a give linker set
- */
-#define SET_DECLARE(set, ptype) \
- extern ptype *__CONCAT(__start_set_,set)[]; \
- extern ptype *__CONCAT(__stop_set_,set)[]
-
-#define SET_BEGIN(set) \
- (__CONCAT(__start_set_,set))
-#define SET_LIMIT(set) \
- (__CONCAT(__stop_set_,set))
-
-/*
- * Iterate over all the elements of a set.
- *
- * Sets always contain addresses of things, and "pvar" points to words
- * containing those addresses. Thus is must be declared as "type **pvar",
- * and the address of each set item is obtained inside the loop by "*pvar".
- */
-#define SET_FOREACH(pvar, set) \
- for (pvar = SET_BEGIN(set); pvar < SET_LIMIT(set); pvar++)
-
-#define SET_ITEM(set, i) \
- ((SET_BEGIN(set))[i])
-
-/*
- * Provide a count of the items in a set.
- */
-#define SET_COUNT(set) \
- (SET_LIMIT(set) - SET_BEGIN(set))
-
-#endif /* _SYS_LINKER_SET_H_ */
diff --git a/cpukit/libnetworking/sys/malloc.h b/cpukit/libnetworking/sys/malloc.h
deleted file mode 100644
index 2341053166..0000000000
--- a/cpukit/libnetworking/sys/malloc.h
+++ /dev/null
@@ -1,354 +0,0 @@
-/*
- * Copyright (c) 1987, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)malloc.h 8.5 (Berkeley) 5/3/95
- */
-
-#ifndef _SYS_MALLOC_H_
-#define _SYS_MALLOC_H_
-
-#include <rtems/rtems_bsdnet_internal.h> /* Ensure we get RTEMS malloc hooks */
-#define KMEMSTATS
-
-/*
- * flags to malloc
- */
-#define M_WAITOK 0x0000
-#define M_NOWAIT 0x0001
-#define M_KERNEL 0x0002
-
-/*
- * Types of memory to be allocated
- */
-#define M_FREE 0 /* should be on free list */
-#define M_MBUF 1 /* mbuf */
-#define M_DEVBUF 2 /* device driver memory */
-#define M_SOCKET 3 /* socket structure */
-#define M_PCB 4 /* protocol control block */
-#define M_RTABLE 5 /* routing tables */
-#define M_HTABLE 6 /* IMP host tables */
-#define M_FTABLE 7 /* fragment reassembly header */
-#define M_ZOMBIE 8 /* zombie proc status */
-#define M_IFADDR 9 /* interface address */
-#define M_SOOPTS 10 /* socket options */
-#define M_SONAME 11 /* socket name */
-#define M_NAMEI 12 /* namei path name buffer */
-#define M_GPROF 13 /* kernel profiling buffer */
-#define M_IOCTLOPS 14 /* ioctl data buffer */
-#define M_MAPMEM 15 /* mapped memory descriptors */
-#define M_CRED 16 /* credentials */
-#define M_PGRP 17 /* process group header */
-#define M_SESSION 18 /* session header */
-#define M_IOV 19 /* large iov's */
-#define M_MOUNT 20 /* vfs mount struct */
-#define M_FHANDLE 21 /* network file handle */
-#define M_NFSREQ 22 /* NFS request header */
-#define M_NFSMNT 23 /* NFS mount structure */
-#define M_NFSNODE 24 /* NFS vnode private part */
-#define M_VNODE 25 /* Dynamically allocated vnodes */
-#define M_CACHE 26 /* Dynamically allocated cache entries */
-#define M_DQUOT 27 /* UFS quota entries */
-#define M_UFSMNT 28 /* UFS mount structure */
-#define M_SHM 29 /* SVID compatible shared memory segments */
-#define M_VMMAP 30 /* VM map structures */
-#define M_VMMAPENT 31 /* VM map entry structures */
-#define M_VMOBJ 32 /* VM object structure */
-#define M_VMOBJHASH 33 /* VM object hash structure */
-#define M_VMPMAP 34 /* VM pmap */
-#define M_VMPVENT 35 /* VM phys-virt mapping entry */
-#define M_VMPAGER 36 /* XXX: VM pager struct */
-#define M_VMPGDATA 37 /* XXX: VM pager private data */
-#define M_FILE 38 /* Open file structure */
-#define M_FILEDESC 39 /* Open file descriptor table */
-#define M_LOCKF 40 /* Byte-range locking structures */
-#define M_PROC 41 /* Proc structures */
-#define M_SUBPROC 42 /* Proc sub-structures */
-#define M_SEGMENT 43 /* Segment for LFS */
-#define M_LFSNODE 44 /* LFS vnode private part */
-#define M_FFSNODE 45 /* FFS vnode private part */
-#define M_MFSNODE 46 /* MFS vnode private part */
-#define M_NQLEASE 47 /* Nqnfs lease */
-#define M_NQMHOST 48 /* Nqnfs host address table */
-#define M_NETADDR 49 /* Export host address structure */
-#define M_NFSSVC 50 /* Nfs server structure */
-#define M_NFSUID 51 /* Nfs uid mapping structure */
-#define M_NFSD 52 /* Nfs server daemon structure */
-#define M_IPMOPTS 53 /* internet multicast options */
-#define M_IPMADDR 54 /* internet multicast address */
-#define M_IFMADDR 55 /* link-level multicast address */
-#define M_MRTABLE 56 /* multicast routing tables */
-#define M_ISOFSMNT 57 /* ISOFS mount structure */
-#define M_ISOFSNODE 58 /* ISOFS vnode private part */
-#define M_NFSRVDESC 59 /* NFS server socket descriptor */
-#define M_NFSDIROFF 60 /* NFS directory offset data */
-#define M_NFSBIGFH 61 /* NFS version 3 file handle */
-#define M_MSDOSFSMNT 67 /* MSDOSFS mount structure */
-#define M_MSDOSFSNODE 68 /* MSDOSFS vnode private part */
-#define M_MSDOSFSFAT 69 /* MSDOSFS file allocation table */
-#define M_DEVFSMNT 70 /* DEVFS mount structure */
-#define M_DEVFSBACK 71 /* DEVFS Back node */
-#define M_DEVFSFRONT 72 /* DEVFS Front node */
-#define M_DEVFSNODE 73 /* DEVFS node */
-#define M_TEMP 74 /* misc temporary data buffers */
-#define M_TTYS 75 /* tty data structures */
-#define M_GZIP 76 /* Gzip trees */
-#define M_IPFW 77 /* IpFw/IpAcct chain's */
-#define M_DEVL 78 /* isa_device lists in userconfig() */
-#define M_PKTCLASS 79 /* structures used in packet classifier */
-#define M_SYSCTL 80 /* sysctl internal magic */
-#define M_SECA 81 /* security associations, key management */
-#define M_BIOBUF 82 /* BIO buffer */
-#define M_KTRACE 83 /* KTRACE */
-#define M_SELECT 84 /* select() buffer */
-#define M_CFS 85 /* Coda */
-#define M_LAST 86 /* Must be last type + 1 */
-
-#define INITKMEMNAMES { \
- "free", /* 0 M_FREE */ \
- "mbuf", /* 1 M_MBUF */ \
- "devbuf", /* 2 M_DEVBUF */ \
- "socket", /* 3 M_SOCKET */ \
- "pcb", /* 4 M_PCB */ \
- "routetbl", /* 5 M_RTABLE */ \
- "hosttbl", /* 6 M_HTABLE */ \
- "fragtbl", /* 7 M_FTABLE */ \
- "zombie", /* 8 M_ZOMBIE */ \
- "ifaddr", /* 9 M_IFADDR */ \
- "soopts", /* 10 M_SOOPTS */ \
- "soname", /* 11 M_SONAME */ \
- "namei", /* 12 M_NAMEI */ \
- "gprof", /* 13 M_GPROF */ \
- "ioctlops", /* 14 M_IOCTLOPS */ \
- "mapmem", /* 15 M_MAPMEM */ \
- "cred", /* 16 M_CRED */ \
- "pgrp", /* 17 M_PGRP */ \
- "session", /* 18 M_SESSION */ \
- "iov", /* 19 M_IOV */ \
- "mount", /* 20 M_MOUNT */ \
- "fhandle", /* 21 M_FHANDLE */ \
- "NFS req", /* 22 M_NFSREQ */ \
- "NFS mount", /* 23 M_NFSMNT */ \
- "NFS node", /* 24 M_NFSNODE */ \
- "vnodes", /* 25 M_VNODE */ \
- "namecache", /* 26 M_CACHE */ \
- "UFS quota", /* 27 M_DQUOT */ \
- "UFS mount", /* 28 M_UFSMNT */ \
- "shm", /* 29 M_SHM */ \
- "VM map", /* 30 M_VMMAP */ \
- "VM mapent", /* 31 M_VMMAPENT */ \
- "VM object", /* 32 M_VMOBJ */ \
- "VM objhash", /* 33 M_VMOBJHASH */ \
- "VM pmap", /* 34 M_VMPMAP */ \
- "VM pvmap", /* 35 M_VMPVENT */ \
- "VM pager", /* 36 M_VMPAGER */ \
- "VM pgdata", /* 37 M_VMPGDATA */ \
- "file", /* 38 M_FILE */ \
- "file desc", /* 39 M_FILEDESC */ \
- "lockf", /* 40 M_LOCKF */ \
- "proc", /* 41 M_PROC */ \
- "subproc", /* 42 M_SUBPROC */ \
- "LFS segment", /* 43 M_SEGMENT */ \
- "LFS node", /* 44 M_LFSNODE */ \
- "FFS node", /* 45 M_FFSNODE */ \
- "MFS node", /* 46 M_MFSNODE */ \
- "NQNFS Lease", /* 47 M_NQLEASE */ \
- "NQNFS Host", /* 48 M_NQMHOST */ \
- "Export Host", /* 49 M_NETADDR */ \
- "NFS srvsock", /* 50 M_NFSSVC */ \
- "NFS uid", /* 51 M_NFSUID */ \
- "NFS daemon", /* 52 M_NFSD */ \
- "ip_moptions", /* 53 M_IPMOPTS */ \
- "in_multi", /* 54 M_IPMADDR */ \
- "ether_multi", /* 55 M_IFMADDR */ \
- "mrt", /* 56 M_MRTABLE */ \
- "ISOFS mount", /* 57 M_ISOFSMNT */ \
- "ISOFS node", /* 58 M_ISOFSNODE */ \
- "NFSV3 srvdesc",/* 59 M_NFSRVDESC */ \
- "NFSV3 diroff", /* 60 M_NFSDIROFF */ \
- "NFSV3 bigfh", /* 61 M_NFSBIGFH */ \
- NULL, \
- NULL, NULL, NULL, NULL, \
- "MSDOSFS mount",/* 67 M_MSDOSFSMNT */ \
- "MSDOSFS node", /* 68 M_MSDOSFSNODE */ \
- "MSDOSFS FAT", /* 69 M_MSDOSFSFAR */ \
- "DEVFS mount", /* 70 M_DEVFSMNT */ \
- "DEVFS back", /* 71 M_DEVFSBACK */ \
- "DEVFS front", /* 72 M_DEVFSFRONT */ \
- "DEVFS node", /* 73 M_DEVFSNODE */ \
- "temp", /* 74 M_TEMP */ \
- "ttys", /* 75 M_TTYS */ \
- "Gzip trees", /* 76 M_GZIP */ \
- "IpFw/IpAcct", /* 77 M_IPFW */ \
- "isa_devlist", /* 78 M_DEVL */ \
- "PktClass", /* 79 M_PKTCLASS */ \
- "sysctl", /* 80 M_SYSCTL */ \
- "key mgmt", /* 81 M_SECA */ \
- "BIO buffer", /* 82 M_BIOBUF */ \
- "KTRACE", /* 83 M_KTRACE */ \
- "select", /* 84 M_SELECT */ \
- "Coda", /* 85 M_CFS */ \
-}
-
-struct kmemstats {
- long ks_inuse; /* # of packets of this type currently in use */
- long ks_calls; /* total packets of this type ever allocated */
- long ks_memuse; /* total memory held in bytes */
- u_short ks_limblocks; /* number of times blocked for hitting limit */
- u_short ks_mapblocks; /* number of times blocked for kernel map */
- long ks_maxused; /* maximum number ever used */
- long ks_limit; /* most that are allowed to exist */
- long ks_size; /* sizes of this thing that are allocated */
- long ks_spare;
-};
-
-/*
- * Array of descriptors that describe the contents of each page
- */
-struct kmemusage {
- short ku_indx; /* bucket index */
- union {
- u_short freecnt;/* for small allocations, free pieces in page */
- u_short pagecnt;/* for large allocations, pages alloced */
- } ku_un;
-};
-#define ku_freecnt ku_un.freecnt
-#define ku_pagecnt ku_un.pagecnt
-
-/*
- * Set of buckets for each size of memory block that is retained
- */
-struct kmembuckets {
- caddr_t kb_next; /* list of free blocks */
- caddr_t kb_last; /* last free block */
- long kb_calls; /* total calls to allocate this size */
- long kb_total; /* total number of blocks allocated */
- long kb_totalfree; /* # of free elements in this bucket */
- long kb_elmpercl; /* # of elements in this sized allocation */
- long kb_highwat; /* high water mark */
- long kb_couldfree; /* over high water mark and could free */
-};
-
-#ifdef _KERNEL
-#define MINALLOCSIZE (1 << MINBUCKET)
-#define BUCKETINDX(size) \
- ((size) <= (MINALLOCSIZE * 128) \
- ? (size) <= (MINALLOCSIZE * 8) \
- ? (size) <= (MINALLOCSIZE * 2) \
- ? (size) <= (MINALLOCSIZE * 1) \
- ? (MINBUCKET + 0) \
- : (MINBUCKET + 1) \
- : (size) <= (MINALLOCSIZE * 4) \
- ? (MINBUCKET + 2) \
- : (MINBUCKET + 3) \
- : (size) <= (MINALLOCSIZE* 32) \
- ? (size) <= (MINALLOCSIZE * 16) \
- ? (MINBUCKET + 4) \
- : (MINBUCKET + 5) \
- : (size) <= (MINALLOCSIZE * 64) \
- ? (MINBUCKET + 6) \
- : (MINBUCKET + 7) \
- : (size) <= (MINALLOCSIZE * 2048) \
- ? (size) <= (MINALLOCSIZE * 512) \
- ? (size) <= (MINALLOCSIZE * 256) \
- ? (MINBUCKET + 8) \
- : (MINBUCKET + 9) \
- : (size) <= (MINALLOCSIZE * 1024) \
- ? (MINBUCKET + 10) \
- : (MINBUCKET + 11) \
- : (size) <= (MINALLOCSIZE * 8192) \
- ? (size) <= (MINALLOCSIZE * 4096) \
- ? (MINBUCKET + 12) \
- : (MINBUCKET + 13) \
- : (size) <= (MINALLOCSIZE * 16384) \
- ? (MINBUCKET + 14) \
- : (MINBUCKET + 15))
-
-/*
- * Turn virtual addresses into kmem map indices
- */
-#define kmemxtob(alloc) (kmembase + (alloc) * PAGE_SIZE)
-#define btokmemx(addr) (((caddr_t)(addr) - kmembase) / PAGE_SIZE)
-#define btokup(addr) (&kmemusage[(caddr_t)(addr) - kmembase >> PAGE_SHIFT])
-
-/*
- * Macro versions for the usual cases of malloc/free
- */
-#if defined(KMEMSTATS) || defined(DIAGNOSTIC)
-#define MALLOC(space, cast, size, type, flags) \
- (space) = (cast)malloc((u_long)(size), type, flags)
-#define FREE(addr, type) free((addr), type)
-
-#else /* do not collect statistics */
-#define MALLOC(space, cast, size, type, flags) { \
- register struct kmembuckets *kbp = &bucket[BUCKETINDX(size)]; \
- long s = splimp(); \
- if (kbp->kb_next == NULL) { \
- (space) = (cast)malloc((u_long)(size), type, flags); \
- } else { \
- (space) = (cast)kbp->kb_next; \
- kbp->kb_next = *(caddr_t *)(space); \
- } \
- splx(s); \
-}
-
-#define FREE(addr, type) { \
- register struct kmembuckets *kbp; \
- register struct kmemusage *kup = btokup(addr); \
- long s = splimp(); \
- if (1 << kup->ku_indx > MAXALLOCSAVE) { \
- free((addr), type); \
- } else { \
- kbp = &bucket[kup->ku_indx]; \
- if (kbp->kb_next == NULL) \
- kbp->kb_next = (caddr_t)(addr); \
- else \
- *(caddr_t *)(kbp->kb_last) = (caddr_t)(addr); \
- *(caddr_t *)(addr) = NULL; \
- kbp->kb_last = (caddr_t)(addr); \
- } \
- splx(s); \
-}
-#endif /* do not collect statistics */
-
-extern struct kmemstats kmemstats[];
-extern struct kmemusage *kmemusage;
-extern char *kmembase;
-extern struct kmembuckets bucket[];
-
-void free (void *addr, int type);
-void *malloc (size_t size, int type, int flags);
-/* standard realloc but we cannot include stdlib.h */
-void *realloc(void * __r, size_t __size);
-
-#endif /* _KERNEL */
-
-#endif /* !_SYS_MALLOC_H_ */
diff --git a/cpukit/libnetworking/sys/mbuf.h b/cpukit/libnetworking/sys/mbuf.h
deleted file mode 100644
index c54b760b3e..0000000000
--- a/cpukit/libnetworking/sys/mbuf.h
+++ /dev/null
@@ -1,438 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1988, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)mbuf.h 8.5 (Berkeley) 2/19/95
- * $FreeBSD: src/sys/sys/mbuf.h,v 1.169 2005/03/17 19:34:57 jmg Exp $
- */
-
-
-#ifndef _SYS_MBUF_H_
-#define _SYS_MBUF_H_
-
-#ifndef M_WAITOK
-#include <sys/malloc.h>
-#endif
-
-/*
- * Mbufs are of a single size, _SYS_MBUF_LEGACY_MSIZE (machine/machparam.h), which
- * includes overhead. An mbuf may add a single "mbuf cluster" of size
- * MCLBYTES (also in machine/machparam.h), which has no additional overhead
- * and is used instead of the internal data area; this is done when
- * at least MINCLSIZE of data must be stored.
- */
-
-#define _SYS_MBUF_LEGACY_MSIZE 128
-#define MLEN (_SYS_MBUF_LEGACY_MSIZE - sizeof(struct m_hdr)) /* normal data len */
-#define MHLEN (MLEN - sizeof(struct pkthdr)) /* data len w/pkthdr */
-#define MINCLSIZE (MHLEN + MLEN) /* smallest amount to put in cluster */
-#define M_MAXCOMPRESS (MHLEN / 2) /* max amount to copy for compression */
-
-/*-
- * Macros for type conversion:
- * mtod(m, t) -- Convert mbuf pointer to data pointer of correct type.
- * dtom(x) -- Convert data pointer within mbuf to mbuf pointer (XXX).
- * mtocl(x) -- Convert pointer within cluster to cluster index #
- * cltom(x) -- Convert cluster # to ptr to beginning of cluster
- */
-#define mtod(m, t) ((t)((m)->m_data))
-#define dtom(x) ((struct mbuf *)((intptr_t)(x) & ~(_SYS_MBUF_LEGACY_MSIZE-1)))
-#define mtocl(x) (((uintptr_t)(x) - (uintptr_t)mbutl) >> MCLSHIFT)
-#define cltom(x) ((caddr_t)((u_long)mbutl + ((u_long)(x) << MCLSHIFT)))
-
-/*
- * Header present at the beginning of every mbuf.
- */
-struct m_hdr {
- struct mbuf *mh_next; /* next buffer in chain */
- struct mbuf *mh_nextpkt; /* next chain in queue/record */
- caddr_t mh_data; /* location of data */
- int mh_len; /* amount of data in this mbuf */
- int mh_flags; /* flags; see below */
- short mh_type; /* type of data in this mbuf */
-};
-
-/*
- * Record/packet header in first mbuf of chain; valid only if M_PKTHDR is set.
- */
-struct pkthdr {
- struct ifnet *rcvif; /* rcv interface */
- int32_t len; /* total packet length */
-};
-
-/*
- * Description of external storage mapped into mbuf; valid only if M_EXT is set.
- */
-struct m_ext {
- caddr_t ext_buf; /* start of buffer */
- void (*ext_free) /* free routine if not the usual */
- (caddr_t, u_int);
- u_int ext_size; /* size of buffer, for ext_free */
- void (*ext_ref) /* add a reference to the ext object */
- (caddr_t, u_int);
-};
-
-/*
- * The core of the mbuf object along with some shortcut defines for
- * practical purposes.
- */
-struct mbuf {
- struct m_hdr m_hdr;
- union {
- struct {
- struct pkthdr MH_pkthdr; /* M_PKTHDR set */
- union {
- struct m_ext MH_ext; /* M_EXT set */
- char MH_databuf[MHLEN];
- } MH_dat;
- } MH;
- char M_databuf[MLEN]; /* !M_PKTHDR, !M_EXT */
- } M_dat;
-};
-#define m_next m_hdr.mh_next
-#define m_len m_hdr.mh_len
-#define m_data m_hdr.mh_data
-#define m_type m_hdr.mh_type
-#define m_flags m_hdr.mh_flags
-#define m_nextpkt m_hdr.mh_nextpkt
-#define m_act m_nextpkt
-#define m_pkthdr M_dat.MH.MH_pkthdr
-#define m_ext M_dat.MH.MH_dat.MH_ext
-#define m_pktdat M_dat.MH.MH_dat.MH_databuf
-#define m_dat M_dat.M_databuf
-
-/*
- * mbuf flags.
- */
-#define M_EXT 0x0001 /* has associated external storage */
-#define M_PKTHDR 0x0002 /* start of record */
-#define M_EOR 0x0004 /* end of record */
-#define M_PROTO1 0x0008 /* protocol-specific */
-
-/*
- * mbuf pkthdr flags (also stored in m_flags).
- */
-#define M_BCAST 0x0100 /* send/received as link-level broadcast */
-#define M_MCAST 0x0200 /* send/received as link-level multicast */
-
-/*
- * Flags copied when copying m_pkthdr.
- */
-#define M_COPYFLAGS (M_PKTHDR|M_EOR|M_PROTO1|M_BCAST|M_MCAST)
-
-/*
- * mbuf types.
- */
-#define MT_FREE 0 /* should be on free list */
-#define MT_DATA 1 /* dynamic (data) allocation */
-#define MT_HEADER 2 /* packet header */
-#define MT_SOCKET 3 /* socket structure */
-#define MT_PCB 4 /* protocol control block */
-#define MT_RTABLE 5 /* routing tables */
-#define MT_HTABLE 6 /* IMP host tables */
-#define MT_ATABLE 7 /* address resolution tables */
-#define MT_SONAME 8 /* socket name */
-#define MT_SOOPTS 10 /* socket options */
-#define MT_FTABLE 11 /* fragment reassembly header */
-#define MT_RIGHTS 12 /* access rights */
-#define MT_IFADDR 13 /* interface address */
-#define MT_CONTROL 14 /* extra-data protocol message */
-#define MT_OOBDATA 15 /* expedited data */
-
-/*
- * General mbuf allocator statistics structure.
- */
-struct mbstat {
- u_long m_mbufs; /* mbufs obtained from page pool */
- u_long m_clusters; /* clusters obtained from page pool */
- u_long m_spare; /* spare field */
- u_long m_clfree; /* free clusters */
- u_long m_drops; /* times failed to find space */
- u_long m_wait; /* times waited for space */
- u_long m_drain; /* times drained protocols for space */
- u_short m_mtypes[256]; /* type specific mbuf allocations */
-};
-
-
-/* flags to m_get/MGET */
-#define M_DONTWAIT M_NOWAIT
-#define M_WAIT M_WAITOK
-
-/* Freelists:
- *
- * Normal mbuf clusters are normally treated as character arrays
- * after allocation, but use the first word of the buffer as a free list
- * pointer while on the free list.
- */
-union mcluster {
- union mcluster *mcl_next;
- char mcl_buf[MCLBYTES];
-};
-
-/*
- * mbuf utility macros:
- *
- * MBUFLOCK(code)
- * prevents a section of code from from being interrupted by network
- * drivers.
- */
-#define MBUFLOCK(code) \
- { int ms = splimp(); \
- { code } \
- splx(ms); \
- }
-
-/*
- * mbuf allocation/deallocation macros:
- *
- * MGET(struct mbuf *m, int how, int type)
- * allocates an mbuf and initializes it to contain internal data.
- *
- * MGETHDR(struct mbuf *m, int how, int type)
- * allocates an mbuf and initializes it to contain a packet header
- * and internal data.
- */
-#define MGET(m, how, type) { \
- int _ms = splimp(); \
- if (mmbfree == 0) \
- (void)m_mballoc(1, (how)); \
- if (((m) = mmbfree) != 0) { \
- mmbfree = (m)->m_next; \
- mbstat.m_mtypes[MT_FREE]--; \
- (m)->m_type = (type); \
- mbstat.m_mtypes[type]++; \
- (m)->m_next = (struct mbuf *)NULL; \
- (m)->m_nextpkt = (struct mbuf *)NULL; \
- (m)->m_data = (m)->m_dat; \
- (m)->m_flags = 0; \
- splx(_ms); \
- } else { \
- splx(_ms); \
- (m) = m_retry((how), (type)); \
- } \
-}
-
-#define MGETHDR(m, how, type) { \
- int _ms = splimp(); \
- if (mmbfree == 0) \
- (void)m_mballoc(1, (how)); \
- if (((m) = mmbfree) != 0) { \
- mmbfree = (m)->m_next; \
- mbstat.m_mtypes[MT_FREE]--; \
- (m)->m_type = (type); \
- mbstat.m_mtypes[type]++; \
- (m)->m_next = (struct mbuf *)NULL; \
- (m)->m_nextpkt = (struct mbuf *)NULL; \
- (m)->m_data = (m)->m_pktdat; \
- (m)->m_flags = M_PKTHDR; \
- splx(_ms); \
- } else { \
- splx(_ms); \
- (m) = m_retryhdr((how), (type)); \
- } \
-}
-
-/*
- * Mbuf cluster macros.
- * MCLALLOC(caddr_t p, int how) allocates an mbuf cluster.
- * MCLGET adds such clusters to a normal mbuf;
- * the flag M_EXT is set upon success.
- * MCLFREE releases a reference to a cluster allocated by MCLALLOC,
- * freeing the cluster if the reference count has reached 0.
- */
-#define MCLALLOC(p, how) \
- MBUFLOCK( \
- if (mclfree == 0) \
- (void)m_clalloc(1, (how)); \
- if (((p) = (caddr_t)mclfree) != 0) { \
- ++mclrefcnt[mtocl(p)]; \
- mbstat.m_clfree--; \
- mclfree = ((union mcluster *)(p))->mcl_next; \
- } \
- )
-
-#define MCLGET(m, how) \
- { MCLALLOC((m)->m_ext.ext_buf, (how)); \
- if ((m)->m_ext.ext_buf != NULL) { \
- (m)->m_data = (m)->m_ext.ext_buf; \
- (m)->m_flags |= M_EXT; \
- (m)->m_ext.ext_free = NULL; \
- (m)->m_ext.ext_ref = NULL; \
- (m)->m_ext.ext_size = MCLBYTES; \
- } \
- }
-
-#define MCLFREE(p) \
- MBUFLOCK ( \
- if (--mclrefcnt[mtocl(p)] == 0) { \
- ((union mcluster *)(p))->mcl_next = mclfree; \
- mclfree = (union mcluster *)(p); \
- mbstat.m_clfree++; \
- } \
- )
-
-/*
- * MFREE(struct mbuf *m, struct mbuf *n)
- * Free a single mbuf and associated external storage.
- * Place the successor, if any, in n.
- */
-#define MFREE(m, n) \
- MBUFLOCK( \
- mbstat.m_mtypes[(m)->m_type]--; \
- if ((m)->m_flags & M_EXT) { \
- if ((m)->m_ext.ext_free) \
- (*((m)->m_ext.ext_free))((m)->m_ext.ext_buf, \
- (m)->m_ext.ext_size); \
- else { \
- char *p = (m)->m_ext.ext_buf; \
- if (--mclrefcnt[mtocl(p)] == 0) { \
- ((union mcluster *)(p))->mcl_next = mclfree; \
- mclfree = (union mcluster *)(p); \
- mbstat.m_clfree++; \
- } \
- } \
- } \
- (n) = (m)->m_next; \
- (m)->m_type = MT_FREE; \
- mbstat.m_mtypes[MT_FREE]++; \
- (m)->m_next = mmbfree; \
- mmbfree = (m); \
- )
-
-/*
- * Copy mbuf pkthdr from from to to.
- * from must have M_PKTHDR set, and to must be empty.
- */
-#define M_COPY_PKTHDR(to, from) { \
- (to)->m_pkthdr = (from)->m_pkthdr; \
- (to)->m_flags = (from)->m_flags & M_COPYFLAGS; \
- (to)->m_data = (to)->m_pktdat; \
-}
-
-/*
- * Set the m_data pointer of a newly-allocated mbuf (m_get/MGET) to place
- * an object of the specified size at the end of the mbuf, longword aligned.
- */
-#define M_ALIGN(m, len) do { \
- (m)->m_data += (MLEN - (len)) & ~(sizeof(long) - 1); \
-} while (0)
-
-/*
- * As above, for mbufs allocated with m_gethdr/MGETHDR
- * or initialized by M_COPY_PKTHDR.
- */
-#define MH_ALIGN(m, len) do { \
- (m)->m_data += (MHLEN - (len)) & ~(sizeof(long) - 1); \
-} while (0)
-
-/*
- * Compute the amount of space available
- * before the current start of data in an mbuf.
- */
-#define M_LEADINGSPACE(m) \
- ((m)->m_flags & M_EXT ? /* (m)->m_data - (m)->m_ext.ext_buf */ 0 : \
- (m)->m_flags & M_PKTHDR ? (m)->m_data - (m)->m_pktdat : \
- (m)->m_data - (m)->m_dat)
-
-/*
- * Compute the amount of space available
- * after the end of data in an mbuf.
- */
-#define M_TRAILINGSPACE(m) \
- ((m)->m_flags & M_EXT ? (m)->m_ext.ext_buf + (m)->m_ext.ext_size - \
- ((m)->m_data + (m)->m_len) : \
- &(m)->m_dat[MLEN] - ((m)->m_data + (m)->m_len))
-
-/*
- * Arrange to prepend space of size plen to mbuf m.
- * If a new mbuf must be allocated, how specifies whether to wait.
- * If how is M_DONTWAIT and allocation fails, the original mbuf chain
- * is freed and m is set to NULL.
- */
-#define M_PREPEND(m, plen, how) { \
- if (M_LEADINGSPACE(m) >= (plen)) { \
- (m)->m_data -= (plen); \
- (m)->m_len += (plen); \
- } else \
- (m) = m_prepend((m), (plen), (how)); \
- if ((m) && (m)->m_flags & M_PKTHDR) \
- (m)->m_pkthdr.len += (plen); \
-}
-
-/*
- * Change mbuf to new type.
- * This is a relatively expensive operation and should be avoided.
- */
-#define MCHTYPE(m, t) { \
- MBUFLOCK(mbstat.m_mtypes[(m)->m_type]--; mbstat.m_mtypes[t]++;) \
- (m)->m_type = t;\
-}
-
-/* Length to m_copy to copy all. */
-#define M_COPYALL (uint32_t)1000000000L
-
-/* Compatibility with 4.3. */
-#define m_copy(m, o, l) m_copym((m), (o), (l), M_DONTWAIT)
-
-#ifdef _KERNEL
-extern struct mbuf *mbutl; /* virtual address of mclusters */
-extern char *mclrefcnt; /* cluster reference counts */
-extern struct mbstat mbstat;
-extern uint32_t nmbclusters;
-extern uint32_t nmbufs;
-extern struct mbuf *mmbfree;
-extern union mcluster *mclfree;
-extern int max_linkhdr; /* largest link-level header */
-extern int max_protohdr; /* largest protocol header */
-extern int max_hdr; /* largest link+protocol header */
-extern int max_datalen; /* MHLEN - max_hdr */
-
-struct mbuf *m_copym(struct mbuf *, int, uint32_t, int);
-struct mbuf *m_copypacket(struct mbuf *, int);
-struct mbuf *m_devget(char *, int, int, struct ifnet *,
- void (*copy)(char *, caddr_t, u_int));
-struct mbuf *m_free(struct mbuf *);
-struct mbuf *m_get(int, int);
-struct mbuf *m_getclr(int, int);
-struct mbuf *m_gethdr(int, int);
-struct mbuf *m_prepend(struct mbuf *,int,int);
-struct mbuf *m_pullup(struct mbuf *, int);
-struct mbuf *m_retry(int, int);
-struct mbuf *m_retryhdr(int, int);
-struct mbuf *m_split(struct mbuf *,int,int);
-void m_adj(struct mbuf *, int);
-void m_cat(struct mbuf *,struct mbuf *);
-int m_mballoc(int, int);
-int m_clalloc(int, int);
-int m_copyback(struct mbuf *, int, int, caddr_t);
-int m_copydata(const struct mbuf *, int, int, caddr_t);
-void m_freem(struct mbuf *);
-void m_reclaim(void);
-
-#endif /* _KERNEL */
-
-#endif /* !_SYS_MBUF_H_ */
diff --git a/cpukit/libnetworking/sys/mount.h b/cpukit/libnetworking/sys/mount.h
deleted file mode 100644
index c422c7f8c4..0000000000
--- a/cpukit/libnetworking/sys/mount.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Copyright (c) 1989, 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)mount.h 8.21 (Berkeley) 5/20/95
- * $FreeBSD: src/sys/sys/mount.h,v 1.198 2005/08/06 01:42:04 ssouhlal Exp $
- */
-
-
-#ifndef _SYS_MOUNT_H_
-#define _SYS_MOUNT_H_
-
-#ifndef _KERNEL
-#include <sys/ucred.h>
-#endif
-#include <sys/queue.h>
-
-typedef struct fsid { int32_t val[2]; } fsid_t; /* filesystem id type */
-
-/*
- * File identifier.
- * These are unique per filesystem on a single machine.
- */
-#define MAXFIDSZ 16
-
-struct fid {
- u_short fid_len; /* length of data in bytes */
- u_short fid_reserved; /* force longword alignment */
- char fid_data[MAXFIDSZ]; /* data (variable length) */
-};
-
-/*
- * filesystem statistics
- */
-#define MFSNAMELEN 16 /* length of type name including null */
-#define MNAMELEN 88 /* size of on/from name bufs */
-
-/*
- * User specifiable flags.
- */
-#define MNT_RDONLY 0x00000001 /* read only filesystem */
-#define MNT_SYNCHRONOUS 0x00000002 /* filesystem written synchronously */
-#define MNT_NOEXEC 0x00000004 /* can't exec from filesystem */
-#define MNT_NOSUID 0x00000008 /* don't honor setuid bits on fs */
-#define MNT_NODEV 0x00000010 /* don't interpret special files */
-#define MNT_UNION 0x00000020 /* union with underlying filesystem */
-#define MNT_ASYNC 0x00000040 /* filesystem written asynchronously */
-#define MNT_NOATIME 0x10000000 /* disable update of file access time */
-
-/*
- * NFS export related mount flags.
- */
-#define MNT_EXRDONLY 0x00000080 /* exported read only */
-#define MNT_EXPORTED 0x00000100 /* filesystem is exported */
-#define MNT_DEFEXPORTED 0x00000200 /* exported to the world */
-#define MNT_EXPORTANON 0x00000400 /* use anon uid mapping for everyone */
-#define MNT_EXKERB 0x00000800 /* exported with Kerberos uid mapping */
-#define MNT_EXPUBLIC 0x20000000 /* public export (WebNFS) */
-
-/*
- * Flags set by internal operations,
- * but visible to the user.
- */
-#define MNT_LOCAL 0x00001000 /* filesystem is stored locally */
-#define MNT_QUOTA 0x00002000 /* quotas are enabled on filesystem */
-#define MNT_ROOTFS 0x00004000 /* identifies the root filesystem */
-#define MNT_USER 0x00008000 /* mounted by a user */
-#define MNT_IGNORE 0x00800000 /* do not show entry in df */
-
-/*
- * External filesystem command modifier flags.
- * Unmount can use the MNT_FORCE flag.
- */
-#define MNT_UPDATE 0x00010000 /* not a real mount, just an update */
-#define MNT_DELEXPORT 0x00020000 /* delete export host lists */
-#define MNT_RELOAD 0x00040000 /* reload filesystem data */
-#define MNT_FORCE 0x00080000 /* force unmount or readonly change */
-
-/*
- * Generic file handle
- */
-struct fhandle {
- fsid_t fh_fsid; /* Filesystem id of mount point */
- struct fid fh_fid; /* Filesys specific id */
-};
-typedef struct fhandle fhandle_t;
-
-#ifdef _KERNEL
-
-#else /* !_KERNEL */
-
-#include <sys/cdefs.h>
-
-#endif /* _KERNEL */
-
-#endif /* !_SYS_MOUNT_H_ */
diff --git a/cpukit/libnetworking/sys/proc.h b/cpukit/libnetworking/sys/proc.h
deleted file mode 100644
index 8b8b7dc1b9..0000000000
--- a/cpukit/libnetworking/sys/proc.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/*
- * Dummy structure
- */
-struct proc {
- int this_should_never_be_referenced;
-};
diff --git a/cpukit/libnetworking/sys/protosw.h b/cpukit/libnetworking/sys/protosw.h
deleted file mode 100644
index e1119f9378..0000000000
--- a/cpukit/libnetworking/sys/protosw.h
+++ /dev/null
@@ -1,300 +0,0 @@
-/*-
- * Copyright (c) 1982, 1986, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)protosw.h 8.1 (Berkeley) 6/2/93
- * $FreeBSD: src/sys/sys/protosw.h,v 1.43 2004/04/07 04:19:49 imp Exp $
- */
-
-#ifndef _SYS_PROTOSW_H_
-#define _SYS_PROTOSW_H_
-
-/* Forward declare these structures referenced from prototypes below. */
-struct mbuf;
-struct sockaddr;
-struct socket;
-struct sockproto;
-struct stat;
-
-/*
- * Protocol switch table.
- *
- * Each protocol has a handle initializing one of these structures,
- * which is used for protocol-protocol and system-protocol communication.
- *
- * A protocol is called through the pr_init entry before any other.
- * Thereafter it is called every 200ms through the pr_fasttimo entry and
- * every 500ms through the pr_slowtimo for timer based actions.
- * The system will call the pr_drain entry if it is low on space and
- * this should throw away any non-critical data.
- *
- * Protocols pass data between themselves as chains of mbufs using
- * the pr_input and pr_output hooks. Pr_input passes data up (towards
- * UNIX) and pr_output passes it down (towards the imps); control
- * information passes up and down on pr_ctlinput and pr_ctloutput.
- * The protocol is responsible for the space occupied by any the
- * arguments to these entries and must dispose it.
- *
- * The userreq routine interfaces protocols to the system and is
- * described below.
- */
-struct protosw {
- short pr_type; /* socket type used for */
- struct domain *pr_domain; /* domain protocol a member of */
- short pr_protocol; /* protocol number */
- short pr_flags; /* see below */
-/* protocol-protocol hooks */
- void (*pr_input)(struct mbuf *, int len);
- /* input to protocol (from below) */
- int (*pr_output)(struct mbuf *m, struct socket *so);
- /* output to protocol (from above) */
- void (*pr_ctlinput)(int, struct sockaddr *, void *);
- /* control input (from below) */
- int (*pr_ctloutput)(int, struct socket *, int, int,
- struct mbuf **);
- /* control output (from above) */
-/* user-protocol hook */
- int (*pr_ousrreq)(struct socket *, int, struct mbuf *,
- struct mbuf *, struct mbuf *);
- /* user request: see list below */
-/* utility hooks */
- void (*pr_init)(void); /* initialization hook */
- void (*pr_fasttimo)(void);
- /* fast timeout (200ms) */
- void (*pr_slowtimo)(void);
- /* slow timeout (500ms) */
- void (*pr_drain)(void);
- /* flush any excess space possible */
- struct pr_usrreqs *pr_usrreqs; /* supersedes pr_usrreq() */
-};
-
-#define PR_SLOWHZ 2L /* 2 slow timeouts per second */
-#define PR_FASTHZ 5L /* 5 fast timeouts per second */
-
-/*
- * Values for pr_flags.
- * PR_ADDR requires PR_ATOMIC;
- * PR_ADDR and PR_CONNREQUIRED are mutually exclusive.
- * PR_IMPLOPCL means that the protocol allows sendto without prior connect,
- * and the protocol understands the MSG_EOF flag. The first property is
- * is only relevant if PR_CONNREQUIRED is set (otherwise sendto is allowed
- * anyhow).
- */
-#define PR_ATOMIC 0x01 /* exchange atomic messages only */
-#define PR_ADDR 0x02 /* addresses given with messages */
-#define PR_CONNREQUIRED 0x04 /* connection required by protocol */
-#define PR_WANTRCVD 0x08 /* want PRU_RCVD calls */
-#define PR_RIGHTS 0x10 /* passes capabilities */
-#define PR_IMPLOPCL 0x20 /* implied open/close */
-#define PR_LASTHDR 0x40 /* enforce ipsec policy; last header */
-
-/*
- * The arguments to usrreq are:
- * (*protosw[].pr_usrreq)(up, req, m, nam, opt);
- * where up is a (struct socket *), req is one of these requests,
- * m is an optional mbuf chain containing a message,
- * nam is an optional mbuf chain containing an address,
- * and opt is a pointer to a socketopt structure or nil.
- * The protocol is responsible for disposal of the mbuf chain m,
- * the caller is responsible for any space held by nam and opt.
- * A non-zero return from usrreq gives an
- * UNIX error number which should be passed to higher level software.
- */
-#define PRU_ATTACH 0 /* attach protocol to up */
-#define PRU_DETACH 1 /* detach protocol from up */
-#define PRU_BIND 2 /* bind socket to address */
-#define PRU_LISTEN 3 /* listen for connection */
-#define PRU_CONNECT 4 /* establish connection to peer */
-#define PRU_ACCEPT 5 /* accept connection from peer */
-#define PRU_DISCONNECT 6 /* disconnect from peer */
-#define PRU_SHUTDOWN 7 /* won't send any more data */
-#define PRU_RCVD 8 /* have taken data; more room now */
-#define PRU_SEND 9 /* send this data */
-#define PRU_ABORT 10 /* abort (fast DISCONNECT, DETATCH) */
-#define PRU_CONTROL 11 /* control operations on protocol */
-#define PRU_SENSE 12 /* return status into m */
-#define PRU_RCVOOB 13 /* retrieve out of band data */
-#define PRU_SENDOOB 14 /* send out of band data */
-#define PRU_SOCKADDR 15 /* fetch socket's address */
-#define PRU_PEERADDR 16 /* fetch peer's address */
-#define PRU_CONNECT2 17 /* connect two sockets */
-/* begin for protocols internal use */
-#define PRU_FASTTIMO 18 /* 200ms timeout */
-#define PRU_SLOWTIMO 19 /* 500ms timeout */
-#define PRU_PROTORCV 20 /* receive from below */
-#define PRU_PROTOSEND 21 /* send to below */
-/* end for protocol's internal use */
-#define PRU_SEND_EOF 22 /* send and close */
-#define PRU_NREQ 22
-
-#ifdef PRUREQUESTS
-const char *prurequests[] = {
- "ATTACH", "DETACH", "BIND", "LISTEN",
- "CONNECT", "ACCEPT", "DISCONNECT", "SHUTDOWN",
- "RCVD", "SEND", "ABORT", "CONTROL",
- "SENSE", "RCVOOB", "SENDOOB", "SOCKADDR",
- "PEERADDR", "CONNECT2", "FASTTIMO", "SLOWTIMO",
- "PROTORCV", "PROTOSEND",
- "SEND_EOF",
-};
-#endif
-
-#ifdef _KERNEL /* users shouldn't see this decl */
-struct stat;
-struct ifnet;
-
-/*
- * If the ordering here looks odd, that's because it's alphabetical.
- */
-struct pr_usrreqs {
- int (*pru_abort)(struct socket *so);
- int (*pru_accept)(struct socket *so, struct mbuf *nam);
- int (*pru_attach)(struct socket *so, intptr_t proto);
- int (*pru_bind)(struct socket *so, struct mbuf *nam);
- int (*pru_connect)(struct socket *so, struct mbuf *nam);
- int (*pru_connect2)(struct socket *so1, struct socket *so2);
- int (*pru_control)(struct socket *so, intptr_t cmd, caddr_t data,
- struct ifnet *ifp);
- int (*pru_detach)(struct socket *so);
- int (*pru_disconnect)(struct socket *so);
- int (*pru_listen)(struct socket *so);
- int (*pru_peeraddr)(struct socket *so, struct mbuf *nam);
- int (*pru_rcvd)(struct socket *so, intptr_t flags);
- int (*pru_rcvoob)(struct socket *so, struct mbuf *m,
- intptr_t flags);
- /*
- * The `m' parameter here is almost certainly going to become a
- * `struct uio' at some point in the future. Similar changes
- * will probably happen for the receive entry points.
- */
- int (*pru_send)(struct socket *so, int flags, struct mbuf *m,
- struct mbuf *addr, struct mbuf *control);
-#define PRUS_OOB 0x1
-#define PRUS_EOF 0x2
- int (*pru_sense)(struct socket *so, struct stat *sb);
- int (*pru_shutdown)(struct socket *so);
- int (*pru_sockaddr)(struct socket *so, struct mbuf *nam);
-};
-
-int pru_accept_notsupp(struct socket *so, struct mbuf *nam);
-int pru_connect2_notsupp(struct socket *so1, struct socket *so2);
-int pru_control_notsupp(struct socket *so, int cmd, caddr_t data,
- struct ifnet *ifp);
-int pru_listen_notsupp(struct socket *so);
-int pru_rcvd_notsupp(struct socket *so, int flags);
-int pru_rcvoob_notsupp(struct socket *so, struct mbuf *m, int flags);
-int pru_sense_null(struct socket *so, struct stat *sb);
-
-#define PRU_OLDSTYLE
-
-#ifdef PRU_OLDSTYLE
-/*
- * Protocols which don't yet implement pr_usrreqs can point it to this
- * structure, which will call the old pr_usrreq() entry point with the
- * appropriate arguments.
- */
-extern struct pr_usrreqs pru_oldstyle;
-#endif /* PRU_OLDSTYLE */
-
-#endif /* _KERNEL */
-
-/*
- * The arguments to the ctlinput routine are
- * (*protosw[].pr_ctlinput)(cmd, sa, arg);
- * where cmd is one of the commands below, sa is a pointer to a sockaddr,
- * and arg is a `void *' argument used within a protocol family.
- */
-#define PRC_IFDOWN 0 /* interface transition */
-#define PRC_ROUTEDEAD 1 /* select new route if possible ??? */
-#define PRC_IFUP 2 /* interface has come back up */
-#define PRC_QUENCH2 3 /* DEC congestion bit says slow down */
-#define PRC_QUENCH 4 /* some one said to slow down */
-#define PRC_MSGSIZE 5 /* message size forced drop */
-#define PRC_HOSTDEAD 6 /* host appears to be down */
-#define PRC_HOSTUNREACH 7 /* deprecated (use PRC_UNREACH_HOST) */
-#define PRC_UNREACH_NET 8 /* no route to network */
-#define PRC_UNREACH_HOST 9 /* no route to host */
-#define PRC_UNREACH_PROTOCOL 10 /* dst says bad protocol */
-#define PRC_UNREACH_PORT 11 /* bad port # */
-/* was PRC_UNREACH_NEEDFRAG 12 (use PRC_MSGSIZE) */
-#define PRC_UNREACH_SRCFAIL 13 /* source route failed */
-#define PRC_REDIRECT_NET 14 /* net routing redirect */
-#define PRC_REDIRECT_HOST 15 /* host routing redirect */
-#define PRC_REDIRECT_TOSNET 16 /* redirect for type of service & net */
-#define PRC_REDIRECT_TOSHOST 17 /* redirect for tos & host */
-#define PRC_TIMXCEED_INTRANS 18 /* packet lifetime expired in transit */
-#define PRC_TIMXCEED_REASS 19 /* lifetime expired on reass q */
-#define PRC_PARAMPROB 20 /* header incorrect */
-#define PRC_UNREACH_ADMIN_PROHIB 21 /* packet administrativly prohibited */
-
-#define PRC_NCMDS 22
-
-#define PRC_IS_REDIRECT(cmd) \
- ((cmd) >= PRC_REDIRECT_NET && (cmd) <= PRC_REDIRECT_TOSHOST)
-
-#ifdef PRCREQUESTS
-char *prcrequests[] = {
- "IFDOWN", "ROUTEDEAD", "IFUP", "DEC-BIT-QUENCH2",
- "QUENCH", "MSGSIZE", "HOSTDEAD", "#7",
- "NET-UNREACH", "HOST-UNREACH", "PROTO-UNREACH", "PORT-UNREACH",
- "#12", "SRCFAIL-UNREACH", "NET-REDIRECT", "HOST-REDIRECT",
- "TOSNET-REDIRECT", "TOSHOST-REDIRECT", "TX-INTRANS", "TX-REASS",
- "PARAMPROB", "ADMIN-UNREACH"
-};
-#endif
-
-/*
- * The arguments to ctloutput are:
- * (*protosw[].pr_ctloutput)(req, so, level, optname, optval);
- * req is one of the actions listed below, so is a (struct socket *),
- * level is an indication of which protocol layer the option is intended.
- * optname is a protocol dependent socket option request,
- * optval is a pointer to a mbuf-chain pointer, for value-return results.
- * The protocol is responsible for disposal of the mbuf chain *optval
- * if supplied,
- * the caller is responsible for any space held by *optval, when returned.
- * A non-zero return from usrreq gives an
- * UNIX error number which should be passed to higher level software.
- */
-#define PRCO_GETOPT 0
-#define PRCO_SETOPT 1
-
-#define PRCO_NCMDS 2
-
-#ifdef PRCOREQUESTS
-char *prcorequests[] = {
- "GETOPT", "SETOPT",
-};
-#endif
-
-#ifdef _KERNEL
-void pfctlinput(int, struct sockaddr *);
-struct protosw *pffindproto(int family, int protocol, int type);
-struct protosw *pffindtype(int family, int type);
-#endif
-
-#endif
diff --git a/cpukit/libnetworking/sys/reboot.h b/cpukit/libnetworking/sys/reboot.h
deleted file mode 100644
index 191f3a477a..0000000000
--- a/cpukit/libnetworking/sys/reboot.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1988, 1993, 1994
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)reboot.h 8.3 (Berkeley) 12/13/94
- */
-
-#ifndef _SYS_REBOOT_H_
-#define _SYS_REBOOT_H_
-
-/*
- * Arguments to reboot system call. These are passed to
- * the boot program and on to init.
- */
-#define RB_AUTOBOOT 0 /* flags for system auto-booting itself */
-
-#define RB_ASKNAME 0x001 /* ask for file name to reboot from */
-#define RB_SINGLE 0x002 /* reboot to single user only */
-#define RB_NOSYNC 0x004 /* dont sync before reboot */
-#define RB_HALT 0x008 /* don't reboot, just halt */
-#define RB_INITNAME 0x010 /* name given for /etc/init (unused) */
-#define RB_DFLTROOT 0x020 /* use compiled-in rootdev */
-#define RB_KDB 0x040 /* give control to kernel debugger */
-#define RB_RDONLY 0x080 /* mount root fs read-only */
-#define RB_DUMP 0x100 /* dump kernel memory before reboot */
-#define RB_MINIROOT 0x200 /* mini-root present in memory at boot time */
-#define RB_CONFIG 0x400 /* invoke user configuration routing */
-#define RB_VERBOSE 0x800 /* print all potentially useful info */
-#define RB_SERIAL 0x1000 /* user serial port as console */
-#define RB_CDROM 0x2000 /* use cdrom as root */
-#define RB_POWEROFF 0x4000 /* if you can, turn the power off */
-#define RB_GDB 0x8000 /* use GDB remote debugger instead of DDB */
-#define RB_MUTE 0x10000 /* Come up with the console muted */
-#define RB_SELFTEST 0x20000 /* don't boot to normal operation, do selftest */
-
-#define RB_BOOTINFO 0x80000000 /* have `struct bootinfo *' arg */
-
-/*
- * Constants for converting boot-style device number to type,
- * adaptor (uba, mba, etc), unit number and partition number.
- * Type (== major device number) is in the low byte
- * for backward compatibility. Except for that of the "magic
- * number", each mask applies to the shifted value.
- * Format:
- * (4) (4) (4) (4) (8) (8)
- * --------------------------------
- * |MA | AD| CT| UN| PART | TYPE |
- * --------------------------------
- */
-#define B_ADAPTORSHIFT 24
-#define B_ADAPTORMASK 0x0f
-#define B_ADAPTOR(val) (((val) >> B_ADAPTORSHIFT) & B_ADAPTORMASK)
-#define B_CONTROLLERSHIFT 20
-#define B_CONTROLLERMASK 0xf
-#define B_CONTROLLER(val) (((val)>>B_CONTROLLERSHIFT) & B_CONTROLLERMASK)
-#define B_SLICESHIFT 20
-#define B_SLICEMASK 0xff
-#define B_SLICE(val) (((val)>>B_SLICESHIFT) & B_SLICEMASK)
-#define B_UNITSHIFT 16
-#define B_UNITMASK 0xf
-#define B_UNIT(val) (((val) >> B_UNITSHIFT) & B_UNITMASK)
-#define B_PARTITIONSHIFT 8
-#define B_PARTITIONMASK 0xff
-#define B_PARTITION(val) (((val) >> B_PARTITIONSHIFT) & B_PARTITIONMASK)
-#define B_TYPESHIFT 0
-#define B_TYPEMASK 0xff
-#define B_TYPE(val) (((val) >> B_TYPESHIFT) & B_TYPEMASK)
-
-#define B_MAGICMASK 0xf0000000
-#define B_DEVMAGIC 0xa0000000
-
-#define MAKEBOOTDEV(type, adaptor, controller, unit, partition) \
- (((type) << B_TYPESHIFT) | ((adaptor) << B_ADAPTORSHIFT) | \
- ((controller) << B_CONTROLLERSHIFT) | ((unit) << B_UNITSHIFT) | \
- ((partition) << B_PARTITIONSHIFT) | B_DEVMAGIC)
-
-#endif
diff --git a/cpukit/libnetworking/sys/resourcevar.h b/cpukit/libnetworking/sys/resourcevar.h
deleted file mode 100644
index 87fc20463c..0000000000
--- a/cpukit/libnetworking/sys/resourcevar.h
+++ /dev/null
@@ -1 +0,0 @@
-/* intentionally empty file */
diff --git a/cpukit/libnetworking/sys/selinfo.h b/cpukit/libnetworking/sys/selinfo.h
deleted file mode 100644
index 68ec92a6a3..0000000000
--- a/cpukit/libnetworking/sys/selinfo.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*-
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)select.h 8.2 (Berkeley) 1/4/94
- */
-
-#ifndef _SYS_SELINFO_H_
-#define _SYS_SELINFO_H_
-
-#include <sys/types.h> /* pid_t */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Used to maintain information about processes that wish to be
- * notified when I/O becomes possible.
- */
-struct selinfo {
- pid_t si_pid; /* process to be notified */
- short si_flags; /* see below */
-};
-#define SI_COLL 0x0001 /* collision occurred */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* !_SYS_SELINFO_H_ */
diff --git a/cpukit/libnetworking/sys/signalvar.h b/cpukit/libnetworking/sys/signalvar.h
deleted file mode 100644
index c2311cf05a..0000000000
--- a/cpukit/libnetworking/sys/signalvar.h
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)signalvar.h 8.6 (Berkeley) 2/19/95
- * $FreeBSD: src/sys/sys/signalvar.h,v 1.91 2010/07/08 19:15:26 jhb Exp $
- */
-
-
-#ifndef _SYS_SIGNALVAR_H_
-#define _SYS_SIGNALVAR_H_
-
-/*
- * Kernel signal definitions and data structures,
- * not exported to user programs.
- */
-
-#if !defined(__rtems__)
-/*
- * Process signal actions and state, needed only within the process
- * (not necessarily resident).
- */
-struct sigacts {
- sig_t ps_sigact[NSIG]; /* disposition of signals */
- sigset_t ps_catchmask[NSIG]; /* signals to be blocked */
- sigset_t ps_sigonstack; /* signals to take on sigstack */
- sigset_t ps_sigintr; /* signals that interrupt syscalls */
- sigset_t ps_sigreset; /* signals that reset when caught */
- sigset_t ps_signodefer; /* signals not masked while handled */
- sigset_t ps_oldmask; /* saved mask from before sigpause */
- int ps_flags; /* signal flags, below */
- struct sigaltstack ps_sigstk; /* sp & on stack state variable */
- int ps_sig; /* for core dump/debugger XXX */
- u_long ps_code; /* for core dump/debugger XXX */
- sigset_t ps_usertramp; /* SunOS compat; libc sigtramp XXX */
-};
-#endif
-
-/* signal flags */
-#define SAS_OLDMASK 0x01 /* need to restore mask before pause */
-#define SAS_ALTSTACK 0x02 /* have alternate signal stack */
-
-/* additional signal action values, used only temporarily/internally */
-#define SIG_CATCH ((__sighandler_t *)2)
-#define SIG_HOLD ((__sighandler_t *)3)
-
-#if !defined(__rtems__)
-/*
- * get signal action for process and signal; currently only for current process
- */
-#define SIGACTION(p, sig) (p->p_sigacts->ps_sigact[(sig)])
-#endif
-
-/*
- * Determine signal that should be delivered to process p, the current
- * process, 0 if none. If there is a pending stop signal with default
- * action, the process stops in issignal().
- */
-#define CURSIG(p) \
- (((p)->p_siglist == 0 || \
- (((p)->p_flag & P_TRACED) == 0 && \
- ((p)->p_siglist & ~(p)->p_sigmask) == 0)) ? \
- 0 : issignal(p))
-
-/*
- * Clear a pending signal from a process.
- */
-#define CLRSIG(p, sig) { (p)->p_siglist &= ~sigmask(sig); }
-
-/*
- * Signal properties and actions.
- * The array below categorizes the signals and their default actions
- * according to the following properties:
- */
-#define SA_KILL 0x01 /* terminates process by default */
-#define SA_CORE 0x02 /* ditto and coredumps */
-#define SA_STOP 0x04 /* suspend process */
-#define SA_TTYSTOP 0x08 /* ditto, from tty */
-#define SA_IGNORE 0x10 /* ignore by default */
-#define SA_CONT 0x20 /* continue if suspended */
-#define SA_CANTMASK 0x40 /* non-maskable, catchable */
-
-#ifdef SIGPROP
-static int sigprop[NSIG + 1] = {
- 0, /* unused */
- SA_KILL, /* SIGHUP */
- SA_KILL, /* SIGINT */
- SA_KILL|SA_CORE, /* SIGQUIT */
- SA_KILL|SA_CORE, /* SIGILL */
- SA_KILL|SA_CORE, /* SIGTRAP */
- SA_KILL|SA_CORE, /* SIGABRT */
- SA_KILL|SA_CORE, /* SIGEMT */
- SA_KILL|SA_CORE, /* SIGFPE */
- SA_KILL, /* SIGKILL */
- SA_KILL|SA_CORE, /* SIGBUS */
- SA_KILL|SA_CORE, /* SIGSEGV */
- SA_KILL|SA_CORE, /* SIGSYS */
- SA_KILL, /* SIGPIPE */
- SA_KILL, /* SIGALRM */
- SA_KILL, /* SIGTERM */
- SA_IGNORE, /* SIGURG */
- SA_STOP, /* SIGSTOP */
- SA_STOP|SA_TTYSTOP, /* SIGTSTP */
- SA_IGNORE|SA_CONT, /* SIGCONT */
- SA_IGNORE, /* SIGCHLD */
- SA_STOP|SA_TTYSTOP, /* SIGTTIN */
- SA_STOP|SA_TTYSTOP, /* SIGTTOU */
- SA_IGNORE, /* SIGIO */
- SA_KILL, /* SIGXCPU */
- SA_KILL, /* SIGXFSZ */
- SA_KILL, /* SIGVTALRM */
- SA_KILL, /* SIGPROF */
- SA_IGNORE, /* SIGWINCH */
- SA_IGNORE, /* SIGINFO */
- SA_KILL, /* SIGUSR1 */
- SA_KILL, /* SIGUSR2 */
-};
-
-#define contsigmask (sigmask(SIGCONT))
-#define stopsigmask (sigmask(SIGSTOP) | sigmask(SIGTSTP) | \
- sigmask(SIGTTIN) | sigmask(SIGTTOU))
-
-#endif /* SIGPROP */
-
-#define sigcantmask (sigmask(SIGKILL) | sigmask(SIGSTOP))
-
-#ifdef _KERNEL
-/*
- * Machine-independent functions:
- */
-void execsigs(struct proc *p);
-void gsignal(int pgid, int sig);
-int issignal(struct proc *p);
-void killproc(struct proc *p, char *why);
-void pgsignal(struct pgrp *pgrp, int sig, int checkctty);
-void postsig(int sig);
-#ifndef __rtems__
-/* clashes with psignal(3) */
-void psignal(struct proc *p, int sig);
-#endif
-void setsigvec(struct proc *p, int signum, struct sigaction *sa);
-void sigexit(struct proc *p, int signum);
-void siginit(struct proc *p);
-void trapsignal(struct proc *p, int sig, u_long code);
-
-/*
- * Machine-dependent functions:
- */
-void sendsig(sig_t action, int sig, int returnmask, u_long code);
-#endif /* _KERNEL */
-
-#endif /* !_SYS_SIGNALVAR_H_ */
diff --git a/cpukit/libnetworking/sys/socketvar.h b/cpukit/libnetworking/sys/socketvar.h
deleted file mode 100644
index 2cdd5158ef..0000000000
--- a/cpukit/libnetworking/sys/socketvar.h
+++ /dev/null
@@ -1,271 +0,0 @@
-/*-
- * Copyright (c) 1982, 1986, 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)socketvar.h 8.3 (Berkeley) 2/19/95
- * $FreeBSD: src/sys/sys/socketvar.h,v 1.135 2004/10/18 22:19:43 rwatson Exp $
- */
-
-#ifndef _SYS_SOCKETVAR_H_
-#define _SYS_SOCKETVAR_H_
-
-#include <sys/queue.h> /* for TAILQ macros */
-#include <sys/selinfo.h> /* for struct selinfo */
-
-
-/*
- * Kernel structure per socket.
- * Contains send and receive buffer queues,
- * handle on protocol and pointer to protocol
- * private data and error information.
- */
-typedef u_quad_t so_gen_t;
-
-struct socket {
- short so_type; /* generic type, see socket.h */
- short so_options; /* from socket call, see socket.h */
- short so_linger; /* time to linger while closing */
- short so_state; /* internal state flags SS_*, below */
- void *so_pcb; /* protocol control block */
- struct protosw *so_proto; /* protocol handle */
-/*
- * Variables for connection queuing.
- * Socket where accepts occur is so_head in all subsidiary sockets.
- * If so_head is 0, socket is not related to an accept.
- * For head socket so_q0 queues partially completed connections,
- * while so_q is a queue of connections ready to be accepted.
- * If a connection is aborted and it has so_head set, then
- * it has to be pulled out of either so_q0 or so_q.
- * We allow connections to queue up based on current queue lengths
- * and limit on number of queued connections for this socket.
- */
- struct socket *so_head; /* back pointer to accept socket */
- TAILQ_HEAD(, socket) so_incomp; /* queue of partial unaccepted connections */
- TAILQ_HEAD(, socket) so_comp; /* queue of complete unaccepted connections */
- TAILQ_ENTRY(socket) so_list; /* list of unaccepted connections */
- short so_qlen; /* number of unaccepted connections */
- short so_incqlen; /* number of unaccepted incomplete
- connections */
- short so_qlimit; /* max number queued connections */
- short so_timeo; /* connection timeout */
- u_short so_error; /* error affecting connection */
- pid_t so_pgid; /* pgid for signals */
- u_long so_oobmark; /* chars to oob mark */
-/*
- * Variables for socket buffering.
- */
- struct sockbuf {
- u_int sb_cc; /* actual chars in buffer */
- u_int sb_hiwat; /* max actual char count */
- u_int sb_mbcnt; /* chars of mbufs used */
- u_int sb_mbmax; /* max chars of mbufs to use */
- int sb_lowat; /* low water mark */
- struct mbuf *sb_mb; /* the mbuf chain */
- struct selinfo sb_sel; /* process selecting read/write */
- short sb_flags; /* flags, see below */
- int sb_timeo; /* timeout for read/write */
- void (*sb_wakeup)(struct socket *, void *);
- void *sb_wakeuparg; /* arg for above */
- } so_rcv, so_snd;
-#define SB_MAX (256L*1024L) /* default for max chars in sockbuf */
-#define SB_LOCK 0x01 /* lock on data queue */
-#define SB_WANT 0x02 /* someone is waiting to lock */
-#define SB_WAIT 0x04 /* someone is waiting for data/space */
-#define SB_SEL 0x08 /* someone is selecting */
-#define SB_ASYNC 0x10 /* ASYNC I/O, need signals */
-#define SB_NOTIFY (SB_WAIT|SB_SEL|SB_ASYNC)
-#define SB_NOINTR 0x40 /* operations not interruptible */
-
- caddr_t so_tpcb; /* Wisc. protocol control block XXX */
- void (*so_upcall)(struct socket *, void *arg, int);
- void *so_upcallarg; /* Arg for above */
-};
-
-/*
- * Socket state bits.
- */
-#define SS_NOFDREF 0x0001 /* no file table ref any more */
-#define SS_ISCONNECTED 0x0002 /* socket connected to a peer */
-#define SS_ISCONNECTING 0x0004 /* in process of connecting to peer */
-#define SS_ISDISCONNECTING 0x0008 /* in process of disconnecting */
-#define SS_CANTSENDMORE 0x0010 /* can't send more data to peer */
-#define SS_CANTRCVMORE 0x0020 /* can't receive more data from peer */
-#define SS_RCVATMARK 0x0040 /* at mark on input */
-
-#define SS_PRIV 0x0080 /* privileged for broadcast, raw... */
-#define SS_NBIO 0x0100 /* non-blocking ops */
-#define SS_ASYNC 0x0200 /* async i/o notify */
-#define SS_ISCONFIRMING 0x0400 /* deciding to accept connection req */
-
-#define SS_INCOMP 0x0800 /* unaccepted, incomplete connection */
-#define SS_COMP 0x1000 /* unaccepted, complete connection */
-
-
-/*
- * Macros for sockets and socket buffering.
- */
-
-/*
- * How much space is there in a socket buffer (so->so_snd or so->so_rcv)?
- * This is problematical if the fields are unsigned, as the space might
- * still be negative (cc > hiwat or mbcnt > mbmax). Should detect
- * overflow and return 0. Should use "lmin" but it doesn't exist now.
- */
-#define sbspace(sb) \
- ((long) imin((int)((sb)->sb_hiwat - (sb)->sb_cc), \
- (int)((sb)->sb_mbmax - (sb)->sb_mbcnt)))
-
-/* do we have to send all at once on a socket? */
-#define sosendallatonce(so) \
- ((so)->so_proto->pr_flags & PR_ATOMIC)
-
-/* can we read something from so? */
-#define soreadable(so) \
- ((so)->so_rcv.sb_cc >= (so)->so_rcv.sb_lowat || \
- ((so)->so_state & SS_CANTRCVMORE) || \
- (so)->so_comp.tqh_first || (so)->so_error)
-
-/* can we write something to so? */
-#define sowriteable(so) \
- ((sbspace(&(so)->so_snd) >= (so)->so_snd.sb_lowat && \
- (((so)->so_state&SS_ISCONNECTED) || \
- ((so)->so_proto->pr_flags&PR_CONNREQUIRED)==0)) || \
- ((so)->so_state & SS_CANTSENDMORE) || \
- (so)->so_error)
-
-/* adjust counters in sb reflecting allocation of m */
-#define sballoc(sb, m) { \
- (sb)->sb_cc += (m)->m_len; \
- (sb)->sb_mbcnt += _SYS_MBUF_LEGACY_MSIZE; \
- if ((m)->m_flags & M_EXT) \
- (sb)->sb_mbcnt += (m)->m_ext.ext_size; \
-}
-
-/* adjust counters in sb reflecting freeing of m */
-#define sbfree(sb, m) { \
- (sb)->sb_cc -= (m)->m_len; \
- (sb)->sb_mbcnt -= _SYS_MBUF_LEGACY_MSIZE; \
- if ((m)->m_flags & M_EXT) \
- (sb)->sb_mbcnt -= (m)->m_ext.ext_size; \
-}
-
-/*
- * Set lock on sockbuf sb; sleep if lock is already held.
- * Unless SB_NOINTR is set on sockbuf, sleep is interruptible.
- * Returns error without lock if sleep is interrupted.
- */
-#define sblock(sb, wf) ((sb)->sb_flags & SB_LOCK ? \
- (((wf) == M_WAITOK) ? sb_lock(sb) : EWOULDBLOCK) : \
- ((sb)->sb_flags |= SB_LOCK), 0)
-
-/* release lock on sockbuf sb */
-#define sbunlock(sb) { \
- (sb)->sb_flags &= ~SB_LOCK; \
- if ((sb)->sb_flags & SB_WANT) { \
- (sb)->sb_flags &= ~SB_WANT; \
- wakeup((caddr_t)&(sb)->sb_flags); \
- } \
-}
-
-#define sorwakeup(so) { sowakeup((so), &(so)->so_rcv); \
- if ((so)->so_upcall) \
- (*((so)->so_upcall))((so), (so)->so_upcallarg, M_DONTWAIT); \
- }
-
-#define sowwakeup(so) sowakeup((so), &(so)->so_snd)
-
-#ifdef _KERNEL
-extern u_long sb_max;
-
-/* to catch callers missing new second argument to sonewconn: */
-#define sonewconn(head, connstatus) sonewconn1((head), (connstatus))
-
-struct filedesc;
-struct mbuf;
-struct sockaddr;
-struct stat;
-struct uio;
-
-/*
- * From uipc_socket and friends
- */
-int sockargs(struct mbuf **mp, caddr_t buf, int buflen, int type);
-void sbappend(struct sockbuf *sb, struct mbuf *m);
-int sbappendaddr(struct sockbuf *sb, struct sockaddr *asa,
- struct mbuf *m0, struct mbuf *control);
-int sbappendcontrol(struct sockbuf *sb, struct mbuf *m0,
- struct mbuf *control);
-void sbappendrecord(struct sockbuf *sb, struct mbuf *m0);
-void sbcheck(struct sockbuf *sb);
-void sbcompress(struct sockbuf *sb, struct mbuf *m, struct mbuf *n);
-struct mbuf *
- sbcreatecontrol(caddr_t p, int size, int type, int level);
-void sbdrop(struct sockbuf *sb, int len);
-void sbdroprecord(struct sockbuf *sb);
-void sbflush(struct sockbuf *sb);
-void sbinsertoob(struct sockbuf *sb, struct mbuf *m0);
-void sbrelease(struct sockbuf *sb);
-int sbreserve(struct sockbuf *sb, u_long cc);
-int sbwait(struct sockbuf *sb);
-int sb_lock(struct sockbuf *sb);
-int soabort(struct socket *so);
-int soaccept(struct socket *so, struct mbuf *nam);
-int sobind(struct socket *so, struct mbuf *nam);
-void socantrcvmore(struct socket *so);
-void socantsendmore(struct socket *so);
-int soclose(struct socket *so);
-int soconnect(struct socket *so, struct mbuf *nam);
-int soconnect2(struct socket *so1, struct socket *so2);
-int socreate(int dom, struct socket **aso, int type, int proto,
- struct proc *p);
-int sodisconnect(struct socket *so);
-void sofree(struct socket *so);
-int sogetopt(struct socket *so, int level, int optname,
- struct mbuf **mp);
-void sohasoutofband(struct socket *so);
-void soisconnected(struct socket *so);
-void soisconnecting(struct socket *so);
-void soisdisconnected(struct socket *so);
-void soisdisconnecting(struct socket *so);
-int solisten(struct socket *so, int backlog);
-struct socket *
- sodropablereq(struct socket *head);
-struct socket *
- sonewconn1(struct socket *head, int connstatus);
-int soreceive(struct socket *so, struct mbuf **paddr, struct uio *uio,
- struct mbuf **mp0, struct mbuf **controlp, int *flagsp);
-int soreserve(struct socket *so, u_long sndcc, u_long rcvcc);
-void sorflush(struct socket *so);
-int sosend(struct socket *so, struct mbuf *addr, struct uio *uio,
- struct mbuf *top, struct mbuf *control, int flags);
-int sosetopt(struct socket *so, int level, int optname,
- struct mbuf *m0);
-int soshutdown(struct socket *so, int how);
-void sowakeup(struct socket *so, struct sockbuf *sb);
-#endif /* _KERNEL */
-
-#endif /* !_SYS_SOCKETVAR_H_ */
diff --git a/cpukit/libnetworking/sys/sysctl.h b/cpukit/libnetworking/sys/sysctl.h
deleted file mode 100644
index 12e3845402..0000000000
--- a/cpukit/libnetworking/sys/sysctl.h
+++ /dev/null
@@ -1,642 +0,0 @@
-/*
- * Copyright (c) 1989, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Mike Karels at Berkeley Software Design, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)sysctl.h 8.1 (Berkeley) 6/2/93
- * $FreeBSD: src/sys/sys/sysctl.h,v 1.133 2004/10/11 22:04:16 peter Exp $
- */
-
-#ifndef _SYS_SYSCTL_H_
-#define _SYS_SYSCTL_H_
-
-#include <stdint.h>
-#include <sys/queue.h>
-
-struct thread;
-/*
- * Definitions for sysctl call. The sysctl call uses a hierarchical name
- * for objects that can be examined or modified. The name is expressed as
- * a sequence of integers. Like a file path name, the meaning of each
- * component depends on its place in the hierarchy. The top-level and kern
- * identifiers are defined here, and other identifiers are defined in the
- * respective subsystem header files.
- */
-
-#define CTL_MAXNAME 24 /* largest number of components supported */
-
-/*
- * Each subsystem defined by sysctl defines a list of variables
- * for that subsystem. Each name is either a node with further
- * levels defined below it, or it is a leaf of some particular
- * type given below. Each sysctl level defines a set of name/type
- * pairs to be used by sysctl(8) in manipulating the subsystem.
- */
-struct ctlname {
- char *ctl_name; /* subsystem name */
- int ctl_type; /* type of name */
-};
-
-#define CTLTYPE 0xf /* Mask for the type */
-#define CTLTYPE_NODE 1 /* name is a node */
-#define CTLTYPE_INT 2 /* name describes an integer */
-#define CTLTYPE_STRING 3 /* name describes a string */
-#define CTLTYPE_QUAD 4 /* name describes a 64-bit number */
-#define CTLTYPE_OPAQUE 5 /* name describes a structure */
-#define CTLTYPE_STRUCT CTLTYPE_OPAQUE /* name describes a structure */
-#define CTLTYPE_UINT 6 /* name describes an unsigned integer */
-#define CTLTYPE_LONG 7 /* name describes a long */
-#define CTLTYPE_ULONG 8 /* name describes an unsigned long */
-
-#define CTLFLAG_RD 0x80000000 /* Allow reads of variable */
-#define CTLFLAG_WR 0x40000000 /* Allow writes to the variable */
-#define CTLFLAG_RW (CTLFLAG_RD|CTLFLAG_WR)
-#define CTLFLAG_NOLOCK 0x20000000 /* XXX Don't Lock */
-#define CTLFLAG_ANYBODY 0x10000000 /* All users can set this var */
-#define CTLFLAG_SECURE 0x08000000 /* Permit set only if securelevel<=0 */
-#define CTLFLAG_PRISON 0x04000000 /* Prisoned roots can fiddle */
-#define CTLFLAG_DYN 0x02000000 /* Dynamic oid - can be freed */
-#define CTLFLAG_SKIP 0x01000000 /* Skip this sysctl when listing */
-#define CTLMASK_SECURE 0x00F00000 /* Secure level */
-#define CTLFLAG_TUN 0x00080000 /* Tunable variable */
-#define CTLFLAG_RDTUN (CTLFLAG_RD|CTLFLAG_TUN)
-
-/*
- * Secure level. Note that CTLFLAG_SECURE == CTLFLAG_SECURE1.
- *
- * Secure when the securelevel is raised to at least N.
- */
-#define CTLSHIFT_SECURE 20
-#define CTLFLAG_SECURE1 (CTLFLAG_SECURE | (0 << CTLSHIFT_SECURE))
-#define CTLFLAG_SECURE2 (CTLFLAG_SECURE | (1 << CTLSHIFT_SECURE))
-#define CTLFLAG_SECURE3 (CTLFLAG_SECURE | (2 << CTLSHIFT_SECURE))
-
-/*
- * USE THIS instead of a hardwired number from the categories below
- * to get dynamically assigned sysctl entries using the linker-set
- * technology. This is the way nearly all new sysctl variables should
- * be implemented.
- * e.g. SYSCTL_INT(_parent, OID_AUTO, name, CTLFLAG_RW, &variable, 0, "");
- */
-#define OID_AUTO (-1)
-
-/*
- * The starting number for dynamically-assigned entries. WARNING!
- * ALL static sysctl entries should have numbers LESS than this!
- */
-#define CTL_AUTO_START 0x100
-
-#ifdef _KERNEL
-#define SYSCTL_HANDLER_ARGS struct sysctl_oid *oidp, void *arg1, int arg2, \
- struct sysctl_req *req
-
-/* definitions for sysctl_req 'lock' member */
-#define REQ_UNLOCKED 0 /* not locked and not wired */
-#define REQ_LOCKED 1 /* locked and not wired */
-#define REQ_WIRED 2 /* locked and wired */
-
-/*
- * This describes the access space for a sysctl request. This is needed
- * so that we can use the interface from the kernel or from user-space.
- */
-struct sysctl_req {
- struct thread *td; /* used for access checking */
- int lock; /* locking/wiring state */
- void *oldptr;
- size_t oldlen;
- size_t oldidx;
- int (*oldfunc)(struct sysctl_req *, const void *, size_t);
- const void *newptr;
- size_t newlen;
- size_t newidx;
- int (*newfunc)(struct sysctl_req *, void *, size_t);
- size_t validlen;
-};
-
-SLIST_HEAD(sysctl_oid_list, sysctl_oid);
-
-/*
- * This describes one "oid" in the MIB tree. Potentially more nodes can
- * be hidden behind it, expanded by the handler.
- */
-struct sysctl_oid {
- struct sysctl_oid_list *oid_parent;
- SLIST_ENTRY(sysctl_oid) oid_link;
- int oid_number;
- uint32_t oid_kind;
- void *oid_arg1;
- int32_t oid_arg2;
- const char *oid_name;
- int (*oid_handler)(SYSCTL_HANDLER_ARGS);
- const char *oid_fmt;
- int oid_refcnt;
- const char *descr;
-};
-
-#define SYSCTL_IN(r, p, l) (r->newfunc)(r, p, l)
-#define SYSCTL_OUT(r, p, l) (r->oldfunc)(r, p, l)
-
-int sysctl_handle_int(SYSCTL_HANDLER_ARGS);
-int sysctl_handle_long(SYSCTL_HANDLER_ARGS);
-int sysctl_handle_intptr(SYSCTL_HANDLER_ARGS);
-int sysctl_handle_string(SYSCTL_HANDLER_ARGS);
-int sysctl_handle_opaque(SYSCTL_HANDLER_ARGS);
-
-/*
- * These functions are used to add/remove an oid from the mib.
- */
-void sysctl_register_oid(struct sysctl_oid *oidp);
-void sysctl_unregister_oid(struct sysctl_oid *oidp);
-
-/* Declare a static oid to allow child oids to be added to it. */
-#define SYSCTL_DECL(name) \
- extern struct sysctl_oid_list sysctl_##name##_children
-
-/* Hide these in macros */
-#define SYSCTL_CHILDREN(oid_ptr) (struct sysctl_oid_list *) \
- (oid_ptr)->oid_arg1
-#define SYSCTL_CHILDREN_SET(oid_ptr, val) \
- (oid_ptr)->oid_arg1 = (val);
-#define SYSCTL_STATIC_CHILDREN(oid_name) \
- (&sysctl_##oid_name##_children)
-
-/* === Structs and macros related to context handling === */
-
-/* All dynamically created sysctls can be tracked in a context list. */
-struct sysctl_ctx_entry {
- struct sysctl_oid *entry;
- TAILQ_ENTRY(sysctl_ctx_entry) link;
-};
-
-TAILQ_HEAD(sysctl_ctx_list, sysctl_ctx_entry);
-
-#define SYSCTL_NODE_CHILDREN(parent, name) \
- sysctl_##parent##_##name##_children
-
-/* This constructs a "raw" MIB oid. */
-#define SYSCTL_OID(parent, nbr, name, kind, a1, a2, handler, fmt, descr) \
- static struct sysctl_oid sysctl__##parent##_##name = { \
- &sysctl_##parent##_children, { 0 }, \
- nbr, kind, a1, a2, #name, handler, fmt, 0, descr }; \
- DATA_SET(sysctl_set, sysctl__##parent##_##name)
-
-#define SYSCTL_ADD_OID(ctx, parent, nbr, name, kind, a1, a2, handler, fmt, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, kind, a1, a2, handler, fmt, descr)
-
-/* This constructs a node from which other oids can hang. */
-#define SYSCTL_NODE(parent, nbr, name, access, handler, descr) \
- struct sysctl_oid_list SYSCTL_NODE_CHILDREN(parent, name); \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_NODE|(access), \
- (void*)&SYSCTL_NODE_CHILDREN(parent, name), 0, handler, \
- "N", descr)
-
-#define SYSCTL_ADD_NODE(ctx, parent, nbr, name, access, handler, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_NODE|(access), \
- 0, 0, handler, "N", descr)
-
-/* Oid for a string. len can be 0 to indicate '\0' termination. */
-#define SYSCTL_STRING(parent, nbr, name, access, arg, len, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_STRING|(access), \
- arg, len, sysctl_handle_string, "A", descr)
-
-#define SYSCTL_ADD_STRING(ctx, parent, nbr, name, access, arg, len, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_STRING|(access), \
- arg, len, sysctl_handle_string, "A", descr)
-
-/* Oid for an int. If ptr is NULL, val is returned. */
-#define SYSCTL_INT(parent, nbr, name, access, ptr, val, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_INT|(access), \
- ptr, val, sysctl_handle_int, "I", descr)
-
-#define SYSCTL_ADD_INT(ctx, parent, nbr, name, access, ptr, val, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_INT|(access), \
- ptr, val, sysctl_handle_int, "I", descr)
-
-/* Oid for an unsigned int. If ptr is NULL, val is returned. */
-#define SYSCTL_UINT(parent, nbr, name, access, ptr, val, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_UINT|(access), \
- ptr, val, sysctl_handle_int, "IU", descr)
-
-#define SYSCTL_ADD_UINT(ctx, parent, nbr, name, access, ptr, val, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_UINT|(access), \
- ptr, val, sysctl_handle_int, "IU", descr)
-
-/* Oid for a long. The pointer must be non NULL. */
-#define SYSCTL_LONG(parent, nbr, name, access, ptr, val, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_LONG|(access), \
- ptr, val, sysctl_handle_long, "L", descr)
-
-#define SYSCTL_ADD_LONG(ctx, parent, nbr, name, access, ptr, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_LONG|(access), \
- ptr, 0, sysctl_handle_long, "L", descr)
-
-/* Oid for an unsigned long. The pointer must be non NULL. */
-#define SYSCTL_ULONG(parent, nbr, name, access, ptr, val, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_ULONG|(access), \
- ptr, val, sysctl_handle_long, "LU", descr)
-
-#define SYSCTL_ADD_ULONG(ctx, parent, nbr, name, access, ptr, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_ULONG|(access), \
- ptr, 0, sysctl_handle_long, "LU", descr)
-
-/* Oid for an opaque object. Specified by a pointer and a length. */
-#define SYSCTL_OPAQUE(parent, nbr, name, access, ptr, len, fmt, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_OPAQUE|(access), \
- ptr, len, sysctl_handle_opaque, fmt, descr)
-
-#define SYSCTL_ADD_OPAQUE(ctx, parent, nbr, name, access, ptr, len, fmt, descr)\
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_OPAQUE|(access), \
- ptr, len, sysctl_handle_opaque, fmt, descr)
-
-/* Oid for a struct. Specified by a pointer and a type. */
-#define SYSCTL_STRUCT(parent, nbr, name, access, ptr, type, descr) \
- SYSCTL_OID(parent, nbr, name, CTLTYPE_OPAQUE|(access), \
- ptr, sizeof(struct type), sysctl_handle_opaque, \
- "S," #type, descr)
-
-#define SYSCTL_ADD_STRUCT(ctx, parent, nbr, name, access, ptr, type, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, CTLTYPE_OPAQUE|(access), \
- ptr, sizeof(struct type), sysctl_handle_opaque, "S," #type, descr)
-
-/* Oid for a procedure. Specified by a pointer and an arg. */
-#define SYSCTL_PROC(parent, nbr, name, access, ptr, arg, handler, fmt, descr) \
- SYSCTL_OID(parent, nbr, name, (access), \
- ptr, arg, handler, fmt, descr)
-
-#define SYSCTL_ADD_PROC(ctx, parent, nbr, name, access, ptr, arg, handler, fmt, descr) \
- sysctl_add_oid(ctx, parent, nbr, name, (access), \
- ptr, arg, handler, fmt, descr)
-
-#endif /* _KERNEL */
-
-/*
- * Top-level identifiers
- */
-#define CTL_UNSPEC 0 /* unused */
-#define CTL_KERN 1 /* "high kernel": proc, limits */
-#define CTL_VM 2 /* virtual memory */
-#define CTL_VFS 3 /* filesystem, mount type is next */
-#define CTL_NET 4 /* network, see socket.h */
-#define CTL_DEBUG 5 /* debugging parameters */
-#define CTL_HW 6 /* generic cpu/io */
-#define CTL_MACHDEP 7 /* machine dependent */
-#define CTL_USER 8 /* user-level */
-#define CTL_P1003_1B 9 /* POSIX 1003.1B */
-#define CTL_MAXID 10 /* number of valid top-level ids */
-
-#define CTL_NAMES { \
- { 0, 0 }, \
- { "kern", CTLTYPE_NODE }, \
- { "vm", CTLTYPE_NODE }, \
- { "vfs", CTLTYPE_NODE }, \
- { "net", CTLTYPE_NODE }, \
- { "debug", CTLTYPE_NODE }, \
- { "hw", CTLTYPE_NODE }, \
- { "machdep", CTLTYPE_NODE }, \
- { "user", CTLTYPE_NODE }, \
- { "p1003_1b", CTLTYPE_NODE }, \
-}
-
-/*
- * CTL_KERN identifiers
- */
-#define KERN_OSTYPE 1 /* string: system version */
-#define KERN_OSRELEASE 2 /* string: system release */
-#define KERN_OSREV 3 /* int: system revision */
-#define KERN_VERSION 4 /* string: compile time info */
-#define KERN_MAXVNODES 5 /* int: max vnodes */
-#define KERN_MAXPROC 6 /* int: max processes */
-#define KERN_MAXFILES 7 /* int: max open files */
-#define KERN_ARGMAX 8 /* int: max arguments to exec */
-#define KERN_SECURELVL 9 /* int: system security level */
-#define KERN_HOSTNAME 10 /* string: hostname */
-#define KERN_HOSTID 11 /* int: host identifier */
-#define KERN_CLOCKRATE 12 /* struct: struct clockrate */
-#define KERN_VNODE 13 /* struct: vnode structures */
-#define KERN_PROC 14 /* struct: process entries */
-#define KERN_FILE 15 /* struct: file entries */
-#define KERN_PROF 16 /* node: kernel profiling info */
-#define KERN_POSIX1 17 /* int: POSIX.1 version */
-#define KERN_NGROUPS 18 /* int: # of supplemental group ids */
-#define KERN_JOB_CONTROL 19 /* int: is job control available */
-#define KERN_SAVED_IDS 20 /* int: saved set-user/group-ID */
-#define KERN_BOOTTIME 21 /* struct: time kernel was booted */
-#define KERN_NISDOMAINNAME 22 /* string: YP domain name */
-#define KERN_UPDATEINTERVAL 23 /* int: update process sleep time */
-#define KERN_OSRELDATE 24 /* int: kernel release date */
-#define KERN_NTP_PLL 25 /* node: NTP PLL control */
-#define KERN_BOOTFILE 26 /* string: name of booted kernel */
-#define KERN_MAXFILESPERPROC 27 /* int: max open files per proc */
-#define KERN_MAXPROCPERUID 28 /* int: max processes per uid */
-#define KERN_DUMPDEV 29 /* struct cdev *: device to dump on */
-#define KERN_IPC 30 /* node: anything related to IPC */
-#define KERN_DUMMY 31 /* unused */
-#define KERN_PS_STRINGS 32 /* int: address of PS_STRINGS */
-#define KERN_USRSTACK 33 /* int: address of USRSTACK */
-#define KERN_LOGSIGEXIT 34 /* int: do we log sigexit procs? */
-#define KERN_IOV_MAX 35 /* int: value of UIO_MAXIOV */
-#define KERN_MAXID 36 /* number of valid kern ids */
-
-#define CTL_KERN_NAMES { \
- { 0, 0 }, \
- { "ostype", CTLTYPE_STRING }, \
- { "osrelease", CTLTYPE_STRING }, \
- { "osrevision", CTLTYPE_INT }, \
- { "version", CTLTYPE_STRING }, \
- { "maxvnodes", CTLTYPE_INT }, \
- { "maxproc", CTLTYPE_INT }, \
- { "maxfiles", CTLTYPE_INT }, \
- { "argmax", CTLTYPE_INT }, \
- { "securelevel", CTLTYPE_INT }, \
- { "hostname", CTLTYPE_STRING }, \
- { "hostid", CTLTYPE_UINT }, \
- { "clockrate", CTLTYPE_STRUCT }, \
- { "vnode", CTLTYPE_STRUCT }, \
- { "proc", CTLTYPE_STRUCT }, \
- { "file", CTLTYPE_STRUCT }, \
- { "profiling", CTLTYPE_NODE }, \
- { "posix1version", CTLTYPE_INT }, \
- { "ngroups", CTLTYPE_INT }, \
- { "job_control", CTLTYPE_INT }, \
- { "saved_ids", CTLTYPE_INT }, \
- { "boottime", CTLTYPE_STRUCT }, \
- { "nisdomainname", CTLTYPE_STRING }, \
- { "update", CTLTYPE_INT }, \
- { "osreldate", CTLTYPE_INT }, \
- { "ntp_pll", CTLTYPE_NODE }, \
- { "bootfile", CTLTYPE_STRING }, \
- { "maxfilesperproc", CTLTYPE_INT }, \
- { "maxprocperuid", CTLTYPE_INT }, \
- { "ipc", CTLTYPE_NODE }, \
- { "dummy", CTLTYPE_INT }, \
- { "ps_strings", CTLTYPE_INT }, \
- { "usrstack", CTLTYPE_INT }, \
- { "logsigexit", CTLTYPE_INT }, \
- { "iov_max", CTLTYPE_INT }, \
-}
-
-/*
- * CTL_VFS identifiers
- */
-#define CTL_VFS_NAMES { \
- { "vfsconf", CTLTYPE_STRUCT }, \
-}
-
-/*
- * KERN_PROC subtypes
- */
-#define KERN_PROC_ALL 0 /* everything */
-#define KERN_PROC_PID 1 /* by process id */
-#define KERN_PROC_PGRP 2 /* by process group id */
-#define KERN_PROC_SESSION 3 /* by session of pid */
-#define KERN_PROC_TTY 4 /* by controlling tty */
-#define KERN_PROC_UID 5 /* by effective uid */
-#define KERN_PROC_RUID 6 /* by real uid */
-#define KERN_PROC_ARGS 7 /* get/set arguments/proctitle */
-#define KERN_PROC_PROC 8 /* only return procs */
-#define KERN_PROC_SV_NAME 9 /* get syscall vector name */
-#define KERN_PROC_RGID 10 /* by real group id */
-#define KERN_PROC_GID 11 /* by effective group id */
-#define KERN_PROC_INC_THREAD 0x10 /*
- * modifier for pid, pgrp, tty,
- * uid, ruid, gid, rgid and proc
- */
-
-/*
- * KERN_IPC identifiers
- */
-#define KIPC_MAXSOCKBUF 1 /* int: max size of a socket buffer */
-#define KIPC_SOCKBUF_WASTE 2 /* int: wastage factor in sockbuf */
-#define KIPC_SOMAXCONN 3 /* int: max length of connection q */
-#define KIPC_MAX_LINKHDR 4 /* int: max length of link header */
-#define KIPC_MAX_PROTOHDR 5 /* int: max length of network header */
-#define KIPC_MAX_HDR 6 /* int: max total length of headers */
-#define KIPC_MAX_DATALEN 7 /* int: max length of data? */
-
-/*
- * CTL_HW identifiers
- */
-#define HW_MACHINE 1 /* string: machine class */
-#define HW_MODEL 2 /* string: specific machine model */
-#define HW_NCPU 3 /* int: number of cpus */
-#define HW_BYTEORDER 4 /* int: machine byte order */
-#define HW_PHYSMEM 5 /* int: total memory */
-#define HW_USERMEM 6 /* int: non-kernel memory */
-#define HW_PAGESIZE 7 /* int: software page size */
-#define HW_DISKNAMES 8 /* strings: disk drive names */
-#define HW_DISKSTATS 9 /* struct: diskstats[] */
-#define HW_FLOATINGPT 10 /* int: has HW floating point? */
-#define HW_MACHINE_ARCH 11 /* string: machine architecture */
-#define HW_MAXID 12 /* number of valid hw ids */
-
-#define CTL_HW_NAMES { \
- { 0, 0 }, \
- { "machine", CTLTYPE_STRING }, \
- { "model", CTLTYPE_STRING }, \
- { "ncpu", CTLTYPE_INT }, \
- { "byteorder", CTLTYPE_INT }, \
- { "physmem", CTLTYPE_ULONG }, \
- { "usermem", CTLTYPE_ULONG }, \
- { "pagesize", CTLTYPE_INT }, \
- { "disknames", CTLTYPE_STRUCT }, \
- { "diskstats", CTLTYPE_STRUCT }, \
- { "floatingpoint", CTLTYPE_INT }, \
-}
-
-/*
- * CTL_USER definitions
- */
-#define USER_CS_PATH 1 /* string: _CS_PATH */
-#define USER_BC_BASE_MAX 2 /* int: BC_BASE_MAX */
-#define USER_BC_DIM_MAX 3 /* int: BC_DIM_MAX */
-#define USER_BC_SCALE_MAX 4 /* int: BC_SCALE_MAX */
-#define USER_BC_STRING_MAX 5 /* int: BC_STRING_MAX */
-#define USER_COLL_WEIGHTS_MAX 6 /* int: COLL_WEIGHTS_MAX */
-#define USER_EXPR_NEST_MAX 7 /* int: EXPR_NEST_MAX */
-#define USER_LINE_MAX 8 /* int: LINE_MAX */
-#define USER_RE_DUP_MAX 9 /* int: RE_DUP_MAX */
-#define USER_POSIX2_VERSION 10 /* int: POSIX2_VERSION */
-#define USER_POSIX2_C_BIND 11 /* int: POSIX2_C_BIND */
-#define USER_POSIX2_C_DEV 12 /* int: POSIX2_C_DEV */
-#define USER_POSIX2_CHAR_TERM 13 /* int: POSIX2_CHAR_TERM */
-#define USER_POSIX2_FORT_DEV 14 /* int: POSIX2_FORT_DEV */
-#define USER_POSIX2_FORT_RUN 15 /* int: POSIX2_FORT_RUN */
-#define USER_POSIX2_LOCALEDEF 16 /* int: POSIX2_LOCALEDEF */
-#define USER_POSIX2_SW_DEV 17 /* int: POSIX2_SW_DEV */
-#define USER_POSIX2_UPE 18 /* int: POSIX2_UPE */
-#define USER_STREAM_MAX 19 /* int: POSIX2_STREAM_MAX */
-#define USER_TZNAME_MAX 20 /* int: POSIX2_TZNAME_MAX */
-#define USER_MAXID 21 /* number of valid user ids */
-
-#define CTL_USER_NAMES { \
- { 0, 0 }, \
- { "cs_path", CTLTYPE_STRING }, \
- { "bc_base_max", CTLTYPE_INT }, \
- { "bc_dim_max", CTLTYPE_INT }, \
- { "bc_scale_max", CTLTYPE_INT }, \
- { "bc_string_max", CTLTYPE_INT }, \
- { "coll_weights_max", CTLTYPE_INT }, \
- { "expr_nest_max", CTLTYPE_INT }, \
- { "line_max", CTLTYPE_INT }, \
- { "re_dup_max", CTLTYPE_INT }, \
- { "posix2_version", CTLTYPE_INT }, \
- { "posix2_c_bind", CTLTYPE_INT }, \
- { "posix2_c_dev", CTLTYPE_INT }, \
- { "posix2_char_term", CTLTYPE_INT }, \
- { "posix2_fort_dev", CTLTYPE_INT }, \
- { "posix2_fort_run", CTLTYPE_INT }, \
- { "posix2_localedef", CTLTYPE_INT }, \
- { "posix2_sw_dev", CTLTYPE_INT }, \
- { "posix2_upe", CTLTYPE_INT }, \
- { "stream_max", CTLTYPE_INT }, \
- { "tzname_max", CTLTYPE_INT }, \
-}
-
-#define CTL_P1003_1B_ASYNCHRONOUS_IO 1 /* boolean */
-#define CTL_P1003_1B_MAPPED_FILES 2 /* boolean */
-#define CTL_P1003_1B_MEMLOCK 3 /* boolean */
-#define CTL_P1003_1B_MEMLOCK_RANGE 4 /* boolean */
-#define CTL_P1003_1B_MEMORY_PROTECTION 5 /* boolean */
-#define CTL_P1003_1B_MESSAGE_PASSING 6 /* boolean */
-#define CTL_P1003_1B_PRIORITIZED_IO 7 /* boolean */
-#define CTL_P1003_1B_PRIORITY_SCHEDULING 8 /* boolean */
-#define CTL_P1003_1B_REALTIME_SIGNALS 9 /* boolean */
-#define CTL_P1003_1B_SEMAPHORES 10 /* boolean */
-#define CTL_P1003_1B_FSYNC 11 /* boolean */
-#define CTL_P1003_1B_SHARED_MEMORY_OBJECTS 12 /* boolean */
-#define CTL_P1003_1B_SYNCHRONIZED_IO 13 /* boolean */
-#define CTL_P1003_1B_TIMERS 14 /* boolean */
-#define CTL_P1003_1B_AIO_LISTIO_MAX 15 /* int */
-#define CTL_P1003_1B_AIO_MAX 16 /* int */
-#define CTL_P1003_1B_AIO_PRIO_DELTA_MAX 17 /* int */
-#define CTL_P1003_1B_DELAYTIMER_MAX 18 /* int */
-#define CTL_P1003_1B_MQ_OPEN_MAX 19 /* int */
-#define CTL_P1003_1B_PAGESIZE 20 /* int */
-#define CTL_P1003_1B_RTSIG_MAX 21 /* int */
-#define CTL_P1003_1B_SEM_NSEMS_MAX 22 /* int */
-#define CTL_P1003_1B_SEM_VALUE_MAX 23 /* int */
-#define CTL_P1003_1B_SIGQUEUE_MAX 24 /* int */
-#define CTL_P1003_1B_TIMER_MAX 25 /* int */
-
-#define CTL_P1003_1B_MAXID 26
-
-#define CTL_P1003_1B_NAMES { \
- { 0, 0 }, \
- { "asynchronous_io", CTLTYPE_INT }, \
- { "mapped_files", CTLTYPE_INT }, \
- { "memlock", CTLTYPE_INT }, \
- { "memlock_range", CTLTYPE_INT }, \
- { "memory_protection", CTLTYPE_INT }, \
- { "message_passing", CTLTYPE_INT }, \
- { "prioritized_io", CTLTYPE_INT }, \
- { "priority_scheduling", CTLTYPE_INT }, \
- { "realtime_signals", CTLTYPE_INT }, \
- { "semaphores", CTLTYPE_INT }, \
- { "fsync", CTLTYPE_INT }, \
- { "shared_memory_objects", CTLTYPE_INT }, \
- { "synchronized_io", CTLTYPE_INT }, \
- { "timers", CTLTYPE_INT }, \
- { "aio_listio_max", CTLTYPE_INT }, \
- { "aio_max", CTLTYPE_INT }, \
- { "aio_prio_delta_max", CTLTYPE_INT }, \
- { "delaytimer_max", CTLTYPE_INT }, \
- { "mq_open_max", CTLTYPE_INT }, \
- { "pagesize", CTLTYPE_INT }, \
- { "rtsig_max", CTLTYPE_INT }, \
- { "nsems_max", CTLTYPE_INT }, \
- { "sem_value_max", CTLTYPE_INT }, \
- { "sigqueue_max", CTLTYPE_INT }, \
- { "timer_max", CTLTYPE_INT }, \
-}
-
-#ifdef _KERNEL
-
-/*
- * Declare some common oids.
- */
-extern struct sysctl_oid_list sysctl__children;
-SYSCTL_DECL(_kern);
-SYSCTL_DECL(_sysctl);
-SYSCTL_DECL(_vm);
-SYSCTL_DECL(_vfs);
-SYSCTL_DECL(_net);
-SYSCTL_DECL(_debug);
-SYSCTL_DECL(_debug_sizeof);
-SYSCTL_DECL(_hw);
-SYSCTL_DECL(_machdep);
-SYSCTL_DECL(_user);
-SYSCTL_DECL(_compat);
-
-extern char machine[];
-extern char osrelease[];
-extern char ostype[];
-extern char kern_ident[];
-
-/* Dynamic oid handling */
-struct sysctl_oid *sysctl_add_oid(struct sysctl_ctx_list *clist,
- struct sysctl_oid_list *parent, int nbr, const char *name,
- int kind, void *arg1, int arg2,
- int (*handler) (SYSCTL_HANDLER_ARGS),
- const char *fmt, const char *descr);
-int sysctl_move_oid(struct sysctl_oid *oidp,
- struct sysctl_oid_list *parent);
-int sysctl_remove_oid(struct sysctl_oid *oidp, int del, int recurse);
-int sysctl_ctx_init(struct sysctl_ctx_list *clist);
-int sysctl_ctx_free(struct sysctl_ctx_list *clist);
-struct sysctl_ctx_entry *sysctl_ctx_entry_add(struct sysctl_ctx_list *clist,
- struct sysctl_oid *oidp);
-struct sysctl_ctx_entry *sysctl_ctx_entry_find(struct sysctl_ctx_list *clist,
- struct sysctl_oid *oidp);
-int sysctl_ctx_entry_del(struct sysctl_ctx_list *clist,
- struct sysctl_oid *oidp);
-
-int kernel_sysctl(struct thread *td, int *name, u_int namelen, void *old,
- size_t *oldlenp, void *new, size_t newlen,
- size_t *retval);
-int kernel_sysctlbyname(struct thread *td, char *name,
- void *old, size_t *oldlenp, void *new, size_t newlen,
- size_t *retval);
-int userland_sysctl(struct thread *td, const int *name, u_int namelen, void *old,
- size_t *oldlenp, int inkernel, const void *new, size_t newlen,
- size_t *retval);
-int sysctl_find_oid(const int *name, u_int namelen, struct sysctl_oid **noid,
- int *nindx, struct sysctl_req *req);
-int sysctl_wire_old_buffer(struct sysctl_req *req, size_t len);
-
-#else /* !_KERNEL */
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
-int sysctl(int *, u_int, void *, size_t *, void *, size_t);
-int sysctlbyname(const char *, void *, size_t *, void *, size_t);
-int sysctlnametomib(const char *, int *, size_t *);
-__END_DECLS
-#endif /* _KERNEL */
-
-#endif /* !_SYS_SYSCTL_H_ */
diff --git a/cpukit/libnetworking/sys/systm.h b/cpukit/libnetworking/sys/systm.h
deleted file mode 100644
index ae70148184..0000000000
--- a/cpukit/libnetworking/sys/systm.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/*-
- * Copyright (c) 1982, 1988, 1991, 1993
- * The Regents of the University of California. All rights reserved.
- * (c) UNIX System Laboratories, Inc.
- * All or some portions of this file are derived from material licensed
- * to the University of California by American Telephone and Telegraph
- * Co. or Unix System Laboratories, Inc. and are reproduced herein with
- * the permission of UNIX System Laboratories, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)systm.h 8.7 (Berkeley) 3/29/95
- * $FreeBSD: src/sys/sys/systm.h,v 1.248 2007/01/15 15:06:27 rrs Exp $
- */
-
-
-#ifndef _SYS_SYSTM_H_
-#define _SYS_SYSTM_H_
-
-#include <rtems/rtems_bsdnet_internal.h> /* for __BSD_VA_LIST__ */
-#include <machine/cpufunc.h>
-
-#if !defined(__dead2)
-#define __dead2 __attribute__((__noreturn__))
-#endif
-
-extern int securelevel; /* system security level (see init(8)) */
-
-extern int cold; /* nonzero if we are doing a cold boot */
-extern const char *panicstr; /* panic message */
-extern char version[]; /* system version */
-extern char copyright[]; /* system copyright */
-
-extern int physmem; /* physical memory */
-
-/*
- * General function declarations.
- */
-int nullop(void);
-int ureadc(int, struct uio *);
-void *hashinit(int count, int type, u_long *hashmask);
-void *phashinit(int count, int type, u_long *nentries);
-
-void panic(const char *, ...) __dead2;
-void boot(int) __dead2;
-void cpu_boot(int);
-int kvprintf(char const *, void (*)(int, void*), void *, int,
- _BSD_VA_LIST_);
-void log(int, const char *, ...);
-int printf(const char *, ...);
-int sprintf(char *buf, const char *, ...);
-void uprintf(const char *, ...);
-void ttyprintf(struct tty *, const char *, ...);
-
-#define bcopy(f,t,n) memcpy((t),(f),(n))
-#define bzero(p,n) memset((p),(0),(n))
-
-int copystr(const void *kfaddr, void *kdaddr, size_t len,
- size_t *lencopied);
-int copyinstr(const void *udaddr, void *kaddr, size_t len,
- size_t *lencopied);
-#ifndef __rtems__
-/* FIXME: these clash with defines in rtems_bsdnet_internal.h */
-int copyin(const void *udaddr, void *kaddr, size_t len);
-int copyout(const void *kaddr, void *udaddr, size_t len);
-#endif
-
-int hzto(struct timeval *tv);
-
-#include <sys/libkern.h>
-
-/* Timeouts */
-typedef void (timeout_t)(void *); /* actual timeout function type */
-typedef timeout_t *timeout_func_t; /* a pointer to this type */
-
-void timeout(timeout_func_t, void *, int);
-void untimeout(timeout_func_t, void *);
-
-/*
- * Common `proc' functions are declared here so that proc.h can be included
- * less often.
- */
-int tsleep(void *chan, int pri, char *wmesg, int timo);
-void wakeup(void *chan);
-
-#endif /* !_SYS_SYSTM_H_ */
diff --git a/cpukit/libnetworking/sys/ucred.h b/cpukit/libnetworking/sys/ucred.h
deleted file mode 100644
index 84c4ebc2e6..0000000000
--- a/cpukit/libnetworking/sys/ucred.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 1989, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)ucred.h 8.4 (Berkeley) 1/9/95
- */
-
-#ifndef _SYS_UCRED_H_
-#define _SYS_UCRED_H_
-
-#if defined(__rtems__)
-#include <sys/param.h> /* NGROUPS */
-#endif
-
-/*
- * Credentials.
- */
-struct ucred {
- u_short cr_ref; /* reference count */
- uid_t cr_uid; /* effective user id */
- short cr_ngroups; /* number of groups */
- gid_t cr_groups[NGROUPS]; /* groups */
-};
-#define cr_gid cr_groups[0]
-#define NOCRED ((struct ucred *)0) /* no credential available */
-#define FSCRED ((struct ucred *)-1) /* filesystem credential */
-
-#ifdef _KERNEL
-int suser(struct ucred *cred, u_short *acflag);
-#endif /* _KERNEL */
-
-#endif /* !_SYS_UCRED_H_ */