Description
In the Linux kernel, the following vulnerability has been resolved: svcrdma: Clear sc_cm_id when ADDR_CHANGE replacement fails When svc_rdma_listen_handler() handles RDMA_CM_EVENT_ADDR_CHANGE, it creates a replacement listener cm_id and returns 1, telling the CM core to destroy the old one. If the replacement allocation fails, sc_cm_id still points at the old cm_id that the CM core is about to destroy. Any subsequent dereference of sc_cm_id -- such as svc_rdma_detach()'s rdma_disconnect() call -- is a use-after-free. NULL sc_cm_id on the failure path and guard svc_rdma_detach()'s rdma_disconnect() call against NULL so that the listener can be torn down safely when the server shuts down.
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
d1b586e75ec619dde1af47e21a41a6b1b51874c2 to < 2a68aeb2de8ad0fef9c50e73a50622a35c6af1a8affectedd1b586e75ec619dde1af47e21a41a6b1b51874c2 to < 65f0f82f20334e76acaf29087a59af7b3b9699edaffectedd1b586e75ec619dde1af47e21a41a6b1b51874c2 to < 673e358ab7c11f8cec223c6a36a793056a67facdaffectedd1b586e75ec619dde1af47e21a41a6b1b51874c2 to < 01500306e1d50de7ca7a2cdcdfa28ac0523eb747affected2f84d6e8b0a7093758d8da19cec111140e7b6d41affected5cd069ad1cf7fb46af31f0dbe2850868335f5272affected6.1.191 to < 6.2affected6.6.160 to < 6.7affected
Linux Linux
Default version status: affected
6.11affected0 to < 6.11unaffected6.12.114 to ≤ 6.12.*unaffected6.18.57 to ≤ 6.18.*unaffected7.2.4 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected