Commit c312d0e0 authored by Russ Cox's avatar Russ Cox

net: use slightly less predictable dns request id

not trying to be secure, just not repetitive
(sending with the same id repeatedly makes
some resolvers stop replying.)

eventually we'll replace this with linking against
the system's native resolver.

R=p
CC=golang-dev
https://golang.org/cl/207051
parent 66cdc699
......@@ -17,6 +17,8 @@ package net
import (
"once"
"os"
"rand"
"time"
)
// DNSError represents a DNS lookup error.
......@@ -44,7 +46,7 @@ func _Exchange(cfg *_DNS_Config, c Conn, name string) (m *_DNS_Msg, err os.Error
return nil, &DNSError{"name too long", name, ""}
}
out := new(_DNS_Msg)
out.id = 0x1234
out.id = uint16(rand.Int()) ^ uint16(time.Nanoseconds())
out.question = []_DNS_Question{
_DNS_Question{name, _DNS_TypeA, _DNS_ClassINET},
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment