ing
This commit is contained in:
@@ -12,6 +12,7 @@ import (
|
||||
omd "git.loafle.net/overflow/model/discovery"
|
||||
omm "git.loafle.net/overflow/model/meta"
|
||||
omu "git.loafle.net/overflow/model/util"
|
||||
osm "git.loafle.net/overflow/service_matcher-go"
|
||||
"git.loafle.net/overflow_scanner/probe/discovery/session"
|
||||
"git.loafle.net/overflow_scanner/probe/internal/matcher"
|
||||
"git.loafle.net/overflow_scanner/probe/internal/pcap"
|
||||
@@ -20,13 +21,10 @@ import (
|
||||
)
|
||||
|
||||
func scanV4(discoverySession session.DiscoverySession, targetHost *omd.Host) error {
|
||||
ps, err := pcap.RetainScanner(targetHost.Zone)
|
||||
if nil != err {
|
||||
return fmt.Errorf("Discovery: Cannot retain pcap instance %v", err)
|
||||
ps := discoverySession.PCapScanner()
|
||||
if nil == ps {
|
||||
return fmt.Errorf("Cannot retain pcap instance")
|
||||
}
|
||||
defer func() {
|
||||
go pcap.ReleaseScanner(targetHost.Zone)
|
||||
}()
|
||||
|
||||
udpChan := ps.OpenUDP(targetHost.Address)
|
||||
defer func() {
|
||||
@@ -108,9 +106,11 @@ func sendUDP4(discoverySession session.DiscoverySession, ps pcap.PCapScanner, ho
|
||||
continue INNER_LOOP
|
||||
}
|
||||
|
||||
matchCtx := osm.NewMatchCtx(host.Address, portNumber)
|
||||
|
||||
addr := &net.UDPAddr{IP: ip.To4(), Port: portNumber}
|
||||
for i := 0; i < _matcher.PacketCount(); i++ {
|
||||
p := _matcher.Packet(i)
|
||||
for i := 0; i < _matcher.PacketCount(matchCtx); i++ {
|
||||
p := _matcher.Packet(matchCtx, i)
|
||||
if _, err := conn.WriteToUDP(p.Buffer, addr); err != nil {
|
||||
log.Print("UDP write error", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user