func (rd *SSHFP) Decode(b []byte, pos *int, sniffer dns.WireDecodeSniffer) (err error) {
	p0 := &b[*pos]
	if err = (*dns.Octet)(&rd.Algorithm).Decode(b, pos, sniffer); err != nil {
		return
	}

	if err = (*dns.Octet)(&rd.Type).Decode(b, pos, sniffer); err != nil {
		return
	}

	n := len(b) - *pos
	if n <= 0 {
		return fmt.Errorf("(*SSHFP).Decode: no fingerprint data")
	}

	rd.Fingerprint = make([]byte, n)
	copy(rd.Fingerprint, b[*pos:])
	*pos += n
	if sniffer != nil {
		sniffer(p0, &b[*pos-1], dns.SniffRDataSSHFP, rd)
	}
	return
}
// Implementation of dns.Wirer
Implementation of dns.Wirer
// Implementation of dns . Wirer
func (rd *SSHFP) Decode(b []byte, pos *int, sniffer dns.WireDecodeSniffer) (err error) {
	p0 := &b[*pos]
	if err = (*dns.Octet)(&rd.Algorithm).Decode(b, pos, sniffer); err != nil {
		return
	}
	if err = (*dns.Octet)(&rd.Type).Decode(b, pos, sniffer); err != nil {
		return
	}
	n := len(b) - *pos
	if n <= 0 {
		return fmt.Errorf("(*SSHFP).Decode: no fingerprint data")
	}
	rd.Fingerprint = make([]byte, n)
	copy(rd.Fingerprint, b[*pos:])
	*pos += n
	if sniffer != nil {
		sniffer(p0, &b[*pos-1], dns.SniffRDataSSHFP, rd)
	}
	return
}
func ( rd * SSHFP ) Decode ( b [ ] byte , pos * int , sniffer dns . WireDecodeSniffer ) ( err error ) { p0 := & b [ * pos ] if err = ( * dns . Octet ) ( & rd . Algorithm ) . Decode ( b , pos , sniffer ) ; err != nil { return } if err = ( * dns . Octet ) ( & rd . Type ) . Decode ( b , pos , sniffer ) ; err != nil { return } n := len ( b ) - * pos if n <= 0 { return fmt . Errorf ( " " ) } rd . Fingerprint = make ( [ ] byte , n ) copy ( rd . Fingerprint , b [ * pos : ] ) * pos += n if sniffer != nil { sniffer ( p0 , & b [ * pos - 1 ] , dns . SniffRDataSSHFP , rd ) } return }
Implementation of dns.Wirer
Implementation of dns . Wirer