diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | linuxthreads/ChangeLog | 27 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/in.h | 74 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/socket.h | 2 |
4 files changed, 86 insertions, 25 deletions
diff --git a/ChangeLog b/ChangeLog index de6027ea4e..a679ab0af5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +1998-10-05 Philip Blundell <philb@gnu.org> + + * sysdeps/unix/sysv/linux/bits/in.h: Add various new structures + and constants. Tidy up formatting a little. + + * sysdeps/unix/sysv/linux/bits/socket.h (SOL_IPV6, SOL_ICMPV6): + Move definitions to in.h. + 1998-10-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/sys/swap.h (SWAP_FLAG_PREFER, diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 7df83c9a9a..88f5eb7c8c 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,14 +1,19 @@ -1998-09-15 David S. Miller <davem@pierdol.cobaltmicro.com> - - * sysdeps/sparc/sparc32/pt-machine.h (INIT_THREAD_SELF): Add nr - argument. - * sysdeps/sparc/sparc64/pt-machine.h (INIT_THREAD_SELF): Likewise. - -1998-09-12 14:24 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> - - * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Add - multiple inclusion guard. - +1998-10-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * semaphore.h: Include <sys/types.h> so that _pthread_descr + is declared. + +1998-09-15 David S. Miller <davem@pierdol.cobaltmicro.com> + + * sysdeps/sparc/sparc32/pt-machine.h (INIT_THREAD_SELF): Add nr + argument. + * sysdeps/sparc/sparc64/pt-machine.h (INIT_THREAD_SELF): Likewise. + +1998-09-12 14:24 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> + + * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Add + multiple inclusion guard. + 1998-09-02 11:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c (sigaction): Check that sig is less than NSIG to avoid diff --git a/sysdeps/unix/sysv/linux/bits/in.h b/sysdeps/unix/sysv/linux/bits/in.h index 2e9b66fc4c..5f8d8d6fd9 100644 --- a/sysdeps/unix/sysv/linux/bits/in.h +++ b/sysdeps/unix/sysv/linux/bits/in.h @@ -25,19 +25,41 @@ /* Options for use with `getsockopt' and `setsockopt' at the IP level. The first word in the comment at the right is the data type used; "bool" means a boolean value stored in an `int'. */ -#define IP_TOS 1 /* int; IP type of service and precedence. */ -#define IP_TTL 2 /* int; IP time to live. */ -#define IP_HDRINCL 3 /* int; Header is included with data. */ -#define IP_OPTIONS 4 /* ip_opts; IP per-packet options. */ +#define IP_TOS 1 /* int; IP type of service and precedence. */ +#define IP_TTL 2 /* int; IP time to live. */ +#define IP_HDRINCL 3 /* int; Header is included with data. */ +#define IP_OPTIONS 4 /* ip_opts; IP per-packet options. */ +#define IP_ROUTER_ALERT 5 /* bool */ +#define IP_RECVOPTS 6 /* bool */ +#define IP_RETOPTS 7 /* bool */ +#define IP_PKTINFO 8 /* bool */ +#define IP_PKTOPTIONS 9 +#define IP_PMTUDISC 10 /* obsolete name? */ +#define IP_MTU_DISCOVER 10 /* int; see below */ +#define IP_RECVERR 11 /* bool */ +#define IP_RECVTTL 12 /* bool */ +#define IP_RECVTOS 13 /* bool */ #define IP_MULTICAST_IF 32 /* in_addr; set/get IP multicast i/f */ #define IP_MULTICAST_TTL 33 /* u_char; set/get IP multicast ttl */ #define IP_MULTICAST_LOOP 34 /* i_char; set/get IP multicast loopback */ #define IP_ADD_MEMBERSHIP 35 /* ip_mreq; add an IP group membership */ #define IP_DROP_MEMBERSHIP 36 /* ip_mreq; drop an IP group membership */ +/* For BSD compatibility. */ +#define IP_RECVRETOPTS IP_RETOPTS + +/* IP_MTU_DISCOVER arguments. */ +#define IP_PMTUDISC_DONT 0 /* Never send DF frames. */ +#define IP_PMTUDISC_WANT 1 /* Use per route hints. */ +#define IP_PMTUDISC_DO 2 /* Always DF. */ + /* To select the IP level. */ #define SOL_IP 0 +#define IP_DEFAULT_MULTICAST_TTL 1 +#define IP_DEFAULT_MULTICAST_LOOP 1 +#define IP_MAX_MEMBERSHIPS 20 + /* Structure used to describe IP options for IP_OPTIONS. The `ip_dst' field is used for the first-hop gateway when using a source route (this gets put into the header proper). */ @@ -54,20 +76,34 @@ struct ip_mreq struct in_addr imr_interface; /* local IP address of interface */ }; -/* IPV6 socket options. */ +/* As above but including interface specification by index. */ +struct ip_mreqn + { + struct in_addr imr_multiaddr; /* IP multicast address of group */ + struct in_addr imr_address; /* local IP address of interface */ + int imr_ifindex; /* Interface index */ + }; + +/* As above but for IPv6. */ +struct ipv6_mreq + { + struct in6_addr ipv6mr_multiaddr; /* IPv6 multicast address of group */ + int ipv6mr_ifindex; /* local IPv6 address of interface */ + }; + +/* Options for use with `getsockopt' and `setsockopt' at the IPv6 level. + The first word in the comment at the right is the data type used; + "bool" means a boolean value stored in an `int'. */ #define IPV6_ADDRFORM 1 #define IPV6_PKTINFO 2 -#define IPV6_RXHOPOPTS 3 /* obsolete name */ -#define IPV6_RXDSTOPTS 4 /* obsolete name */ -#define IPV6_HOPOPTS IPV6_RXHOPOPTS /* new name */ -#define IPV6_DSTOPTS IPV6_RXDSTOPTS /* new name */ +#define IPV6_HOPOPTS 3 +#define IPV6_DSTOPTS 4 #define IPV6_RXSRCRT 5 #define IPV6_PKTOPTIONS 6 #define IPV6_CHECKSUM 7 #define IPV6_HOPLIMIT 8 - -#define SCM_SRCRT IPV6_RXSRCRT - +#define IPV6_NEXTHOP 9 +#define IPV6_AUTHHDR 10 #define IPV6_UNICAST_HOPS 16 #define IPV6_MULTICAST_IF 17 #define IPV6_MULTICAST_HOPS 18 @@ -75,3 +111,17 @@ struct ip_mreq #define IPV6_ADD_MEMBERSHIP 20 #define IPV6_DROP_MEMBERSHIP 21 #define IPV6_ROUTER_ALERT 22 + +#define SCM_SRCRT IPV6_RXSRCRT + +#define IPV6_RXHOPOPTS IPV6_HOPOPTS /* obsolete name */ +#define IPV6_RXDSTOPTS IPV6_DSTOPTS /* obsolete name */ + +/* IPV6_MTU_DISCOVER values. */ +#define IPV6_PMTUDISC_DONT 0 /* Never send DF frames. */ +#define IPV6_PMTUDISC_WANT 1 /* Use per route hints. */ +#define IPV6_PMTUDISC_DO 2 /* Always DF. */ + +/* Socket level values for IPv6. */ +#define SOL_IPV6 41 +#define SOL_ICMPV6 58 diff --git a/sysdeps/unix/sysv/linux/bits/socket.h b/sysdeps/unix/sysv/linux/bits/socket.h index a11c22db72..e5f4259433 100644 --- a/sysdeps/unix/sysv/linux/bits/socket.h +++ b/sysdeps/unix/sysv/linux/bits/socket.h @@ -115,8 +115,6 @@ enum __socket_type 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_DECNET 261 #define SOL_X25 262 |