Browse Source

Temporarily revert to older working set of files.
-Erik

Eric Andersen 24 years ago
parent
commit
42fb99c79e

+ 0 - 54
include/netinet/ether.h

@@ -1,54 +0,0 @@
-/* Functions for storing Ethernet addresses in ASCII and mapping to hostnames.
-   Copyright (C) 1996, 1997 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_ETHER_H
-#define _NETINET_ETHER_H	1
-
-#include <features.h>
-
-/* Get definition of `struct ether_addr'.  */
-#include <netinet/if_ether.h>
-
-__BEGIN_DECLS
-
-/* Convert 48 bit Ethernet ADDRess to ASCII.  */
-extern char *ether_ntoa __P ((__const struct ether_addr *__addr));
-extern char *ether_ntoa_r __P ((__const struct ether_addr *__addr,
-				char *__buf));
-
-/* Convert ASCII string S to 48 bit Ethernet address.  */
-extern struct ether_addr *ether_aton __P ((__const char *__asc));
-extern struct ether_addr *ether_aton_r __P ((__const char *__asc,
-					     struct ether_addr *__addr));
-
-/* Map 48 bit Ethernet number ADDR to HOSTNAME.  */
-extern int ether_ntohost __P ((char *__hostname,
-			       __const struct ether_addr *__addr));
-
-/* Map HOSTNAME to 48 bit Ethernet address.  */
-extern int ether_hostton __P ((__const char *__hostname,
-			       struct ether_addr *__addr));
-
-/* Scan LINE and set ADDR and HOSTNAME.  */
-extern int ether_line __P ((__const char *__line, struct ether_addr *__addr,
-			    char *__hostname));
-
-__END_DECLS
-
-#endif /* netinet/ether.h */

+ 0 - 232
include/netinet/icmp6.h

@@ -1,232 +0,0 @@
-/* Copyright (C) 1991, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_ICMP6_H
-#define _NETINET_ICMP6_H 1
-
-#include <inttypes.h>
-#include <string.h>
-#include <sys/types.h>
-#include <netinet/in.h>
-
-#define ICMP6_FILTER 1
-
-#define ICMP6_FILTER_BLOCK		1
-#define ICMP6_FILTER_PASS		2
-#define ICMP6_FILTER_BLOCKOTHERS	3
-#define ICMP6_FILTER_PASSONLY		4
-
-struct icmp6_filter
-  {
-    uint32_t data[8];
-  };
-
-struct icmp6_hdr 
-  {
-    uint8_t     icmp6_type;   /* type field */
-    uint8_t     icmp6_code;   /* code field */
-    uint16_t    icmp6_cksum;  /* checksum field */
-    union 
-      {
-	uint32_t  icmp6_un_data32[1]; /* type-specific field */
-	uint16_t  icmp6_un_data16[2]; /* type-specific field */
-	uint8_t   icmp6_un_data8[4];  /* type-specific field */
-      } icmp6_dataun;
-  }; 
-
-#define icmp6_data32    icmp6_dataun.icmp6_un_data32
-#define icmp6_data16    icmp6_dataun.icmp6_un_data16
-#define icmp6_data8     icmp6_dataun.icmp6_un_data8
-#define icmp6_pptr      icmp6_data32[0]  /* parameter prob */
-#define icmp6_mtu       icmp6_data32[0]  /* packet too big */
-#define icmp6_id        icmp6_data16[0]  /* echo request/reply */
-#define icmp6_seq       icmp6_data16[1]  /* echo request/reply */
-#define icmp6_maxdelay  icmp6_data16[0]  /* mcast group membership */
-
-#define ICMP6_DST_UNREACH             1
-#define ICMP6_PACKET_TOO_BIG          2
-#define ICMP6_TIME_EXCEEDED           3
-#define ICMP6_PARAM_PROB              4
-
-#define ICMP6_INFOMSG_MASK  0x80    /* all informational messages */
-
-#define ICMP6_ECHO_REQUEST          128
-#define ICMP6_ECHO_REPLY            129
-#define ICMP6_MEMBERSHIP_QUERY      130
-#define ICMP6_MEMBERSHIP_REPORT     131
-#define ICMP6_MEMBERSHIP_REDUCTION  132
-
-#define ICMP6_DST_UNREACH_NOROUTE     0 /* no route to destination */
-#define ICMP6_DST_UNREACH_ADMIN       1 /* communication with destination */
-                                        /* administratively prohibited */
-#define ICMP6_DST_UNREACH_NOTNEIGHBOR 2 /* not a neighbor */
-#define ICMP6_DST_UNREACH_ADDR        3 /* address unreachable */
-#define ICMP6_DST_UNREACH_NOPORT      4 /* bad port */
-
-#define ICMP6_TIME_EXCEED_TRANSIT     0 /* Hop Limit == 0 in transit */
-#define ICMP6_TIME_EXCEED_REASSEMBLY  1 /* Reassembly time out */
-
-#define ICMP6_PARAMPROB_HEADER        0 /* erroneous header field */
-#define ICMP6_PARAMPROB_NEXTHEADER    1 /* unrecognized Next Header */
-#define ICMP6_PARAMPROB_OPTION        2 /* unrecognized IPv6 option */
-
-#define ICMP6_FILTER_WILLPASS(type, filterp) \
-	((((filterp)->data[(type) >> 5]) & (1 << ((type) & 31))) == 0)
-
-#define ICMP6_FILTER_WILLBLOCK(type, filterp) \
-	((((filterp)->data[(type) >> 5]) & (1 << ((type) & 31))) != 0)
-
-#define ICMP6_FILTER_SETPASS(type, filterp) \
-	((((filterp)->data[(type) >> 5]) &= ~(1 << ((type) & 31))))
-
-#define ICMP6_FILTER_SETBLOCK(type, filterp) \
-	((((filterp)->data[(type) >> 5]) |=  (1 << ((type) & 31))))
-
-#define ICMP6_FILTER_SETPASSALL(filterp) \
-	memset (filterp, 0, sizeof (struct icmp6_filter));
-
-#define ICMP6_FILTER_SETBLOCKALL(filterp) \
-	memset (filterp, 0xFF, sizeof (struct icmp6_filter));
-
-#define ND_ROUTER_SOLICIT           133
-#define ND_ROUTER_ADVERT            134
-#define ND_NEIGHBOR_SOLICIT         135
-#define ND_NEIGHBOR_ADVERT          136
-#define ND_REDIRECT                 137
-
-struct nd_router_solicit      /* router solicitation */
-  {
-    struct icmp6_hdr  nd_rs_hdr;
-    /* could be followed by options */
-  };
-
-#define nd_rs_type               nd_rs_hdr.icmp6_type
-#define nd_rs_code               nd_rs_hdr.icmp6_code
-#define nd_rs_cksum              nd_rs_hdr.icmp6_cksum
-#define nd_rs_reserved           nd_rs_hdr.icmp6_data32[0]
-
-struct nd_router_advert       /* router advertisement */
-  {
-    struct icmp6_hdr  nd_ra_hdr;
-    uint32_t   nd_ra_reachable;   /* reachable time */
-    uint32_t   nd_ra_retransmit;  /* retransmit timer */
-    /* could be followed by options */
-  };
-
-#define nd_ra_type               nd_ra_hdr.icmp6_type
-#define nd_ra_code               nd_ra_hdr.icmp6_code
-#define nd_ra_cksum              nd_ra_hdr.icmp6_cksum
-#define nd_ra_curhoplimit        nd_ra_hdr.icmp6_data8[0]
-#define nd_ra_flags_reserved     nd_ra_hdr.icmp6_data8[1]
-#define ND_RA_FLAG_MANAGED       0x80
-#define ND_RA_FLAG_OTHER         0x40
-#define nd_ra_router_lifetime    nd_ra_hdr.icmp6_data16[1]
-
-struct nd_neighbor_solicit    /* neighbor solicitation */
-  {
-    struct icmp6_hdr  nd_ns_hdr;
-    struct in6_addr   nd_ns_target; /* target address */
-    /* could be followed by options */
-  };
-
-#define nd_ns_type               nd_ns_hdr.icmp6_type
-#define nd_ns_code               nd_ns_hdr.icmp6_code
-#define nd_ns_cksum              nd_ns_hdr.icmp6_cksum
-#define nd_ns_reserved           nd_ns_hdr.icmp6_data32[0]
-
-struct nd_neighbor_advert     /* neighbor advertisement */
-  {
-    struct icmp6_hdr  nd_na_hdr;
-    struct in6_addr   nd_na_target; /* target address */
-    /* could be followed by options */
-  };
-
-#define nd_na_type               nd_na_hdr.icmp6_type
-#define nd_na_code               nd_na_hdr.icmp6_code
-#define nd_na_cksum              nd_na_hdr.icmp6_cksum
-#define nd_na_flags_reserved     nd_na_hdr.icmp6_data32[0]
-#if     BYTE_ORDER == BIG_ENDIAN
-#define ND_NA_FLAG_ROUTER        0x80000000
-#define ND_NA_FLAG_SOLICITED     0x40000000
-#define ND_NA_FLAG_OVERRIDE      0x20000000
-#else   /* BYTE_ORDER == LITTLE_ENDIAN */
-#define ND_NA_FLAG_ROUTER        0x00000080
-#define ND_NA_FLAG_SOLICITED     0x00000040
-#define ND_NA_FLAG_OVERRIDE      0x00000020
-#endif
-
-struct nd_redirect            /* redirect */
-  {
-    struct icmp6_hdr  nd_rd_hdr;
-    struct in6_addr   nd_rd_target; /* target address */
-    struct in6_addr   nd_rd_dst;    /* destination address */
-    /* could be followed by options */
-  };
- 
-#define nd_rd_type               nd_rd_hdr.icmp6_type
-#define nd_rd_code               nd_rd_hdr.icmp6_code
-#define nd_rd_cksum              nd_rd_hdr.icmp6_cksum
-#define nd_rd_reserved           nd_rd_hdr.icmp6_data32[0]
-
-struct nd_opt_hdr             /* Neighbor discovery option header */
-  {
-    uint8_t  nd_opt_type;
-    uint8_t  nd_opt_len;        /* in units of 8 octets */
-    /* followed by option specific data */
-  };
-
-#define  ND_OPT_SOURCE_LINKADDR       1
-#define  ND_OPT_TARGET_LINKADDR       2
-#define  ND_OPT_PREFIX_INFORMATION    3
-#define  ND_OPT_REDIRECTED_HEADER     4
-#define  ND_OPT_MTU                   5
-
-struct nd_opt_prefix_info     /* prefix information */
-  {
-    uint8_t   nd_opt_pi_type;
-    uint8_t   nd_opt_pi_len;
-    uint8_t   nd_opt_pi_prefix_len;
-    uint8_t   nd_opt_pi_flags_reserved;
-    uint32_t  nd_opt_pi_valid_time;
-    uint32_t  nd_opt_pi_preferred_time;
-    uint32_t  nd_opt_pi_reserved2;
-    struct in6_addr  nd_opt_pi_prefix;
-  };
-
-#define ND_OPT_PI_FLAG_ONLINK        0x80
-#define ND_OPT_PI_FLAG_AUTO          0x40
-
-struct nd_opt_rd_hdr          /* redirected header */
-  {
-    uint8_t   nd_opt_rh_type;
-    uint8_t   nd_opt_rh_len;
-    uint16_t  nd_opt_rh_reserved1;
-    uint32_t  nd_opt_rh_reserved2;
-    /* followed by IP header and data */
-  };
-
-struct nd_opt_mtu             /* MTU option */
-  {
-    uint8_t   nd_opt_mtu_type;
-    uint8_t   nd_opt_mtu_len;
-    uint16_t  nd_opt_mtu_reserved;
-    uint32_t  nd_opt_mtu_mtu;
-  };
-
-
-#endif /* netinet/icmpv6.h */

+ 0 - 109
include/netinet/if_ether.h

@@ -1,109 +0,0 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef __NETINET_IF_ETHER_H
-
-#define __NETINET_IF_ETHER_H	1
-#include <features.h>
-#include <sys/types.h>
-
-/* Get definitions from kernel header file.  */
-#include <linux/if_ether.h>
-
-#ifdef __USE_BSD
-/*
- * 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.
- * 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.
- *
- *	@(#)if_ether.h	8.3 (Berkeley) 5/2/95
- *	$FreeBSD$
- */
-
-#include <net/ethernet.h>
-#include <net/if_arp.h>
-
-__BEGIN_DECLS
-/*
- * Ethernet Address Resolution Protocol.
- *
- * See RFC 826 for protocol description.  Structure below is adapted
- * to resolving internet addresses.  Field names used correspond to
- * RFC 826.
- */
-struct	ether_arp {
-	struct	arphdr ea_hdr;		/* fixed-size header */
-	u_int8_t arp_sha[ETH_ALEN];	/* sender hardware address */
-	u_int8_t arp_spa[4];		/* sender protocol address */
-	u_int8_t arp_tha[ETH_ALEN];	/* target hardware address */
-	u_int8_t arp_tpa[4];		/* target protocol address */
-};
-#define	arp_hrd	ea_hdr.ar_hrd
-#define	arp_pro	ea_hdr.ar_pro
-#define	arp_hln	ea_hdr.ar_hln
-#define	arp_pln	ea_hdr.ar_pln
-#define	arp_op	ea_hdr.ar_op
-
-/*
- * Macro to map an IP multicast address to an Ethernet multicast address.
- * The high-order 25 bits of the Ethernet address are statically assigned,
- * and the low-order 23 bits are taken from the low end of the IP address.
- */
-#define ETHER_MAP_IP_MULTICAST(ipaddr, enaddr) \
-	/* struct in_addr *ipaddr; */ \
-	/* u_char enaddr[ETH_ALEN];	   */ \
-{ \
-	(enaddr)[0] = 0x01; \
-	(enaddr)[1] = 0x00; \
-	(enaddr)[2] = 0x5e; \
-	(enaddr)[3] = ((u_int8_t *)ipaddr)[1] & 0x7f; \
-	(enaddr)[4] = ((u_int8_t *)ipaddr)[2]; \
-	(enaddr)[5] = ((u_int8_t *)ipaddr)[3]; \
-}
-
-__END_DECLS
-#endif /* __USE_BSD */
-
-#endif /* netinet/if_ether.h */

+ 0 - 37
include/netinet/if_fddi.h

@@ -1,37 +0,0 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_IF_FDDI_H
-#define	_NETINET_IF_FDDI_H 1
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <asm/types.h>
-
-#include <linux/if_fddi.h>
-
-#ifdef __USE_BSD
-
-struct fddi_header {
-  u_int8_t fddi_fc;                    /* Frame Control (FC) value */
-  u_int8_t fddi_dhost[FDDI_K_ALEN];    /* Destination host */
-  u_int8_t fddi_shost[FDDI_K_ALEN];    /* Source host */
-};
-#endif
-
-#endif	/* netinet/if_fddi.h */

+ 0 - 41
include/netinet/if_tr.h

@@ -1,41 +0,0 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_IF_TR_H
-#define	_NETINET_IF_TR_H 1
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <asm/types.h>
-
-#include <linux/if_tr.h>
-
-#ifdef __USE_BSD
-
-struct trn_hdr {
-  u_int8_t trn_ac;                /* access control field */
-  u_int8_t trn_fc;                /* field control field */
-  u_int8_t trn_dhost[TR_ALEN];    /* destination host */
-  u_int8_t trn_shost[TR_ALEN];    /* source host */
-  u_int16_t trn_rcf;              /* route control field */
-  u_int16_t trn_rseg[8];          /* routing registers */
-};
-
-#endif
-
-#endif	/* netinet/if_tr.h */

+ 0 - 93
include/netinet/igmp.h

@@ -1,93 +0,0 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_IGMP_H
-#define	_NETINET_IGMP_H 1
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-
-#include <asm/types.h>
-#include <linux/igmp.h>
-
-#ifdef __USE_BSD
-
-#include <netinet/in.h>
-
-__BEGIN_DECLS
-
-/*
- * Copyright (c) 1988 Stephen Deering.
- * Copyright (c) 1992, 1993
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Stephen Deering of Stanford University.
- *
- * 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.
- *
- *	@(#)igmp.h	8.1 (Berkeley) 6/10/93
- *	$FreeBSD$
- */
-
-struct igmp {
-  u_int8_t igmp_type;             /* IGMP type */
-  u_int8_t igmp_code;             /* routing code */
-  u_int16_t igmp_cksum;           /* checksum */
-  struct in_addr igmp_group;      /* group address */
-};
-
-/*
- * Message types, including version number.
- */
-#define IGMP_MEMBERSHIP_QUERY   	0x11	/* membership query         */
-#define IGMP_V1_MEMBERSHIP_REPORT	0x12	/* Ver. 1 membership report */
-#define IGMP_V2_MEMBERSHIP_REPORT	0x16	/* Ver. 2 membership report */
-#define IGMP_V2_LEAVE_GROUP		0x17	/* Leave-group message	    */
-
-__END_DECLS
-
-#endif
-
-#endif	/* netinet/igmp.h */

+ 0 - 319
include/netinet/in.h

@@ -1,319 +0,0 @@
-/* Copyright (C) 1991,92,93,94,95,96,97,98,99 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef	_NETINET_IN_H
-#define	_NETINET_IN_H	1
-
-#include <features.h>
-#include <limits.h>
-#include <stdint.h>
-
-#include <sys/types.h>
-#include <bits/socket.h>
-
-
-__BEGIN_DECLS
-
-/* Standard well-defined IP protocols.  */
-enum
-  {
-    IPPROTO_IP = 0,	   /* Dummy protocol for TCP.  */
-    IPPROTO_HOPOPTS = 0,   /* IPv6 Hop-by-Hop options.  */
-    IPPROTO_ICMP = 1,	   /* Internet Control Message Protocol.  */
-    IPPROTO_IGMP = 2,	   /* Internet Group Management Protocol. */
-    IPPROTO_IPIP = 4,	   /* IPIP tunnels (older KA9Q tunnels use 94).  */
-    IPPROTO_TCP = 6,	   /* Transmission Control Protocol.  */
-    IPPROTO_EGP = 8,	   /* Exterior Gateway Protocol.  */
-    IPPROTO_PUP = 12,	   /* PUP protocol.  */
-    IPPROTO_UDP = 17,	   /* User Datagram Protocol.  */
-    IPPROTO_IDP = 22,	   /* XNS IDP protocol.  */
-    IPPROTO_TP = 29,	   /* SO Transport Protocol Class 4.  */
-    IPPROTO_IPV6 = 41,     /* IPv6 header.  */
-    IPPROTO_ROUTING = 43,  /* IPv6 routing header.  */
-    IPPROTO_FRAGMENT = 44, /* IPv6 fragmentation header.  */
-    IPPROTO_RSVP = 46,	   /* Reservation Protocol.  */
-    IPPROTO_GRE = 47,	   /* General Routing Encapsulation.  */
-    IPPROTO_ESP = 50,      /* encapsulating security payload.  */
-    IPPROTO_AH = 51,       /* authentication header.  */
-    IPPROTO_ICMPV6 = 58,   /* ICMPv6.  */
-    IPPROTO_NONE = 59,     /* IPv6 no next header.  */
-    IPPROTO_DSTOPTS = 60,  /* IPv6 destination options.  */
-    IPPROTO_MTP = 92,	   /* Multicast Transport Protocol.  */
-    IPPROTO_ENCAP = 98,	   /* Encapsulation Header.  */
-    IPPROTO_PIM = 103,	   /* Protocol Independent Multicast.  */
-    IPPROTO_COMP = 108,	   /* Compression Header Protocol.  */
-    IPPROTO_RAW = 255,	   /* Raw IP packets.  */
-    IPPROTO_MAX
-  };
-
-/* Standard well-known ports.  */
-enum
-  {
-    IPPORT_ECHO = 7,		/* Echo service.  */
-    IPPORT_DISCARD = 9,		/* Discard transmissions service.  */
-    IPPORT_SYSTAT = 11,		/* System status service.  */
-    IPPORT_DAYTIME = 13,	/* Time of day service.  */
-    IPPORT_NETSTAT = 15,	/* Network status service.  */
-    IPPORT_FTP = 21,		/* File Transfer Protocol.  */
-    IPPORT_TELNET = 23,		/* Telnet protocol.  */
-    IPPORT_SMTP = 25,		/* Simple Mail Transfer Protocol.  */
-    IPPORT_TIMESERVER = 37,	/* Timeserver service.  */
-    IPPORT_NAMESERVER = 42,	/* Domain Name Service.  */
-    IPPORT_WHOIS = 43,		/* Internet Whois service.  */
-    IPPORT_MTP = 57,
-
-    IPPORT_TFTP = 69,		/* Trivial File Transfer Protocol.  */
-    IPPORT_RJE = 77,
-    IPPORT_FINGER = 79,		/* Finger service.  */
-    IPPORT_TTYLINK = 87,
-    IPPORT_SUPDUP = 95,		/* SUPDUP protocol.  */
-
-
-    IPPORT_EXECSERVER = 512,	/* execd service.  */
-    IPPORT_LOGINSERVER = 513,	/* rlogind service.  */
-    IPPORT_CMDSERVER = 514,
-    IPPORT_EFSSERVER = 520,
-
-    /* UDP ports.  */
-    IPPORT_BIFFUDP = 512,
-    IPPORT_WHOSERVER = 513,
-    IPPORT_ROUTESERVER = 520,
-
-    /* Ports less than this value are reserved for privileged processes.  */
-    IPPORT_RESERVED = 1024,
-
-    /* Ports greater this value are reserved for (non-privileged) servers.  */
-    IPPORT_USERRESERVED = 5000
-  };
-
-
-/* Internet address.  */
-struct in_addr
-  {
-    uint32_t s_addr;
-  };
-
-
-/* Definitions of the bits in an Internet address integer.
-
-   On subnets, host and network parts are found according to
-   the subnet mask, not these masks.  */
-
-#define	IN_CLASSA(a)		((((uint32_t) (a)) & 0x80000000) == 0)
-#define	IN_CLASSA_NET		0xff000000
-#define	IN_CLASSA_NSHIFT	24
-#define	IN_CLASSA_HOST		(0xffffffff & ~IN_CLASSA_NET)
-#define	IN_CLASSA_MAX		128
-
-#define	IN_CLASSB(a)		((((uint32_t) (a)) & 0xc0000000) == 0x80000000)
-#define	IN_CLASSB_NET		0xffff0000
-#define	IN_CLASSB_NSHIFT	16
-#define	IN_CLASSB_HOST		(0xffffffff & ~IN_CLASSB_NET)
-#define	IN_CLASSB_MAX		65536
-
-#define	IN_CLASSC(a)		((((uint32_t) (a)) & 0xe0000000) == 0xc0000000)
-#define	IN_CLASSC_NET		0xffffff00
-#define	IN_CLASSC_NSHIFT	8
-#define	IN_CLASSC_HOST		(0xffffffff & ~IN_CLASSC_NET)
-
-#define	IN_CLASSD(a)		((((uint32_t) (a)) & 0xf0000000) == 0xe0000000)
-#define	IN_MULTICAST(a)		IN_CLASSD(a)
-
-#define	IN_EXPERIMENTAL(a)	((((uint32_t) (a)) & 0xe0000000) == 0xe0000000)
-#define	IN_BADCLASS(a)		((((uint32_t) (a)) & 0xf0000000) == 0xf0000000)
-
-/* Address to accept any incoming messages.  */
-#define	INADDR_ANY		((uint32_t) 0x00000000)
-/* Address to send to all hosts.  */
-#define	INADDR_BROADCAST	((uint32_t) 0xffffffff)
-/* Address indicating an error return.  */
-#define	INADDR_NONE		((uint32_t) 0xffffffff)
-
-/* Network number for local host loopback.  */
-#define	IN_LOOPBACKNET		127
-/* Address to loopback in software to local host.  */
-#ifndef INADDR_LOOPBACK
-# define INADDR_LOOPBACK	((uint32_t) 0x7f000001)	/* Inet 127.0.0.1.  */
-#endif
-
-/* Defines for Multicast INADDR.  */
-#define INADDR_UNSPEC_GROUP	((uint32_t) 0xe0000000)      /* 224.0.0.0 */
-#define INADDR_ALLHOSTS_GROUP	((uint32_t) 0xe0000001)      /* 224.0.0.1 */
-#define INADDR_ALLRTRS_GROUP    ((uint32_t) 0xe0000002)      /* 224.0.0.2 */
-#define INADDR_MAX_LOCAL_GROUP  ((uint32_t) 0xe00000ff)      /* 224.0.0.255 */
-
-
-/* IPv6 address */
-struct in6_addr
-  {
-    union
-      {
-	uint8_t		u6_addr8[16];
-	uint16_t	u6_addr16[8];
-	uint32_t	u6_addr32[4];
-#if ULONG_MAX > 0xffffffff
-	uint64_t	u6_addr64[2];
-#endif
-      } in6_u;
-#define s6_addr			in6_u.u6_addr8
-#define s6_addr16		in6_u.u6_addr16
-#define s6_addr32		in6_u.u6_addr32
-#define s6_addr64		in6_u.u6_addr64
-  };
-
-extern const struct in6_addr in6addr_any;        /* :: */
-extern const struct in6_addr in6addr_loopback;   /* ::1 */
-#define IN6ADDR_ANY_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } }
-#define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }
-
-#define INET_ADDRSTRLEN 16
-#define INET6_ADDRSTRLEN 46
-
-/* Get the definition of the macro to define the common sockaddr members.  */
-#include <bits/sockaddr.h>
-
-
-/* Structure describing an Internet socket address.  */
-struct sockaddr_in
-  {
-    __SOCKADDR_COMMON (sin_);
-    uint16_t sin_port;			/* Port number.  */
-    struct in_addr sin_addr;		/* Internet address.  */
-
-    /* Pad to size of `struct sockaddr'.  */
-    unsigned char sin_zero[sizeof (struct sockaddr) -
-			   __SOCKADDR_COMMON_SIZE -
-			   sizeof (uint16_t) -
-			   sizeof (struct in_addr)];
-  };
-
-/* Ditto, for IPv6.  */
-struct sockaddr_in6
-  {
-    __SOCKADDR_COMMON (sin6_);
-    uint16_t sin6_port;		/* Transport layer port # */
-    uint32_t sin6_flowinfo;	/* IPv6 flow information */
-    struct in6_addr sin6_addr;	/* IPv6 address */
-  };
-
-/* IPv6 multicast request.  */
-struct ipv6_mreq
-  {
-    /* IPv6 multicast address of group */
-    struct in6_addr ipv6mr_multiaddr;
-
-    /* local interface */
-    unsigned int ipv6mr_interface;
-  };
-
-/* Get system-specific definitions.  */
-#include <bits/in.h>
-
-/* Functions to convert between host and network byte order.
-
-   Please note that these functions normally take `unsigned long int' or
-   `unsigned short int' values as arguments and also return them.  But
-   this was a short-sighted decision since on different systems the types
-   may have different representations but the values are always the same.  */
-
-extern uint32_t ntohl __P ((uint32_t __netlong));
-extern uint16_t ntohs __P ((uint16_t __netshort));
-extern uint32_t htonl __P ((uint32_t __hostlong));
-extern uint16_t htons __P ((uint16_t __hostshort));
-
-#include <endian.h>
-
-/* Get machine dependent optimized versions of byte swapping functions.  */
-#include <bits/byteswap.h>
-
-#if __BYTE_ORDER == __BIG_ENDIAN && defined __OPTIMIZE__
-/* The host byte order is the same as network byte order,
-   so these functions are all just identity.  */
-# define ntohl(x)	(x)
-# define ntohs(x)	(x)
-# define htonl(x)	(x)
-# define htons(x)	(x)
-#else
-# if __BYTE_ORDER == __LITTLE_ENDIAN && defined __OPTIMIZE__
-#  define ntohl(x)	__bswap_32 (x)
-#  define ntohs(x)	__bswap_16 (x)
-#  define htonl(x)	__bswap_32 (x)
-#  define htons(x)	__bswap_16 (x)
-# endif
-#endif
-
-#define IN6_IS_ADDR_UNSPECIFIED(a) \
-	(((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \
-	 ((uint32_t *) (a))[2] == 0 && ((uint32_t *) (a))[3] == 0)
-
-#define IN6_IS_ADDR_LOOPBACK(a) \
-	(((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \
-	 ((uint32_t *) (a))[2] == 0 && ((uint32_t *) (a))[3] == htonl (1))
-
-#define IN6_IS_ADDR_MULTICAST(a) (((u_int8_t *) (a))[0] == 0xff)
-
-#define IN6_IS_ADDR_LINKLOCAL(a) \
-	((((uint32_t *) (a))[0] & htonl (0xffc00000)) == htonl (0xfe800000))
-
-#define IN6_IS_ADDR_SITELOCAL(a) \
-	((((uint32_t *) (a))[0] & htonl (0xffc00000)) == htonl (0xfec00000))
-
-#define IN6_IS_ADDR_V4MAPPED(a) \
-	((((uint32_t *) (a))[0] == 0) && (((uint32_t *) (a))[1] == 0) && \
-	 (((uint32_t *) (a))[2] == htonl (0xffff)))
-
-#define IN6_IS_ADDR_V4COMPAT(a) \
-	((((uint32_t *) (a))[0] == 0) && (((uint32_t *) (a))[1] == 0) && \
-	 (((uint32_t *) (a))[2] == 0) && (ntohl (((uint32_t *) (a))[3]) > 1))
-
-#define IN6_ARE_ADDR_EQUAL(a,b) \
-	((((uint32_t *) (a))[0] == ((uint32_t *) (b))[0]) && \
-	 (((uint32_t *) (a))[1] == ((uint32_t *) (b))[2]) && \
-	 (((uint32_t *) (a))[2] == ((uint32_t *) (b))[1]) && \
-	 (((uint32_t *) (a))[3] == ((uint32_t *) (b))[3]))
-
-/* Bind socket to a privileged IP port.  */
-extern int bindresvport __P ((int __sockfd, struct sockaddr_in *__sock_in));
-
-
-
-#define IN6_IS_ADDR_MC_NODELOCAL(a) \
-	(IN6_IS_ADDR_MULTICAST(a) && ((((u_int8_t *) (a))[1] & 0xf) == 0x1))
-
-#define IN6_IS_ADDR_MC_LINKLOCAL(a) \
-	(IN6_IS_ADDR_MULTICAST(a) && ((((u_int8_t *) (a))[1] & 0xf) == 0x2))
-
-#define IN6_IS_ADDR_MC_SITELOCAL(a) \
-	(IN6_IS_ADDR_MULTICAST(a) && ((((u_int8_t *) (a))[1] & 0xf) == 0x5))
-
-#define IN6_IS_ADDR_MC_ORGLOCAL(a) \
-	(IN6_IS_ADDR_MULTICAST(a) && ((((u_int8_t *) (a))[1] & 0xf) == 0x8))
-
-#define IN6_IS_ADDR_MC_GLOBAL(a) \
-	(IN6_IS_ADDR_MULTICAST(a) && ((((u_int8_t *) (a))[1] & 0xf) == 0xe))
-
-/* IPv6 packet information.  */
-struct in6_pktinfo
-  {
-    struct in6_addr	ipi6_addr;    /* src/dst IPv6 address */
-    unsigned int	ipi6_ifindex; /* send/recv interface index */
-  };
-
-__END_DECLS
-
-#endif	/* netinet/in.h */

+ 0 - 41
include/netinet/in_systm.h

@@ -1,41 +0,0 @@
-/* System specific type definitions for networking code.
-   Copyright (C) 1997 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_IN_SYSTM_H
-#define _NETINET_IN_SYSTM_H 1
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-
-__BEGIN_DECLS
-
-/*
- * Network order versions of various data types. Unfortunately, BSD
- * assumes specific sizes for shorts (16 bit) and longs (32 bit) which
- * don't hold in general. As a consequence, the network order versions
- * may not reflect the actual size of the native data types.
- */
-
-typedef u_int16_t n_short;      /* short as received from the net */
-typedef u_int32_t n_long;       /* long as received from the net  */
-typedef u_int32_t n_time;       /* ms since 00:00 GMT, byte rev   */
-
-__END_DECLS
-
-#endif /* netinet/in_systm.h */

+ 0 - 276
include/netinet/ip.h

@@ -1,276 +0,0 @@
-/* Copyright (C) 1991, 92, 93, 95, 96, 97, 98 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef __NETINET_IP_H
-#define __NETINET_IP_H 1
-
-#include <features.h>
-#include <sys/types.h>
-
-#include <netinet/in.h>
-
-__BEGIN_DECLS
-
-struct timestamp
-  {
-    u_int8_t len;
-    u_int8_t ptr;
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-    unsigned int flags:4;
-    unsigned int overflow:4;
-#elif __BYTE_ORDER == __BIG_ENDIAN
-    unsigned int overflow:4;
-    unsigned int flags:4;
-#else
-# error	"Please fix <bits/endian.h>"
-#endif
-    u_int32_t data[9];
-  };
-
-struct ip_options
-  {
-    u_int32_t faddr;		/* Saved first hop address */
-    u_int8_t optlen;
-    u_int8_t srr;
-    u_int8_t rr;
-    u_int8_t ts;
-    unsigned int is_setbyuser:1;   /* Set by setsockopt?		  */
-    unsigned int is_data:1;	   /* Options in __data, rather than skb  */
-    unsigned int is_strictroute:1; /* Strict source route		  */
-    unsigned int srr_is_hit:1;	   /* Packet destination addr was our one */
-    unsigned int is_changed:1;	   /* IP checksum more not valid	  */
-    unsigned int rr_needaddr:1;	   /* Need to record addr of outgoing dev */
-    unsigned int ts_needtime:1;	   /* Need to record timestamp		  */
-    unsigned int ts_needaddr:1;	   /* Need to record addr of outgoing dev */
-    u_int8_t router_alert;
-    u_int8_t __pad1;
-    u_int8_t __pad2;
-#ifdef __GNUC__
-    u_int8_t __data[0];
-#endif
-  };
-
-struct iphdr
-  {
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-    unsigned int ihl:4;
-    unsigned int version:4;
-#elif __BYTE_ORDER == __BIG_ENDIAN
-    unsigned int version:4;
-    unsigned int ihl:4;
-#else
-# error	"Please fix <bits/endian.h>"
-#endif
-    u_int8_t tos;
-    u_int16_t tot_len;
-    u_int16_t id;
-    u_int16_t frag_off;
-    u_int8_t ttl;
-    u_int8_t protocol;
-    u_int16_t check;
-    u_int32_t saddr;
-    u_int32_t daddr;
-    /*The options start here. */
-  };
-
-#ifdef __USE_BSD
-/*
- * 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.
- * 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.
- *
- *	@(#)ip.h	8.1 (Berkeley) 6/10/93
- */
-
-/*
- * Definitions for internet protocol version 4.
- * Per RFC 791, September 1981.
- */
-
-/*
- * Structure of an internet header, naked of options.
- */
-struct ip
-  {
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-    unsigned int ip_hl:4;		/* header length */
-    unsigned int ip_v:4;		/* version */
-#endif
-#if __BYTE_ORDER == __BIG_ENDIAN
-    unsigned int ip_v:4;		/* version */
-    unsigned int ip_hl:4;		/* header length */
-#endif
-    u_int8_t ip_tos;			/* type of service */
-    u_short ip_len;			/* total length */
-    u_short ip_id;			/* identification */
-    u_short ip_off;			/* fragment offset field */
-#define	IP_RF 0x8000			/* reserved fragment flag */
-#define	IP_DF 0x4000			/* dont fragment flag */
-#define	IP_MF 0x2000			/* more fragments flag */
-#define	IP_OFFMASK 0x1fff		/* mask for fragmenting bits */
-    u_int8_t ip_ttl;			/* time to live */
-    u_int8_t ip_p;			/* protocol */
-    u_short ip_sum;			/* checksum */
-    struct in_addr ip_src, ip_dst;	/* source and dest address */
-  };
-
-/*
- * Time stamp option structure.
- */
-struct ip_timestamp
-  {
-    u_int8_t ipt_code;			/* IPOPT_TS */
-    u_int8_t ipt_len;			/* size of structure (variable) */
-    u_int8_t ipt_ptr;			/* index of current entry */
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-    unsigned int ipt_flg:4;		/* flags, see below */
-    unsigned int ipt_oflw:4;		/* overflow counter */
-#endif
-#if __BYTE_ORDER == __BIG_ENDIAN
-    unsigned int ipt_oflw:4;		/* overflow counter */
-    unsigned int ipt_flg:4;		/* flags, see below */
-#endif
-    u_int32_t data[9];
-  };
-#endif /* __USE_BSD */
-
-#define	IPVERSION	4               /* IP version number */
-#define	IP_MAXPACKET	65535		/* maximum packet size */
-
-/*
- * Definitions for IP type of service (ip_tos)
- */
-#define	IPTOS_TOS_MASK		0x1E
-#define	IPTOS_TOS(tos)		((tos) & IPTOS_TOS_MASK)
-#define	IPTOS_LOWDELAY		0x10
-#define	IPTOS_THROUGHPUT	0x08
-#define	IPTOS_RELIABILITY	0x04
-#define	IPTOS_LOWCOST		0x02
-#define	IPTOS_MINCOST		IPTOS_LOWCOST
-
-/*
- * Definitions for IP precedence (also in ip_tos) (hopefully unused)
- */
-#define	IPTOS_PREC_MASK			0xe0
-#define	IPTOS_PREC(tos)                ((tos) & IPTOS_PREC_MASK)
-#define	IPTOS_PREC_NETCONTROL		0xe0
-#define	IPTOS_PREC_INTERNETCONTROL	0xc0
-#define	IPTOS_PREC_CRITIC_ECP		0xa0
-#define	IPTOS_PREC_FLASHOVERRIDE	0x80
-#define	IPTOS_PREC_FLASH		0x60
-#define	IPTOS_PREC_IMMEDIATE		0x40
-#define	IPTOS_PREC_PRIORITY		0x20
-#define	IPTOS_PREC_ROUTINE		0x00
-
-/*
- * Definitions for options.
- */
-#define	IPOPT_COPY		0x80
-#define	IPOPT_CLASS_MASK	0x60
-#define	IPOPT_NUMBER_MASK	0x1f
-
-#define	IPOPT_COPIED(o)		((o) & IPOPT_COPY)
-#define	IPOPT_CLASS(o)		((o) & IPOPT_CLASS_MASK)
-#define	IPOPT_NUMBER(o)		((o) & IPOPT_NUMBER_MASK)
-
-#define	IPOPT_CONTROL		0x00
-#define	IPOPT_RESERVED1		0x20
-#define	IPOPT_DEBMEAS		0x40
-#define	IPOPT_MEASUREMENT       IPOPT_DEBMEAS
-#define	IPOPT_RESERVED2		0x60
-
-#define	IPOPT_EOL		0		/* end of option list */
-#define	IPOPT_END		IPOPT_EOL
-#define	IPOPT_NOP		1		/* no operation */
-#define	IPOPT_NOOP		IPOPT_NOP
-
-#define	IPOPT_RR		7		/* record packet route */
-#define	IPOPT_TS		68		/* timestamp */
-#define	IPOPT_TIMESTAMP		IPOPT_TS
-#define	IPOPT_SECURITY		130		/* provide s,c,h,tcc */
-#define	IPOPT_SEC		IPOPT_SECURITY
-#define	IPOPT_LSRR		131		/* loose source route */
-#define	IPOPT_SATID		136		/* satnet id */
-#define	IPOPT_SID		IPOPT_SATID
-#define	IPOPT_SSRR		137		/* strict source route */
-#define	IPOPT_RA		148		/* router alert */
-
-/*
- * Offsets to fields in options other than EOL and NOP.
- */
-#define	IPOPT_OPTVAL		0		/* option ID */
-#define	IPOPT_OLEN		1		/* option length */
-#define	IPOPT_OFFSET		2		/* offset within option */
-#define	IPOPT_MINOFF		4		/* min value of above */
-
-#define	MAX_IPOPTLEN		40
-
-/* flag bits for ipt_flg */
-#define	IPOPT_TS_TSONLY		0		/* timestamps only */
-#define	IPOPT_TS_TSANDADDR	1		/* timestamps and addresses */
-#define	IPOPT_TS_PRESPEC	3		/* specified modules only */
-
-/* bits for security (not byte swapped) */
-#define	IPOPT_SECUR_UNCLASS	0x0000
-#define	IPOPT_SECUR_CONFID	0xf135
-#define	IPOPT_SECUR_EFTO	0x789a
-#define	IPOPT_SECUR_MMMM	0xbc4d
-#define	IPOPT_SECUR_RESTR	0xaf13
-#define	IPOPT_SECUR_SECRET	0xd788
-#define	IPOPT_SECUR_TOPSECRET	0x6bc5
-
-/*
- * Internet implementation parameters.
- */
-#define	MAXTTL		255		/* maximum time to live (seconds) */
-#define	IPDEFTTL	64		/* default ttl, from RFC 1340 */
-#define	IPFRAGTTL	60		/* time to live for frags, slowhz */
-#define	IPTTLDEC	1		/* subtracted when forwarding */
-
-#define	IP_MSS		576		/* default maximum segment size */
-
-__END_DECLS
-
-#endif /* netinet/ip.h */

+ 0 - 106
include/netinet/ip6.h

@@ -1,106 +0,0 @@
-/* Copyright (C) 1991, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef _NETINET_IP6_H
-#define _NETINET_IP6_H 1
-
-#include <inttypes.h>
-#include <netinet/in.h>
-
-struct ip6_hdr 
-  {
-    union 
-      {
-	struct ip6_hdrctl 
-	  {
-	    uint32_t ip6_un1_flow;   /* 24 bits of flow-ID */
-	    uint16_t ip6_un1_plen;   /* payload length */
-	    uint8_t  ip6_un1_nxt;    /* next header */
-	    uint8_t  ip6_un1_hlim;   /* hop limit */
-	  } ip6_un1;
-	uint8_t ip6_un2_vfc;       /* 4 bits version, 4 bits priority */
-      } ip6_ctlun;
-    struct in6_addr ip6_src;      /* source address */
-    struct in6_addr ip6_dst;      /* destination address */
-  };
-
-#define ip6_vfc   ip6_ctlun.ip6_un2_vfc
-#define ip6_flow  ip6_ctlun.ip6_un1.ip6_un1_flow
-#define ip6_plen  ip6_ctlun.ip6_un1.ip6_un1_plen
-#define ip6_nxt   ip6_ctlun.ip6_un1.ip6_un1_nxt
-#define ip6_hlim  ip6_ctlun.ip6_un1.ip6_un1_hlim
-#define ip6_hops  ip6_ctlun.ip6_un1.ip6_un1_hlim
-
-/* Hop-by-Hop options header.  */
-struct ip6_hbh 
-  {
-    uint8_t  ip6h_nxt;        /* next hesder.  */
-    uint8_t  ip6h_len;        /* length in units of 8 octets.  */
-    /* followed by options */
-  };
-
-/* Destination options header */
-struct ip6_dest 
-  {
-    uint8_t  ip6d_nxt;        /* next header */
-    uint8_t  ip6d_len;        /* length in units of 8 octets */
-    /* followed by options */
-  };
-
-/* Routing header */
-struct ip6_rthdr 
-  {
-    uint8_t  ip6r_nxt;        /* next header */
-    uint8_t  ip6r_len;        /* length in units of 8 octets */
-    uint8_t  ip6r_type;       /* routing type */
-    uint8_t  ip6r_segleft;    /* segments left */
-    /* followed by routing type specific data */
-  };
-
-/* Type 0 Routing header */
-struct ip6_rthdr0 
-  {
-    uint8_t  ip6r0_nxt;       /* next header */
-    uint8_t  ip6r0_len;       /* length in units of 8 octets */
-    uint8_t  ip6r0_type;      /* always zero */
-    uint8_t  ip6r0_segleft;   /* segments left */
-    uint8_t  ip6r0_reserved;  /* reserved field */
-    uint8_t  ip6r0_slmap[3];  /* strict/loose bit map */
-    struct in6_addr  ip6r0_addr[1];  /* up to 23 addresses */
-  };
-
-/* Fragment header */
-struct ip6_frag 
-  {
-    uint8_t   ip6f_nxt;       /* next header */
-    uint8_t   ip6f_reserved;  /* reserved field */
-    uint16_t  ip6f_offlg;     /* offset, reserved, and flag */
-    uint32_t  ip6f_ident;     /* identification */
-  };
-
-#if     BYTE_ORDER == BIG_ENDIAN
-#define IP6F_OFF_MASK       0xfff8  /* mask out offset from _offlg */
-#define IP6F_RESERVED_MASK  0x0006  /* reserved bits in ip6f_offlg */
-#define IP6F_MORE_FRAG      0x0001  /* more-fragments flag */
-#else   /* BYTE_ORDER == LITTLE_ENDIAN */
-#define IP6F_OFF_MASK       0xf8ff  /* mask out offset from _offlg */
-#define IP6F_RESERVED_MASK  0x0600  /* reserved bits in ip6f_offlg */
-#define IP6F_MORE_FRAG      0x0100  /* more-fragments flag */
-#endif
-
-#endif /* netinet/ip6.h */

+ 0 - 1
include/netinet/ip_fw.h

@@ -1 +0,0 @@
-#include <linux/ip_fw.h>

+ 0 - 287
include/netinet/ip_icmp.h

@@ -1,287 +0,0 @@
-/* Copyright (C) 1991, 92, 93, 95, 96, 97 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-#ifndef __NETINET_IP_ICMP_H
-#define __NETINET_IP_ICMP_H    1
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-
-__BEGIN_DECLS
-
-struct icmphdr
-{
-  u_int8_t type;		/* message type */
-  u_int8_t code;		/* type sub-code */
-  u_int16_t checksum;
-  union
-  {
-    struct
-    {
-      u_int16_t	id;
-      u_int16_t	sequence;
-    } echo;			/* echo datagram */
-    u_int32_t	gateway;	/* gateway address */
-    struct
-    {
-      u_int16_t	__unused;
-      u_int16_t	mtu;
-    } frag;			/* path mtu discovery */
-  } un;
-};
-
-#define ICMP_ECHOREPLY		0	/* Echo Reply			*/
-#define ICMP_DEST_UNREACH	3	/* Destination Unreachable	*/
-#define ICMP_SOURCE_QUENCH	4	/* Source Quench		*/
-#define ICMP_REDIRECT		5	/* Redirect (change route)	*/
-#define ICMP_ECHO		8	/* Echo Request			*/
-#define ICMP_TIME_EXCEEDED	11	/* Time Exceeded		*/
-#define ICMP_PARAMETERPROB	12	/* Parameter Problem		*/
-#define ICMP_TIMESTAMP		13	/* Timestamp Request		*/
-#define ICMP_TIMESTAMPREPLY	14	/* Timestamp Reply		*/
-#define ICMP_INFO_REQUEST	15	/* Information Request		*/
-#define ICMP_INFO_REPLY		16	/* Information Reply		*/
-#define ICMP_ADDRESS		17	/* Address Mask Request		*/
-#define ICMP_ADDRESSREPLY	18	/* Address Mask Reply		*/
-#define NR_ICMP_TYPES		18
-
-
-/* Codes for UNREACH. */
-#define ICMP_NET_UNREACH	0	/* Network Unreachable		*/
-#define ICMP_HOST_UNREACH	1	/* Host Unreachable		*/
-#define ICMP_PROT_UNREACH	2	/* Protocol Unreachable		*/
-#define ICMP_PORT_UNREACH	3	/* Port Unreachable		*/
-#define ICMP_FRAG_NEEDED	4	/* Fragmentation Needed/DF set	*/
-#define ICMP_SR_FAILED		5	/* Source Route failed		*/
-#define ICMP_NET_UNKNOWN	6
-#define ICMP_HOST_UNKNOWN	7
-#define ICMP_HOST_ISOLATED	8
-#define ICMP_NET_ANO		9
-#define ICMP_HOST_ANO		10
-#define ICMP_NET_UNR_TOS	11
-#define ICMP_HOST_UNR_TOS	12
-#define ICMP_PKT_FILTERED	13	/* Packet filtered */
-#define ICMP_PREC_VIOLATION	14	/* Precedence violation */
-#define ICMP_PREC_CUTOFF	15	/* Precedence cut off */
-#define NR_ICMP_UNREACH		15	/* instead of hardcoding immediate value */
-
-/* Codes for REDIRECT. */
-#define ICMP_REDIR_NET		0	/* Redirect Net			*/
-#define ICMP_REDIR_HOST		1	/* Redirect Host		*/
-#define ICMP_REDIR_NETTOS	2	/* Redirect Net for TOS		*/
-#define ICMP_REDIR_HOSTTOS	3	/* Redirect Host for TOS	*/
-
-/* Codes for TIME_EXCEEDED. */
-#define ICMP_EXC_TTL		0	/* TTL count exceeded		*/
-#define ICMP_EXC_FRAGTIME	1	/* Fragment Reass time exceeded	*/
-
-
-#ifdef __USE_BSD
-/*
- * 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.
- * 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.
- *
- *	@(#)ip_icmp.h	8.1 (Berkeley) 6/10/93
- */
-
-#include <netinet/in.h>
-#include <netinet/ip.h>
-
-/*
- * Internal of an ICMP Router Advertisement
- */
-struct icmp_ra_addr
-{
-  u_int32_t ira_addr;
-  u_int32_t ira_preference;
-};
-
-struct icmp
-{
-  u_int8_t  icmp_type;	/* type of message, see below */
-  u_int8_t  icmp_code;	/* type sub code */
-  u_int16_t icmp_cksum;	/* ones complement checksum of struct */
-  union
-  {
-    u_char ih_pptr;		/* ICMP_PARAMPROB */
-    struct in_addr ih_gwaddr;	/* gateway address */
-    struct ih_idseq		/* echo datagram */
-    {
-      u_int16_t icd_id;
-      u_int16_t icd_seq;
-    } ih_idseq;
-    u_int32_t ih_void;
-
-    /* ICMP_UNREACH_NEEDFRAG -- Path MTU Discovery (RFC1191) */
-    struct ih_pmtu
-    {
-      u_int16_t ipm_void;
-      u_int16_t ipm_nextmtu;
-    } ih_pmtu;
-
-    struct ih_rtradv
-    {
-      u_int8_t irt_num_addrs;
-      u_int8_t irt_wpa;
-      u_int16_t irt_lifetime;
-    } ih_rtradv;
-  } icmp_hun;
-#define	icmp_pptr	icmp_hun.ih_pptr
-#define	icmp_gwaddr	icmp_hun.ih_gwaddr
-#define	icmp_id		icmp_hun.ih_idseq.icd_id
-#define	icmp_seq	icmp_hun.ih_idseq.icd_seq
-#define	icmp_void	icmp_hun.ih_void
-#define	icmp_pmvoid	icmp_hun.ih_pmtu.ipm_void
-#define	icmp_nextmtu	icmp_hun.ih_pmtu.ipm_nextmtu
-#define	icmp_num_addrs	icmp_hun.ih_rtradv.irt_num_addrs
-#define	icmp_wpa	icmp_hun.ih_rtradv.irt_wpa
-#define	icmp_lifetime	icmp_hun.ih_rtradv.irt_lifetime
-  union
-  {
-    struct
-    {
-      u_int32_t its_otime;
-      u_int32_t its_rtime;
-      u_int32_t its_ttime;
-    } id_ts;
-    struct
-    {
-      struct ip idi_ip;
-      /* options and then 64 bits of data */
-    } id_ip;
-    struct icmp_ra_addr id_radv;
-    u_int32_t   id_mask;
-    u_int8_t    id_data[1];
-  } icmp_dun;
-#define	icmp_otime	icmp_dun.id_ts.its_otime
-#define	icmp_rtime	icmp_dun.id_ts.its_rtime
-#define	icmp_ttime	icmp_dun.id_ts.its_ttime
-#define	icmp_ip		icmp_dun.id_ip.idi_ip
-#define	icmp_radv	icmp_dun.id_radv
-#define	icmp_mask	icmp_dun.id_mask
-#define	icmp_data	icmp_dun.id_data
-};
-
-/*
- * Lower bounds on packet lengths for various types.
- * For the error advice packets must first insure that the
- * packet is large enough to contain the returned ip header.
- * Only then can we do the check to see if 64 bits of packet
- * data have been returned, since we need to check the returned
- * ip header length.
- */
-#define	ICMP_MINLEN	8				/* abs minimum */
-#define	ICMP_TSLEN	(8 + 3 * sizeof (n_time))	/* timestamp */
-#define	ICMP_MASKLEN	12				/* address mask */
-#define	ICMP_ADVLENMIN	(8 + sizeof (struct ip) + 8)	/* min */
-#ifndef _IP_VHL
-#define	ICMP_ADVLEN(p)	(8 + ((p)->icmp_ip.ip_hl << 2) + 8)
-	/* N.B.: must separately check that ip_hl >= 5 */
-#else
-#define	ICMP_ADVLEN(p)	(8 + (IP_VHL_HL((p)->icmp_ip.ip_vhl) << 2) + 8)
-	/* N.B.: must separately check that header length >= 5 */
-#endif
-
-/* Definition of type and code fields. */
-/* defined above: ICMP_ECHOREPLY, ICMP_REDIRECT, ICMP_ECHO */
-#define	ICMP_UNREACH		3		/* dest unreachable, codes: */
-#define	ICMP_SOURCEQUENCH	4		/* packet lost, slow down */
-#define	ICMP_ROUTERADVERT	9		/* router advertisement */
-#define	ICMP_ROUTERSOLICIT	10		/* router solicitation */
-#define	ICMP_TIMXCEED		11		/* time exceeded, code: */
-#define	ICMP_PARAMPROB		12		/* ip header bad */
-#define	ICMP_TSTAMP		13		/* timestamp request */
-#define	ICMP_TSTAMPREPLY	14		/* timestamp reply */
-#define	ICMP_IREQ		15		/* information request */
-#define	ICMP_IREQREPLY		16		/* information reply */
-#define	ICMP_MASKREQ		17		/* address mask request */
-#define	ICMP_MASKREPLY		18		/* address mask reply */
-
-#define	ICMP_MAXTYPE		18
-
-/* UNREACH codes */
-#define	ICMP_UNREACH_NET	        0	/* bad net */
-#define	ICMP_UNREACH_HOST	        1	/* bad host */
-#define	ICMP_UNREACH_PROTOCOL	        2	/* bad protocol */
-#define	ICMP_UNREACH_PORT	        3	/* bad port */
-#define	ICMP_UNREACH_NEEDFRAG	        4	/* IP_DF caused drop */
-#define	ICMP_UNREACH_SRCFAIL	        5	/* src route failed */
-#define	ICMP_UNREACH_NET_UNKNOWN        6	/* unknown net */
-#define	ICMP_UNREACH_HOST_UNKNOWN       7	/* unknown host */
-#define	ICMP_UNREACH_ISOLATED	        8	/* src host isolated */
-#define	ICMP_UNREACH_NET_PROHIB	        9	/* net denied */
-#define	ICMP_UNREACH_HOST_PROHIB        10	/* host denied */
-#define	ICMP_UNREACH_TOSNET	        11	/* bad tos for net */
-#define	ICMP_UNREACH_TOSHOST	        12	/* bad tos for host */
-#define	ICMP_UNREACH_FILTER_PROHIB      13	/* admin prohib */
-#define	ICMP_UNREACH_HOST_PRECEDENCE    14	/* host prec vio. */
-#define	ICMP_UNREACH_PRECEDENCE_CUTOFF  15	/* prec cutoff */
-
-/* REDIRECT codes */
-#define	ICMP_REDIRECT_NET	0		/* for network */
-#define	ICMP_REDIRECT_HOST	1		/* for host */
-#define	ICMP_REDIRECT_TOSNET	2		/* for tos and net */
-#define	ICMP_REDIRECT_TOSHOST	3		/* for tos and host */
-
-/* TIMEXCEED codes */
-#define	ICMP_TIMXCEED_INTRANS	0		/* ttl==0 in transit */
-#define	ICMP_TIMXCEED_REASS	1		/* ttl==0 in reass */
-
-/* PARAMPROB code */
-#define	ICMP_PARAMPROB_OPTABSENT 1		/* req. opt. absent */
-
-#define	ICMP_INFOTYPE(type) \
-	((type) == ICMP_ECHOREPLY || (type) == ICMP_ECHO || \
-	(type) == ICMP_ROUTERADVERT || (type) == ICMP_ROUTERSOLICIT || \
-	(type) == ICMP_TSTAMP || (type) == ICMP_TSTAMPREPLY || \
-	(type) == ICMP_IREQ || (type) == ICMP_IREQREPLY || \
-	(type) == ICMP_MASKREQ || (type) == ICMP_MASKREPLY)
-
-#endif /* __USE_BSD */
-
-__END_DECLS
-
-#endif /* netinet/ip_icmp.h */

+ 0 - 72
include/netinet/ip_tcp.h

@@ -1,72 +0,0 @@
-/*
- * Copyright (c) 1982, 1986 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley.  The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- *	@(#)tcp.h	7.5 (Berkeley) 6/29/88
- */
-
-#ifndef _NETINET_IP_TCP_H
-#define _NETINET_IP_TCP_H
-
-#include <endian.h>
-#include <linux/socket.h>
-#include <sys/types.h>
-
-typedef	u_long	tcp_seq;
-/*
- * TCP header.
- * Per RFC 793, September, 1981.
- */
-struct tcphdr {
-	u_short	th_sport;		/* source port */
-	u_short	th_dport;		/* destination port */
-	tcp_seq	th_seq;			/* sequence number */
-	tcp_seq	th_ack;			/* acknowledgement number */
-#if __BYTE_ORDER == __LITTLE_ENDIAN 
-	u_char	th_x2:4,		/* (unused) */
-		th_off:4;		/* data offset */
-#endif
-#if __BYTE_ORDER == __BIG_ENDIAN 
-	u_char	th_off:4,		/* data offset */
-		th_x2:4;		/* (unused) */
-#endif
-	u_char	th_flags;
-#define	TH_FIN	0x01
-#define	TH_SYN	0x02
-#define	TH_RST	0x04
-#define	TH_PUSH	0x08
-#define	TH_ACK	0x10
-#define	TH_URG	0x20
-	u_short	th_win;			/* window */
-	u_short	th_sum;			/* checksum */
-	u_short	th_urp;			/* urgent pointer */
-};
-
-#define	TCPOPT_EOL	0
-#define	TCPOPT_NOP	1
-#define	TCPOPT_MAXSEG	2
-
-/*
- * Default maximum segment size for TCP.
- * With an IP MSS of 576, this is 536,
- * but 512 is probably more convenient.
- */
-#ifdef	lint
-#define	TCP_MSS	536
-#else
-#define	TCP_MSS	MIN(512, IP_MSS - sizeof (struct tcpiphdr))
-#endif
-
-#endif /* _NETINET_TCP_H */

+ 0 - 1
include/netinet/ip_udp.h

@@ -1 +0,0 @@
-#include <linux/udp.h>

+ 0 - 62
include/netinet/protocols.h

@@ -1,62 +0,0 @@
-/* protocols.h */
-#ifndef _NETINET_PROTOCOLS_H
-#define _NETINET_PROTOCOLS_H
-
-#define IP_ICMP		  1
-#define IP_IGMP		  2
-#define IP_GGP 		  3
-#define IP_ST  		  5
-#define IP_TCP 		  6
-#define IP_UCL 		  7
-#define IP_EGP 		  8
-#define IP_IGP 		  9
-#define IP_BBN_RCC_MON	 10
-#define IP_NVP_II	 11
-#define IP_PUP		 12
-#define IP_ARGUS	 13
-#define IP_EMCON	 14
-#define IP_XNET		 15
-#define IP_CHAOS	 16
-#define IP_UDP		 17
-#define IP_MUX		 18
-#define IP_DCN_MEAS	 19
-#define IP_HMP		 20
-#define IP_PRM		 21
-#define IP_XNS_IDP	 22
-#define IP_TRUNK1	 23
-#define IP_TRUNK2	 24
-#define IP_LEAF1	 25
-#define IP_LEAF2	 26
-#define IP_RDP		 27
-#define IP_IRTP		 28
-#define IP_ISO_TP4	 29
-#define IP_NETBLT	 30
-#define IP_MFE_NSP	 31
-#define IP_MERIT_INP	 32
-#define IP_SEP		 33
-#define IP_3PC		 34
-#define IP_CFTP		 62
-#define SAT_EXPAK	 64
-#define IP_RVD		 66
-#define IP_IPPC		 67
-#define IP_SAT_MON	 69
-#define IP_VISA		 70
-#define IP_IPCV		 71
-#define IP_BR_SAT_MON	 76
-#define IP_SUN_ND	 77
-#define IP_WB_MON	 78
-#define IP_WB_EXPAK	 79
-#define IP_ISO_IP	 80
-#define IP_VMTP		 81
-#define IP_SECURE_VMTP	 82
-#define IP_VINES	 83
-#define IP_TTP		 84
-#define NSFNET_IGP	 85
-#define IP_DGP		 86
-#define IP_TCF		 87
-#define IP_IGRP		 88
-#define IP_OSPFIGP	 89
-#define IP_SPRITE_RPG	 90
-#define IP_LARP		 91
-
-#endif /*  _NETINET_PROTOCOLS_H*/

+ 0 - 166
include/netinet/tcp.h

@@ -1,166 +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.
- * 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.
- *
- *	@(#)tcp.h	8.1 (Berkeley) 6/10/93
- */
-
-#ifndef _NETINET_TCP_H
-#define _NETINET_TCP_H	1
-
-#include <features.h>
-#include <sys/types.h>
-
-__BEGIN_DECLS
-
-#ifdef __FAVOR_BSD
-typedef	u_int32_t tcp_seq;
-/*
- * TCP header.
- * Per RFC 793, September, 1981.
- */
-struct tcphdr
-  {
-    u_int16_t th_sport;		/* source port */
-    u_int16_t th_dport;		/* destination port */
-    tcp_seq th_seq;		/* sequence number */
-    tcp_seq th_ack;		/* acknowledgement number */
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-    u_int8_t th_x2:4;		/* (unused) */
-    u_int8_t th_off:4;		/* data offset */
-#endif
-#if __BYTE_ORDER == __BIG_ENDIAN
-    u_int8_t th_off:4;		/* data offset */
-    u_int8_t th_x2:4;		/* (unused) */
-#endif
-    u_int8_t th_flags;
-#define	TH_FIN	0x01
-#define	TH_SYN	0x02
-#define	TH_RST	0x04
-#define	TH_PUSH	0x08
-#define	TH_ACK	0x10
-#define	TH_URG	0x20
-    u_int16_t th_win;		/* window */
-    u_int16_t th_sum;		/* checksum */
-    u_int16_t th_urp;		/* urgent pointer */
-};
-
-#else /* !__FAVOR_BSD */
-struct tcphdr
-  {
-    u_int16_t source;
-    u_int16_t dest;
-    u_int32_t seq;
-    u_int32_t ack_seq;
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-    u_int16_t res1:4;
-    u_int16_t doff:4;
-    u_int16_t fin:1;
-    u_int16_t syn:1;
-    u_int16_t rst:1;
-    u_int16_t psh:1;
-    u_int16_t ack:1;
-    u_int16_t urg:1;
-    u_int16_t res2:2;
-#elif __BYTE_ORDER == __BIG_ENDIAN
-    u_int16_t doff:4;
-    u_int16_t res1:4;
-    u_int16_t res2:2;
-    u_int16_t urg:1;
-    u_int16_t ack:1;
-    u_int16_t psh:1;
-    u_int16_t rst:1;
-    u_int16_t syn:1;
-    u_int16_t fin:1;
-#else
-#error	"Adjust your <bits/endian.h> defines"
-#endif
-    u_int16_t window;
-    u_int16_t check;
-    u_int16_t urg_ptr;
-};
-#endif /* __FAVOR_BSD */
-
-enum
-{
-  TCP_ESTABLISHED = 1,
-  TCP_SYN_SENT,
-  TCP_SYN_RECV,
-  TCP_FIN_WAIT1,
-  TCP_FIN_WAIT2,
-  TCP_TIME_WAIT,
-  TCP_CLOSE,
-  TCP_CLOSE_WAIT,
-  TCP_LAST_ACK,
-  TCP_LISTEN,
-  TCP_CLOSING   /* now a valid state */
-};
-
-#define	TCPOPT_EOL		0
-#define	TCPOPT_NOP		1
-#define	TCPOPT_MAXSEG		2
-#define TCPOLEN_MAXSEG		4
-#define TCPOPT_WINDOW		3
-#define TCPOLEN_WINDOW		3
-#define TCPOPT_SACK_PERMITTED	4		/* Experimental */
-#define TCPOLEN_SACK_PERMITTED	2
-#define TCPOPT_SACK		5		/* Experimental */
-#define TCPOPT_TIMESTAMP	8
-#define TCPOLEN_TIMESTAMP	10
-#define TCPOLEN_TSTAMP_APPA	(TCPOLEN_TIMESTAMP+2) /* appendix A */
-
-#define TCPOPT_TSTAMP_HDR	\
-    (TCPOPT_NOP<<24|TCPOPT_NOP<<16|TCPOPT_TIMESTAMP<<8|TCPOLEN_TIMESTAMP)
-
-/*
- * Default maximum segment size for TCP.
- * With an IP MSS of 576, this is 536,
- * but 512 is probably more convenient.
- * This should be defined as MIN(512, IP_MSS - sizeof (struct tcpiphdr)).
- */
-#define	TCP_MSS	512
-
-#define	TCP_MAXWIN	65535	/* largest value for (unscaled) window */
-
-#define TCP_MAX_WINSHIFT	14	/* maximum window shift */
-
-/*
- * User-settable options (used with setsockopt).
- */
-#define	TCP_NODELAY	0x01	/* don't delay send to coalesce packets */
-#define	TCP_MAXSEG	0x02	/* set maximum segment size */
-#define TCP_CORK	0x03	/* control sending of partial frames */
-
-#define SOL_TCP		6	/* TCP level */
-
-__END_DECLS
-
-#endif /* netinet/tcp.h */

+ 0 - 55
include/netinet/udp.h

@@ -1,55 +0,0 @@
-/* Copyright (C) 1991, 92, 93, 95, 96, 97 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
-
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-/*
- * Copyright (c) 1982, 1986 Regents of the University of California.
- * All rights reserved.  The Berkeley software License Agreement
- * specifies the terms and conditions for redistribution.
- */
-
-#ifndef __NETINET_UDP_H
-#define __NETINET_UDP_H    1
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-
-__BEGIN_DECLS
-
-/* UDP header as specified by RFC 768, August 1980. */
-#ifdef __FAVOR_BSD
-struct udphdr {
-         u_int16_t uh_sport;           /* source port */
-         u_int16_t uh_dport;           /* destination port */
-         u_int16_t uh_ulen;            /* udp length */
-         u_int16_t uh_sum;             /* udp checksum */
-};
-#else
-
-struct udphdr {
-  u_int16_t	source;
-  u_int16_t	dest;
-  u_int16_t	len;
-  u_int16_t	check;
-};
-#endif
-
-#define SOL_UDP            17      /* sockopt level for UDP */
-
-__END_DECLS
-
-#endif /* netinet/udp.h */