mkj / sunset

SSH for Rust, no_std and elsewhere
Other
34 stars 4 forks source link

Sunset SSH

A SSH client and server implementation. It is intended to be very flexible to embed pretty much anywhere, I'm collecting possible use cases in discussions. Don't hesitate to suggest something!

This software is in an early stage. It is suitable for some applications but will certainly have API changes

SSH Features

Working:

Desirable:

Rust versions

At present Sunset will build with latest stable (1.75 at time of writing).

Safety

Sunset uses forbid(unsafe), apart from sunset-async which requires unsafe for Unix interactions.

Release builds should not panic, instead returning Error::bug(). debug_assert! is used in some places for invariants during testing or fuzzing.

Some attempts are made to clear sensitive memory after use, but stack copies will not be cleared.

Author

Matt Johnston matt@ucc.asn.au

It's built on top of lots of other work, particularly Embassy, the rust-crypto crates, Virtue, smoltcp, and Salty.