mirror of https://github.com/telemt/telemt.git
refactor: simplify v2 PROXY header building, add Default for V2Builder
This commit is contained in:
parent
eb9e528c79
commit
47f4bd24ef
|
|
@ -125,14 +125,7 @@ where
|
||||||
version => {
|
version => {
|
||||||
let header = if let Ok(local_addr) = stream.local_addr() {
|
let header = if let Ok(local_addr) = stream.local_addr() {
|
||||||
match version {
|
match version {
|
||||||
2 => match (peer, local_addr) {
|
2 => ProxyProtocolV2Builder::new().with_addrs(peer, local_addr).build(),
|
||||||
(SocketAddr::V4(src), SocketAddr::V4(dst)) =>
|
|
||||||
ProxyProtocolV2Builder::new().with_addrs(src.into(), dst.into()).build(),
|
|
||||||
(SocketAddr::V6(src), SocketAddr::V6(dst)) =>
|
|
||||||
ProxyProtocolV2Builder::new().with_addrs(src.into(), dst.into()).build(),
|
|
||||||
_ =>
|
|
||||||
ProxyProtocolV2Builder::new().build(),
|
|
||||||
},
|
|
||||||
_ => match (peer, local_addr) {
|
_ => match (peer, local_addr) {
|
||||||
(SocketAddr::V4(src), SocketAddr::V4(dst)) =>
|
(SocketAddr::V4(src), SocketAddr::V4(dst)) =>
|
||||||
ProxyProtocolV1Builder::new().tcp4(src.into(), dst.into()).build(),
|
ProxyProtocolV1Builder::new().tcp4(src.into(), dst.into()).build(),
|
||||||
|
|
|
||||||
|
|
@ -291,6 +291,12 @@ pub struct ProxyProtocolV2Builder {
|
||||||
dst: Option<SocketAddr>,
|
dst: Option<SocketAddr>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Default for ProxyProtocolV2Builder {
|
||||||
|
fn default() -> Self {
|
||||||
|
Self::new()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl ProxyProtocolV2Builder {
|
impl ProxyProtocolV2Builder {
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self { src: None, dst: None }
|
Self { src: None, dst: None }
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue