···164164 var dnsErr error
165165 var did syntax.DID
166166167167+ if !handle.AllowedTLD() {
168168+ return "", ErrHandleReservedTLD
169169+ }
170170+167171 tryDNS := true
168172 for _, suffix := range d.SkipDNSDomainSuffixes {
169173 if strings.HasSuffix(handle.String(), suffix) {
+3
atproto/identity/identity.go
···4040// Indicates that handle and DID resolved, but handle points to a DID with a different handle. This is only returned when looking up a handle, not when looking up a DID.
4141var ErrHandleNotValid = errors.New("handle resolves to DID with different handle")
42424343+// Handle top-level domain (TLD) is one of the special "Reserved" suffixes, and not allowed for atproto use
4444+var ErrHandleReservedTLD = errors.New("handle top-level domain is disallowed")
4545+4346// Indicates that resolution process completed successfully, but the DID does not exist.
4447var ErrDIDNotFound = errors.New("DID not found")
4548