Added entire matched peer list to output

This commit is contained in:
ooni noob 2022-11-22 17:17:16 +01:00
parent 60081acdfd
commit 606a4723a6
2 changed files with 12 additions and 9 deletions

View File

@ -126,11 +126,13 @@ type IndividualTestKeys struct {
// Number of DHT bootsrap nodes // Number of DHT bootsrap nodes
BootstrapNum int `json:"bootstrap_num"` BootstrapNum int `json:"bootstrap_num"`
// Number of DHT peers contacted // Number of DHT peers contacted
PeersTried uint32 `json:"peers_tried"` PeersTriedNum uint32 `json:"peers_tried_num"`
// Number of DHT peers who answered // Number of DHT peers who answered
PeersResponded uint32 `json:"peers_responded"` PeersRespondedNum uint32 `json:"peers_responded_num"`
// Number of DHT peers found for specific requested infohash // Number of DHT peers found for specific requested infohash
InfohashPeers int `json:"infohash_peers"` InfohashPeersNum int `json:"infohash_peers_num"`
// Actual DHT peers found for requested infohash
InfohashPeers []string `json:"infohash_peers"`
// Individual failure aborting the test run for this address/port combo // Individual failure aborting the test run for this address/port combo
Failure string `json:"failure"` Failure string `json:"failure"`
} }
@ -220,19 +222,20 @@ func TestDHTServer(dht *dht.Server, infohash [20]byte, bootstrap_nodes []string,
counter := 0 counter := 0
for entry := range announce.Peers { for entry := range announce.Peers {
counter += 1 counter += 1
itk.InfohashPeers = append(itk.InfohashPeers, entry.NodeInfo.Addr.String())
itk.logger.Debugf("peer %d: %s", counter, entry.NodeInfo.Addr) itk.logger.Debugf("peer %d: %s", counter, entry.NodeInfo.Addr)
} }
stats := announce.TraversalStats() stats := announce.TraversalStats()
itk.PeersTried = stats.NumAddrsTried itk.PeersTriedNum = stats.NumAddrsTried
itk.PeersResponded = stats.NumResponses itk.PeersRespondedNum = stats.NumResponses
itk.InfohashPeers = counter itk.InfohashPeersNum = counter
if itk.PeersResponded == 0 { if itk.PeersRespondedNum == 0 {
itk.error(errors.New("No DHT peers were found")) itk.error(errors.New("No DHT peers were found"))
return false return false
} else { } else {
itk.logger.Infof("Tried %d peers obtained from %d bootstrap nodes. Got response from %d. %d have requested infohash.", itk.PeersTried, itk.BootstrapNum, itk.PeersResponded, itk.InfohashPeers) itk.logger.Infof("Tried %d peers obtained from %d bootstrap nodes. Got response from %d. %d have requested infohash.", itk.PeersTriedNum, itk.BootstrapNum, itk.PeersRespondedNum, itk.InfohashPeersNum)
} }
return true return true

View File

@ -105,7 +105,7 @@ func TestMeasurer_run(t *testing.T) {
t.Fatal("Expected only one bootstrap node") t.Fatal("Expected only one bootstrap node")
} }
if run.PeersResponded != 1 { if run.PeersRespondedNum != 1 {
t.Fatal("Expected bootstrap node to respond") t.Fatal("Expected bootstrap node to respond")
} }