2023-05-15 05:47:12

by FUJITA Tomonori

[permalink] [raw]
Subject: [PATCH 0/2] rust: networking and crypto abstractions

This includes initial rust abstractions for networking and crypto.

I've been working on in-kernel TLS 1.3 handshake in Rust on the top of
this. Currently you can run simple TLS server code, which does a
handshake, sets up kTLS (Kernel TLS offload) to read and write some
bytes.

https://github.com/fujita/rust-tls

Seems that there are some potential users for in-kernel TLS 1.3
handshake (can be used for QUIC protocol too). Hopefully Rust could
help with auditing complicated security-relevant code in the kernel.

The TLS code isn't ready for reviewing yet but I like to push the
dependency for upstream. There might be other potential users for
networking and crypto abstractions.

The series should be cleanly applied to rust-next tree (ac9a786).

Note that this doesn't include all the dependency for the in-kernel
TLS handshake code. You can find at:

https://github.com/fujita/linux/tree/rust-tls


FUJITA Tomonori (2):
rust: add synchronous message digest support
rust: add socket support

rust/bindings/bindings_helper.h | 4 +
rust/helpers.c | 24 ++++++
rust/kernel/crypto.rs | 108 +++++++++++++++++++++++++
rust/kernel/lib.rs | 4 +
rust/kernel/net.rs | 174 ++++++++++++++++++++++++++++++++++++++++
5 files changed, 314 insertions(+)