diff options
Diffstat (limited to 'exports')
| -rw-r--r-- | exports/server.h | 3 | ||||
| -rw-r--r-- | exports/servers.go | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/exports/server.h b/exports/server.h index 4bc8a16..f2af70b 100644 --- a/exports/server.h +++ b/exports/server.h @@ -5,8 +5,9 @@ typedef struct serverProfile { const char* id; const char* display_name; - //const char* proto_list; int default_gateway; + const char** dns_search_domains; + size_t total_dns_search_domains; } serverProfile; // The struct for all server profiles diff --git a/exports/servers.go b/exports/servers.go index 73b8b6c..d96d73e 100644 --- a/exports/servers.go +++ b/exports/servers.go @@ -27,6 +27,9 @@ func getCPtrProfile(profile *server.Profile) *C.serverProfile { } else { cProfile.default_gateway = C.int(0) } + cProfile.total_dns_search_domains, cProfile.dns_search_domains = getCPtrListStrings( + profile.DNSSearchDomains, + ) return cProfile } @@ -71,6 +74,7 @@ func FreeProfiles(profiles *C.serverProfiles) { for i := C.size_t(0); i < profiles.total_profiles; i++ { C.free(unsafe.Pointer(profilesSlice[i].id)) C.free(unsafe.Pointer(profilesSlice[i].display_name)) + freeCListStrings(profilesSlice[i].dns_search_domains, profilesSlice[i].total_dns_search_domains) C.free(unsafe.Pointer(profilesSlice[i])) } // Free the inner profiles struct |
