ACE
6.1.0
|
This class is useful to perform ICMP echo checks (pinging) on the party of your interest. It may be used as well to check LAN-adapters against 3rd parties. More...
#include <Ping_Socket.h>
Public Types | |
enum | { PING_BUFFER_SIZE = (1024 * 2) } |
Public Member Functions | |
ACE_Ping_Socket (void) | |
Default constructor. | |
ACE_Ping_Socket (ACE_Addr const &local, int protocol=IPPROTO_ICMP, int reuse_addr=0) | |
~ACE_Ping_Socket (void) | |
Destructor. | |
int | open (ACE_Addr const &local=ACE_Addr::sap_any, int protocol=IPPROTO_ICMP, int reuse_addr=0) |
Wrapper around the BSD-style socket system call (no QoS). | |
int | send_echo_check (ACE_INET_Addr &remote_addr, bool to_connect=false) |
to_connect = true - makes connect to remote address | |
int | process_incoming_dgram (char *ptr, ssize_t len) |
int | make_echo_check (ACE_INET_Addr &remote_addr, bool to_connect=false, ACE_Time_Value const *timeout=&time_default_) |
to_connect = true - makes connect to remote address | |
char * | icmp_recv_buff (void) |
void | dump (void) const |
Dump the state of an object. | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. | |
Static Public Attributes | |
static ACE_Time_Value const | time_default_ |
Private Types | |
typedef ACE_ICMP_Socket | inherited |
Private Member Functions | |
int | receive_echo_reply (ACE_Time_Value const *timeout) |
int | get_remote_addr (ACE_INET_Addr &addr) const |
Do not allow this function to percolate up to this interface. | |
Private Attributes | |
char | icmp_send_buff_ [PING_BUFFER_SIZE] |
char | icmp_recv_buff_ [PING_BUFFER_SIZE] |
ACE_UINT16 | sequence_number_ |
bool | connected_socket_ |
This class is useful to perform ICMP echo checks (pinging) on the party of your interest. It may be used as well to check LAN-adapters against 3rd parties.
typedef ACE_ICMP_Socket ACE_Ping_Socket::inherited [private] |
ACE_Ping_Socket::ACE_Ping_Socket | ( | void | ) |
Default constructor.
ACE_Ping_Socket::ACE_Ping_Socket | ( | ACE_Addr const & | local, |
int | protocol = IPPROTO_ICMP , |
||
int | reuse_addr = 0 |
||
) |
ACE_Ping_Socket::~ACE_Ping_Socket | ( | void | ) |
Destructor.
void ACE_Ping_Socket::dump | ( | void | ) | const |
Dump the state of an object.
Reimplemented from ACE_ICMP_Socket.
int ACE_Ping_Socket::get_remote_addr | ( | ACE_INET_Addr & | addr | ) | const [private] |
Do not allow this function to percolate up to this interface.
char * ACE_Ping_Socket::icmp_recv_buff | ( | void | ) | [inline] |
int ACE_Ping_Socket::make_echo_check | ( | ACE_INET_Addr & | remote_addr, |
bool | to_connect = false , |
||
ACE_Time_Value const * | timeout = &time_default_ |
||
) |
to_connect = true - makes connect to remote address
int ACE_Ping_Socket::open | ( | ACE_Addr const & | local = ACE_Addr::sap_any , |
int | protocol = IPPROTO_ICMP , |
||
int | reuse_addr = 0 |
||
) |
Wrapper around the BSD-style socket
system call (no QoS).
Reimplemented from ACE_ICMP_Socket.
int ACE_Ping_Socket::process_incoming_dgram | ( | char * | ptr, |
ssize_t | len | ||
) |
To receive ICMP_ECHOREPLY
. To be called after successfully sending ICMP_ECHO
.
int ACE_Ping_Socket::receive_echo_reply | ( | ACE_Time_Value const * | timeout | ) | [private] |
int ACE_Ping_Socket::send_echo_check | ( | ACE_INET_Addr & | remote_addr, |
bool | to_connect = false |
||
) |
to_connect = true - makes connect to remote address
Declare the dynamic allocation hooks.
Reimplemented from ACE_ICMP_Socket.
bool ACE_Ping_Socket::connected_socket_ [private] |
char ACE_Ping_Socket::icmp_recv_buff_[PING_BUFFER_SIZE] [private] |
char ACE_Ping_Socket::icmp_send_buff_[PING_BUFFER_SIZE] [private] |
ACE_UINT16 ACE_Ping_Socket::sequence_number_ [private] |
ACE_Time_Value const ACE_Ping_Socket::time_default_ [static] |