lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Sun, 24 Feb 2019 06:28:12 +0000
From:   Al Viro <>
Cc:     Rainer Weikusat <>
Subject: [Q] why do we ever try to call unix_dgram_peer_wake_disconnect() for

	What's the point of calling unix_dgram_peer_wake_disconnect() in
unix_release_sock() of SOCK_STREAM/SOCK_SEQPACKET sockets?  AFAICS,
for those we never call unix_dgram_peer_wake_connect(), i.e. ->peer_wake.private
of any non-SOCK_DGRAM socker has to remain NULL.  Which makes that call simply
and that doesn't even serve as a barrier for anything else.  Should that
have been
                if (sk->sk_type == SOCK_STREAM || sk->sk_type == SOCK_SEQPACKET) {
                        /* No more writes */
                        skpair->sk_shutdown = SHUTDOWN_MASK;
                        if (!skb_queue_empty(&sk->sk_receive_queue) || embrion)
                                skpair->sk_err = ECONNRESET;
                        sk_wake_async(skpair, SOCK_WAKE_WAITD, POLL_HUP);
                } else {
			unix_dgram_peer_wake_disconnect(sk, skpair);
or am I missing something subtle here?

Powered by blists - more mailing lists