Skip to content

Commit 331718b

Browse files
authored
Correct cache behavior
1 parent d2e79c2 commit 331718b

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

transport/internet/tls/ech.go

+4-1
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,17 @@ func QueryRecord(domain string, server string) (string, error) {
5656
defer mutex.RUnlock()
5757
rec, found := dnsCache[domain]
5858
if found && rec.expire.After(time.Now()) {
59-
return "", nil
59+
return rec.record, nil
6060
}
61+
mutex.Lock()
62+
defer mutex.Unlock()
6163
record, err := dohQuery(server, domain)
6264
if err != nil {
6365
return "", err
6466
}
6567
rec.record = record
6668
rec.expire = time.Now().Add(time.Second * 600)
69+
dnsCache[domain] = rec
6770
return record, nil
6871
}
6972

0 commit comments

Comments
 (0)