aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tunnel/winipcfg/types.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tunnel/winipcfg/types.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/tunnel/winipcfg/types.go b/tunnel/winipcfg/types.go
index d60a149d..02f7f788 100644
--- a/tunnel/winipcfg/types.go
+++ b/tunnel/winipcfg/types.go
@@ -940,6 +940,43 @@ func (tab *mibIPforwardTable2) free() {
freeMibTable(unsafe.Pointer(tab))
}
+//
+// Undocumented DNS API
+//
+
+// dnsInterfaceSettings is mean to be used with setInterfaceDnsSettings
+type dnsInterfaceSettings struct {
+ Version uint32
+ _ [4]byte
+ Flags uint64
+ Domain *uint16
+ NameServer *uint16
+ SearchList *uint16
+ RegistrationEnabled uint32
+ RegisterAdapterName uint32
+ EnableLLMNR uint32
+ QueryAdapterName uint32
+ ProfileNameServer *uint16
+}
+
+const (
+ disVersion1 = 1
+ disVersion2 = 2
+
+ disFlagsIPv6 = 0x1
+ disFlagsNameServer = 0x2
+ disFlagsSearchList = 0x4
+ disFlagsRegistrationEnabled = 0x8
+ disFlagsRegisterAdapterName = 0x10
+ disFlagsDomain = 0x20
+ disFlagsHostname = 0x40 // ??
+ disFlagsEnableLLMNR = 0x80
+ disFlagsQueryAdapterName = 0x100
+ disFlagsProfileNameServer = 0x200
+ disFlagsVersion2 = 0x400 // ?? - v2 only
+ disFlagsMoreFlags = 0x800 // ?? - v2 only
+)
+
// unsafeSlice updates the slice slicePtr to be a slice
// referencing the provided data with its length & capacity set to
// lenCap.