├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .rustfmt.toml ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── async ├── Cargo.toml ├── README.md ├── changelog.md ├── rust-toolchain.toml └── src │ ├── async_channel.rs │ ├── async_sunset.rs │ ├── client.rs │ ├── lib.rs │ └── server.rs ├── changelog.md ├── demo ├── common │ ├── Cargo.toml │ ├── README.md │ └── src │ │ ├── config.rs │ │ ├── lib.rs │ │ ├── menu.rs │ │ ├── menu_buf.rs │ │ ├── server.rs │ │ └── takepipe.rs ├── picow │ ├── .cargo │ │ └── config.toml │ ├── Cargo.toml │ ├── build.rs │ ├── firmware │ │ ├── 43439A0.bin │ │ ├── 43439A0_clm.bin │ │ ├── LICENSE-permissive-binary-license-1.0.txt │ │ └── README.md │ ├── memory.x │ ├── rust-toolchain.toml │ └── src │ │ ├── flashconfig.rs │ │ ├── keyboard.rs │ │ ├── main.rs │ │ ├── picowmenu.rs │ │ ├── serial.rs │ │ ├── usb.rs │ │ ├── w5500.rs │ │ └── wifi.rs └── std │ ├── Cargo.toml │ ├── rust-toolchain.toml │ ├── src │ ├── main.rs │ └── setupmenu.rs │ └── tap.sh ├── docs └── design.md ├── fuzz ├── .cargo │ └── config.toml ├── Cargo.toml ├── README.md ├── reformat-server.py ├── server.dict └── src │ ├── bin │ ├── arb-server.rs │ └── server.rs │ ├── common.rs │ ├── lib.rs │ └── server.rs ├── rust-toolchain.toml ├── src ├── auth.rs ├── channel.rs ├── cliauth.rs ├── client.rs ├── config.rs ├── conn.rs ├── encrypt.rs ├── error.rs ├── event.rs ├── ident.rs ├── kex.rs ├── lib.rs ├── namelist.rs ├── packets.rs ├── random.rs ├── runner.rs ├── servauth.rs ├── server.rs ├── sign.rs ├── ssh_chapoly.rs ├── sshnames.rs ├── sshwire.rs ├── sunsetlog.rs ├── termmodes.rs ├── test.rs └── traffic.rs ├── sshwire-derive ├── Cargo.toml └── src │ └── lib.rs ├── stdasync ├── Cargo.toml ├── build.rs ├── changelog.md ├── examples │ └── sunsetc.rs ├── rust-toolchain.toml └── src │ ├── agent.rs │ ├── cmdline_client.rs │ ├── fdio.rs │ ├── knownhosts.rs │ ├── lib.rs │ └── pty.rs └── testing ├── ci.sh └── update-toolchain.sh /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/.gitignore -------------------------------------------------------------------------------- /.rustfmt.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/.rustfmt.toml -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/README.md -------------------------------------------------------------------------------- /async/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/Cargo.toml -------------------------------------------------------------------------------- /async/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/README.md -------------------------------------------------------------------------------- /async/changelog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/changelog.md -------------------------------------------------------------------------------- /async/rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/rust-toolchain.toml -------------------------------------------------------------------------------- /async/src/async_channel.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/src/async_channel.rs -------------------------------------------------------------------------------- /async/src/async_sunset.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/src/async_sunset.rs -------------------------------------------------------------------------------- /async/src/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/src/client.rs -------------------------------------------------------------------------------- /async/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/src/lib.rs -------------------------------------------------------------------------------- /async/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/async/src/server.rs -------------------------------------------------------------------------------- /changelog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/changelog.md -------------------------------------------------------------------------------- /demo/common/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/Cargo.toml -------------------------------------------------------------------------------- /demo/common/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/README.md -------------------------------------------------------------------------------- /demo/common/src/config.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/src/config.rs -------------------------------------------------------------------------------- /demo/common/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/src/lib.rs -------------------------------------------------------------------------------- /demo/common/src/menu.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/src/menu.rs -------------------------------------------------------------------------------- /demo/common/src/menu_buf.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/src/menu_buf.rs -------------------------------------------------------------------------------- /demo/common/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/src/server.rs -------------------------------------------------------------------------------- /demo/common/src/takepipe.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/common/src/takepipe.rs -------------------------------------------------------------------------------- /demo/picow/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/.cargo/config.toml -------------------------------------------------------------------------------- /demo/picow/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/Cargo.toml -------------------------------------------------------------------------------- /demo/picow/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/build.rs -------------------------------------------------------------------------------- /demo/picow/firmware/43439A0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/firmware/43439A0.bin -------------------------------------------------------------------------------- /demo/picow/firmware/43439A0_clm.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/firmware/43439A0_clm.bin -------------------------------------------------------------------------------- /demo/picow/firmware/LICENSE-permissive-binary-license-1.0.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/firmware/LICENSE-permissive-binary-license-1.0.txt -------------------------------------------------------------------------------- /demo/picow/firmware/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/firmware/README.md -------------------------------------------------------------------------------- /demo/picow/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/memory.x -------------------------------------------------------------------------------- /demo/picow/rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/rust-toolchain.toml -------------------------------------------------------------------------------- /demo/picow/src/flashconfig.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/flashconfig.rs -------------------------------------------------------------------------------- /demo/picow/src/keyboard.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/keyboard.rs -------------------------------------------------------------------------------- /demo/picow/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/main.rs -------------------------------------------------------------------------------- /demo/picow/src/picowmenu.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/picowmenu.rs -------------------------------------------------------------------------------- /demo/picow/src/serial.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/serial.rs -------------------------------------------------------------------------------- /demo/picow/src/usb.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/usb.rs -------------------------------------------------------------------------------- /demo/picow/src/w5500.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/w5500.rs -------------------------------------------------------------------------------- /demo/picow/src/wifi.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/picow/src/wifi.rs -------------------------------------------------------------------------------- /demo/std/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/std/Cargo.toml -------------------------------------------------------------------------------- /demo/std/rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/std/rust-toolchain.toml -------------------------------------------------------------------------------- /demo/std/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/std/src/main.rs -------------------------------------------------------------------------------- /demo/std/src/setupmenu.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/std/src/setupmenu.rs -------------------------------------------------------------------------------- /demo/std/tap.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/demo/std/tap.sh -------------------------------------------------------------------------------- /docs/design.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/docs/design.md -------------------------------------------------------------------------------- /fuzz/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | [build] 2 | rustflags="--cfg fuzzing" 3 | -------------------------------------------------------------------------------- /fuzz/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/Cargo.toml -------------------------------------------------------------------------------- /fuzz/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/README.md -------------------------------------------------------------------------------- /fuzz/reformat-server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/reformat-server.py -------------------------------------------------------------------------------- /fuzz/server.dict: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/server.dict -------------------------------------------------------------------------------- /fuzz/src/bin/arb-server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/src/bin/arb-server.rs -------------------------------------------------------------------------------- /fuzz/src/bin/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/src/bin/server.rs -------------------------------------------------------------------------------- /fuzz/src/common.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/src/common.rs -------------------------------------------------------------------------------- /fuzz/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/src/lib.rs -------------------------------------------------------------------------------- /fuzz/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/fuzz/src/server.rs -------------------------------------------------------------------------------- /rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/rust-toolchain.toml -------------------------------------------------------------------------------- /src/auth.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/auth.rs -------------------------------------------------------------------------------- /src/channel.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/channel.rs -------------------------------------------------------------------------------- /src/cliauth.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/cliauth.rs -------------------------------------------------------------------------------- /src/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/client.rs -------------------------------------------------------------------------------- /src/config.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/config.rs -------------------------------------------------------------------------------- /src/conn.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/conn.rs -------------------------------------------------------------------------------- /src/encrypt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/encrypt.rs -------------------------------------------------------------------------------- /src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/error.rs -------------------------------------------------------------------------------- /src/event.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/event.rs -------------------------------------------------------------------------------- /src/ident.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/ident.rs -------------------------------------------------------------------------------- /src/kex.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/kex.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/namelist.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/namelist.rs -------------------------------------------------------------------------------- /src/packets.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/packets.rs -------------------------------------------------------------------------------- /src/random.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/random.rs -------------------------------------------------------------------------------- /src/runner.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/runner.rs -------------------------------------------------------------------------------- /src/servauth.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/servauth.rs -------------------------------------------------------------------------------- /src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/server.rs -------------------------------------------------------------------------------- /src/sign.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/sign.rs -------------------------------------------------------------------------------- /src/ssh_chapoly.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/ssh_chapoly.rs -------------------------------------------------------------------------------- /src/sshnames.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/sshnames.rs -------------------------------------------------------------------------------- /src/sshwire.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/sshwire.rs -------------------------------------------------------------------------------- /src/sunsetlog.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/sunsetlog.rs -------------------------------------------------------------------------------- /src/termmodes.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/termmodes.rs -------------------------------------------------------------------------------- /src/test.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/test.rs -------------------------------------------------------------------------------- /src/traffic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/src/traffic.rs -------------------------------------------------------------------------------- /sshwire-derive/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/sshwire-derive/Cargo.toml -------------------------------------------------------------------------------- /sshwire-derive/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/sshwire-derive/src/lib.rs -------------------------------------------------------------------------------- /stdasync/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/Cargo.toml -------------------------------------------------------------------------------- /stdasync/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/build.rs -------------------------------------------------------------------------------- /stdasync/changelog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/changelog.md -------------------------------------------------------------------------------- /stdasync/examples/sunsetc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/examples/sunsetc.rs -------------------------------------------------------------------------------- /stdasync/rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/rust-toolchain.toml -------------------------------------------------------------------------------- /stdasync/src/agent.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/src/agent.rs -------------------------------------------------------------------------------- /stdasync/src/cmdline_client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/src/cmdline_client.rs -------------------------------------------------------------------------------- /stdasync/src/fdio.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/src/fdio.rs -------------------------------------------------------------------------------- /stdasync/src/knownhosts.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/src/knownhosts.rs -------------------------------------------------------------------------------- /stdasync/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/src/lib.rs -------------------------------------------------------------------------------- /stdasync/src/pty.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/stdasync/src/pty.rs -------------------------------------------------------------------------------- /testing/ci.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/testing/ci.sh -------------------------------------------------------------------------------- /testing/update-toolchain.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mkj/sunset/HEAD/testing/update-toolchain.sh --------------------------------------------------------------------------------