lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e59430e9-ed20-4358-bddf-fa5bf6f0d0da@lunn.ch>
Date: Fri, 15 Aug 2025 21:10:34 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Guilherme Novaes Lima <acc.guilhermenl@...il.com>
Cc: netdev@...r.kernel.org
Subject: Re: Seeking guidance on Rust porting for network driver as a
 learning project

> If there are any maintainers or experienced folks willing to offer
> guidance or suggest a suitable driver for this kind of project, I’d
> be very grateful.

The problem is, network devices make use of a very large number of
APIs into core Linux. It is hard to write a Rust networking driver
until there are rust bindings for all these APIs.

To stand any chance of writing a networking driver in Rust, you need
to find a really simple device. How far has Rust got with I2C or SPI?
Is it possible to write a simple Rust I2C or SPI client driver? If so,
maybe look for an I2C or SPI network device which is currently
unsupported. That will simplify things a lot.

Or maybe see if you can find a USB Ethernet dongle which is currently
unsupported, that would make use of usbnet to provide most of the
code. You then need a Rust binding onto usbnet, plus a number of other
Rust bindings onto anything else needed.

This is not a simple problems space. It is going to need a lot of time
and effort to do anything useful.

    Andrew


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ