All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/2] strncpy_from_user for Rust
@ 2025-05-05 12:17 Alice Ryhl
  2025-05-05 12:17 ` [PATCH v3 1/2] uaccess: rust: add strncpy_from_user Alice Ryhl
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Alice Ryhl @ 2025-05-05 12:17 UTC (permalink / raw)
  To: Miguel Ojeda, Andrew Morton, Alexander Viro, Greg Kroah-Hartman
  Cc: Boqun Feng, Gary Guo, Björn Roy Baron, Benno Lossin,
	Andreas Hindborg, Trevor Gross, Danilo Krummrich, rust-for-linux,
	linux-kernel, Alice Ryhl

There is currently no easy way to read NUL-terminated strings from
userspace. Trying to use the ordinary read function on an array of the
maximum length doesn't work because it could fail with EFAULT when the C
string is shorter than the maximum length. In this case,
strncpy_from_user is better because it doesn't return EFAULT even if it
encounters a page fault on bytes that are after the NUL-terminator but
before the maximum length.

Signed-off-by: Alice Ryhl <aliceryhl@google.com>
---
Changes in v3:
- Remove pub from raw_strncpy_from_user.
- Mention that some data may have been copied on EFAULT.
- Add more comments to strcpy_into_buf about tricky cases.
- Rewrite documentation of strcpy_into_buf.
- Pick up Reviewed-by tags.
- Link to v2: https://lore.kernel.org/r/20250429-strncpy-from-user-v2-0-7e6facac0bf0@google.com

Changes in v2:
- Rename the raw wrapper around strncpy_from_user to raw_strncpy_from_user.
- Add a more convenient helper on top that adds the missing
  NUL-terminator when necessary.
- Link to v1: https://lore.kernel.org/r/20250424-strncpy-from-user-v1-1-f983fe21685a@google.com

---
Alice Ryhl (2):
      uaccess: rust: add strncpy_from_user
      uaccess: rust: add UserSliceReader::strcpy_into_buf

 rust/kernel/uaccess.rs | 86 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 85 insertions(+), 1 deletion(-)
---
base-commit: 9c32cda43eb78f78c73aee4aa344b777714e259b
change-id: 20250424-strncpy-from-user-1f2d06b0cdde

Best regards,
-- 
Alice Ryhl <aliceryhl@google.com>


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2025-05-06 13:30 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-05 12:17 [PATCH v3 0/2] strncpy_from_user for Rust Alice Ryhl
2025-05-05 12:17 ` [PATCH v3 1/2] uaccess: rust: add strncpy_from_user Alice Ryhl
2025-05-05 14:30   ` Greg Kroah-Hartman
2025-05-05 19:23     ` Boqun Feng
2025-05-06  9:18     ` Alice Ryhl
2025-05-06 12:52       ` Greg Kroah-Hartman
2025-05-06 13:30         ` Alice Ryhl
2025-05-05 12:17 ` [PATCH v3 2/2] uaccess: rust: add UserSliceReader::strcpy_into_buf Alice Ryhl
2025-05-05 16:22   ` Danilo Krummrich
2025-05-06  9:10     ` Alice Ryhl
2025-05-05 12:21 ` [PATCH v3 0/2] strncpy_from_user for Rust Alice Ryhl

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.