mirror of
https://mirror.suhoan.cn/https://github.com/EasyTier/EasyTier.git
synced 2025-12-12 04:37:23 +08:00
Make ospf route more effiencient (#1512)
Avoid iterate all peer info and conn list when building sync request. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
2
.github/workflows/core.yml
vendored
2
.github/workflows/core.yml
vendored
@@ -160,7 +160,7 @@ jobs:
|
|||||||
# The prefix cache key, this can be changed to start a new cache manually.
|
# The prefix cache key, this can be changed to start a new cache manually.
|
||||||
# default: "v0-rust"
|
# default: "v0-rust"
|
||||||
prefix-key: ""
|
prefix-key: ""
|
||||||
|
cache-targets: "false"
|
||||||
|
|
||||||
- name: Setup protoc
|
- name: Setup protoc
|
||||||
uses: arduino/setup-protoc@v3
|
uses: arduino/setup-protoc@v3
|
||||||
|
|||||||
10
Cargo.lock
generated
10
Cargo.lock
generated
@@ -2136,6 +2136,7 @@ dependencies = [
|
|||||||
"nix 0.29.0",
|
"nix 0.29.0",
|
||||||
"once_cell",
|
"once_cell",
|
||||||
"openssl",
|
"openssl",
|
||||||
|
"ordered_hash_map",
|
||||||
"parking_lot",
|
"parking_lot",
|
||||||
"percent-encoding",
|
"percent-encoding",
|
||||||
"petgraph 0.8.1",
|
"petgraph 0.8.1",
|
||||||
@@ -5498,6 +5499,15 @@ dependencies = [
|
|||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "ordered_hash_map"
|
||||||
|
version = "0.5.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "a6c699f8a30f345785be969deed7eee4c73a5de58c7faf61d6a3251ef798ff61"
|
||||||
|
dependencies = [
|
||||||
|
"hashbrown 0.15.3",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "os_info"
|
name = "os_info"
|
||||||
version = "3.8.2"
|
version = "3.8.2"
|
||||||
|
|||||||
@@ -143,6 +143,7 @@ network-interface = "2.0"
|
|||||||
# for ospf route
|
# for ospf route
|
||||||
petgraph = "0.8.1"
|
petgraph = "0.8.1"
|
||||||
hashbrown = "0.15.3"
|
hashbrown = "0.15.3"
|
||||||
|
ordered_hash_map = "0.5.0"
|
||||||
|
|
||||||
# for wireguard
|
# for wireguard
|
||||||
boringtun = { package = "boringtun-easytier", version = "0.6.1", optional = true }
|
boringtun = { package = "boringtun-easytier", version = "0.6.1", optional = true }
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -38,8 +38,7 @@ async fn test_route_peer_info_ipv6() {
|
|||||||
global_ctx.set_ipv6(Some(ipv6_cidr));
|
global_ctx.set_ipv6(Some(ipv6_cidr));
|
||||||
|
|
||||||
// Create RoutePeerInfo with IPv6 support
|
// Create RoutePeerInfo with IPv6 support
|
||||||
let peer_info = RoutePeerInfo::new();
|
let updated_info = RoutePeerInfo::new_updated_self(123, 456, &global_ctx);
|
||||||
let updated_info = peer_info.update_self(123, 456, &global_ctx);
|
|
||||||
|
|
||||||
// Verify IPv6 address is included
|
// Verify IPv6 address is included
|
||||||
assert!(updated_info.ipv6_addr.is_some());
|
assert!(updated_info.ipv6_addr.is_some());
|
||||||
|
|||||||
Reference in New Issue
Block a user