Struct aws_sdk_ec2::model::TunnelOption
source · #[non_exhaustive]pub struct TunnelOption { /* private fields */ }
Expand description
The VPN tunnel options.
Implementations§
source§impl TunnelOption
impl TunnelOption
sourcepub fn outside_ip_address(&self) -> Option<&str>
pub fn outside_ip_address(&self) -> Option<&str>
The external IP address of the VPN tunnel.
sourcepub fn tunnel_inside_cidr(&self) -> Option<&str>
pub fn tunnel_inside_cidr(&self) -> Option<&str>
The range of inside IPv4 addresses for the tunnel.
sourcepub fn tunnel_inside_ipv6_cidr(&self) -> Option<&str>
pub fn tunnel_inside_ipv6_cidr(&self) -> Option<&str>
The range of inside IPv6 addresses for the tunnel.
The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway.
sourcepub fn phase1_lifetime_seconds(&self) -> Option<i32>
pub fn phase1_lifetime_seconds(&self) -> Option<i32>
The lifetime for phase 1 of the IKE negotiation, in seconds.
sourcepub fn phase2_lifetime_seconds(&self) -> Option<i32>
pub fn phase2_lifetime_seconds(&self) -> Option<i32>
The lifetime for phase 2 of the IKE negotiation, in seconds.
sourcepub fn rekey_margin_time_seconds(&self) -> Option<i32>
pub fn rekey_margin_time_seconds(&self) -> Option<i32>
The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey.
sourcepub fn rekey_fuzz_percentage(&self) -> Option<i32>
pub fn rekey_fuzz_percentage(&self) -> Option<i32>
The percentage of the rekey window determined by RekeyMarginTimeSeconds
during which the rekey time is randomly selected.
sourcepub fn replay_window_size(&self) -> Option<i32>
pub fn replay_window_size(&self) -> Option<i32>
The number of packets in an IKE replay window.
sourcepub fn dpd_timeout_seconds(&self) -> Option<i32>
pub fn dpd_timeout_seconds(&self) -> Option<i32>
The number of seconds after which a DPD timeout occurs.
sourcepub fn dpd_timeout_action(&self) -> Option<&str>
pub fn dpd_timeout_action(&self) -> Option<&str>
The action to take after a DPD timeout occurs.
sourcepub fn phase1_encryption_algorithms(
&self
) -> Option<&[Phase1EncryptionAlgorithmsListValue]>
pub fn phase1_encryption_algorithms(
&self
) -> Option<&[Phase1EncryptionAlgorithmsListValue]>
The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations.
sourcepub fn phase2_encryption_algorithms(
&self
) -> Option<&[Phase2EncryptionAlgorithmsListValue]>
pub fn phase2_encryption_algorithms(
&self
) -> Option<&[Phase2EncryptionAlgorithmsListValue]>
The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations.
sourcepub fn phase1_integrity_algorithms(
&self
) -> Option<&[Phase1IntegrityAlgorithmsListValue]>
pub fn phase1_integrity_algorithms(
&self
) -> Option<&[Phase1IntegrityAlgorithmsListValue]>
The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations.
sourcepub fn phase2_integrity_algorithms(
&self
) -> Option<&[Phase2IntegrityAlgorithmsListValue]>
pub fn phase2_integrity_algorithms(
&self
) -> Option<&[Phase2IntegrityAlgorithmsListValue]>
The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations.
sourcepub fn phase1_dh_group_numbers(
&self
) -> Option<&[Phase1DhGroupNumbersListValue]>
pub fn phase1_dh_group_numbers(
&self
) -> Option<&[Phase1DhGroupNumbersListValue]>
The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.
sourcepub fn phase2_dh_group_numbers(
&self
) -> Option<&[Phase2DhGroupNumbersListValue]>
pub fn phase2_dh_group_numbers(
&self
) -> Option<&[Phase2DhGroupNumbersListValue]>
The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.
sourcepub fn ike_versions(&self) -> Option<&[IkeVersionsListValue]>
pub fn ike_versions(&self) -> Option<&[IkeVersionsListValue]>
The IKE versions that are permitted for the VPN tunnel.
sourcepub fn startup_action(&self) -> Option<&str>
pub fn startup_action(&self) -> Option<&str>
The action to take when the establishing the VPN tunnels for a VPN connection.
sourcepub fn log_options(&self) -> Option<&VpnTunnelLogOptions>
pub fn log_options(&self) -> Option<&VpnTunnelLogOptions>
Options for logging VPN tunnel activity.
source§impl TunnelOption
impl TunnelOption
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture TunnelOption
.
Examples found in repository?
64541 64542 64543 64544 64545 64546 64547 64548 64549 64550 64551 64552 64553 64554 64555 64556 64557 64558 64559 64560 64561 64562 64563 64564 64565 64566 64567 64568 64569 64570 64571 64572 64573 64574 64575 64576 64577 64578 64579 64580 64581 64582 64583 64584 64585 64586 64587 64588 64589 64590 64591 64592 64593 64594 64595 64596 64597 64598 64599 64600 64601 64602 64603 64604 64605 64606 64607 64608 64609 64610 64611 64612 64613 64614 64615 64616 64617 64618 64619 64620 64621 64622 64623 64624 64625 64626 64627 64628 64629 64630 64631 64632 64633 64634 64635 64636 64637 64638 64639 64640 64641 64642 64643 64644 64645 64646 64647 64648 64649 64650 64651 64652 64653 64654 64655 64656 64657 64658 64659 64660 64661 64662 64663 64664 64665 64666 64667 64668 64669 64670 64671 64672 64673 64674 64675 64676 64677 64678 64679 64680 64681 64682 64683 64684 64685 64686 64687 64688 64689 64690 64691 64692 64693 64694 64695 64696 64697 64698 64699 64700 64701 64702 64703 64704 64705 64706 64707 64708 64709 64710 64711 64712 64713 64714 64715 64716 64717 64718 64719 64720 64721 64722 64723 64724 64725 64726 64727 64728 64729 64730 64731 64732 64733 64734 64735 64736 64737 64738 64739 64740 64741 64742 64743 64744 64745 64746 64747 64748 64749 64750 64751 64752 64753 64754 64755 64756 64757 64758 64759 64760 64761 64762 64763 64764 64765 64766 64767 64768 64769 64770 64771 64772 64773 64774 64775 64776 64777 64778 64779 64780 64781 64782 64783 64784 64785 64786 64787 64788 64789 64790 64791 64792 64793 64794 64795 64796 64797 64798 64799 64800
pub fn deser_structure_crate_model_tunnel_option(
decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::TunnelOption, aws_smithy_xml::decode::XmlDecodeError> {
#[allow(unused_mut)]
let mut builder = crate::model::TunnelOption::builder();
while let Some(mut tag) = decoder.next_tag() {
match tag.start_el() {
s if s.matches("outsideIpAddress") /* OutsideIpAddress com.amazonaws.ec2#TunnelOption$OutsideIpAddress */ => {
let var_3176 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_outside_ip_address(var_3176);
}
,
s if s.matches("tunnelInsideCidr") /* TunnelInsideCidr com.amazonaws.ec2#TunnelOption$TunnelInsideCidr */ => {
let var_3177 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_tunnel_inside_cidr(var_3177);
}
,
s if s.matches("tunnelInsideIpv6Cidr") /* TunnelInsideIpv6Cidr com.amazonaws.ec2#TunnelOption$TunnelInsideIpv6Cidr */ => {
let var_3178 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_tunnel_inside_ipv6_cidr(var_3178);
}
,
s if s.matches("preSharedKey") /* PreSharedKey com.amazonaws.ec2#TunnelOption$PreSharedKey */ => {
let var_3179 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_pre_shared_key(var_3179);
}
,
s if s.matches("phase1LifetimeSeconds") /* Phase1LifetimeSeconds com.amazonaws.ec2#TunnelOption$Phase1LifetimeSeconds */ => {
let var_3180 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
}
?
)
;
builder = builder.set_phase1_lifetime_seconds(var_3180);
}
,
s if s.matches("phase2LifetimeSeconds") /* Phase2LifetimeSeconds com.amazonaws.ec2#TunnelOption$Phase2LifetimeSeconds */ => {
let var_3181 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
}
?
)
;
builder = builder.set_phase2_lifetime_seconds(var_3181);
}
,
s if s.matches("rekeyMarginTimeSeconds") /* RekeyMarginTimeSeconds com.amazonaws.ec2#TunnelOption$RekeyMarginTimeSeconds */ => {
let var_3182 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
}
?
)
;
builder = builder.set_rekey_margin_time_seconds(var_3182);
}
,
s if s.matches("rekeyFuzzPercentage") /* RekeyFuzzPercentage com.amazonaws.ec2#TunnelOption$RekeyFuzzPercentage */ => {
let var_3183 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
}
?
)
;
builder = builder.set_rekey_fuzz_percentage(var_3183);
}
,
s if s.matches("replayWindowSize") /* ReplayWindowSize com.amazonaws.ec2#TunnelOption$ReplayWindowSize */ => {
let var_3184 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
}
?
)
;
builder = builder.set_replay_window_size(var_3184);
}
,
s if s.matches("dpdTimeoutSeconds") /* DpdTimeoutSeconds com.amazonaws.ec2#TunnelOption$DpdTimeoutSeconds */ => {
let var_3185 =
Some(
{
<i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
}
?
)
;
builder = builder.set_dpd_timeout_seconds(var_3185);
}
,
s if s.matches("dpdTimeoutAction") /* DpdTimeoutAction com.amazonaws.ec2#TunnelOption$DpdTimeoutAction */ => {
let var_3186 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_dpd_timeout_action(var_3186);
}
,
s if s.matches("phase1EncryptionAlgorithmSet") /* Phase1EncryptionAlgorithms com.amazonaws.ec2#TunnelOption$Phase1EncryptionAlgorithms */ => {
let var_3187 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_phase1_encryption_algorithms_list(&mut tag)
?
)
;
builder = builder.set_phase1_encryption_algorithms(var_3187);
}
,
s if s.matches("phase2EncryptionAlgorithmSet") /* Phase2EncryptionAlgorithms com.amazonaws.ec2#TunnelOption$Phase2EncryptionAlgorithms */ => {
let var_3188 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_phase2_encryption_algorithms_list(&mut tag)
?
)
;
builder = builder.set_phase2_encryption_algorithms(var_3188);
}
,
s if s.matches("phase1IntegrityAlgorithmSet") /* Phase1IntegrityAlgorithms com.amazonaws.ec2#TunnelOption$Phase1IntegrityAlgorithms */ => {
let var_3189 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_phase1_integrity_algorithms_list(&mut tag)
?
)
;
builder = builder.set_phase1_integrity_algorithms(var_3189);
}
,
s if s.matches("phase2IntegrityAlgorithmSet") /* Phase2IntegrityAlgorithms com.amazonaws.ec2#TunnelOption$Phase2IntegrityAlgorithms */ => {
let var_3190 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_phase2_integrity_algorithms_list(&mut tag)
?
)
;
builder = builder.set_phase2_integrity_algorithms(var_3190);
}
,
s if s.matches("phase1DHGroupNumberSet") /* Phase1DHGroupNumbers com.amazonaws.ec2#TunnelOption$Phase1DHGroupNumbers */ => {
let var_3191 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_phase1_dh_group_numbers_list(&mut tag)
?
)
;
builder = builder.set_phase1_dh_group_numbers(var_3191);
}
,
s if s.matches("phase2DHGroupNumberSet") /* Phase2DHGroupNumbers com.amazonaws.ec2#TunnelOption$Phase2DHGroupNumbers */ => {
let var_3192 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_phase2_dh_group_numbers_list(&mut tag)
?
)
;
builder = builder.set_phase2_dh_group_numbers(var_3192);
}
,
s if s.matches("ikeVersionSet") /* IkeVersions com.amazonaws.ec2#TunnelOption$IkeVersions */ => {
let var_3193 =
Some(
crate::xml_deser::deser_list_com_amazonaws_ec2_ike_versions_list(&mut tag)
?
)
;
builder = builder.set_ike_versions(var_3193);
}
,
s if s.matches("startupAction") /* StartupAction com.amazonaws.ec2#TunnelOption$StartupAction */ => {
let var_3194 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_startup_action(var_3194);
}
,
s if s.matches("logOptions") /* LogOptions com.amazonaws.ec2#TunnelOption$LogOptions */ => {
let var_3195 =
Some(
crate::xml_deser::deser_structure_crate_model_vpn_tunnel_log_options(&mut tag)
?
)
;
builder = builder.set_log_options(var_3195);
}
,
_ => {}
}
}
Ok(builder.build())
}
Trait Implementations§
source§impl Clone for TunnelOption
impl Clone for TunnelOption
source§fn clone(&self) -> TunnelOption
fn clone(&self) -> TunnelOption
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more