[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 12/17] slirp: Make udp_attach IPv6 compatible
From: |
Jason Wang |
Subject: |
[Qemu-devel] [PULL 12/17] slirp: Make udp_attach IPv6 compatible |
Date: |
Tue, 2 Feb 2016 10:36:16 +0800 |
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().
This prepares for IPv6 support.
Signed-off-by: Guillaume Subiron <address@hidden>
Signed-off-by: Samuel Thibault <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Jason Wang <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 63776c0..94e19b7 100644
--- a/slirp/udp.c
+++ b/slirp/udp.c
@@ -169,7 +169,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);
@@ -277,9 +277,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.5.0
- [Qemu-devel] [PULL 02/17] qemu-doc: Do not promote deprecated -smb and -redir options, (continued)
- [Qemu-devel] [PULL 02/17] qemu-doc: Do not promote deprecated -smb and -redir options, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 03/17] net: cadence_gem: check packet size in gem_recieve, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 04/17] cadence_gem: fix buffer overflow, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 05/17] slirp: goto bad in udp_input if sosendto fails, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 06/17] slirp: Generalizing and neutralizing ARP code, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 07/17] slirp: Adding address family switch for produced frames, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 08/17] slirp: Make Socket structure IPv6 compatible, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 09/17] slirp: Factorizing address translation, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 10/17] slirp: Factorizing and cleaning solookup(), Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 11/17] slirp: Add sockaddr_equal, make solookup family-agnostic, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 12/17] slirp: Make udp_attach IPv6 compatible,
Jason Wang <=
- [Qemu-devel] [PULL 13/17] slirp: Adding family argument to tcp_fconnect(), Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 14/17] e1000: eliminate infinite loops on out-of-bounds transfer start, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 15/17] net: netmap: use nm_open() to open netmap ports, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 16/17] net: always walk through filters in reverse if traffic is egress, Jason Wang, 2016/02/01
- [Qemu-devel] [PULL 17/17] net/filter: Fix the output information for command 'info network', Jason Wang, 2016/02/01
- Re: [Qemu-devel] [PULL 00/17] Net patches, Peter Maydell, 2016/02/02