Only respond to requests for recently announced transactions
Only respond to requests for recently announced transactions

... unless they're UNCONDITIONAL_RELAY_DELAY old, or there has been
a response to a MEMPOOL request in the mean time.

This is accomplished using a rolling Bloom filter for the last
3500 announced transactions. The probability of seeing more than 100
broadcast events (which can be up to 35 txids each) in 2 minutes for
an outbound peer (where the average frequency is one per minute), is
less than 1 in a million.

MarcoFalke/bitcoin,tecnovert/particl-core,mruddy/bitcoin,mruddy/bitcoin,sstone/bitcoin,lateminer/bitcoin,anditto/bitcoin,achow101/bitcoin,domob1812/bitcoin,jamesob/bitcoin,fujicoin/fujicoin,rnicoll/dogecoin,fanquake/bitcoin,GroestlCoin/bitcoin,namecoin/namecore,MeshCollider/bitcoin,jamesob/bitcoin,alecalve/bitcoin,namecoin/namecoin-core,litecoin-project/litecoin,ElementsProject/elements,sstone/bitcoin,bitcoinknots/bitcoin,bitcoinsSG/bitcoin,rnicoll/bitcoin,mm-s/bitcoin,mm-s/bitcoin,particl/particl-core,n1bor/bitcoin,particl/particl-core,n1bor/bitcoin,qtumproject/qtum,litecoin-project/litecoin,domob1812/namecore,GroestlCoin/GroestlCoin,prusnak/bitcoin,domob1812/bitcoin,MarcoFalke/bitcoin,pstratem/bitcoin,sipsorcery/bitcoin,Sjors/bitcoin,sstone/bitcoin,jonasschnelli/bitcoin,domob1812/namecore,bitcoinknots/bitcoin,jnewbery/bitcoin,namecoin/namecore,anditto/bitcoin,practicalswift/bitcoin,GroestlCoin/bitcoin,yenliangl/bitcoin,fujicoin/fujicoin,pstratem/bitcoin,bitcoin/bitcoin,AkioNak/bitcoin,jamesob/bitcoin,cdecker/bitcoin,apoelstra/bitcoin,GroestlCoin/GroestlCoin,namecoin/namecoin-core,anditto/bitcoin,bitcoinsSG/bitcoin,mruddy/bitcoin,fanquake/bitcoin,kallewoof/bitcoin,EthanHeilman/bitcoin,n1bor/bitcoin,instagibbs/bitcoin,anditto/bitcoin,instagibbs/bitcoin,bitcoinknots/bitcoin,achow101/bitcoin,ElementsProject/elements,practicalswift/bitcoin,jlopp/statoshi,AkioNak/bitcoin,fanquake/bitcoin,MarcoFalke/bitcoin,GroestlCoin/bitcoin,MeshCollider/bitcoin,jamesob/bitcoin,domob1812/bitcoin,sstone/bitcoin,yenliangl/bitcoin,sipsorcery/bitcoin,namecoin/namecoin-core,Sjors/bitcoin,apoelstra/bitcoin,Xekyo/bitcoin,rnicoll/bitcoin,cdecker/bitcoin,prusnak/bitcoin,pataquets/namecoin-core,particl/particl-core,Sjors/bitcoin,alecalve/bitcoin,AkioNak/bitcoin,domob1812/bitcoin,bitcoin/bitcoin,bitcoin/bitcoin,domob1812/bitcoin,rnicoll/bitcoin,litecoin-project/litecoin,pstratem/bitcoin,Sjors/bitcoin,kallewoof/bitcoin,cdecker/bitcoin,jambolo/bitcoin,rnicoll/dogecoin,rnicoll/dogecoin,mm-s/bitcoin,mm-s/bitcoin,GroestlCoin/bitcoin,achow101/bitcoin,jlopp/statoshi,jambolo/bitcoin,tecnovert/particl-core,mm-s/bitcoin,yenliangl/bitcoin,jamesob/bitcoin,mruddy/bitcoin,practicalswift/bitcoin,cdecker/bitcoin,dscotese/bitcoin,JeremyRubin/bitcoin,rnicoll/bitcoin,prusnak/bitcoin,kallewoof/bitcoin,ElementsProject/elements,GroestlCoin/GroestlCoin,MeshCollider/bitcoin,bitcoinknots/bitcoin,bitcoinsSG/bitcoin,alecalve/bitcoin,apoelstra/bitcoin,yenliangl/bitcoin,domob1812/namecore,prusnak/bitcoin,jlopp/statoshi,pataquets/namecoin-core,dscotese/bitcoin,namecoin/namecoin-core,MarcoFalke/bitcoin,bitcoinknots/bitcoin,ajtowns/bitcoin,jnewbery/bitcoin,achow101/bitcoin,lateminer/bitcoin,MeshCollider/bitcoin,ajtowns/bitcoin,pstratem/bitcoin,prusnak/bitcoin,jlopp/statoshi,tecnovert/particl-core,pataquets/namecoin-core,GroestlCoin/bitcoin,sstone/bitcoin,mruddy/bitcoin,pataquets/namecoin-core,JeremyRubin/bitcoin,EthanHeilman/bitcoin,sstone/bitcoin,namecoin/namecoin-core,bitcoin/bitcoin,fujicoin/fujicoin,pstratem/bitcoin,jnewbery/bitcoin,EthanHeilman/bitcoin,AkioNak/bitcoin,tecnovert/particl-core,Xekyo/bitcoin,jambolo/bitcoin,Xekyo/bitcoin,bitcoin/bitcoin,JeremyRubin/bitcoin,namecoin/namecore,lateminer/bitcoin,andreaskern/bitcoin,sipsorcery/bitcoin,jonasschnelli/bitcoin,qtumproject/qtum,practicalswift/bitcoin,instagibbs/bitcoin,lateminer/bitcoin,bitcoinsSG/bitcoin,qtumproject/qtum,GroestlCoin/GroestlCoin,tecnovert/particl-core,jlopp/statoshi,MarcoFalke/bitcoin,jonasschnelli/bitcoin,jnewbery/bitcoin,achow101/bitcoin,fujicoin/fujicoin,rnicoll/dogecoin,namecoin/namecore,andreaskern/bitcoin,anditto/bitcoin,anditto/bitcoin,namecoin/namecore,andreaskern/bitcoin,andreaskern/bitcoin,instagibbs/bitcoin,pstratem/bitcoin,mruddy/bitcoin,namecoin/namecore,jnewbery/bitcoin,fanquake/bitcoin,bitcoin/bitcoin,apoelstra/bitcoin,GroestlCoin/bitcoin,jambolo/bitcoin,ElementsProject/elements,rnicoll/bitcoin,ElementsProject/elements,Xekyo/bitcoin,Xekyo/bitcoin,alecalve/bitcoin,domob1812/bitcoin,lateminer/bitcoin,ajtowns/bitcoin,AkioNak/bitcoin,qtumproject/qtum,cdecker/bitcoin,Sjors/bitcoin,lateminer/bitcoin,andreaskern/bitcoin,jambolo/bitcoin,MarcoFalke/bitcoin,mm-s/bitcoin,rnicoll/bitcoin,jlopp/statoshi,jonasschnelli/bitcoin,domob1812/namecore,litecoin-project/litecoin,kallewoof/bitcoin,qtumproject/qtum,qtumproject/qtum,fujicoin/fujicoin,yenliangl/bitcoin,namecoin/namecoin-core,practicalswift/bitcoin,kallewoof/bitcoin,andreaskern/bitcoin,AkioNak/bitcoin,rnicoll/dogecoin,domob1812/namecore,qtumproject/qtum,yenliangl/bitcoin,litecoin-project/litecoin,MeshCollider/bitcoin,bitcoinsSG/bitcoin,JeremyRubin/bitcoin,alecalve/bitcoin,dscotese/bitcoin,pataquets/namecoin-core,ajtowns/bitcoin,instagibbs/bitcoin,fanquake/bitcoin,sipsorcery/bitcoin,practicalswift/bitcoin,Xekyo/bitcoin,sipsorcery/bitcoin,tecnovert/particl-core,instagibbs/bitcoin,ajtowns/bitcoin,domob1812/namecore,particl/particl-core,achow101/bitcoin,n1bor/bitcoin,litecoin-project/litecoin,GroestlCoin/GroestlCoin,n1bor/bitcoin,particl/particl-core,dscotese/bitcoin,fujicoin/fujicoin,alecalve/bitcoin,dscotese/bitcoin,pataquets/namecoin-core,EthanHeilman/bitcoin,sipsorcery/bitcoin,particl/particl-core,jonasschnelli/bitcoin,EthanHeilman/bitcoin,JeremyRubin/bitcoin,JeremyRubin/bitcoin,cdecker/bitcoin,n1bor/bitcoin,ElementsProject/elements,GroestlCoin/GroestlCoin,jamesob/bitcoin,fanquake/bitcoin,jambolo/bitcoin,apoelstra/bitcoin,MeshCollider/bitcoin,prusnak/bitcoin,EthanHeilman/bitcoin,apoelstra/bitcoin,bitcoinsSG/bitcoin,dscotese/bitcoin,ajtowns/bitcoin,kallewoof/bitcoin