diff --git a/net/x25/af_x25.c b/net/x25/af_x25.c
index cbddd0cb83f1a2445ba26f60225b0fa15a6a21b2..36e84e13c6aa9f6167d9b6ba2cf48b72829c2d58 100644
--- a/net/x25/af_x25.c
+++ b/net/x25/af_x25.c
@@ -402,6 +402,7 @@ static void __x25_destroy_socket(struct sock *sk)
 			/*
 			 * Queue the unaccepted socket for death
 			 */
+			skb->sk->sk_state = TCP_LISTEN;
 			sock_set_flag(skb->sk, SOCK_DEAD);
 			x25_start_heartbeat(skb->sk);
 			x25_sk(skb->sk)->state = X25_STATE_0;