t_rust_less_lib/service/
windows.rs1use std::io::ErrorKind;
2
3use crate::service::remote::RemoteTrustlessService;
4use crate::service::{ServiceResult, TrustlessService};
5use named_pipe::PipeClient;
6
7pub const DAEMON_PIPE_NAME: &str = r"\\.\pipe\t-rust-less";
8
9pub fn try_remote_service() -> ServiceResult<Option<impl TrustlessService>> {
10 let stream = match PipeClient::connect(DAEMON_PIPE_NAME) {
11 Ok(pipe) => pipe,
12 Err(error) if error.kind() == ErrorKind::NotFound => return Ok(None),
13 Err(error) => return Err(error.into()),
14 };
15
16 Ok(Some(RemoteTrustlessService::new(stream)))
17}