patch-2.4.0-test2 linux/net/decnet/af_decnet.c

Next file: linux/net/decnet/dn_neigh.c
Previous file: linux/net/core/profile.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test1/linux/net/decnet/af_decnet.c linux/net/decnet/af_decnet.c
@@ -285,7 +285,7 @@
 
 	switch(*fmt) {
 		case 0:
-			sdn->sdn_objnum = dn_htons(type);
+			sdn->sdn_objnum = type;
 			return 2;
 		case 1:
 			namel = 16;
@@ -526,10 +526,6 @@
 {
 	struct dn_scp *scp = &sk->protinfo.dn;
 
-	if (sk->dead)
-		return;
-
-	sk->dead = 1;
 	scp->nsp_rxtshift = 0; /* reset back off */
 
 	if (sk->socket) {
@@ -661,11 +657,12 @@
 	struct sock *sk = sock->sk;
 
 	if (sk) {
+		sock_orphan(sk);
+		sock_hold(sk);
 		lock_sock(sk);
-		sock->sk = NULL;
-		sk->socket = NULL;
 		dn_destroy_sock(sk);
 		release_sock(sk);
+		sock_put(sk);
 	}
 
         return 0;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)