From 6df190a715487fbf099fe7b9f2d4840303a7726b Mon Sep 17 00:00:00 2001 From: evilsocket Date: Thu, 30 Aug 2018 14:05:56 +0300 Subject: [PATCH] misc: small fix or general refactoring i did not bother commenting --- modules/net_sniff_mdns.go | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/modules/net_sniff_mdns.go b/modules/net_sniff_mdns.go index ea1344a2..8f64c52e 100644 --- a/modules/net_sniff_mdns.go +++ b/modules/net_sniff_mdns.go @@ -12,6 +12,13 @@ import ( "github.com/miekg/dns" ) +func mdnsCollectHostname(m map[string][]string, hostname string, address string) { + if _, found := m[hostname]; found == false { + m[hostname] = make([]string, 0) + } + m[hostname] = append(m[hostname], address) +} + func mdnsParser(ip *layers.IPv4, pkt gopacket.Packet, udp *layers.UDP) bool { if udp.SrcPort == packets.MDNSPort && udp.DstPort == packets.MDNSPort { var msg dns.Msg @@ -20,22 +27,11 @@ func mdnsParser(ip *layers.IPv4, pkt gopacket.Packet, udp *layers.UDP) bool { for _, answer := range append(msg.Answer, msg.Extra...) { switch rr := answer.(type) { case *dns.A: - name := rr.Header().Name - if _, found := m[name]; found == false { - m[name] = make([]string, 0) - } - - m[name] = append(m[name], answer.(*dns.A).A.String()) + mdnsCollectHostname(m, rr.Header().Name, answer.(*dns.A).A.String()) case *dns.AAAA: - name := rr.Header().Name - if _, found := m[name]; found == false { - m[name] = make([]string, 0) - } - - m[name] = append(m[name], answer.(*dns.AAAA).AAAA.String()) + mdnsCollectHostname(m, rr.Header().Name, answer.(*dns.AAAA).AAAA.String()) } - } for hostname, ips := range m {