1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)] 2 #[link(name = "windows")] 3 extern "system" { DnsAcquireContextHandle_A(credentialflags: u32, credentials: *const ::core::ffi::c_void, pcontext: *mut DnsContextHandle) -> i324 pub fn DnsAcquireContextHandle_A(credentialflags: u32, credentials: *const ::core::ffi::c_void, pcontext: *mut DnsContextHandle) -> i32; DnsAcquireContextHandle_W(credentialflags: u32, credentials: *const ::core::ffi::c_void, pcontext: *mut DnsContextHandle) -> i325 pub fn DnsAcquireContextHandle_W(credentialflags: u32, credentials: *const ::core::ffi::c_void, pcontext: *mut DnsContextHandle) -> i32; 6 #[cfg(feature = "Win32_Foundation")] DnsCancelQuery(pcancelhandle: *const DNS_QUERY_CANCEL) -> i327 pub fn DnsCancelQuery(pcancelhandle: *const DNS_QUERY_CANCEL) -> i32; DnsConnectionDeletePolicyEntries(policyentrytag: DNS_CONNECTION_POLICY_TAG) -> u328 pub fn DnsConnectionDeletePolicyEntries(policyentrytag: DNS_CONNECTION_POLICY_TAG) -> u32; 9 #[cfg(feature = "Win32_Foundation")] DnsConnectionDeleteProxyInfo(pwszconnectionname: super::super::Foundation::PWSTR, r#type: DNS_CONNECTION_PROXY_TYPE) -> u3210 pub fn DnsConnectionDeleteProxyInfo(pwszconnectionname: super::super::Foundation::PWSTR, r#type: DNS_CONNECTION_PROXY_TYPE) -> u32; DnsConnectionFreeNameList(pnamelist: *mut DNS_CONNECTION_NAME_LIST)11 pub fn DnsConnectionFreeNameList(pnamelist: *mut DNS_CONNECTION_NAME_LIST); 12 #[cfg(feature = "Win32_Foundation")] DnsConnectionFreeProxyInfo(pproxyinfo: *mut DNS_CONNECTION_PROXY_INFO)13 pub fn DnsConnectionFreeProxyInfo(pproxyinfo: *mut DNS_CONNECTION_PROXY_INFO); 14 #[cfg(feature = "Win32_Foundation")] DnsConnectionFreeProxyInfoEx(pproxyinfoex: *mut DNS_CONNECTION_PROXY_INFO_EX)15 pub fn DnsConnectionFreeProxyInfoEx(pproxyinfoex: *mut DNS_CONNECTION_PROXY_INFO_EX); 16 #[cfg(feature = "Win32_Foundation")] DnsConnectionFreeProxyList(pproxylist: *mut DNS_CONNECTION_PROXY_LIST)17 pub fn DnsConnectionFreeProxyList(pproxylist: *mut DNS_CONNECTION_PROXY_LIST); DnsConnectionGetNameList(pnamelist: *mut DNS_CONNECTION_NAME_LIST) -> u3218 pub fn DnsConnectionGetNameList(pnamelist: *mut DNS_CONNECTION_NAME_LIST) -> u32; 19 #[cfg(feature = "Win32_Foundation")] DnsConnectionGetProxyInfo(pwszconnectionname: super::super::Foundation::PWSTR, r#type: DNS_CONNECTION_PROXY_TYPE, pproxyinfo: *mut DNS_CONNECTION_PROXY_INFO) -> u3220 pub fn DnsConnectionGetProxyInfo(pwszconnectionname: super::super::Foundation::PWSTR, r#type: DNS_CONNECTION_PROXY_TYPE, pproxyinfo: *mut DNS_CONNECTION_PROXY_INFO) -> u32; 21 #[cfg(feature = "Win32_Foundation")] DnsConnectionGetProxyInfoForHostUrl(pwszhosturl: super::super::Foundation::PWSTR, pselectioncontext: *const u8, dwselectioncontextlength: u32, dwexplicitinterfaceindex: u32, pproxyinfoex: *mut DNS_CONNECTION_PROXY_INFO_EX) -> u3222 pub fn DnsConnectionGetProxyInfoForHostUrl(pwszhosturl: super::super::Foundation::PWSTR, pselectioncontext: *const u8, dwselectioncontextlength: u32, dwexplicitinterfaceindex: u32, pproxyinfoex: *mut DNS_CONNECTION_PROXY_INFO_EX) -> u32; 23 #[cfg(feature = "Win32_Foundation")] DnsConnectionGetProxyList(pwszconnectionname: super::super::Foundation::PWSTR, pproxylist: *mut DNS_CONNECTION_PROXY_LIST) -> u3224 pub fn DnsConnectionGetProxyList(pwszconnectionname: super::super::Foundation::PWSTR, pproxylist: *mut DNS_CONNECTION_PROXY_LIST) -> u32; 25 #[cfg(feature = "Win32_Foundation")] DnsConnectionSetPolicyEntries(policyentrytag: DNS_CONNECTION_POLICY_TAG, ppolicyentrylist: *const DNS_CONNECTION_POLICY_ENTRY_LIST) -> u3226 pub fn DnsConnectionSetPolicyEntries(policyentrytag: DNS_CONNECTION_POLICY_TAG, ppolicyentrylist: *const DNS_CONNECTION_POLICY_ENTRY_LIST) -> u32; 27 #[cfg(feature = "Win32_Foundation")] DnsConnectionSetProxyInfo(pwszconnectionname: super::super::Foundation::PWSTR, r#type: DNS_CONNECTION_PROXY_TYPE, pproxyinfo: *const DNS_CONNECTION_PROXY_INFO) -> u3228 pub fn DnsConnectionSetProxyInfo(pwszconnectionname: super::super::Foundation::PWSTR, r#type: DNS_CONNECTION_PROXY_TYPE, pproxyinfo: *const DNS_CONNECTION_PROXY_INFO) -> u32; 29 #[cfg(feature = "Win32_Foundation")] DnsConnectionUpdateIfIndexTable(pconnectionifindexentries: *const DNS_CONNECTION_IFINDEX_LIST) -> u3230 pub fn DnsConnectionUpdateIfIndexTable(pconnectionifindexentries: *const DNS_CONNECTION_IFINDEX_LIST) -> u32; 31 #[cfg(feature = "Win32_Foundation")] DnsExtractRecordsFromMessage_UTF8(pdnsbuffer: *const DNS_MESSAGE_BUFFER, wmessagelength: u16, pprecord: *mut *mut DNS_RECORDA) -> i3232 pub fn DnsExtractRecordsFromMessage_UTF8(pdnsbuffer: *const DNS_MESSAGE_BUFFER, wmessagelength: u16, pprecord: *mut *mut DNS_RECORDA) -> i32; 33 #[cfg(feature = "Win32_Foundation")] DnsExtractRecordsFromMessage_W(pdnsbuffer: *const DNS_MESSAGE_BUFFER, wmessagelength: u16, pprecord: *mut *mut DNS_RECORDA) -> i3234 pub fn DnsExtractRecordsFromMessage_W(pdnsbuffer: *const DNS_MESSAGE_BUFFER, wmessagelength: u16, pprecord: *mut *mut DNS_RECORDA) -> i32; DnsFree(pdata: *const ::core::ffi::c_void, freetype: DNS_FREE_TYPE)35 pub fn DnsFree(pdata: *const ::core::ffi::c_void, freetype: DNS_FREE_TYPE); 36 #[cfg(feature = "Win32_Foundation")] DnsFreeCustomServers(pcservers: *mut u32, ppservers: *mut *mut DNS_CUSTOM_SERVER)37 pub fn DnsFreeCustomServers(pcservers: *mut u32, ppservers: *mut *mut DNS_CUSTOM_SERVER); 38 #[cfg(feature = "Win32_Foundation")] DnsFreeProxyName(proxyname: super::super::Foundation::PWSTR)39 pub fn DnsFreeProxyName(proxyname: super::super::Foundation::PWSTR); 40 #[cfg(feature = "Win32_Foundation")] DnsGetApplicationSettings(pcservers: *mut u32, ppdefaultservers: *mut *mut DNS_CUSTOM_SERVER, psettings: *mut DNS_APPLICATION_SETTINGS) -> u3241 pub fn DnsGetApplicationSettings(pcservers: *mut u32, ppdefaultservers: *mut *mut DNS_CUSTOM_SERVER, psettings: *mut DNS_APPLICATION_SETTINGS) -> u32; 42 #[cfg(feature = "Win32_Foundation")] DnsGetProxyInformation(hostname: super::super::Foundation::PWSTR, proxyinformation: *mut DNS_PROXY_INFORMATION, defaultproxyinformation: *mut DNS_PROXY_INFORMATION, completionroutine: ::core::option::Option<DNS_PROXY_COMPLETION_ROUTINE>, completioncontext: *const ::core::ffi::c_void) -> u3243 pub fn DnsGetProxyInformation(hostname: super::super::Foundation::PWSTR, proxyinformation: *mut DNS_PROXY_INFORMATION, defaultproxyinformation: *mut DNS_PROXY_INFORMATION, completionroutine: ::core::option::Option<DNS_PROXY_COMPLETION_ROUTINE>, completioncontext: *const ::core::ffi::c_void) -> u32; 44 #[cfg(feature = "Win32_Foundation")] DnsModifyRecordsInSet_A(paddrecords: *const DNS_RECORDA, pdeleterecords: *const DNS_RECORDA, options: u32, hcredentials: super::super::Foundation::HANDLE, pextralist: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i3245 pub fn DnsModifyRecordsInSet_A(paddrecords: *const DNS_RECORDA, pdeleterecords: *const DNS_RECORDA, options: u32, hcredentials: super::super::Foundation::HANDLE, pextralist: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i32; 46 #[cfg(feature = "Win32_Foundation")] DnsModifyRecordsInSet_UTF8(paddrecords: *const DNS_RECORDA, pdeleterecords: *const DNS_RECORDA, options: u32, hcredentials: super::super::Foundation::HANDLE, pextralist: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i3247 pub fn DnsModifyRecordsInSet_UTF8(paddrecords: *const DNS_RECORDA, pdeleterecords: *const DNS_RECORDA, options: u32, hcredentials: super::super::Foundation::HANDLE, pextralist: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i32; 48 #[cfg(feature = "Win32_Foundation")] DnsModifyRecordsInSet_W(paddrecords: *const DNS_RECORDA, pdeleterecords: *const DNS_RECORDA, options: u32, hcredentials: super::super::Foundation::HANDLE, pextralist: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i3249 pub fn DnsModifyRecordsInSet_W(paddrecords: *const DNS_RECORDA, pdeleterecords: *const DNS_RECORDA, options: u32, hcredentials: super::super::Foundation::HANDLE, pextralist: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i32; 50 #[cfg(feature = "Win32_Foundation")] DnsNameCompare_A(pname1: super::super::Foundation::PSTR, pname2: super::super::Foundation::PSTR) -> super::super::Foundation::BOOL51 pub fn DnsNameCompare_A(pname1: super::super::Foundation::PSTR, pname2: super::super::Foundation::PSTR) -> super::super::Foundation::BOOL; 52 #[cfg(feature = "Win32_Foundation")] DnsNameCompare_W(pname1: super::super::Foundation::PWSTR, pname2: super::super::Foundation::PWSTR) -> super::super::Foundation::BOOL53 pub fn DnsNameCompare_W(pname1: super::super::Foundation::PWSTR, pname2: super::super::Foundation::PWSTR) -> super::super::Foundation::BOOL; 54 #[cfg(feature = "Win32_Foundation")] DnsQueryConfig(config: DNS_CONFIG_TYPE, flag: u32, pwsadaptername: super::super::Foundation::PWSTR, preserved: *const ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void, pbuflen: *mut u32) -> i3255 pub fn DnsQueryConfig(config: DNS_CONFIG_TYPE, flag: u32, pwsadaptername: super::super::Foundation::PWSTR, preserved: *const ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void, pbuflen: *mut u32) -> i32; 56 #[cfg(feature = "Win32_Foundation")] DnsQueryEx(pqueryrequest: *const DNS_QUERY_REQUEST, pqueryresults: *mut DNS_QUERY_RESULT, pcancelhandle: *mut DNS_QUERY_CANCEL) -> i3257 pub fn DnsQueryEx(pqueryrequest: *const DNS_QUERY_REQUEST, pqueryresults: *mut DNS_QUERY_RESULT, pcancelhandle: *mut DNS_QUERY_CANCEL) -> i32; 58 #[cfg(feature = "Win32_Foundation")] DnsQuery_A(pszname: super::super::Foundation::PSTR, wtype: u16, options: u32, pextra: *mut ::core::ffi::c_void, ppqueryresults: *mut *mut DNS_RECORDA, preserved: *mut *mut ::core::ffi::c_void) -> i3259 pub fn DnsQuery_A(pszname: super::super::Foundation::PSTR, wtype: u16, options: u32, pextra: *mut ::core::ffi::c_void, ppqueryresults: *mut *mut DNS_RECORDA, preserved: *mut *mut ::core::ffi::c_void) -> i32; 60 #[cfg(feature = "Win32_Foundation")] DnsQuery_UTF8(pszname: super::super::Foundation::PSTR, wtype: u16, options: u32, pextra: *mut ::core::ffi::c_void, ppqueryresults: *mut *mut DNS_RECORDA, preserved: *mut *mut ::core::ffi::c_void) -> i3261 pub fn DnsQuery_UTF8(pszname: super::super::Foundation::PSTR, wtype: u16, options: u32, pextra: *mut ::core::ffi::c_void, ppqueryresults: *mut *mut DNS_RECORDA, preserved: *mut *mut ::core::ffi::c_void) -> i32; 62 #[cfg(feature = "Win32_Foundation")] DnsQuery_W(pszname: super::super::Foundation::PWSTR, wtype: u16, options: u32, pextra: *mut ::core::ffi::c_void, ppqueryresults: *mut *mut DNS_RECORDA, preserved: *mut *mut ::core::ffi::c_void) -> i3263 pub fn DnsQuery_W(pszname: super::super::Foundation::PWSTR, wtype: u16, options: u32, pextra: *mut ::core::ffi::c_void, ppqueryresults: *mut *mut DNS_RECORDA, preserved: *mut *mut ::core::ffi::c_void) -> i32; 64 #[cfg(feature = "Win32_Foundation")] DnsRecordCompare(precord1: *const DNS_RECORDA, precord2: *const DNS_RECORDA) -> super::super::Foundation::BOOL65 pub fn DnsRecordCompare(precord1: *const DNS_RECORDA, precord2: *const DNS_RECORDA) -> super::super::Foundation::BOOL; 66 #[cfg(feature = "Win32_Foundation")] DnsRecordCopyEx(precord: *const DNS_RECORDA, charsetin: DNS_CHARSET, charsetout: DNS_CHARSET) -> *mut DNS_RECORDA67 pub fn DnsRecordCopyEx(precord: *const DNS_RECORDA, charsetin: DNS_CHARSET, charsetout: DNS_CHARSET) -> *mut DNS_RECORDA; 68 #[cfg(feature = "Win32_Foundation")] DnsRecordSetCompare(prr1: *mut DNS_RECORDA, prr2: *mut DNS_RECORDA, ppdiff1: *mut *mut DNS_RECORDA, ppdiff2: *mut *mut DNS_RECORDA) -> super::super::Foundation::BOOL69 pub fn DnsRecordSetCompare(prr1: *mut DNS_RECORDA, prr2: *mut DNS_RECORDA, ppdiff1: *mut *mut DNS_RECORDA, ppdiff2: *mut *mut DNS_RECORDA) -> super::super::Foundation::BOOL; 70 #[cfg(feature = "Win32_Foundation")] DnsRecordSetCopyEx(precordset: *const DNS_RECORDA, charsetin: DNS_CHARSET, charsetout: DNS_CHARSET) -> *mut DNS_RECORDA71 pub fn DnsRecordSetCopyEx(precordset: *const DNS_RECORDA, charsetin: DNS_CHARSET, charsetout: DNS_CHARSET) -> *mut DNS_RECORDA; 72 #[cfg(feature = "Win32_Foundation")] DnsRecordSetDetach(precordlist: *mut DNS_RECORDA) -> *mut DNS_RECORDA73 pub fn DnsRecordSetDetach(precordlist: *mut DNS_RECORDA) -> *mut DNS_RECORDA; 74 #[cfg(feature = "Win32_Foundation")] DnsReleaseContextHandle(hcontext: super::super::Foundation::HANDLE)75 pub fn DnsReleaseContextHandle(hcontext: super::super::Foundation::HANDLE); 76 #[cfg(feature = "Win32_Foundation")] DnsReplaceRecordSetA(preplaceset: *const DNS_RECORDA, options: u32, hcontext: super::super::Foundation::HANDLE, pextrainfo: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i3277 pub fn DnsReplaceRecordSetA(preplaceset: *const DNS_RECORDA, options: u32, hcontext: super::super::Foundation::HANDLE, pextrainfo: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i32; 78 #[cfg(feature = "Win32_Foundation")] DnsReplaceRecordSetUTF8(preplaceset: *const DNS_RECORDA, options: u32, hcontext: super::super::Foundation::HANDLE, pextrainfo: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i3279 pub fn DnsReplaceRecordSetUTF8(preplaceset: *const DNS_RECORDA, options: u32, hcontext: super::super::Foundation::HANDLE, pextrainfo: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i32; 80 #[cfg(feature = "Win32_Foundation")] DnsReplaceRecordSetW(preplaceset: *const DNS_RECORDA, options: u32, hcontext: super::super::Foundation::HANDLE, pextrainfo: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i3281 pub fn DnsReplaceRecordSetW(preplaceset: *const DNS_RECORDA, options: u32, hcontext: super::super::Foundation::HANDLE, pextrainfo: *mut ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> i32; 82 #[cfg(feature = "Win32_Foundation")] DnsServiceBrowse(prequest: *const DNS_SERVICE_BROWSE_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> i3283 pub fn DnsServiceBrowse(prequest: *const DNS_SERVICE_BROWSE_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> i32; DnsServiceBrowseCancel(pcancelhandle: *const DNS_SERVICE_CANCEL) -> i3284 pub fn DnsServiceBrowseCancel(pcancelhandle: *const DNS_SERVICE_CANCEL) -> i32; 85 #[cfg(feature = "Win32_Foundation")] DnsServiceConstructInstance(pservicename: super::super::Foundation::PWSTR, phostname: super::super::Foundation::PWSTR, pip4: *const u32, pip6: *const IP6_ADDRESS, wport: u16, wpriority: u16, wweight: u16, dwpropertiescount: u32, keys: *const super::super::Foundation::PWSTR, values: *const super::super::Foundation::PWSTR) -> *mut DNS_SERVICE_INSTANCE86 pub fn DnsServiceConstructInstance(pservicename: super::super::Foundation::PWSTR, phostname: super::super::Foundation::PWSTR, pip4: *const u32, pip6: *const IP6_ADDRESS, wport: u16, wpriority: u16, wweight: u16, dwpropertiescount: u32, keys: *const super::super::Foundation::PWSTR, values: *const super::super::Foundation::PWSTR) -> *mut DNS_SERVICE_INSTANCE; 87 #[cfg(feature = "Win32_Foundation")] DnsServiceCopyInstance(porig: *const DNS_SERVICE_INSTANCE) -> *mut DNS_SERVICE_INSTANCE88 pub fn DnsServiceCopyInstance(porig: *const DNS_SERVICE_INSTANCE) -> *mut DNS_SERVICE_INSTANCE; 89 #[cfg(feature = "Win32_Foundation")] DnsServiceDeRegister(prequest: *const DNS_SERVICE_REGISTER_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> u3290 pub fn DnsServiceDeRegister(prequest: *const DNS_SERVICE_REGISTER_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> u32; 91 #[cfg(feature = "Win32_Foundation")] DnsServiceFreeInstance(pinstance: *const DNS_SERVICE_INSTANCE)92 pub fn DnsServiceFreeInstance(pinstance: *const DNS_SERVICE_INSTANCE); 93 #[cfg(feature = "Win32_Foundation")] DnsServiceRegister(prequest: *const DNS_SERVICE_REGISTER_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> u3294 pub fn DnsServiceRegister(prequest: *const DNS_SERVICE_REGISTER_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> u32; DnsServiceRegisterCancel(pcancelhandle: *const DNS_SERVICE_CANCEL) -> u3295 pub fn DnsServiceRegisterCancel(pcancelhandle: *const DNS_SERVICE_CANCEL) -> u32; 96 #[cfg(feature = "Win32_Foundation")] DnsServiceResolve(prequest: *const DNS_SERVICE_RESOLVE_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> i3297 pub fn DnsServiceResolve(prequest: *const DNS_SERVICE_RESOLVE_REQUEST, pcancel: *mut DNS_SERVICE_CANCEL) -> i32; DnsServiceResolveCancel(pcancelhandle: *const DNS_SERVICE_CANCEL) -> i3298 pub fn DnsServiceResolveCancel(pcancelhandle: *const DNS_SERVICE_CANCEL) -> i32; 99 #[cfg(feature = "Win32_Foundation")] DnsSetApplicationSettings(cservers: u32, pservers: *const DNS_CUSTOM_SERVER, psettings: *const DNS_APPLICATION_SETTINGS) -> u32100 pub fn DnsSetApplicationSettings(cservers: u32, pservers: *const DNS_CUSTOM_SERVER, psettings: *const DNS_APPLICATION_SETTINGS) -> u32; 101 #[cfg(feature = "Win32_Foundation")] DnsStartMulticastQuery(pqueryrequest: *const MDNS_QUERY_REQUEST, phandle: *mut MDNS_QUERY_HANDLE) -> i32102 pub fn DnsStartMulticastQuery(pqueryrequest: *const MDNS_QUERY_REQUEST, phandle: *mut MDNS_QUERY_HANDLE) -> i32; DnsStopMulticastQuery(phandle: *mut MDNS_QUERY_HANDLE) -> i32103 pub fn DnsStopMulticastQuery(phandle: *mut MDNS_QUERY_HANDLE) -> i32; 104 #[cfg(feature = "Win32_Foundation")] DnsValidateName_A(pszname: super::super::Foundation::PSTR, format: DNS_NAME_FORMAT) -> i32105 pub fn DnsValidateName_A(pszname: super::super::Foundation::PSTR, format: DNS_NAME_FORMAT) -> i32; 106 #[cfg(feature = "Win32_Foundation")] DnsValidateName_UTF8(pszname: super::super::Foundation::PSTR, format: DNS_NAME_FORMAT) -> i32107 pub fn DnsValidateName_UTF8(pszname: super::super::Foundation::PSTR, format: DNS_NAME_FORMAT) -> i32; 108 #[cfg(feature = "Win32_Foundation")] DnsValidateName_W(pszname: super::super::Foundation::PWSTR, format: DNS_NAME_FORMAT) -> i32109 pub fn DnsValidateName_W(pszname: super::super::Foundation::PWSTR, format: DNS_NAME_FORMAT) -> i32; 110 #[cfg(feature = "Win32_Foundation")] DnsWriteQuestionToBuffer_UTF8(pdnsbuffer: *mut DNS_MESSAGE_BUFFER, pdwbuffersize: *mut u32, pszname: super::super::Foundation::PSTR, wtype: u16, xid: u16, frecursiondesired: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL111 pub fn DnsWriteQuestionToBuffer_UTF8(pdnsbuffer: *mut DNS_MESSAGE_BUFFER, pdwbuffersize: *mut u32, pszname: super::super::Foundation::PSTR, wtype: u16, xid: u16, frecursiondesired: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; 112 #[cfg(feature = "Win32_Foundation")] DnsWriteQuestionToBuffer_W(pdnsbuffer: *mut DNS_MESSAGE_BUFFER, pdwbuffersize: *mut u32, pszname: super::super::Foundation::PWSTR, wtype: u16, xid: u16, frecursiondesired: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL113 pub fn DnsWriteQuestionToBuffer_W(pdnsbuffer: *mut DNS_MESSAGE_BUFFER, pdwbuffersize: *mut u32, pszname: super::super::Foundation::PWSTR, wtype: u16, xid: u16, frecursiondesired: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; 114 } 115 pub const DNSREC_ADDITIONAL: u32 = 3u32; 116 pub const DNSREC_ANSWER: u32 = 1u32; 117 pub const DNSREC_AUTHORITY: u32 = 2u32; 118 pub const DNSREC_DELETE: u32 = 4u32; 119 pub const DNSREC_NOEXIST: u32 = 4u32; 120 pub const DNSREC_PREREQ: u32 = 1u32; 121 pub const DNSREC_QUESTION: u32 = 0u32; 122 pub const DNSREC_SECTION: u32 = 3u32; 123 pub const DNSREC_UPDATE: u32 = 2u32; 124 pub const DNSREC_ZONE: u32 = 0u32; 125 pub const DNSSEC_ALGORITHM_ECDSAP256_SHA256: u32 = 13u32; 126 pub const DNSSEC_ALGORITHM_ECDSAP384_SHA384: u32 = 14u32; 127 pub const DNSSEC_ALGORITHM_NULL: u32 = 253u32; 128 pub const DNSSEC_ALGORITHM_PRIVATE: u32 = 254u32; 129 pub const DNSSEC_ALGORITHM_RSAMD5: u32 = 1u32; 130 pub const DNSSEC_ALGORITHM_RSASHA1: u32 = 5u32; 131 pub const DNSSEC_ALGORITHM_RSASHA1_NSEC3: u32 = 7u32; 132 pub const DNSSEC_ALGORITHM_RSASHA256: u32 = 8u32; 133 pub const DNSSEC_ALGORITHM_RSASHA512: u32 = 10u32; 134 pub const DNSSEC_DIGEST_ALGORITHM_SHA1: u32 = 1u32; 135 pub const DNSSEC_DIGEST_ALGORITHM_SHA256: u32 = 2u32; 136 pub const DNSSEC_DIGEST_ALGORITHM_SHA384: u32 = 4u32; 137 pub const DNSSEC_KEY_FLAG_EXTEND: u32 = 8u32; 138 pub const DNSSEC_KEY_FLAG_FLAG10: u32 = 1024u32; 139 pub const DNSSEC_KEY_FLAG_FLAG11: u32 = 2048u32; 140 pub const DNSSEC_KEY_FLAG_FLAG2: u32 = 4u32; 141 pub const DNSSEC_KEY_FLAG_FLAG4: u32 = 16u32; 142 pub const DNSSEC_KEY_FLAG_FLAG5: u32 = 32u32; 143 pub const DNSSEC_KEY_FLAG_FLAG8: u32 = 256u32; 144 pub const DNSSEC_KEY_FLAG_FLAG9: u32 = 512u32; 145 pub const DNSSEC_KEY_FLAG_HOST: u32 = 128u32; 146 pub const DNSSEC_KEY_FLAG_NOAUTH: u32 = 1u32; 147 pub const DNSSEC_KEY_FLAG_NOCONF: u32 = 2u32; 148 pub const DNSSEC_KEY_FLAG_NTPE3: u32 = 192u32; 149 pub const DNSSEC_KEY_FLAG_SIG0: u32 = 0u32; 150 pub const DNSSEC_KEY_FLAG_SIG1: u32 = 4096u32; 151 pub const DNSSEC_KEY_FLAG_SIG10: u32 = 40960u32; 152 pub const DNSSEC_KEY_FLAG_SIG11: u32 = 45056u32; 153 pub const DNSSEC_KEY_FLAG_SIG12: u32 = 49152u32; 154 pub const DNSSEC_KEY_FLAG_SIG13: u32 = 53248u32; 155 pub const DNSSEC_KEY_FLAG_SIG14: u32 = 57344u32; 156 pub const DNSSEC_KEY_FLAG_SIG15: u32 = 61440u32; 157 pub const DNSSEC_KEY_FLAG_SIG2: u32 = 8192u32; 158 pub const DNSSEC_KEY_FLAG_SIG3: u32 = 12288u32; 159 pub const DNSSEC_KEY_FLAG_SIG4: u32 = 16384u32; 160 pub const DNSSEC_KEY_FLAG_SIG5: u32 = 20480u32; 161 pub const DNSSEC_KEY_FLAG_SIG6: u32 = 24576u32; 162 pub const DNSSEC_KEY_FLAG_SIG7: u32 = 28672u32; 163 pub const DNSSEC_KEY_FLAG_SIG8: u32 = 32768u32; 164 pub const DNSSEC_KEY_FLAG_SIG9: u32 = 36864u32; 165 pub const DNSSEC_KEY_FLAG_USER: u32 = 0u32; 166 pub const DNSSEC_KEY_FLAG_ZONE: u32 = 64u32; 167 pub const DNSSEC_PROTOCOL_DNSSEC: u32 = 3u32; 168 pub const DNSSEC_PROTOCOL_EMAIL: u32 = 2u32; 169 pub const DNSSEC_PROTOCOL_IPSEC: u32 = 4u32; 170 pub const DNSSEC_PROTOCOL_NONE: u32 = 0u32; 171 pub const DNSSEC_PROTOCOL_TLS: u32 = 1u32; 172 #[repr(C)] 173 pub struct DNS_AAAA_DATA { 174 pub Ip6Address: IP6_ADDRESS, 175 } 176 impl ::core::marker::Copy for DNS_AAAA_DATA {} 177 impl ::core::clone::Clone for DNS_AAAA_DATA { clone(&self) -> Self178 fn clone(&self) -> Self { 179 *self 180 } 181 } 182 #[repr(C)] 183 #[cfg(feature = "Win32_Foundation")] 184 pub struct DNS_ADDR { 185 pub MaxSa: [super::super::Foundation::CHAR; 32], 186 pub Data: DNS_ADDR_0, 187 } 188 #[cfg(feature = "Win32_Foundation")] 189 impl ::core::marker::Copy for DNS_ADDR {} 190 #[cfg(feature = "Win32_Foundation")] 191 impl ::core::clone::Clone for DNS_ADDR { clone(&self) -> Self192 fn clone(&self) -> Self { 193 *self 194 } 195 } 196 #[repr(C, packed(1))] 197 #[cfg(feature = "Win32_Foundation")] 198 pub union DNS_ADDR_0 { 199 pub DnsAddrUserDword: [u32; 8], 200 } 201 #[cfg(feature = "Win32_Foundation")] 202 impl ::core::marker::Copy for DNS_ADDR_0 {} 203 #[cfg(feature = "Win32_Foundation")] 204 impl ::core::clone::Clone for DNS_ADDR_0 { clone(&self) -> Self205 fn clone(&self) -> Self { 206 *self 207 } 208 } 209 pub const DNS_ADDRESS_STRING_LENGTH: u32 = 65u32; 210 #[repr(C, packed(1))] 211 #[cfg(feature = "Win32_Foundation")] 212 pub struct DNS_ADDR_ARRAY { 213 pub MaxCount: u32, 214 pub AddrCount: u32, 215 pub Tag: u32, 216 pub Family: u16, 217 pub WordReserved: u16, 218 pub Flags: u32, 219 pub MatchFlag: u32, 220 pub Reserved1: u32, 221 pub Reserved2: u32, 222 pub AddrArray: [DNS_ADDR; 1], 223 } 224 #[cfg(feature = "Win32_Foundation")] 225 impl ::core::marker::Copy for DNS_ADDR_ARRAY {} 226 #[cfg(feature = "Win32_Foundation")] 227 impl ::core::clone::Clone for DNS_ADDR_ARRAY { clone(&self) -> Self228 fn clone(&self) -> Self { 229 *self 230 } 231 } 232 pub const DNS_ADDR_MAX_SOCKADDR_LENGTH: u32 = 32u32; 233 #[repr(C)] 234 pub struct DNS_APPLICATION_SETTINGS { 235 pub Version: u32, 236 pub Flags: u64, 237 } 238 impl ::core::marker::Copy for DNS_APPLICATION_SETTINGS {} 239 impl ::core::clone::Clone for DNS_APPLICATION_SETTINGS { clone(&self) -> Self240 fn clone(&self) -> Self { 241 *self 242 } 243 } 244 pub const DNS_APP_SETTINGS_EXCLUSIVE_SERVERS: u32 = 1u32; 245 pub const DNS_APP_SETTINGS_VERSION1: u32 = 1u32; 246 pub const DNS_ATMA_AESA_ADDR_LENGTH: u32 = 20u32; 247 #[repr(C)] 248 pub struct DNS_ATMA_DATA { 249 pub AddressType: u8, 250 pub Address: [u8; 20], 251 } 252 impl ::core::marker::Copy for DNS_ATMA_DATA {} 253 impl ::core::clone::Clone for DNS_ATMA_DATA { clone(&self) -> Self254 fn clone(&self) -> Self { 255 *self 256 } 257 } 258 pub const DNS_ATMA_FORMAT_AESA: u32 = 2u32; 259 pub const DNS_ATMA_FORMAT_E164: u32 = 1u32; 260 pub const DNS_ATMA_MAX_ADDR_LENGTH: u32 = 20u32; 261 pub const DNS_ATMA_MAX_RECORD_LENGTH: u32 = 21u32; 262 #[repr(C)] 263 pub struct DNS_A_DATA { 264 pub IpAddress: u32, 265 } 266 impl ::core::marker::Copy for DNS_A_DATA {} 267 impl ::core::clone::Clone for DNS_A_DATA { clone(&self) -> Self268 fn clone(&self) -> Self { 269 *self 270 } 271 } 272 pub type DNS_CHARSET = i32; 273 pub const DnsCharSetUnknown: DNS_CHARSET = 0i32; 274 pub const DnsCharSetUnicode: DNS_CHARSET = 1i32; 275 pub const DnsCharSetUtf8: DNS_CHARSET = 2i32; 276 pub const DnsCharSetAnsi: DNS_CHARSET = 3i32; 277 pub const DNS_CLASS_ALL: u32 = 255u32; 278 pub const DNS_CLASS_ANY: u32 = 255u32; 279 pub const DNS_CLASS_CHAOS: u32 = 3u32; 280 pub const DNS_CLASS_CSNET: u32 = 2u32; 281 pub const DNS_CLASS_HESIOD: u32 = 4u32; 282 pub const DNS_CLASS_INTERNET: u32 = 1u32; 283 pub const DNS_CLASS_NONE: u32 = 254u32; 284 pub const DNS_CLASS_UNICAST_RESPONSE: u32 = 32768u32; 285 pub const DNS_COMPRESSED_QUESTION_NAME: u32 = 49164u32; 286 pub const DNS_CONFIG_FLAG_ALLOC: u32 = 1u32; 287 pub type DNS_CONFIG_TYPE = i32; 288 pub const DnsConfigPrimaryDomainName_W: DNS_CONFIG_TYPE = 0i32; 289 pub const DnsConfigPrimaryDomainName_A: DNS_CONFIG_TYPE = 1i32; 290 pub const DnsConfigPrimaryDomainName_UTF8: DNS_CONFIG_TYPE = 2i32; 291 pub const DnsConfigAdapterDomainName_W: DNS_CONFIG_TYPE = 3i32; 292 pub const DnsConfigAdapterDomainName_A: DNS_CONFIG_TYPE = 4i32; 293 pub const DnsConfigAdapterDomainName_UTF8: DNS_CONFIG_TYPE = 5i32; 294 pub const DnsConfigDnsServerList: DNS_CONFIG_TYPE = 6i32; 295 pub const DnsConfigSearchList: DNS_CONFIG_TYPE = 7i32; 296 pub const DnsConfigAdapterInfo: DNS_CONFIG_TYPE = 8i32; 297 pub const DnsConfigPrimaryHostNameRegistrationEnabled: DNS_CONFIG_TYPE = 9i32; 298 pub const DnsConfigAdapterHostNameRegistrationEnabled: DNS_CONFIG_TYPE = 10i32; 299 pub const DnsConfigAddressRegistrationMaxCount: DNS_CONFIG_TYPE = 11i32; 300 pub const DnsConfigHostName_W: DNS_CONFIG_TYPE = 12i32; 301 pub const DnsConfigHostName_A: DNS_CONFIG_TYPE = 13i32; 302 pub const DnsConfigHostName_UTF8: DNS_CONFIG_TYPE = 14i32; 303 pub const DnsConfigFullHostName_W: DNS_CONFIG_TYPE = 15i32; 304 pub const DnsConfigFullHostName_A: DNS_CONFIG_TYPE = 16i32; 305 pub const DnsConfigFullHostName_UTF8: DNS_CONFIG_TYPE = 17i32; 306 pub const DnsConfigNameServer: DNS_CONFIG_TYPE = 18i32; 307 #[repr(C)] 308 #[cfg(feature = "Win32_Foundation")] 309 pub struct DNS_CONNECTION_IFINDEX_ENTRY { 310 pub pwszConnectionName: super::super::Foundation::PWSTR, 311 pub dwIfIndex: u32, 312 } 313 #[cfg(feature = "Win32_Foundation")] 314 impl ::core::marker::Copy for DNS_CONNECTION_IFINDEX_ENTRY {} 315 #[cfg(feature = "Win32_Foundation")] 316 impl ::core::clone::Clone for DNS_CONNECTION_IFINDEX_ENTRY { clone(&self) -> Self317 fn clone(&self) -> Self { 318 *self 319 } 320 } 321 #[repr(C)] 322 #[cfg(feature = "Win32_Foundation")] 323 pub struct DNS_CONNECTION_IFINDEX_LIST { 324 pub pConnectionIfIndexEntries: *mut DNS_CONNECTION_IFINDEX_ENTRY, 325 pub nEntries: u32, 326 } 327 #[cfg(feature = "Win32_Foundation")] 328 impl ::core::marker::Copy for DNS_CONNECTION_IFINDEX_LIST {} 329 #[cfg(feature = "Win32_Foundation")] 330 impl ::core::clone::Clone for DNS_CONNECTION_IFINDEX_LIST { clone(&self) -> Self331 fn clone(&self) -> Self { 332 *self 333 } 334 } 335 #[repr(C)] 336 pub struct DNS_CONNECTION_NAME { 337 pub wszName: [u16; 65], 338 } 339 impl ::core::marker::Copy for DNS_CONNECTION_NAME {} 340 impl ::core::clone::Clone for DNS_CONNECTION_NAME { clone(&self) -> Self341 fn clone(&self) -> Self { 342 *self 343 } 344 } 345 #[repr(C)] 346 pub struct DNS_CONNECTION_NAME_LIST { 347 pub cNames: u32, 348 pub pNames: *mut DNS_CONNECTION_NAME, 349 } 350 impl ::core::marker::Copy for DNS_CONNECTION_NAME_LIST {} 351 impl ::core::clone::Clone for DNS_CONNECTION_NAME_LIST { clone(&self) -> Self352 fn clone(&self) -> Self { 353 *self 354 } 355 } 356 pub const DNS_CONNECTION_NAME_MAX_LENGTH: u32 = 64u32; 357 #[repr(C)] 358 #[cfg(feature = "Win32_Foundation")] 359 pub struct DNS_CONNECTION_POLICY_ENTRY { 360 pub pwszHost: super::super::Foundation::PWSTR, 361 pub pwszAppId: super::super::Foundation::PWSTR, 362 pub cbAppSid: u32, 363 pub pbAppSid: *mut u8, 364 pub nConnections: u32, 365 pub ppwszConnections: *mut super::super::Foundation::PWSTR, 366 pub dwPolicyEntryFlags: u32, 367 } 368 #[cfg(feature = "Win32_Foundation")] 369 impl ::core::marker::Copy for DNS_CONNECTION_POLICY_ENTRY {} 370 #[cfg(feature = "Win32_Foundation")] 371 impl ::core::clone::Clone for DNS_CONNECTION_POLICY_ENTRY { clone(&self) -> Self372 fn clone(&self) -> Self { 373 *self 374 } 375 } 376 #[repr(C)] 377 #[cfg(feature = "Win32_Foundation")] 378 pub struct DNS_CONNECTION_POLICY_ENTRY_LIST { 379 pub pPolicyEntries: *mut DNS_CONNECTION_POLICY_ENTRY, 380 pub nEntries: u32, 381 } 382 #[cfg(feature = "Win32_Foundation")] 383 impl ::core::marker::Copy for DNS_CONNECTION_POLICY_ENTRY_LIST {} 384 #[cfg(feature = "Win32_Foundation")] 385 impl ::core::clone::Clone for DNS_CONNECTION_POLICY_ENTRY_LIST { clone(&self) -> Self386 fn clone(&self) -> Self { 387 *self 388 } 389 } 390 pub const DNS_CONNECTION_POLICY_ENTRY_ONDEMAND: u32 = 1u32; 391 pub type DNS_CONNECTION_POLICY_TAG = i32; 392 pub const TAG_DNS_CONNECTION_POLICY_TAG_DEFAULT: DNS_CONNECTION_POLICY_TAG = 0i32; 393 pub const TAG_DNS_CONNECTION_POLICY_TAG_CONNECTION_MANAGER: DNS_CONNECTION_POLICY_TAG = 1i32; 394 pub const TAG_DNS_CONNECTION_POLICY_TAG_WWWPT: DNS_CONNECTION_POLICY_TAG = 2i32; 395 #[repr(C)] 396 #[cfg(feature = "Win32_Foundation")] 397 pub struct DNS_CONNECTION_PROXY_ELEMENT { 398 pub Type: DNS_CONNECTION_PROXY_TYPE, 399 pub Info: DNS_CONNECTION_PROXY_INFO, 400 } 401 #[cfg(feature = "Win32_Foundation")] 402 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_ELEMENT {} 403 #[cfg(feature = "Win32_Foundation")] 404 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_ELEMENT { clone(&self) -> Self405 fn clone(&self) -> Self { 406 *self 407 } 408 } 409 #[repr(C)] 410 #[cfg(feature = "Win32_Foundation")] 411 pub struct DNS_CONNECTION_PROXY_INFO { 412 pub Version: u32, 413 pub pwszFriendlyName: super::super::Foundation::PWSTR, 414 pub Flags: u32, 415 pub Switch: DNS_CONNECTION_PROXY_INFO_SWITCH, 416 pub Anonymous: DNS_CONNECTION_PROXY_INFO_0, 417 } 418 #[cfg(feature = "Win32_Foundation")] 419 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_INFO {} 420 #[cfg(feature = "Win32_Foundation")] 421 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_INFO { clone(&self) -> Self422 fn clone(&self) -> Self { 423 *self 424 } 425 } 426 #[repr(C)] 427 #[cfg(feature = "Win32_Foundation")] 428 pub union DNS_CONNECTION_PROXY_INFO_0 { 429 pub Config: DNS_CONNECTION_PROXY_INFO_0_0, 430 pub Script: DNS_CONNECTION_PROXY_INFO_0_1, 431 } 432 #[cfg(feature = "Win32_Foundation")] 433 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_INFO_0 {} 434 #[cfg(feature = "Win32_Foundation")] 435 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_INFO_0 { clone(&self) -> Self436 fn clone(&self) -> Self { 437 *self 438 } 439 } 440 #[repr(C)] 441 #[cfg(feature = "Win32_Foundation")] 442 pub struct DNS_CONNECTION_PROXY_INFO_0_0 { 443 pub pwszServer: super::super::Foundation::PWSTR, 444 pub pwszUsername: super::super::Foundation::PWSTR, 445 pub pwszPassword: super::super::Foundation::PWSTR, 446 pub pwszException: super::super::Foundation::PWSTR, 447 pub pwszExtraInfo: super::super::Foundation::PWSTR, 448 pub Port: u16, 449 } 450 #[cfg(feature = "Win32_Foundation")] 451 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_INFO_0_0 {} 452 #[cfg(feature = "Win32_Foundation")] 453 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_INFO_0_0 { clone(&self) -> Self454 fn clone(&self) -> Self { 455 *self 456 } 457 } 458 #[repr(C)] 459 #[cfg(feature = "Win32_Foundation")] 460 pub struct DNS_CONNECTION_PROXY_INFO_0_1 { 461 pub pwszScript: super::super::Foundation::PWSTR, 462 pub pwszUsername: super::super::Foundation::PWSTR, 463 pub pwszPassword: super::super::Foundation::PWSTR, 464 } 465 #[cfg(feature = "Win32_Foundation")] 466 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_INFO_0_1 {} 467 #[cfg(feature = "Win32_Foundation")] 468 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_INFO_0_1 { clone(&self) -> Self469 fn clone(&self) -> Self { 470 *self 471 } 472 } 473 pub const DNS_CONNECTION_PROXY_INFO_CURRENT_VERSION: u32 = 1u32; 474 #[repr(C)] 475 #[cfg(feature = "Win32_Foundation")] 476 pub struct DNS_CONNECTION_PROXY_INFO_EX { 477 pub ProxyInfo: DNS_CONNECTION_PROXY_INFO, 478 pub dwInterfaceIndex: u32, 479 pub pwszConnectionName: super::super::Foundation::PWSTR, 480 pub fDirectConfiguration: super::super::Foundation::BOOL, 481 pub hConnection: super::super::Foundation::HANDLE, 482 } 483 #[cfg(feature = "Win32_Foundation")] 484 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_INFO_EX {} 485 #[cfg(feature = "Win32_Foundation")] 486 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_INFO_EX { clone(&self) -> Self487 fn clone(&self) -> Self { 488 *self 489 } 490 } 491 pub const DNS_CONNECTION_PROXY_INFO_EXCEPTION_MAX_LENGTH: u32 = 1024u32; 492 pub const DNS_CONNECTION_PROXY_INFO_EXTRA_INFO_MAX_LENGTH: u32 = 1024u32; 493 pub const DNS_CONNECTION_PROXY_INFO_FLAG_BYPASSLOCAL: u32 = 2u32; 494 pub const DNS_CONNECTION_PROXY_INFO_FLAG_DISABLED: u32 = 1u32; 495 pub const DNS_CONNECTION_PROXY_INFO_FRIENDLY_NAME_MAX_LENGTH: u32 = 64u32; 496 pub const DNS_CONNECTION_PROXY_INFO_PASSWORD_MAX_LENGTH: u32 = 128u32; 497 pub const DNS_CONNECTION_PROXY_INFO_SERVER_MAX_LENGTH: u32 = 256u32; 498 pub type DNS_CONNECTION_PROXY_INFO_SWITCH = i32; 499 pub const DNS_CONNECTION_PROXY_INFO_SWITCH_CONFIG: DNS_CONNECTION_PROXY_INFO_SWITCH = 0i32; 500 pub const DNS_CONNECTION_PROXY_INFO_SWITCH_SCRIPT: DNS_CONNECTION_PROXY_INFO_SWITCH = 1i32; 501 pub const DNS_CONNECTION_PROXY_INFO_SWITCH_WPAD: DNS_CONNECTION_PROXY_INFO_SWITCH = 2i32; 502 pub const DNS_CONNECTION_PROXY_INFO_USERNAME_MAX_LENGTH: u32 = 128u32; 503 #[repr(C)] 504 #[cfg(feature = "Win32_Foundation")] 505 pub struct DNS_CONNECTION_PROXY_LIST { 506 pub cProxies: u32, 507 pub pProxies: *mut DNS_CONNECTION_PROXY_ELEMENT, 508 } 509 #[cfg(feature = "Win32_Foundation")] 510 impl ::core::marker::Copy for DNS_CONNECTION_PROXY_LIST {} 511 #[cfg(feature = "Win32_Foundation")] 512 impl ::core::clone::Clone for DNS_CONNECTION_PROXY_LIST { clone(&self) -> Self513 fn clone(&self) -> Self { 514 *self 515 } 516 } 517 pub type DNS_CONNECTION_PROXY_TYPE = i32; 518 pub const DNS_CONNECTION_PROXY_TYPE_NULL: DNS_CONNECTION_PROXY_TYPE = 0i32; 519 pub const DNS_CONNECTION_PROXY_TYPE_HTTP: DNS_CONNECTION_PROXY_TYPE = 1i32; 520 pub const DNS_CONNECTION_PROXY_TYPE_WAP: DNS_CONNECTION_PROXY_TYPE = 2i32; 521 pub const DNS_CONNECTION_PROXY_TYPE_SOCKS4: DNS_CONNECTION_PROXY_TYPE = 4i32; 522 pub const DNS_CONNECTION_PROXY_TYPE_SOCKS5: DNS_CONNECTION_PROXY_TYPE = 5i32; 523 #[repr(C)] 524 #[cfg(feature = "Win32_Foundation")] 525 pub struct DNS_CUSTOM_SERVER { 526 pub dwServerType: u32, 527 pub ullFlags: u64, 528 pub Anonymous1: DNS_CUSTOM_SERVER_0, 529 pub Anonymous2: DNS_CUSTOM_SERVER_1, 530 } 531 #[cfg(feature = "Win32_Foundation")] 532 impl ::core::marker::Copy for DNS_CUSTOM_SERVER {} 533 #[cfg(feature = "Win32_Foundation")] 534 impl ::core::clone::Clone for DNS_CUSTOM_SERVER { clone(&self) -> Self535 fn clone(&self) -> Self { 536 *self 537 } 538 } 539 #[repr(C)] 540 #[cfg(feature = "Win32_Foundation")] 541 pub union DNS_CUSTOM_SERVER_0 { 542 pub pwszTemplate: super::super::Foundation::PWSTR, 543 } 544 #[cfg(feature = "Win32_Foundation")] 545 impl ::core::marker::Copy for DNS_CUSTOM_SERVER_0 {} 546 #[cfg(feature = "Win32_Foundation")] 547 impl ::core::clone::Clone for DNS_CUSTOM_SERVER_0 { clone(&self) -> Self548 fn clone(&self) -> Self { 549 *self 550 } 551 } 552 #[repr(C)] 553 #[cfg(feature = "Win32_Foundation")] 554 pub union DNS_CUSTOM_SERVER_1 { 555 pub MaxSa: [super::super::Foundation::CHAR; 32], 556 } 557 #[cfg(feature = "Win32_Foundation")] 558 impl ::core::marker::Copy for DNS_CUSTOM_SERVER_1 {} 559 #[cfg(feature = "Win32_Foundation")] 560 impl ::core::clone::Clone for DNS_CUSTOM_SERVER_1 { clone(&self) -> Self561 fn clone(&self) -> Self { 562 *self 563 } 564 } 565 pub const DNS_CUSTOM_SERVER_TYPE_DOH: u32 = 2u32; 566 pub const DNS_CUSTOM_SERVER_TYPE_UDP: u32 = 1u32; 567 pub const DNS_CUSTOM_SERVER_UDP_FALLBACK: u32 = 1u32; 568 #[repr(C)] 569 pub struct DNS_DHCID_DATA { 570 pub dwByteCount: u32, 571 pub DHCID: [u8; 1], 572 } 573 impl ::core::marker::Copy for DNS_DHCID_DATA {} 574 impl ::core::clone::Clone for DNS_DHCID_DATA { clone(&self) -> Self575 fn clone(&self) -> Self { 576 *self 577 } 578 } 579 #[repr(C)] 580 pub struct DNS_DS_DATA { 581 pub wKeyTag: u16, 582 pub chAlgorithm: u8, 583 pub chDigestType: u8, 584 pub wDigestLength: u16, 585 pub wPad: u16, 586 pub Digest: [u8; 1], 587 } 588 impl ::core::marker::Copy for DNS_DS_DATA {} 589 impl ::core::clone::Clone for DNS_DS_DATA { clone(&self) -> Self590 fn clone(&self) -> Self { 591 *self 592 } 593 } 594 pub type DNS_FREE_TYPE = i32; 595 pub const DnsFreeFlat: DNS_FREE_TYPE = 0i32; 596 pub const DnsFreeRecordList: DNS_FREE_TYPE = 1i32; 597 pub const DnsFreeParsedMessageFields: DNS_FREE_TYPE = 2i32; 598 #[repr(C, packed(1))] 599 pub struct DNS_HEADER { 600 pub Xid: u16, 601 pub _bitfield1: u8, 602 pub _bitfield2: u8, 603 pub QuestionCount: u16, 604 pub AnswerCount: u16, 605 pub NameServerCount: u16, 606 pub AdditionalCount: u16, 607 } 608 impl ::core::marker::Copy for DNS_HEADER {} 609 impl ::core::clone::Clone for DNS_HEADER { clone(&self) -> Self610 fn clone(&self) -> Self { 611 *self 612 } 613 } 614 #[repr(C, packed(1))] 615 pub struct DNS_HEADER_EXT { 616 pub _bitfield: u16, 617 pub chRcode: u8, 618 pub chVersion: u8, 619 } 620 impl ::core::marker::Copy for DNS_HEADER_EXT {} 621 impl ::core::clone::Clone for DNS_HEADER_EXT { clone(&self) -> Self622 fn clone(&self) -> Self { 623 *self 624 } 625 } 626 #[repr(C)] 627 pub struct DNS_KEY_DATA { 628 pub wFlags: u16, 629 pub chProtocol: u8, 630 pub chAlgorithm: u8, 631 pub wKeyLength: u16, 632 pub wPad: u16, 633 pub Key: [u8; 1], 634 } 635 impl ::core::marker::Copy for DNS_KEY_DATA {} 636 impl ::core::clone::Clone for DNS_KEY_DATA { clone(&self) -> Self637 fn clone(&self) -> Self { 638 *self 639 } 640 } 641 #[repr(C)] 642 pub struct DNS_LOC_DATA { 643 pub wVersion: u16, 644 pub wSize: u16, 645 pub wHorPrec: u16, 646 pub wVerPrec: u16, 647 pub dwLatitude: u32, 648 pub dwLongitude: u32, 649 pub dwAltitude: u32, 650 } 651 impl ::core::marker::Copy for DNS_LOC_DATA {} 652 impl ::core::clone::Clone for DNS_LOC_DATA { clone(&self) -> Self653 fn clone(&self) -> Self { 654 *self 655 } 656 } 657 pub const DNS_MAX_IP4_REVERSE_NAME_BUFFER_LENGTH: u32 = 31u32; 658 pub const DNS_MAX_IP4_REVERSE_NAME_LENGTH: u32 = 31u32; 659 pub const DNS_MAX_IP6_REVERSE_NAME_BUFFER_LENGTH: u32 = 75u32; 660 pub const DNS_MAX_IP6_REVERSE_NAME_LENGTH: u32 = 75u32; 661 pub const DNS_MAX_LABEL_BUFFER_LENGTH: u32 = 64u32; 662 pub const DNS_MAX_LABEL_LENGTH: u32 = 63u32; 663 pub const DNS_MAX_NAME_BUFFER_LENGTH: u32 = 256u32; 664 pub const DNS_MAX_NAME_LENGTH: u32 = 255u32; 665 pub const DNS_MAX_REVERSE_NAME_BUFFER_LENGTH: u32 = 75u32; 666 pub const DNS_MAX_REVERSE_NAME_LENGTH: u32 = 75u32; 667 pub const DNS_MAX_TEXT_STRING_LENGTH: u32 = 255u32; 668 #[repr(C)] 669 #[cfg(feature = "Win32_Foundation")] 670 pub struct DNS_MESSAGE_BUFFER { 671 pub MessageHead: DNS_HEADER, 672 pub MessageBody: [super::super::Foundation::CHAR; 1], 673 } 674 #[cfg(feature = "Win32_Foundation")] 675 impl ::core::marker::Copy for DNS_MESSAGE_BUFFER {} 676 #[cfg(feature = "Win32_Foundation")] 677 impl ::core::clone::Clone for DNS_MESSAGE_BUFFER { clone(&self) -> Self678 fn clone(&self) -> Self { 679 *self 680 } 681 } 682 #[repr(C)] 683 #[cfg(feature = "Win32_Foundation")] 684 pub struct DNS_MINFO_DATAA { 685 pub pNameMailbox: super::super::Foundation::PSTR, 686 pub pNameErrorsMailbox: super::super::Foundation::PSTR, 687 } 688 #[cfg(feature = "Win32_Foundation")] 689 impl ::core::marker::Copy for DNS_MINFO_DATAA {} 690 #[cfg(feature = "Win32_Foundation")] 691 impl ::core::clone::Clone for DNS_MINFO_DATAA { clone(&self) -> Self692 fn clone(&self) -> Self { 693 *self 694 } 695 } 696 #[repr(C)] 697 #[cfg(feature = "Win32_Foundation")] 698 pub struct DNS_MINFO_DATAW { 699 pub pNameMailbox: super::super::Foundation::PWSTR, 700 pub pNameErrorsMailbox: super::super::Foundation::PWSTR, 701 } 702 #[cfg(feature = "Win32_Foundation")] 703 impl ::core::marker::Copy for DNS_MINFO_DATAW {} 704 #[cfg(feature = "Win32_Foundation")] 705 impl ::core::clone::Clone for DNS_MINFO_DATAW { clone(&self) -> Self706 fn clone(&self) -> Self { 707 *self 708 } 709 } 710 #[repr(C)] 711 #[cfg(feature = "Win32_Foundation")] 712 pub struct DNS_MX_DATAA { 713 pub pNameExchange: super::super::Foundation::PSTR, 714 pub wPreference: u16, 715 pub Pad: u16, 716 } 717 #[cfg(feature = "Win32_Foundation")] 718 impl ::core::marker::Copy for DNS_MX_DATAA {} 719 #[cfg(feature = "Win32_Foundation")] 720 impl ::core::clone::Clone for DNS_MX_DATAA { clone(&self) -> Self721 fn clone(&self) -> Self { 722 *self 723 } 724 } 725 #[repr(C)] 726 #[cfg(feature = "Win32_Foundation")] 727 pub struct DNS_MX_DATAW { 728 pub pNameExchange: super::super::Foundation::PWSTR, 729 pub wPreference: u16, 730 pub Pad: u16, 731 } 732 #[cfg(feature = "Win32_Foundation")] 733 impl ::core::marker::Copy for DNS_MX_DATAW {} 734 #[cfg(feature = "Win32_Foundation")] 735 impl ::core::clone::Clone for DNS_MX_DATAW { clone(&self) -> Self736 fn clone(&self) -> Self { 737 *self 738 } 739 } 740 pub type DNS_NAME_FORMAT = i32; 741 pub const DnsNameDomain: DNS_NAME_FORMAT = 0i32; 742 pub const DnsNameDomainLabel: DNS_NAME_FORMAT = 1i32; 743 pub const DnsNameHostnameFull: DNS_NAME_FORMAT = 2i32; 744 pub const DnsNameHostnameLabel: DNS_NAME_FORMAT = 3i32; 745 pub const DnsNameWildcard: DNS_NAME_FORMAT = 4i32; 746 pub const DnsNameSrvRecord: DNS_NAME_FORMAT = 5i32; 747 pub const DnsNameValidateTld: DNS_NAME_FORMAT = 6i32; 748 #[repr(C)] 749 #[cfg(feature = "Win32_Foundation")] 750 pub struct DNS_NAPTR_DATAA { 751 pub wOrder: u16, 752 pub wPreference: u16, 753 pub pFlags: super::super::Foundation::PSTR, 754 pub pService: super::super::Foundation::PSTR, 755 pub pRegularExpression: super::super::Foundation::PSTR, 756 pub pReplacement: super::super::Foundation::PSTR, 757 } 758 #[cfg(feature = "Win32_Foundation")] 759 impl ::core::marker::Copy for DNS_NAPTR_DATAA {} 760 #[cfg(feature = "Win32_Foundation")] 761 impl ::core::clone::Clone for DNS_NAPTR_DATAA { clone(&self) -> Self762 fn clone(&self) -> Self { 763 *self 764 } 765 } 766 #[repr(C)] 767 #[cfg(feature = "Win32_Foundation")] 768 pub struct DNS_NAPTR_DATAW { 769 pub wOrder: u16, 770 pub wPreference: u16, 771 pub pFlags: super::super::Foundation::PWSTR, 772 pub pService: super::super::Foundation::PWSTR, 773 pub pRegularExpression: super::super::Foundation::PWSTR, 774 pub pReplacement: super::super::Foundation::PWSTR, 775 } 776 #[cfg(feature = "Win32_Foundation")] 777 impl ::core::marker::Copy for DNS_NAPTR_DATAW {} 778 #[cfg(feature = "Win32_Foundation")] 779 impl ::core::clone::Clone for DNS_NAPTR_DATAW { clone(&self) -> Self780 fn clone(&self) -> Self { 781 *self 782 } 783 } 784 #[repr(C)] 785 pub struct DNS_NSEC3PARAM_DATA { 786 pub chAlgorithm: u8, 787 pub bFlags: u8, 788 pub wIterations: u16, 789 pub bSaltLength: u8, 790 pub bPad: [u8; 3], 791 pub pbSalt: [u8; 1], 792 } 793 impl ::core::marker::Copy for DNS_NSEC3PARAM_DATA {} 794 impl ::core::clone::Clone for DNS_NSEC3PARAM_DATA { clone(&self) -> Self795 fn clone(&self) -> Self { 796 *self 797 } 798 } 799 #[repr(C)] 800 pub struct DNS_NSEC3_DATA { 801 pub chAlgorithm: u8, 802 pub bFlags: u8, 803 pub wIterations: u16, 804 pub bSaltLength: u8, 805 pub bHashLength: u8, 806 pub wTypeBitMapsLength: u16, 807 pub chData: [u8; 1], 808 } 809 impl ::core::marker::Copy for DNS_NSEC3_DATA {} 810 impl ::core::clone::Clone for DNS_NSEC3_DATA { clone(&self) -> Self811 fn clone(&self) -> Self { 812 *self 813 } 814 } 815 #[repr(C)] 816 #[cfg(feature = "Win32_Foundation")] 817 pub struct DNS_NSEC_DATAA { 818 pub pNextDomainName: super::super::Foundation::PSTR, 819 pub wTypeBitMapsLength: u16, 820 pub wPad: u16, 821 pub TypeBitMaps: [u8; 1], 822 } 823 #[cfg(feature = "Win32_Foundation")] 824 impl ::core::marker::Copy for DNS_NSEC_DATAA {} 825 #[cfg(feature = "Win32_Foundation")] 826 impl ::core::clone::Clone for DNS_NSEC_DATAA { clone(&self) -> Self827 fn clone(&self) -> Self { 828 *self 829 } 830 } 831 #[repr(C)] 832 #[cfg(feature = "Win32_Foundation")] 833 pub struct DNS_NSEC_DATAW { 834 pub pNextDomainName: super::super::Foundation::PWSTR, 835 pub wTypeBitMapsLength: u16, 836 pub wPad: u16, 837 pub TypeBitMaps: [u8; 1], 838 } 839 #[cfg(feature = "Win32_Foundation")] 840 impl ::core::marker::Copy for DNS_NSEC_DATAW {} 841 #[cfg(feature = "Win32_Foundation")] 842 impl ::core::clone::Clone for DNS_NSEC_DATAW { clone(&self) -> Self843 fn clone(&self) -> Self { 844 *self 845 } 846 } 847 #[repr(C)] 848 pub struct DNS_NULL_DATA { 849 pub dwByteCount: u32, 850 pub Data: [u8; 1], 851 } 852 impl ::core::marker::Copy for DNS_NULL_DATA {} 853 impl ::core::clone::Clone for DNS_NULL_DATA { clone(&self) -> Self854 fn clone(&self) -> Self { 855 *self 856 } 857 } 858 #[repr(C)] 859 #[cfg(feature = "Win32_Foundation")] 860 pub struct DNS_NXT_DATAA { 861 pub pNameNext: super::super::Foundation::PSTR, 862 pub wNumTypes: u16, 863 pub wTypes: [u16; 1], 864 } 865 #[cfg(feature = "Win32_Foundation")] 866 impl ::core::marker::Copy for DNS_NXT_DATAA {} 867 #[cfg(feature = "Win32_Foundation")] 868 impl ::core::clone::Clone for DNS_NXT_DATAA { clone(&self) -> Self869 fn clone(&self) -> Self { 870 *self 871 } 872 } 873 #[repr(C)] 874 #[cfg(feature = "Win32_Foundation")] 875 pub struct DNS_NXT_DATAW { 876 pub pNameNext: super::super::Foundation::PWSTR, 877 pub wNumTypes: u16, 878 pub wTypes: [u16; 1], 879 } 880 #[cfg(feature = "Win32_Foundation")] 881 impl ::core::marker::Copy for DNS_NXT_DATAW {} 882 #[cfg(feature = "Win32_Foundation")] 883 impl ::core::clone::Clone for DNS_NXT_DATAW { clone(&self) -> Self884 fn clone(&self) -> Self { 885 *self 886 } 887 } 888 pub const DNS_OPCODE_IQUERY: u32 = 1u32; 889 pub const DNS_OPCODE_NOTIFY: u32 = 4u32; 890 pub const DNS_OPCODE_QUERY: u32 = 0u32; 891 pub const DNS_OPCODE_SERVER_STATUS: u32 = 2u32; 892 pub const DNS_OPCODE_UNKNOWN: u32 = 3u32; 893 pub const DNS_OPCODE_UPDATE: u32 = 5u32; 894 #[repr(C)] 895 pub struct DNS_OPT_DATA { 896 pub wDataLength: u16, 897 pub wPad: u16, 898 pub Data: [u8; 1], 899 } 900 impl ::core::marker::Copy for DNS_OPT_DATA {} 901 impl ::core::clone::Clone for DNS_OPT_DATA { clone(&self) -> Self902 fn clone(&self) -> Self { 903 *self 904 } 905 } 906 pub const DNS_PORT_HOST_ORDER: u32 = 53u32; 907 pub const DNS_PORT_NET_ORDER: u32 = 13568u32; 908 pub type DNS_PROXY_COMPLETION_ROUTINE = unsafe extern "system" fn(completioncontext: *const ::core::ffi::c_void, status: i32); 909 #[repr(C)] 910 #[cfg(feature = "Win32_Foundation")] 911 pub struct DNS_PROXY_INFORMATION { 912 pub version: u32, 913 pub proxyInformationType: DNS_PROXY_INFORMATION_TYPE, 914 pub proxyName: super::super::Foundation::PWSTR, 915 } 916 #[cfg(feature = "Win32_Foundation")] 917 impl ::core::marker::Copy for DNS_PROXY_INFORMATION {} 918 #[cfg(feature = "Win32_Foundation")] 919 impl ::core::clone::Clone for DNS_PROXY_INFORMATION { clone(&self) -> Self920 fn clone(&self) -> Self { 921 *self 922 } 923 } 924 pub type DNS_PROXY_INFORMATION_TYPE = i32; 925 pub const DNS_PROXY_INFORMATION_DIRECT: DNS_PROXY_INFORMATION_TYPE = 0i32; 926 pub const DNS_PROXY_INFORMATION_DEFAULT_SETTINGS: DNS_PROXY_INFORMATION_TYPE = 1i32; 927 pub const DNS_PROXY_INFORMATION_PROXY_NAME: DNS_PROXY_INFORMATION_TYPE = 2i32; 928 pub const DNS_PROXY_INFORMATION_DOES_NOT_EXIST: DNS_PROXY_INFORMATION_TYPE = 3i32; 929 #[repr(C)] 930 #[cfg(feature = "Win32_Foundation")] 931 pub struct DNS_PTR_DATAA { 932 pub pNameHost: super::super::Foundation::PSTR, 933 } 934 #[cfg(feature = "Win32_Foundation")] 935 impl ::core::marker::Copy for DNS_PTR_DATAA {} 936 #[cfg(feature = "Win32_Foundation")] 937 impl ::core::clone::Clone for DNS_PTR_DATAA { clone(&self) -> Self938 fn clone(&self) -> Self { 939 *self 940 } 941 } 942 #[repr(C)] 943 #[cfg(feature = "Win32_Foundation")] 944 pub struct DNS_PTR_DATAW { 945 pub pNameHost: super::super::Foundation::PWSTR, 946 } 947 #[cfg(feature = "Win32_Foundation")] 948 impl ::core::marker::Copy for DNS_PTR_DATAW {} 949 #[cfg(feature = "Win32_Foundation")] 950 impl ::core::clone::Clone for DNS_PTR_DATAW { clone(&self) -> Self951 fn clone(&self) -> Self { 952 *self 953 } 954 } 955 pub const DNS_QUERY_ACCEPT_TRUNCATED_RESPONSE: u32 = 1u32; 956 pub const DNS_QUERY_ADDRCONFIG: u32 = 8192u32; 957 pub const DNS_QUERY_APPEND_MULTILABEL: u32 = 8388608u32; 958 pub const DNS_QUERY_BYPASS_CACHE: u32 = 8u32; 959 pub const DNS_QUERY_CACHE_ONLY: u32 = 16u32; 960 #[repr(C)] 961 #[cfg(feature = "Win32_Foundation")] 962 pub struct DNS_QUERY_CANCEL { 963 pub Reserved: [super::super::Foundation::CHAR; 32], 964 } 965 #[cfg(feature = "Win32_Foundation")] 966 impl ::core::marker::Copy for DNS_QUERY_CANCEL {} 967 #[cfg(feature = "Win32_Foundation")] 968 impl ::core::clone::Clone for DNS_QUERY_CANCEL { clone(&self) -> Self969 fn clone(&self) -> Self { 970 *self 971 } 972 } 973 pub const DNS_QUERY_DISABLE_IDN_ENCODING: u32 = 2097152u32; 974 pub const DNS_QUERY_DNSSEC_CHECKING_DISABLED: u32 = 33554432u32; 975 pub const DNS_QUERY_DNSSEC_OK: u32 = 16777216u32; 976 pub const DNS_QUERY_DONT_RESET_TTL_VALUES: u32 = 1048576u32; 977 pub const DNS_QUERY_DUAL_ADDR: u32 = 16384u32; 978 pub const DNS_QUERY_MULTICAST_ONLY: u32 = 1024u32; 979 pub const DNS_QUERY_NO_HOSTS_FILE: u32 = 64u32; 980 pub const DNS_QUERY_NO_LOCAL_NAME: u32 = 32u32; 981 pub const DNS_QUERY_NO_MULTICAST: u32 = 2048u32; 982 pub const DNS_QUERY_NO_NETBT: u32 = 128u32; 983 pub const DNS_QUERY_NO_RECURSION: u32 = 4u32; 984 pub const DNS_QUERY_NO_WIRE_QUERY: u32 = 16u32; 985 #[repr(C)] 986 #[cfg(feature = "Win32_Foundation")] 987 pub struct DNS_QUERY_REQUEST { 988 pub Version: u32, 989 pub QueryName: super::super::Foundation::PWSTR, 990 pub QueryType: u16, 991 pub QueryOptions: u64, 992 pub pDnsServerList: *mut DNS_ADDR_ARRAY, 993 pub InterfaceIndex: u32, 994 pub pQueryCompletionCallback: PDNS_QUERY_COMPLETION_ROUTINE, 995 pub pQueryContext: *mut ::core::ffi::c_void, 996 } 997 #[cfg(feature = "Win32_Foundation")] 998 impl ::core::marker::Copy for DNS_QUERY_REQUEST {} 999 #[cfg(feature = "Win32_Foundation")] 1000 impl ::core::clone::Clone for DNS_QUERY_REQUEST { clone(&self) -> Self1001 fn clone(&self) -> Self { 1002 *self 1003 } 1004 } 1005 #[repr(C)] 1006 #[cfg(feature = "Win32_Foundation")] 1007 pub struct DNS_QUERY_REQUEST3 { 1008 pub Version: u32, 1009 pub QueryName: super::super::Foundation::PWSTR, 1010 pub QueryType: u16, 1011 pub QueryOptions: u64, 1012 pub pDnsServerList: *mut DNS_ADDR_ARRAY, 1013 pub InterfaceIndex: u32, 1014 pub pQueryCompletionCallback: PDNS_QUERY_COMPLETION_ROUTINE, 1015 pub pQueryContext: *mut ::core::ffi::c_void, 1016 pub IsNetworkQueryRequired: super::super::Foundation::BOOL, 1017 pub RequiredNetworkIndex: u32, 1018 pub cCustomServers: u32, 1019 pub pCustomServers: *mut DNS_CUSTOM_SERVER, 1020 } 1021 #[cfg(feature = "Win32_Foundation")] 1022 impl ::core::marker::Copy for DNS_QUERY_REQUEST3 {} 1023 #[cfg(feature = "Win32_Foundation")] 1024 impl ::core::clone::Clone for DNS_QUERY_REQUEST3 { clone(&self) -> Self1025 fn clone(&self) -> Self { 1026 *self 1027 } 1028 } 1029 pub const DNS_QUERY_REQUEST_VERSION1: u32 = 1u32; 1030 pub const DNS_QUERY_REQUEST_VERSION2: u32 = 2u32; 1031 pub const DNS_QUERY_REQUEST_VERSION3: u32 = 3u32; 1032 pub const DNS_QUERY_RESERVED: u32 = 4026531840u32; 1033 #[repr(C)] 1034 #[cfg(feature = "Win32_Foundation")] 1035 pub struct DNS_QUERY_RESULT { 1036 pub Version: u32, 1037 pub QueryStatus: i32, 1038 pub QueryOptions: u64, 1039 pub pQueryRecords: *mut DNS_RECORDA, 1040 pub Reserved: *mut ::core::ffi::c_void, 1041 } 1042 #[cfg(feature = "Win32_Foundation")] 1043 impl ::core::marker::Copy for DNS_QUERY_RESULT {} 1044 #[cfg(feature = "Win32_Foundation")] 1045 impl ::core::clone::Clone for DNS_QUERY_RESULT { clone(&self) -> Self1046 fn clone(&self) -> Self { 1047 *self 1048 } 1049 } 1050 pub const DNS_QUERY_RESULTS_VERSION1: u32 = 1u32; 1051 pub const DNS_QUERY_RETURN_MESSAGE: u32 = 512u32; 1052 pub const DNS_QUERY_STANDARD: u32 = 0u32; 1053 pub const DNS_QUERY_TREAT_AS_FQDN: u32 = 4096u32; 1054 pub const DNS_QUERY_USE_TCP_ONLY: u32 = 2u32; 1055 pub const DNS_QUERY_WIRE_ONLY: u32 = 256u32; 1056 pub const DNS_RCLASS_ALL: u32 = 65280u32; 1057 pub const DNS_RCLASS_ANY: u32 = 65280u32; 1058 pub const DNS_RCLASS_CHAOS: u32 = 768u32; 1059 pub const DNS_RCLASS_CSNET: u32 = 512u32; 1060 pub const DNS_RCLASS_HESIOD: u32 = 1024u32; 1061 pub const DNS_RCLASS_INTERNET: u32 = 256u32; 1062 pub const DNS_RCLASS_NONE: u32 = 65024u32; 1063 pub const DNS_RCLASS_UNICAST_RESPONSE: u32 = 128u32; 1064 pub const DNS_RCODE_BADKEY: u32 = 17u32; 1065 pub const DNS_RCODE_BADSIG: u32 = 16u32; 1066 pub const DNS_RCODE_BADTIME: u32 = 18u32; 1067 pub const DNS_RCODE_BADVERS: u32 = 16u32; 1068 pub const DNS_RCODE_FORMAT_ERROR: u32 = 1u32; 1069 pub const DNS_RCODE_FORMERR: u32 = 1u32; 1070 pub const DNS_RCODE_MAX: u32 = 15u32; 1071 pub const DNS_RCODE_NAME_ERROR: u32 = 3u32; 1072 pub const DNS_RCODE_NOERROR: u32 = 0u32; 1073 pub const DNS_RCODE_NOTAUTH: u32 = 9u32; 1074 pub const DNS_RCODE_NOTIMPL: u32 = 4u32; 1075 pub const DNS_RCODE_NOTZONE: u32 = 10u32; 1076 pub const DNS_RCODE_NOT_IMPLEMENTED: u32 = 4u32; 1077 pub const DNS_RCODE_NO_ERROR: u32 = 0u32; 1078 pub const DNS_RCODE_NXDOMAIN: u32 = 3u32; 1079 pub const DNS_RCODE_NXRRSET: u32 = 8u32; 1080 pub const DNS_RCODE_REFUSED: u32 = 5u32; 1081 pub const DNS_RCODE_SERVER_FAILURE: u32 = 2u32; 1082 pub const DNS_RCODE_SERVFAIL: u32 = 2u32; 1083 pub const DNS_RCODE_YXDOMAIN: u32 = 6u32; 1084 pub const DNS_RCODE_YXRRSET: u32 = 7u32; 1085 #[repr(C)] 1086 #[cfg(feature = "Win32_Foundation")] 1087 pub struct DNS_RECORDA { 1088 pub pNext: *mut DNS_RECORDA, 1089 pub pName: super::super::Foundation::PSTR, 1090 pub wType: u16, 1091 pub wDataLength: u16, 1092 pub Flags: DNS_RECORDA_1, 1093 pub dwTtl: u32, 1094 pub dwReserved: u32, 1095 pub Data: DNS_RECORDA_0, 1096 } 1097 #[cfg(feature = "Win32_Foundation")] 1098 impl ::core::marker::Copy for DNS_RECORDA {} 1099 #[cfg(feature = "Win32_Foundation")] 1100 impl ::core::clone::Clone for DNS_RECORDA { clone(&self) -> Self1101 fn clone(&self) -> Self { 1102 *self 1103 } 1104 } 1105 #[repr(C)] 1106 #[cfg(feature = "Win32_Foundation")] 1107 pub union DNS_RECORDA_0 { 1108 pub A: DNS_A_DATA, 1109 pub SOA: DNS_SOA_DATAA, 1110 pub Soa: DNS_SOA_DATAA, 1111 pub PTR: DNS_PTR_DATAA, 1112 pub Ptr: DNS_PTR_DATAA, 1113 pub NS: DNS_PTR_DATAA, 1114 pub Ns: DNS_PTR_DATAA, 1115 pub CNAME: DNS_PTR_DATAA, 1116 pub Cname: DNS_PTR_DATAA, 1117 pub DNAME: DNS_PTR_DATAA, 1118 pub Dname: DNS_PTR_DATAA, 1119 pub MB: DNS_PTR_DATAA, 1120 pub Mb: DNS_PTR_DATAA, 1121 pub MD: DNS_PTR_DATAA, 1122 pub Md: DNS_PTR_DATAA, 1123 pub MF: DNS_PTR_DATAA, 1124 pub Mf: DNS_PTR_DATAA, 1125 pub MG: DNS_PTR_DATAA, 1126 pub Mg: DNS_PTR_DATAA, 1127 pub MR: DNS_PTR_DATAA, 1128 pub Mr: DNS_PTR_DATAA, 1129 pub MINFO: DNS_MINFO_DATAA, 1130 pub Minfo: DNS_MINFO_DATAA, 1131 pub RP: DNS_MINFO_DATAA, 1132 pub Rp: DNS_MINFO_DATAA, 1133 pub MX: DNS_MX_DATAA, 1134 pub Mx: DNS_MX_DATAA, 1135 pub AFSDB: DNS_MX_DATAA, 1136 pub Afsdb: DNS_MX_DATAA, 1137 pub RT: DNS_MX_DATAA, 1138 pub Rt: DNS_MX_DATAA, 1139 pub HINFO: DNS_TXT_DATAA, 1140 pub Hinfo: DNS_TXT_DATAA, 1141 pub ISDN: DNS_TXT_DATAA, 1142 pub Isdn: DNS_TXT_DATAA, 1143 pub TXT: DNS_TXT_DATAA, 1144 pub Txt: DNS_TXT_DATAA, 1145 pub X25: DNS_TXT_DATAA, 1146 pub Null: DNS_NULL_DATA, 1147 pub WKS: DNS_WKS_DATA, 1148 pub Wks: DNS_WKS_DATA, 1149 pub AAAA: DNS_AAAA_DATA, 1150 pub KEY: DNS_KEY_DATA, 1151 pub Key: DNS_KEY_DATA, 1152 pub SIG: DNS_SIG_DATAA, 1153 pub Sig: DNS_SIG_DATAA, 1154 pub ATMA: DNS_ATMA_DATA, 1155 pub Atma: DNS_ATMA_DATA, 1156 pub NXT: DNS_NXT_DATAA, 1157 pub Nxt: DNS_NXT_DATAA, 1158 pub SRV: DNS_SRV_DATAA, 1159 pub Srv: DNS_SRV_DATAA, 1160 pub NAPTR: DNS_NAPTR_DATAA, 1161 pub Naptr: DNS_NAPTR_DATAA, 1162 pub OPT: DNS_OPT_DATA, 1163 pub Opt: DNS_OPT_DATA, 1164 pub DS: DNS_DS_DATA, 1165 pub Ds: DNS_DS_DATA, 1166 pub RRSIG: DNS_SIG_DATAA, 1167 pub Rrsig: DNS_SIG_DATAA, 1168 pub NSEC: DNS_NSEC_DATAA, 1169 pub Nsec: DNS_NSEC_DATAA, 1170 pub DNSKEY: DNS_KEY_DATA, 1171 pub Dnskey: DNS_KEY_DATA, 1172 pub TKEY: DNS_TKEY_DATAA, 1173 pub Tkey: DNS_TKEY_DATAA, 1174 pub TSIG: DNS_TSIG_DATAA, 1175 pub Tsig: DNS_TSIG_DATAA, 1176 pub WINS: DNS_WINS_DATA, 1177 pub Wins: DNS_WINS_DATA, 1178 pub WINSR: DNS_WINSR_DATAA, 1179 pub WinsR: DNS_WINSR_DATAA, 1180 pub NBSTAT: DNS_WINSR_DATAA, 1181 pub Nbstat: DNS_WINSR_DATAA, 1182 pub DHCID: DNS_DHCID_DATA, 1183 pub NSEC3: DNS_NSEC3_DATA, 1184 pub Nsec3: DNS_NSEC3_DATA, 1185 pub NSEC3PARAM: DNS_NSEC3PARAM_DATA, 1186 pub Nsec3Param: DNS_NSEC3PARAM_DATA, 1187 pub TLSA: DNS_TLSA_DATA, 1188 pub Tlsa: DNS_TLSA_DATA, 1189 pub UNKNOWN: DNS_UNKNOWN_DATA, 1190 pub Unknown: DNS_UNKNOWN_DATA, 1191 pub pDataPtr: *mut u8, 1192 } 1193 #[cfg(feature = "Win32_Foundation")] 1194 impl ::core::marker::Copy for DNS_RECORDA_0 {} 1195 #[cfg(feature = "Win32_Foundation")] 1196 impl ::core::clone::Clone for DNS_RECORDA_0 { clone(&self) -> Self1197 fn clone(&self) -> Self { 1198 *self 1199 } 1200 } 1201 #[repr(C)] 1202 #[cfg(feature = "Win32_Foundation")] 1203 pub union DNS_RECORDA_1 { 1204 pub DW: u32, 1205 pub S: DNS_RECORD_FLAGS, 1206 } 1207 #[cfg(feature = "Win32_Foundation")] 1208 impl ::core::marker::Copy for DNS_RECORDA_1 {} 1209 #[cfg(feature = "Win32_Foundation")] 1210 impl ::core::clone::Clone for DNS_RECORDA_1 { clone(&self) -> Self1211 fn clone(&self) -> Self { 1212 *self 1213 } 1214 } 1215 #[repr(C)] 1216 #[cfg(feature = "Win32_Foundation")] 1217 pub struct DNS_RECORDW { 1218 pub pNext: *mut DNS_RECORDW, 1219 pub pName: super::super::Foundation::PWSTR, 1220 pub wType: u16, 1221 pub wDataLength: u16, 1222 pub Flags: DNS_RECORDW_1, 1223 pub dwTtl: u32, 1224 pub dwReserved: u32, 1225 pub Data: DNS_RECORDW_0, 1226 } 1227 #[cfg(feature = "Win32_Foundation")] 1228 impl ::core::marker::Copy for DNS_RECORDW {} 1229 #[cfg(feature = "Win32_Foundation")] 1230 impl ::core::clone::Clone for DNS_RECORDW { clone(&self) -> Self1231 fn clone(&self) -> Self { 1232 *self 1233 } 1234 } 1235 #[repr(C)] 1236 #[cfg(feature = "Win32_Foundation")] 1237 pub union DNS_RECORDW_0 { 1238 pub A: DNS_A_DATA, 1239 pub SOA: DNS_SOA_DATAW, 1240 pub Soa: DNS_SOA_DATAW, 1241 pub PTR: DNS_PTR_DATAW, 1242 pub Ptr: DNS_PTR_DATAW, 1243 pub NS: DNS_PTR_DATAW, 1244 pub Ns: DNS_PTR_DATAW, 1245 pub CNAME: DNS_PTR_DATAW, 1246 pub Cname: DNS_PTR_DATAW, 1247 pub DNAME: DNS_PTR_DATAW, 1248 pub Dname: DNS_PTR_DATAW, 1249 pub MB: DNS_PTR_DATAW, 1250 pub Mb: DNS_PTR_DATAW, 1251 pub MD: DNS_PTR_DATAW, 1252 pub Md: DNS_PTR_DATAW, 1253 pub MF: DNS_PTR_DATAW, 1254 pub Mf: DNS_PTR_DATAW, 1255 pub MG: DNS_PTR_DATAW, 1256 pub Mg: DNS_PTR_DATAW, 1257 pub MR: DNS_PTR_DATAW, 1258 pub Mr: DNS_PTR_DATAW, 1259 pub MINFO: DNS_MINFO_DATAW, 1260 pub Minfo: DNS_MINFO_DATAW, 1261 pub RP: DNS_MINFO_DATAW, 1262 pub Rp: DNS_MINFO_DATAW, 1263 pub MX: DNS_MX_DATAW, 1264 pub Mx: DNS_MX_DATAW, 1265 pub AFSDB: DNS_MX_DATAW, 1266 pub Afsdb: DNS_MX_DATAW, 1267 pub RT: DNS_MX_DATAW, 1268 pub Rt: DNS_MX_DATAW, 1269 pub HINFO: DNS_TXT_DATAW, 1270 pub Hinfo: DNS_TXT_DATAW, 1271 pub ISDN: DNS_TXT_DATAW, 1272 pub Isdn: DNS_TXT_DATAW, 1273 pub TXT: DNS_TXT_DATAW, 1274 pub Txt: DNS_TXT_DATAW, 1275 pub X25: DNS_TXT_DATAW, 1276 pub Null: DNS_NULL_DATA, 1277 pub WKS: DNS_WKS_DATA, 1278 pub Wks: DNS_WKS_DATA, 1279 pub AAAA: DNS_AAAA_DATA, 1280 pub KEY: DNS_KEY_DATA, 1281 pub Key: DNS_KEY_DATA, 1282 pub SIG: DNS_SIG_DATAW, 1283 pub Sig: DNS_SIG_DATAW, 1284 pub ATMA: DNS_ATMA_DATA, 1285 pub Atma: DNS_ATMA_DATA, 1286 pub NXT: DNS_NXT_DATAW, 1287 pub Nxt: DNS_NXT_DATAW, 1288 pub SRV: DNS_SRV_DATAW, 1289 pub Srv: DNS_SRV_DATAW, 1290 pub NAPTR: DNS_NAPTR_DATAW, 1291 pub Naptr: DNS_NAPTR_DATAW, 1292 pub OPT: DNS_OPT_DATA, 1293 pub Opt: DNS_OPT_DATA, 1294 pub DS: DNS_DS_DATA, 1295 pub Ds: DNS_DS_DATA, 1296 pub RRSIG: DNS_SIG_DATAW, 1297 pub Rrsig: DNS_SIG_DATAW, 1298 pub NSEC: DNS_NSEC_DATAW, 1299 pub Nsec: DNS_NSEC_DATAW, 1300 pub DNSKEY: DNS_KEY_DATA, 1301 pub Dnskey: DNS_KEY_DATA, 1302 pub TKEY: DNS_TKEY_DATAW, 1303 pub Tkey: DNS_TKEY_DATAW, 1304 pub TSIG: DNS_TSIG_DATAW, 1305 pub Tsig: DNS_TSIG_DATAW, 1306 pub WINS: DNS_WINS_DATA, 1307 pub Wins: DNS_WINS_DATA, 1308 pub WINSR: DNS_WINSR_DATAW, 1309 pub WinsR: DNS_WINSR_DATAW, 1310 pub NBSTAT: DNS_WINSR_DATAW, 1311 pub Nbstat: DNS_WINSR_DATAW, 1312 pub DHCID: DNS_DHCID_DATA, 1313 pub NSEC3: DNS_NSEC3_DATA, 1314 pub Nsec3: DNS_NSEC3_DATA, 1315 pub NSEC3PARAM: DNS_NSEC3PARAM_DATA, 1316 pub Nsec3Param: DNS_NSEC3PARAM_DATA, 1317 pub TLSA: DNS_TLSA_DATA, 1318 pub Tlsa: DNS_TLSA_DATA, 1319 pub UNKNOWN: DNS_UNKNOWN_DATA, 1320 pub Unknown: DNS_UNKNOWN_DATA, 1321 pub pDataPtr: *mut u8, 1322 } 1323 #[cfg(feature = "Win32_Foundation")] 1324 impl ::core::marker::Copy for DNS_RECORDW_0 {} 1325 #[cfg(feature = "Win32_Foundation")] 1326 impl ::core::clone::Clone for DNS_RECORDW_0 { clone(&self) -> Self1327 fn clone(&self) -> Self { 1328 *self 1329 } 1330 } 1331 #[repr(C)] 1332 #[cfg(feature = "Win32_Foundation")] 1333 pub union DNS_RECORDW_1 { 1334 pub DW: u32, 1335 pub S: DNS_RECORD_FLAGS, 1336 } 1337 #[cfg(feature = "Win32_Foundation")] 1338 impl ::core::marker::Copy for DNS_RECORDW_1 {} 1339 #[cfg(feature = "Win32_Foundation")] 1340 impl ::core::clone::Clone for DNS_RECORDW_1 { clone(&self) -> Self1341 fn clone(&self) -> Self { 1342 *self 1343 } 1344 } 1345 #[repr(C)] 1346 pub struct DNS_RECORD_FLAGS { 1347 pub _bitfield: u32, 1348 } 1349 impl ::core::marker::Copy for DNS_RECORD_FLAGS {} 1350 impl ::core::clone::Clone for DNS_RECORD_FLAGS { clone(&self) -> Self1351 fn clone(&self) -> Self { 1352 *self 1353 } 1354 } 1355 pub const DNS_RFC_MAX_UDP_PACKET_LENGTH: u32 = 512u32; 1356 #[repr(C)] 1357 #[cfg(feature = "Win32_Foundation")] 1358 pub struct DNS_RRSET { 1359 pub pFirstRR: *mut DNS_RECORDA, 1360 pub pLastRR: *mut DNS_RECORDA, 1361 } 1362 #[cfg(feature = "Win32_Foundation")] 1363 impl ::core::marker::Copy for DNS_RRSET {} 1364 #[cfg(feature = "Win32_Foundation")] 1365 impl ::core::clone::Clone for DNS_RRSET { clone(&self) -> Self1366 fn clone(&self) -> Self { 1367 *self 1368 } 1369 } 1370 pub const DNS_RTYPE_A: u32 = 256u32; 1371 pub const DNS_RTYPE_A6: u32 = 9728u32; 1372 pub const DNS_RTYPE_AAAA: u32 = 7168u32; 1373 pub const DNS_RTYPE_AFSDB: u32 = 4608u32; 1374 pub const DNS_RTYPE_ALL: u32 = 65280u32; 1375 pub const DNS_RTYPE_ANY: u32 = 65280u32; 1376 pub const DNS_RTYPE_ATMA: u32 = 8704u32; 1377 pub const DNS_RTYPE_AXFR: u32 = 64512u32; 1378 pub const DNS_RTYPE_CERT: u32 = 9472u32; 1379 pub const DNS_RTYPE_CNAME: u32 = 1280u32; 1380 pub const DNS_RTYPE_DHCID: u32 = 12544u32; 1381 pub const DNS_RTYPE_DNAME: u32 = 9984u32; 1382 pub const DNS_RTYPE_DNSKEY: u32 = 12288u32; 1383 pub const DNS_RTYPE_DS: u32 = 11008u32; 1384 pub const DNS_RTYPE_EID: u32 = 7936u32; 1385 pub const DNS_RTYPE_GID: u32 = 26112u32; 1386 pub const DNS_RTYPE_GPOS: u32 = 6912u32; 1387 pub const DNS_RTYPE_HINFO: u32 = 3328u32; 1388 pub const DNS_RTYPE_ISDN: u32 = 5120u32; 1389 pub const DNS_RTYPE_IXFR: u32 = 64256u32; 1390 pub const DNS_RTYPE_KEY: u32 = 6400u32; 1391 pub const DNS_RTYPE_KX: u32 = 9216u32; 1392 pub const DNS_RTYPE_LOC: u32 = 7424u32; 1393 pub const DNS_RTYPE_MAILA: u32 = 65024u32; 1394 pub const DNS_RTYPE_MAILB: u32 = 64768u32; 1395 pub const DNS_RTYPE_MB: u32 = 1792u32; 1396 pub const DNS_RTYPE_MD: u32 = 768u32; 1397 pub const DNS_RTYPE_MF: u32 = 1024u32; 1398 pub const DNS_RTYPE_MG: u32 = 2048u32; 1399 pub const DNS_RTYPE_MINFO: u32 = 3584u32; 1400 pub const DNS_RTYPE_MR: u32 = 2304u32; 1401 pub const DNS_RTYPE_MX: u32 = 3840u32; 1402 pub const DNS_RTYPE_NAPTR: u32 = 8960u32; 1403 pub const DNS_RTYPE_NIMLOC: u32 = 8192u32; 1404 pub const DNS_RTYPE_NS: u32 = 512u32; 1405 pub const DNS_RTYPE_NSAP: u32 = 5632u32; 1406 pub const DNS_RTYPE_NSAPPTR: u32 = 5888u32; 1407 pub const DNS_RTYPE_NSEC: u32 = 12032u32; 1408 pub const DNS_RTYPE_NSEC3: u32 = 12800u32; 1409 pub const DNS_RTYPE_NSEC3PARAM: u32 = 13056u32; 1410 pub const DNS_RTYPE_NULL: u32 = 2560u32; 1411 pub const DNS_RTYPE_NXT: u32 = 7680u32; 1412 pub const DNS_RTYPE_OPT: u32 = 10496u32; 1413 pub const DNS_RTYPE_PTR: u32 = 3072u32; 1414 pub const DNS_RTYPE_PX: u32 = 6656u32; 1415 pub const DNS_RTYPE_RP: u32 = 4352u32; 1416 pub const DNS_RTYPE_RRSIG: u32 = 11776u32; 1417 pub const DNS_RTYPE_RT: u32 = 5376u32; 1418 pub const DNS_RTYPE_SIG: u32 = 6144u32; 1419 pub const DNS_RTYPE_SINK: u32 = 10240u32; 1420 pub const DNS_RTYPE_SOA: u32 = 1536u32; 1421 pub const DNS_RTYPE_SRV: u32 = 8448u32; 1422 pub const DNS_RTYPE_TEXT: u32 = 4096u32; 1423 pub const DNS_RTYPE_TKEY: u32 = 63744u32; 1424 pub const DNS_RTYPE_TLSA: u32 = 13312u32; 1425 pub const DNS_RTYPE_TSIG: u32 = 64000u32; 1426 pub const DNS_RTYPE_UID: u32 = 25856u32; 1427 pub const DNS_RTYPE_UINFO: u32 = 25600u32; 1428 pub const DNS_RTYPE_UNSPEC: u32 = 26368u32; 1429 pub const DNS_RTYPE_WINS: u32 = 511u32; 1430 pub const DNS_RTYPE_WINSR: u32 = 767u32; 1431 pub const DNS_RTYPE_WKS: u32 = 2816u32; 1432 pub const DNS_RTYPE_X25: u32 = 4864u32; 1433 pub type DNS_SECTION = i32; 1434 pub const DnsSectionQuestion: DNS_SECTION = 0i32; 1435 pub const DnsSectionAnswer: DNS_SECTION = 1i32; 1436 pub const DnsSectionAuthority: DNS_SECTION = 2i32; 1437 pub const DnsSectionAddtional: DNS_SECTION = 3i32; 1438 #[repr(C)] 1439 #[cfg(feature = "Win32_Foundation")] 1440 pub struct DNS_SERVICE_BROWSE_REQUEST { 1441 pub Version: u32, 1442 pub InterfaceIndex: u32, 1443 pub QueryName: super::super::Foundation::PWSTR, 1444 pub Anonymous: DNS_SERVICE_BROWSE_REQUEST_0, 1445 pub pQueryContext: *mut ::core::ffi::c_void, 1446 } 1447 #[cfg(feature = "Win32_Foundation")] 1448 impl ::core::marker::Copy for DNS_SERVICE_BROWSE_REQUEST {} 1449 #[cfg(feature = "Win32_Foundation")] 1450 impl ::core::clone::Clone for DNS_SERVICE_BROWSE_REQUEST { clone(&self) -> Self1451 fn clone(&self) -> Self { 1452 *self 1453 } 1454 } 1455 #[repr(C)] 1456 #[cfg(feature = "Win32_Foundation")] 1457 pub union DNS_SERVICE_BROWSE_REQUEST_0 { 1458 pub pBrowseCallback: PDNS_SERVICE_BROWSE_CALLBACK, 1459 pub pBrowseCallbackV2: PDNS_QUERY_COMPLETION_ROUTINE, 1460 } 1461 #[cfg(feature = "Win32_Foundation")] 1462 impl ::core::marker::Copy for DNS_SERVICE_BROWSE_REQUEST_0 {} 1463 #[cfg(feature = "Win32_Foundation")] 1464 impl ::core::clone::Clone for DNS_SERVICE_BROWSE_REQUEST_0 { clone(&self) -> Self1465 fn clone(&self) -> Self { 1466 *self 1467 } 1468 } 1469 #[repr(C)] 1470 pub struct DNS_SERVICE_CANCEL { 1471 pub reserved: *mut ::core::ffi::c_void, 1472 } 1473 impl ::core::marker::Copy for DNS_SERVICE_CANCEL {} 1474 impl ::core::clone::Clone for DNS_SERVICE_CANCEL { clone(&self) -> Self1475 fn clone(&self) -> Self { 1476 *self 1477 } 1478 } 1479 #[repr(C)] 1480 #[cfg(feature = "Win32_Foundation")] 1481 pub struct DNS_SERVICE_INSTANCE { 1482 pub pszInstanceName: super::super::Foundation::PWSTR, 1483 pub pszHostName: super::super::Foundation::PWSTR, 1484 pub ip4Address: *mut u32, 1485 pub ip6Address: *mut IP6_ADDRESS, 1486 pub wPort: u16, 1487 pub wPriority: u16, 1488 pub wWeight: u16, 1489 pub dwPropertyCount: u32, 1490 pub keys: *mut super::super::Foundation::PWSTR, 1491 pub values: *mut super::super::Foundation::PWSTR, 1492 pub dwInterfaceIndex: u32, 1493 } 1494 #[cfg(feature = "Win32_Foundation")] 1495 impl ::core::marker::Copy for DNS_SERVICE_INSTANCE {} 1496 #[cfg(feature = "Win32_Foundation")] 1497 impl ::core::clone::Clone for DNS_SERVICE_INSTANCE { clone(&self) -> Self1498 fn clone(&self) -> Self { 1499 *self 1500 } 1501 } 1502 #[repr(C)] 1503 #[cfg(feature = "Win32_Foundation")] 1504 pub struct DNS_SERVICE_REGISTER_REQUEST { 1505 pub Version: u32, 1506 pub InterfaceIndex: u32, 1507 pub pServiceInstance: *mut DNS_SERVICE_INSTANCE, 1508 pub pRegisterCompletionCallback: PDNS_SERVICE_REGISTER_COMPLETE, 1509 pub pQueryContext: *mut ::core::ffi::c_void, 1510 pub hCredentials: super::super::Foundation::HANDLE, 1511 pub unicastEnabled: super::super::Foundation::BOOL, 1512 } 1513 #[cfg(feature = "Win32_Foundation")] 1514 impl ::core::marker::Copy for DNS_SERVICE_REGISTER_REQUEST {} 1515 #[cfg(feature = "Win32_Foundation")] 1516 impl ::core::clone::Clone for DNS_SERVICE_REGISTER_REQUEST { clone(&self) -> Self1517 fn clone(&self) -> Self { 1518 *self 1519 } 1520 } 1521 #[repr(C)] 1522 #[cfg(feature = "Win32_Foundation")] 1523 pub struct DNS_SERVICE_RESOLVE_REQUEST { 1524 pub Version: u32, 1525 pub InterfaceIndex: u32, 1526 pub QueryName: super::super::Foundation::PWSTR, 1527 pub pResolveCompletionCallback: PDNS_SERVICE_RESOLVE_COMPLETE, 1528 pub pQueryContext: *mut ::core::ffi::c_void, 1529 } 1530 #[cfg(feature = "Win32_Foundation")] 1531 impl ::core::marker::Copy for DNS_SERVICE_RESOLVE_REQUEST {} 1532 #[cfg(feature = "Win32_Foundation")] 1533 impl ::core::clone::Clone for DNS_SERVICE_RESOLVE_REQUEST { clone(&self) -> Self1534 fn clone(&self) -> Self { 1535 *self 1536 } 1537 } 1538 #[repr(C)] 1539 #[cfg(feature = "Win32_Foundation")] 1540 pub struct DNS_SIG_DATAA { 1541 pub wTypeCovered: u16, 1542 pub chAlgorithm: u8, 1543 pub chLabelCount: u8, 1544 pub dwOriginalTtl: u32, 1545 pub dwExpiration: u32, 1546 pub dwTimeSigned: u32, 1547 pub wKeyTag: u16, 1548 pub wSignatureLength: u16, 1549 pub pNameSigner: super::super::Foundation::PSTR, 1550 pub Signature: [u8; 1], 1551 } 1552 #[cfg(feature = "Win32_Foundation")] 1553 impl ::core::marker::Copy for DNS_SIG_DATAA {} 1554 #[cfg(feature = "Win32_Foundation")] 1555 impl ::core::clone::Clone for DNS_SIG_DATAA { clone(&self) -> Self1556 fn clone(&self) -> Self { 1557 *self 1558 } 1559 } 1560 #[repr(C)] 1561 #[cfg(feature = "Win32_Foundation")] 1562 pub struct DNS_SIG_DATAW { 1563 pub wTypeCovered: u16, 1564 pub chAlgorithm: u8, 1565 pub chLabelCount: u8, 1566 pub dwOriginalTtl: u32, 1567 pub dwExpiration: u32, 1568 pub dwTimeSigned: u32, 1569 pub wKeyTag: u16, 1570 pub wSignatureLength: u16, 1571 pub pNameSigner: super::super::Foundation::PWSTR, 1572 pub Signature: [u8; 1], 1573 } 1574 #[cfg(feature = "Win32_Foundation")] 1575 impl ::core::marker::Copy for DNS_SIG_DATAW {} 1576 #[cfg(feature = "Win32_Foundation")] 1577 impl ::core::clone::Clone for DNS_SIG_DATAW { clone(&self) -> Self1578 fn clone(&self) -> Self { 1579 *self 1580 } 1581 } 1582 #[repr(C)] 1583 #[cfg(feature = "Win32_Foundation")] 1584 pub struct DNS_SOA_DATAA { 1585 pub pNamePrimaryServer: super::super::Foundation::PSTR, 1586 pub pNameAdministrator: super::super::Foundation::PSTR, 1587 pub dwSerialNo: u32, 1588 pub dwRefresh: u32, 1589 pub dwRetry: u32, 1590 pub dwExpire: u32, 1591 pub dwDefaultTtl: u32, 1592 } 1593 #[cfg(feature = "Win32_Foundation")] 1594 impl ::core::marker::Copy for DNS_SOA_DATAA {} 1595 #[cfg(feature = "Win32_Foundation")] 1596 impl ::core::clone::Clone for DNS_SOA_DATAA { clone(&self) -> Self1597 fn clone(&self) -> Self { 1598 *self 1599 } 1600 } 1601 #[repr(C)] 1602 #[cfg(feature = "Win32_Foundation")] 1603 pub struct DNS_SOA_DATAW { 1604 pub pNamePrimaryServer: super::super::Foundation::PWSTR, 1605 pub pNameAdministrator: super::super::Foundation::PWSTR, 1606 pub dwSerialNo: u32, 1607 pub dwRefresh: u32, 1608 pub dwRetry: u32, 1609 pub dwExpire: u32, 1610 pub dwDefaultTtl: u32, 1611 } 1612 #[cfg(feature = "Win32_Foundation")] 1613 impl ::core::marker::Copy for DNS_SOA_DATAW {} 1614 #[cfg(feature = "Win32_Foundation")] 1615 impl ::core::clone::Clone for DNS_SOA_DATAW { clone(&self) -> Self1616 fn clone(&self) -> Self { 1617 *self 1618 } 1619 } 1620 #[repr(C)] 1621 #[cfg(feature = "Win32_Foundation")] 1622 pub struct DNS_SRV_DATAA { 1623 pub pNameTarget: super::super::Foundation::PSTR, 1624 pub wPriority: u16, 1625 pub wWeight: u16, 1626 pub wPort: u16, 1627 pub Pad: u16, 1628 } 1629 #[cfg(feature = "Win32_Foundation")] 1630 impl ::core::marker::Copy for DNS_SRV_DATAA {} 1631 #[cfg(feature = "Win32_Foundation")] 1632 impl ::core::clone::Clone for DNS_SRV_DATAA { clone(&self) -> Self1633 fn clone(&self) -> Self { 1634 *self 1635 } 1636 } 1637 #[repr(C)] 1638 #[cfg(feature = "Win32_Foundation")] 1639 pub struct DNS_SRV_DATAW { 1640 pub pNameTarget: super::super::Foundation::PWSTR, 1641 pub wPriority: u16, 1642 pub wWeight: u16, 1643 pub wPort: u16, 1644 pub Pad: u16, 1645 } 1646 #[cfg(feature = "Win32_Foundation")] 1647 impl ::core::marker::Copy for DNS_SRV_DATAW {} 1648 #[cfg(feature = "Win32_Foundation")] 1649 impl ::core::clone::Clone for DNS_SRV_DATAW { clone(&self) -> Self1650 fn clone(&self) -> Self { 1651 *self 1652 } 1653 } 1654 #[repr(C)] 1655 #[cfg(feature = "Win32_Foundation")] 1656 pub struct DNS_TKEY_DATAA { 1657 pub pNameAlgorithm: super::super::Foundation::PSTR, 1658 pub pAlgorithmPacket: *mut u8, 1659 pub pKey: *mut u8, 1660 pub pOtherData: *mut u8, 1661 pub dwCreateTime: u32, 1662 pub dwExpireTime: u32, 1663 pub wMode: u16, 1664 pub wError: u16, 1665 pub wKeyLength: u16, 1666 pub wOtherLength: u16, 1667 pub cAlgNameLength: u8, 1668 pub bPacketPointers: super::super::Foundation::BOOL, 1669 } 1670 #[cfg(feature = "Win32_Foundation")] 1671 impl ::core::marker::Copy for DNS_TKEY_DATAA {} 1672 #[cfg(feature = "Win32_Foundation")] 1673 impl ::core::clone::Clone for DNS_TKEY_DATAA { clone(&self) -> Self1674 fn clone(&self) -> Self { 1675 *self 1676 } 1677 } 1678 #[repr(C)] 1679 #[cfg(feature = "Win32_Foundation")] 1680 pub struct DNS_TKEY_DATAW { 1681 pub pNameAlgorithm: super::super::Foundation::PWSTR, 1682 pub pAlgorithmPacket: *mut u8, 1683 pub pKey: *mut u8, 1684 pub pOtherData: *mut u8, 1685 pub dwCreateTime: u32, 1686 pub dwExpireTime: u32, 1687 pub wMode: u16, 1688 pub wError: u16, 1689 pub wKeyLength: u16, 1690 pub wOtherLength: u16, 1691 pub cAlgNameLength: u8, 1692 pub bPacketPointers: super::super::Foundation::BOOL, 1693 } 1694 #[cfg(feature = "Win32_Foundation")] 1695 impl ::core::marker::Copy for DNS_TKEY_DATAW {} 1696 #[cfg(feature = "Win32_Foundation")] 1697 impl ::core::clone::Clone for DNS_TKEY_DATAW { clone(&self) -> Self1698 fn clone(&self) -> Self { 1699 *self 1700 } 1701 } 1702 pub const DNS_TKEY_MODE_DIFFIE_HELLMAN: u32 = 2u32; 1703 pub const DNS_TKEY_MODE_GSS: u32 = 3u32; 1704 pub const DNS_TKEY_MODE_RESOLVER_ASSIGN: u32 = 4u32; 1705 pub const DNS_TKEY_MODE_SERVER_ASSIGN: u32 = 1u32; 1706 #[repr(C)] 1707 pub struct DNS_TLSA_DATA { 1708 pub bCertUsage: u8, 1709 pub bSelector: u8, 1710 pub bMatchingType: u8, 1711 pub bCertificateAssociationDataLength: u16, 1712 pub bPad: [u8; 3], 1713 pub bCertificateAssociationData: [u8; 1], 1714 } 1715 impl ::core::marker::Copy for DNS_TLSA_DATA {} 1716 impl ::core::clone::Clone for DNS_TLSA_DATA { clone(&self) -> Self1717 fn clone(&self) -> Self { 1718 *self 1719 } 1720 } 1721 #[repr(C)] 1722 #[cfg(feature = "Win32_Foundation")] 1723 pub struct DNS_TSIG_DATAA { 1724 pub pNameAlgorithm: super::super::Foundation::PSTR, 1725 pub pAlgorithmPacket: *mut u8, 1726 pub pSignature: *mut u8, 1727 pub pOtherData: *mut u8, 1728 pub i64CreateTime: i64, 1729 pub wFudgeTime: u16, 1730 pub wOriginalXid: u16, 1731 pub wError: u16, 1732 pub wSigLength: u16, 1733 pub wOtherLength: u16, 1734 pub cAlgNameLength: u8, 1735 pub bPacketPointers: super::super::Foundation::BOOL, 1736 } 1737 #[cfg(feature = "Win32_Foundation")] 1738 impl ::core::marker::Copy for DNS_TSIG_DATAA {} 1739 #[cfg(feature = "Win32_Foundation")] 1740 impl ::core::clone::Clone for DNS_TSIG_DATAA { clone(&self) -> Self1741 fn clone(&self) -> Self { 1742 *self 1743 } 1744 } 1745 #[repr(C)] 1746 #[cfg(feature = "Win32_Foundation")] 1747 pub struct DNS_TSIG_DATAW { 1748 pub pNameAlgorithm: super::super::Foundation::PWSTR, 1749 pub pAlgorithmPacket: *mut u8, 1750 pub pSignature: *mut u8, 1751 pub pOtherData: *mut u8, 1752 pub i64CreateTime: i64, 1753 pub wFudgeTime: u16, 1754 pub wOriginalXid: u16, 1755 pub wError: u16, 1756 pub wSigLength: u16, 1757 pub wOtherLength: u16, 1758 pub cAlgNameLength: u8, 1759 pub bPacketPointers: super::super::Foundation::BOOL, 1760 } 1761 #[cfg(feature = "Win32_Foundation")] 1762 impl ::core::marker::Copy for DNS_TSIG_DATAW {} 1763 #[cfg(feature = "Win32_Foundation")] 1764 impl ::core::clone::Clone for DNS_TSIG_DATAW { clone(&self) -> Self1765 fn clone(&self) -> Self { 1766 *self 1767 } 1768 } 1769 #[repr(C)] 1770 #[cfg(feature = "Win32_Foundation")] 1771 pub struct DNS_TXT_DATAA { 1772 pub dwStringCount: u32, 1773 pub pStringArray: [super::super::Foundation::PSTR; 1], 1774 } 1775 #[cfg(feature = "Win32_Foundation")] 1776 impl ::core::marker::Copy for DNS_TXT_DATAA {} 1777 #[cfg(feature = "Win32_Foundation")] 1778 impl ::core::clone::Clone for DNS_TXT_DATAA { clone(&self) -> Self1779 fn clone(&self) -> Self { 1780 *self 1781 } 1782 } 1783 #[repr(C)] 1784 #[cfg(feature = "Win32_Foundation")] 1785 pub struct DNS_TXT_DATAW { 1786 pub dwStringCount: u32, 1787 pub pStringArray: [super::super::Foundation::PWSTR; 1], 1788 } 1789 #[cfg(feature = "Win32_Foundation")] 1790 impl ::core::marker::Copy for DNS_TXT_DATAW {} 1791 #[cfg(feature = "Win32_Foundation")] 1792 impl ::core::clone::Clone for DNS_TXT_DATAW { clone(&self) -> Self1793 fn clone(&self) -> Self { 1794 *self 1795 } 1796 } 1797 pub const DNS_TYPE_A: u32 = 1u32; 1798 pub const DNS_TYPE_A6: u32 = 38u32; 1799 pub const DNS_TYPE_AAAA: u32 = 28u32; 1800 pub const DNS_TYPE_ADDRS: u32 = 248u32; 1801 pub const DNS_TYPE_AFSDB: u32 = 18u32; 1802 pub const DNS_TYPE_ALL: u32 = 255u32; 1803 pub const DNS_TYPE_ANY: u32 = 255u32; 1804 pub const DNS_TYPE_ATMA: u32 = 34u32; 1805 pub const DNS_TYPE_AXFR: u32 = 252u32; 1806 pub const DNS_TYPE_CERT: u32 = 37u32; 1807 pub const DNS_TYPE_CNAME: u32 = 5u32; 1808 pub const DNS_TYPE_DHCID: u32 = 49u32; 1809 pub const DNS_TYPE_DNAME: u32 = 39u32; 1810 pub const DNS_TYPE_DNSKEY: u32 = 48u32; 1811 pub const DNS_TYPE_DS: u32 = 43u32; 1812 pub const DNS_TYPE_EID: u32 = 31u32; 1813 pub const DNS_TYPE_GID: u32 = 102u32; 1814 pub const DNS_TYPE_GPOS: u32 = 27u32; 1815 pub const DNS_TYPE_HINFO: u32 = 13u32; 1816 pub const DNS_TYPE_ISDN: u32 = 20u32; 1817 pub const DNS_TYPE_IXFR: u32 = 251u32; 1818 pub const DNS_TYPE_KEY: u32 = 25u32; 1819 pub const DNS_TYPE_KX: u32 = 36u32; 1820 pub const DNS_TYPE_LOC: u32 = 29u32; 1821 pub const DNS_TYPE_MAILA: u32 = 254u32; 1822 pub const DNS_TYPE_MAILB: u32 = 253u32; 1823 pub const DNS_TYPE_MB: u32 = 7u32; 1824 pub const DNS_TYPE_MD: u32 = 3u32; 1825 pub const DNS_TYPE_MF: u32 = 4u32; 1826 pub const DNS_TYPE_MG: u32 = 8u32; 1827 pub const DNS_TYPE_MINFO: u32 = 14u32; 1828 pub const DNS_TYPE_MR: u32 = 9u32; 1829 pub const DNS_TYPE_MX: u32 = 15u32; 1830 pub const DNS_TYPE_NAPTR: u32 = 35u32; 1831 pub const DNS_TYPE_NBSTAT: u32 = 65282u32; 1832 pub const DNS_TYPE_NIMLOC: u32 = 32u32; 1833 pub const DNS_TYPE_NS: u32 = 2u32; 1834 pub const DNS_TYPE_NSAP: u32 = 22u32; 1835 pub const DNS_TYPE_NSAPPTR: u32 = 23u32; 1836 pub const DNS_TYPE_NSEC: u32 = 47u32; 1837 pub const DNS_TYPE_NSEC3: u32 = 50u32; 1838 pub const DNS_TYPE_NSEC3PARAM: u32 = 51u32; 1839 pub const DNS_TYPE_NULL: u32 = 10u32; 1840 pub const DNS_TYPE_NXT: u32 = 30u32; 1841 pub const DNS_TYPE_OPT: u32 = 41u32; 1842 pub const DNS_TYPE_PTR: u32 = 12u32; 1843 pub const DNS_TYPE_PX: u32 = 26u32; 1844 pub const DNS_TYPE_RP: u32 = 17u32; 1845 pub const DNS_TYPE_RRSIG: u32 = 46u32; 1846 pub const DNS_TYPE_RT: u32 = 21u32; 1847 pub const DNS_TYPE_SIG: u32 = 24u32; 1848 pub const DNS_TYPE_SINK: u32 = 40u32; 1849 pub const DNS_TYPE_SOA: u32 = 6u32; 1850 pub const DNS_TYPE_SRV: u32 = 33u32; 1851 pub const DNS_TYPE_TEXT: u32 = 16u32; 1852 pub const DNS_TYPE_TKEY: u32 = 249u32; 1853 pub const DNS_TYPE_TLSA: u32 = 52u32; 1854 pub const DNS_TYPE_TSIG: u32 = 250u32; 1855 pub const DNS_TYPE_UID: u32 = 101u32; 1856 pub const DNS_TYPE_UINFO: u32 = 100u32; 1857 pub const DNS_TYPE_UNSPEC: u32 = 103u32; 1858 pub const DNS_TYPE_WINS: u32 = 65281u32; 1859 pub const DNS_TYPE_WINSR: u32 = 65282u32; 1860 pub const DNS_TYPE_WKS: u32 = 11u32; 1861 pub const DNS_TYPE_X25: u32 = 19u32; 1862 pub const DNS_TYPE_ZERO: u32 = 0u32; 1863 #[repr(C)] 1864 pub struct DNS_UNKNOWN_DATA { 1865 pub dwByteCount: u32, 1866 pub bData: [u8; 1], 1867 } 1868 impl ::core::marker::Copy for DNS_UNKNOWN_DATA {} 1869 impl ::core::clone::Clone for DNS_UNKNOWN_DATA { clone(&self) -> Self1870 fn clone(&self) -> Self { 1871 *self 1872 } 1873 } 1874 pub const DNS_UPDATE_CACHE_SECURITY_CONTEXT: u32 = 512u32; 1875 pub const DNS_UPDATE_FORCE_SECURITY_NEGO: u32 = 2048u32; 1876 pub const DNS_UPDATE_REMOTE_SERVER: u32 = 16384u32; 1877 pub const DNS_UPDATE_RESERVED: u32 = 4294901760u32; 1878 pub const DNS_UPDATE_SECURITY_OFF: u32 = 16u32; 1879 pub const DNS_UPDATE_SECURITY_ON: u32 = 32u32; 1880 pub const DNS_UPDATE_SECURITY_ONLY: u32 = 256u32; 1881 pub const DNS_UPDATE_SECURITY_USE_DEFAULT: u32 = 0u32; 1882 pub const DNS_UPDATE_SKIP_NO_UPDATE_ADAPTERS: u32 = 8192u32; 1883 pub const DNS_UPDATE_TEST_USE_LOCAL_SYS_ACCT: u32 = 1024u32; 1884 pub const DNS_UPDATE_TRY_ALL_MASTER_SERVERS: u32 = 4096u32; 1885 pub const DNS_VALSVR_ERROR_INVALID_ADDR: u32 = 1u32; 1886 pub const DNS_VALSVR_ERROR_INVALID_NAME: u32 = 2u32; 1887 pub const DNS_VALSVR_ERROR_NO_AUTH: u32 = 5u32; 1888 pub const DNS_VALSVR_ERROR_NO_RESPONSE: u32 = 4u32; 1889 pub const DNS_VALSVR_ERROR_NO_TCP: u32 = 16u32; 1890 pub const DNS_VALSVR_ERROR_REFUSED: u32 = 6u32; 1891 pub const DNS_VALSVR_ERROR_UNKNOWN: u32 = 255u32; 1892 pub const DNS_VALSVR_ERROR_UNREACHABLE: u32 = 3u32; 1893 #[repr(C)] 1894 #[cfg(feature = "Win32_Foundation")] 1895 pub struct DNS_WINSR_DATAA { 1896 pub dwMappingFlag: u32, 1897 pub dwLookupTimeout: u32, 1898 pub dwCacheTimeout: u32, 1899 pub pNameResultDomain: super::super::Foundation::PSTR, 1900 } 1901 #[cfg(feature = "Win32_Foundation")] 1902 impl ::core::marker::Copy for DNS_WINSR_DATAA {} 1903 #[cfg(feature = "Win32_Foundation")] 1904 impl ::core::clone::Clone for DNS_WINSR_DATAA { clone(&self) -> Self1905 fn clone(&self) -> Self { 1906 *self 1907 } 1908 } 1909 #[repr(C)] 1910 #[cfg(feature = "Win32_Foundation")] 1911 pub struct DNS_WINSR_DATAW { 1912 pub dwMappingFlag: u32, 1913 pub dwLookupTimeout: u32, 1914 pub dwCacheTimeout: u32, 1915 pub pNameResultDomain: super::super::Foundation::PWSTR, 1916 } 1917 #[cfg(feature = "Win32_Foundation")] 1918 impl ::core::marker::Copy for DNS_WINSR_DATAW {} 1919 #[cfg(feature = "Win32_Foundation")] 1920 impl ::core::clone::Clone for DNS_WINSR_DATAW { clone(&self) -> Self1921 fn clone(&self) -> Self { 1922 *self 1923 } 1924 } 1925 #[repr(C)] 1926 pub struct DNS_WINS_DATA { 1927 pub dwMappingFlag: u32, 1928 pub dwLookupTimeout: u32, 1929 pub dwCacheTimeout: u32, 1930 pub cWinsServerCount: u32, 1931 pub WinsServers: [u32; 1], 1932 } 1933 impl ::core::marker::Copy for DNS_WINS_DATA {} 1934 impl ::core::clone::Clone for DNS_WINS_DATA { clone(&self) -> Self1935 fn clone(&self) -> Self { 1936 *self 1937 } 1938 } 1939 pub const DNS_WINS_FLAG_LOCAL: u32 = 65536u32; 1940 pub const DNS_WINS_FLAG_SCOPE: u32 = 2147483648u32; 1941 #[repr(C, packed(1))] 1942 pub struct DNS_WIRE_QUESTION { 1943 pub QuestionType: u16, 1944 pub QuestionClass: u16, 1945 } 1946 impl ::core::marker::Copy for DNS_WIRE_QUESTION {} 1947 impl ::core::clone::Clone for DNS_WIRE_QUESTION { clone(&self) -> Self1948 fn clone(&self) -> Self { 1949 *self 1950 } 1951 } 1952 #[repr(C, packed(1))] 1953 pub struct DNS_WIRE_RECORD { 1954 pub RecordType: u16, 1955 pub RecordClass: u16, 1956 pub TimeToLive: u32, 1957 pub DataLength: u16, 1958 } 1959 impl ::core::marker::Copy for DNS_WIRE_RECORD {} 1960 impl ::core::clone::Clone for DNS_WIRE_RECORD { clone(&self) -> Self1961 fn clone(&self) -> Self { 1962 *self 1963 } 1964 } 1965 #[repr(C)] 1966 pub struct DNS_WKS_DATA { 1967 pub IpAddress: u32, 1968 pub chProtocol: u8, 1969 pub BitMask: [u8; 1], 1970 } 1971 impl ::core::marker::Copy for DNS_WKS_DATA {} 1972 impl ::core::clone::Clone for DNS_WKS_DATA { clone(&self) -> Self1973 fn clone(&self) -> Self { 1974 *self 1975 } 1976 } 1977 pub type DnsContextHandle = isize; 1978 pub const IP4_ADDRESS_STRING_BUFFER_LENGTH: u32 = 16u32; 1979 pub const IP4_ADDRESS_STRING_LENGTH: u32 = 16u32; 1980 #[repr(C)] 1981 pub struct IP4_ARRAY { 1982 pub AddrCount: u32, 1983 pub AddrArray: [u32; 1], 1984 } 1985 impl ::core::marker::Copy for IP4_ARRAY {} 1986 impl ::core::clone::Clone for IP4_ARRAY { clone(&self) -> Self1987 fn clone(&self) -> Self { 1988 *self 1989 } 1990 } 1991 #[repr(C)] 1992 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1993 pub union IP6_ADDRESS { 1994 pub IP6Qword: [u64; 2], 1995 pub IP6Dword: [u32; 4], 1996 pub IP6Word: [u16; 8], 1997 pub IP6Byte: [u8; 16], 1998 } 1999 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 2000 impl ::core::marker::Copy for IP6_ADDRESS {} 2001 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 2002 impl ::core::clone::Clone for IP6_ADDRESS { clone(&self) -> Self2003 fn clone(&self) -> Self { 2004 *self 2005 } 2006 } 2007 #[repr(C)] 2008 #[cfg(any(target_arch = "x86",))] 2009 pub union IP6_ADDRESS { 2010 pub IP6Dword: [u32; 4], 2011 pub IP6Word: [u16; 8], 2012 pub IP6Byte: [u8; 16], 2013 } 2014 #[cfg(any(target_arch = "x86",))] 2015 impl ::core::marker::Copy for IP6_ADDRESS {} 2016 #[cfg(any(target_arch = "x86",))] 2017 impl ::core::clone::Clone for IP6_ADDRESS { clone(&self) -> Self2018 fn clone(&self) -> Self { 2019 *self 2020 } 2021 } 2022 pub const IP6_ADDRESS_STRING_BUFFER_LENGTH: u32 = 65u32; 2023 pub const IP6_ADDRESS_STRING_LENGTH: u32 = 65u32; 2024 #[repr(C)] 2025 pub struct MDNS_QUERY_HANDLE { 2026 pub nameBuf: [u16; 256], 2027 pub wType: u16, 2028 pub pSubscription: *mut ::core::ffi::c_void, 2029 pub pWnfCallbackParams: *mut ::core::ffi::c_void, 2030 pub stateNameData: [u32; 2], 2031 } 2032 impl ::core::marker::Copy for MDNS_QUERY_HANDLE {} 2033 impl ::core::clone::Clone for MDNS_QUERY_HANDLE { clone(&self) -> Self2034 fn clone(&self) -> Self { 2035 *self 2036 } 2037 } 2038 #[repr(C)] 2039 #[cfg(feature = "Win32_Foundation")] 2040 pub struct MDNS_QUERY_REQUEST { 2041 pub Version: u32, 2042 pub ulRefCount: u32, 2043 pub Query: super::super::Foundation::PWSTR, 2044 pub QueryType: u16, 2045 pub QueryOptions: u64, 2046 pub InterfaceIndex: u32, 2047 pub pQueryCallback: PMDNS_QUERY_CALLBACK, 2048 pub pQueryContext: *mut ::core::ffi::c_void, 2049 pub fAnswerReceived: super::super::Foundation::BOOL, 2050 pub ulResendCount: u32, 2051 } 2052 #[cfg(feature = "Win32_Foundation")] 2053 impl ::core::marker::Copy for MDNS_QUERY_REQUEST {} 2054 #[cfg(feature = "Win32_Foundation")] 2055 impl ::core::clone::Clone for MDNS_QUERY_REQUEST { clone(&self) -> Self2056 fn clone(&self) -> Self { 2057 *self 2058 } 2059 } 2060 #[cfg(feature = "Win32_Foundation")] 2061 pub type PDNS_QUERY_COMPLETION_ROUTINE = unsafe extern "system" fn(pquerycontext: *const ::core::ffi::c_void, pqueryresults: *mut DNS_QUERY_RESULT); 2062 #[cfg(feature = "Win32_Foundation")] 2063 pub type PDNS_SERVICE_BROWSE_CALLBACK = unsafe extern "system" fn(status: u32, pquerycontext: *const ::core::ffi::c_void, pdnsrecord: *const DNS_RECORDA); 2064 #[cfg(feature = "Win32_Foundation")] 2065 pub type PDNS_SERVICE_REGISTER_COMPLETE = unsafe extern "system" fn(status: u32, pquerycontext: *const ::core::ffi::c_void, pinstance: *const DNS_SERVICE_INSTANCE); 2066 #[cfg(feature = "Win32_Foundation")] 2067 pub type PDNS_SERVICE_RESOLVE_COMPLETE = unsafe extern "system" fn(status: u32, pquerycontext: *const ::core::ffi::c_void, pinstance: *const DNS_SERVICE_INSTANCE); 2068 #[cfg(feature = "Win32_Foundation")] 2069 pub type PMDNS_QUERY_CALLBACK = unsafe extern "system" fn(pquerycontext: *const ::core::ffi::c_void, pqueryhandle: *mut MDNS_QUERY_HANDLE, pqueryresults: *mut DNS_QUERY_RESULT); 2070 pub const SIZEOF_IP4_ADDRESS: u32 = 4u32; 2071 #[repr(C)] 2072 #[cfg(feature = "Win32_Foundation")] 2073 pub struct _DnsRecordOptA { 2074 pub pNext: *mut DNS_RECORDA, 2075 pub pName: super::super::Foundation::PSTR, 2076 pub wType: u16, 2077 pub wDataLength: u16, 2078 pub Flags: _DnsRecordOptA_1, 2079 pub ExtHeader: DNS_HEADER_EXT, 2080 pub wPayloadSize: u16, 2081 pub wReserved: u16, 2082 pub Data: _DnsRecordOptA_0, 2083 } 2084 #[cfg(feature = "Win32_Foundation")] 2085 impl ::core::marker::Copy for _DnsRecordOptA {} 2086 #[cfg(feature = "Win32_Foundation")] 2087 impl ::core::clone::Clone for _DnsRecordOptA { clone(&self) -> Self2088 fn clone(&self) -> Self { 2089 *self 2090 } 2091 } 2092 #[repr(C)] 2093 #[cfg(feature = "Win32_Foundation")] 2094 pub union _DnsRecordOptA_0 { 2095 pub OPT: DNS_OPT_DATA, 2096 pub Opt: DNS_OPT_DATA, 2097 } 2098 #[cfg(feature = "Win32_Foundation")] 2099 impl ::core::marker::Copy for _DnsRecordOptA_0 {} 2100 #[cfg(feature = "Win32_Foundation")] 2101 impl ::core::clone::Clone for _DnsRecordOptA_0 { clone(&self) -> Self2102 fn clone(&self) -> Self { 2103 *self 2104 } 2105 } 2106 #[repr(C)] 2107 #[cfg(feature = "Win32_Foundation")] 2108 pub union _DnsRecordOptA_1 { 2109 pub DW: u32, 2110 pub S: DNS_RECORD_FLAGS, 2111 } 2112 #[cfg(feature = "Win32_Foundation")] 2113 impl ::core::marker::Copy for _DnsRecordOptA_1 {} 2114 #[cfg(feature = "Win32_Foundation")] 2115 impl ::core::clone::Clone for _DnsRecordOptA_1 { clone(&self) -> Self2116 fn clone(&self) -> Self { 2117 *self 2118 } 2119 } 2120 #[repr(C)] 2121 #[cfg(feature = "Win32_Foundation")] 2122 pub struct _DnsRecordOptW { 2123 pub pNext: *mut DNS_RECORDW, 2124 pub pName: super::super::Foundation::PWSTR, 2125 pub wType: u16, 2126 pub wDataLength: u16, 2127 pub Flags: _DnsRecordOptW_1, 2128 pub ExtHeader: DNS_HEADER_EXT, 2129 pub wPayloadSize: u16, 2130 pub wReserved: u16, 2131 pub Data: _DnsRecordOptW_0, 2132 } 2133 #[cfg(feature = "Win32_Foundation")] 2134 impl ::core::marker::Copy for _DnsRecordOptW {} 2135 #[cfg(feature = "Win32_Foundation")] 2136 impl ::core::clone::Clone for _DnsRecordOptW { clone(&self) -> Self2137 fn clone(&self) -> Self { 2138 *self 2139 } 2140 } 2141 #[repr(C)] 2142 #[cfg(feature = "Win32_Foundation")] 2143 pub union _DnsRecordOptW_0 { 2144 pub OPT: DNS_OPT_DATA, 2145 pub Opt: DNS_OPT_DATA, 2146 } 2147 #[cfg(feature = "Win32_Foundation")] 2148 impl ::core::marker::Copy for _DnsRecordOptW_0 {} 2149 #[cfg(feature = "Win32_Foundation")] 2150 impl ::core::clone::Clone for _DnsRecordOptW_0 { clone(&self) -> Self2151 fn clone(&self) -> Self { 2152 *self 2153 } 2154 } 2155 #[repr(C)] 2156 #[cfg(feature = "Win32_Foundation")] 2157 pub union _DnsRecordOptW_1 { 2158 pub DW: u32, 2159 pub S: DNS_RECORD_FLAGS, 2160 } 2161 #[cfg(feature = "Win32_Foundation")] 2162 impl ::core::marker::Copy for _DnsRecordOptW_1 {} 2163 #[cfg(feature = "Win32_Foundation")] 2164 impl ::core::clone::Clone for _DnsRecordOptW_1 { clone(&self) -> Self2165 fn clone(&self) -> Self { 2166 *self 2167 } 2168 } 2169