--TEST-- socket_create with IPPROTO_ICMP --EXTENSIONS-- sockets --SKIPIF-- --FILE-- > 16) { $sum = ($sum & 0xFFFF) + ($sum >> 16); } return ~ $sum & 0xFFFF; }; $header = pack('C2n3a*', $type, $code, $checksum($header), $identifier, $sequence, $data); if (!socket_sendto($socket, $header, strlen($header), 0, $host, 0)) { die("Unable to send packet: " . socket_strerror(socket_last_error($socket)) . "\n"); } $read = [$socket]; $write = $except = []; $timeout = ['sec' => 4, 'usec' => 0]; if (socket_select($read, $write, $except, $timeout['sec'], $timeout['usec']) > 0) { $response = ''; socket_recv($socket, $response, 65535, 0); var_dump(bin2hex($response)); } else { die("Unable to read the response\n"); } socket_close($socket); ?> --EXPECTF-- string(64) "%s"