From 706827351281dd853b52f8f108a6d94154cbd383 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 20 Jul 2004 07:39:10 +0000 Subject: [PATCH] Update. * inet/netinet/in.h: Define struct ip_mreq and struct ip_mreq_source. * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE, IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP, IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP, MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP, MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and MCAST_MSFILTER. --- ChangeLog | 9 +++++++++ inet/netinet/in.h | 28 ++++++++++++++++++++++++++-- localedata/charmaps/IBM874 | 1 + sysdeps/unix/sysv/linux/bits/in.h | 25 +++++++++++++++++++------ 4 files changed, 55 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 44ed0587e5..50985e9468 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2004-07-20 Ulrich Drepper + * inet/netinet/in.h: Define struct ip_mreq and struct + ip_mreq_source. + * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE, + IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP, + IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP, + MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP, + MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and + MCAST_MSFILTER. + * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244]. 2004-07-19 Jakub Jelinek diff --git a/inet/netinet/in.h b/inet/netinet/in.h index 9f969ccc5c..7ec6741eb1 100644 --- a/inet/netinet/in.h +++ b/inet/netinet/in.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-1999, 2000, 2001, 2003 Free Software Foundation, Inc. +/* Copyright (C) 1991-2001, 2003, 2004 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 @@ -239,7 +239,30 @@ struct sockaddr_in6 uint32_t sin6_scope_id; /* IPv6 scope-id */ }; -/* IPv6 multicast request. */ + +/* IPv4 multicast request. */ +struct ip_mreq + { + /* IP multicast address of group. */ + struct in_addr imr_multiaddr; + + /* Local IP address of interface. */ + struct in_addr imr_interface; + }; + +struct ip_mreq_source + { + /* IP multicast address of group. */ + struct in_addr imr_multiaddr; + + /* IP address of source. */ + struct in_addr imr_interface; + + /* IP address of interface. */ + struct in_addr imr_sourceaddr; + }; + +/* Likewise, for IPv6. */ struct ipv6_mreq { /* IPv6 multicast address of group */ @@ -249,6 +272,7 @@ struct ipv6_mreq unsigned int ipv6mr_interface; }; + /* Get system-specific definitions. */ #include diff --git a/localedata/charmaps/IBM874 b/localedata/charmaps/IBM874 index 6359f78675..3d6618d62a 100644 --- a/localedata/charmaps/IBM874 +++ b/localedata/charmaps/IBM874 @@ -4,6 +4,7 @@ % automatically generated from the charDB % alias CP874 +% alias WINDOWS-874 CHARMAP /x00 NULL /x01 START OF HEADING diff --git a/sysdeps/unix/sysv/linux/bits/in.h b/sysdeps/unix/sysv/linux/bits/in.h index ff72d4587b..88cc125b4d 100644 --- a/sysdeps/unix/sysv/linux/bits/in.h +++ b/sysdeps/unix/sysv/linux/bits/in.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-1999, 2000 Free Software Foundation, Inc. +/* Copyright (C) 1991-1999, 2000, 2004 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 @@ -33,11 +33,24 @@ /* For BSD compatibility. */ #define IP_RECVRETOPTS IP_RETOPTS /* bool; Receive IP options for response. */ #define IP_RETOPTS 7 /* ip_opts; Set/get IP per-packet options. */ -#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 */ +#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 */ +#define IP_UNBLOCK_SOURCE 37 /* ip_mreq_source: unblock data from source */ +#define IP_BLOCK_SOURCE 38 /* ip_mreq_source: block data from source */ +#define IP_ADD_SOURCE_MEMBERSHIP 39 /* ip_mreq_source: join source group */ +#define IP_DROP_SOURCE_MEMBERSHIP 40 /* ip_mreq_source: leave source group */ +#define IP_MSFILTER 41 +#define MCAST_JOIN_GROUP 42 +#define MCAST_BLOCK_SOURCE 43 +#define MCAST_UNBLOCK_SOURCE 44 +#define MCAST_LEAVE_GROUP 45 +#define MCAST_JOIN_SOURCE_GROUP 46 +#define MCAST_LEAVE_SOURCE_GROUP 47 +#define MCAST_MSFILTER 48 + #define IP_ROUTER_ALERT 5 /* bool */ #define IP_PKTINFO 8 /* bool */