func (ip *ip4) Decode(b []byte, pos *int, sniffer dns.WireDecodeSniffer) (err error) {
	p := *pos
	if p+4 > len(b) {
		return fmt.Errorf("(*rr.ip4).Decode() - buffer underflow")
	}

	p0 := &b[p]
	*ip = ip4(net.IPv4(b[p], b[p+1], b[p+2], b[p+3]))
	*pos = p + 4
	if sniffer != nil {
		sniffer(p0, &b[*pos-1], dns.SniffIPV4, ip)
	}
	return
}
// Implementation of dns.Wirer
Implementation of dns.Wirer
// Implementation of dns . Wirer
func (ip *ip4) Decode(b []byte, pos *int, sniffer dns.WireDecodeSniffer) (err error) {
	p := *pos
	if p+4 > len(b) {
		return fmt.Errorf("(*rr.ip4).Decode() - buffer underflow")
	}
	p0 := &b[p]
	*ip = ip4(net.IPv4(b[p], b[p+1], b[p+2], b[p+3]))
	*pos = p + 4
	if sniffer != nil {
		sniffer(p0, &b[*pos-1], dns.SniffIPV4, ip)
	}
	return
}
func ( ip * ip4 ) Decode ( b [ ] byte , pos * int , sniffer dns . WireDecodeSniffer ) ( err error ) { p := * pos if p + 4 > len ( b ) { return fmt . Errorf ( " " ) } p0 := & b [ p ] * ip = ip4 ( net . IPv4 ( b [ p ] , b [ p + 1 ] , b [ p + 2 ] , b [ p + 3 ] ) ) * pos = p + 4 if sniffer != nil { sniffer ( p0 , & b [ * pos - 1 ] , dns . SniffIPV4 , ip ) } return }
Implementation of dns.Wirer
Implementation of dns . Wirer