Merge pull request #340 from quartiq/feature/tcp-randomizer
TCP source port ranodmization
This commit is contained in:
commit
9651747d89
9
Cargo.lock
generated
9
Cargo.lock
generated
@ -437,6 +437,12 @@ dependencies = [
|
|||||||
"heapless 0.6.1",
|
"heapless 0.6.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "nanorand"
|
||||||
|
version = "0.5.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "ac1378b66f7c93a1c0f8464a19bf47df8795083842e5090f4b7305973d5a22d0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "nb"
|
name = "nb"
|
||||||
version = "0.1.3"
|
version = "0.1.3"
|
||||||
@ -710,10 +716,11 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "smoltcp-nal"
|
name = "smoltcp-nal"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/quartiq/smoltcp-nal.git?rev=7572183#757218316620e074405bc38ff5502ef17a8a3499"
|
source = "git+https://github.com/quartiq/smoltcp-nal.git?rev=8468f11#8468f11abacd7aba82454e6904df19c1d1ab91bb"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"embedded-nal",
|
"embedded-nal",
|
||||||
"heapless 0.6.1",
|
"heapless 0.6.1",
|
||||||
|
"nanorand",
|
||||||
"smoltcp",
|
"smoltcp",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -60,7 +60,7 @@ rev = "314fa5587d"
|
|||||||
|
|
||||||
[dependencies.smoltcp-nal]
|
[dependencies.smoltcp-nal]
|
||||||
git = "https://github.com/quartiq/smoltcp-nal.git"
|
git = "https://github.com/quartiq/smoltcp-nal.git"
|
||||||
rev = "7572183"
|
rev = "8468f11"
|
||||||
|
|
||||||
[patch.crates-io.minimq]
|
[patch.crates-io.minimq]
|
||||||
git = "https://github.com/quartiq/minimq.git"
|
git = "https://github.com/quartiq/minimq.git"
|
||||||
|
@ -17,6 +17,9 @@ python3 -m pip install -r requirements.txt
|
|||||||
|
|
||||||
cargo flash --elf target/thumbv7em-none-eabihf/release/dual-iir --chip STM32H743ZITx
|
cargo flash --elf target/thumbv7em-none-eabihf/release/dual-iir --chip STM32H743ZITx
|
||||||
|
|
||||||
|
# Before attempting to ping the device, sleep to allow Stabilizer to boot.
|
||||||
|
sleep 30
|
||||||
|
|
||||||
# Test pinging Stabilizer. This exercises that:
|
# Test pinging Stabilizer. This exercises that:
|
||||||
# * DHCP is functional and an IP has been acquired
|
# * DHCP is functional and an IP has been acquired
|
||||||
# * Stabilizer's network is functioning as intended
|
# * Stabilizer's network is functioning as intended
|
||||||
|
@ -598,13 +598,25 @@ pub fn setup(
|
|||||||
)
|
)
|
||||||
};
|
};
|
||||||
|
|
||||||
NetworkDevices {
|
let random_seed = {
|
||||||
stack: smoltcp_nal::NetworkStack::new(
|
let mut rng =
|
||||||
|
device.RNG.constrain(ccdr.peripheral.RNG, &ccdr.clocks);
|
||||||
|
let mut data = [0u8; 4];
|
||||||
|
rng.fill(&mut data).unwrap();
|
||||||
|
data
|
||||||
|
};
|
||||||
|
|
||||||
|
let mut stack = smoltcp_nal::NetworkStack::new(
|
||||||
interface,
|
interface,
|
||||||
sockets,
|
sockets,
|
||||||
&handles,
|
&handles,
|
||||||
Some(dhcp_client),
|
Some(dhcp_client),
|
||||||
),
|
);
|
||||||
|
|
||||||
|
stack.seed_random_port(&random_seed);
|
||||||
|
|
||||||
|
NetworkDevices {
|
||||||
|
stack,
|
||||||
phy: lan8742a,
|
phy: lan8742a,
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user