Description
In the Linux kernel, the following vulnerability has been resolved: SUNRPC: wait for in-flight client TLS handshake callback xs_tls_handshake_sync() gives xs_tls_handshake_done() a reference to the lower transport before submitting the handshake request. On timeout or signal, the synchronous waiter drops that reference after calling tls_handshake_cancel(). handshake_req_cancel() returns false when handshake_complete() has already marked the request complete. In that case the completion callback can still be running, so dropping the callback-owned reference in the waiter can free the lower transport before xs_tls_handshake_done() stores xprt_err or drops its own reference. If cancellation loses to completion, wait until xs_tls_handshake_done() signals handshake_done and let the callback release its reference. This mirrors the server-side handshake lifetime handling and keeps the timeout or signal return value unchanged.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
75eb6af7acdf566c68d61e98e67ee2f235201c02 to < fb43997407bc17ee39bac81ab708101312e255f5affected75eb6af7acdf566c68d61e98e67ee2f235201c02 to < 15431820f448e09f8029b670d5c82aa5917d4625affected75eb6af7acdf566c68d61e98e67ee2f235201c02 to < 1de391e8b94e31b45c19c16dbf315e294810c7deaffected75eb6af7acdf566c68d61e98e67ee2f235201c02 to < 7fbb6d2ab0391eb8d1f1a68e6bc263ef02cea61baffected75eb6af7acdf566c68d61e98e67ee2f235201c02 to < a89dd597458848b463d284b15e42a8078beeb046affected
Linux Linux
Default version status: affected
6.5affected0 to < 6.5unaffected6.6.157 to ≤ 6.6.*unaffected6.12.109 to ≤ 6.12.*unaffected6.18.50 to ≤ 6.18.*unaffected7.2.4 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/fb43997407bc17ee39bac81ab708101312e255f5 ↗
- https://git.kernel.org/stable/c/15431820f448e09f8029b670d5c82aa5917d4625 ↗
- https://git.kernel.org/stable/c/1de391e8b94e31b45c19c16dbf315e294810c7de ↗
- https://git.kernel.org/stable/c/7fbb6d2ab0391eb8d1f1a68e6bc263ef02cea61b ↗
- https://git.kernel.org/stable/c/a89dd597458848b463d284b15e42a8078beeb046 ↗