From 889ce9b964f329410c97e9fbe3204c87078d13d4 Mon Sep 17 00:00:00 2001 From: Claude Jordan <45038457+cljord@users.noreply.github.com> Date: Mon, 31 May 2021 23:35:19 +0200 Subject: [PATCH] Add check_open(sock) to _sockname (#41000) Not checking could lead to a segfault on closed TCPSockets in getpeername Fixes #40993 --- stdlib/Sockets/src/Sockets.jl | 1 + 1 file changed, 1 insertion(+) diff --git a/stdlib/Sockets/src/Sockets.jl b/stdlib/Sockets/src/Sockets.jl index 65884bc190cace..6952aa9bd8a0fd 100644 --- a/stdlib/Sockets/src/Sockets.jl +++ b/stdlib/Sockets/src/Sockets.jl @@ -806,6 +806,7 @@ socket is connected to. Valid only for connected TCP sockets. getpeername(sock::TCPSocket) = _sockname(sock, false) function _sockname(sock, self=true) + sock.status == StatusInit || check_open(sock) rport = Ref{Cushort}(0) raddress = zeros(UInt8, 16) rfamily = Ref{Cuint}(0)