2
0
mirror of synced 2025-02-24 06:38:14 +00:00

Add OnQuery Hook

This commit is contained in:
BruceWang 2019-05-23 10:13:48 +08:00 committed by Matt Joiner
parent 25d76e0449
commit 60e215aa81
2 changed files with 5 additions and 0 deletions

View File

@ -313,6 +313,7 @@ func (cl *Client) newDhtServer(conn net.PacketConn) (s *dht.Server, err error) {
}(), }(),
StartingNodes: cl.config.DhtStartingNodes, StartingNodes: cl.config.DhtStartingNodes,
ConnectionTracking: cl.config.ConnTracker, ConnectionTracking: cl.config.ConnTracker,
OnQuery: cl.config.DHTOnQuery,
} }
s, err = dht.NewServer(&cfg) s, err = dht.NewServer(&cfg)
if err == nil { if err == nil {

View File

@ -7,6 +7,7 @@ import (
"time" "time"
"github.com/anacrolix/dht" "github.com/anacrolix/dht"
"github.com/anacrolix/dht/krpc"
"github.com/anacrolix/missinggo" "github.com/anacrolix/missinggo"
"github.com/anacrolix/missinggo/conntrack" "github.com/anacrolix/missinggo/conntrack"
"github.com/anacrolix/missinggo/expect" "github.com/anacrolix/missinggo/expect"
@ -124,6 +125,9 @@ type ClientConfig struct {
dropDuplicatePeerIds bool dropDuplicatePeerIds bool
ConnTracker *conntrack.Instance ConnTracker *conntrack.Instance
// OnQuery hook func
DHTOnQuery func(query *krpc.Msg, source net.Addr) (propagate bool)
} }
func (cfg *ClientConfig) SetListenAddr(addr string) *ClientConfig { func (cfg *ClientConfig) SetListenAddr(addr string) *ClientConfig {