Skip to content

Commit acaf38e

Browse files
committed
fix: when only one new ipv6 exists, use it as the value for external
1 parent 109c193 commit acaf38e

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/dyndns/v6.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,12 @@ impl CheckIpTrait for Params {
118118
};
119119
check_result.new = new_ips;
120120
check_result.old = previous_ips;
121-
if check_result.new.is_some() {
122-
check_result.external = Some(get_external_ipv6(&self.interface).await?);
121+
if let Some(new) = &check_result.new {
122+
check_result.external = if new.len() == 1 {
123+
Some(new[0].clone())
124+
} else {
125+
Some(get_external_ipv6(&self.interface).await?)
126+
};
123127
debug!("external ipv6 address: {:?}", &check_result.external);
124128
}
125129
Ok(check_result)

0 commit comments

Comments
 (0)