summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Cargo.lock1
-rw-r--r--mullvad-update/Cargo.toml8
-rw-r--r--mullvad-update/src/client/fetch.rs4
-rw-r--r--mullvad-update/src/client/verify.rs4
-rw-r--r--mullvad-update/src/format/key.rs4
5 files changed, 12 insertions, 9 deletions
diff --git a/Cargo.lock b/Cargo.lock
index 6189d036a9..31f636ec1b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3419,6 +3419,7 @@ dependencies = [
"mullvad-api-constants",
"mullvad-version",
"rand 0.8.5",
+ "rand 0.9.2",
"reqwest",
"serde",
"serde_json",
diff --git a/mullvad-update/Cargo.toml b/mullvad-update/Cargo.toml
index 4a60350d27..85a85d94c5 100644
--- a/mullvad-update/Cargo.toml
+++ b/mullvad-update/Cargo.toml
@@ -12,7 +12,7 @@ workspace = true
[features]
default = []
-sign = ["rand", "clap"]
+sign = ["rand08", "clap"]
client = ["reqwest", "sha2", "tokio", "thiserror"]
[dependencies]
@@ -38,7 +38,9 @@ mullvad-version = { path = "../mullvad-version", features = ["serde"] }
# features required by binaries
clap = { workspace = true, optional = true }
-rand = { version = "0.8.5", optional = true }
+# TODO Upgrading to rand 0.9 is blocked on ed25519-dalek dropping their dependency on rand_core 0.6
+# (as of ed25519-dalek 2.2.0)
+rand08 = { package = "rand", version = "0.8.5", optional = true }
thiserror = { workspace = true, optional = true }
@@ -46,7 +48,7 @@ thiserror = { workspace = true, optional = true }
async-tempfile = "0.6"
insta = { workspace = true }
mockito = "1.6.1"
-rand = "0.8.5"
+rand = { workspace = true }
tokio = { workspace = true, features = ["fs", "test-util", "time", "macros"] }
[[bin]]
diff --git a/mullvad-update/src/client/fetch.rs b/mullvad-update/src/client/fetch.rs
index dde38fdc76..dfc90a2b77 100644
--- a/mullvad-update/src/client/fetch.rs
+++ b/mullvad-update/src/client/fetch.rs
@@ -469,7 +469,7 @@ mod test {
async fn test_fetch_complete() -> anyhow::Result<()> {
// Generate random data
let file_data = Box::leak(Box::new(vec![0u8; 1024 * 1024 + 1]));
- rand::thread_rng().fill_bytes(file_data);
+ rand::rng().fill_bytes(file_data);
// Start server
let mut server = mockito::Server::new_async().await;
@@ -502,7 +502,7 @@ mod test {
async fn test_fetch_interrupted() -> anyhow::Result<()> {
// Generate random data
let file_data = Box::leak(Box::new(vec![0u8; 1024 * 1024]));
- rand::thread_rng().fill_bytes(file_data);
+ rand::rng().fill_bytes(file_data);
// Start server
let mut server = mockito::Server::new_async().await;
diff --git a/mullvad-update/src/client/verify.rs b/mullvad-update/src/client/verify.rs
index 28a53f839d..1242f5b6b1 100644
--- a/mullvad-update/src/client/verify.rs
+++ b/mullvad-update/src/client/verify.rs
@@ -70,7 +70,7 @@ mod test {
async fn test_sha256_checksum() {
// Generate some random data
let mut data = vec![0u8; 1024 * 1024];
- rand::thread_rng().fill_bytes(&mut data);
+ rand::rng().fill_bytes(&mut data);
// Hash it
let mut hasher = sha2::Sha256::new();
@@ -84,7 +84,7 @@ mod test {
.expect("expected checksum match");
// Compare the hash against some random data, which should fail
- rand::thread_rng().fill_bytes(&mut data);
+ rand::rng().fill_bytes(&mut data);
Sha256Verifier::verify_inner(Cursor::new(&data), expected_hash)
.await
.expect_err("expected checksum mismatch");
diff --git a/mullvad-update/src/format/key.rs b/mullvad-update/src/format/key.rs
index 93dd6ad7e1..d5b15f0ea2 100644
--- a/mullvad-update/src/format/key.rs
+++ b/mullvad-update/src/format/key.rs
@@ -16,7 +16,7 @@ impl SecretKey {
/// Generate a new secret ed25519 key
#[cfg(feature = "sign")]
pub fn generate() -> Self {
- let key = ed25519_dalek::SigningKey::generate(&mut rand::thread_rng());
+ let key = ed25519_dalek::SigningKey::generate(&mut rand08::thread_rng());
SecretKey(key)
}
@@ -175,7 +175,7 @@ mod test {
#[test]
fn test_serialization_and_deserialization() {
let mut secret = [0u8; 32];
- rand::thread_rng().fill_bytes(&mut secret);
+ rand::rng().fill_bytes(&mut secret);
let secret_hex = hex::encode(secret);
let secret = SecretKey::from_str(&hex::encode(secret)).unwrap();