rustdesk лет назад: 3
Родитель
Сommit
e2f4962ba8

+ 6 - 0
.vscode/settings.json

@@ -0,0 +1,6 @@
1
+{
2
+    "rust.checkWith": "clippy",
3
+    "rust.formatOnSave": true,
4
+    "rust.checkOnSave": true,
5
+    "rust.useNewErrorFormat": true
6
+}

+ 1 - 1
libs/hbb_common/build.rs

@@ -6,7 +6,7 @@ fn main() {
6
     protobuf_codegen::Codegen::new()
6
     protobuf_codegen::Codegen::new()
7
         .pure()
7
         .pure()
8
         .out_dir(out_dir)
8
         .out_dir(out_dir)
9
-        .inputs(&["protos/rendezvous.proto", "protos/message.proto"])
9
+        .inputs(["protos/rendezvous.proto", "protos/message.proto"])
10
         .include("protos")
10
         .include("protos")
11
         .customize(protobuf_codegen::Customize::default().tokio_bytes(true))
11
         .customize(protobuf_codegen::Customize::default().tokio_bytes(true))
12
         .run()
12
         .run()

+ 20 - 20
libs/hbb_common/src/bytes_codec.rs

@@ -143,32 +143,32 @@ mod tests {
143
         let mut buf = BytesMut::new();
143
         let mut buf = BytesMut::new();
144
         let mut bytes: Vec<u8> = Vec::new();
144
         let mut bytes: Vec<u8> = Vec::new();
145
         bytes.resize(0x3F, 1);
145
         bytes.resize(0x3F, 1);
146
-        assert!(!codec.encode(bytes.into(), &mut buf).is_err());
146
+        assert!(codec.encode(bytes.into(), &mut buf).is_ok());
147
         let buf_saved = buf.clone();
147
         let buf_saved = buf.clone();
148
         assert_eq!(buf.len(), 0x3F + 1);
148
         assert_eq!(buf.len(), 0x3F + 1);
149
         if let Ok(Some(res)) = codec.decode(&mut buf) {
149
         if let Ok(Some(res)) = codec.decode(&mut buf) {
150
             assert_eq!(res.len(), 0x3F);
150
             assert_eq!(res.len(), 0x3F);
151
             assert_eq!(res[0], 1);
151
             assert_eq!(res[0], 1);
152
         } else {
152
         } else {
153
-            assert!(false);
153
+            panic!();
154
         }
154
         }
155
         let mut codec2 = BytesCodec::new();
155
         let mut codec2 = BytesCodec::new();
156
         let mut buf2 = BytesMut::new();
156
         let mut buf2 = BytesMut::new();
157
         if let Ok(None) = codec2.decode(&mut buf2) {
157
         if let Ok(None) = codec2.decode(&mut buf2) {
158
         } else {
158
         } else {
159
-            assert!(false);
159
+            panic!();
160
         }
160
         }
161
         buf2.extend(&buf_saved[0..1]);
161
         buf2.extend(&buf_saved[0..1]);
162
         if let Ok(None) = codec2.decode(&mut buf2) {
162
         if let Ok(None) = codec2.decode(&mut buf2) {
163
         } else {
163
         } else {
164
-            assert!(false);
164
+            panic!();
165
         }
165
         }
166
         buf2.extend(&buf_saved[1..]);
166
         buf2.extend(&buf_saved[1..]);
167
         if let Ok(Some(res)) = codec2.decode(&mut buf2) {
167
         if let Ok(Some(res)) = codec2.decode(&mut buf2) {
168
             assert_eq!(res.len(), 0x3F);
168
             assert_eq!(res.len(), 0x3F);
169
             assert_eq!(res[0], 1);
169
             assert_eq!(res[0], 1);
170
         } else {
170
         } else {
171
-            assert!(false);
171
+            panic!();
172
         }
172
         }
173
     }
173
     }
174
 
174
 
@@ -177,21 +177,21 @@ mod tests {
177
         let mut codec = BytesCodec::new();
177
         let mut codec = BytesCodec::new();
178
         let mut buf = BytesMut::new();
178
         let mut buf = BytesMut::new();
179
         let mut bytes: Vec<u8> = Vec::new();
179
         let mut bytes: Vec<u8> = Vec::new();
180
-        assert!(!codec.encode("".into(), &mut buf).is_err());
180
+        assert!(codec.encode("".into(), &mut buf).is_ok());
181
         assert_eq!(buf.len(), 1);
181
         assert_eq!(buf.len(), 1);
182
         bytes.resize(0x3F + 1, 2);
182
         bytes.resize(0x3F + 1, 2);
183
-        assert!(!codec.encode(bytes.into(), &mut buf).is_err());
183
+        assert!(codec.encode(bytes.into(), &mut buf).is_ok());
184
         assert_eq!(buf.len(), 0x3F + 2 + 2);
184
         assert_eq!(buf.len(), 0x3F + 2 + 2);
185
         if let Ok(Some(res)) = codec.decode(&mut buf) {
185
         if let Ok(Some(res)) = codec.decode(&mut buf) {
186
             assert_eq!(res.len(), 0);
186
             assert_eq!(res.len(), 0);
187
         } else {
187
         } else {
188
-            assert!(false);
188
+            panic!();
189
         }
189
         }
190
         if let Ok(Some(res)) = codec.decode(&mut buf) {
190
         if let Ok(Some(res)) = codec.decode(&mut buf) {
191
             assert_eq!(res.len(), 0x3F + 1);
191
             assert_eq!(res.len(), 0x3F + 1);
192
             assert_eq!(res[0], 2);
192
             assert_eq!(res[0], 2);
193
         } else {
193
         } else {
194
-            assert!(false);
194
+            panic!();
195
         }
195
         }
196
     }
196
     }
197
 
197
 
@@ -201,13 +201,13 @@ mod tests {
201
         let mut buf = BytesMut::new();
201
         let mut buf = BytesMut::new();
202
         let mut bytes: Vec<u8> = Vec::new();
202
         let mut bytes: Vec<u8> = Vec::new();
203
         bytes.resize(0x3F - 1, 3);
203
         bytes.resize(0x3F - 1, 3);
204
-        assert!(!codec.encode(bytes.into(), &mut buf).is_err());
204
+        assert!(codec.encode(bytes.into(), &mut buf).is_ok());
205
         assert_eq!(buf.len(), 0x3F + 1 - 1);
205
         assert_eq!(buf.len(), 0x3F + 1 - 1);
206
         if let Ok(Some(res)) = codec.decode(&mut buf) {
206
         if let Ok(Some(res)) = codec.decode(&mut buf) {
207
             assert_eq!(res.len(), 0x3F - 1);
207
             assert_eq!(res.len(), 0x3F - 1);
208
             assert_eq!(res[0], 3);
208
             assert_eq!(res[0], 3);
209
         } else {
209
         } else {
210
-            assert!(false);
210
+            panic!();
211
         }
211
         }
212
     }
212
     }
213
     #[test]
213
     #[test]
@@ -216,13 +216,13 @@ mod tests {
216
         let mut buf = BytesMut::new();
216
         let mut buf = BytesMut::new();
217
         let mut bytes: Vec<u8> = Vec::new();
217
         let mut bytes: Vec<u8> = Vec::new();
218
         bytes.resize(0x3FFF, 4);
218
         bytes.resize(0x3FFF, 4);
219
-        assert!(!codec.encode(bytes.into(), &mut buf).is_err());
219
+        assert!(codec.encode(bytes.into(), &mut buf).is_ok());
220
         assert_eq!(buf.len(), 0x3FFF + 2);
220
         assert_eq!(buf.len(), 0x3FFF + 2);
221
         if let Ok(Some(res)) = codec.decode(&mut buf) {
221
         if let Ok(Some(res)) = codec.decode(&mut buf) {
222
             assert_eq!(res.len(), 0x3FFF);
222
             assert_eq!(res.len(), 0x3FFF);
223
             assert_eq!(res[0], 4);
223
             assert_eq!(res[0], 4);
224
         } else {
224
         } else {
225
-            assert!(false);
225
+            panic!();
226
         }
226
         }
227
     }
227
     }
228
 
228
 
@@ -232,13 +232,13 @@ mod tests {
232
         let mut buf = BytesMut::new();
232
         let mut buf = BytesMut::new();
233
         let mut bytes: Vec<u8> = Vec::new();
233
         let mut bytes: Vec<u8> = Vec::new();
234
         bytes.resize(0x3FFFFF, 5);
234
         bytes.resize(0x3FFFFF, 5);
235
-        assert!(!codec.encode(bytes.into(), &mut buf).is_err());
235
+        assert!(codec.encode(bytes.into(), &mut buf).is_ok());
236
         assert_eq!(buf.len(), 0x3FFFFF + 3);
236
         assert_eq!(buf.len(), 0x3FFFFF + 3);
237
         if let Ok(Some(res)) = codec.decode(&mut buf) {
237
         if let Ok(Some(res)) = codec.decode(&mut buf) {
238
             assert_eq!(res.len(), 0x3FFFFF);
238
             assert_eq!(res.len(), 0x3FFFFF);
239
             assert_eq!(res[0], 5);
239
             assert_eq!(res[0], 5);
240
         } else {
240
         } else {
241
-            assert!(false);
241
+            panic!();
242
         }
242
         }
243
     }
243
     }
244
 
244
 
@@ -248,33 +248,33 @@ mod tests {
248
         let mut buf = BytesMut::new();
248
         let mut buf = BytesMut::new();
249
         let mut bytes: Vec<u8> = Vec::new();
249
         let mut bytes: Vec<u8> = Vec::new();
250
         bytes.resize(0x3FFFFF + 1, 6);
250
         bytes.resize(0x3FFFFF + 1, 6);
251
-        assert!(!codec.encode(bytes.into(), &mut buf).is_err());
251
+        assert!(codec.encode(bytes.into(), &mut buf).is_ok());
252
         let buf_saved = buf.clone();
252
         let buf_saved = buf.clone();
253
         assert_eq!(buf.len(), 0x3FFFFF + 4 + 1);
253
         assert_eq!(buf.len(), 0x3FFFFF + 4 + 1);
254
         if let Ok(Some(res)) = codec.decode(&mut buf) {
254
         if let Ok(Some(res)) = codec.decode(&mut buf) {
255
             assert_eq!(res.len(), 0x3FFFFF + 1);
255
             assert_eq!(res.len(), 0x3FFFFF + 1);
256
             assert_eq!(res[0], 6);
256
             assert_eq!(res[0], 6);
257
         } else {
257
         } else {
258
-            assert!(false);
258
+            panic!();
259
         }
259
         }
260
         let mut codec2 = BytesCodec::new();
260
         let mut codec2 = BytesCodec::new();
261
         let mut buf2 = BytesMut::new();
261
         let mut buf2 = BytesMut::new();
262
         buf2.extend(&buf_saved[0..1]);
262
         buf2.extend(&buf_saved[0..1]);
263
         if let Ok(None) = codec2.decode(&mut buf2) {
263
         if let Ok(None) = codec2.decode(&mut buf2) {
264
         } else {
264
         } else {
265
-            assert!(false);
265
+            panic!();
266
         }
266
         }
267
         buf2.extend(&buf_saved[1..6]);
267
         buf2.extend(&buf_saved[1..6]);
268
         if let Ok(None) = codec2.decode(&mut buf2) {
268
         if let Ok(None) = codec2.decode(&mut buf2) {
269
         } else {
269
         } else {
270
-            assert!(false);
270
+            panic!();
271
         }
271
         }
272
         buf2.extend(&buf_saved[6..]);
272
         buf2.extend(&buf_saved[6..]);
273
         if let Ok(Some(res)) = codec2.decode(&mut buf2) {
273
         if let Ok(Some(res)) = codec2.decode(&mut buf2) {
274
             assert_eq!(res.len(), 0x3FFFFF + 1);
274
             assert_eq!(res.len(), 0x3FFFFF + 1);
275
             assert_eq!(res[0], 6);
275
             assert_eq!(res[0], 6);
276
         } else {
276
         } else {
277
-            assert!(false);
277
+            panic!();
278
         }
278
         }
279
     }
279
     }
280
 }
280
 }

+ 2 - 2
libs/hbb_common/src/config.rs

@@ -525,7 +525,7 @@ impl Config {
525
             let mut path: PathBuf = format!("/tmp/{}", *APP_NAME.read().unwrap()).into();
525
             let mut path: PathBuf = format!("/tmp/{}", *APP_NAME.read().unwrap()).into();
526
             fs::create_dir(&path).ok();
526
             fs::create_dir(&path).ok();
527
             fs::set_permissions(&path, fs::Permissions::from_mode(0o0777)).ok();
527
             fs::set_permissions(&path, fs::Permissions::from_mode(0o0777)).ok();
528
-            path.push(format!("ipc{}", postfix));
528
+            path.push(format!("ipc{postfix}"));
529
             path.to_str().unwrap_or("").to_owned()
529
             path.to_str().unwrap_or("").to_owned()
530
         }
530
         }
531
     }
531
     }
@@ -562,7 +562,7 @@ impl Config {
562
                 .unwrap_or_default();
562
                 .unwrap_or_default();
563
         }
563
         }
564
         if !rendezvous_server.contains(':') {
564
         if !rendezvous_server.contains(':') {
565
-            rendezvous_server = format!("{}:{}", rendezvous_server, RENDEZVOUS_PORT);
565
+            rendezvous_server = format!("{rendezvous_server}:{RENDEZVOUS_PORT}");
566
         }
566
         }
567
         rendezvous_server
567
         rendezvous_server
568
     }
568
     }

+ 28 - 29
libs/hbb_common/src/lib.rs

@@ -212,8 +212,7 @@ pub fn gen_version() {
212
     let build_date = format!("{}", chrono::Local::now().format("%Y-%m-%d %H:%M"));
212
     let build_date = format!("{}", chrono::Local::now().format("%Y-%m-%d %H:%M"));
213
     file.write_all(
213
     file.write_all(
214
         format!(
214
         format!(
215
-            "#[allow(dead_code)]\npub const BUILD_DATE: &str = \"{}\";",
216
-            build_date
215
+            "#[allow(dead_code)]\npub const BUILD_DATE: &str = \"{build_date}\"\n;"
217
         )
216
         )
218
         .as_bytes(),
217
         .as_bytes(),
219
     )
218
     )
@@ -342,39 +341,39 @@ mod test {
342
 
341
 
343
     #[test]
342
     #[test]
344
     fn test_ipv6() {
343
     fn test_ipv6() {
345
-        assert_eq!(is_ipv6_str("1:2:3"), true);
346
-        assert_eq!(is_ipv6_str("[ab:2:3]:12"), true);
347
-        assert_eq!(is_ipv6_str("[ABEF:2a:3]:12"), true);
348
-        assert_eq!(is_ipv6_str("[ABEG:2a:3]:12"), false);
349
-        assert_eq!(is_ipv6_str("1[ab:2:3]:12"), false);
350
-        assert_eq!(is_ipv6_str("1.1.1.1"), false);
351
-        assert_eq!(is_ip_str("1.1.1.1"), true);
352
-        assert_eq!(is_ipv6_str("1:2:"), false);
353
-        assert_eq!(is_ipv6_str("1:2::0"), true);
354
-        assert_eq!(is_ipv6_str("[1:2::0]:1"), true);
355
-        assert_eq!(is_ipv6_str("[1:2::0]:"), false);
356
-        assert_eq!(is_ipv6_str("1:2::0]:1"), false);
344
+        assert!(is_ipv6_str("1:2:3"));
345
+        assert!(is_ipv6_str("[ab:2:3]:12"));
346
+        assert!(is_ipv6_str("[ABEF:2a:3]:12"));
347
+        assert!(!is_ipv6_str("[ABEG:2a:3]:12"));
348
+        assert!(!is_ipv6_str("1[ab:2:3]:12"));
349
+        assert!(!is_ipv6_str("1.1.1.1"));
350
+        assert!(is_ip_str("1.1.1.1"));
351
+        assert!(!is_ipv6_str("1:2:"));
352
+        assert!(is_ipv6_str("1:2::0"));
353
+        assert!(is_ipv6_str("[1:2::0]:1"));
354
+        assert!(!is_ipv6_str("[1:2::0]:"));
355
+        assert!(!is_ipv6_str("1:2::0]:1"));
357
     }
356
     }
358
 
357
 
359
     #[test]
358
     #[test]
360
     fn test_hostname_port() {
359
     fn test_hostname_port() {
361
-        assert_eq!(is_domain_port_str("a:12"), false);
362
-        assert_eq!(is_domain_port_str("a.b.c:12"), false);
363
-        assert_eq!(is_domain_port_str("test.com:12"), true);
364
-        assert_eq!(is_domain_port_str("test-UPPER.com:12"), true);
365
-        assert_eq!(is_domain_port_str("some-other.domain.com:12"), true);
366
-        assert_eq!(is_domain_port_str("under_score:12"), false);
367
-        assert_eq!(is_domain_port_str("a@bc:12"), false);
368
-        assert_eq!(is_domain_port_str("1.1.1.1:12"), false);
369
-        assert_eq!(is_domain_port_str("1.2.3:12"), false);
370
-        assert_eq!(is_domain_port_str("1.2.3.45:12"), false);
371
-        assert_eq!(is_domain_port_str("a.b.c:123456"), false);
372
-        assert_eq!(is_domain_port_str("---:12"), false);
373
-        assert_eq!(is_domain_port_str(".:12"), false);
360
+        assert!(!is_domain_port_str("a:12"));
361
+        assert!(!is_domain_port_str("a.b.c:12"));
362
+        assert!(is_domain_port_str("test.com:12"));
363
+        assert!(is_domain_port_str("test-UPPER.com:12"));
364
+        assert!(is_domain_port_str("some-other.domain.com:12"));
365
+        assert!(!is_domain_port_str("under_score:12"));
366
+        assert!(!is_domain_port_str("a@bc:12"));
367
+        assert!(!is_domain_port_str("1.1.1.1:12"));
368
+        assert!(!is_domain_port_str("1.2.3:12"));
369
+        assert!(!is_domain_port_str("1.2.3.45:12"));
370
+        assert!(!is_domain_port_str("a.b.c:123456"));
371
+        assert!(!is_domain_port_str("---:12"));
372
+        assert!(!is_domain_port_str(".:12"));
374
         // todo: should we also check for these edge cases?
373
         // todo: should we also check for these edge cases?
375
         // out-of-range port
374
         // out-of-range port
376
-        assert_eq!(is_domain_port_str("test.com:0"), true);
377
-        assert_eq!(is_domain_port_str("test.com:98989"), true);
375
+        assert!(is_domain_port_str("test.com:0"));
376
+        assert!(is_domain_port_str("test.com:98989"));
378
     }
377
     }
379
 
378
 
380
     #[test]
379
     #[test]

+ 24 - 24
libs/hbb_common/src/password_security.rs

@@ -192,51 +192,51 @@ mod test {
192
         let data = "Hello World";
192
         let data = "Hello World";
193
         let encrypted = encrypt_str_or_original(data, version);
193
         let encrypted = encrypt_str_or_original(data, version);
194
         let (decrypted, succ, store) = decrypt_str_or_original(&encrypted, version);
194
         let (decrypted, succ, store) = decrypt_str_or_original(&encrypted, version);
195
-        println!("data: {}", data);
196
-        println!("encrypted: {}", encrypted);
197
-        println!("decrypted: {}", decrypted);
195
+        println!("data: {data}");
196
+        println!("encrypted: {encrypted}");
197
+        println!("decrypted: {decrypted}");
198
         assert_eq!(data, decrypted);
198
         assert_eq!(data, decrypted);
199
         assert_eq!(version, &encrypted[..2]);
199
         assert_eq!(version, &encrypted[..2]);
200
-        assert_eq!(succ, true);
201
-        assert_eq!(store, false);
200
+        assert!(succ);
201
+        assert!(!store);
202
         let (_, _, store) = decrypt_str_or_original(&encrypted, "99");
202
         let (_, _, store) = decrypt_str_or_original(&encrypted, "99");
203
-        assert_eq!(store, true);
204
-        assert_eq!(decrypt_str_or_original(&decrypted, version).1, false);
203
+        assert!(store);
204
+        assert!(!decrypt_str_or_original(&decrypted, version).1);
205
         assert_eq!(encrypt_str_or_original(&encrypted, version), encrypted);
205
         assert_eq!(encrypt_str_or_original(&encrypted, version), encrypted);
206
 
206
 
207
         println!("test vec");
207
         println!("test vec");
208
         let data: Vec<u8> = vec![1, 2, 3, 4, 5, 6];
208
         let data: Vec<u8> = vec![1, 2, 3, 4, 5, 6];
209
         let encrypted = encrypt_vec_or_original(&data, version);
209
         let encrypted = encrypt_vec_or_original(&data, version);
210
         let (decrypted, succ, store) = decrypt_vec_or_original(&encrypted, version);
210
         let (decrypted, succ, store) = decrypt_vec_or_original(&encrypted, version);
211
-        println!("data: {:?}", data);
212
-        println!("encrypted: {:?}", encrypted);
213
-        println!("decrypted: {:?}", decrypted);
211
+        println!("data: {data:?}");
212
+        println!("encrypted: {encrypted:?}");
213
+        println!("decrypted: {decrypted:?}");
214
         assert_eq!(data, decrypted);
214
         assert_eq!(data, decrypted);
215
         assert_eq!(version.as_bytes(), &encrypted[..2]);
215
         assert_eq!(version.as_bytes(), &encrypted[..2]);
216
-        assert_eq!(store, false);
217
-        assert_eq!(succ, true);
216
+        assert!(!store);
217
+        assert!(succ);
218
         let (_, _, store) = decrypt_vec_or_original(&encrypted, "99");
218
         let (_, _, store) = decrypt_vec_or_original(&encrypted, "99");
219
-        assert_eq!(store, true);
220
-        assert_eq!(decrypt_vec_or_original(&decrypted, version).1, false);
219
+        assert!(store);
220
+        assert!(!decrypt_vec_or_original(&decrypted, version).1);
221
         assert_eq!(encrypt_vec_or_original(&encrypted, version), encrypted);
221
         assert_eq!(encrypt_vec_or_original(&encrypted, version), encrypted);
222
 
222
 
223
         println!("test original");
223
         println!("test original");
224
         let data = version.to_string() + "Hello World";
224
         let data = version.to_string() + "Hello World";
225
         let (decrypted, succ, store) = decrypt_str_or_original(&data, version);
225
         let (decrypted, succ, store) = decrypt_str_or_original(&data, version);
226
         assert_eq!(data, decrypted);
226
         assert_eq!(data, decrypted);
227
-        assert_eq!(store, true);
228
-        assert_eq!(succ, false);
227
+        assert!(store);
228
+        assert!(!succ);
229
         let verbytes = version.as_bytes();
229
         let verbytes = version.as_bytes();
230
-        let data: Vec<u8> = vec![verbytes[0] as u8, verbytes[1] as u8, 1, 2, 3, 4, 5, 6];
230
+        let data: Vec<u8> = vec![verbytes[0], verbytes[1], 1, 2, 3, 4, 5, 6];
231
         let (decrypted, succ, store) = decrypt_vec_or_original(&data, version);
231
         let (decrypted, succ, store) = decrypt_vec_or_original(&data, version);
232
         assert_eq!(data, decrypted);
232
         assert_eq!(data, decrypted);
233
-        assert_eq!(store, true);
234
-        assert_eq!(succ, false);
233
+        assert!(store);
234
+        assert!(!succ);
235
         let (_, succ, store) = decrypt_str_or_original("", version);
235
         let (_, succ, store) = decrypt_str_or_original("", version);
236
-        assert_eq!(store, false);
237
-        assert_eq!(succ, false);
238
-        let (_, succ, store) = decrypt_vec_or_original(&vec![], version);
239
-        assert_eq!(store, false);
240
-        assert_eq!(succ, false);
236
+        assert!(!store);
237
+        assert!(!succ);
238
+        let (_, succ, store) = decrypt_vec_or_original(&[], version);
239
+        assert!(!store);
240
+        assert!(!succ);
241
     }
241
     }
242
 }
242
 }

+ 11 - 11
libs/hbb_common/src/socket_client.rs

@@ -13,22 +13,22 @@ use tokio_socks::{IntoTargetAddr, TargetAddr};
13
 pub fn check_port<T: std::string::ToString>(host: T, port: i32) -> String {
13
 pub fn check_port<T: std::string::ToString>(host: T, port: i32) -> String {
14
     let host = host.to_string();
14
     let host = host.to_string();
15
     if crate::is_ipv6_str(&host) {
15
     if crate::is_ipv6_str(&host) {
16
-        if host.starts_with("[") {
16
+        if host.starts_with('[') {
17
             return host;
17
             return host;
18
         }
18
         }
19
-        return format!("[{}]:{}", host, port);
19
+        return format!("[{host}]:{port}");
20
     }
20
     }
21
-    if !host.contains(":") {
22
-        return format!("{}:{}", host, port);
21
+    if !host.contains(':') {
22
+        return format!("{host}:{port}");
23
     }
23
     }
24
-    return host;
24
+    host
25
 }
25
 }
26
 
26
 
27
 #[inline]
27
 #[inline]
28
 pub fn increase_port<T: std::string::ToString>(host: T, offset: i32) -> String {
28
 pub fn increase_port<T: std::string::ToString>(host: T, offset: i32) -> String {
29
     let host = host.to_string();
29
     let host = host.to_string();
30
     if crate::is_ipv6_str(&host) {
30
     if crate::is_ipv6_str(&host) {
31
-        if host.starts_with("[") {
31
+        if host.starts_with('[') {
32
             let tmp: Vec<&str> = host.split("]:").collect();
32
             let tmp: Vec<&str> = host.split("]:").collect();
33
             if tmp.len() == 2 {
33
             if tmp.len() == 2 {
34
                 let port: i32 = tmp[1].parse().unwrap_or(0);
34
                 let port: i32 = tmp[1].parse().unwrap_or(0);
@@ -37,8 +37,8 @@ pub fn increase_port<T: std::string::ToString>(host: T, offset: i32) -> String {
37
                 }
37
                 }
38
             }
38
             }
39
         }
39
         }
40
-    } else if host.contains(":") {
41
-        let tmp: Vec<&str> = host.split(":").collect();
40
+    } else if host.contains(':') {
41
+        let tmp: Vec<&str> = host.split(':').collect();
42
         if tmp.len() == 2 {
42
         if tmp.len() == 2 {
43
             let port: i32 = tmp[1].parse().unwrap_or(0);
43
             let port: i32 = tmp[1].parse().unwrap_or(0);
44
             if port > 0 {
44
             if port > 0 {
@@ -46,7 +46,7 @@ pub fn increase_port<T: std::string::ToString>(host: T, offset: i32) -> String {
46
             }
46
             }
47
         }
47
         }
48
     }
48
     }
49
-    return host;
49
+    host
50
 }
50
 }
51
 
51
 
52
 pub fn test_if_valid_server(host: &str) -> String {
52
 pub fn test_if_valid_server(host: &str) -> String {
@@ -148,7 +148,7 @@ pub async fn query_nip_io(addr: &SocketAddr) -> ResultType<SocketAddr> {
148
 pub fn ipv4_to_ipv6(addr: String, ipv4: bool) -> String {
148
 pub fn ipv4_to_ipv6(addr: String, ipv4: bool) -> String {
149
     if !ipv4 && crate::is_ipv4_str(&addr) {
149
     if !ipv4 && crate::is_ipv4_str(&addr) {
150
         if let Some(ip) = addr.split(':').next() {
150
         if let Some(ip) = addr.split(':').next() {
151
-            return addr.replace(ip, &format!("{}.nip.io", ip));
151
+            return addr.replace(ip, &format!("{ip}.nip.io"));
152
         }
152
         }
153
     }
153
     }
154
     addr
154
     addr
@@ -163,7 +163,7 @@ async fn test_target(target: &str) -> ResultType<SocketAddr> {
163
     tokio::net::lookup_host(target)
163
     tokio::net::lookup_host(target)
164
         .await?
164
         .await?
165
         .next()
165
         .next()
166
-        .context(format!("Failed to look up host for {}", target))
166
+        .context(format!("Failed to look up host for {target}"))
167
 }
167
 }
168
 
168
 
169
 #[inline]
169
 #[inline]

+ 1 - 1
libs/hbb_common/src/tcp.rs

@@ -100,7 +100,7 @@ impl FramedStream {
100
                 }
100
                 }
101
             }
101
             }
102
         }
102
         }
103
-        bail!(format!("Failed to connect to {}", remote_addr));
103
+        bail!(format!("Failed to connect to {remote_addr}"));
104
     }
104
     }
105
 
105
 
106
     pub async fn connect<'a, 't, P, T>(
106
     pub async fn connect<'a, 't, P, T>(

+ 0 - 1
src/lib.rs

@@ -3,5 +3,4 @@ pub use rendezvous_server::*;
3
 pub mod common;
3
 pub mod common;
4
 mod database;
4
 mod database;
5
 mod peer;
5
 mod peer;
6
-#[rustfmt::skip]
7
 mod version;
6
 mod version;