1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/rust/kernel
Danilo Krummrich a23b018c3b firmware_loader: fix soundness issue in request_internal
`request_internal` must be called with one of the following function
pointers: request_firmware(), firmware_request_nowarn(),
firmware_request_platform() or request_firmware_direct().

The previous `FwFunc` alias did not guarantee this, which is unsound.

In order to fix this up, implement `FwFunc` as new type with a
corresponding type invariant.

Reported-by: Gary Guo <gary@garyguo.net>
Closes: https://lore.kernel.org/lkml/20240620143611.7995e0bb@eugeo/
Signed-off-by: Danilo Krummrich <dakr@redhat.com>
Reviewed-by: Christian Schrefl <chrisi.schrefl@gmail.com>
Link: https://lore.kernel.org/r/20240708200724.3203-2-dakr@redhat.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-07-10 09:35:09 +02:00
..
alloc rust: alloc: fix dangling pointer in VecExt<T>::reserve() 2024-05-08 00:43:30 +02:00
init rust: init: change the generated name of guard variables 2024-05-05 18:05:00 +02:00
net Rust changes for v6.10 2024-05-13 15:13:54 -07:00
sync rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00
alloc.rs rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00
build_assert.rs rust: upgrade to Rust 1.68.2 2023-05-31 17:35:03 +02:00
device.rs device: rust: improve safety comments 2024-06-20 16:14:58 +02:00
error.rs rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00
firmware.rs firmware_loader: fix soundness issue in request_internal 2024-07-10 09:35:09 +02:00
init.rs Rust changes for v6.10 2024-05-13 15:13:54 -07:00
ioctl.rs rust: kernel: mark code fragments in docs with backticks 2024-02-18 21:22:27 +01:00
kunit.rs rust: support srctree-relative links 2023-12-21 20:54:17 +01:00
lib.rs rust: add firmware abstractions 2024-06-18 18:45:12 +02:00
net.rs rust: core abstractions for network PHY drivers 2023-12-15 09:35:50 +00:00
prelude.rs rust: alloc: introduce the BoxExt trait 2024-04-16 22:47:20 +02:00
print.rs rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00
static_assert.rs rust: static_assert: add static_assert! macro 2022-12-04 01:59:16 +01:00
std_vendor.rs rust: update dbg!() to format column number 2024-05-05 18:09:04 +02:00
str.rs rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00
sync.rs rust: sync: implement Default for LockClassKey 2024-05-05 19:22:25 +02:00
task.rs rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00
time.rs rust: time: doc: Add missing C header links 2024-05-01 00:04:47 +02:00
types.rs rust: types: Make Opaque::get const 2024-05-05 13:19:37 +02:00
workqueue.rs rust: kernel: remove redundant imports 2024-05-05 19:22:25 +02:00