diff options
author | Ulrich Drepper <drepper@redhat.com> | 1997-02-18 04:08:52 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1997-02-18 04:08:52 +0000 |
commit | 9652be3de8913e528f86d9d4d2643db6c472f9fe (patch) | |
tree | afa08c329c7b3007487a47b78ed77c47f88d2a4d /inet | |
parent | 7434ccadbb6897d366d2377f84efe1e2cd61b02b (diff) | |
download | glibc-9652be3de8913e528f86d9d4d2643db6c472f9fe.tar.gz |
update from main archive 970217
Diffstat (limited to 'inet')
-rw-r--r-- | inet/netinet/ether.h | 52 | ||||
-rw-r--r-- | inet/netinet/ip.h | 167 |
2 files changed, 29 insertions, 190 deletions
diff --git a/inet/netinet/ether.h b/inet/netinet/ether.h index b14377a13d..06d01b1508 100644 --- a/inet/netinet/ether.h +++ b/inet/netinet/ether.h @@ -1,21 +1,21 @@ /* Functions for storing Ethernet addresses in ASCII and mapping to hostnames. -Copyright (C) 1996 Free Software Foundation, Inc. -This file is part of the GNU C Library. + 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 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. + 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. */ + 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 @@ -25,24 +25,30 @@ Boston, MA 02111-1307, USA. */ /* Get definition of `struct ether_addr'. */ #include <netinet/if_ether.h> +__BEGIN_DECLS /* Convert 48 bit Ethernet ADDRess to ASCII. */ -char *ether_ntoa __P ((const struct ether_addr *__addr)); -char *ether_ntoa_r __P ((const struct ether_addr *__addr, char *__buf)); +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. */ -struct ether_addr *ether_aton __P ((const char *__asc)); -struct ether_addr *ether_aton_r __P ((const char *__asc, - struct ether_addr *__addr)); +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. */ -int ether_ntohost __P ((char *__hostname, const struct ether_addr *__addr)); +extern int ether_ntohost __P ((char *__hostname, + __const struct ether_addr *__addr)); /* Map HOSTNAME to 48 bit Ethernet address. */ -int ether_hostton __P ((const char *__hostname, struct ether_addr *__addr)); +extern int ether_hostton __P ((__const char *__hostname, + struct ether_addr *__addr)); /* Scan LINE and set ADDR and HOSTNAME. */ -int ether_line __P ((const char *__line, struct ether_addr *__addr, - char *__hostname)); +extern int ether_line __P ((__const char *__line, struct ether_addr *__addr, + char *__hostname)); + +__END_DECLS #endif /* netinet/ether.h */ diff --git a/inet/netinet/ip.h b/inet/netinet/ip.h deleted file mode 100644 index 191ac8e9c8..0000000000 --- a/inet/netinet/ip.h +++ /dev/null @@ -1,167 +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. - * - * @(#)ip.h 8.1 (Berkeley) 6/10/93 - */ - -#include <gnu/types.h> -#include <endian.h> -#include <netinet/in.h> - -/* - * Definitions for internet protocol version 4. - * Per RFC 791, September 1981. - */ -#define IPVERSION 4 - -/* - * Structure of an internet header, naked of options. - */ -struct ip { -#if __BYTE_ORDER == __LITTLE_ENDIAN - __u_char ip_hl:4, /* header length */ - ip_v:4; /* version */ -#endif -#if __BYTE_ORDER == __BIG_ENDIAN - __u_char ip_v:4, /* version */ - ip_hl:4; /* header length */ -#endif - __u_char 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_char ip_ttl; /* time to live */ - __u_char ip_p; /* protocol */ - __u_short ip_sum; /* checksum */ - struct in_addr ip_src, ip_dst; /* source and dest address */ -}; - -#define IP_MAXPACKET 65535 /* maximum packet size */ - -/* - * Definitions for IP type of service (ip_tos) - */ -#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_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_COPIED(o) ((o)&0x80) -#define IPOPT_CLASS(o) ((o)&0x60) -#define IPOPT_NUMBER(o) ((o)&0x1f) - -#define IPOPT_CONTROL 0x00 -#define IPOPT_RESERVED1 0x20 -#define IPOPT_DEBMEAS 0x40 -#define IPOPT_RESERVED2 0x60 - -#define IPOPT_EOL 0 /* end of option list */ -#define IPOPT_NOP 1 /* no operation */ - -#define IPOPT_RR 7 /* record packet route */ -#define IPOPT_TS 68 /* timestamp */ -#define IPOPT_SECURITY 130 /* provide s,c,h,tcc */ -#define IPOPT_LSRR 131 /* loose source route */ -#define IPOPT_SATID 136 /* satnet id */ -#define IPOPT_SSRR 137 /* strict source route */ - -/* - * 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 - -/* - * Time stamp option structure. - */ -struct ip_timestamp { - __u_char ipt_code; /* IPOPT_TS */ - __u_char ipt_len; /* size of structure (variable) */ - __u_char ipt_ptr; /* index of current entry */ -#if __BYTE_ORDER == __LITTLE_ENDIAN - __u_char ipt_flg:4, /* flags, see below */ - ipt_oflw:4; /* overflow counter */ -#endif -#if __BYTE_ORDER == __BIG_ENDIAN - __u_char ipt_oflw:4, /* overflow counter */ - ipt_flg:4; /* flags, see below */ -#endif - __u_long data[9]; -}; - -/* 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 */ |