package ns import ( "net" cid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/container/id" ) // DNS looks up FrostFS names using system DNS. // // See also net package. type DNS struct{} // ResolveContainerName looks up for DNS TXT records for the given domain name // and returns the first one which represents valid container ID in a string format. // Otherwise, returns an error. // // See also net.LookupTXT. func (x *DNS) ResolveContainerName(name string) (id cid.ID, err error) { records, err := net.LookupTXT(name) if err != nil { return } for i := range records { err = id.DecodeString(records[i]) if err == nil { return } } err = errNotFound return }