patch-2.4.20 linux-2.4.20/net/ipv4/tcp_diag.c
Next file: linux-2.4.20/net/ipv4/tcp_input.c
Previous file: linux-2.4.20/net/ipv4/tcp.c
Back to the patch index
Back to the overall index
- Lines: 29
- Date:
Thu Nov 28 15:53:15 2002
- Orig file:
linux-2.4.19/net/ipv4/tcp_diag.c
- Orig date:
Fri Dec 21 09:42:05 2001
diff -urN linux-2.4.19/net/ipv4/tcp_diag.c linux-2.4.20/net/ipv4/tcp_diag.c
@@ -69,7 +69,8 @@
r->id.tcpdiag_src[0] = sk->rcv_saddr;
r->id.tcpdiag_dst[0] = sk->daddr;
r->id.tcpdiag_if = sk->bound_dev_if;
- *((struct sock **)&r->id.tcpdiag_cookie) = sk;
+ r->id.tcpdiag_cookie[0] = (u32)(unsigned long)sk;
+ r->id.tcpdiag_cookie[1] = (u32)(((unsigned long)sk >> 31) >> 1);
if (r->tcpdiag_state == TCP_TIME_WAIT) {
struct tcp_tw_bucket *tw = (struct tcp_tw_bucket*)sk;
@@ -229,7 +230,8 @@
err = -ESTALE;
if ((req->id.tcpdiag_cookie[0] != TCPDIAG_NOCOOKIE ||
req->id.tcpdiag_cookie[1] != TCPDIAG_NOCOOKIE) &&
- sk != *((struct sock **)&req->id.tcpdiag_cookie[0]))
+ ((u32)(unsigned long)sk != req->id.tcpdiag_cookie[0] ||
+ (u32)((((unsigned long)sk) >> 31) >> 1) != req->id.tcpdiag_cookie[1]))
goto out;
err = -ENOMEM;
@@ -346,7 +348,7 @@
break;
if (sk->family == AF_INET6 && cond->family == AF_INET) {
if (addr[0] == 0 && addr[1] == 0 &&
- addr[2] == __constant_htonl(0xffff) &&
+ addr[2] == htonl(0xffff) &&
bitstring_match(addr+3, cond->addr, cond->prefix_len))
break;
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)