in cmd/dns/dns.go [96:117]
func randomPrefixModifier(request interface{}) (interface{}, error) {
msg, ok := request.(*tester.ExtendedMsg)
if !ok {
return nil, fmt.Errorf("%w, want: *dns.ExtendedMsg, got: %T", errors.ErrInvalidType, request)
}
hex, err := utils.RandomHex(prefixLength)
if err != nil {
//nolint:wrapcheck
return nil, err
}
// Create a new message so we don't destroy the original to avoid recursive prefixing
modified := new(tester.ExtendedMsg)
domain := fmt.Sprintf("%d.%s.%s", time.Now().Unix(), hex, msg.Question[0].Name)
msgTyp := msg.Question[0].Qtype
modified.SetQuestion(dns.Fqdn(domain), msgTyp)
modified.Rcode = msg.Rcode
return modified, nil
}