diff --git a/pingora-core/src/upstreams/peer.rs b/pingora-core/src/upstreams/peer.rs index 204ab685..f15550f0 100644 --- a/pingora-core/src/upstreams/peer.rs +++ b/pingora-core/src/upstreams/peer.rs @@ -15,7 +15,7 @@ //! Defines where to connect to and how to connect to a remote server use ahash::AHasher; -use pingora_error::{BError, Error, ErrorType}; +use pingora_error::{ErrorType, OrErr, Result}; use std::collections::BTreeMap; use std::fmt::{Display, Formatter, Result as FmtResult}; use std::hash::{Hash, Hasher}; @@ -408,11 +408,11 @@ impl HttpPeer { } /// Create a new [`HttpPeer`] with the given path to Unix domain socket and TLS settings. - pub fn new_uds(path: &str, tls: bool, sni: String) -> Result { - let addr = - SocketAddr::Unix(UnixSocketAddr::from_pathname(Path::new(path)).map_err(|e| { - Error::because(ErrorType::Custom("invalid path"), "HttpPeer::new_uds", e) - })?); + pub fn new_uds(path: &str, tls: bool, sni: String) -> Result { + let addr = SocketAddr::Unix( + UnixSocketAddr::from_pathname(Path::new(path)) + .or_err(ErrorType::InternalError, "invalid path")?, + ); Ok(Self::new_from_sockaddr(addr, tls, sni)) }