diff options
Diffstat (limited to 'packages/iputils/files/remove-glibc-headers.patch')
-rw-r--r-- | packages/iputils/files/remove-glibc-headers.patch | 944 |
1 files changed, 0 insertions, 944 deletions
diff --git a/packages/iputils/files/remove-glibc-headers.patch b/packages/iputils/files/remove-glibc-headers.patch deleted file mode 100644 index 0930acd656..0000000000 --- a/packages/iputils/files/remove-glibc-headers.patch +++ /dev/null @@ -1,944 +0,0 @@ -We are not using the local glibc headers for now. -Remove them to keep them out of the way. - -diff -durN orig/include-glibc/bits/socket.h new/include-glibc/bits/socket.h ---- orig/include-glibc/bits/socket.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/bits/socket.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,280 +0,0 @@ --/* System-specific socket constants and types. Linux version. -- Copyright (C) 1991, 92, 94, 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 _SOCKETBITS_H -- --#define _SOCKETBITS_H 1 --#include <features.h> -- --#define __need_size_t --#define __need_NULL --#include <stddef.h> -- -- --__BEGIN_DECLS -- --/* Type for length arguments in socket calls. */ --#ifndef __socklen_t_defined --typedef unsigned int socklen_t; --# define __socklen_t_defined --#endif -- --/* Types of sockets. */ --enum __socket_type --{ --#ifndef __mips__ -- SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM --#else -- SOCK_STREAM = 2, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 1, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM --#endif -- SOCK_RAW = 3, /* Raw protocol interface. */ --#define SOCK_RAW SOCK_RAW -- SOCK_RDM = 4, /* Reliably-delivered messages. */ --#define SOCK_RDM SOCK_RDM -- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -- datagrams of fixed maximum length. */ --#define SOCK_SEQPACKET SOCK_SEQPACKET -- SOCK_PACKET = 10 /* Linux specific way of getting packets -- at the dev level. For writing rarp and -- other similar things on the user level. */ --#define SOCK_PACKET SOCK_PACKET --}; -- --/* Protocol families. */ --#define PF_UNSPEC 0 /* Unspecified. */ --#define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ --#define PF_UNIX PF_LOCAL /* Old BSD name for PF_LOCAL. */ --#define PF_FILE PF_LOCAL /* POSIX name for PF_LOCAL. */ --#define PF_INET 2 /* IP protocol family. */ --#define PF_AX25 3 /* Amateur Radio AX.25. */ --#define PF_IPX 4 /* Novell Internet Protocol. */ --#define PF_APPLETALK 5 /* Don't use this. */ --#define PF_NETROM 6 /* Amateur radio NetROM. */ --#define PF_BRIDGE 7 /* Multiprotocol bridge. */ --#define PF_AAL5 8 /* Reserved for Werner's ATM. */ --#define PF_X25 9 /* Reserved for X.25 project. */ --#define PF_INET6 10 /* IP version 6. */ --#define PF_ROSE 11 /* Amateur Radio X.25 PLP */ --#define PF_DECnet 12 /* Reserved for DECnet project */ --#define PF_NETBEUI 13 /* Reserved for 802.2LLC project*/ --#define PF_SECURITY 14 /* Security callback pseudo AF */ --#define PF_KEY 15 /* PF_KEY key management API */ --#define PF_NETLINK 16 --#define PF_ROUTE PF_NETLINK /* Alias to emulate 4.4BSD */ --#define PF_PACKET 17 /* Packet family */ --#define PF_MAX 32 /* For now.. */ -- --/* Address families. */ --#define AF_UNSPEC PF_UNSPEC --#define AF_LOCAL PF_LOCAL --#define AF_UNIX PF_UNIX --#define AF_FILE PF_FILE --#define AF_INET PF_INET --#define AF_AX25 PF_AX25 --#define AF_IPX PF_IPX --#define AF_APPLETALK PF_APPLETALK --#define AF_NETROM PF_NETROM --#define AF_BRIDGE PF_BRIDGE --#define AF_AAL5 PF_AAL5 --#define AF_X25 PF_X25 --#define AF_INET6 PF_INET6 --#define AF_ROSE PF_ROSE --#define AF_DECnet PF_DECnet --#define AF_NETBEUI PF_NETBEUI --#define AF_SECURITY PF_SECURITY --#define pseudo_AF_KEY pseudo_PF_KEY --#define AF_NETLINK PF_NETLINK --#define AF_ROUTE PF_ROUTE --#define AF_PACKET PF_PACKET --#define AF_MAX PF_MAX -- --/* Socket level values. Others are defined in the appropriate headers. -- -- XXX These definitions also should go into the appropriate headers as -- far as they are available. */ --#define SOL_IPV6 41 --#define SOL_ICMPV6 58 --#define SOL_RAW 255 --#define SOL_AX25 257 --#define SOL_ATALK 258 --#define SOL_NETROM 259 --#define SOL_ROSE 260 --#define SOL_DECNET 261 --#define SOL_X25 262 -- --/* Maximum queue length specifiable by listen. */ --#define SOMAXCONN 128 -- --/* Get the definition of the macro to define the common sockaddr members. */ --#if __GLIBC_MINOR__ >= 1 --#include <bits/sockaddr.h> --#else --#include <sockaddrcom.h> --#endif -- --/* Structure describing a generic socket address. */ --struct sockaddr -- { -- __SOCKADDR_COMMON (sa_); /* Common data: address family and length. */ -- char sa_data[14]; /* Address data. */ -- }; -- -- --/* Bits in the FLAGS argument to `send', `recv', et al. */ --enum -- { -- MSG_OOB = 0x01, /* Process out-of-band data. */ --#define MSG_OOB MSG_OOB -- MSG_PEEK = 0x02, /* Peek at incoming messages. */ --#define MSG_PEEK MSG_PEEK -- MSG_DONTROUTE = 0x04, /* Don't use local routing. */ --#define MSG_DONTROUTE MSG_DONTROUTE -- MSG_CTRUNC = 0x08, /* Control data lost before delivery. */ --#define MSG_CTRUNC MSG_CTRUNC -- MSG_PROBE = 0x10, --#define MSG_PROBE MSG_PROBE -- MSG_TRUNC = 0x20, --#define MSG_TRUNC MSG_TRUNC -- MSG_DONTWAIT = 0x40, --#define MSG_DONTWAIT MSG_DONTWAIT -- MSG_WAITALL = 0x100, --#define MSG_WAITALL MSG_WAITALL -- MSG_CONFIRM = 0x800, --#define MSG_CONFIRM MSG_CONFIRM -- MSG_ERRQUEUE = 0x2000, --#define MSG_ERRQUEUE MSG_ERRQUEUE -- MSG_NOSIGNAL = 0x4000, --#define MSG_NOSIGNAL MSG_NOSIGNAL -- }; -- --/* Structure describing messages sent by -- `sendmsg' and received by `recvmsg'. */ --struct msghdr -- { -- __ptr_t msg_name; /* Address to send to/receive from. */ -- socklen_t msg_namelen; /* Length of address data. */ -- -- struct iovec *msg_iov; /* Vector of data to send/receive into. */ -- size_t msg_iovlen; /* Number of elements in the vector. */ -- -- __ptr_t msg_control; /* Ancillary data (eg BSD filedesc passing). */ -- size_t msg_controllen; /* Ancillary data buffer length. */ -- -- int msg_flags; /* Flags on received message. */ -- }; -- --/* Structure used for storage of ancillary data object information. */ --struct cmsghdr -- { -- size_t cmsg_len; /* Length of data in cmsg_data plus length -- of cmsghdr structure. */ -- int cmsg_level; /* Originating protocol. */ -- int cmsg_type; /* Protocol specific type. */ --#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2 -- unsigned char __cmsg_data[0]; /* Ancillary data. */ --#endif -- }; -- --/* Ancillary data object manipulation macros. */ --#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2 --# define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data) --#else --# define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1)) --#endif --#define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) --#define CMSG_FIRSTHDR(mhdr) \ -- ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ -- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL) --#define CMSG_ALIGN(len) ( ((len)+sizeof(long)-1) & ~(sizeof(long)-1) ) --#define CMSG_SPACE(len) (CMSG_ALIGN(sizeof(struct cmsghdr)) + CMSG_ALIGN(len)) --#define CMSG_LEN(len) (CMSG_ALIGN(sizeof(struct cmsghdr)) + (len)) -- -- --#ifndef _EXTERN_INLINE --# define _EXTERN_INLINE extern __inline --#endif --extern struct cmsghdr *__cmsg_nxthdr __P ((struct msghdr *__mhdr, -- struct cmsghdr *__cmsg)); --_EXTERN_INLINE struct cmsghdr * --__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) --{ -- if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) -- /* The kernel header does this so there may be a reason. */ -- return NULL; -- -- __cmsg = (struct cmsghdr *) -- ((unsigned char *) __cmsg + CMSG_ALIGN(__cmsg->cmsg_len)); -- -- if ( (unsigned char *) (__cmsg + 1) >= -- (unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen) -- /* No more entries. */ -- return NULL; -- return __cmsg; --} -- --/* Socket level message types. This must match the definitions in -- <linux/socket.h>. */ --enum -- { -- SCM_RIGHTS = 0x01, /* Data array contains access rights. */ --#define SCM_RIGHTS SCM_RIGHTS -- SCM_CREDENTIALS = 0x02, /* Data array is `struct ucred'. */ --#define SCM_CREDENTIALS SCM_CREDENTIALS -- }; -- -- -- --/* Get socket manipulation related informations from kernel headers. */ --#ifdef THIS_IS_CRAP --#ifndef _LINUX_TYPES_H --# define _LINUX_TYPES_H --#endif --#endif -- --#include <asm/socket.h> --#include <asm/types.h> -- --struct ucred --{ -- __u32 pid; -- __u32 uid; -- __u32 gid; --}; -- -- --/* Structure used to manipulate the SO_LINGER option. */ --struct linger -- { -- int l_onoff; /* Nonzero to linger on close. */ -- int l_linger; /* Time to linger. */ -- }; -- --__END_DECLS -- --#endif /* socketbits.h */ -diff -durN orig/include-glibc/bits/sockunion.h new/include-glibc/bits/sockunion.h ---- orig/include-glibc/bits/sockunion.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/bits/sockunion.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,25 +0,0 @@ -- --/* I cannot describe, how I laughed, when saw, that now sys/socket.h -- includes ALL OF networking include files. 8)8)8) -- -- Bravo! Aah, they forgot sockaddr_ll, sockaddr_pkt and sockaddr_nl... -- Not a big problem, we only start the way to single UNIVERSAL include file: -- -- #include <GNU-Gnu_is_Not_Unix.h>. -- -- Jokes apart, it is full crap. Removed. -- --ANK -- -- */ -- --/* Union of all sockaddr types (required by IPv6 Basic API). This is -- somewhat evil. */ --/* 8)8) Well, ipngwg really does strange things sometimes, but -- not in such extent! It is removed long ago --ANK -- */ -- --union sockaddr_union -- { -- struct sockaddr sa; -- char __maxsize[128]; -- }; -diff -durN orig/include-glibc/glibc-bugs.h new/include-glibc/glibc-bugs.h ---- orig/include-glibc/glibc-bugs.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/glibc-bugs.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,20 +0,0 @@ --#ifndef __GLIBC_BUGS_H__ --#define __GLIBC_BUGS_H__ 1 -- --#include <features.h> --#include <sys/types.h> -- --#if defined(__GLIBC__) && __GLIBC__ >= 2 -- --#ifndef __KERNEL_STRICT_NAMES --#define __KERNEL_STRICT_NAMES 1 --#endif -- --#include <linux/types.h> -- --typedef __u16 in_port_t; --typedef __u32 in_addr_t; -- --#endif -- --#endif -diff -durN orig/include-glibc/netinet/in.h new/include-glibc/netinet/in.h ---- orig/include-glibc/netinet/in.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/netinet/in.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,11 +0,0 @@ --#ifndef _NETINET_IN_H --#define _NETINET_IN_H 1 -- --#include "glibc-bugs.h" --#include <sys/socket.h> --#include <sys/types.h> --#include <linux/in.h> -- --#define SOL_IP 0 -- --#endif /* netinet/in.h */ -diff -durN orig/include-glibc/netinet/ip.h new/include-glibc/netinet/ip.h ---- orig/include-glibc/netinet/ip.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/netinet/ip.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,98 +0,0 @@ --#ifndef __NETINET_IP_H --#define __NETINET_IP_H 1 -- --#include <glibc-bugs.h> --#include <netinet/in.h> -- --#include <linux/ip.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. -- * -- * @(#)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 -- u_int8_t ip_hl:4; /* header length */ -- u_int8_t ip_v:4; /* version */ --#endif --#if __BYTE_ORDER == __BIG_ENDIAN -- u_int8_t ip_v:4; /* version */ -- u_int8_t 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 -- u_int8_t ipt_flg:4; /* flags, see below */ -- u_int8_t ipt_oflw:4; /* overflow counter */ --#endif --#if __BYTE_ORDER == __BIG_ENDIAN -- u_int8_t ipt_oflw:4; /* overflow counter */ -- u_int8_t ipt_flg:4; /* flags, see below */ --#endif -- u_int32_t data[9]; -- }; --#endif /* __USE_BSD */ -- -- --#endif /* netinet/ip.h */ -diff -durN orig/include-glibc/netinet/ip_icmp.h new/include-glibc/netinet/ip_icmp.h ---- orig/include-glibc/netinet/ip_icmp.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/netinet/ip_icmp.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,199 +0,0 @@ --#ifndef __NETINET_IP_ICMP_H --#define __NETINET_IP_ICMP_H 1 -- -- --#include <asm/types.h> --#include <linux/icmp.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. -- * -- * @(#)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 */ -- --#endif /* netinet/ip_icmp.h */ -diff -durN orig/include-glibc/socketbits.h new/include-glibc/socketbits.h ---- orig/include-glibc/socketbits.h 2005-11-14 22:37:26.000000000 +1100 -+++ new/include-glibc/socketbits.h 1970-01-01 10:00:00.000000000 +1000 -@@ -1,280 +0,0 @@ --/* System-specific socket constants and types. Linux version. -- Copyright (C) 1991, 92, 94, 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 _SOCKETBITS_H -- --#define _SOCKETBITS_H 1 --#include <features.h> -- --#define __need_size_t --#define __need_NULL --#include <stddef.h> -- -- --__BEGIN_DECLS -- --/* Type for length arguments in socket calls. */ --#ifndef __socklen_t_defined --typedef unsigned int socklen_t; --# define __socklen_t_defined --#endif -- --/* Types of sockets. */ --enum __socket_type --{ --#ifndef __mips__ -- SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM --#else -- SOCK_STREAM = 2, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 1, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM --#endif -- SOCK_RAW = 3, /* Raw protocol interface. */ --#define SOCK_RAW SOCK_RAW -- SOCK_RDM = 4, /* Reliably-delivered messages. */ --#define SOCK_RDM SOCK_RDM -- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -- datagrams of fixed maximum length. */ --#define SOCK_SEQPACKET SOCK_SEQPACKET -- SOCK_PACKET = 10 /* Linux specific way of getting packets -- at the dev level. For writing rarp and -- other similar things on the user level. */ --#define SOCK_PACKET SOCK_PACKET --}; -- --/* Protocol families. */ --#define PF_UNSPEC 0 /* Unspecified. */ --#define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ --#define PF_UNIX PF_LOCAL /* Old BSD name for PF_LOCAL. */ --#define PF_FILE PF_LOCAL /* POSIX name for PF_LOCAL. */ --#define PF_INET 2 /* IP protocol family. */ --#define PF_AX25 3 /* Amateur Radio AX.25. */ --#define PF_IPX 4 /* Novell Internet Protocol. */ --#define PF_APPLETALK 5 /* Don't use this. */ --#define PF_NETROM 6 /* Amateur radio NetROM. */ --#define PF_BRIDGE 7 /* Multiprotocol bridge. */ --#define PF_AAL5 8 /* Reserved for Werner's ATM. */ --#define PF_X25 9 /* Reserved for X.25 project. */ --#define PF_INET6 10 /* IP version 6. */ --#define PF_ROSE 11 /* Amateur Radio X.25 PLP */ --#define PF_DECnet 12 /* Reserved for DECnet project */ --#define PF_NETBEUI 13 /* Reserved for 802.2LLC project*/ --#define PF_SECURITY 14 /* Security callback pseudo AF */ --#define PF_KEY 15 /* PF_KEY key management API */ --#define PF_NETLINK 16 --#define PF_ROUTE PF_NETLINK /* Alias to emulate 4.4BSD */ --#define PF_PACKET 17 /* Packet family */ --#define PF_MAX 32 /* For now.. */ -- --/* Address families. */ --#define AF_UNSPEC PF_UNSPEC --#define AF_LOCAL PF_LOCAL --#define AF_UNIX PF_UNIX --#define AF_FILE PF_FILE --#define AF_INET PF_INET --#define AF_AX25 PF_AX25 --#define AF_IPX PF_IPX --#define AF_APPLETALK PF_APPLETALK --#define AF_NETROM PF_NETROM --#define AF_BRIDGE PF_BRIDGE --#define AF_AAL5 PF_AAL5 --#define AF_X25 PF_X25 --#define AF_INET6 PF_INET6 --#define AF_ROSE PF_ROSE --#define AF_DECnet PF_DECnet --#define AF_NETBEUI PF_NETBEUI --#define AF_SECURITY PF_SECURITY --#define pseudo_AF_KEY pseudo_PF_KEY --#define AF_NETLINK PF_NETLINK --#define AF_ROUTE PF_ROUTE --#define AF_PACKET PF_PACKET --#define AF_MAX PF_MAX -- --/* Socket level values. Others are defined in the appropriate headers. -- -- XXX These definitions also should go into the appropriate headers as -- far as they are available. */ --#define SOL_IPV6 41 --#define SOL_ICMPV6 58 --#define SOL_RAW 255 --#define SOL_AX25 257 --#define SOL_ATALK 258 --#define SOL_NETROM 259 --#define SOL_ROSE 260 --#define SOL_DECNET 261 --#define SOL_X25 262 -- --/* Maximum queue length specifiable by listen. */ --#define SOMAXCONN 128 -- --/* Get the definition of the macro to define the common sockaddr members. */ --#if __GLIBC_MINOR__ >= 1 --#include <bits/sockaddr.h> --#else --#include <sockaddrcom.h> --#endif -- --/* Structure describing a generic socket address. */ --struct sockaddr -- { -- __SOCKADDR_COMMON (sa_); /* Common data: address family and length. */ -- char sa_data[14]; /* Address data. */ -- }; -- -- --/* Bits in the FLAGS argument to `send', `recv', et al. */ --enum -- { -- MSG_OOB = 0x01, /* Process out-of-band data. */ --#define MSG_OOB MSG_OOB -- MSG_PEEK = 0x02, /* Peek at incoming messages. */ --#define MSG_PEEK MSG_PEEK -- MSG_DONTROUTE = 0x04, /* Don't use local routing. */ --#define MSG_DONTROUTE MSG_DONTROUTE -- MSG_CTRUNC = 0x08, /* Control data lost before delivery. */ --#define MSG_CTRUNC MSG_CTRUNC -- MSG_PROBE = 0x10, --#define MSG_PROBE MSG_PROBE -- MSG_TRUNC = 0x20, --#define MSG_TRUNC MSG_TRUNC -- MSG_DONTWAIT = 0x40, --#define MSG_DONTWAIT MSG_DONTWAIT -- MSG_WAITALL = 0x100, --#define MSG_WAITALL MSG_WAITALL -- MSG_CONFIRM = 0x800, --#define MSG_CONFIRM MSG_CONFIRM -- MSG_ERRQUEUE = 0x2000, --#define MSG_ERRQUEUE MSG_ERRQUEUE -- MSG_NOSIGNAL = 0x4000, --#define MSG_NOSIGNAL MSG_NOSIGNAL -- }; -- --/* Structure describing messages sent by -- `sendmsg' and received by `recvmsg'. */ --struct msghdr -- { -- __ptr_t msg_name; /* Address to send to/receive from. */ -- socklen_t msg_namelen; /* Length of address data. */ -- -- struct iovec *msg_iov; /* Vector of data to send/receive into. */ -- size_t msg_iovlen; /* Number of elements in the vector. */ -- -- __ptr_t msg_control; /* Ancillary data (eg BSD filedesc passing). */ -- size_t msg_controllen; /* Ancillary data buffer length. */ -- -- int msg_flags; /* Flags on received message. */ -- }; -- --/* Structure used for storage of ancillary data object information. */ --struct cmsghdr -- { -- size_t cmsg_len; /* Length of data in cmsg_data plus length -- of cmsghdr structure. */ -- int cmsg_level; /* Originating protocol. */ -- int cmsg_type; /* Protocol specific type. */ --#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2 -- unsigned char __cmsg_data[0]; /* Ancillary data. */ --#endif -- }; -- --/* Ancillary data object manipulation macros. */ --#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2 --# define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data) --#else --# define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1)) --#endif --#define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) --#define CMSG_FIRSTHDR(mhdr) \ -- ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ -- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL) --#define CMSG_ALIGN(len) ( ((len)+sizeof(long)-1) & ~(sizeof(long)-1) ) --#define CMSG_SPACE(len) (CMSG_ALIGN(sizeof(struct cmsghdr)) + CMSG_ALIGN(len)) --#define CMSG_LEN(len) (CMSG_ALIGN(sizeof(struct cmsghdr)) + (len)) -- -- --#ifndef _EXTERN_INLINE --# define _EXTERN_INLINE extern __inline --#endif --extern struct cmsghdr *__cmsg_nxthdr __P ((struct msghdr *__mhdr, -- struct cmsghdr *__cmsg)); --_EXTERN_INLINE struct cmsghdr * --__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) --{ -- if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) -- /* The kernel header does this so there may be a reason. */ -- return NULL; -- -- __cmsg = (struct cmsghdr *) -- ((unsigned char *) __cmsg + CMSG_ALIGN(__cmsg->cmsg_len)); -- -- if ( (unsigned char *) (__cmsg + 1) >= -- (unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen) -- /* No more entries. */ -- return NULL; -- return __cmsg; --} -- --/* Socket level message types. This must match the definitions in -- <linux/socket.h>. */ --enum -- { -- SCM_RIGHTS = 0x01, /* Data array contains access rights. */ --#define SCM_RIGHTS SCM_RIGHTS -- SCM_CREDENTIALS = 0x02, /* Data array is `struct ucred'. */ --#define SCM_CREDENTIALS SCM_CREDENTIALS -- }; -- -- -- --/* Get socket manipulation related informations from kernel headers. */ --#ifdef THIS_IS_CRAP --#ifndef _LINUX_TYPES_H --# define _LINUX_TYPES_H --#endif --#endif -- --#include <asm/socket.h> --#include <asm/types.h> -- --struct ucred --{ -- __u32 pid; -- __u32 uid; -- __u32 gid; --}; -- -- --/* Structure used to manipulate the SO_LINGER option. */ --struct linger -- { -- int l_onoff; /* Nonzero to linger on close. */ -- int l_linger; /* Time to linger. */ -- }; -- --__END_DECLS -- --#endif /* socketbits.h */ |