From f0058b1b1fe9f7e69b415616096fb9347f599426 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Thu, 9 Jan 2014 11:53:26 +0100 Subject: ping: revert "try SOCK_DGRAM if no root privileges" It wasn't working, and fixes on top of it would make ping noticeably larger. Signed-off-by: Denys Vlasenko --- networking/ping.c | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) (limited to 'networking/ping.c') diff --git a/networking/ping.c b/networking/ping.c index 5d71fe8cc..5e4771f5a 100644 --- a/networking/ping.c +++ b/networking/ping.c @@ -168,22 +168,9 @@ create_icmp_socket(void) #endif sock = socket(AF_INET, SOCK_RAW, 1); /* 1 == ICMP */ if (sock < 0) { - if (errno != EPERM) - bb_perror_msg_and_die(bb_msg_can_not_create_raw_socket); -#if defined(__linux__) || defined(__APPLE__) - /* We don't have root privileges. Try SOCK_DGRAM instead. - * Linux needs net.ipv4.ping_group_range for this to work. - * MacOSX allows ICMP_ECHO, ICMP_TSTAMP or ICMP_MASKREQ - */ -#if ENABLE_PING6 - if (lsa->u.sa.sa_family == AF_INET6) - sock = socket(AF_INET6, SOCK_DGRAM, IPPROTO_ICMPV6); - else -#endif - sock = socket(AF_INET, SOCK_DGRAM, 1); /* 1 == ICMP */ - if (sock < 0) -#endif - bb_error_msg_and_die(bb_msg_perm_denied_are_you_root); + if (errno == EPERM) + bb_error_msg_and_die(bb_msg_perm_denied_are_you_root); + bb_perror_msg_and_die(bb_msg_can_not_create_raw_socket); } xmove_fd(sock, pingsock); -- cgit v1.2.3