The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Async::Ping::ICMP

VERSION

version 0.002000

DESCRIPTION

This is the ICMP part of Net::Async::Ping. See that documentation for full details.

ICMP methods

This module will first attempt to use a ping socket to send its ICMP packets, which does not need root privileges. These are only supported on Linux, and only when the group is stipulated in /proc/sys/net/ipv4/ping_group_range. Failing that, the module will send standard RAW packets, which will fail if attempted from a non-privileged account.

Additional options

To disable the attempt to send from a ping socket, set use_ping_socket to 0 when initiating the object:

 my $p = Net::Async::Ping->new(
   icmp => {
      use_ping_socket => 0,
   },
 );

Return value

Net::Async::Ping::ICMP will return the hires time on success. On failure, it will return the future from IO::Async::Resolver if that failed. Otherwise, it will return as a future failure:

"ICMP Unreachable"

ICMP response was ICMP_UNREACHABLE

"ICMP Timeout"

ICMP response was ICMP_TIME_EXCEEDED

"Receive error"

An error was received from IO::Async::Socket.

NAME

Net::Async::Ping::ICMP

VERSION

version 0.001001

AUTHOR

Arthur Axel "fREW" Schmidt <frioux+cpan@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by Arthur Axel "fREW" Schmidt.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.