@@ -570,54 +570,52 @@ pub mod builder {
570
570
}
571
571
572
572
impl RelayQueryBuilder < Any > {
573
- /// Create a new [`RelayQueryBuilder`] with unopinionated defaults .
573
+ /// Create a new [`RelayQueryBuilder`] for Wireguard .
574
574
///
575
575
/// Call [`Self::build`] to convert the builder into a [`RelayQuery`],
576
576
/// which is used to guide the [`RelaySelector`]
577
577
///
578
578
/// [`RelaySelector`]: crate::RelaySelector
579
- pub fn new ( ) -> RelayQueryBuilder < Any > {
580
- RelayQueryBuilder {
581
- query : RelayQuery :: default ( ) ,
582
- protocol : Any ,
583
- }
584
- }
585
- /// Set the VPN protocol for this [`RelayQueryBuilder`] to Wireguard.
586
- pub fn wireguard ( mut self ) -> RelayQueryBuilder < Wireguard < Any , Any , Any , Any > > {
579
+ pub fn wireguard ( ) -> RelayQueryBuilder < Wireguard < Any , Any , Any , Any > > {
587
580
let protocol = Wireguard {
588
581
multihop : Any ,
589
582
obfuscation : Any ,
590
583
daita : Any ,
591
584
quantum_resistant : Any ,
592
585
} ;
593
- self . query . tunnel_protocol = TunnelType :: Wireguard ;
586
+ let query = RelayQuery {
587
+ tunnel_protocol : TunnelType :: Wireguard ,
588
+ ..Default :: default ( )
589
+ } ;
594
590
// Update the type state
595
- RelayQueryBuilder {
596
- query : self . query ,
597
- protocol,
598
- }
591
+ RelayQueryBuilder { query, protocol }
599
592
}
600
593
601
- /// Set the VPN protocol for this [`RelayQueryBuilder`] to OpenVPN.
602
- pub fn openvpn ( mut self ) -> RelayQueryBuilder < OpenVPN < Any , Any > > {
594
+ /// Create a new [`RelayQueryBuilder`] for OpenVPN.
595
+ ///
596
+ /// Call [`Self::build`] to convert the builder into a [`RelayQuery`],
597
+ /// which is used to guide the [`RelaySelector`]
598
+ ///
599
+ /// [`RelaySelector`]: crate::RelaySelector
600
+ pub fn openvpn ( ) -> RelayQueryBuilder < OpenVPN < Any , Any > > {
603
601
let protocol = OpenVPN {
604
602
transport_port : Any ,
605
603
bridge_settings : Any ,
606
604
} ;
607
- self . query . tunnel_protocol = TunnelType :: OpenVpn ;
605
+ let query = RelayQuery {
606
+ tunnel_protocol : TunnelType :: OpenVpn ,
607
+ ..Default :: default ( )
608
+ } ;
608
609
// Update the type state
609
- RelayQueryBuilder {
610
- query : self . query ,
611
- protocol,
612
- }
610
+ RelayQueryBuilder { query, protocol }
613
611
}
614
612
}
615
613
616
- impl Default for RelayQueryBuilder < Any > {
617
- fn default ( ) -> Self {
618
- Self :: new ( )
619
- }
620
- }
614
+ // impl Default for RelayQueryBuilder<Any> {
615
+ // fn default() -> Self {
616
+ // Self::new()
617
+ // }
618
+ // }
621
619
622
620
// Type-safe builder for Wireguard relay constraints.
623
621
@@ -1061,7 +1059,7 @@ mod test {
1061
1059
/// DAITA is a core privacy feature.
1062
1060
#[ test]
1063
1061
fn test_relay_query_daita_openvpn ( ) {
1064
- let mut query = RelayQueryBuilder :: new ( ) . wireguard ( ) . daita ( ) . build ( ) ;
1062
+ let mut query = RelayQueryBuilder :: wireguard ( ) . daita ( ) . build ( ) ;
1065
1063
query
1066
1064
. set_tunnel_protocol ( TunnelType :: OpenVpn )
1067
1065
. expect_err ( "expected query to be invalid for OpenVPN" ) ;
@@ -1071,7 +1069,7 @@ mod test {
1071
1069
/// Multihop is a core privacy feature.
1072
1070
#[ test]
1073
1071
fn test_relay_query_multihop_openvpn ( ) {
1074
- let mut query = RelayQueryBuilder :: new ( ) . wireguard ( ) . multihop ( ) . build ( ) ;
1072
+ let mut query = RelayQueryBuilder :: wireguard ( ) . multihop ( ) . build ( ) ;
1075
1073
query
1076
1074
. set_tunnel_protocol ( TunnelType :: OpenVpn )
1077
1075
. expect_err ( "expected query to be invalid for OpenVPN" ) ;
@@ -1081,10 +1079,7 @@ mod test {
1081
1079
/// PQ is a core privacy feature.
1082
1080
#[ test]
1083
1081
fn test_relay_query_quantum_resistant_openvpn ( ) {
1084
- let mut query = RelayQueryBuilder :: new ( )
1085
- . wireguard ( )
1086
- . quantum_resistant ( )
1087
- . build ( ) ;
1082
+ let mut query = RelayQueryBuilder :: wireguard ( ) . quantum_resistant ( ) . build ( ) ;
1088
1083
query
1089
1084
. set_tunnel_protocol ( TunnelType :: OpenVpn )
1090
1085
. expect_err ( "expected query to be invalid for OpenVPN" ) ;
0 commit comments