mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-30 02:50:25 +08:00
* include/cygwin/in.h (struct ip_mreq_source): Define.
(struct ip_msfilter): Define. (IP_MSFILTER_SIZE): Define. (struct in_pktinfo): Define. (struct group_req): Define. (struct group_source_req): Define. (struct group_filter): Define. (GROUP_FILTER_SIZE): Define. (INADDR_ALLRTRS_GROUP): Define. * include/cygwin/socket.h: Define protocol agnostic multicast options.
This commit is contained in:
parent
94b91791ea
commit
6281771f37
@ -1,3 +1,16 @@
|
||||
2007-01-16 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* include/cygwin/in.h (struct ip_mreq_source): Define.
|
||||
(struct ip_msfilter): Define.
|
||||
(IP_MSFILTER_SIZE): Define.
|
||||
(struct in_pktinfo): Define.
|
||||
(struct group_req): Define.
|
||||
(struct group_source_req): Define.
|
||||
(struct group_filter): Define.
|
||||
(GROUP_FILTER_SIZE): Define.
|
||||
(INADDR_ALLRTRS_GROUP): Define.
|
||||
* include/cygwin/socket.h: Define protocol agnostic multicast options.
|
||||
|
||||
2007-01-15 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* CYGWIN_LICENSE: Fix web pages and contact information.
|
||||
|
@ -116,7 +116,7 @@ struct in_addr
|
||||
in_addr_t s_addr;
|
||||
};
|
||||
|
||||
/* Request struct for multicast socket ops */
|
||||
/* Request struct for IPv4 multicast socket ops */
|
||||
|
||||
struct ip_mreq
|
||||
{
|
||||
@ -124,6 +124,59 @@ struct ip_mreq
|
||||
struct in_addr imr_interface; /* local IP address of interface */
|
||||
};
|
||||
|
||||
struct ip_mreq_source
|
||||
{
|
||||
struct in_addr imr_multiaddr;
|
||||
struct in_addr imr_sourceaddr;
|
||||
struct in_addr imr_interface;
|
||||
};
|
||||
|
||||
struct ip_msfilter
|
||||
{
|
||||
struct in_addr imsf_multiaddr;
|
||||
struct in_addr imsf_interface;
|
||||
uint32_t imsf_fmode;
|
||||
uint32_t imsf_numsrc;
|
||||
struct in_addr imsf_slist[1];
|
||||
};
|
||||
|
||||
#define IP_MSFILTER_SIZE(numsrc) (sizeof (struct ip_msfilter) \
|
||||
- sizeof (struct in_addr) \
|
||||
+ (numsrc) * sizeof (struct in_addr))
|
||||
|
||||
struct in_pktinfo
|
||||
{
|
||||
struct in_addr ipi_addr;
|
||||
uint32_t ipi_ifindex;
|
||||
};
|
||||
|
||||
/* Request struct for IP agnostic multicast socket ops */
|
||||
|
||||
struct group_req
|
||||
{
|
||||
uint32_t gr_interface;
|
||||
struct sockaddr_storage gr_group;
|
||||
};
|
||||
|
||||
struct group_source_req
|
||||
{
|
||||
uint32_t gsr_interface;
|
||||
struct sockaddr_storage gsr_group;
|
||||
struct sockaddr_storage gsr_source;
|
||||
};
|
||||
|
||||
struct group_filter
|
||||
{
|
||||
uint32_t gf_interface;
|
||||
struct sockaddr_storage gf_group;
|
||||
uint32_t gf_fmode;
|
||||
uint32_t gf_numsrc;
|
||||
struct sockaddr_storage gf_slist[1];
|
||||
};
|
||||
|
||||
#define GROUP_FILTER_SIZE(numsrc) (sizeof (struct group_filter) \
|
||||
- sizeof (struct sockaddr_storage) \
|
||||
+ (numsrc) * sizeof (struct sockaddr_storage))
|
||||
|
||||
/* Structure describing an Internet (IP) socket address. */
|
||||
#define __SOCK_SIZE__ 16 /* sizeof(struct sockaddr) */
|
||||
@ -187,6 +240,7 @@ struct sockaddr_in
|
||||
/* Defines for Multicast INADDR */
|
||||
#define INADDR_UNSPEC_GROUP 0xe0000000 /* 224.0.0.0 */
|
||||
#define INADDR_ALLHOSTS_GROUP 0xe0000001 /* 224.0.0.1 */
|
||||
#define INADDR_ALLRTRS_GROUP 0xe0000002 /* 224.0.0.2 */
|
||||
#define INADDR_MAX_LOCAL_GROUP 0xe00000ff /* 224.0.0.255 */
|
||||
|
||||
#define INET_ADDRSTRLEN 16
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* cygwin/socket.h
|
||||
|
||||
Copyright 1999, 2000, 2001, 2005 Red Hat, Inc.
|
||||
Copyright 1999, 2000, 2001, 2005, 2006, 2007 Red Hat, Inc.
|
||||
|
||||
This file is part of Cygwin.
|
||||
|
||||
@ -243,6 +243,17 @@ struct OLD_msghdr
|
||||
#define IPV6_LEAVE_GROUP IPV6_DROP_MEMBERSHIP
|
||||
#define IPV6_PKTINFO 19
|
||||
|
||||
/* IP agnostic options for use with getsockopt/setsockopt */
|
||||
#define MCAST_JOIN_GROUP 41
|
||||
#define MCAST_LEAVE_GROUP 42
|
||||
#define MCAST_BLOCK_SOURCE 43
|
||||
#define MCAST_UNBLOCK_SOURCE 44
|
||||
#define MCAST_JOIN_SOURCE_GROUP 45
|
||||
#define MCAST_LEAVE_SOURCE_GROUP 46
|
||||
|
||||
#define MCAST_EXCLUDE 0
|
||||
#define MCAST_INCLUDE 1
|
||||
|
||||
/* Old WinSock1 values, needed internally */
|
||||
#ifdef __INSIDE_CYGWIN__
|
||||
#define _WS1_IP_OPTIONS 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user