@@ -10,7 +10,7 @@ use crate::protocol::common::{AnnounceEventDef, NumberOfBytesDef};
1010use crate :: protocol:: utils:: ser_unix_time_value;
1111
1212#[ derive( PartialEq , Eq , Debug , Clone , Serialize , Copy ) ]
13- pub struct TorrentPeer {
13+ pub struct Peer {
1414 pub peer_id : Id ,
1515 pub peer_addr : SocketAddr ,
1616 #[ serde( serialize_with = "ser_unix_time_value" ) ]
@@ -25,16 +25,16 @@ pub struct TorrentPeer {
2525 pub event : AnnounceEvent ,
2626}
2727
28- impl TorrentPeer {
28+ impl Peer {
2929 #[ must_use]
3030 pub fn from_udp_announce_request (
3131 announce_request : & aquatic_udp_protocol:: AnnounceRequest ,
3232 remote_ip : IpAddr ,
3333 host_opt_ip : Option < IpAddr > ,
3434 ) -> Self {
35- let peer_addr = TorrentPeer :: peer_addr_from_ip_and_port_and_opt_host_ip ( remote_ip, host_opt_ip, announce_request. port . 0 ) ;
35+ let peer_addr = Peer :: peer_addr_from_ip_and_port_and_opt_host_ip ( remote_ip, host_opt_ip, announce_request. port . 0 ) ;
3636
37- TorrentPeer {
37+ Peer {
3838 peer_id : Id ( announce_request. peer_id . 0 ) ,
3939 peer_addr,
4040 updated : Current :: now ( ) ,
@@ -47,7 +47,7 @@ impl TorrentPeer {
4747
4848 #[ must_use]
4949 pub fn from_http_announce_request ( announce_request : & Announce , remote_ip : IpAddr , host_opt_ip : Option < IpAddr > ) -> Self {
50- let peer_addr = TorrentPeer :: peer_addr_from_ip_and_port_and_opt_host_ip ( remote_ip, host_opt_ip, announce_request. port ) ;
50+ let peer_addr = Peer :: peer_addr_from_ip_and_port_and_opt_host_ip ( remote_ip, host_opt_ip, announce_request. port ) ;
5151
5252 let event: AnnounceEvent = if let Some ( event) = & announce_request. event {
5353 match event. as_ref ( ) {
@@ -61,8 +61,8 @@ impl TorrentPeer {
6161 } ;
6262
6363 #[ allow( clippy:: cast_possible_truncation) ]
64- TorrentPeer {
65- peer_id : announce_request. peer_id . clone ( ) ,
64+ Peer {
65+ peer_id : announce_request. peer_id ,
6666 peer_addr,
6767 updated : Current :: now ( ) ,
6868 uploaded : NumberOfBytes ( i128:: from ( announce_request. uploaded ) as i64 ) ,
@@ -104,6 +104,9 @@ impl std::fmt::Display for Id {
104104
105105impl Id {
106106 #[ must_use]
107+ /// # Panics
108+ ///
109+ /// It will panic if the `binascii::bin2hex` from a too-small output buffer.
107110 pub fn get_id ( & self ) -> Option < String > {
108111 let buff_size = self . 0 . len ( ) * 2 ;
109112 let mut tmp: Vec < u8 > = vec ! [ 0 ; buff_size] ;
@@ -202,11 +205,6 @@ impl Serialize for Id {
202205 client : Option < & ' a str > ,
203206 }
204207
205- let buff_size = self . 0 . len ( ) * 2 ;
206- let mut tmp: Vec < u8 > = vec ! [ 0 ; buff_size] ;
207- binascii:: bin2hex ( & self . 0 , & mut tmp) . unwrap ( ) ;
208- let id = std:: str:: from_utf8 ( & tmp) . ok ( ) ;
209-
210208 let obj = PeerIdInfo {
211209 id : self . get_id ( ) ,
212210 client : self . get_client_name ( ) ,
@@ -224,11 +222,11 @@ mod test {
224222 use aquatic_udp_protocol:: { AnnounceEvent , NumberOfBytes } ;
225223
226224 use crate :: protocol:: clock:: { Current , Time } ;
227- use crate :: tracker:: peer:: { self , TorrentPeer } ;
225+ use crate :: tracker:: peer:: { self , Peer } ;
228226
229227 #[ test]
230228 fn it_should_be_serializable ( ) {
231- let torrent_peer = TorrentPeer {
229+ let torrent_peer = Peer {
232230 peer_id : peer:: Id ( * b"-qB00000000000000000" ) ,
233231 peer_addr : SocketAddr :: new ( IpAddr :: V4 ( Ipv4Addr :: new ( 126 , 0 , 0 , 1 ) ) , 8080 ) ,
234232 updated : Current :: now ( ) ,
@@ -256,7 +254,7 @@ mod test {
256254 AnnounceEvent , AnnounceRequest , NumberOfBytes , NumberOfPeers , PeerId as AquaticPeerId , PeerKey , Port , TransactionId ,
257255 } ;
258256
259- use crate :: tracker:: peer:: TorrentPeer ;
257+ use crate :: tracker:: peer:: Peer ;
260258 use crate :: udp:: connection_cookie:: { into_connection_id, make} ;
261259
262260 // todo: duplicate functions is PR 82. Remove duplication once both PR are merged.
@@ -308,7 +306,7 @@ mod test {
308306 let remote_ip = IpAddr :: V4 ( Ipv4Addr :: new ( 126 , 0 , 0 , 2 ) ) ;
309307 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
310308
311- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
309+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
312310
313311 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( remote_ip, announce_request. port. 0 ) ) ;
314312 }
@@ -318,7 +316,7 @@ mod test {
318316 let remote_ip = IpAddr :: V4 ( Ipv4Addr :: new ( 126 , 0 , 0 , 2 ) ) ;
319317 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
320318
321- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
319+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
322320
323321 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( remote_ip, announce_request. port. 0 ) ) ;
324322 }
@@ -329,14 +327,14 @@ mod test {
329327 use std:: str:: FromStr ;
330328
331329 use crate :: tracker:: peer:: test:: torrent_peer_constructor_from_udp_requests:: AnnounceRequestBuilder ;
332- use crate :: tracker:: peer:: TorrentPeer ;
330+ use crate :: tracker:: peer:: Peer ;
333331
334332 #[ test]
335333 fn it_should_use_the_loopback_ip_if_the_server_does_not_have_the_external_ip_configuration ( ) {
336334 let remote_ip = IpAddr :: V4 ( Ipv4Addr :: LOCALHOST ) ;
337335 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
338336
339- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
337+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
340338
341339 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( remote_ip, announce_request. port. 0 ) ) ;
342340 }
@@ -347,7 +345,7 @@ mod test {
347345 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
348346
349347 let host_opt_ip = IpAddr :: V4 ( Ipv4Addr :: from_str ( "126.0.0.1" ) . unwrap ( ) ) ;
350- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
348+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
351349
352350 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( host_opt_ip, announce_request. port. 0 ) ) ;
353351 }
@@ -358,7 +356,7 @@ mod test {
358356 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
359357
360358 let host_opt_ip = IpAddr :: V6 ( Ipv6Addr :: from_str ( "2345:0425:2CA1:0000:0000:0567:5673:23b5" ) . unwrap ( ) ) ;
361- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
359+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
362360
363361 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( host_opt_ip, announce_request. port. 0 ) ) ;
364362 }
@@ -370,14 +368,14 @@ mod test {
370368 use std:: str:: FromStr ;
371369
372370 use crate :: tracker:: peer:: test:: torrent_peer_constructor_from_udp_requests:: AnnounceRequestBuilder ;
373- use crate :: tracker:: peer:: TorrentPeer ;
371+ use crate :: tracker:: peer:: Peer ;
374372
375373 #[ test]
376374 fn it_should_use_the_loopback_ip_if_the_server_does_not_have_the_external_ip_configuration ( ) {
377375 let remote_ip = IpAddr :: V6 ( Ipv6Addr :: LOCALHOST ) ;
378376 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
379377
380- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
378+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, None ) ;
381379
382380 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( remote_ip, announce_request. port. 0 ) ) ;
383381 }
@@ -388,7 +386,7 @@ mod test {
388386 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
389387
390388 let host_opt_ip = IpAddr :: V6 ( Ipv6Addr :: from_str ( "2345:0425:2CA1:0000:0000:0567:5673:23b5" ) . unwrap ( ) ) ;
391- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
389+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
392390
393391 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( host_opt_ip, announce_request. port. 0 ) ) ;
394392 }
@@ -399,7 +397,7 @@ mod test {
399397 let announce_request = AnnounceRequestBuilder :: default ( ) . into ( ) ;
400398
401399 let host_opt_ip = IpAddr :: V4 ( Ipv4Addr :: from_str ( "126.0.0.1" ) . unwrap ( ) ) ;
402- let torrent_peer = TorrentPeer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
400+ let torrent_peer = Peer :: from_udp_announce_request ( & announce_request, remote_ip, Some ( host_opt_ip) ) ;
403401
404402 assert_eq ! ( torrent_peer. peer_addr, SocketAddr :: new( host_opt_ip, announce_request. port. 0 ) ) ;
405403 }
@@ -411,7 +409,7 @@ mod test {
411409
412410 use crate :: http:: request:: Announce ;
413411 use crate :: protocol:: info_hash:: InfoHash ;
414- use crate :: tracker:: peer:: { self , TorrentPeer } ;
412+ use crate :: tracker:: peer:: { self , Peer } ;
415413
416414 fn sample_http_announce_request ( peer_addr : IpAddr , port : u16 ) -> Announce {
417415 Announce {
@@ -434,7 +432,7 @@ mod test {
434432 let ip_in_announce_request = IpAddr :: V4 ( Ipv4Addr :: new ( 126 , 0 , 0 , 1 ) ) ;
435433 let announce_request = sample_http_announce_request ( ip_in_announce_request, 8080 ) ;
436434
437- let torrent_peer = TorrentPeer :: from_http_announce_request ( & announce_request, remote_ip, None ) ;
435+ let torrent_peer = Peer :: from_http_announce_request ( & announce_request, remote_ip, None ) ;
438436
439437 assert_eq ! ( torrent_peer. peer_addr. ip( ) , remote_ip) ;
440438 assert_ne ! ( torrent_peer. peer_addr. ip( ) , ip_in_announce_request) ;
@@ -449,7 +447,7 @@ mod test {
449447 let announce_request =
450448 sample_http_announce_request ( IpAddr :: V4 ( Ipv4Addr :: new ( 126 , 0 , 0 , 1 ) ) , port_in_announce_request) ;
451449
452- let torrent_peer = TorrentPeer :: from_http_announce_request ( & announce_request, remote_ip, None ) ;
450+ let torrent_peer = Peer :: from_http_announce_request ( & announce_request, remote_ip, None ) ;
453451
454452 assert_eq ! ( torrent_peer. peer_addr. port( ) , announce_request. port) ;
455453 assert_ne ! ( torrent_peer. peer_addr. port( ) , remote_port) ;
0 commit comments