diff --git a/Cargo.lock b/Cargo.lock index edc4a7c..8c3dde5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -182,7 +182,7 @@ version = "0.1.0" dependencies = [ "aal", "anyhow", - "bindgen 0.71.1", + "bindgen 0.72.0", "cc", "cfg-if", "chrono", @@ -243,9 +243,9 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", @@ -467,9 +467,9 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.71.1" +version = "0.72.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f58bf3d7db68cfbac37cfc485a8d711e87e064c3d0fe0435b92f7a407f9d6b3" +checksum = "4f72209734318d0b619a5e0f5129918b848c416e122a3c4ce054e03cb87b726f" dependencies = [ "bitflags 2.9.2", "cexpr", @@ -694,9 +694,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" [[package]] name = "cfg_aliases" @@ -851,7 +851,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] [[package]] @@ -860,7 +860,7 @@ version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fde0e0ec90c9dfb3b4b1a0891a7dcd0e2bffde2f7efed5fe7c9bb00e5bfb915e" dependencies = [ - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] [[package]] @@ -1149,24 +1149,24 @@ dependencies = [ [[package]] name = "curl" -version = "0.4.47" +version = "0.4.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9fb4d13a1be2b58f14d60adba57c9834b78c62fd86c3e76a148f732686e9265" +checksum = "79fc3b6dd0b87ba36e565715bf9a2ced221311db47bd18011676f24a6066edbc" dependencies = [ "curl-sys", "libc", "openssl-probe", "openssl-sys", "schannel", - "socket2 0.5.10", - "windows-sys 0.52.0", + "socket2 0.6.0", + "windows-sys 0.59.0", ] [[package]] name = "curl-sys" -version = "0.4.78+curl-8.11.0" +version = "0.4.83+curl-8.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eec768341c5c7789611ae51cf6c459099f22e64a5d5d0ce4892434e33821eaf" +checksum = "5830daf304027db10c82632a464879d46a3f7c4ba17a31592657ad16c719b483" dependencies = [ "cc", "libc", @@ -1174,7 +1174,7 @@ dependencies = [ "openssl-sys", "pkg-config", "vcpkg", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1377,27 +1377,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "dirs-next" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" -dependencies = [ - "cfg-if", - "dirs-sys-next", -] - -[[package]] -name = "dirs-sys-next" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - [[package]] name = "display-error-chain" version = "0.2.2" @@ -1552,7 +1531,7 @@ dependencies = [ "parking_lot", "pcap", "pretty_assertions", - "progenitor 0.9.1", + "progenitor 0.11.0", "rand 0.9.2", "regress", "reqwest", @@ -3174,7 +3153,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" dependencies = [ "cfg-if", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -3308,9 +3287,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" dependencies = [ "autocfg", "scopeguard", @@ -4062,9 +4041,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.72" +version = "0.10.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" +checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" dependencies = [ "bitflags 2.9.2", "cfg-if", @@ -4094,9 +4073,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.107" +version = "0.9.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8288979acd84749c744a9014b4382d42b8f7b2592847b5afb2ed29e5d16ede07" +checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571" dependencies = [ "cc", "libc", @@ -4425,9 +4404,9 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" dependencies = [ "lock_api", "parking_lot_core", @@ -4435,9 +4414,9 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.10" +version = "0.9.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" dependencies = [ "cfg-if", "libc", @@ -4492,7 +4471,7 @@ checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" name = "pcap" version = "0.1.0" dependencies = [ - "bindgen 0.71.1", + "bindgen 0.72.0", "cc", ] @@ -4821,6 +4800,17 @@ dependencies = [ "progenitor-macro 0.10.0", ] +[[package]] +name = "progenitor" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7b99ef43fdd69d70aa4df8869db24b10ac704a2dbbc387ffac51944a1f3c0a8" +dependencies = [ + "progenitor-client 0.11.0", + "progenitor-impl 0.11.0", + "progenitor-macro 0.11.0", +] + [[package]] name = "progenitor-client" version = "0.9.1" @@ -4851,6 +4841,21 @@ dependencies = [ "serde_urlencoded", ] +[[package]] +name = "progenitor-client" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3832a961a5f1b0b5a5ccda5fbf67cae2ba708f6add667401007764ba504ffebf" +dependencies = [ + "bytes", + "futures-core", + "percent-encoding", + "reqwest", + "serde", + "serde_json", + "serde_urlencoded", +] + [[package]] name = "progenitor-impl" version = "0.9.1" @@ -4895,6 +4900,28 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "progenitor-impl" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7646201b823e61712dd72f37428ceecaa8fb2a6c841e5d7cf909edb9a17f5677" +dependencies = [ + "heck 0.5.0", + "http", + "indexmap 2.10.0", + "openapiv3", + "proc-macro2", + "quote", + "regex", + "schemars", + "serde", + "serde_json", + "syn 2.0.106", + "thiserror 2.0.12", + "typify 0.4.3", + "unicode-ident", +] + [[package]] name = "progenitor-macro" version = "0.9.1" @@ -4931,6 +4958,24 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "progenitor-macro" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e710a11140d9b4241b7d8a90748f6125b6796d7a1205238eddb08dc790ce3830" +dependencies = [ + "openapiv3", + "proc-macro2", + "progenitor-impl 0.11.0", + "quote", + "schemars", + "serde", + "serde_json", + "serde_tokenstream 0.2.2", + "serde_yaml", + "syn 2.0.106", +] + [[package]] name = "propolis" version = "0.1.0" @@ -5234,17 +5279,6 @@ dependencies = [ "bitflags 2.9.2", ] -[[package]] -name = "redox_users" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" -dependencies = [ - "getrandom 0.2.15", - "libredox", - "thiserror 1.0.69", -] - [[package]] name = "ref-cast" version = "1.0.24" @@ -5943,9 +5977,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "signal-hook" -version = "0.3.17" +version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" +checksum = "d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2" dependencies = [ "libc", "signal-hook-registry", @@ -6085,10 +6119,11 @@ dependencies = [ [[package]] name = "slog-term" -version = "2.9.1" +version = "2.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6e022d0b998abfe5c3782c1f03551a596269450ccd677ea51c56f8b214610e8" +checksum = "5cb1fc680b38eed6fad4c02b3871c09d2c81db8c96aa4e9c0a34904c830f09b5" dependencies = [ + "chrono", "is-terminal", "slog", "term", @@ -6159,7 +6194,7 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e5fd9e3263fc19d73abd5107dbd4d43e37949212d2b15d4d334ee5db53022b8" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro2", "quote", "syn 2.0.106", @@ -6554,13 +6589,11 @@ dependencies = [ [[package]] name = "term" -version = "0.7.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" +checksum = "a43bddab41f8626c7bdaab872bbba75f8df5847b516d77c569c746e2ae5eb746" dependencies = [ - "dirs-next", - "rustversion", - "winapi", + "windows-sys 0.59.0", ] [[package]] @@ -6644,7 +6677,7 @@ dependencies = [ "signal-hook", "slog", "smf 0.10.0", - "socket2 0.5.10", + "socket2 0.6.0", "structopt", "thiserror 1.0.69", "tokio", @@ -7940,7 +7973,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 66f359c..9cb5e2f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -76,7 +76,7 @@ oxide-tokio-rt = "0.1.2" parking_lot = "0.12" pretty_assertions = "1.4" proc-macro2 = "1.0" -progenitor = "0.9.1" +progenitor = "0.11" rand = "0.9" regex = "1.11" regress = "0.10" @@ -91,7 +91,7 @@ slog = { version = "2.7", features = [ "release_max_level_debug", "max_level_tra slog-async = "2.8" slog-bunyan = "2.5" slog-term = "2.9" -socket2 = { version = "0.5", features = ["all"] } +socket2 = { version = "0.6", features = ["all"] } structopt = "0.3" strum = { version = "0.26.3", features = [ "derive" ] } syn = { version = "2.0", features = ["extra-traits"]} diff --git a/asic/Cargo.toml b/asic/Cargo.toml index b684ead..27d4900 100644 --- a/asic/Cargo.toml +++ b/asic/Cargo.toml @@ -48,5 +48,5 @@ uuid.workspace = true [build-dependencies] cc = "1.0" -bindgen = "0.71" +bindgen = "0.72" anyhow = "1.0" diff --git a/dpd-client/tests/integration_tests/common.rs b/dpd-client/tests/integration_tests/common.rs index 3e12bad..0f2b4b7 100644 --- a/dpd-client/tests/integration_tests/common.rs +++ b/dpd-client/tests/integration_tests/common.rs @@ -20,6 +20,7 @@ use slog::Drain; use ::common::network::MacAddr; use dpd_client::types; use dpd_client::Client; +use dpd_client::ClientInfo; use dpd_client::ClientState; use packet::arp; use packet::eth; diff --git a/dpd-client/tests/integration_tests/counters.rs b/dpd-client/tests/integration_tests/counters.rs index bd2db32..26b623a 100644 --- a/dpd-client/tests/integration_tests/counters.rs +++ b/dpd-client/tests/integration_tests/counters.rs @@ -20,6 +20,7 @@ use crate::integration_tests::icmp_ipv4; use ::common::network::MacAddr; use dpd_client::types::Ipv4Entry; use dpd_client::types::Ipv6Entry; +use dpd_client::ClientInfo; // Run a single drop test. This sends a packet that we expect to be dropped, // and verifies that the expected drop counter is bumped by one. If the test diff --git a/dpd-client/tests/integration_tests/icmp_ipv4.rs b/dpd-client/tests/integration_tests/icmp_ipv4.rs index 4be6310..c2a882b 100644 --- a/dpd-client/tests/integration_tests/icmp_ipv4.rs +++ b/dpd-client/tests/integration_tests/icmp_ipv4.rs @@ -9,6 +9,7 @@ use std::sync::Arc; use ::common::network::MacAddr; use dpd_client::types; +use dpd_client::ClientInfo; use packet::eth; use packet::icmp; use packet::ipv4; diff --git a/dpd-client/tests/integration_tests/nat.rs b/dpd-client/tests/integration_tests/nat.rs index a019114..5784455 100644 --- a/dpd-client/tests/integration_tests/nat.rs +++ b/dpd-client/tests/integration_tests/nat.rs @@ -14,6 +14,7 @@ use oxnet::Ipv6Net; use ::common::nat::Vni; use ::common::network::MacAddr; use dpd_client::types; +use dpd_client::ClientInfo; use packet::eth; use packet::geneve; use packet::icmp; diff --git a/dpd-client/tests/integration_tests/port_api.rs b/dpd-client/tests/integration_tests/port_api.rs index f6794f2..7e66c3c 100644 --- a/dpd-client/tests/integration_tests/port_api.rs +++ b/dpd-client/tests/integration_tests/port_api.rs @@ -15,6 +15,7 @@ use reqwest::StatusCode; use ::common::ports::Ipv4Entry; use ::common::ports::Ipv6Entry; use dpd_client::types; +use dpd_client::ClientInfo; use dpd_client::Error; use types::PortId; diff --git a/dpd-client/tests/integration_tests/service.rs b/dpd-client/tests/integration_tests/service.rs index 379ab6e..6dcd6b1 100644 --- a/dpd-client/tests/integration_tests/service.rs +++ b/dpd-client/tests/integration_tests/service.rs @@ -8,6 +8,7 @@ use std::sync::Arc; use ::common::network::MacAddr; use dpd_client::types::Ipv4Entry; +use dpd_client::ClientInfo; use packet::{eth, icmp, ipv4, sidecar, Endpoint}; use crate::integration_tests::common; diff --git a/dpd-client/tests/integration_tests/table_tests.rs b/dpd-client/tests/integration_tests/table_tests.rs index 39fd9cd..70e62dd 100644 --- a/dpd-client/tests/integration_tests/table_tests.rs +++ b/dpd-client/tests/integration_tests/table_tests.rs @@ -16,6 +16,7 @@ use reqwest::StatusCode; use crate::integration_tests::common::prelude::*; use dpd_client::types; +use dpd_client::ClientInfo; use dpd_client::ResponseValue; // The expected sizes of each table. The values are copied from constants.p4. diff --git a/pcap/Cargo.toml b/pcap/Cargo.toml index dc42c6d..ca50f49 100644 --- a/pcap/Cargo.toml +++ b/pcap/Cargo.toml @@ -6,4 +6,4 @@ edition = "2021" [build-dependencies] cc = "1.0" -bindgen = "0.71" +bindgen = "0.72" diff --git a/swadm/src/arp.rs b/swadm/src/arp.rs index 4cf0d7e..407c417 100644 --- a/swadm/src/arp.rs +++ b/swadm/src/arp.rs @@ -17,6 +17,7 @@ use tabwriter::TabWriter; use common::network::MacAddr; use dpd_client::types; use dpd_client::Client; +use dpd_client::ClientInfo; use crate::IpFamily; diff --git a/swadm/src/route.rs b/swadm/src/route.rs index 422e901..3b4469a 100644 --- a/swadm/src/route.rs +++ b/swadm/src/route.rs @@ -18,6 +18,7 @@ use tabwriter::TabWriter; use dpd_client::types; use dpd_client::Client; +use dpd_client::ClientInfo; use crate::IpFamily; use crate::LinkPath; diff --git a/tfportd/src/arp.rs b/tfportd/src/arp.rs index cee2698..328b1d4 100644 --- a/tfportd/src/arp.rs +++ b/tfportd/src/arp.rs @@ -19,6 +19,7 @@ use crate::Global; use common::network::MacAddr; use dpd_client::types; use dpd_client::Client; +use dpd_client::ClientInfo; const ARP: &str = "/usr/sbin/arp"; const DEFAULT_IPV4_MASK: Ipv4Addr = Ipv4Addr::new(255, 255, 255, 255); diff --git a/tfportd/src/ndp.rs b/tfportd/src/ndp.rs index 526cac3..35f25ae 100644 --- a/tfportd/src/ndp.rs +++ b/tfportd/src/ndp.rs @@ -19,6 +19,7 @@ use crate::poll_interval; use crate::sidecar; use crate::Global; use common::network::MacAddr; +use dpd_client::ClientInfo; const NDP: &str = "/usr/sbin/ndp"; diff --git a/tfportd/src/ports.rs b/tfportd/src/ports.rs index 507e0fc..ade0bd1 100644 --- a/tfportd/src/ports.rs +++ b/tfportd/src/ports.rs @@ -37,6 +37,7 @@ use std::sync::Arc; use anyhow::Context; use anyhow::Result; use dpd_client::types; +use dpd_client::ClientInfo; use slog::debug; use slog::error; use slog::info; diff --git a/tfportd/src/techport.rs b/tfportd/src/techport.rs index f04e30f..99279a3 100644 --- a/tfportd/src/techport.rs +++ b/tfportd/src/techport.rs @@ -19,6 +19,7 @@ use crate::netsupport; use crate::Global; use common::illumos; use dpd_client::types; +use dpd_client::ClientInfo; const ICMP6_RA_TYPE: u8 = 134; const ICMP6_RA_CODE: u8 = 0;