aboutsummaryrefslogtreecommitdiff
path: root/lib/net.c
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2018-01-30 18:44:58 -0600
committerRob Landley <rob@landley.net>2018-01-30 18:44:58 -0600
commit1498c2fc3d0a9b72232e7aee2d973f15e82cb5b4 (patch)
treec5ab374b4bb75db748f91c4aa533431786b64bb6 /lib/net.c
parent03b83ee148b62fe56aa834a0e0c96352d34ef587 (diff)
downloadtoybox-1498c2fc3d0a9b72232e7aee2d973f15e82cb5b4.tar.gz
Basic ping support.
Requires echo 0 $((1<<30)) > /proc/sys/net/ipv4/ping_group_range (as root)
Diffstat (limited to 'lib/net.c')
-rw-r--r--lib/net.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/net.c b/lib/net.c
index 5c6d4f7c..846be31f 100644
--- a/lib/net.c
+++ b/lib/net.c
@@ -102,3 +102,16 @@ int pollinate(int in1, int in2, int out1, int out2, int timeout, int shutdown_ti
}
}
}
+
+// Return converted numeric address in libbuf
+char *ntop(struct sockaddr *sa)
+{
+ void *addr;
+
+ if (sa->sa_family == AF_INET) addr = &((struct sockaddr_in *)sa)->sin_addr;
+ else addr = &((struct sockaddr_in6 *)sa)->sin6_addr;
+
+ inet_ntop(sa->sa_family, addr, libbuf, sizeof(libbuf));
+
+ return libbuf;
+}