本文整理汇总了Golang中github.com/miekg/dns.MX.Preference方法的典型用法代码示例。如果您正苦于以下问题:Golang MX.Preference方法的具体用法?Golang MX.Preference怎么用?Golang MX.Preference使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/miekg/dns.MX
的用法示例。
在下文中一共展示了MX.Preference方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: answerMX
func answerMX(q *dns.Question, v *DNSValue) dns.RR {
answer := new(dns.MX)
answer.Header().Name = q.Name
answer.Header().Rrtype = dns.TypeMX
answer.Header().Class = dns.ClassINET
answer.Preference = 50 // default if not defined
priority, err := strconv.Atoi(v.Attr["priority"])
if err == nil {
answer.Preference = uint16(priority)
}
if target, ok := v.Attr["target"]; ok {
answer.Mx = strings.TrimSuffix(target, ".") + "."
} else if v.Value != "" { // allows for simplified setting
answer.Mx = strings.TrimSuffix(v.Value, ".") + "."
}
return answer
}
示例2: handleDnsMX
// handleDnsMX writes a MX record pointing to s.host into m for host name.
func (s *server) handleDnsMX(name host, m *dns.Msg) {
r := new(dns.MX)
r.Hdr = dns.RR_Header{
Name: name.dns(),
Rrtype: dns.TypeMX,
Class: dns.ClassINET,
Ttl: 3600,
}
r.Preference = 10
r.Mx = s.self.dns()
m.Answer = make([]dns.RR, 1)
m.Answer[0] = r
}
示例3: TestRRsToMapStrsWithOPTRecord
func TestRRsToMapStrsWithOPTRecord(t *testing.T) {
o := new(mkdns.OPT)
o.Hdr.Name = "." // MUST be the root zone, per definition.
o.Hdr.Rrtype = mkdns.TypeOPT
r := new(mkdns.MX)
r.Hdr = mkdns.RR_Header{Name: "miek.nl.", Rrtype: mkdns.TypeMX,
Class: mkdns.ClassINET, Ttl: 3600}
r.Preference = 10
r.Mx = "mx.miek.nl."
// The OPT record is a psuedo-record so it doesn't become a real record
// in our conversion, and there will be 1 entry instead of 2.
mapStrs := rrsToMapStrs([]mkdns.RR{o, r})
assert.Len(t, mapStrs, 1)
mapStr := mapStrs[0]
assert.Equal(t, "IN", mapStr["class"])
assert.Equal(t, "MX", mapStr["type"])
assert.Equal(t, "mx.miek.nl.", mapStr["data"])
assert.Equal(t, "miek.nl.", mapStr["name"])
assert.EqualValues(t, 10, mapStr["preference"])
}