[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 07/18] slirp: Make udp_attach IPv6 compatible
From: |
Samuel Thibault |
Subject: |
[Qemu-devel] [PATCH 07/18] slirp: Make udp_attach IPv6 compatible |
Date: |
Fri, 11 Dec 2015 01:15:19 +0100 |
From: Guillaume Subiron <address@hidden>
A sa_family_t is now passed in argument to udp_attach instead of using a
hardcoded "AF_INET" to call qemu_socket().
Signed-off-by: Guillaume Subiron <address@hidden>
Signed-off-by: Samuel Thibault <address@hidden>
---
slirp/ip_icmp.c | 2 +-
slirp/udp.c | 7 ++++---
slirp/udp.h | 2 +-
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/slirp/ip_icmp.c b/slirp/ip_icmp.c
index 3a29847..592f33a 100644
--- a/slirp/ip_icmp.c
+++ b/slirp/ip_icmp.c
@@ -162,7 +162,7 @@ icmp_input(struct mbuf *m, int hlen)
if (icmp_send(so, m, hlen) == 0) {
return;
}
- if(udp_attach(so) == -1) {
+ if (udp_attach(so, AF_INET) == -1) {
DEBUG_MISC((dfd,"icmp_input udp_attach errno = %d-%s\n",
errno,strerror(errno)));
sofree(so);
diff --git a/slirp/udp.c b/slirp/udp.c
index f2dd773..be49e84 100644
--- a/slirp/udp.c
+++ b/slirp/udp.c
@@ -167,7 +167,7 @@ udp_input(register struct mbuf *m, int iphlen)
if (!so) {
goto bad;
}
- if(udp_attach(so) == -1) {
+ if (udp_attach(so, AF_INET) == -1) {
DEBUG_MISC((dfd," udp_attach errno = %d-%s\n",
errno,strerror(errno)));
sofree(so);
@@ -275,9 +275,10 @@ int udp_output(struct socket *so, struct mbuf *m,
}
int
-udp_attach(struct socket *so)
+udp_attach(struct socket *so, sa_family_t af)
{
- if((so->s = qemu_socket(AF_INET,SOCK_DGRAM,0)) != -1) {
+ so->s = qemu_socket(af, SOCK_DGRAM, 0);
+ if (so->s != -1) {
so->so_expire = curtime + SO_EXPIRE;
insque(so, &so->slirp->udb);
}
diff --git a/slirp/udp.h b/slirp/udp.h
index a04b8ce..15e73c1 100644
--- a/slirp/udp.h
+++ b/slirp/udp.h
@@ -76,7 +76,7 @@ struct mbuf;
void udp_init(Slirp *);
void udp_cleanup(Slirp *);
void udp_input(register struct mbuf *, int);
-int udp_attach(struct socket *);
+int udp_attach(struct socket *, sa_family_t af);
void udp_detach(struct socket *);
struct socket * udp_listen(Slirp *, uint32_t, u_int, uint32_t, u_int,
int);
--
2.6.2
- [Qemu-devel] [PATCHv5 00/18] slirp: Adding IPv6 support to Qemu -net user mode, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 01/18] slirp: goto bad in udp_input if sosendto fails, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 09/18] qemu/timer.h : Adding function to second scale, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 17/18] slirp: Adding IPv6 address for DNS relay, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 05/18] slirp: Factorizing address translation, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 12/18] slirp: Adding IPv6 UDP support, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 07/18] slirp: Make udp_attach IPv6 compatible,
Samuel Thibault <=
- [Qemu-devel] [PATCH 13/18] slirp: Factorizing tcpiphdr structure with an union, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 14/18] slirp: Generalizing and neutralizing various TCP functions before adding IPv6 stuff, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 11/18] slirp: Adding ICMPv6 error sending, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 08/18] slirp: Adding family argument to tcp_fconnect(), Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 15/18] slirp: Reindent after refactoring, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 03/18] slirp: Reindent after refactoring, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 18/18] qapi-schema, qemu-options & slirp: Adding Qemu options for IPv6 addresses, Samuel Thibault, 2015/12/10
- [Qemu-devel] [PATCH 10/18] slirp: Adding IPv6, ICMPv6 Echo and NDP autoconfiguration, Samuel Thibault, 2015/12/10