From 06ba595e32bafd182c609b10c523356dd8edff54 Mon Sep 17 00:00:00 2001 From: ZacharyZcR Date: Sat, 13 Jun 2026 21:52:26 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20UDP=E6=8F=92=E4=BB=B6=E6=94=B9=E7=94=A8?= =?UTF-8?q?=20conn.SetDeadline=20=E6=9B=BF=E4=BB=A3=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugins/services/bacnet.go | 4 +--- plugins/services/dns.go | 4 +--- plugins/services/ipmi.go | 4 +--- plugins/services/snmp.go | 4 +--- plugins/services/tftp.go | 4 +--- 5 files changed, 5 insertions(+), 15 deletions(-) diff --git a/plugins/services/bacnet.go b/plugins/services/bacnet.go index f3a4fa2..7e02550 100644 --- a/plugins/services/bacnet.go +++ b/plugins/services/bacnet.go @@ -34,9 +34,7 @@ func (p *BACnetPlugin) Scan(ctx context.Context, info *common.HostInfo, session } defer conn.Close() - if dl, ok := conn.(interface{ SetReadDeadline(time.Time) error }); ok { - _ = dl.SetReadDeadline(time.Now().Add(timeout)) - } + _ = conn.SetDeadline(time.Now().Add(timeout)) if _, err := conn.Write(bacnetWhoIs); err != nil { return &ScanResult{Success: false, Service: "bacnet"} diff --git a/plugins/services/dns.go b/plugins/services/dns.go index a02285d..cb31ac7 100644 --- a/plugins/services/dns.go +++ b/plugins/services/dns.go @@ -34,9 +34,7 @@ func (p *DNSPlugin) Scan(ctx context.Context, info *common.HostInfo, session *co } defer conn.Close() - if dl, ok := conn.(interface{ SetReadDeadline(time.Time) error }); ok { - _ = dl.SetReadDeadline(time.Now().Add(timeout)) - } + _ = conn.SetDeadline(time.Now().Add(timeout)) if _, err := conn.Write(query); err != nil { return &ScanResult{Success: false, Service: "dns"} diff --git a/plugins/services/ipmi.go b/plugins/services/ipmi.go index e027489..33cadca 100644 --- a/plugins/services/ipmi.go +++ b/plugins/services/ipmi.go @@ -53,9 +53,7 @@ func (p *IPMIPlugin) rmcpPing(ctx context.Context, target string, timeout time.D 0x00, // data length = 0 } - if dl, ok := conn.(interface{ SetReadDeadline(time.Time) error }); ok { - _ = dl.SetReadDeadline(time.Now().Add(timeout)) - } + _ = conn.SetDeadline(time.Now().Add(timeout)) if _, err := conn.Write(ping); err != nil { return nil diff --git a/plugins/services/snmp.go b/plugins/services/snmp.go index b75f09c..4737b77 100644 --- a/plugins/services/snmp.go +++ b/plugins/services/snmp.go @@ -75,9 +75,7 @@ func (p *SNMPPlugin) probe(ctx context.Context, target, community string, timeou } defer conn.Close() - if dl, ok := conn.(interface{ SetReadDeadline(time.Time) error }); ok { - _ = dl.SetReadDeadline(time.Now().Add(timeout)) - } + _ = conn.SetDeadline(time.Now().Add(timeout)) pkt := buildSNMPGetRequest(community, []int{1, 3, 6, 1, 2, 1, 1, 1, 0}) if _, err := conn.Write(pkt); err != nil { diff --git a/plugins/services/tftp.go b/plugins/services/tftp.go index f3cf0ed..2ecb21c 100644 --- a/plugins/services/tftp.go +++ b/plugins/services/tftp.go @@ -33,9 +33,7 @@ func (p *TFTPPlugin) Scan(ctx context.Context, info *common.HostInfo, session *c } defer conn.Close() - if dl, ok := conn.(interface{ SetReadDeadline(time.Time) error }); ok { - _ = dl.SetReadDeadline(time.Now().Add(timeout)) - } + _ = conn.SetDeadline(time.Now().Add(timeout)) if _, err := conn.Write(buildTFTPReadRequest("probe")); err != nil { return &ScanResult{Success: false, Service: "tftp"}