@@ -27,7 +27,7 @@ use tox_packet::ip_port::*;
27
27
use crate :: onion:: client:: errors:: * ;
28
28
use crate :: onion:: client:: onion_path:: * ;
29
29
use crate :: onion:: client:: paths_pool:: * ;
30
- use crate :: onion:: onion_announce:: initial_ping_id ;
30
+ use crate :: onion:: onion_announce:: INITIAL_PING_ID ;
31
31
use tox_packet:: onion:: * ;
32
32
use tox_packet:: packed_node:: * ;
33
33
use crate :: relay:: client:: Connections as TcpConnections ;
@@ -270,7 +270,7 @@ impl<'a> AnnouncePacketData<'a> {
270
270
/// pind_id is 0 and an announce request otherwise.
271
271
fn request ( & self , node_pk : & PublicKey , ping_id : Option < sha256:: Digest > , request_id : u64 ) -> InnerOnionAnnounceRequest {
272
272
let payload = OnionAnnounceRequestPayload {
273
- ping_id : ping_id. unwrap_or_else ( initial_ping_id ) ,
273
+ ping_id : ping_id. unwrap_or ( INITIAL_PING_ID ) ,
274
274
search_pk : self . search_pk ,
275
275
data_pk : self . data_pk . unwrap_or ( PublicKey ( [ 0 ; 32 ] ) ) ,
276
276
sendback_data : request_id,
@@ -467,9 +467,9 @@ impl OnionClient {
467
467
}
468
468
469
469
let ( ping_id, data_pk) = if payload. announce_status == AnnounceStatus :: Found {
470
- ( None , Some ( digest_as_pk ( payload. ping_id_or_pk ) ) )
470
+ ( None , Some ( PublicKey ( payload. ping_id_or_pk ) ) )
471
471
} else {
472
- ( Some ( payload. ping_id_or_pk ) , None )
472
+ ( Some ( sha256 :: Digest ( payload. ping_id_or_pk ) ) , None )
473
473
} ;
474
474
475
475
let now = clock_now ( ) ;
@@ -1211,7 +1211,7 @@ mod tests {
1211
1211
1212
1212
drop ( state) ;
1213
1213
1214
- let ping_id = sha256 :: hash ( & [ 1 , 2 , 3 ] ) ;
1214
+ let ping_id = [ 42 ; 32 ] ;
1215
1215
let ( node_pk, node_sk) = gen_keypair ( ) ;
1216
1216
let node = PackedNode :: new ( SocketAddr :: V4 ( "5.6.7.8:12345" . parse ( ) . unwrap ( ) ) , & node_pk) ;
1217
1217
let payload = OnionAnnounceResponsePayload {
@@ -1228,7 +1228,7 @@ mod tests {
1228
1228
// The sender should be added to close nodes
1229
1229
let onion_node = state. announce_list . get_node ( & real_pk, & sender_pk) . unwrap ( ) ;
1230
1230
assert_eq ! ( onion_node. path_id, path. id( ) ) ;
1231
- assert_eq ! ( onion_node. ping_id, Some ( ping_id) ) ;
1231
+ assert_eq ! ( onion_node. ping_id, Some ( sha256 :: Digest ( ping_id) ) ) ;
1232
1232
assert_eq ! ( onion_node. data_pk, None ) ;
1233
1233
assert_eq ! ( onion_node. announce_status, AnnounceStatus :: Announced ) ;
1234
1234
@@ -1240,7 +1240,7 @@ mod tests {
1240
1240
let payload = unpack_onion_packet ( packet, addr_to_send, & key_by_addr) ;
1241
1241
let packet = unpack ! ( payload. inner, InnerOnionRequest :: InnerOnionAnnounceRequest ) ;
1242
1242
let payload = packet. get_payload ( & precompute ( & real_pk, & node_sk) ) . unwrap ( ) ;
1243
- assert_eq ! ( payload. ping_id, initial_ping_id ( ) ) ;
1243
+ assert_eq ! ( payload. ping_id, INITIAL_PING_ID ) ;
1244
1244
assert_eq ! ( payload. search_pk, real_pk) ;
1245
1245
assert_eq ! ( payload. data_pk, onion_client. data_pk) ;
1246
1246
}
@@ -1284,12 +1284,11 @@ mod tests {
1284
1284
1285
1285
drop ( state) ;
1286
1286
1287
- let ping_id = sha256:: hash ( & [ 1 , 2 , 3 ] ) ;
1288
1287
let ( node_pk, _node_sk) = gen_keypair ( ) ;
1289
1288
let node = PackedNode :: new ( SocketAddr :: V4 ( "5.6.7.8:12345" . parse ( ) . unwrap ( ) ) , & node_pk) ;
1290
1289
let payload = OnionAnnounceResponsePayload {
1291
1290
announce_status : AnnounceStatus :: Announced ,
1292
- ping_id_or_pk : ping_id ,
1291
+ ping_id_or_pk : [ 42 ; 32 ] ,
1293
1292
nodes : vec ! [ node]
1294
1293
} ;
1295
1294
let packet = OnionAnnounceResponse :: new ( & precompute ( & friend_temporary_pk, & sender_sk) , request_id, & payload) ;
@@ -1345,7 +1344,7 @@ mod tests {
1345
1344
1346
1345
let payload = OnionAnnounceResponsePayload {
1347
1346
announce_status : AnnounceStatus :: Announced ,
1348
- ping_id_or_pk : sha256 :: hash ( & [ 1 , 2 , 3 ] ) ,
1347
+ ping_id_or_pk : [ 42 ; 32 ] ,
1349
1348
nodes : vec ! [ node]
1350
1349
} ;
1351
1350
let packet = OnionAnnounceResponse :: new ( & precompute ( & real_pk, & sender_sk) , request_id, & payload) ;
@@ -1410,7 +1409,7 @@ mod tests {
1410
1409
let node = PackedNode :: new ( SocketAddr :: V4 ( "5.6.7.8:12345" . parse ( ) . unwrap ( ) ) , & node_pk) ;
1411
1410
let payload = OnionAnnounceResponsePayload {
1412
1411
announce_status : AnnounceStatus :: Found ,
1413
- ping_id_or_pk : pk_as_digest ( friend_data_pk) ,
1412
+ ping_id_or_pk : friend_data_pk. 0 ,
1414
1413
nodes : vec ! [ node]
1415
1414
} ;
1416
1415
let packet = OnionAnnounceResponse :: new ( & precompute ( & friend_temporary_pk, & sender_sk) , request_id, & payload) ;
@@ -1434,7 +1433,7 @@ mod tests {
1434
1433
let payload = unpack_onion_packet ( packet, addr_to_send, & key_by_addr) ;
1435
1434
let packet = unpack ! ( payload. inner, InnerOnionRequest :: InnerOnionAnnounceRequest ) ;
1436
1435
let payload = packet. get_payload ( & precompute ( & friend_temporary_pk, & node_sk) ) . unwrap ( ) ;
1437
- assert_eq ! ( payload. ping_id, initial_ping_id ( ) ) ;
1436
+ assert_eq ! ( payload. ping_id, INITIAL_PING_ID ) ;
1438
1437
assert_eq ! ( payload. search_pk, friend_pk) ;
1439
1438
assert_eq ! ( payload. data_pk, PublicKey ( [ 0 ; 32 ] ) ) ;
1440
1439
}
@@ -1478,7 +1477,7 @@ mod tests {
1478
1477
let node = PackedNode :: new ( SocketAddr :: V4 ( "5.6.7.8:12345" . parse ( ) . unwrap ( ) ) , & node_pk) ;
1479
1478
let payload = OnionAnnounceResponsePayload {
1480
1479
announce_status : AnnounceStatus :: Found ,
1481
- ping_id_or_pk : pk_as_digest ( friend_data_pk) ,
1480
+ ping_id_or_pk : friend_data_pk. 0 ,
1482
1481
nodes : vec ! [ node]
1483
1482
} ;
1484
1483
let packet = OnionAnnounceResponse :: new ( & precompute ( & real_pk, & sender_sk) , request_id, & payload) ;
@@ -1520,7 +1519,7 @@ mod tests {
1520
1519
let ( friend_data_pk, _friend_data_sk) = gen_keypair ( ) ;
1521
1520
let payload = OnionAnnounceResponsePayload {
1522
1521
announce_status : AnnounceStatus :: Found ,
1523
- ping_id_or_pk : pk_as_digest ( friend_data_pk) ,
1522
+ ping_id_or_pk : friend_data_pk. 0 ,
1524
1523
nodes : vec ! [ ]
1525
1524
} ;
1526
1525
let packet = OnionAnnounceResponse :: new ( & precompute ( & friend_temporary_pk, & sender_sk) , request_id, & payload) ;
@@ -1625,7 +1624,7 @@ mod tests {
1625
1624
let node = PackedNode :: new ( SocketAddr :: V4 ( "5.6.7.8:12345" . parse ( ) . unwrap ( ) ) , & node_pk) ;
1626
1625
let payload = OnionAnnounceResponsePayload {
1627
1626
announce_status : AnnounceStatus :: Found ,
1628
- ping_id_or_pk : pk_as_digest ( friend_data_pk) ,
1627
+ ping_id_or_pk : friend_data_pk. 0 ,
1629
1628
nodes : vec ! [ node]
1630
1629
} ;
1631
1630
let packet = OnionAnnounceResponse :: new ( & precompute ( & friend_temporary_pk, & sender_sk) , request_id, & payload) ;
@@ -1890,7 +1889,7 @@ mod tests {
1890
1889
let payload = unpack_onion_packet ( packet, addr_to_send, & key_by_addr) ;
1891
1890
let packet = unpack ! ( payload. inner, InnerOnionRequest :: InnerOnionAnnounceRequest ) ;
1892
1891
let payload = packet. get_payload ( & precompute ( & real_pk, & key_by_addr[ & payload. ip_port . to_saddr ( ) ] ) ) . unwrap ( ) ;
1893
- assert_eq ! ( payload. ping_id, initial_ping_id ( ) ) ;
1892
+ assert_eq ! ( payload. ping_id, INITIAL_PING_ID ) ;
1894
1893
assert_eq ! ( payload. search_pk, real_pk) ;
1895
1894
assert_eq ! ( payload. data_pk, data_pk) ;
1896
1895
}
@@ -2017,7 +2016,7 @@ mod tests {
2017
2016
let payload = unpack_onion_packet ( packet, addr_to_send, & key_by_addr) ;
2018
2017
let packet = unpack ! ( payload. inner, InnerOnionRequest :: InnerOnionAnnounceRequest ) ;
2019
2018
let payload = packet. get_payload ( & precompute ( & friend_temporary_pk, & key_by_addr[ & payload. ip_port . to_saddr ( ) ] ) ) . unwrap ( ) ;
2020
- assert_eq ! ( payload. ping_id, initial_ping_id ( ) ) ;
2019
+ assert_eq ! ( payload. ping_id, INITIAL_PING_ID ) ;
2021
2020
assert_eq ! ( payload. search_pk, friend_pk) ;
2022
2021
assert_eq ! ( payload. data_pk, PublicKey ( [ 0 ; 32 ] ) ) ;
2023
2022
}
@@ -2097,7 +2096,7 @@ mod tests {
2097
2096
let payload = unpack_onion_packet ( packet, addr_to_send, & key_by_addr) ;
2098
2097
let packet = unpack ! ( payload. inner, InnerOnionRequest :: InnerOnionAnnounceRequest ) ;
2099
2098
let payload = packet. get_payload ( & precompute ( & friend_temporary_pk, & nodes_key_by_addr[ & payload. ip_port . to_saddr ( ) ] ) ) . unwrap ( ) ;
2100
- assert_eq ! ( payload. ping_id, initial_ping_id ( ) ) ;
2099
+ assert_eq ! ( payload. ping_id, INITIAL_PING_ID ) ;
2101
2100
assert_eq ! ( payload. search_pk, friend_pk) ;
2102
2101
assert_eq ! ( payload. data_pk, PublicKey ( [ 0 ; 32 ] ) ) ;
2103
2102
}
0 commit comments