diff options
author | Heiko Schaefer <heikos@users.sourceforge.net> | 2001-06-09 11:48:12 +0000 |
---|---|---|
committer | Heiko Schaefer <heikos@users.sourceforge.net> | 2001-06-09 11:48:12 +0000 |
commit | e0b25d1271e1816b2b41b9af9514c3fa6bf674cf (patch) | |
tree | 252c806b2a9059848bd568f584d75a5a6fc4cd32 | |
parent | f099432bb49d993e7cb883364ddc193d9ee6493d (diff) | |
download | xine-lib-e0b25d1271e1816b2b41b9af9514c3fa6bf674cf.tar.gz xine-lib-e0b25d1271e1816b2b41b9af9514c3fa6bf674cf.tar.bz2 |
dave's patch applied to make this compile on freebsd.
CVS patchset: 135
CVS date: 2001/06/09 11:48:12
-rw-r--r-- | src/input/input_rtp.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/input/input_rtp.c b/src/input/input_rtp.c index cd072724b..c046e813b 100644 --- a/src/input/input_rtp.c +++ b/src/input/input_rtp.c @@ -147,11 +147,18 @@ static int host_connect_attempt(struct in_addr ia, int port) { } /* multicast ? */ if ((ntohl(sin.sin_addr.s_addr) >> 28) == 0xe) { +#if defined (__linux__) struct ip_mreqn mreqn; mreqn.imr_multiaddr.s_addr = sin.sin_addr.s_addr; mreqn.imr_address.s_addr = INADDR_ANY; mreqn.imr_ifindex = 0; +#elif defined (__FreeBSD__) + struct ip_mreq mreqn; + + mreqn.imr_multiaddr.s_addr = sin.sin_addr.s_addr; + mreqn.imr_interface.s_addr = INADDR_ANY; +#endif if (setsockopt(s, IPPROTO_IP, IP_ADD_MEMBERSHIP,&mreqn,sizeof(mreqn))) { perror("setsockopt IP_ADD_MEMBERSHIP failed (multicast kernel?)"); exit(1); |