Files
bitcoin/src
fanquake 78aee0fe2c Merge bitcoin/bitcoin#26569: p2p: Ensure transaction announcements are only queued for fully connected peers
8f2dac5409 [test] Add p2p_tx_privacy.py (dergoegge)
ce63fca13e [net processing] Assume that TxRelay::m_tx_inventory_to_send is empty pre-verack (dergoegge)
845e3a34c4 [net processing] Ensure transaction announcements are only queued for fully connected peers (dergoegge)

Pull request description:

  `TxRelay::m_next_inv_send_time` is initialized to 0, which means that any txids in `TxRelay::m_tx_inventory_to_send` will be announced on the first call to `PeerManagerImpl::SendMessages` for a fully connected peer (i.e. it completed the version handshake).

  Prior to #21160, `TxRelay::m_tx_inventory_to_send` was guaranteed to be empty on the first `SendMessages` call, as transaction announcements were only queued for fully connected peers. #21160 replaced a `CConnman::ForEachNode` call with a loop over `PeerManagerImpl::m_peer_map`, in which the txid for a transaction to be relayed is added to `TxRelay::m_tx_inventory_to_send` for all peers. Even for those peers that have not completed the version handshake. Prior to the PR this was not the case as `ForEachNode` has a "fully connected check" before calling a function for each node.

ACKs for top commit:
  MarcoFalke:
    ACK 8f2dac5409 🔝
  jnewbery:
    utACK 8f2dac5409

Tree-SHA512: e9eaccf7e00633ee0806fff1068b0e413a69a5e389d96c9659f68079915a6381ad5040c61f716cfcde77931d1b563b1049da97a232a95c6cd8355bd3d13404b9
2022-12-02 15:13:31 +00:00
..
2022-10-26 15:55:29 +03:00
2022-09-23 10:48:47 +01:00
2022-10-10 15:44:02 +01:00
2021-11-12 11:46:34 +01:00
2022-04-20 14:29:29 +01:00
2022-10-18 14:12:42 +02:00
2022-07-20 15:34:36 +02:00
2022-11-01 10:14:49 +00:00
2022-11-01 10:14:49 +00:00
2021-12-30 19:36:57 +02:00
2022-08-04 11:32:25 +02:00
2022-11-01 10:14:49 +00:00
2022-11-10 09:21:57 +02:00
2022-08-04 11:32:25 +02:00
2022-07-26 11:05:04 +02:00
2021-12-30 19:36:57 +02:00
2021-12-30 19:36:57 +02:00
2022-08-05 14:59:15 +02:00
2022-08-05 14:59:15 +02:00