aboutsummaryrefslogtreecommitdiff
path: root/slirp/slirp.h
diff options
context:
space:
mode:
authorJan Kiszka <jan.kiszka@siemens.com>2011-07-20 12:20:18 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2011-07-23 10:19:50 -0500
commite6d43cfb1f937898dc031c7b38a23e5ccad8bd9a (patch)
tree67adcf8336aa881316f8b91dc17307c47d70ae9f /slirp/slirp.h
parent565465fcae755fbdb11c2f65ec5f0ae62c78db3a (diff)
downloadqemu-arm-e6d43cfb1f937898dc031c7b38a23e5ccad8bd9a.tar.gz
slirp: Forward ICMP echo requests via unprivileged sockets
Linux 3.0 gained support for unprivileged ICMP ping sockets. Use this feature to forward guest pings to the outer world. The host admin has to set the ping_group_range in order to grant access to those sockets. To allow ping for the users group (GID 100): echo 100 100 > /proc/sys/net/ipv4/ping_group_range Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'slirp/slirp.h')
-rw-r--r--slirp/slirp.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/slirp/slirp.h b/slirp/slirp.h
index 954289a8c8..16bb6bae45 100644
--- a/slirp/slirp.h
+++ b/slirp/slirp.h
@@ -152,6 +152,7 @@ int inet_aton(const char *cp, struct in_addr *ia);
#include "tcp_var.h"
#include "tcpip.h"
#include "udp.h"
+#include "ip_icmp.h"
#include "mbuf.h"
#include "sbuf.h"
#include "socket.h"
@@ -218,6 +219,10 @@ struct Slirp {
struct socket udb;
struct socket *udp_last_so;
+ /* icmp states */
+ struct socket icmp;
+ struct socket *icmp_last_so;
+
/* tftp states */
char *tftp_prefix;
struct tftp_session tftp_sessions[TFTP_SESSIONS_MAX];