diff --git a/dnsexit_manager.go b/dnsexit_manager.go index b48d0e4..beabb98 100644 --- a/dnsexit_manager.go +++ b/dnsexit_manager.go @@ -34,6 +34,17 @@ type dnsexitDTO struct { Delete *dns.Record `json:"delete,omitempty"` } +func convertInterfaceSliceToStruct(slice []interface{}) *[]dns.Domain { + var domains []dns.Domain + + for _, domain := range slice { + fmt.Println(domain) + } + + return &domains +} + + func (c *client) AddRecord(rec *dns.Record) (error, *dns.Response) { c.Locker.Lock() defer c.Locker.Unlock() @@ -169,7 +180,7 @@ func (c *client) GetRecords() (error, []*dns.Record) { select { case records, ok := <-result_chan: if !ok { - return nil, subdomains.List() + return nil, convertInterfaceSliceToStruct(subdomains.List()) } for record := range records { diff --git a/set.go b/set.go index 879527a..26882a7 100644 --- a/set.go +++ b/set.go @@ -23,7 +23,7 @@ func (set *Set) Delete(value interface{}) { delete(set.elements, value) } -func (set *Set) List() []interface{} { +func (set *Set) List() []interface { keys := make([]interface{}, 0, len(set.elements)) for key := range set.elements { keys = append(keys, key)