summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPhil Vachon <phil@cowpig.ca>2014-10-08 10:50:37 -0400
committerPhil Vachon <phil@cowpig.ca>2014-10-20 14:14:28 -0400
commit62c888352945f3d86f5382f4d67ed19b9f9185a6 (patch)
treeb8f7984b1b640218cc8ffce7dfc947c8ca1bfc5e /src
parentfa84d31d36a5a8502ede0828245a593354f1aff3 (diff)
downloadnix-62c888352945f3d86f5382f4d67ed19b9f9185a6.zip
Add defines for multicast membership management
Add socket options and references to ip_mreq, enabling use of socket options for managing IP multicast group membership.
Diffstat (limited to 'src')
-rw-r--r--src/sys/socket.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/sys/socket.rs b/src/sys/socket.rs
index 0b963001..20c33026 100644
--- a/src/sys/socket.rs
+++ b/src/sys/socket.rs
@@ -4,7 +4,7 @@ use fcntl::{Fd, fcntl, F_SETFL, F_SETFD, FD_CLOEXEC, O_NONBLOCK};
use errno::{SysResult, SysError, from_ffi};
use features;
-pub use libc::{in_addr, sockaddr_in, sockaddr_in6, sockaddr_un, sa_family_t};
+pub use libc::{in_addr, sockaddr_in, sockaddr_in6, sockaddr_un, sa_family_t, ip_mreq};
pub use self::consts::*;
@@ -102,6 +102,13 @@ mod consts {
pub const TCP_NODELAY: SockOpt = 1;
pub const TCP_MAXSEG: SockOpt = 2;
pub const TCP_CORK: SockOpt = 3;
+
+ // Socket options for the IP layer of the socket
+ pub const IP_MULTICAST_IF: SockOpt = 32;
+ pub const IP_MULTICAST_TTL: SockOpt = 33;
+ pub const IP_MULTICAST_LOOP: SockOpt = 34;
+ pub const IP_ADD_MEMBERSHIP: SockOpt = 35;
+ pub const IP_DROP_MEMBERSHIP: SockOpt = 36;
}
#[cfg(any(target_os = "macos", target_os = "ios"))]