summaryrefslogtreecommitdiff
path: root/ace/SOCK_Dgram_Mcast.h
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-09-17 03:22:08 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-09-17 03:22:08 +0000
commitb0ea70644783428954166da5eac87ee6e2d3935e (patch)
tree0238291afd086b7903aa4cd2b8c1fadeeb266596 /ace/SOCK_Dgram_Mcast.h
parente58ec4a7f71dfb4d7d9c7bc813eb7ae95d7c0855 (diff)
downloadATCD-b0ea70644783428954166da5eac87ee6e2d3935e.tar.gz
ChangeLogTag:Wed Sep 16 22:17:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu>
Diffstat (limited to 'ace/SOCK_Dgram_Mcast.h')
-rw-r--r--ace/SOCK_Dgram_Mcast.h36
1 files changed, 33 insertions, 3 deletions
diff --git a/ace/SOCK_Dgram_Mcast.h b/ace/SOCK_Dgram_Mcast.h
index c2d68ef5976..c2f132d6eea 100644
--- a/ace/SOCK_Dgram_Mcast.h
+++ b/ace/SOCK_Dgram_Mcast.h
@@ -61,6 +61,22 @@ public:
// subscribe uses the default mcast interface.
// Returns: -1 on error, else 0.
+ int unsubscribe (const ACE_INET_Addr &mcast_addr,
+#if defined (ACE_PSOS)
+ // pSOS supports numbers, not names for network interfaces
+ long net_if = 0,
+#else
+ const ASYS_TCHAR *net_if = 0,
+#endif /* defined (ACE_PSOS) */
+ int protocol_family = PF_INET,
+ int protocol = 0);
+ // Leave a multicast group.
+ //
+ // Interface is hardware specific. use netstat -i to find whether
+ // your interface is, say, le0 or something else. If net_if == 0,
+ // subscribe uses the default mcast interface.
+ // Returns: -1 on error, else 0.
+
int unsubscribe (void);
// Unsubscribe from a multicast group. Returns 0 on success, -1 on
// failure.
@@ -69,7 +85,9 @@ public:
ssize_t send (const void *buf, size_t n, int flags = 0) const;
// Send <n> bytes in <buf>.
- ssize_t send (const iovec iov[], size_t n, int flags = 0) const;
+ ssize_t send (const ACE_IO_Vector_Base iov[],
+ size_t n,
+ int flags = 0) const;
// Send <n> <iovecs>.
// = Options.
@@ -97,7 +115,7 @@ private:
size_t n,
const ACE_Addr &addr,
int flags = 0) const;
- ssize_t send (const iovec iov[],
+ ssize_t send (const ACE_IO_Vector_Base iov[],
size_t n,
const ACE_Addr &addr,
int flags = 0) const;
@@ -111,12 +129,24 @@ private:
const ASYS_TCHAR *net_if = ASYS_TEXT ("le0")
#endif /* defined (ACE_PSOS) */
);
+ // Initialize the <multicast_addres_ field>
+
+ int make_multicast_address_i (const ACE_INET_Addr &mcast_addr,
+ ip_mreq& multicast_address,
+#if defined (ACE_PSOS)
+ // pSOS supports numbers, not
+ // names for network interfaces
+ long net_if = 0
+#else
+ const ASYS_TCHAR *net_if = ASYS_TEXT ("le0")
+#endif /* defined (ACE_PSOS) */
+ );
// Initialize a multicast address.
ACE_INET_Addr mcast_addr_;
// Multicast group address.
- struct ip_mreq multicast_address_;
+ ip_mreq multicast_address_;
// IP address.
};