File: 0012-Relax-dependency-on-Rand.patch

package info (click to toggle)
netavark 1.16.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,500 kB
  • sloc: sh: 1,012; makefile: 158
file content (138 lines) | stat: -rw-r--r-- 4,829 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
From: Reinhard Tartler <siretart@tauware.de>
Date: Fri, 29 Aug 2025 07:37:55 -0400
Subject: Relax dependency on Rand

---
 Cargo.toml                   |  4 ++--
 src/dhcp_proxy/cache.rs      | 30 +++++++++++++++---------------
 src/dhcp_proxy/proxy_conf.rs |  6 +++---
 src/network/vlan.rs          |  4 ++--
 4 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/Cargo.toml b/Cargo.toml
index a39ce93..4151dbf 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -44,7 +44,7 @@ serde = { version = "1.0.219", features = ["derive"] }
 serde_json = "1.0.142"
 zbus = { version = "5.9.0" }
 nix = { version = "0.29", features = ["net", "sched", "signal", "socket", "user"] }
-rand = "0.9.2"
+rand = "0.8.5"
 sha2 = "0.10.9"
 netlink-packet-route = "0.23.0"
 netlink-packet-core = "0.7.0"
@@ -68,5 +68,5 @@ tonic-build = "0.13.1"
 
 [dev-dependencies]
 once_cell = "1.21.3"
-rand = "0.9.2"
+rand = "0.8.5"
 tempfile = "3.20.0"
diff --git a/src/dhcp_proxy/cache.rs b/src/dhcp_proxy/cache.rs
index 38f8cc5..60c98e9 100644
--- a/src/dhcp_proxy/cache.rs
+++ b/src/dhcp_proxy/cache.rs
@@ -173,31 +173,31 @@ mod cache_tests {
     use super::super::cache::LeaseCache;
     use super::super::lib::g_rpc::{Lease as NetavarkLease, Lease};
     use crate::network::core_utils;
-    use rand::{rng, Rng};
+    use rand::{thread_rng, Rng};
     use std::collections::HashMap;
     use std::io::Cursor;
 
     // Create a single random ipv4 addr
     fn random_ipv4() -> String {
-        let mut rng = rng();
+        let mut rng = thread_rng();
         format!(
             "{:?}.{:?}.{:?}.{:?}.",
-            rng.random_range(0..255),
-            rng.random_range(0..255),
-            rng.random_range(0..255),
-            rng.random_range(0..255)
+            rng.gen_range(0..255),
+            rng.gen_range(0..255),
+            rng.gen_range(0..255),
+            rng.gen_range(0..255)
         )
     }
     // Create a single random mac address
     fn random_macaddr() -> String {
-        let mut rng = rng();
+        let mut rng = thread_rng();
         let bytes = vec![
-            rng.random::<u8>(),
-            rng.random::<u8>(),
-            rng.random::<u8>(),
-            rng.random::<u8>(),
-            rng.random::<u8>(),
-            rng.random::<u8>(),
+            rng.gen::<u8>(),
+            rng.gen::<u8>(),
+            rng.gen::<u8>(),
+            rng.gen::<u8>(),
+            rng.gen::<u8>(),
+            rng.gen::<u8>(),
         ];
         core_utils::CoreUtils::encode_address_to_hex(&bytes)
     }
@@ -240,9 +240,9 @@ mod cache_tests {
 
             // Create a random amount of randomized leases
             let macaddrs = Vec::new();
-            let mut rng = rng();
+            let mut rng = thread_rng();
             // Make a random amount of leases
-            let range: u8 = rng.random_range(0..10);
+            let range: u8 = rng.gen_range(0..10);
 
             CacheTestSetup {
                 cache,
diff --git a/src/dhcp_proxy/proxy_conf.rs b/src/dhcp_proxy/proxy_conf.rs
index 373333d..aa26552 100644
--- a/src/dhcp_proxy/proxy_conf.rs
+++ b/src/dhcp_proxy/proxy_conf.rs
@@ -110,8 +110,8 @@ mod conf_tests {
     use std::sync::Mutex;
 
     use once_cell::sync::Lazy;
-    use rand::distr::Alphanumeric;
-    use rand::{rng, Rng};
+    use rand::distributions::Alphanumeric;
+    use rand::{thread_rng, Rng};
 
     /// Make sure that the environment isn't modified concurrently.
     static SERIAL_TEST: Lazy<Mutex<()>> = Lazy::new(Default::default);
@@ -206,7 +206,7 @@ mod conf_tests {
     }
 
     fn random_string(len: usize) -> String {
-        let rand_string: String = rng()
+        let rand_string: String = thread_rng()
             .sample_iter(&Alphanumeric)
             .take(len)
             .map(char::from)
diff --git a/src/network/vlan.rs b/src/network/vlan.rs
index 831121c..f8991e8 100644
--- a/src/network/vlan.rs
+++ b/src/network/vlan.rs
@@ -5,7 +5,7 @@ use std::{collections::HashMap, net::IpAddr};
 use netlink_packet_route::link::{
     InfoData, InfoIpVlan, InfoKind, InfoMacVlan, IpVlanMode, MacVlanMode,
 };
-use rand::distr::{Alphanumeric, SampleString};
+use rand::distributions::{Alphanumeric, DistString};
 
 use crate::network::core_utils::get_default_route_interface;
 use crate::network::dhcp::{dhcp_teardown, get_dhcp_lease};
@@ -290,7 +290,7 @@ fn setup(
 
             Err(err) => match err {
                 NetavarkError::Netlink(ref e) if -e.raw_code() == libc::EEXIST => {
-                    let random = Alphanumeric.sample_string(&mut rand::rng(), 10);
+                    let random = Alphanumeric.sample_string(&mut rand::thread_rng(), 10);
                     let tmp_name = "mv-".to_string() + &random;
                     let mut opts = opts.clone();
                     opts.name.clone_from(&tmp_name);