iroh_ssh/
lib.rs

1mod ssh;
2mod service;
3pub mod api;
4
5use ed25519_dalek::{PUBLIC_KEY_LENGTH, SECRET_KEY_LENGTH};
6use iroh::{protocol::Router, Endpoint};
7
8pub use ssh::dot_ssh;
9pub use service::{install_service,uninstall_service};
10pub use service::ServiceParams;
11pub use service::Service;
12
13
14#[derive(Debug, Clone)]
15pub struct IrohSsh {
16    #[allow(dead_code)]
17    pub(crate) secret_key: [u8; SECRET_KEY_LENGTH],
18    #[allow(dead_code)]
19    pub(crate) public_key: [u8; PUBLIC_KEY_LENGTH],
20    pub(crate) inner: Option<Inner>,
21    pub(crate) ssh_port: u16,
22}
23
24#[derive(Debug, Clone)]
25pub(crate) struct Inner {
26    pub endpoint: Endpoint,
27    #[allow(dead_code)]
28    pub router: Router,
29}
30
31#[derive(Debug, Clone)]
32pub struct Builder {
33    secret_key: [u8; SECRET_KEY_LENGTH],
34    accept_incoming: bool,
35    accept_port: Option<u16>,
36}
37