patch-2.4.0-test7 linux/net/ipv6/udp.c
Next file: linux/net/irda/Config.in
Previous file: linux/net/ipv6/tcp_ipv6.c
Back to the patch index
Back to the overall index
- Lines: 49
- Date:
Thu Aug 10 13:01:26 2000
- Orig file:
v2.4.0-test6/linux/net/ipv6/udp.c
- Orig date:
Mon Jul 10 16:47:28 2000
diff -u --recursive --new-file v2.4.0-test6/linux/net/ipv6/udp.c linux/net/ipv6/udp.c
@@ -7,7 +7,7 @@
*
* Based on linux/ipv4/udp.c
*
- * $Id: udp.c,v 1.55 2000/07/08 00:20:43 davem Exp $
+ * $Id: udp.c,v 1.56 2000/08/09 11:59:04 davem Exp $
*
* Fixes:
* Hideaki YOSHIFUJI : sin6_scope_id support
@@ -109,7 +109,10 @@
(!sk2->rcv_saddr ||
addr_type == IPV6_ADDR_ANY ||
!ipv6_addr_cmp(&sk->net_pinfo.af_inet6.rcv_saddr,
- &sk2->net_pinfo.af_inet6.rcv_saddr)) &&
+ &sk2->net_pinfo.af_inet6.rcv_saddr) ||
+ (addr_type == IPV6_ADDR_MAPPED &&
+ sk2->family == AF_INET &&
+ sk->rcv_saddr == sk2->rcv_saddr)) &&
(!sk2->reuse || !sk->reuse))
goto fail;
}
@@ -270,7 +273,6 @@
ipv6_addr_set(&np->saddr, 0, 0,
__constant_htonl(0x0000ffff),
sk->saddr);
-
}
if(ipv6_addr_any(&np->rcv_saddr)) {
@@ -343,7 +345,7 @@
if(ipv6_addr_any(&np->rcv_saddr)) {
ipv6_addr_copy(&np->rcv_saddr, &saddr);
- sk->rcv_saddr = 0xffffffff;
+ sk->rcv_saddr = LOOPBACK4_IPV6;
}
sk->state = TCP_ESTABLISHED;
}
@@ -923,8 +925,8 @@
sp->state,
atomic_read(&sp->wmem_alloc), atomic_read(&sp->rmem_alloc),
sock_timer_active, timer_expires-jiffies, 0,
- sp->socket->inode->i_uid, 0,
- sp->socket ? sp->socket->inode->i_ino : 0,
+ sock_i_uid(sp), 0,
+ sock_i_ino(sp),
atomic_read(&sp->refcnt), sp);
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)