@@ -1188,7 +1188,7 @@ static void tx_send_ack(udpard_rx_t* const rx,
11881188
11891189bool udpard_tx_new (udpard_tx_t * const self ,
11901190 const uint64_t local_uid ,
1191- const uint64_t p2p_transfer_id_base_seed ,
1191+ const uint64_t p2p_transfer_id_seed ,
11921192 const size_t enqueued_frames_limit ,
11931193 const udpard_tx_mem_resources_t memory ,
11941194 const udpard_tx_vtable_t * const vtable )
@@ -1199,7 +1199,7 @@ bool udpard_tx_new(udpard_tx_t* const self,
11991199 mem_zero (sizeof (* self ), self );
12001200 self -> vtable = vtable ;
12011201 self -> local_uid = local_uid ;
1202- self -> p2p_transfer_id_base = hash_pair_u64 (p2p_transfer_id_base_seed , local_uid );
1202+ self -> p2p_transfer_id = hash_pair_u64 (p2p_transfer_id_seed , local_uid );
12031203 self -> ack_baseline_timeout = UDPARD_TX_ACK_BASELINE_TIMEOUT_DEFAULT_us ;
12041204 self -> enqueued_frames_limit = enqueued_frames_limit ;
12051205 self -> enqueued_frames_count = 0 ;
@@ -1264,7 +1264,7 @@ bool udpard_tx_push_p2p(udpard_tx_t* const self,
12641264 .priority = priority ,
12651265 .kind = (feedback != NULL ) ? frame_msg_reliable : frame_msg_best ,
12661266 .transfer_payload_size = (uint32_t )bytes_scattered_size (payload ),
1267- .transfer_id = remote . uid + self -> p2p_transfer_id_base ++ , // Preserve monotonicity .
1267+ .transfer_id = self -> p2p_transfer_id ++ , // Shared for all remotes, hence no ack ambiguity .
12681268 .sender_uid = self -> local_uid ,
12691269 };
12701270 if (out_transfer_id != NULL ) {
0 commit comments