#include <ICP.h>
Inherits Peer.

| Data Structures | |
| struct | multicast_data | 
| Public Member Functions | |
| MultiCastPeer (IpAddr const &, uint16_t, int, ICPProcessor *) | |
| ~MultiCastPeer () | |
| int | GetTTL () | 
| int | AddMultiCastChild (Peer *P) | 
| Peer * | FindMultiCastChild (IpAddr const &ip, uint16_t port=0) | 
| Find the multicast child peer with IP address ip on port. | |
| virtual sockaddr * | GetIP () | 
| virtual Action * | SendMsg_re (Continuation *, void *, struct msghdr *, struct sockaddr const *to) | 
| virtual Action * | RecvFrom_re (Continuation *, void *, IOBufferBlock *, int, struct sockaddr *, socklen_t *) | 
| virtual int | GetRecvFD () | 
| virtual int | GetSendFD () | 
| virtual int | ExpectedReplies (BitMap *) | 
| virtual int | ValidSender (struct sockaddr *) | 
| virtual void | LogSendMsg (ICPMsg_t *, sockaddr const *) | 
| virtual int | IsOnline () | 
| virtual Connection * | GetRecvChan () | 
| virtual Connection * | GetSendChan () | 
| virtual int | ExtToIntRecvSockAddr (sockaddr const *in, sockaddr *out) | 
Definition at line 657 of file ICP.h.
| MultiCastPeer::MultiCastPeer | ( | IpAddr const & | addr, | |
| uint16_t | mc_port, | |||
| int | ttl, | |||
| ICPProcessor * | icpPr | |||
| ) | 
Definition at line 986 of file ICPConfig.cc.
References ats_ip_set(), and IpEndpoint::sa.
| int MultiCastPeer::AddMultiCastChild | ( | Peer * | P | ) | 
Definition at line 1112 of file ICPConfig.cc.
References Peer::_next, ats_ip_ntop(), ats_ip_port_host_order(), FindMultiCastChild(), Peer::GetIP(), Peer::SetNext(), and Warning.
| int MultiCastPeer::ExpectedReplies | ( | BitMap * | expected_replies_list | ) |  [virtual] | 
Implements Peer.
Definition at line 1045 of file ICPConfig.cc.
References Peer::_next, ParentSiblingPeer::ExpectedReplies(), and Peer::GetNext().
| virtual int MultiCastPeer::ExtToIntRecvSockAddr | ( | sockaddr const * | in, | |
| sockaddr * | out | |||
| ) |  [inline, virtual] | 
Implements Peer.
Definition at line 691 of file ICP.h.
References ats_ip_copy(), ats_ip_port_cast(), FindMultiCastChild(), and Peer::GetIP().
Find the multicast child peer with IP address ip on port.
If port is 0 the port is not checked.
| ip | IP address. | |
| port | Port (host order). | 
Definition at line 1130 of file ICPConfig.cc.
References Peer::_next, ats_ip_port_host_order(), Peer::GetIP(), and Peer::GetNext().
Referenced by AddMultiCastChild(), ExtToIntRecvSockAddr(), and LogSendMsg().
| sockaddr * MultiCastPeer::GetIP | ( | ) |  [virtual] | 
| virtual Connection* MultiCastPeer::GetRecvChan | ( | ) |  [inline, virtual] | 
| int MultiCastPeer::GetRecvFD | ( | ) |  [virtual] | 
| virtual Connection* MultiCastPeer::GetSendChan | ( | ) |  [inline, virtual] | 
| int MultiCastPeer::GetSendFD | ( | ) |  [virtual] | 
| int MultiCastPeer::GetTTL | ( | ) | 
Definition at line 994 of file ICPConfig.cc.
| int MultiCastPeer::IsOnline | ( | ) |  [virtual] | 
Implements Peer.
Definition at line 1106 of file ICPConfig.cc.
References Peer::_ICPpr, ICPProcessor::GetConfig(), ICPConfiguration::globalConfig(), and ICPConfigData::ICPmulticastConfigured().
| void MultiCastPeer::LogSendMsg | ( | ICPMsg_t * | m, | |
| sockaddr const * | sa | |||
| ) |  [virtual] | 
Implements Peer.
Definition at line 1079 of file ICPConfig.cc.
References Peer::_next, Peer::_stats, ats_ip_port_host_order(), FindMultiCastChild(), ICPMsg::h, ink_get_hrtime(), Peer::PeerStats::last_send, Peer::LogSendMsg(), ICPMsgHeader::opcode, Peer::PeerStats::sent, and Peer::PeerStats::total_sent.
| Action * MultiCastPeer::RecvFrom_re | ( | Continuation * | cont, | |
| void * | token, | |||
| IOBufferBlock * | , | |||
| int | len, | |||
| struct sockaddr * | from, | |||
| socklen_t * | fromlen | |||
| ) |  [virtual] | 
Implements Peer.
Definition at line 1025 of file ICPConfig.cc.
References Peer::buf, Connection::fd, UDPNetProcessor::recvfrom_re(), and udpNet.
| virtual Action* MultiCastPeer::SendMsg_re | ( | Continuation * | , | |
| void * | , | |||
| struct msghdr * | , | |||
| struct sockaddr const * | to | |||
| ) |  [virtual] | 
Implements Peer.
| int MultiCastPeer::ValidSender | ( | struct sockaddr * | sa | ) |  [virtual] | 
Implements Peer.
Definition at line 1060 of file ICPConfig.cc.
References Peer::_next, ats_ip_addr_eq(), ats_ip_port_cast(), Peer::GetIP(), and Peer::GetNext().
 1.7.1
 1.7.1