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" { 4 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmCalloutAdd0(enginehandle: super::super::Foundation::HANDLE, callout: *const FWPM_CALLOUT0, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u32) -> u325 pub fn FwpmCalloutAdd0(enginehandle: super::super::Foundation::HANDLE, callout: *const FWPM_CALLOUT0, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u32) -> u32; 6 #[cfg(feature = "Win32_Foundation")] FwpmCalloutCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_CALLOUT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u327 pub fn FwpmCalloutCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_CALLOUT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 8 #[cfg(feature = "Win32_Foundation")] FwpmCalloutDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u32) -> u329 pub fn FwpmCalloutDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u32) -> u32; 10 #[cfg(feature = "Win32_Foundation")] FwpmCalloutDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u3211 pub fn FwpmCalloutDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32; 12 #[cfg(feature = "Win32_Foundation")] FwpmCalloutDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u3213 pub fn FwpmCalloutDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 14 #[cfg(feature = "Win32_Foundation")] FwpmCalloutEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_CALLOUT0, numentriesreturned: *mut u32) -> u3215 pub fn FwpmCalloutEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_CALLOUT0, numentriesreturned: *mut u32) -> u32; 16 #[cfg(feature = "Win32_Foundation")] FwpmCalloutGetById0(enginehandle: super::super::Foundation::HANDLE, id: u32, callout: *mut *mut FWPM_CALLOUT0) -> u3217 pub fn FwpmCalloutGetById0(enginehandle: super::super::Foundation::HANDLE, id: u32, callout: *mut *mut FWPM_CALLOUT0) -> u32; 18 #[cfg(feature = "Win32_Foundation")] FwpmCalloutGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, callout: *mut *mut FWPM_CALLOUT0) -> u3219 pub fn FwpmCalloutGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, callout: *mut *mut FWPM_CALLOUT0) -> u32; 20 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmCalloutGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u3221 pub fn FwpmCalloutGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 22 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmCalloutSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u3223 pub fn FwpmCalloutSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 24 #[cfg(feature = "Win32_Foundation")] FwpmCalloutSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_CALLOUT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_CALLOUT_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u3225 pub fn FwpmCalloutSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_CALLOUT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_CALLOUT_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32; 26 #[cfg(feature = "Win32_Foundation")] FwpmCalloutSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_CALLOUT_SUBSCRIPTION0, numentries: *mut u32) -> u3227 pub fn FwpmCalloutSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_CALLOUT_SUBSCRIPTION0, numentries: *mut u32) -> u32; 28 #[cfg(feature = "Win32_Foundation")] FwpmCalloutUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u3229 pub fn FwpmCalloutUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32; 30 #[cfg(feature = "Win32_Foundation")] FwpmConnectionCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_CONNECTION_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u3231 pub fn FwpmConnectionCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_CONNECTION_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 32 #[cfg(feature = "Win32_Foundation")] FwpmConnectionDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u3233 pub fn FwpmConnectionDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 34 #[cfg(feature = "Win32_Foundation")] FwpmConnectionEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_CONNECTION0, numentriesreturned: *mut u32) -> u3235 pub fn FwpmConnectionEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_CONNECTION0, numentriesreturned: *mut u32) -> u32; 36 #[cfg(feature = "Win32_Foundation")] FwpmConnectionGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, connection: *mut *mut FWPM_CONNECTION0) -> u3237 pub fn FwpmConnectionGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, connection: *mut *mut FWPM_CONNECTION0) -> u32; 38 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmConnectionGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u3239 pub fn FwpmConnectionGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 40 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmConnectionSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u3241 pub fn FwpmConnectionSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 42 #[cfg(feature = "Win32_Foundation")] FwpmConnectionSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_CONNECTION_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_CONNECTION_CALLBACK0>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u3243 pub fn FwpmConnectionSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_CONNECTION_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_CONNECTION_CALLBACK0>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 44 #[cfg(feature = "Win32_Foundation")] FwpmConnectionUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, eventshandle: super::super::Foundation::HANDLE) -> u3245 pub fn FwpmConnectionUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, eventshandle: super::super::Foundation::HANDLE) -> u32; 46 #[cfg(feature = "Win32_Foundation")] FwpmDynamicKeywordSubscribe0(flags: u32, callback: ::core::option::Option<FWPM_DYNAMIC_KEYWORD_CALLBACK0>, context: *const ::core::ffi::c_void, subscriptionhandle: *mut super::super::Foundation::HANDLE) -> u3247 pub fn FwpmDynamicKeywordSubscribe0(flags: u32, callback: ::core::option::Option<FWPM_DYNAMIC_KEYWORD_CALLBACK0>, context: *const ::core::ffi::c_void, subscriptionhandle: *mut super::super::Foundation::HANDLE) -> u32; 48 #[cfg(feature = "Win32_Foundation")] FwpmDynamicKeywordUnsubscribe0(subscriptionhandle: super::super::Foundation::HANDLE) -> u3249 pub fn FwpmDynamicKeywordUnsubscribe0(subscriptionhandle: super::super::Foundation::HANDLE) -> u32; 50 #[cfg(feature = "Win32_Foundation")] FwpmEngineClose0(enginehandle: super::super::Foundation::HANDLE) -> u3251 pub fn FwpmEngineClose0(enginehandle: super::super::Foundation::HANDLE) -> u32; 52 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmEngineGetOption0(enginehandle: super::super::Foundation::HANDLE, option: FWPM_ENGINE_OPTION, value: *mut *mut FWP_VALUE0) -> u3253 pub fn FwpmEngineGetOption0(enginehandle: super::super::Foundation::HANDLE, option: FWPM_ENGINE_OPTION, value: *mut *mut FWP_VALUE0) -> u32; 54 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmEngineGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u3255 pub fn FwpmEngineGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 56 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security", feature = "Win32_System_Rpc"))] FwpmEngineOpen0(servername: super::super::Foundation::PWSTR, authnservice: u32, authidentity: *const super::super::System::Rpc::SEC_WINNT_AUTH_IDENTITY_W, session: *const FWPM_SESSION0, enginehandle: *mut super::super::Foundation::HANDLE) -> u3257 pub fn FwpmEngineOpen0(servername: super::super::Foundation::PWSTR, authnservice: u32, authidentity: *const super::super::System::Rpc::SEC_WINNT_AUTH_IDENTITY_W, session: *const FWPM_SESSION0, enginehandle: *mut super::super::Foundation::HANDLE) -> u32; 58 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmEngineSetOption0(enginehandle: super::super::Foundation::HANDLE, option: FWPM_ENGINE_OPTION, newvalue: *const FWP_VALUE0) -> u3259 pub fn FwpmEngineSetOption0(enginehandle: super::super::Foundation::HANDLE, option: FWPM_ENGINE_OPTION, newvalue: *const FWP_VALUE0) -> u32; 60 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmEngineSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u3261 pub fn FwpmEngineSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 62 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterAdd0(enginehandle: super::super::Foundation::HANDLE, filter: *const FWPM_FILTER0, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u3263 pub fn FwpmFilterAdd0(enginehandle: super::super::Foundation::HANDLE, filter: *const FWPM_FILTER0, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32; 64 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_FILTER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u3265 pub fn FwpmFilterCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_FILTER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 66 #[cfg(feature = "Win32_Foundation")] FwpmFilterDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u3267 pub fn FwpmFilterDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32; 68 #[cfg(feature = "Win32_Foundation")] FwpmFilterDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u3269 pub fn FwpmFilterDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32; 70 #[cfg(feature = "Win32_Foundation")] FwpmFilterDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u3271 pub fn FwpmFilterDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 72 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_FILTER0, numentriesreturned: *mut u32) -> u3273 pub fn FwpmFilterEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_FILTER0, numentriesreturned: *mut u32) -> u32; 74 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, filter: *mut *mut FWPM_FILTER0) -> u3275 pub fn FwpmFilterGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, filter: *mut *mut FWPM_FILTER0) -> u32; 76 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, filter: *mut *mut FWPM_FILTER0) -> u3277 pub fn FwpmFilterGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, filter: *mut *mut FWPM_FILTER0) -> u32; 78 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u3279 pub fn FwpmFilterGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 80 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u3281 pub fn FwpmFilterSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 82 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_FILTER_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_FILTER_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u3283 pub fn FwpmFilterSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_FILTER_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_FILTER_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32; 84 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmFilterSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_FILTER_SUBSCRIPTION0, numentries: *mut u32) -> u3285 pub fn FwpmFilterSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_FILTER_SUBSCRIPTION0, numentries: *mut u32) -> u32; 86 #[cfg(feature = "Win32_Foundation")] FwpmFilterUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u3287 pub fn FwpmFilterUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32; FwpmFreeMemory0(p: *mut *mut ::core::ffi::c_void)88 pub fn FwpmFreeMemory0(p: *mut *mut ::core::ffi::c_void); 89 #[cfg(feature = "Win32_Foundation")] FwpmGetAppIdFromFileName0(filename: super::super::Foundation::PWSTR, appid: *mut *mut FWP_BYTE_BLOB) -> u3290 pub fn FwpmGetAppIdFromFileName0(filename: super::super::Foundation::PWSTR, appid: *mut *mut FWP_BYTE_BLOB) -> u32; 91 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmIPsecTunnelAdd0(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT0, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT0, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u3292 pub fn FwpmIPsecTunnelAdd0(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT0, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT0, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32; 93 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmIPsecTunnelAdd1(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT1, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT1, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, keymodkey: *const ::windows_sys::core::GUID, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u3294 pub fn FwpmIPsecTunnelAdd1(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT1, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT1, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, keymodkey: *const ::windows_sys::core::GUID, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32; 95 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmIPsecTunnelAdd2(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT2, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT2, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, keymodkey: *const ::windows_sys::core::GUID, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u3296 pub fn FwpmIPsecTunnelAdd2(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT2, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT2, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, keymodkey: *const ::windows_sys::core::GUID, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32; 97 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmIPsecTunnelAdd3(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT3_, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT3_, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, keymodkey: *const ::windows_sys::core::GUID, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u3298 pub fn FwpmIPsecTunnelAdd3(enginehandle: super::super::Foundation::HANDLE, flags: u32, mainmodepolicy: *const FWPM_PROVIDER_CONTEXT3_, tunnelpolicy: *const FWPM_PROVIDER_CONTEXT3_, numfilterconditions: u32, filterconditions: *const FWPM_FILTER_CONDITION0, keymodkey: *const ::windows_sys::core::GUID, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32; 99 #[cfg(feature = "Win32_Foundation")] FwpmIPsecTunnelDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32100 pub fn FwpmIPsecTunnelDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32; 101 #[cfg(feature = "Win32_Foundation")] FwpmLayerCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_LAYER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32102 pub fn FwpmLayerCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_LAYER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 103 #[cfg(feature = "Win32_Foundation")] FwpmLayerDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32104 pub fn FwpmLayerDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 105 #[cfg(feature = "Win32_Foundation")] FwpmLayerEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_LAYER0, numentriesreturned: *mut u32) -> u32106 pub fn FwpmLayerEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_LAYER0, numentriesreturned: *mut u32) -> u32; 107 #[cfg(feature = "Win32_Foundation")] FwpmLayerGetById0(enginehandle: super::super::Foundation::HANDLE, id: u16, layer: *mut *mut FWPM_LAYER0) -> u32108 pub fn FwpmLayerGetById0(enginehandle: super::super::Foundation::HANDLE, id: u16, layer: *mut *mut FWPM_LAYER0) -> u32; 109 #[cfg(feature = "Win32_Foundation")] FwpmLayerGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, layer: *mut *mut FWPM_LAYER0) -> u32110 pub fn FwpmLayerGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, layer: *mut *mut FWPM_LAYER0) -> u32; 111 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmLayerGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32112 pub fn FwpmLayerGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 113 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmLayerSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32114 pub fn FwpmLayerSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 115 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_NET_EVENT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32116 pub fn FwpmNetEventCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_NET_EVENT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 117 #[cfg(feature = "Win32_Foundation")] FwpmNetEventDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32118 pub fn FwpmNetEventDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 119 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT0, numentriesreturned: *mut u32) -> u32120 pub fn FwpmNetEventEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT0, numentriesreturned: *mut u32) -> u32; 121 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT1, numentriesreturned: *mut u32) -> u32122 pub fn FwpmNetEventEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT1, numentriesreturned: *mut u32) -> u32; 123 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventEnum2(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT2, numentriesreturned: *mut u32) -> u32124 pub fn FwpmNetEventEnum2(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT2, numentriesreturned: *mut u32) -> u32; 125 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventEnum3(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT3, numentriesreturned: *mut u32) -> u32126 pub fn FwpmNetEventEnum3(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT3, numentriesreturned: *mut u32) -> u32; 127 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventEnum4(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT4_, numentriesreturned: *mut u32) -> u32128 pub fn FwpmNetEventEnum4(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT4_, numentriesreturned: *mut u32) -> u32; 129 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventEnum5(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT5_, numentriesreturned: *mut u32) -> u32130 pub fn FwpmNetEventEnum5(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_NET_EVENT5_, numentriesreturned: *mut u32) -> u32; 131 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK0>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32132 pub fn FwpmNetEventSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK0>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 133 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventSubscribe1(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK1>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32134 pub fn FwpmNetEventSubscribe1(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK1>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 135 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventSubscribe2(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK2>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32136 pub fn FwpmNetEventSubscribe2(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK2>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 137 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventSubscribe3(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK3>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32138 pub fn FwpmNetEventSubscribe3(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK3>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 139 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventSubscribe4(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK4>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32140 pub fn FwpmNetEventSubscribe4(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_NET_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_NET_EVENT_CALLBACK4>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 141 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_NET_EVENT_SUBSCRIPTION0, numentries: *mut u32) -> u32142 pub fn FwpmNetEventSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_NET_EVENT_SUBSCRIPTION0, numentries: *mut u32) -> u32; 143 #[cfg(feature = "Win32_Foundation")] FwpmNetEventUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, eventshandle: super::super::Foundation::HANDLE) -> u32144 pub fn FwpmNetEventUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, eventshandle: super::super::Foundation::HANDLE) -> u32; 145 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventsGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32146 pub fn FwpmNetEventsGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 147 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmNetEventsSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32148 pub fn FwpmNetEventsSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 149 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderAdd0(enginehandle: super::super::Foundation::HANDLE, provider: *const FWPM_PROVIDER0, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32150 pub fn FwpmProviderAdd0(enginehandle: super::super::Foundation::HANDLE, provider: *const FWPM_PROVIDER0, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32; 151 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextAdd0(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT0, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32152 pub fn FwpmProviderContextAdd0(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT0, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32; 153 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextAdd1(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT1, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32154 pub fn FwpmProviderContextAdd1(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT1, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32; 155 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextAdd2(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT2, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32156 pub fn FwpmProviderContextAdd2(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT2, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32; 157 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextAdd3(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT3_, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32158 pub fn FwpmProviderContextAdd3(enginehandle: super::super::Foundation::HANDLE, providercontext: *const FWPM_PROVIDER_CONTEXT3_, sd: *const super::super::Security::SECURITY_DESCRIPTOR, id: *mut u64) -> u32; 159 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32160 pub fn FwpmProviderContextCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 161 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32162 pub fn FwpmProviderContextDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32; 163 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32164 pub fn FwpmProviderContextDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32; 165 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32166 pub fn FwpmProviderContextDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 167 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT0, numentriesreturned: *mut u32) -> u32168 pub fn FwpmProviderContextEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT0, numentriesreturned: *mut u32) -> u32; 169 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT1, numentriesreturned: *mut u32) -> u32170 pub fn FwpmProviderContextEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT1, numentriesreturned: *mut u32) -> u32; 171 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextEnum2(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT2, numentriesreturned: *mut u32) -> u32172 pub fn FwpmProviderContextEnum2(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT2, numentriesreturned: *mut u32) -> u32; 173 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextEnum3(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT3_, numentriesreturned: *mut u32) -> u32174 pub fn FwpmProviderContextEnum3(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT3_, numentriesreturned: *mut u32) -> u32; 175 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT0) -> u32176 pub fn FwpmProviderContextGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT0) -> u32; 177 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetById1(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT1) -> u32178 pub fn FwpmProviderContextGetById1(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT1) -> u32; 179 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetById2(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT2) -> u32180 pub fn FwpmProviderContextGetById2(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT2) -> u32; 181 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetById3(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT3_) -> u32182 pub fn FwpmProviderContextGetById3(enginehandle: super::super::Foundation::HANDLE, id: u64, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT3_) -> u32; 183 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT0) -> u32184 pub fn FwpmProviderContextGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT0) -> u32; 185 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetByKey1(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT1) -> u32186 pub fn FwpmProviderContextGetByKey1(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT1) -> u32; 187 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetByKey2(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT2) -> u32188 pub fn FwpmProviderContextGetByKey2(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT2) -> u32; 189 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetByKey3(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT3_) -> u32190 pub fn FwpmProviderContextGetByKey3(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, providercontext: *mut *mut FWPM_PROVIDER_CONTEXT3_) -> u32; 191 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32192 pub fn FwpmProviderContextGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 193 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderContextSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32194 pub fn FwpmProviderContextSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 195 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_PROVIDER_CONTEXT_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32196 pub fn FwpmProviderContextSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_PROVIDER_CONTEXT_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32; 197 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0, numentries: *mut u32) -> u32198 pub fn FwpmProviderContextSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0, numentries: *mut u32) -> u32; 199 #[cfg(feature = "Win32_Foundation")] FwpmProviderContextUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32200 pub fn FwpmProviderContextUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32; 201 #[cfg(feature = "Win32_Foundation")] FwpmProviderCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_PROVIDER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32202 pub fn FwpmProviderCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_PROVIDER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 203 #[cfg(feature = "Win32_Foundation")] FwpmProviderDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32204 pub fn FwpmProviderDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32; 205 #[cfg(feature = "Win32_Foundation")] FwpmProviderDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32206 pub fn FwpmProviderDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 207 #[cfg(feature = "Win32_Foundation")] FwpmProviderEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER0, numentriesreturned: *mut u32) -> u32208 pub fn FwpmProviderEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_PROVIDER0, numentriesreturned: *mut u32) -> u32; 209 #[cfg(feature = "Win32_Foundation")] FwpmProviderGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, provider: *mut *mut FWPM_PROVIDER0) -> u32210 pub fn FwpmProviderGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, provider: *mut *mut FWPM_PROVIDER0) -> u32; 211 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32212 pub fn FwpmProviderGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 213 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmProviderSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32214 pub fn FwpmProviderSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 215 #[cfg(feature = "Win32_Foundation")] FwpmProviderSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_PROVIDER_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_PROVIDER_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32216 pub fn FwpmProviderSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_PROVIDER_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_PROVIDER_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32; 217 #[cfg(feature = "Win32_Foundation")] FwpmProviderSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_PROVIDER_SUBSCRIPTION0, numentries: *mut u32) -> u32218 pub fn FwpmProviderSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_PROVIDER_SUBSCRIPTION0, numentries: *mut u32) -> u32; 219 #[cfg(feature = "Win32_Foundation")] FwpmProviderUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32220 pub fn FwpmProviderUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32; 221 #[cfg(feature = "Win32_Foundation")] FwpmSessionCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_SESSION_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32222 pub fn FwpmSessionCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_SESSION_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 223 #[cfg(feature = "Win32_Foundation")] FwpmSessionDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32224 pub fn FwpmSessionDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 225 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmSessionEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_SESSION0, numentriesreturned: *mut u32) -> u32226 pub fn FwpmSessionEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_SESSION0, numentriesreturned: *mut u32) -> u32; 227 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmSubLayerAdd0(enginehandle: super::super::Foundation::HANDLE, sublayer: *const FWPM_SUBLAYER0, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32228 pub fn FwpmSubLayerAdd0(enginehandle: super::super::Foundation::HANDLE, sublayer: *const FWPM_SUBLAYER0, sd: *const super::super::Security::SECURITY_DESCRIPTOR) -> u32; 229 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_SUBLAYER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32230 pub fn FwpmSubLayerCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const FWPM_SUBLAYER_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 231 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32232 pub fn FwpmSubLayerDeleteByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID) -> u32; 233 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32234 pub fn FwpmSubLayerDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 235 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_SUBLAYER0, numentriesreturned: *mut u32) -> u32236 pub fn FwpmSubLayerEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut FWPM_SUBLAYER0, numentriesreturned: *mut u32) -> u32; 237 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, sublayer: *mut *mut FWPM_SUBLAYER0) -> u32238 pub fn FwpmSubLayerGetByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, sublayer: *mut *mut FWPM_SUBLAYER0) -> u32; 239 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmSubLayerGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32240 pub fn FwpmSubLayerGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 241 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmSubLayerSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32242 pub fn FwpmSubLayerSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, key: *const ::windows_sys::core::GUID, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 243 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_SUBLAYER_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_SUBLAYER_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32244 pub fn FwpmSubLayerSubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_SUBLAYER_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_SUBLAYER_CHANGE_CALLBACK0>, context: *const ::core::ffi::c_void, changehandle: *mut super::super::Foundation::HANDLE) -> u32; 245 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_SUBLAYER_SUBSCRIPTION0, numentries: *mut u32) -> u32246 pub fn FwpmSubLayerSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut FWPM_SUBLAYER_SUBSCRIPTION0, numentries: *mut u32) -> u32; 247 #[cfg(feature = "Win32_Foundation")] FwpmSubLayerUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32248 pub fn FwpmSubLayerUnsubscribeChanges0(enginehandle: super::super::Foundation::HANDLE, changehandle: super::super::Foundation::HANDLE) -> u32; 249 #[cfg(feature = "Win32_Foundation")] FwpmSystemPortsGet0(enginehandle: super::super::Foundation::HANDLE, sysports: *mut *mut FWPM_SYSTEM_PORTS0) -> u32250 pub fn FwpmSystemPortsGet0(enginehandle: super::super::Foundation::HANDLE, sysports: *mut *mut FWPM_SYSTEM_PORTS0) -> u32; 251 #[cfg(feature = "Win32_Foundation")] FwpmSystemPortsSubscribe0(enginehandle: super::super::Foundation::HANDLE, reserved: *mut ::core::ffi::c_void, callback: ::core::option::Option<FWPM_SYSTEM_PORTS_CALLBACK0>, context: *const ::core::ffi::c_void, sysportshandle: *mut super::super::Foundation::HANDLE) -> u32252 pub fn FwpmSystemPortsSubscribe0(enginehandle: super::super::Foundation::HANDLE, reserved: *mut ::core::ffi::c_void, callback: ::core::option::Option<FWPM_SYSTEM_PORTS_CALLBACK0>, context: *const ::core::ffi::c_void, sysportshandle: *mut super::super::Foundation::HANDLE) -> u32; 253 #[cfg(feature = "Win32_Foundation")] FwpmSystemPortsUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, sysportshandle: super::super::Foundation::HANDLE) -> u32254 pub fn FwpmSystemPortsUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, sysportshandle: super::super::Foundation::HANDLE) -> u32; 255 #[cfg(feature = "Win32_Foundation")] FwpmTransactionAbort0(enginehandle: super::super::Foundation::HANDLE) -> u32256 pub fn FwpmTransactionAbort0(enginehandle: super::super::Foundation::HANDLE) -> u32; 257 #[cfg(feature = "Win32_Foundation")] FwpmTransactionBegin0(enginehandle: super::super::Foundation::HANDLE, flags: u32) -> u32258 pub fn FwpmTransactionBegin0(enginehandle: super::super::Foundation::HANDLE, flags: u32) -> u32; 259 #[cfg(feature = "Win32_Foundation")] FwpmTransactionCommit0(enginehandle: super::super::Foundation::HANDLE) -> u32260 pub fn FwpmTransactionCommit0(enginehandle: super::super::Foundation::HANDLE) -> u32; 261 #[cfg(feature = "Win32_Foundation")] FwpmvSwitchEventSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_VSWITCH_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_VSWITCH_EVENT_CALLBACK0>, context: *const ::core::ffi::c_void, subscriptionhandle: *mut super::super::Foundation::HANDLE) -> u32262 pub fn FwpmvSwitchEventSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const FWPM_VSWITCH_EVENT_SUBSCRIPTION0, callback: ::core::option::Option<FWPM_VSWITCH_EVENT_CALLBACK0>, context: *const ::core::ffi::c_void, subscriptionhandle: *mut super::super::Foundation::HANDLE) -> u32; 263 #[cfg(feature = "Win32_Foundation")] FwpmvSwitchEventUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, subscriptionhandle: super::super::Foundation::HANDLE) -> u32264 pub fn FwpmvSwitchEventUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, subscriptionhandle: super::super::Foundation::HANDLE) -> u32; 265 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmvSwitchEventsGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32266 pub fn FwpmvSwitchEventsGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 267 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] FwpmvSwitchEventsSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32268 pub fn FwpmvSwitchEventsSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 269 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecDospGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32270 pub fn IPsecDospGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 271 #[cfg(feature = "Win32_Foundation")] IPsecDospGetStatistics0(enginehandle: super::super::Foundation::HANDLE, idpstatistics: *mut IPSEC_DOSP_STATISTICS0) -> u32272 pub fn IPsecDospGetStatistics0(enginehandle: super::super::Foundation::HANDLE, idpstatistics: *mut IPSEC_DOSP_STATISTICS0) -> u32; 273 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecDospSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32274 pub fn IPsecDospSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 275 #[cfg(feature = "Win32_Foundation")] IPsecDospStateCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IPSEC_DOSP_STATE_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32276 pub fn IPsecDospStateCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IPSEC_DOSP_STATE_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 277 #[cfg(feature = "Win32_Foundation")] IPsecDospStateDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32278 pub fn IPsecDospStateDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 279 #[cfg(feature = "Win32_Foundation")] IPsecDospStateEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_DOSP_STATE0, numentries: *mut u32) -> u32280 pub fn IPsecDospStateEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_DOSP_STATE0, numentries: *mut u32) -> u32; 281 #[cfg(feature = "Win32_Foundation")] IPsecGetStatistics0(enginehandle: super::super::Foundation::HANDLE, ipsecstatistics: *mut IPSEC_STATISTICS0) -> u32282 pub fn IPsecGetStatistics0(enginehandle: super::super::Foundation::HANDLE, ipsecstatistics: *mut IPSEC_STATISTICS0) -> u32; 283 #[cfg(feature = "Win32_Foundation")] IPsecGetStatistics1(enginehandle: super::super::Foundation::HANDLE, ipsecstatistics: *mut IPSEC_STATISTICS1) -> u32284 pub fn IPsecGetStatistics1(enginehandle: super::super::Foundation::HANDLE, ipsecstatistics: *mut IPSEC_STATISTICS1) -> u32; 285 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecKeyManagerAddAndRegister0(enginehandle: super::super::Foundation::HANDLE, keymanager: *const IPSEC_KEY_MANAGER0, keymanagercallbacks: *const IPSEC_KEY_MANAGER_CALLBACKS0, keymgmthandle: *mut super::super::Foundation::HANDLE) -> u32286 pub fn IPsecKeyManagerAddAndRegister0(enginehandle: super::super::Foundation::HANDLE, keymanager: *const IPSEC_KEY_MANAGER0, keymanagercallbacks: *const IPSEC_KEY_MANAGER_CALLBACKS0, keymgmthandle: *mut super::super::Foundation::HANDLE) -> u32; 287 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecKeyManagerGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, reserved: *const ::core::ffi::c_void, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32288 pub fn IPsecKeyManagerGetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, reserved: *const ::core::ffi::c_void, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 289 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecKeyManagerSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, reserved: *const ::core::ffi::c_void, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32290 pub fn IPsecKeyManagerSetSecurityInfoByKey0(enginehandle: super::super::Foundation::HANDLE, reserved: *const ::core::ffi::c_void, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 291 #[cfg(feature = "Win32_Foundation")] IPsecKeyManagerUnregisterAndDelete0(enginehandle: super::super::Foundation::HANDLE, keymgmthandle: super::super::Foundation::HANDLE) -> u32292 pub fn IPsecKeyManagerUnregisterAndDelete0(enginehandle: super::super::Foundation::HANDLE, keymgmthandle: super::super::Foundation::HANDLE) -> u32; 293 #[cfg(feature = "Win32_Foundation")] IPsecKeyManagersGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut IPSEC_KEY_MANAGER0, numentries: *mut u32) -> u32294 pub fn IPsecKeyManagersGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut IPSEC_KEY_MANAGER0, numentries: *mut u32) -> u32; 295 #[cfg(feature = "Win32_Foundation")] IPsecSaContextAddInbound0(enginehandle: super::super::Foundation::HANDLE, id: u64, inboundbundle: *const IPSEC_SA_BUNDLE0) -> u32296 pub fn IPsecSaContextAddInbound0(enginehandle: super::super::Foundation::HANDLE, id: u64, inboundbundle: *const IPSEC_SA_BUNDLE0) -> u32; 297 #[cfg(feature = "Win32_Foundation")] IPsecSaContextAddInbound1(enginehandle: super::super::Foundation::HANDLE, id: u64, inboundbundle: *const IPSEC_SA_BUNDLE1) -> u32298 pub fn IPsecSaContextAddInbound1(enginehandle: super::super::Foundation::HANDLE, id: u64, inboundbundle: *const IPSEC_SA_BUNDLE1) -> u32; 299 #[cfg(feature = "Win32_Foundation")] IPsecSaContextAddOutbound0(enginehandle: super::super::Foundation::HANDLE, id: u64, outboundbundle: *const IPSEC_SA_BUNDLE0) -> u32300 pub fn IPsecSaContextAddOutbound0(enginehandle: super::super::Foundation::HANDLE, id: u64, outboundbundle: *const IPSEC_SA_BUNDLE0) -> u32; 301 #[cfg(feature = "Win32_Foundation")] IPsecSaContextAddOutbound1(enginehandle: super::super::Foundation::HANDLE, id: u64, outboundbundle: *const IPSEC_SA_BUNDLE1) -> u32302 pub fn IPsecSaContextAddOutbound1(enginehandle: super::super::Foundation::HANDLE, id: u64, outboundbundle: *const IPSEC_SA_BUNDLE1) -> u32; 303 #[cfg(feature = "Win32_Foundation")] IPsecSaContextCreate0(enginehandle: super::super::Foundation::HANDLE, outboundtraffic: *const IPSEC_TRAFFIC0, inboundfilterid: *mut u64, id: *mut u64) -> u32304 pub fn IPsecSaContextCreate0(enginehandle: super::super::Foundation::HANDLE, outboundtraffic: *const IPSEC_TRAFFIC0, inboundfilterid: *mut u64, id: *mut u64) -> u32; 305 #[cfg(feature = "Win32_Foundation")] IPsecSaContextCreate1(enginehandle: super::super::Foundation::HANDLE, outboundtraffic: *const IPSEC_TRAFFIC1, virtualiftunnelinfo: *const IPSEC_VIRTUAL_IF_TUNNEL_INFO0, inboundfilterid: *mut u64, id: *mut u64) -> u32306 pub fn IPsecSaContextCreate1(enginehandle: super::super::Foundation::HANDLE, outboundtraffic: *const IPSEC_TRAFFIC1, virtualiftunnelinfo: *const IPSEC_VIRTUAL_IF_TUNNEL_INFO0, inboundfilterid: *mut u64, id: *mut u64) -> u32; 307 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IPSEC_SA_CONTEXT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32308 pub fn IPsecSaContextCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IPSEC_SA_CONTEXT_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 309 #[cfg(feature = "Win32_Foundation")] IPsecSaContextDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32310 pub fn IPsecSaContextDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32; 311 #[cfg(feature = "Win32_Foundation")] IPsecSaContextDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32312 pub fn IPsecSaContextDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 313 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_CONTEXT0, numentriesreturned: *mut u32) -> u32314 pub fn IPsecSaContextEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_CONTEXT0, numentriesreturned: *mut u32) -> u32; 315 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_CONTEXT1, numentriesreturned: *mut u32) -> u32316 pub fn IPsecSaContextEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_CONTEXT1, numentriesreturned: *mut u32) -> u32; 317 #[cfg(feature = "Win32_Foundation")] IPsecSaContextExpire0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32318 pub fn IPsecSaContextExpire0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32; 319 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, sacontext: *mut *mut IPSEC_SA_CONTEXT0) -> u32320 pub fn IPsecSaContextGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, sacontext: *mut *mut IPSEC_SA_CONTEXT0) -> u32; 321 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextGetById1(enginehandle: super::super::Foundation::HANDLE, id: u64, sacontext: *mut *mut IPSEC_SA_CONTEXT1) -> u32322 pub fn IPsecSaContextGetById1(enginehandle: super::super::Foundation::HANDLE, id: u64, sacontext: *mut *mut IPSEC_SA_CONTEXT1) -> u32; 323 #[cfg(feature = "Win32_Foundation")] IPsecSaContextGetSpi0(enginehandle: super::super::Foundation::HANDLE, id: u64, getspi: *const IPSEC_GETSPI0, inboundspi: *mut u32) -> u32324 pub fn IPsecSaContextGetSpi0(enginehandle: super::super::Foundation::HANDLE, id: u64, getspi: *const IPSEC_GETSPI0, inboundspi: *mut u32) -> u32; 325 #[cfg(feature = "Win32_Foundation")] IPsecSaContextGetSpi1(enginehandle: super::super::Foundation::HANDLE, id: u64, getspi: *const IPSEC_GETSPI1, inboundspi: *mut u32) -> u32326 pub fn IPsecSaContextGetSpi1(enginehandle: super::super::Foundation::HANDLE, id: u64, getspi: *const IPSEC_GETSPI1, inboundspi: *mut u32) -> u32; 327 #[cfg(feature = "Win32_Foundation")] IPsecSaContextSetSpi0(enginehandle: super::super::Foundation::HANDLE, id: u64, getspi: *const IPSEC_GETSPI1, inboundspi: u32) -> u32328 pub fn IPsecSaContextSetSpi0(enginehandle: super::super::Foundation::HANDLE, id: u64, getspi: *const IPSEC_GETSPI1, inboundspi: u32) -> u32; 329 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const IPSEC_SA_CONTEXT_SUBSCRIPTION0, callback: ::core::option::Option<IPSEC_SA_CONTEXT_CALLBACK0>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32330 pub fn IPsecSaContextSubscribe0(enginehandle: super::super::Foundation::HANDLE, subscription: *const IPSEC_SA_CONTEXT_SUBSCRIPTION0, callback: ::core::option::Option<IPSEC_SA_CONTEXT_CALLBACK0>, context: *const ::core::ffi::c_void, eventshandle: *mut super::super::Foundation::HANDLE) -> u32; 331 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut IPSEC_SA_CONTEXT_SUBSCRIPTION0, numentries: *mut u32) -> u32332 pub fn IPsecSaContextSubscriptionsGet0(enginehandle: super::super::Foundation::HANDLE, entries: *mut *mut *mut IPSEC_SA_CONTEXT_SUBSCRIPTION0, numentries: *mut u32) -> u32; 333 #[cfg(feature = "Win32_Foundation")] IPsecSaContextUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, eventshandle: super::super::Foundation::HANDLE) -> u32334 pub fn IPsecSaContextUnsubscribe0(enginehandle: super::super::Foundation::HANDLE, eventshandle: super::super::Foundation::HANDLE) -> u32; 335 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaContextUpdate0(enginehandle: super::super::Foundation::HANDLE, flags: u64, newvalues: *const IPSEC_SA_CONTEXT1) -> u32336 pub fn IPsecSaContextUpdate0(enginehandle: super::super::Foundation::HANDLE, flags: u64, newvalues: *const IPSEC_SA_CONTEXT1) -> u32; 337 #[cfg(feature = "Win32_Foundation")] IPsecSaCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IPSEC_SA_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32338 pub fn IPsecSaCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IPSEC_SA_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 339 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaDbGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32340 pub fn IPsecSaDbGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 341 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaDbSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32342 pub fn IPsecSaDbSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 343 #[cfg(feature = "Win32_Foundation")] IPsecSaDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32344 pub fn IPsecSaDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 345 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_DETAILS0, numentriesreturned: *mut u32) -> u32346 pub fn IPsecSaEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_DETAILS0, numentriesreturned: *mut u32) -> u32; 347 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IPsecSaEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_DETAILS1, numentriesreturned: *mut u32) -> u32348 pub fn IPsecSaEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IPSEC_SA_DETAILS1, numentriesreturned: *mut u32) -> u32; 349 #[cfg(feature = "Win32_Foundation")] IkeextGetStatistics0(enginehandle: super::super::Foundation::HANDLE, ikeextstatistics: *mut IKEEXT_STATISTICS0) -> u32350 pub fn IkeextGetStatistics0(enginehandle: super::super::Foundation::HANDLE, ikeextstatistics: *mut IKEEXT_STATISTICS0) -> u32; 351 #[cfg(feature = "Win32_Foundation")] IkeextGetStatistics1(enginehandle: super::super::Foundation::HANDLE, ikeextstatistics: *mut IKEEXT_STATISTICS1) -> u32352 pub fn IkeextGetStatistics1(enginehandle: super::super::Foundation::HANDLE, ikeextstatistics: *mut IKEEXT_STATISTICS1) -> u32; 353 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IkeextSaCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IKEEXT_SA_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32354 pub fn IkeextSaCreateEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumtemplate: *const IKEEXT_SA_ENUM_TEMPLATE0, enumhandle: *mut super::super::Foundation::HANDLE) -> u32; 355 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IkeextSaDbGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32356 pub fn IkeextSaDbGetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *mut super::super::Foundation::PSID, sidgroup: *mut super::super::Foundation::PSID, dacl: *mut *mut super::super::Security::ACL, sacl: *mut *mut super::super::Security::ACL, securitydescriptor: *mut *mut super::super::Security::SECURITY_DESCRIPTOR) -> u32; 357 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] IkeextSaDbSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32358 pub fn IkeextSaDbSetSecurityInfo0(enginehandle: super::super::Foundation::HANDLE, securityinfo: u32, sidowner: *const super::super::Security::SID, sidgroup: *const super::super::Security::SID, dacl: *const super::super::Security::ACL, sacl: *const super::super::Security::ACL) -> u32; 359 #[cfg(feature = "Win32_Foundation")] IkeextSaDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32360 pub fn IkeextSaDeleteById0(enginehandle: super::super::Foundation::HANDLE, id: u64) -> u32; 361 #[cfg(feature = "Win32_Foundation")] IkeextSaDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32362 pub fn IkeextSaDestroyEnumHandle0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE) -> u32; 363 #[cfg(feature = "Win32_Foundation")] IkeextSaEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IKEEXT_SA_DETAILS0, numentriesreturned: *mut u32) -> u32364 pub fn IkeextSaEnum0(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IKEEXT_SA_DETAILS0, numentriesreturned: *mut u32) -> u32; 365 #[cfg(feature = "Win32_Foundation")] IkeextSaEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IKEEXT_SA_DETAILS1, numentriesreturned: *mut u32) -> u32366 pub fn IkeextSaEnum1(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IKEEXT_SA_DETAILS1, numentriesreturned: *mut u32) -> u32; 367 #[cfg(feature = "Win32_Foundation")] IkeextSaEnum2(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IKEEXT_SA_DETAILS2, numentriesreturned: *mut u32) -> u32368 pub fn IkeextSaEnum2(enginehandle: super::super::Foundation::HANDLE, enumhandle: super::super::Foundation::HANDLE, numentriesrequested: u32, entries: *mut *mut *mut IKEEXT_SA_DETAILS2, numentriesreturned: *mut u32) -> u32; 369 #[cfg(feature = "Win32_Foundation")] IkeextSaGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, sa: *mut *mut IKEEXT_SA_DETAILS0) -> u32370 pub fn IkeextSaGetById0(enginehandle: super::super::Foundation::HANDLE, id: u64, sa: *mut *mut IKEEXT_SA_DETAILS0) -> u32; 371 #[cfg(feature = "Win32_Foundation")] IkeextSaGetById1(enginehandle: super::super::Foundation::HANDLE, id: u64, salookupcontext: *const ::windows_sys::core::GUID, sa: *mut *mut IKEEXT_SA_DETAILS1) -> u32372 pub fn IkeextSaGetById1(enginehandle: super::super::Foundation::HANDLE, id: u64, salookupcontext: *const ::windows_sys::core::GUID, sa: *mut *mut IKEEXT_SA_DETAILS1) -> u32; 373 #[cfg(feature = "Win32_Foundation")] IkeextSaGetById2(enginehandle: super::super::Foundation::HANDLE, id: u64, salookupcontext: *const ::windows_sys::core::GUID, sa: *mut *mut IKEEXT_SA_DETAILS2) -> u32374 pub fn IkeextSaGetById2(enginehandle: super::super::Foundation::HANDLE, id: u64, salookupcontext: *const ::windows_sys::core::GUID, sa: *mut *mut IKEEXT_SA_DETAILS2) -> u32; 375 } 376 pub type ARP_HARDWARE_TYPE = i32; 377 pub const ARP_HW_ENET: ARP_HARDWARE_TYPE = 1i32; 378 pub const ARP_HW_802: ARP_HARDWARE_TYPE = 6i32; 379 #[repr(C)] 380 pub struct ARP_HEADER { 381 pub HardwareAddressSpace: u16, 382 pub ProtocolAddressSpace: u16, 383 pub HardwareAddressLength: u8, 384 pub ProtocolAddressLength: u8, 385 pub Opcode: u16, 386 pub SenderHardwareAddress: [u8; 1], 387 } 388 impl ::core::marker::Copy for ARP_HEADER {} 389 impl ::core::clone::Clone for ARP_HEADER { clone(&self) -> Self390 fn clone(&self) -> Self { 391 *self 392 } 393 } 394 pub type ARP_OPCODE = i32; 395 pub const ARP_REQUEST: ARP_OPCODE = 1i32; 396 pub const ARP_RESPONSE: ARP_OPCODE = 2i32; 397 pub const BYTE_ORDER: u32 = 1234u32; 398 pub const DL_ADDRESS_LENGTH_MAXIMUM: u32 = 32u32; 399 pub type DL_ADDRESS_TYPE = i32; 400 pub const DlUnicast: DL_ADDRESS_TYPE = 0i32; 401 pub const DlMulticast: DL_ADDRESS_TYPE = 1i32; 402 pub const DlBroadcast: DL_ADDRESS_TYPE = 2i32; 403 #[repr(C)] 404 pub union DL_EI48 { 405 pub Byte: [u8; 3], 406 } 407 impl ::core::marker::Copy for DL_EI48 {} 408 impl ::core::clone::Clone for DL_EI48 { clone(&self) -> Self409 fn clone(&self) -> Self { 410 *self 411 } 412 } 413 #[repr(C)] 414 pub union DL_EI64 { 415 pub Byte: [u8; 5], 416 } 417 impl ::core::marker::Copy for DL_EI64 {} 418 impl ::core::clone::Clone for DL_EI64 { clone(&self) -> Self419 fn clone(&self) -> Self { 420 *self 421 } 422 } 423 #[repr(C)] 424 pub union DL_EUI48 { 425 pub Byte: [u8; 6], 426 pub Anonymous: DL_EUI48_0, 427 } 428 impl ::core::marker::Copy for DL_EUI48 {} 429 impl ::core::clone::Clone for DL_EUI48 { clone(&self) -> Self430 fn clone(&self) -> Self { 431 *self 432 } 433 } 434 #[repr(C)] 435 pub struct DL_EUI48_0 { 436 pub Oui: DL_OUI, 437 pub Ei48: DL_EI48, 438 } 439 impl ::core::marker::Copy for DL_EUI48_0 {} 440 impl ::core::clone::Clone for DL_EUI48_0 { clone(&self) -> Self441 fn clone(&self) -> Self { 442 *self 443 } 444 } 445 #[repr(C)] 446 pub union DL_EUI64 { 447 pub Byte: [u8; 8], 448 pub Value: u64, 449 pub Anonymous: DL_EUI64_0, 450 } 451 impl ::core::marker::Copy for DL_EUI64 {} 452 impl ::core::clone::Clone for DL_EUI64 { clone(&self) -> Self453 fn clone(&self) -> Self { 454 *self 455 } 456 } 457 #[repr(C)] 458 pub struct DL_EUI64_0 { 459 pub Oui: DL_OUI, 460 pub Anonymous: DL_EUI64_0_0, 461 } 462 impl ::core::marker::Copy for DL_EUI64_0 {} 463 impl ::core::clone::Clone for DL_EUI64_0 { clone(&self) -> Self464 fn clone(&self) -> Self { 465 *self 466 } 467 } 468 #[repr(C)] 469 pub union DL_EUI64_0_0 { 470 pub Ei64: DL_EI64, 471 pub Anonymous: DL_EUI64_0_0_0, 472 } 473 impl ::core::marker::Copy for DL_EUI64_0_0 {} 474 impl ::core::clone::Clone for DL_EUI64_0_0 { clone(&self) -> Self475 fn clone(&self) -> Self { 476 *self 477 } 478 } 479 #[repr(C)] 480 pub struct DL_EUI64_0_0_0 { 481 pub Type: u8, 482 pub Tse: u8, 483 pub Ei48: DL_EI48, 484 } 485 impl ::core::marker::Copy for DL_EUI64_0_0_0 {} 486 impl ::core::clone::Clone for DL_EUI64_0_0_0 { clone(&self) -> Self487 fn clone(&self) -> Self { 488 *self 489 } 490 } 491 pub const DL_HEADER_LENGTH_MAXIMUM: u32 = 64u32; 492 #[repr(C)] 493 pub union DL_OUI { 494 pub Byte: [u8; 3], 495 pub Anonymous: DL_OUI_0, 496 } 497 impl ::core::marker::Copy for DL_OUI {} 498 impl ::core::clone::Clone for DL_OUI { clone(&self) -> Self499 fn clone(&self) -> Self { 500 *self 501 } 502 } 503 #[repr(C)] 504 pub struct DL_OUI_0 { 505 pub _bitfield: u8, 506 } 507 impl ::core::marker::Copy for DL_OUI_0 {} 508 impl ::core::clone::Clone for DL_OUI_0 { clone(&self) -> Self509 fn clone(&self) -> Self { 510 *self 511 } 512 } 513 #[repr(C)] 514 #[cfg(feature = "Win32_Networking_WinSock")] 515 pub struct DL_TEREDO_ADDRESS { 516 pub Reserved: [u8; 6], 517 pub Anonymous: DL_TEREDO_ADDRESS_0, 518 } 519 #[cfg(feature = "Win32_Networking_WinSock")] 520 impl ::core::marker::Copy for DL_TEREDO_ADDRESS {} 521 #[cfg(feature = "Win32_Networking_WinSock")] 522 impl ::core::clone::Clone for DL_TEREDO_ADDRESS { clone(&self) -> Self523 fn clone(&self) -> Self { 524 *self 525 } 526 } 527 #[repr(C, packed(1))] 528 #[cfg(feature = "Win32_Networking_WinSock")] 529 pub union DL_TEREDO_ADDRESS_0 { 530 pub Eui64: DL_EUI64, 531 pub Anonymous: DL_TEREDO_ADDRESS_0_0, 532 } 533 #[cfg(feature = "Win32_Networking_WinSock")] 534 impl ::core::marker::Copy for DL_TEREDO_ADDRESS_0 {} 535 #[cfg(feature = "Win32_Networking_WinSock")] 536 impl ::core::clone::Clone for DL_TEREDO_ADDRESS_0 { clone(&self) -> Self537 fn clone(&self) -> Self { 538 *self 539 } 540 } 541 #[repr(C, packed(1))] 542 #[cfg(feature = "Win32_Networking_WinSock")] 543 pub struct DL_TEREDO_ADDRESS_0_0 { 544 pub Flags: u16, 545 pub MappedPort: u16, 546 pub MappedAddress: super::super::Networking::WinSock::IN_ADDR, 547 } 548 #[cfg(feature = "Win32_Networking_WinSock")] 549 impl ::core::marker::Copy for DL_TEREDO_ADDRESS_0_0 {} 550 #[cfg(feature = "Win32_Networking_WinSock")] 551 impl ::core::clone::Clone for DL_TEREDO_ADDRESS_0_0 { clone(&self) -> Self552 fn clone(&self) -> Self { 553 *self 554 } 555 } 556 #[repr(C)] 557 #[cfg(feature = "Win32_Networking_WinSock")] 558 pub struct DL_TEREDO_ADDRESS_PRV { 559 pub Reserved: [u8; 6], 560 pub Anonymous: DL_TEREDO_ADDRESS_PRV_0, 561 } 562 #[cfg(feature = "Win32_Networking_WinSock")] 563 impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV {} 564 #[cfg(feature = "Win32_Networking_WinSock")] 565 impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV { clone(&self) -> Self566 fn clone(&self) -> Self { 567 *self 568 } 569 } 570 #[repr(C, packed(1))] 571 #[cfg(feature = "Win32_Networking_WinSock")] 572 pub union DL_TEREDO_ADDRESS_PRV_0 { 573 pub Eui64: DL_EUI64, 574 pub Anonymous: DL_TEREDO_ADDRESS_PRV_0_0, 575 } 576 #[cfg(feature = "Win32_Networking_WinSock")] 577 impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV_0 {} 578 #[cfg(feature = "Win32_Networking_WinSock")] 579 impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV_0 { clone(&self) -> Self580 fn clone(&self) -> Self { 581 *self 582 } 583 } 584 #[repr(C, packed(1))] 585 #[cfg(feature = "Win32_Networking_WinSock")] 586 pub struct DL_TEREDO_ADDRESS_PRV_0_0 { 587 pub Flags: u16, 588 pub MappedPort: u16, 589 pub MappedAddress: super::super::Networking::WinSock::IN_ADDR, 590 pub LocalAddress: super::super::Networking::WinSock::IN_ADDR, 591 pub InterfaceIndex: u32, 592 pub LocalPort: u16, 593 pub DlDestination: DL_EUI48, 594 } 595 #[cfg(feature = "Win32_Networking_WinSock")] 596 impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV_0_0 {} 597 #[cfg(feature = "Win32_Networking_WinSock")] 598 impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV_0_0 { clone(&self) -> Self599 fn clone(&self) -> Self { 600 *self 601 } 602 } 603 #[repr(C)] 604 #[cfg(all(feature = "Win32_Networking_WinSock", feature = "Win32_System_Kernel"))] 605 pub struct DL_TUNNEL_ADDRESS { 606 pub CompartmentId: super::super::System::Kernel::COMPARTMENT_ID, 607 pub ScopeId: super::super::Networking::WinSock::SCOPE_ID, 608 pub IpAddress: [u8; 1], 609 } 610 #[cfg(all(feature = "Win32_Networking_WinSock", feature = "Win32_System_Kernel"))] 611 impl ::core::marker::Copy for DL_TUNNEL_ADDRESS {} 612 #[cfg(all(feature = "Win32_Networking_WinSock", feature = "Win32_System_Kernel"))] 613 impl ::core::clone::Clone for DL_TUNNEL_ADDRESS { clone(&self) -> Self614 fn clone(&self) -> Self { 615 *self 616 } 617 } 618 #[repr(C)] 619 pub struct ETHERNET_HEADER { 620 pub Destination: DL_EUI48, 621 pub Source: DL_EUI48, 622 pub Anonymous: ETHERNET_HEADER_0, 623 } 624 impl ::core::marker::Copy for ETHERNET_HEADER {} 625 impl ::core::clone::Clone for ETHERNET_HEADER { clone(&self) -> Self626 fn clone(&self) -> Self { 627 *self 628 } 629 } 630 #[repr(C)] 631 pub union ETHERNET_HEADER_0 { 632 pub Type: u16, 633 pub Length: u16, 634 } 635 impl ::core::marker::Copy for ETHERNET_HEADER_0 {} 636 impl ::core::clone::Clone for ETHERNET_HEADER_0 { clone(&self) -> Self637 fn clone(&self) -> Self { 638 *self 639 } 640 } 641 pub const ETHERNET_TYPE_802_1AD: u32 = 34984u32; 642 pub const ETHERNET_TYPE_802_1Q: u32 = 33024u32; 643 pub const ETHERNET_TYPE_ARP: u32 = 2054u32; 644 pub const ETHERNET_TYPE_IPV4: u32 = 2048u32; 645 pub const ETHERNET_TYPE_IPV6: u32 = 34525u32; 646 pub const ETHERNET_TYPE_MINIMUM: u32 = 1536u32; 647 pub const ETH_LENGTH_OF_HEADER: u32 = 14u32; 648 pub const ETH_LENGTH_OF_SNAP_HEADER: u32 = 8u32; 649 pub const ETH_LENGTH_OF_VLAN_HEADER: u32 = 4u32; 650 pub const EXT_LEN_UNIT: u32 = 8u32; 651 pub type FALLBACK_INDEX = i32; 652 pub const FallbackIndexTcpFastopen: FALLBACK_INDEX = 0i32; 653 pub const FallbackIndexMax: FALLBACK_INDEX = 1i32; 654 #[repr(C)] 655 pub struct FWPM_ACTION0 { 656 pub r#type: u32, 657 pub Anonymous: FWPM_ACTION0_0, 658 } 659 impl ::core::marker::Copy for FWPM_ACTION0 {} 660 impl ::core::clone::Clone for FWPM_ACTION0 { clone(&self) -> Self661 fn clone(&self) -> Self { 662 *self 663 } 664 } 665 #[repr(C)] 666 pub union FWPM_ACTION0_0 { 667 pub filterType: ::windows_sys::core::GUID, 668 pub calloutKey: ::windows_sys::core::GUID, 669 } 670 impl ::core::marker::Copy for FWPM_ACTION0_0 {} 671 impl ::core::clone::Clone for FWPM_ACTION0_0 { clone(&self) -> Self672 fn clone(&self) -> Self { 673 *self 674 } 675 } 676 pub const FWPM_ACTRL_ADD: u32 = 1u32; 677 pub const FWPM_ACTRL_ADD_LINK: u32 = 2u32; 678 pub const FWPM_ACTRL_BEGIN_READ_TXN: u32 = 4u32; 679 pub const FWPM_ACTRL_BEGIN_WRITE_TXN: u32 = 8u32; 680 pub const FWPM_ACTRL_CLASSIFY: u32 = 16u32; 681 pub const FWPM_ACTRL_ENUM: u32 = 32u32; 682 pub const FWPM_ACTRL_OPEN: u32 = 64u32; 683 pub const FWPM_ACTRL_READ: u32 = 128u32; 684 pub const FWPM_ACTRL_READ_STATS: u32 = 256u32; 685 pub const FWPM_ACTRL_SUBSCRIBE: u32 = 512u32; 686 pub const FWPM_ACTRL_WRITE: u32 = 1024u32; 687 pub type FWPM_APPC_NETWORK_CAPABILITY_TYPE = i32; 688 pub const FWPM_APPC_NETWORK_CAPABILITY_INTERNET_CLIENT: FWPM_APPC_NETWORK_CAPABILITY_TYPE = 0i32; 689 pub const FWPM_APPC_NETWORK_CAPABILITY_INTERNET_CLIENT_SERVER: FWPM_APPC_NETWORK_CAPABILITY_TYPE = 1i32; 690 pub const FWPM_APPC_NETWORK_CAPABILITY_INTERNET_PRIVATE_NETWORK: FWPM_APPC_NETWORK_CAPABILITY_TYPE = 2i32; 691 pub const FWPM_AUTO_WEIGHT_BITS: u32 = 60u32; 692 #[repr(C)] 693 #[cfg(feature = "Win32_Foundation")] 694 pub struct FWPM_CALLOUT0 { 695 pub calloutKey: ::windows_sys::core::GUID, 696 pub displayData: FWPM_DISPLAY_DATA0, 697 pub flags: u32, 698 pub providerKey: *mut ::windows_sys::core::GUID, 699 pub providerData: FWP_BYTE_BLOB, 700 pub applicableLayer: ::windows_sys::core::GUID, 701 pub calloutId: u32, 702 } 703 #[cfg(feature = "Win32_Foundation")] 704 impl ::core::marker::Copy for FWPM_CALLOUT0 {} 705 #[cfg(feature = "Win32_Foundation")] 706 impl ::core::clone::Clone for FWPM_CALLOUT0 { clone(&self) -> Self707 fn clone(&self) -> Self { 708 *self 709 } 710 } 711 pub const FWPM_CALLOUT_BUILT_IN_RESERVED_1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 712 data1: 2006391204, 713 data2: 59029, 714 data3: 18358, 715 data4: [161, 153, 121, 153, 254, 201, 22, 59], 716 }; 717 pub const FWPM_CALLOUT_BUILT_IN_RESERVED_2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 718 data1: 4019610038, 719 data2: 31838, 720 data3: 18685, 721 data4: [161, 48, 150, 103, 140, 234, 204, 65], 722 }; 723 pub const FWPM_CALLOUT_BUILT_IN_RESERVED_3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 724 data1: 410164346, 725 data2: 12130, 726 data3: 19424, 727 data4: [150, 111, 151, 75, 33, 184, 109, 241], 728 }; 729 pub const FWPM_CALLOUT_BUILT_IN_RESERVED_4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 730 data1: 1816115201, 731 data2: 56063, 732 data3: 16617, 733 data4: [145, 230, 247, 255, 126, 82, 247, 217], 734 }; 735 #[repr(C)] 736 pub struct FWPM_CALLOUT_CHANGE0 { 737 pub changeType: FWPM_CHANGE_TYPE, 738 pub calloutKey: ::windows_sys::core::GUID, 739 pub calloutId: u32, 740 } 741 impl ::core::marker::Copy for FWPM_CALLOUT_CHANGE0 {} 742 impl ::core::clone::Clone for FWPM_CALLOUT_CHANGE0 { clone(&self) -> Self743 fn clone(&self) -> Self { 744 *self 745 } 746 } 747 pub type FWPM_CALLOUT_CHANGE_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, change: *const FWPM_CALLOUT_CHANGE0); 748 pub const FWPM_CALLOUT_EDGE_TRAVERSAL_ALE_LISTEN_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 749 data1: 860383925, 750 data2: 27998, 751 data3: 20069, 752 data4: [160, 11, 167, 175, 237, 11, 169, 161], 753 }; 754 pub const FWPM_CALLOUT_EDGE_TRAVERSAL_ALE_RESOURCE_ASSIGNMENT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 127602704, data2: 61893, data3: 20429, data4: [174, 5, 218, 65, 16, 122, 189, 11] }; 755 #[repr(C)] 756 pub struct FWPM_CALLOUT_ENUM_TEMPLATE0 { 757 pub providerKey: *mut ::windows_sys::core::GUID, 758 pub layerKey: ::windows_sys::core::GUID, 759 } 760 impl ::core::marker::Copy for FWPM_CALLOUT_ENUM_TEMPLATE0 {} 761 impl ::core::clone::Clone for FWPM_CALLOUT_ENUM_TEMPLATE0 { clone(&self) -> Self762 fn clone(&self) -> Self { 763 *self 764 } 765 } 766 pub const FWPM_CALLOUT_FLAG_PERSISTENT: u32 = 65536u32; 767 pub const FWPM_CALLOUT_FLAG_REGISTERED: u32 = 262144u32; 768 pub const FWPM_CALLOUT_FLAG_USES_PROVIDER_CONTEXT: u32 = 131072u32; 769 pub const FWPM_CALLOUT_HTTP_TEMPLATE_SSL_HANDSHAKE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 770 data1: 3007459913, 771 data2: 36105, 772 data3: 18520, 773 data4: [146, 16, 149, 199, 253, 168, 227, 15], 774 }; 775 pub const FWPM_CALLOUT_IPSEC_ALE_CONNECT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1791050236, data2: 63325, data3: 16899, data4: [185, 200, 72, 230, 20, 156, 39, 18] }; 776 pub const FWPM_CALLOUT_IPSEC_ALE_CONNECT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 777 data1: 1275976197, 778 data2: 58143, 779 data3: 18022, 780 data4: [144, 176, 179, 223, 173, 52, 18, 154], 781 }; 782 pub const FWPM_CALLOUT_IPSEC_DOSP_FORWARD_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 801855212, data2: 52535, data3: 19279, data4: [177, 8, 98, 194, 177, 133, 10, 12] }; 783 pub const FWPM_CALLOUT_IPSEC_DOSP_FORWARD_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 784 data1: 1829282626, 785 data2: 56222, 786 data3: 20414, 787 data4: [158, 210, 87, 55, 76, 232, 159, 121], 788 }; 789 pub const FWPM_CALLOUT_IPSEC_FORWARD_INBOUND_TUNNEL_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 790 data1: 679646771, 791 data2: 50416, 792 data3: 20070, 793 data4: [135, 63, 132, 77, 178, 168, 153, 199], 794 }; 795 pub const FWPM_CALLOUT_IPSEC_FORWARD_INBOUND_TUNNEL_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 796 data1: 2941304514, 797 data2: 50822, 798 data3: 17050, 799 data4: [136, 77, 183, 68, 67, 231, 176, 180], 800 }; 801 pub const FWPM_CALLOUT_IPSEC_FORWARD_OUTBOUND_TUNNEL_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4216529206, data2: 5579, data3: 17419, data4: [147, 124, 23, 23, 202, 50, 12, 64] }; 802 pub const FWPM_CALLOUT_IPSEC_FORWARD_OUTBOUND_TUNNEL_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 803 data1: 3672522956, 804 data2: 57377, 805 data3: 19438, 806 data4: [158, 182, 164, 139, 39, 92, 140, 29], 807 }; 808 pub const FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 809 data1: 2113876123, 810 data2: 47741, 811 data3: 19130, 812 data4: [145, 170, 174, 92, 102, 64, 201, 68], 813 }; 814 pub const FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 815 data1: 2845890265, 816 data2: 50572, 817 data3: 18254, 818 data4: [138, 235, 60, 254, 153, 214, 213, 61], 819 }; 820 pub const FWPM_CALLOUT_IPSEC_INBOUND_TRANSPORT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1362268173, data2: 24196, data3: 19295, data4: [128, 228, 1, 116, 30, 129, 255, 16] }; 821 pub const FWPM_CALLOUT_IPSEC_INBOUND_TRANSPORT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1238609042, data2: 10860, data3: 19919, data4: [149, 95, 28, 59, 224, 9, 221, 153] }; 822 pub const FWPM_CALLOUT_IPSEC_INBOUND_TUNNEL_ALE_ACCEPT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1039591390, data2: 64800, data3: 18674, data4: [159, 38, 248, 84, 68, 76, 186, 121] }; 823 pub const FWPM_CALLOUT_IPSEC_INBOUND_TUNNEL_ALE_ACCEPT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2716046035, data2: 29356, data3: 18363, data4: [135, 167, 1, 34, 198, 148, 52, 171] }; 824 pub const FWPM_CALLOUT_IPSEC_INBOUND_TUNNEL_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 421169734, data2: 3064, data3: 18127, data4: [176, 69, 75, 69, 223, 166, 163, 36] }; 825 pub const FWPM_CALLOUT_IPSEC_INBOUND_TUNNEL_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2160280291, data2: 7763, data3: 19823, data4: [155, 68, 3, 223, 90, 238, 225, 84] }; 826 pub const FWPM_CALLOUT_IPSEC_OUTBOUND_TRANSPORT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 827 data1: 1262927626, 828 data2: 17699, 829 data3: 20055, 830 data4: [170, 56, 168, 121, 135, 201, 16, 217], 831 }; 832 pub const FWPM_CALLOUT_IPSEC_OUTBOUND_TRANSPORT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 953710370, data2: 44419, data3: 20241, data4: [169, 31, 223, 15, 176, 119, 34, 91] }; 833 pub const FWPM_CALLOUT_IPSEC_OUTBOUND_TUNNEL_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1889802604, data2: 33627, data3: 20400, data4: [152, 232, 7, 95, 77, 151, 125, 70] }; 834 pub const FWPM_CALLOUT_IPSEC_OUTBOUND_TUNNEL_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 835 data1: 4051915619, 836 data2: 42661, 837 data3: 20066, 838 data4: [177, 128, 35, 219, 120, 157, 141, 166], 839 }; 840 pub const FWPM_CALLOUT_POLICY_SILENT_MODE_AUTH_CONNECT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1606402845, data2: 42268, data3: 17628, data4: [172, 182, 6, 36, 160, 48, 167, 0] }; 841 pub const FWPM_CALLOUT_POLICY_SILENT_MODE_AUTH_CONNECT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1606402845, data2: 42268, data3: 17628, data4: [172, 182, 6, 36, 160, 48, 167, 1] }; 842 pub const FWPM_CALLOUT_POLICY_SILENT_MODE_AUTH_RECV_ACCEPT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1606402845, data2: 42268, data3: 17628, data4: [172, 182, 6, 36, 160, 48, 167, 2] }; 843 pub const FWPM_CALLOUT_POLICY_SILENT_MODE_AUTH_RECV_ACCEPT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1606402845, data2: 42268, data3: 17628, data4: [172, 182, 6, 36, 160, 48, 167, 3] }; 844 pub const FWPM_CALLOUT_RESERVED_AUTH_CONNECT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 680219213, data2: 1382, data3: 19993, data4: [182, 18, 143, 68, 26, 46, 89, 73] }; 845 pub const FWPM_CALLOUT_RESERVED_AUTH_CONNECT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 12077970, data2: 11102, data3: 19313, data4: [171, 14, 170, 202, 67, 227, 135, 230] }; 846 pub const FWPM_CALLOUT_SET_OPTIONS_AUTH_CONNECT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 847 data1: 3159892608, 848 data2: 5751, 849 data3: 16873, 850 data4: [148, 171, 194, 252, 177, 92, 46, 235], 851 }; 852 pub const FWPM_CALLOUT_SET_OPTIONS_AUTH_CONNECT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2565158716, data2: 47236, data3: 18703, data4: [182, 95, 47, 106, 74, 87, 81, 149] }; 853 pub const FWPM_CALLOUT_SET_OPTIONS_AUTH_RECV_ACCEPT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 854 data1: 760606728, 855 data2: 3073, 856 data3: 20370, 857 data4: [178, 110, 160, 138, 148, 86, 155, 141], 858 }; 859 pub const FWPM_CALLOUT_SET_OPTIONS_AUTH_RECV_ACCEPT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 860 data1: 1661044023, 861 data2: 62081, 862 data3: 19908, 863 data4: [131, 211, 141, 236, 24, 183, 173, 226], 864 }; 865 #[repr(C)] 866 pub struct FWPM_CALLOUT_SUBSCRIPTION0 { 867 pub enumTemplate: *mut FWPM_CALLOUT_ENUM_TEMPLATE0, 868 pub flags: u32, 869 pub sessionKey: ::windows_sys::core::GUID, 870 } 871 impl ::core::marker::Copy for FWPM_CALLOUT_SUBSCRIPTION0 {} 872 impl ::core::clone::Clone for FWPM_CALLOUT_SUBSCRIPTION0 { clone(&self) -> Self873 fn clone(&self) -> Self { 874 *self 875 } 876 } 877 pub const FWPM_CALLOUT_TCP_CHIMNEY_ACCEPT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 878 data1: 3783519410, 879 data2: 14975, 880 data3: 19284, 881 data4: [138, 217, 118, 5, 14, 216, 128, 202], 882 }; 883 pub const FWPM_CALLOUT_TCP_CHIMNEY_ACCEPT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58249025, data2: 49048, data3: 17923, data4: [129, 242, 127, 18, 88, 96, 121, 246] }; 884 pub const FWPM_CALLOUT_TCP_CHIMNEY_CONNECT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 885 data1: 4091611827, 886 data2: 11301, 887 data3: 17017, 888 data4: [172, 54, 195, 15, 193, 129, 190, 196], 889 }; 890 pub const FWPM_CALLOUT_TCP_CHIMNEY_CONNECT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 891 data1: 971120773, 892 data2: 41793, 893 data3: 17148, 894 data4: [162, 121, 174, 201, 78, 104, 156, 86], 895 }; 896 pub const FWPM_CALLOUT_TCP_TEMPLATES_ACCEPT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 897 data1: 790885840, 898 data2: 16580, 899 data3: 19521, 900 data4: [162, 84, 70, 216, 219, 168, 149, 124], 901 }; 902 pub const FWPM_CALLOUT_TCP_TEMPLATES_ACCEPT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2991674096, data2: 39196, data3: 20307, data4: [187, 231, 210, 75, 69, 254, 99, 44] }; 903 pub const FWPM_CALLOUT_TCP_TEMPLATES_CONNECT_LAYER_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 559549241, data2: 19326, data3: 20186, data4: [140, 228, 23, 150, 121, 223, 98, 36] }; 904 pub const FWPM_CALLOUT_TCP_TEMPLATES_CONNECT_LAYER_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2206939041, data2: 23570, data3: 19764, data4: [139, 56, 7, 135, 40, 178, 210, 92] }; 905 pub const FWPM_CALLOUT_TEREDO_ALE_LISTEN_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2175022311, data2: 62988, data3: 17272, data4: [186, 184, 198, 37, 163, 15, 1, 151] }; 906 pub const FWPM_CALLOUT_TEREDO_ALE_RESOURCE_ASSIGNMENT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 907 data1: 834229138, 908 data2: 1646, 909 data3: 17058, 910 data4: [183, 219, 146, 248, 172, 221, 86, 249], 911 }; 912 pub const FWPM_CALLOUT_WFP_TRANSPORT_LAYER_V4_SILENT_DROP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 913 data1: 3986720262, 914 data2: 9364, 915 data3: 19832, 916 data4: [137, 188, 103, 131, 124, 3, 185, 105], 917 }; 918 pub const FWPM_CALLOUT_WFP_TRANSPORT_LAYER_V6_SILENT_DROP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 919 data1: 2257833076, 920 data2: 41077, 921 data3: 16726, 922 data4: [180, 118, 146, 134, 238, 206, 129, 78], 923 }; 924 pub type FWPM_CHANGE_TYPE = i32; 925 pub const FWPM_CHANGE_ADD: FWPM_CHANGE_TYPE = 1i32; 926 pub const FWPM_CHANGE_DELETE: FWPM_CHANGE_TYPE = 2i32; 927 pub const FWPM_CHANGE_TYPE_MAX: FWPM_CHANGE_TYPE = 3i32; 928 #[repr(C)] 929 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 930 pub struct FWPM_CLASSIFY_OPTION0 { 931 pub r#type: FWP_CLASSIFY_OPTION_TYPE, 932 pub value: FWP_VALUE0, 933 } 934 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 935 impl ::core::marker::Copy for FWPM_CLASSIFY_OPTION0 {} 936 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 937 impl ::core::clone::Clone for FWPM_CLASSIFY_OPTION0 { clone(&self) -> Self938 fn clone(&self) -> Self { 939 *self 940 } 941 } 942 #[repr(C)] 943 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 944 pub struct FWPM_CLASSIFY_OPTIONS0 { 945 pub numOptions: u32, 946 pub options: *mut FWPM_CLASSIFY_OPTION0, 947 } 948 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 949 impl ::core::marker::Copy for FWPM_CLASSIFY_OPTIONS0 {} 950 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 951 impl ::core::clone::Clone for FWPM_CLASSIFY_OPTIONS0 { clone(&self) -> Self952 fn clone(&self) -> Self { 953 *self 954 } 955 } 956 pub const FWPM_CONDITION_ALE_APP_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 957 data1: 3616415367, 958 data2: 34372, 959 data3: 20133, 960 data4: [148, 55, 216, 9, 236, 239, 201, 113], 961 }; 962 pub const FWPM_CONDITION_ALE_EFFECTIVE_NAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 963 data1: 2972154778, 964 data2: 46977, 965 data3: 16636, 966 data4: [150, 113, 229, 241, 185, 137, 243, 78], 967 }; 968 pub const FWPM_CONDITION_ALE_NAP_CONTEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1176984221, data2: 49215, data3: 19831, data4: [183, 132, 28, 87, 244, 208, 39, 83] }; 969 pub const FWPM_CONDITION_ALE_ORIGINAL_APP_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 970 data1: 242012294, 971 data2: 57851, 972 data3: 16914, 973 data4: [132, 47, 138, 159, 153, 63, 179, 246], 974 }; 975 pub const FWPM_CONDITION_ALE_PACKAGE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1908177146, data2: 61820, data3: 18839, data4: [166, 2, 106, 187, 38, 31, 53, 28] }; 976 pub const FWPM_CONDITION_ALE_PROMISCUOUS_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 479676278, data2: 29058, data3: 18153, data4: [175, 211, 176, 41, 16, 227, 3, 52] }; 977 pub const FWPM_CONDITION_ALE_REAUTH_REASON: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3028472359, data2: 6521, data3: 19096, data4: [128, 68, 24, 187, 230, 35, 117, 66] }; 978 pub const FWPM_CONDITION_ALE_REMOTE_MACHINE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 979 data1: 446988113, 980 data2: 32659, 981 data3: 17672, 982 data4: [162, 113, 129, 171, 176, 12, 156, 171], 983 }; 984 pub const FWPM_CONDITION_ALE_REMOTE_USER_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4130370487, data2: 393, data3: 19120, data4: [149, 164, 97, 35, 203, 250, 184, 98] }; 985 pub const FWPM_CONDITION_ALE_SECURITY_ATTRIBUTE_FQBN_VALUE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 986 data1: 933590681, 987 data2: 22659, 988 data3: 18787, 989 data4: [146, 184, 62, 112, 70, 136, 176, 173], 990 }; 991 pub const FWPM_CONDITION_ALE_SIO_FIREWALL_SYSTEM_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3119833224, data2: 52120, data3: 20219, data4: [162, 199, 173, 7, 51, 38, 67, 219] }; 992 pub const FWPM_CONDITION_ALE_USER_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 993 data1: 2936289802, 994 data2: 45901, 995 data3: 20358, 996 data4: [151, 156, 201, 3, 113, 175, 110, 102], 997 }; 998 pub const FWPM_CONDITION_ARRIVAL_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3423112627, data2: 6034, data3: 19057, data4: [176, 249, 3, 125, 33, 205, 130, 139] }; 999 pub const FWPM_CONDITION_ARRIVAL_INTERFACE_PROFILE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1000 data1: 3456002731, 1001 data2: 49283, 1002 data3: 16706, 1003 data4: [134, 121, 192, 143, 149, 50, 156, 97], 1004 }; 1005 pub const FWPM_CONDITION_ARRIVAL_INTERFACE_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1006 data1: 2314834142, 1007 data2: 59288, 1008 data3: 20077, 1009 data4: [171, 118, 124, 149, 88, 41, 46, 111], 1010 }; 1011 pub const FWPM_CONDITION_ARRIVAL_TUNNEL_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1360094940, data2: 31372, data3: 19111, data4: [181, 51, 149, 171, 89, 251, 3, 64] }; 1012 pub const FWPM_CONDITION_AUTHENTICATION_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3947203797, data2: 55931, data3: 20217, data4: [141, 67, 123, 10, 132, 3, 50, 242] }; 1013 pub const FWPM_CONDITION_CLIENT_CERT_KEY_LENGTH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2750152903, data2: 1524, data3: 19959, data4: [145, 242, 95, 96, 217, 31, 244, 67] }; 1014 pub const FWPM_CONDITION_CLIENT_CERT_OID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3297881438, data2: 63618, data3: 17027, data4: [185, 22, 67, 107, 16, 63, 244, 173] }; 1015 pub const FWPM_CONDITION_CLIENT_TOKEN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1016 data1: 3257465886, 1017 data2: 16442, 1018 data3: 17528, 1019 data4: [190, 5, 201, 186, 164, 192, 90, 206], 1020 }; 1021 pub const FWPM_CONDITION_COMPARTMENT_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 900174251, data2: 1196, data3: 20466, data4: [166, 187, 218, 108, 250, 199, 24, 6] }; 1022 pub const FWPM_CONDITION_CURRENT_PROFILE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2872062921, data2: 49379, data3: 18265, data4: [147, 125, 87, 88, 198, 93, 74, 227] }; 1023 pub const FWPM_CONDITION_DCOM_APP_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4281236301, data2: 12562, data3: 18288, data4: [182, 54, 77, 36, 174, 58, 106, 242] }; 1024 pub const FWPM_CONDITION_DESTINATION_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 902784290, data2: 16697, data3: 17902, data4: [160, 213, 103, 184, 9, 73, 216, 121] }; 1025 pub const FWPM_CONDITION_DESTINATION_SUB_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1026 data1: 729629593, 1027 data2: 54471, 1028 data3: 18232, 1029 data4: [162, 245, 233, 148, 180, 61, 163, 136], 1030 }; 1031 pub const FWPM_CONDITION_DIRECTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1032 data1: 2273624390, 1033 data2: 51863, 1034 data3: 17622, 1035 data4: [159, 209, 25, 251, 24, 64, 203, 247], 1036 }; 1037 pub const FWPM_CONDITION_EMBEDDED_LOCAL_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1038 data1: 1181918312, 1039 data2: 35338, 1040 data3: 16898, 1041 data4: [171, 180, 132, 158, 146, 230, 104, 9], 1042 }; 1043 pub const FWPM_CONDITION_EMBEDDED_LOCAL_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1044 data1: 3217701197, 1045 data2: 44251, 1046 data3: 18510, 1047 data4: [184, 230, 42, 255, 121, 117, 115, 69], 1048 }; 1049 pub const FWPM_CONDITION_EMBEDDED_PROTOCOL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1050 data1: 125321479, 1051 data2: 41630, 1052 data3: 19579, 1053 data4: [158, 199, 41, 196, 74, 250, 253, 188], 1054 }; 1055 pub const FWPM_CONDITION_EMBEDDED_REMOTE_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1056 data1: 2012105529, 1057 data2: 12915, 1058 data3: 18033, 1059 data4: [182, 59, 171, 111, 235, 102, 238, 182], 1060 }; 1061 pub const FWPM_CONDITION_EMBEDDED_REMOTE_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1062 data1: 3403994785, 1063 data2: 10600, 1064 data3: 16621, 1065 data4: [164, 206, 84, 113, 96, 221, 168, 141], 1066 }; 1067 pub const FWPM_CONDITION_ETHER_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4245197965, data2: 41497, data3: 19794, data4: [187, 152, 26, 85, 64, 238, 123, 78] }; 1068 pub const FWPM_CONDITION_FLAGS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1663885883, data2: 20839, data3: 17244, data4: [134, 215, 233, 3, 104, 74, 168, 12] }; 1069 pub const FWPM_CONDITION_IMAGE_NAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1070 data1: 3492077133, 1071 data2: 57002, 1072 data3: 17175, 1073 data4: [156, 133, 228, 14, 246, 225, 64, 195], 1074 }; 1075 pub const FWPM_CONDITION_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1076 data1: 1719654229, 1077 data2: 54933, 1078 data3: 17226, 1079 data4: [138, 245, 211, 131, 90, 18, 89, 188], 1080 }; 1081 pub const FWPM_CONDITION_INTERFACE_MAC_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1082 data1: 4142284238, 1083 data2: 8011, 1084 data3: 19563, 1085 data4: [182, 239, 17, 101, 231, 31, 142, 231], 1086 }; 1087 pub const FWPM_CONDITION_INTERFACE_QUARANTINE_EPOCH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3437661534, data2: 1339, data3: 17320, data4: [154, 111, 51, 56, 76, 40, 228, 246] }; 1088 pub const FWPM_CONDITION_INTERFACE_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1089 data1: 3673738516, 1090 data2: 57502, 1091 data3: 19603, 1092 data4: [165, 174, 197, 193, 59, 115, 255, 202], 1093 }; 1094 pub const FWPM_CONDITION_IPSEC_POLICY_KEY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2906119907, data2: 29231, data3: 17868, data4: [164, 227, 6, 128, 72, 18, 68, 82] }; 1095 pub const FWPM_CONDITION_IPSEC_SECURITY_REALM_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1096 data1: 933590784, 1097 data2: 22660, 1098 data3: 18788, 1099 data4: [146, 184, 62, 112, 70, 136, 176, 173], 1100 }; 1101 pub const FWPM_CONDITION_IP_ARRIVAL_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1102 data1: 1636473709, 1103 data2: 14443, 1104 data3: 16694, 1105 data4: [173, 110, 181, 21, 135, 207, 177, 205], 1106 }; 1107 pub const FWPM_CONDITION_IP_DESTINATION_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1108 data1: 762909499, 1109 data2: 45968, 1110 data3: 17862, 1111 data4: [134, 153, 172, 172, 234, 175, 237, 51], 1112 }; 1113 pub const FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1114 data1: 516011977, 1115 data2: 20202, 1116 data3: 20318, 1117 data4: [185, 239, 118, 190, 170, 175, 23, 238], 1118 }; 1119 pub const FWPM_CONDITION_IP_DESTINATION_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3463311173, data2: 24827, data3: 19067, data4: [163, 4, 175, 48, 161, 23, 0, 14] }; 1120 pub const FWPM_CONDITION_IP_FORWARD_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 276215973, data2: 25379, data3: 19550, data4: [152, 16, 232, 211, 252, 158, 97, 54] }; 1121 pub const FWPM_CONDITION_IP_LOCAL_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1122 data1: 3656253662, 1123 data2: 49647, 1124 data3: 17943, 1125 data4: [191, 227, 255, 216, 245, 160, 137, 87], 1126 }; 1127 pub const FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1128 data1: 1858598596, 1129 data2: 14187, 1130 data3: 17879, 1131 data4: [158, 156, 211, 55, 206, 220, 210, 55], 1132 }; 1133 pub const FWPM_CONDITION_IP_LOCAL_ADDRESS_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 61221323, data2: 28242, data3: 18936, data4: [156, 65, 87, 9, 99, 60, 9, 207] }; 1134 pub const FWPM_CONDITION_IP_LOCAL_ADDRESS_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 595705476, data2: 29988, data3: 17843, data4: [160, 91, 30, 99, 125, 156, 122, 106] }; 1135 pub const FWPM_CONDITION_IP_LOCAL_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1136 data1: 1289103945, 1137 data2: 22979, 1138 data3: 18793, 1139 data4: [183, 243, 189, 165, 211, 40, 144, 164], 1140 }; 1141 pub const FWPM_CONDITION_IP_LOCAL_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1142 data1: 203137455, 1143 data2: 22373, 1144 data3: 17727, 1145 data4: [175, 34, 168, 247, 145, 172, 119, 91], 1146 }; 1147 pub const FWPM_CONDITION_IP_NEXTHOP_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1148 data1: 3938337930, 1149 data2: 42769, 1150 data3: 19812, 1151 data4: [133, 183, 63, 118, 182, 82, 153, 199], 1152 }; 1153 pub const FWPM_CONDITION_IP_NEXTHOP_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2477690715, data2: 32623, data3: 18201, data4: [152, 200, 20, 233, 116, 41, 239, 4] }; 1154 pub const FWPM_CONDITION_IP_PHYSICAL_ARRIVAL_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3662730696, data2: 64013, data3: 19593, data4: [176, 50, 110, 98, 19, 109, 30, 150] }; 1155 pub const FWPM_CONDITION_IP_PHYSICAL_NEXTHOP_INTERFACE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1156 data1: 4036744654, 1157 data2: 20816, 1158 data3: 18622, 1159 data4: [176, 152, 194, 81, 82, 251, 31, 146], 1160 }; 1161 pub const FWPM_CONDITION_IP_PROTOCOL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1162 data1: 963768107, 1163 data2: 25150, 1164 data3: 20378, 1165 data4: [140, 177, 110, 121, 184, 6, 185, 167], 1166 }; 1167 pub const FWPM_CONDITION_IP_REMOTE_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2989862554, data2: 7524, data3: 18872, data4: [164, 76, 95, 243, 217, 9, 80, 69] }; 1168 pub const FWPM_CONDITION_IP_REMOTE_ADDRESS_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 535541264, data2: 15308, data3: 17889, data4: [188, 54, 46, 6, 126, 44, 177, 134] }; 1169 pub const FWPM_CONDITION_IP_REMOTE_ADDRESS_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 611196300, data2: 35822, data3: 16408, data4: [155, 152, 49, 212, 88, 47, 51, 97] }; 1170 pub const FWPM_CONDITION_IP_REMOTE_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1171 data1: 3277480013, 1172 data2: 53803, 1173 data3: 19994, 1174 data4: [145, 180, 104, 246, 116, 238, 103, 75], 1175 }; 1176 pub const FWPM_CONDITION_IP_SOURCE_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2929101182, data2: 11924, data3: 19401, data4: [179, 19, 178, 126, 232, 14, 87, 77] }; 1177 pub const FWPM_CONDITION_IP_SOURCE_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1178 data1: 2796547985, 1179 data2: 15860, 1180 data3: 18224, 1181 data4: [162, 20, 245, 66, 106, 235, 248, 33], 1182 }; 1183 pub const FWPM_CONDITION_KM_AUTH_NAP_CONTEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 902883854, data2: 5578, data3: 18731, data4: [144, 14, 151, 253, 70, 53, 44, 206] }; 1184 pub const FWPM_CONDITION_KM_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1185 data1: 4277093762, 1186 data2: 61327, 1187 data3: 20347, 1188 data4: [133, 139, 144, 119, 209, 34, 222, 71], 1189 }; 1190 pub const FWPM_CONDITION_KM_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4279197513, data2: 3307, data3: 18459, data4: [134, 56, 20, 121, 121, 31, 63, 44] }; 1191 pub const FWPM_CONDITION_L2_FLAGS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1192 data1: 2076458175, 1193 data2: 14266, 1194 data3: 17905, 1195 data4: [183, 74, 130, 255, 81, 142, 235, 16], 1196 }; 1197 pub const FWPM_CONDITION_LOCAL_INTERFACE_PROFILE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1198 data1: 1321170274, 1199 data2: 40728, 1200 data3: 19718, 1201 data4: [153, 65, 167, 166, 37, 116, 77, 113], 1202 }; 1203 pub const FWPM_CONDITION_MAC_DESTINATION_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 82455187, data2: 34188, data3: 16423, data4: [182, 19, 180, 49, 128, 199, 133, 158] }; 1204 pub const FWPM_CONDITION_MAC_DESTINATION_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1205 data1: 2919573810, 1206 data2: 61250, 1207 data3: 20121, 1208 data4: [177, 41, 243, 179, 19, 158, 52, 247], 1209 }; 1210 pub const FWPM_CONDITION_MAC_LOCAL_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1211 data1: 3650742657, 1212 data2: 31048, 1213 data3: 19587, 1214 data4: [183, 66, 200, 78, 59, 103, 143, 143], 1215 }; 1216 pub const FWPM_CONDITION_MAC_LOCAL_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1217 data1: 3425776988, 1218 data2: 12403, 1219 data3: 20475, 1220 data4: [161, 79, 121, 65, 92, 177, 234, 209], 1221 }; 1222 pub const FWPM_CONDITION_MAC_REMOTE_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1083125460, data2: 14960, data3: 19277, data4: [146, 166, 65, 90, 194, 14, 47, 18] }; 1223 pub const FWPM_CONDITION_MAC_REMOTE_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1224 data1: 41938356, 1225 data2: 61889, 1226 data3: 16432, 1227 data4: [181, 100, 238, 119, 127, 216, 103, 234], 1228 }; 1229 pub const FWPM_CONDITION_MAC_SOURCE_ADDRESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1230 data1: 2071549009, 1231 data2: 61942, 1232 data3: 19717, 1233 data4: [183, 203, 33, 119, 157, 128, 35, 54], 1234 }; 1235 pub const FWPM_CONDITION_MAC_SOURCE_ADDRESS_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1545302756, data2: 10654, data3: 17463, data4: [162, 152, 188, 63, 1, 75, 61, 194] }; 1236 pub const FWPM_CONDITION_NDIS_MEDIA_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3409039089, data2: 31005, data3: 18235, data4: [137, 209, 97, 197, 152, 67, 4, 160] }; 1237 pub const FWPM_CONDITION_NDIS_PHYSICAL_MEDIA_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 885495843, data2: 49705, data3: 17650, data4: [184, 60, 116, 2, 8, 130, 174, 119] }; 1238 pub const FWPM_CONDITION_NDIS_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1239 data1: 3682317355, 1240 data2: 11692, 1241 data3: 19668, 1242 data4: [165, 154, 224, 189, 206, 30, 104, 52], 1243 }; 1244 pub const FWPM_CONDITION_NET_EVENT_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1245 data1: 544119190, 1246 data2: 18702, 1247 data3: 16591, 1248 data4: [184, 49, 179, 134, 65, 235, 111, 203], 1249 }; 1250 pub const FWPM_CONDITION_NEXTHOP_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1251 data1: 328099976, 1252 data2: 31416, 1253 data3: 19813, 1254 data4: [158, 232, 5, 145, 188, 246, 164, 148], 1255 }; 1256 pub const FWPM_CONDITION_NEXTHOP_INTERFACE_PROFILE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1257 data1: 3623852630, 1258 data2: 52650, 1259 data3: 18219, 1260 data4: [132, 219, 210, 57, 99, 193, 209, 191], 1261 }; 1262 pub const FWPM_CONDITION_NEXTHOP_INTERFACE_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1263 data1: 2538830956, 1264 data2: 55715, 1265 data3: 18279, 1266 data4: [163, 129, 233, 66, 103, 92, 217, 32], 1267 }; 1268 pub const FWPM_CONDITION_NEXTHOP_SUB_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1269 data1: 4018823458, 1270 data2: 1399, 1271 data3: 17831, 1272 data4: [154, 175, 130, 95, 190, 180, 251, 149], 1273 }; 1274 pub const FWPM_CONDITION_NEXTHOP_TUNNEL_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1275 data1: 1924243729, 1276 data2: 39035, 1277 data3: 18208, 1278 data4: [153, 221, 199, 197, 118, 250, 45, 76], 1279 }; 1280 pub const FWPM_CONDITION_ORIGINAL_ICMP_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1281 data1: 124648894, 1282 data2: 50540, 1283 data3: 20338, 1284 data4: [174, 138, 44, 254, 126, 92, 130, 134], 1285 }; 1286 pub const FWPM_CONDITION_ORIGINAL_PROFILE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1189746001, data2: 8789, data3: 18731, data4: [128, 25, 170, 190, 238, 52, 159, 64] }; 1287 pub const FWPM_CONDITION_PEER_NAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2605944962, data2: 60304, data3: 16774, data4: [166, 204, 222, 91, 99, 35, 80, 22] }; 1288 pub const FWPM_CONDITION_PIPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 466646045, data2: 58335, data3: 20004, data4: [134, 52, 118, 32, 70, 238, 246, 235] }; 1289 pub const FWPM_CONDITION_PROCESS_WITH_RPC_IF_UUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3809575080, data2: 48061, data3: 19732, data4: [166, 94, 113, 87, 176, 98, 51, 187] }; 1290 pub const FWPM_CONDITION_QM_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1291 data1: 4132423377, 1292 data2: 63947, 1293 data3: 17362, 1294 data4: [138, 95, 225, 59, 200, 148, 242, 101], 1295 }; 1296 pub const FWPM_CONDITION_REAUTHORIZE_REASON: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 287334028, data2: 4526, data3: 17786, data4: [138, 68, 71, 112, 38, 221, 118, 74] }; 1297 pub const FWPM_CONDITION_REMOTE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1298 data1: 4135675645, 1299 data2: 1666, 1300 data3: 19593, 1301 data4: [184, 245, 134, 67, 108, 126, 249, 183], 1302 }; 1303 pub const FWPM_CONDITION_REMOTE_USER_TOKEN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2616258150, data2: 1737, data3: 16825, data4: [132, 218, 40, 140, 180, 58, 245, 31] }; 1304 pub const FWPM_CONDITION_RESERVED0: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1305 data1: 1737444843, 1306 data2: 17839, 1307 data3: 18562, 1308 data4: [147, 254, 25, 212, 114, 157, 152, 52], 1309 }; 1310 pub const FWPM_CONDITION_RESERVED1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1311 data1: 3625515047, 1312 data2: 23657, 1313 data3: 18667, 1314 data4: [191, 128, 216, 107, 23, 117, 95, 151], 1315 }; 1316 pub const FWPM_CONDITION_RESERVED10: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3111772802, data2: 54817, data3: 19596, data4: [177, 132, 177, 5, 166, 28, 54, 206] }; 1317 pub const FWPM_CONDITION_RESERVED11: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 761458253, data2: 573, data3: 16671, data4: [149, 130, 67, 172, 187, 121, 89, 117] }; 1318 pub const FWPM_CONDITION_RESERVED12: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1319 data1: 2741468210, 1320 data2: 32309, 1321 data3: 19932, 1322 data4: [147, 218, 232, 195, 63, 201, 35, 199], 1323 }; 1324 pub const FWPM_CONDITION_RESERVED13: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 861552272, data2: 33962, data3: 17141, data4: [158, 111, 89, 48, 149, 54, 164, 76] }; 1325 pub const FWPM_CONDITION_RESERVED14: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 820268450, data2: 12058, data3: 16662, data4: [165, 89, 249, 7, 222, 131, 96, 74] }; 1326 pub const FWPM_CONDITION_RESERVED15: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1327 data1: 3132634127, 1328 data2: 45024, 1329 data3: 17361, 1330 data4: [128, 216, 92, 164, 86, 150, 45, 227], 1331 }; 1332 pub const FWPM_CONDITION_RESERVED2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1333 data1: 1406407229, 1334 data2: 57691, 1335 data3: 20100, 1336 data4: [183, 168, 220, 225, 111, 123, 98, 217], 1337 }; 1338 pub const FWPM_CONDITION_RESERVED3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2137951395, data2: 26118, data3: 18738, data4: [151, 199, 225, 242, 7, 16, 175, 59] }; 1339 pub const FWPM_CONDITION_RESERVED4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1340 data1: 1599661634, 1341 data2: 47415, 1342 data3: 18782, 1343 data4: [169, 75, 246, 176, 81, 164, 146, 80], 1344 }; 1345 pub const FWPM_CONDITION_RESERVED5: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1346 data1: 2611541709, 1347 data2: 63356, 1348 data3: 17382, 1349 data4: [136, 71, 17, 147, 157, 197, 219, 90], 1350 }; 1351 pub const FWPM_CONDITION_RESERVED6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4047340733, data2: 22997, data3: 17604, data4: [136, 23, 94, 205, 174, 24, 5, 189] }; 1352 pub const FWPM_CONDITION_RESERVED7: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1705048368, data2: 17885, data3: 18819, data4: [170, 51, 239, 199, 182, 17, 175, 8] }; 1353 pub const FWPM_CONDITION_RESERVED8: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1329744244, data2: 3090, data3: 18454, data4: [155, 71, 154, 84, 125, 179, 154, 50] }; 1354 pub const FWPM_CONDITION_RESERVED9: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3464028431, data2: 5119, data3: 19568, data4: [134, 67, 54, 173, 24, 121, 175, 163] }; 1355 pub const FWPM_CONDITION_RPC_AUTH_LEVEL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3852512981, data2: 22956, data3: 18154, data4: [190, 5, 165, 240, 94, 207, 68, 110] }; 1356 pub const FWPM_CONDITION_RPC_AUTH_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1357 data1: 3669652651, 1358 data2: 3431, 1359 data3: 17383, 1360 data4: [152, 110, 117, 184, 79, 130, 245, 148], 1361 }; 1362 pub const FWPM_CONDITION_RPC_EP_FLAGS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 562790730, data2: 2617, data3: 18872, data4: [142, 113, 194, 12, 57, 199, 221, 46] }; 1363 pub const FWPM_CONDITION_RPC_EP_VALUE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3704529081, data2: 2182, data3: 17248, data4: [156, 106, 171, 4, 58, 36, 251, 169] }; 1364 pub const FWPM_CONDITION_RPC_IF_FLAG: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 596281906, data2: 12697, data3: 18045, data4: [135, 28, 39, 38, 33, 171, 56, 150] }; 1365 pub const FWPM_CONDITION_RPC_IF_UUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1366 data1: 2090630559, 1367 data2: 117, 1368 data3: 19765, 1369 data4: [160, 209, 131, 17, 196, 207, 106, 241], 1370 }; 1371 pub const FWPM_CONDITION_RPC_IF_VERSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1372 data1: 3938441655, 1373 data2: 4706, 1374 data3: 18990, 1375 data4: [173, 170, 95, 150, 246, 254, 50, 109], 1376 }; 1377 pub const FWPM_CONDITION_RPC_PROTOCOL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1378 data1: 655866996, 1379 data2: 14901, 1380 data3: 19687, 1381 data4: [183, 239, 200, 56, 250, 189, 236, 69], 1382 }; 1383 pub const FWPM_CONDITION_RPC_PROXY_AUTH_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1384 data1: 1083523042, 1385 data2: 34149, 1386 data3: 18265, 1387 data4: [132, 136, 23, 113, 180, 180, 181, 219], 1388 }; 1389 pub const FWPM_CONDITION_RPC_SERVER_NAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1390 data1: 3053822501, 1391 data2: 50099, 1392 data3: 18631, 1393 data4: [152, 51, 122, 239, 169, 82, 117, 70], 1394 }; 1395 pub const FWPM_CONDITION_RPC_SERVER_PORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2156983877, data2: 39637, data3: 20027, data4: [159, 159, 128, 35, 202, 9, 121, 9] }; 1396 pub const FWPM_CONDITION_SEC_ENCRYPT_ALGORITHM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 221277936, data2: 59764, data3: 20340, data4: [181, 199, 89, 27, 13, 167, 213, 98] }; 1397 pub const FWPM_CONDITION_SEC_KEY_SIZE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1398 data1: 1198659643, 1399 data2: 52472, 1400 data3: 19179, 1401 data4: [188, 225, 198, 198, 22, 28, 143, 228], 1402 }; 1403 pub const FWPM_CONDITION_SOURCE_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 588329805, data2: 51501, data3: 17855, data4: [148, 150, 237, 244, 71, 130, 14, 45] }; 1404 pub const FWPM_CONDITION_SOURCE_SUB_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 90103197, data2: 44242, data3: 17249, data4: [141, 171, 249, 82, 93, 151, 102, 47] }; 1405 pub const FWPM_CONDITION_SUB_INTERFACE_INDEX: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1406 data1: 215229555, 1407 data2: 54817, 1408 data3: 19427, 1409 data4: [174, 140, 114, 163, 72, 210, 131, 225], 1410 }; 1411 pub const FWPM_CONDITION_TUNNEL_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1412 data1: 2007237687, 1413 data2: 34681, 1414 data3: 18536, 1415 data4: [162, 97, 245, 169, 2, 241, 192, 205], 1416 }; 1417 pub const FWPM_CONDITION_VLAN_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1418 data1: 2475600673, 1419 data2: 13848, 1420 data3: 20068, 1421 data4: [156, 165, 33, 65, 235, 218, 28, 162], 1422 }; 1423 pub const FWPM_CONDITION_VSWITCH_DESTINATION_INTERFACE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1424 data1: 2396294116, 1425 data2: 51494, 1426 data3: 18934, 1427 data4: [164, 246, 239, 48, 48, 227, 252, 22], 1428 }; 1429 pub const FWPM_CONDITION_VSWITCH_DESTINATION_INTERFACE_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1430 data1: 4204478214, 1431 data2: 12058, 1432 data3: 19543, 1433 data4: [158, 104, 167, 9, 139, 40, 219, 254], 1434 }; 1435 pub const FWPM_CONDITION_VSWITCH_DESTINATION_VM_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1436 data1: 1627826894, 1437 data2: 19937, 1438 data3: 19588, 1439 data4: [150, 113, 54, 55, 248, 188, 247, 49], 1440 }; 1441 pub const FWPM_CONDITION_VSWITCH_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1442 data1: 3299087546, 1443 data2: 17275, 1444 data3: 19942, 1445 data4: [153, 70, 217, 156, 27, 149, 179, 18], 1446 }; 1447 pub const FWPM_CONDITION_VSWITCH_NETWORK_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 299141963, data2: 59258, data3: 16564, data4: [145, 85, 57, 44, 144, 108, 38, 8] }; 1448 pub const FWPM_CONDITION_VSWITCH_SOURCE_INTERFACE_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1449 data1: 2135880267, 1450 data2: 45761, 1451 data3: 18744, 1452 data4: [186, 51, 161, 236, 190, 213, 18, 186], 1453 }; 1454 pub const FWPM_CONDITION_VSWITCH_SOURCE_INTERFACE_TYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1455 data1: 3870310562, 1456 data2: 60847, 1457 data3: 19510, 1458 data4: [144, 139, 242, 245, 138, 228, 56, 7], 1459 }; 1460 pub const FWPM_CONDITION_VSWITCH_SOURCE_VM_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1461 data1: 2620038850, 1462 data2: 40902, 1463 data3: 17084, 1464 data4: [189, 216, 64, 109, 77, 160, 190, 100], 1465 }; 1466 pub const FWPM_CONDITION_VSWITCH_TENANT_NETWORK_ID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1467 data1: 3691283516, 1468 data2: 31206, 1469 data3: 20036, 1470 data4: [160, 37, 101, 185, 187, 15, 159, 148], 1471 }; 1472 #[repr(C)] 1473 #[cfg(feature = "Win32_Foundation")] 1474 pub struct FWPM_CONNECTION0 { 1475 pub connectionId: u64, 1476 pub ipVersion: FWP_IP_VERSION, 1477 pub Anonymous1: FWPM_CONNECTION0_0, 1478 pub Anonymous2: FWPM_CONNECTION0_1, 1479 pub providerKey: *mut ::windows_sys::core::GUID, 1480 pub ipsecTrafficModeType: IPSEC_TRAFFIC_TYPE, 1481 pub keyModuleType: IKEEXT_KEY_MODULE_TYPE, 1482 pub mmCrypto: IKEEXT_PROPOSAL0, 1483 pub mmPeer: IKEEXT_CREDENTIAL2, 1484 pub emPeer: IKEEXT_CREDENTIAL2, 1485 pub bytesTransferredIn: u64, 1486 pub bytesTransferredOut: u64, 1487 pub bytesTransferredTotal: u64, 1488 pub startSysTime: super::super::Foundation::FILETIME, 1489 } 1490 #[cfg(feature = "Win32_Foundation")] 1491 impl ::core::marker::Copy for FWPM_CONNECTION0 {} 1492 #[cfg(feature = "Win32_Foundation")] 1493 impl ::core::clone::Clone for FWPM_CONNECTION0 { clone(&self) -> Self1494 fn clone(&self) -> Self { 1495 *self 1496 } 1497 } 1498 #[repr(C)] 1499 #[cfg(feature = "Win32_Foundation")] 1500 pub union FWPM_CONNECTION0_0 { 1501 pub localV4Address: u32, 1502 pub localV6Address: [u8; 16], 1503 } 1504 #[cfg(feature = "Win32_Foundation")] 1505 impl ::core::marker::Copy for FWPM_CONNECTION0_0 {} 1506 #[cfg(feature = "Win32_Foundation")] 1507 impl ::core::clone::Clone for FWPM_CONNECTION0_0 { clone(&self) -> Self1508 fn clone(&self) -> Self { 1509 *self 1510 } 1511 } 1512 #[repr(C)] 1513 #[cfg(feature = "Win32_Foundation")] 1514 pub union FWPM_CONNECTION0_1 { 1515 pub remoteV4Address: u32, 1516 pub remoteV6Address: [u8; 16], 1517 } 1518 #[cfg(feature = "Win32_Foundation")] 1519 impl ::core::marker::Copy for FWPM_CONNECTION0_1 {} 1520 #[cfg(feature = "Win32_Foundation")] 1521 impl ::core::clone::Clone for FWPM_CONNECTION0_1 { clone(&self) -> Self1522 fn clone(&self) -> Self { 1523 *self 1524 } 1525 } 1526 #[cfg(feature = "Win32_Foundation")] 1527 pub type FWPM_CONNECTION_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, eventtype: FWPM_CONNECTION_EVENT_TYPE, connection: *const FWPM_CONNECTION0); 1528 pub const FWPM_CONNECTION_ENUM_FLAG_QUERY_BYTES_TRANSFERRED: u32 = 1u32; 1529 #[repr(C)] 1530 pub struct FWPM_CONNECTION_ENUM_TEMPLATE0 { 1531 pub connectionId: u64, 1532 pub flags: u32, 1533 } 1534 impl ::core::marker::Copy for FWPM_CONNECTION_ENUM_TEMPLATE0 {} 1535 impl ::core::clone::Clone for FWPM_CONNECTION_ENUM_TEMPLATE0 { clone(&self) -> Self1536 fn clone(&self) -> Self { 1537 *self 1538 } 1539 } 1540 pub type FWPM_CONNECTION_EVENT_TYPE = i32; 1541 pub const FWPM_CONNECTION_EVENT_ADD: FWPM_CONNECTION_EVENT_TYPE = 0i32; 1542 pub const FWPM_CONNECTION_EVENT_DELETE: FWPM_CONNECTION_EVENT_TYPE = 1i32; 1543 pub const FWPM_CONNECTION_EVENT_MAX: FWPM_CONNECTION_EVENT_TYPE = 2i32; 1544 #[repr(C)] 1545 pub struct FWPM_CONNECTION_SUBSCRIPTION0 { 1546 pub enumTemplate: *mut FWPM_CONNECTION_ENUM_TEMPLATE0, 1547 pub flags: u32, 1548 pub sessionKey: ::windows_sys::core::GUID, 1549 } 1550 impl ::core::marker::Copy for FWPM_CONNECTION_SUBSCRIPTION0 {} 1551 impl ::core::clone::Clone for FWPM_CONNECTION_SUBSCRIPTION0 { clone(&self) -> Self1552 fn clone(&self) -> Self { 1553 *self 1554 } 1555 } 1556 #[repr(C)] 1557 #[cfg(feature = "Win32_Foundation")] 1558 pub struct FWPM_DISPLAY_DATA0 { 1559 pub name: super::super::Foundation::PWSTR, 1560 pub description: super::super::Foundation::PWSTR, 1561 } 1562 #[cfg(feature = "Win32_Foundation")] 1563 impl ::core::marker::Copy for FWPM_DISPLAY_DATA0 {} 1564 #[cfg(feature = "Win32_Foundation")] 1565 impl ::core::clone::Clone for FWPM_DISPLAY_DATA0 { clone(&self) -> Self1566 fn clone(&self) -> Self { 1567 *self 1568 } 1569 } 1570 pub type FWPM_DYNAMIC_KEYWORD_CALLBACK0 = unsafe extern "system" fn(notification: *mut ::core::ffi::c_void, context: *mut ::core::ffi::c_void); 1571 pub type FWPM_ENGINE_OPTION = i32; 1572 pub const FWPM_ENGINE_COLLECT_NET_EVENTS: FWPM_ENGINE_OPTION = 0i32; 1573 pub const FWPM_ENGINE_NET_EVENT_MATCH_ANY_KEYWORDS: FWPM_ENGINE_OPTION = 1i32; 1574 pub const FWPM_ENGINE_NAME_CACHE: FWPM_ENGINE_OPTION = 2i32; 1575 pub const FWPM_ENGINE_MONITOR_IPSEC_CONNECTIONS: FWPM_ENGINE_OPTION = 3i32; 1576 pub const FWPM_ENGINE_PACKET_QUEUING: FWPM_ENGINE_OPTION = 4i32; 1577 pub const FWPM_ENGINE_TXN_WATCHDOG_TIMEOUT_IN_MSEC: FWPM_ENGINE_OPTION = 5i32; 1578 pub const FWPM_ENGINE_OPTION_MAX: FWPM_ENGINE_OPTION = 6i32; 1579 pub const FWPM_ENGINE_OPTION_PACKET_BATCH_INBOUND: u32 = 4u32; 1580 pub const FWPM_ENGINE_OPTION_PACKET_QUEUE_FORWARD: u32 = 2u32; 1581 pub const FWPM_ENGINE_OPTION_PACKET_QUEUE_INBOUND: u32 = 1u32; 1582 pub const FWPM_ENGINE_OPTION_PACKET_QUEUE_NONE: u32 = 0u32; 1583 #[repr(C)] 1584 pub struct FWPM_FIELD0 { 1585 pub fieldKey: *mut ::windows_sys::core::GUID, 1586 pub r#type: FWPM_FIELD_TYPE, 1587 pub dataType: FWP_DATA_TYPE, 1588 } 1589 impl ::core::marker::Copy for FWPM_FIELD0 {} 1590 impl ::core::clone::Clone for FWPM_FIELD0 { clone(&self) -> Self1591 fn clone(&self) -> Self { 1592 *self 1593 } 1594 } 1595 pub type FWPM_FIELD_TYPE = i32; 1596 pub const FWPM_FIELD_RAW_DATA: FWPM_FIELD_TYPE = 0i32; 1597 pub const FWPM_FIELD_IP_ADDRESS: FWPM_FIELD_TYPE = 1i32; 1598 pub const FWPM_FIELD_FLAGS: FWPM_FIELD_TYPE = 2i32; 1599 pub const FWPM_FIELD_TYPE_MAX: FWPM_FIELD_TYPE = 3i32; 1600 #[repr(C)] 1601 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1602 pub struct FWPM_FILTER0 { 1603 pub filterKey: ::windows_sys::core::GUID, 1604 pub displayData: FWPM_DISPLAY_DATA0, 1605 pub flags: FWPM_FILTER_FLAGS, 1606 pub providerKey: *mut ::windows_sys::core::GUID, 1607 pub providerData: FWP_BYTE_BLOB, 1608 pub layerKey: ::windows_sys::core::GUID, 1609 pub subLayerKey: ::windows_sys::core::GUID, 1610 pub weight: FWP_VALUE0, 1611 pub numFilterConditions: u32, 1612 pub filterCondition: *mut FWPM_FILTER_CONDITION0, 1613 pub action: FWPM_ACTION0, 1614 pub Anonymous: FWPM_FILTER0_0, 1615 pub reserved: *mut ::windows_sys::core::GUID, 1616 pub filterId: u64, 1617 pub effectiveWeight: FWP_VALUE0, 1618 } 1619 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1620 impl ::core::marker::Copy for FWPM_FILTER0 {} 1621 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1622 impl ::core::clone::Clone for FWPM_FILTER0 { clone(&self) -> Self1623 fn clone(&self) -> Self { 1624 *self 1625 } 1626 } 1627 #[repr(C)] 1628 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1629 pub union FWPM_FILTER0_0 { 1630 pub rawContext: u64, 1631 pub providerContextKey: ::windows_sys::core::GUID, 1632 } 1633 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1634 impl ::core::marker::Copy for FWPM_FILTER0_0 {} 1635 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1636 impl ::core::clone::Clone for FWPM_FILTER0_0 { clone(&self) -> Self1637 fn clone(&self) -> Self { 1638 *self 1639 } 1640 } 1641 #[repr(C)] 1642 pub struct FWPM_FILTER_CHANGE0 { 1643 pub changeType: FWPM_CHANGE_TYPE, 1644 pub filterKey: ::windows_sys::core::GUID, 1645 pub filterId: u64, 1646 } 1647 impl ::core::marker::Copy for FWPM_FILTER_CHANGE0 {} 1648 impl ::core::clone::Clone for FWPM_FILTER_CHANGE0 { clone(&self) -> Self1649 fn clone(&self) -> Self { 1650 *self 1651 } 1652 } 1653 pub type FWPM_FILTER_CHANGE_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, change: *const FWPM_FILTER_CHANGE0); 1654 #[repr(C)] 1655 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1656 pub struct FWPM_FILTER_CONDITION0 { 1657 pub fieldKey: ::windows_sys::core::GUID, 1658 pub matchType: FWP_MATCH_TYPE, 1659 pub conditionValue: FWP_CONDITION_VALUE0, 1660 } 1661 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1662 impl ::core::marker::Copy for FWPM_FILTER_CONDITION0 {} 1663 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1664 impl ::core::clone::Clone for FWPM_FILTER_CONDITION0 { clone(&self) -> Self1665 fn clone(&self) -> Self { 1666 *self 1667 } 1668 } 1669 #[repr(C)] 1670 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1671 pub struct FWPM_FILTER_ENUM_TEMPLATE0 { 1672 pub providerKey: *mut ::windows_sys::core::GUID, 1673 pub layerKey: ::windows_sys::core::GUID, 1674 pub enumType: FWP_FILTER_ENUM_TYPE, 1675 pub flags: u32, 1676 pub providerContextTemplate: *mut FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0, 1677 pub numFilterConditions: u32, 1678 pub filterCondition: *mut FWPM_FILTER_CONDITION0, 1679 pub actionMask: u32, 1680 pub calloutKey: *mut ::windows_sys::core::GUID, 1681 } 1682 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1683 impl ::core::marker::Copy for FWPM_FILTER_ENUM_TEMPLATE0 {} 1684 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1685 impl ::core::clone::Clone for FWPM_FILTER_ENUM_TEMPLATE0 { clone(&self) -> Self1686 fn clone(&self) -> Self { 1687 *self 1688 } 1689 } 1690 pub type FWPM_FILTER_FLAGS = u32; 1691 pub const FWPM_FILTER_FLAG_NONE: FWPM_FILTER_FLAGS = 0u32; 1692 pub const FWPM_FILTER_FLAG_PERSISTENT: FWPM_FILTER_FLAGS = 1u32; 1693 pub const FWPM_FILTER_FLAG_BOOTTIME: FWPM_FILTER_FLAGS = 2u32; 1694 pub const FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT: FWPM_FILTER_FLAGS = 4u32; 1695 pub const FWPM_FILTER_FLAG_CLEAR_ACTION_RIGHT: FWPM_FILTER_FLAGS = 8u32; 1696 pub const FWPM_FILTER_FLAG_PERMIT_IF_CALLOUT_UNREGISTERED: FWPM_FILTER_FLAGS = 16u32; 1697 pub const FWPM_FILTER_FLAG_DISABLED: FWPM_FILTER_FLAGS = 32u32; 1698 pub const FWPM_FILTER_FLAG_INDEXED: FWPM_FILTER_FLAGS = 64u32; 1699 pub const FWPM_FILTER_FLAG_GAMEOS_ONLY: u32 = 512u32; 1700 pub const FWPM_FILTER_FLAG_HAS_SECURITY_REALM_PROVIDER_CONTEXT: u32 = 128u32; 1701 pub const FWPM_FILTER_FLAG_IPSEC_NO_ACQUIRE_INITIATE: u32 = 2048u32; 1702 pub const FWPM_FILTER_FLAG_RESERVED0: u32 = 4096u32; 1703 pub const FWPM_FILTER_FLAG_RESERVED1: u32 = 8192u32; 1704 pub const FWPM_FILTER_FLAG_SILENT_MODE: u32 = 1024u32; 1705 pub const FWPM_FILTER_FLAG_SYSTEMOS_ONLY: u32 = 256u32; 1706 #[repr(C)] 1707 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1708 pub struct FWPM_FILTER_SUBSCRIPTION0 { 1709 pub enumTemplate: *mut FWPM_FILTER_ENUM_TEMPLATE0, 1710 pub flags: u32, 1711 pub sessionKey: ::windows_sys::core::GUID, 1712 } 1713 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1714 impl ::core::marker::Copy for FWPM_FILTER_SUBSCRIPTION0 {} 1715 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 1716 impl ::core::clone::Clone for FWPM_FILTER_SUBSCRIPTION0 { clone(&self) -> Self1717 fn clone(&self) -> Self { 1718 *self 1719 } 1720 } 1721 pub const FWPM_KEYING_MODULE_AUTHIP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1722 data1: 300145376, 1723 data2: 56614, 1724 data3: 17808, 1725 data4: [133, 125, 171, 75, 40, 209, 160, 149], 1726 }; 1727 pub const FWPM_KEYING_MODULE_IKE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2847668103, data2: 33448, data3: 17851, data4: [164, 0, 93, 126, 89, 82, 199, 169] }; 1728 pub const FWPM_KEYING_MODULE_IKEV2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 68653772, data2: 36615, data3: 16797, data4: [163, 148, 113, 105, 104, 203, 22, 71] }; 1729 #[repr(C)] 1730 #[cfg(feature = "Win32_Foundation")] 1731 pub struct FWPM_LAYER0 { 1732 pub layerKey: ::windows_sys::core::GUID, 1733 pub displayData: FWPM_DISPLAY_DATA0, 1734 pub flags: u32, 1735 pub numFields: u32, 1736 pub field: *mut FWPM_FIELD0, 1737 pub defaultSubLayerKey: ::windows_sys::core::GUID, 1738 pub layerId: u16, 1739 } 1740 #[cfg(feature = "Win32_Foundation")] 1741 impl ::core::marker::Copy for FWPM_LAYER0 {} 1742 #[cfg(feature = "Win32_Foundation")] 1743 impl ::core::clone::Clone for FWPM_LAYER0 { clone(&self) -> Self1744 fn clone(&self) -> Self { 1745 *self 1746 } 1747 } 1748 pub const FWPM_LAYER_ALE_AUTH_CONNECT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1749 data1: 3280820177, 1750 data2: 1447, 1751 data3: 19507, 1752 data4: [144, 79, 127, 188, 238, 230, 14, 130], 1753 }; 1754 pub const FWPM_LAYER_ALE_AUTH_CONNECT_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1755 data1: 3593644033, 1756 data2: 62906, 1757 data3: 19158, 1758 data4: [150, 227, 96, 112, 23, 217, 131, 106], 1759 }; 1760 pub const FWPM_LAYER_ALE_AUTH_CONNECT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1761 data1: 1248999739, 1762 data2: 12703, 1763 data3: 17596, 1764 data4: [132, 195, 186, 84, 220, 179, 182, 180], 1765 }; 1766 pub const FWPM_LAYER_ALE_AUTH_CONNECT_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1767 data1: 3380331448, 1768 data2: 51619, 1769 data3: 20019, 1770 data4: [134, 149, 142, 23, 170, 212, 222, 9], 1771 }; 1772 pub const FWPM_LAYER_ALE_AUTH_LISTEN_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1773 data1: 2293980589, 1774 data2: 30423, 1775 data3: 16935, 1776 data4: [156, 113, 223, 10, 62, 215, 190, 126], 1777 }; 1778 pub const FWPM_LAYER_ALE_AUTH_LISTEN_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1779 data1: 924711642, 1780 data2: 40742, 1781 data3: 17917, 1782 data4: [180, 235, 194, 158, 178, 18, 137, 63], 1783 }; 1784 pub const FWPM_LAYER_ALE_AUTH_LISTEN_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2060049956, data2: 6109, data3: 18452, data4: [180, 189, 169, 251, 201, 90, 50, 27] }; 1785 pub const FWPM_LAYER_ALE_AUTH_LISTEN_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1786 data1: 1617967879, 1787 data2: 25544, 1788 data3: 18665, 1789 data4: [173, 163, 18, 177, 175, 64, 166, 23], 1790 }; 1791 pub const FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3788349415, data2: 62645, data3: 17011, data4: [150, 192, 89, 46, 72, 123, 134, 80] }; 1792 pub const FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2666178971, data2: 48418, data3: 16935, data4: [145, 159, 0, 115, 198, 51, 87, 177] }; 1793 pub const FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1794 data1: 2746494103, 1795 data2: 40708, 1796 data3: 18034, 1797 data4: [184, 126, 206, 233, 196, 131, 37, 127], 1798 }; 1799 pub const FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1800 data1: 2303024023, 1801 data2: 56289, 1802 data3: 17727, 1803 data4: [162, 36, 19, 218, 137, 90, 243, 150], 1804 }; 1805 pub const FWPM_LAYER_ALE_BIND_REDIRECT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1721207981, data2: 50948, data3: 17068, data4: [134, 172, 124, 26, 35, 27, 210, 83] }; 1806 pub const FWPM_LAYER_ALE_BIND_REDIRECT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3203411100, data2: 24683, data3: 17718, data4: [140, 38, 28, 47, 199, 182, 49, 212] }; 1807 pub const FWPM_LAYER_ALE_CONNECT_REDIRECT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1808 data1: 3336977548, 1809 data2: 46980, 1810 data3: 17762, 1811 data4: [170, 125, 10, 103, 207, 202, 249, 163], 1812 }; 1813 pub const FWPM_LAYER_ALE_CONNECT_REDIRECT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1814 data1: 1484674215, 1815 data2: 32838, 1816 data3: 17082, 1817 data4: [160, 170, 183, 22, 37, 15, 199, 253], 1818 }; 1819 pub const FWPM_LAYER_ALE_ENDPOINT_CLOSURE_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3027657767, data2: 58018, data3: 18042, data4: [189, 126, 219, 205, 27, 216, 90, 9] }; 1820 pub const FWPM_LAYER_ALE_ENDPOINT_CLOSURE_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1821 data1: 3142806733, 1822 data2: 18261, 1823 data3: 19369, 1824 data4: [159, 247, 249, 237, 248, 105, 156, 123], 1825 }; 1826 pub const FWPM_LAYER_ALE_FLOW_ESTABLISHED_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1827 data1: 2944419594, 1828 data2: 21910, 1829 data3: 19475, 1830 data4: [153, 146, 83, 158, 111, 229, 121, 103], 1831 }; 1832 pub const FWPM_LAYER_ALE_FLOW_ESTABLISHED_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 342549673, data2: 41426, data3: 19779, data4: [163, 26, 76, 66, 104, 43, 142, 79] }; 1833 pub const FWPM_LAYER_ALE_FLOW_ESTABLISHED_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1834 data1: 1881264819, 1835 data2: 57252, 1836 data3: 16494, 1837 data4: [175, 235, 106, 250, 247, 231, 14, 253], 1838 }; 1839 pub const FWPM_LAYER_ALE_FLOW_ESTABLISHED_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1840 data1: 1184007734, 1841 data2: 48074, 1842 data3: 19318, 1843 data4: [148, 29, 15, 167, 245, 215, 211, 114], 1844 }; 1845 pub const FWPM_LAYER_ALE_RESOURCE_ASSIGNMENT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 306697837, data2: 2912, data3: 18965, data4: [141, 68, 113, 85, 208, 245, 58, 12] }; 1846 pub const FWPM_LAYER_ALE_RESOURCE_ASSIGNMENT_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 190321314, data2: 50175, data3: 20170, data4: [184, 141, 199, 158, 32, 172, 99, 34] }; 1847 pub const FWPM_LAYER_ALE_RESOURCE_ASSIGNMENT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1848 data1: 1436963041, 1849 data2: 24330, 1850 data3: 20170, 1851 data4: [166, 83, 136, 245, 59, 38, 170, 140], 1852 }; 1853 pub const FWPM_LAYER_ALE_RESOURCE_ASSIGNMENT_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1854 data1: 3418986683, 1855 data2: 50463, 1856 data3: 19482, 1857 data4: [187, 79, 151, 117, 252, 172, 171, 47], 1858 }; 1859 pub const FWPM_LAYER_ALE_RESOURCE_RELEASE_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1860 data1: 1949719758, 1861 data2: 52400, 1862 data3: 16410, 1863 data4: [191, 193, 184, 153, 52, 173, 126, 21], 1864 }; 1865 pub const FWPM_LAYER_ALE_RESOURCE_RELEASE_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4108701312, data2: 60876, data3: 19987, data4: [138, 47, 185, 20, 84, 187, 5, 123] }; 1866 pub const FWPM_LAYER_DATAGRAM_DATA_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1023983438, data2: 17910, data3: 18736, data4: [169, 34, 65, 112, 152, 226, 0, 39] }; 1867 pub const FWPM_LAYER_DATAGRAM_DATA_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 417542342, data2: 29256, data3: 20050, data4: [170, 171, 71, 46, 214, 119, 4, 253] }; 1868 pub const FWPM_LAYER_DATAGRAM_DATA_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4198891055, data2: 15546, data3: 17447, data4: [135, 252, 87, 185, 164, 177, 13, 0] }; 1869 pub const FWPM_LAYER_DATAGRAM_DATA_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1870 data1: 164749281, 1871 data2: 39814, 1872 data3: 19010, 1873 data4: [190, 157, 140, 49, 91, 146, 165, 208], 1874 }; 1875 pub const FWPM_LAYER_EGRESS_VSWITCH_ETHERNET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2261283504, data2: 30458, data3: 19321, data4: [147, 164, 7, 80, 83, 10, 226, 146] }; 1876 pub const FWPM_LAYER_EGRESS_VSWITCH_TRANSPORT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1877 data1: 3106099382, 1878 data2: 37360, 1879 data3: 18102, 1880 data4: [189, 196, 135, 29, 253, 74, 124, 152], 1881 }; 1882 pub const FWPM_LAYER_EGRESS_VSWITCH_TRANSPORT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 455995171, data2: 6273, data3: 16573, data4: [130, 244, 66, 84, 230, 49, 65, 203] }; 1883 #[repr(C)] 1884 pub struct FWPM_LAYER_ENUM_TEMPLATE0 { 1885 pub reserved: u64, 1886 } 1887 impl ::core::marker::Copy for FWPM_LAYER_ENUM_TEMPLATE0 {} 1888 impl ::core::clone::Clone for FWPM_LAYER_ENUM_TEMPLATE0 { clone(&self) -> Self1889 fn clone(&self) -> Self { 1890 *self 1891 } 1892 } 1893 pub const FWPM_LAYER_FLAG_BUFFERED: u32 = 8u32; 1894 pub const FWPM_LAYER_FLAG_BUILTIN: u32 = 2u32; 1895 pub const FWPM_LAYER_FLAG_CLASSIFY_MOSTLY: u32 = 4u32; 1896 pub const FWPM_LAYER_FLAG_KERNEL: u32 = 1u32; 1897 pub const FWPM_LAYER_IKEEXT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1898 data1: 2974514139, 1899 data2: 56253, 1900 data3: 18238, 1901 data4: [190, 212, 139, 71, 8, 212, 242, 112], 1902 }; 1903 pub const FWPM_LAYER_IKEEXT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1904 data1: 3058140851, 1905 data2: 63111, 1906 data3: 20153, 1907 data4: [137, 210, 142, 243, 42, 205, 171, 226], 1908 }; 1909 pub const FWPM_LAYER_INBOUND_ICMP_ERROR_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1910 data1: 1632213392, 1911 data2: 15542, 1912 data3: 20100, 1913 data4: [185, 80, 83, 185, 75, 105, 100, 243], 1914 }; 1915 pub const FWPM_LAYER_INBOUND_ICMP_ERROR_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1916 data1: 2796646517, 1917 data2: 60335, 1918 data3: 16467, 1919 data4: [164, 231, 33, 60, 129, 33, 237, 229], 1920 }; 1921 pub const FWPM_LAYER_INBOUND_ICMP_ERROR_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1922 data1: 1710865919, 1923 data2: 15149, 1924 data3: 20061, 1925 data4: [184, 198, 199, 32, 101, 31, 232, 152], 1926 }; 1927 pub const FWPM_LAYER_INBOUND_ICMP_ERROR_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2800209088, data2: 2299, data3: 18061, data4: [164, 114, 151, 113, 213, 89, 94, 9] }; 1928 pub const FWPM_LAYER_INBOUND_IPPACKET_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3362771391, data2: 8653, data3: 18814, data4: [160, 187, 23, 66, 92, 136, 92, 88] }; 1929 pub const FWPM_LAYER_INBOUND_IPPACKET_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1930 data1: 3047305424, 1931 data2: 43200, 1932 data3: 17650, 1933 data4: [145, 110, 153, 27, 83, 222, 209, 247], 1934 }; 1935 pub const FWPM_LAYER_INBOUND_IPPACKET_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4112528075, data2: 39196, data3: 18151, data4: [151, 29, 38, 1, 69, 154, 145, 202] }; 1936 pub const FWPM_LAYER_INBOUND_IPPACKET_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1937 data1: 3139748473, 1938 data2: 37812, 1939 data3: 18338, 1940 data4: [131, 173, 174, 22, 152, 181, 8, 133], 1941 }; 1942 pub const FWPM_LAYER_INBOUND_MAC_FRAME_ETHERNET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4026236635, data2: 85, data3: 20378, data4: [162, 49, 79, 248, 19, 26, 209, 145] }; 1943 pub const FWPM_LAYER_INBOUND_MAC_FRAME_NATIVE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1944 data1: 3559001043, 1945 data2: 25294, 1946 data3: 20232, 1947 data4: [174, 136, 181, 110, 133, 38, 223, 80], 1948 }; 1949 pub const FWPM_LAYER_INBOUND_MAC_FRAME_NATIVE_FAST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2235214478, data2: 11128, data3: 19748, data4: [168, 4, 54, 219, 8, 178, 151, 17] }; 1950 pub const FWPM_LAYER_INBOUND_RESERVED2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1951 data1: 4110126421, 1952 data2: 49270, 1953 data3: 18136, 1954 data4: [162, 199, 106, 76, 114, 44, 164, 237], 1955 }; 1956 pub const FWPM_LAYER_INBOUND_TRANSPORT_FAST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1957 data1: 3827115801, 1958 data2: 1479, 1959 data3: 16624, 1960 data4: [137, 131, 234, 141, 23, 187, 194, 246], 1961 }; 1962 pub const FWPM_LAYER_INBOUND_TRANSPORT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1495719880, data2: 58319, data3: 17446, data4: [162, 131, 220, 57, 63, 93, 15, 157] }; 1963 pub const FWPM_LAYER_INBOUND_TRANSPORT_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2890569779, data2: 63133, data3: 17992, data4: [178, 97, 109, 200, 72, 53, 239, 57] }; 1964 pub const FWPM_LAYER_INBOUND_TRANSPORT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1965 data1: 1665828511, 1966 data2: 64547, 1967 data3: 19344, 1968 data4: [176, 193, 191, 98, 10, 54, 174, 111], 1969 }; 1970 pub const FWPM_LAYER_INBOUND_TRANSPORT_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1971 data1: 711981397, 1972 data2: 15147, 1973 data3: 18898, 1974 data4: [152, 72, 173, 157, 114, 220, 170, 183], 1975 }; 1976 pub const FWPM_LAYER_INGRESS_VSWITCH_ETHERNET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1977 data1: 2107135866, 1978 data2: 39559, 1979 data3: 16876, 1980 data4: [151, 24, 124, 245, 137, 201, 243, 45], 1981 }; 1982 pub const FWPM_LAYER_INGRESS_VSWITCH_TRANSPORT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1983 data1: 2993254390, 1984 data2: 30543, 1985 data3: 17748, 1986 data4: [159, 125, 61, 163, 148, 95, 142, 133], 1987 }; 1988 pub const FWPM_LAYER_INGRESS_VSWITCH_TRANSPORT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1591940348, data2: 32138, data3: 18420, data4: [183, 227, 41, 26, 54, 218, 78, 18] }; 1989 pub const FWPM_LAYER_IPFORWARD_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1990 data1: 2821377060, 1991 data2: 20193, 1992 data3: 20193, 1993 data4: [180, 101, 253, 29, 37, 203, 16, 164], 1994 }; 1995 pub const FWPM_LAYER_IPFORWARD_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1996 data1: 2661197683, 1997 data2: 12206, 1998 data3: 16912, 1999 data4: [143, 23, 52, 18, 158, 243, 105, 235], 2000 }; 2001 pub const FWPM_LAYER_IPFORWARD_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2073446424, data2: 6599, data3: 18746, data4: [183, 31, 131, 44, 54, 132, 210, 140] }; 2002 pub const FWPM_LAYER_IPFORWARD_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 827476573, data2: 7678, data3: 18223, data4: [187, 147, 81, 142, 233, 69, 216, 162] }; 2003 pub const FWPM_LAYER_IPSEC_KM_DEMUX_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2004 data1: 4029355302, 2005 data2: 42073, 2006 data3: 19025, 2007 data4: [185, 227, 117, 157, 229, 43, 157, 44], 2008 }; 2009 pub const FWPM_LAYER_IPSEC_KM_DEMUX_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 796220662, data2: 12244, data3: 20104, data4: [179, 228, 169, 27, 202, 73, 82, 53] }; 2010 pub const FWPM_LAYER_IPSEC_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2011 data1: 3987102836, 2012 data2: 24845, 2013 data3: 19397, 2014 data4: [148, 143, 60, 79, 137, 85, 104, 103], 2015 }; 2016 pub const FWPM_LAYER_IPSEC_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 331646018, data2: 36231, data3: 16993, data4: [154, 41, 89, 210, 171, 195, 72, 180] }; 2017 pub const FWPM_LAYER_KM_AUTHORIZATION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2018 data1: 1252140777, 2019 data2: 36896, 2020 data3: 17915, 2021 data4: [149, 106, 192, 36, 157, 132, 17, 149], 2022 }; 2023 pub const FWPM_LAYER_NAME_RESOLUTION_CACHE_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2024 data1: 204121729, 2025 data2: 36955, 2026 data3: 19661, 2027 data4: [164, 103, 77, 216, 17, 208, 123, 123], 2028 }; 2029 pub const FWPM_LAYER_NAME_RESOLUTION_CACHE_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2030 data1: 2463470330, 2031 data2: 27393, 2032 data3: 17226, 2033 data4: [157, 234, 209, 233, 110, 169, 125, 169], 2034 }; 2035 pub const FWPM_LAYER_OUTBOUND_ICMP_ERROR_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1094254848, data2: 22092, data3: 19250, data4: [188, 29, 113, 128, 72, 53, 77, 124] }; 2036 pub const FWPM_LAYER_OUTBOUND_ICMP_ERROR_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3008990518, data2: 1377, data3: 17800, data4: [166, 191, 233, 85, 227, 246, 38, 75] }; 2037 pub const FWPM_LAYER_OUTBOUND_ICMP_ERROR_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2142255968, data2: 31629, data3: 19962, data4: [186, 221, 152, 1, 118, 252, 78, 18] }; 2038 pub const FWPM_LAYER_OUTBOUND_ICMP_ERROR_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2039 data1: 1710417479, 2040 data2: 36108, 2041 data3: 20295, 2042 data4: [177, 155, 51, 164, 211, 241, 53, 124], 2043 }; 2044 pub const FWPM_LAYER_OUTBOUND_IPPACKET_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 509386670, data2: 35460, data3: 16693, data4: [163, 49, 149, 11, 84, 34, 158, 205] }; 2045 pub const FWPM_LAYER_OUTBOUND_IPPACKET_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 149208245, data2: 46663, data3: 18675, data4: [149, 60, 229, 221, 189, 3, 147, 126] }; 2046 pub const FWPM_LAYER_OUTBOUND_IPPACKET_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2746461035, data2: 13668, data3: 18572, data4: [145, 23, 243, 78, 130, 20, 39, 99] }; 2047 pub const FWPM_LAYER_OUTBOUND_IPPACKET_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2048 data1: 2501105604, 2049 data2: 43316, 2050 data3: 18908, 2051 data4: [145, 167, 108, 203, 128, 204, 2, 227], 2052 }; 2053 pub const FWPM_LAYER_OUTBOUND_MAC_FRAME_ETHERNET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2054 data1: 1766224828, 2055 data2: 55003, 2056 data3: 18544, 2057 data4: [173, 238, 10, 205, 189, 183, 244, 178], 2058 }; 2059 pub const FWPM_LAYER_OUTBOUND_MAC_FRAME_NATIVE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2495891730, data2: 40303, data3: 20159, data4: [185, 149, 5, 171, 138, 8, 141, 27] }; 2060 pub const FWPM_LAYER_OUTBOUND_MAC_FRAME_NATIVE_FAST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2061 data1: 1192098118, 2062 data2: 51554, 2063 data3: 18543, 2064 data4: [148, 70, 130, 147, 203, 199, 94, 184], 2065 }; 2066 pub const FWPM_LAYER_OUTBOUND_TRANSPORT_FAST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2067 data1: 334316424, 2068 data2: 41072, 2069 data3: 18453, 2070 data4: [153, 53, 122, 155, 230, 64, 139, 120], 2071 }; 2072 pub const FWPM_LAYER_OUTBOUND_TRANSPORT_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 166075114, data2: 53780, data3: 18146, data4: [155, 33, 178, 107, 11, 47, 40, 200] }; 2073 pub const FWPM_LAYER_OUTBOUND_TRANSPORT_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2074 data1: 3320907089, 2075 data2: 48560, 2076 data3: 17367, 2077 data4: [163, 19, 80, 226, 17, 244, 214, 138], 2078 }; 2079 pub const FWPM_LAYER_OUTBOUND_TRANSPORT_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3782433758, data2: 319, data3: 18005, data4: [179, 81, 164, 158, 21, 118, 45, 240] }; 2080 pub const FWPM_LAYER_OUTBOUND_TRANSPORT_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4097040233, data2: 52413, data3: 18478, data4: [185, 178, 87, 22, 86, 88, 195, 179] }; 2081 pub const FWPM_LAYER_RPC_EPMAP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2082 data1: 2454174817, 2083 data2: 60167, 2084 data3: 18414, 2085 data4: [135, 44, 191, 215, 139, 253, 22, 22], 2086 }; 2087 pub const FWPM_LAYER_RPC_EP_ADD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2088 data1: 1636696007, 2089 data2: 50256, 2090 data3: 18755, 2091 data4: [149, 219, 153, 180, 193, 106, 85, 212], 2092 }; 2093 pub const FWPM_LAYER_RPC_PROXY_CONN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2094 data1: 2493822219, 2095 data2: 47708, 2096 data3: 20263, 2097 data4: [144, 122, 34, 159, 172, 12, 42, 122], 2098 }; 2099 pub const FWPM_LAYER_RPC_PROXY_IF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2100 data1: 4171466261, 2101 data2: 57644, 2102 data3: 16812, 2103 data4: [152, 223, 18, 26, 217, 129, 170, 222], 2104 }; 2105 pub const FWPM_LAYER_RPC_UM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2106 data1: 1973984730, 2107 data2: 38372, 2108 data3: 16627, 2109 data4: [173, 199, 118, 136, 169, 200, 71, 225], 2110 }; 2111 #[repr(C)] 2112 pub struct FWPM_LAYER_STATISTICS0 { 2113 pub layerId: ::windows_sys::core::GUID, 2114 pub classifyPermitCount: u32, 2115 pub classifyBlockCount: u32, 2116 pub classifyVetoCount: u32, 2117 pub numCacheEntries: u32, 2118 } 2119 impl ::core::marker::Copy for FWPM_LAYER_STATISTICS0 {} 2120 impl ::core::clone::Clone for FWPM_LAYER_STATISTICS0 { clone(&self) -> Self2121 fn clone(&self) -> Self { 2122 *self 2123 } 2124 } 2125 pub const FWPM_LAYER_STREAM_PACKET_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2126 data1: 2941442284, 2127 data2: 52013, 2128 data3: 17637, 2129 data4: [173, 146, 248, 220, 56, 210, 235, 41], 2130 }; 2131 pub const FWPM_LAYER_STREAM_PACKET_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2006617251, data2: 61593, data3: 18063, data4: [181, 212, 131, 83, 92, 70, 28, 2] }; 2132 pub const FWPM_LAYER_STREAM_V4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2133 data1: 998860092, 2134 data2: 49520, 2135 data3: 18916, 2136 data4: [177, 205, 224, 238, 238, 225, 154, 62], 2137 }; 2138 pub const FWPM_LAYER_STREAM_V4_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 633651906, data2: 9727, data3: 17234, data4: [130, 249, 197, 74, 74, 71, 38, 220] }; 2139 pub const FWPM_LAYER_STREAM_V6: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 2140 data1: 1204360058, 2141 data2: 32452, 2142 data3: 18099, 2143 data4: [182, 228, 72, 233, 38, 177, 237, 164], 2144 }; 2145 pub const FWPM_LAYER_STREAM_V6_DISCARD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 279289799, data2: 46632, data3: 19521, data4: [158, 184, 207, 55, 213, 81, 3, 207] }; 2146 #[repr(C)] 2147 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2148 pub struct FWPM_NET_EVENT0 { 2149 pub header: FWPM_NET_EVENT_HEADER0, 2150 pub r#type: FWPM_NET_EVENT_TYPE, 2151 pub Anonymous: FWPM_NET_EVENT0_0, 2152 } 2153 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2154 impl ::core::marker::Copy for FWPM_NET_EVENT0 {} 2155 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2156 impl ::core::clone::Clone for FWPM_NET_EVENT0 { clone(&self) -> Self2157 fn clone(&self) -> Self { 2158 *self 2159 } 2160 } 2161 #[repr(C)] 2162 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2163 pub union FWPM_NET_EVENT0_0 { 2164 pub ikeMmFailure: *mut FWPM_NET_EVENT_IKEEXT_MM_FAILURE0, 2165 pub ikeQmFailure: *mut FWPM_NET_EVENT_IKEEXT_QM_FAILURE0, 2166 pub ikeEmFailure: *mut FWPM_NET_EVENT_IKEEXT_EM_FAILURE0, 2167 pub classifyDrop: *mut FWPM_NET_EVENT_CLASSIFY_DROP0, 2168 pub ipsecDrop: *mut FWPM_NET_EVENT_IPSEC_KERNEL_DROP0, 2169 pub idpDrop: *mut FWPM_NET_EVENT_IPSEC_DOSP_DROP0, 2170 } 2171 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2172 impl ::core::marker::Copy for FWPM_NET_EVENT0_0 {} 2173 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2174 impl ::core::clone::Clone for FWPM_NET_EVENT0_0 { clone(&self) -> Self2175 fn clone(&self) -> Self { 2176 *self 2177 } 2178 } 2179 #[repr(C)] 2180 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2181 pub struct FWPM_NET_EVENT1 { 2182 pub header: FWPM_NET_EVENT_HEADER1, 2183 pub r#type: FWPM_NET_EVENT_TYPE, 2184 pub Anonymous: FWPM_NET_EVENT1_0, 2185 } 2186 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2187 impl ::core::marker::Copy for FWPM_NET_EVENT1 {} 2188 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2189 impl ::core::clone::Clone for FWPM_NET_EVENT1 { clone(&self) -> Self2190 fn clone(&self) -> Self { 2191 *self 2192 } 2193 } 2194 #[repr(C)] 2195 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2196 pub union FWPM_NET_EVENT1_0 { 2197 pub ikeMmFailure: *mut FWPM_NET_EVENT_IKEEXT_MM_FAILURE1, 2198 pub ikeQmFailure: *mut FWPM_NET_EVENT_IKEEXT_QM_FAILURE0, 2199 pub ikeEmFailure: *mut FWPM_NET_EVENT_IKEEXT_EM_FAILURE1, 2200 pub classifyDrop: *mut FWPM_NET_EVENT_CLASSIFY_DROP1, 2201 pub ipsecDrop: *mut FWPM_NET_EVENT_IPSEC_KERNEL_DROP0, 2202 pub idpDrop: *mut FWPM_NET_EVENT_IPSEC_DOSP_DROP0, 2203 } 2204 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2205 impl ::core::marker::Copy for FWPM_NET_EVENT1_0 {} 2206 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2207 impl ::core::clone::Clone for FWPM_NET_EVENT1_0 { clone(&self) -> Self2208 fn clone(&self) -> Self { 2209 *self 2210 } 2211 } 2212 #[repr(C)] 2213 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2214 pub struct FWPM_NET_EVENT2 { 2215 pub header: FWPM_NET_EVENT_HEADER2, 2216 pub r#type: FWPM_NET_EVENT_TYPE, 2217 pub Anonymous: FWPM_NET_EVENT2_0, 2218 } 2219 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2220 impl ::core::marker::Copy for FWPM_NET_EVENT2 {} 2221 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2222 impl ::core::clone::Clone for FWPM_NET_EVENT2 { clone(&self) -> Self2223 fn clone(&self) -> Self { 2224 *self 2225 } 2226 } 2227 #[repr(C)] 2228 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2229 pub union FWPM_NET_EVENT2_0 { 2230 pub ikeMmFailure: *mut FWPM_NET_EVENT_IKEEXT_MM_FAILURE1, 2231 pub ikeQmFailure: *mut FWPM_NET_EVENT_IKEEXT_QM_FAILURE0, 2232 pub ikeEmFailure: *mut FWPM_NET_EVENT_IKEEXT_EM_FAILURE1, 2233 pub classifyDrop: *mut FWPM_NET_EVENT_CLASSIFY_DROP2, 2234 pub ipsecDrop: *mut FWPM_NET_EVENT_IPSEC_KERNEL_DROP0, 2235 pub idpDrop: *mut FWPM_NET_EVENT_IPSEC_DOSP_DROP0, 2236 pub classifyAllow: *mut FWPM_NET_EVENT_CLASSIFY_ALLOW0, 2237 pub capabilityDrop: *mut FWPM_NET_EVENT_CAPABILITY_DROP0, 2238 pub capabilityAllow: *mut FWPM_NET_EVENT_CAPABILITY_ALLOW0, 2239 pub classifyDropMac: *mut FWPM_NET_EVENT_CLASSIFY_DROP_MAC0, 2240 } 2241 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2242 impl ::core::marker::Copy for FWPM_NET_EVENT2_0 {} 2243 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2244 impl ::core::clone::Clone for FWPM_NET_EVENT2_0 { clone(&self) -> Self2245 fn clone(&self) -> Self { 2246 *self 2247 } 2248 } 2249 #[repr(C)] 2250 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2251 pub struct FWPM_NET_EVENT3 { 2252 pub header: FWPM_NET_EVENT_HEADER3, 2253 pub r#type: FWPM_NET_EVENT_TYPE, 2254 pub Anonymous: FWPM_NET_EVENT3_0, 2255 } 2256 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2257 impl ::core::marker::Copy for FWPM_NET_EVENT3 {} 2258 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2259 impl ::core::clone::Clone for FWPM_NET_EVENT3 { clone(&self) -> Self2260 fn clone(&self) -> Self { 2261 *self 2262 } 2263 } 2264 #[repr(C)] 2265 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2266 pub union FWPM_NET_EVENT3_0 { 2267 pub ikeMmFailure: *mut FWPM_NET_EVENT_IKEEXT_MM_FAILURE1, 2268 pub ikeQmFailure: *mut FWPM_NET_EVENT_IKEEXT_QM_FAILURE0, 2269 pub ikeEmFailure: *mut FWPM_NET_EVENT_IKEEXT_EM_FAILURE1, 2270 pub classifyDrop: *mut FWPM_NET_EVENT_CLASSIFY_DROP2, 2271 pub ipsecDrop: *mut FWPM_NET_EVENT_IPSEC_KERNEL_DROP0, 2272 pub idpDrop: *mut FWPM_NET_EVENT_IPSEC_DOSP_DROP0, 2273 pub classifyAllow: *mut FWPM_NET_EVENT_CLASSIFY_ALLOW0, 2274 pub capabilityDrop: *mut FWPM_NET_EVENT_CAPABILITY_DROP0, 2275 pub capabilityAllow: *mut FWPM_NET_EVENT_CAPABILITY_ALLOW0, 2276 pub classifyDropMac: *mut FWPM_NET_EVENT_CLASSIFY_DROP_MAC0, 2277 } 2278 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2279 impl ::core::marker::Copy for FWPM_NET_EVENT3_0 {} 2280 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2281 impl ::core::clone::Clone for FWPM_NET_EVENT3_0 { clone(&self) -> Self2282 fn clone(&self) -> Self { 2283 *self 2284 } 2285 } 2286 #[repr(C)] 2287 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2288 pub struct FWPM_NET_EVENT4_ { 2289 pub header: FWPM_NET_EVENT_HEADER3, 2290 pub r#type: FWPM_NET_EVENT_TYPE, 2291 pub Anonymous: FWPM_NET_EVENT4__0, 2292 } 2293 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2294 impl ::core::marker::Copy for FWPM_NET_EVENT4_ {} 2295 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2296 impl ::core::clone::Clone for FWPM_NET_EVENT4_ { clone(&self) -> Self2297 fn clone(&self) -> Self { 2298 *self 2299 } 2300 } 2301 #[repr(C)] 2302 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2303 pub union FWPM_NET_EVENT4__0 { 2304 pub ikeMmFailure: *mut FWPM_NET_EVENT_IKEEXT_MM_FAILURE2_, 2305 pub ikeQmFailure: *mut FWPM_NET_EVENT_IKEEXT_QM_FAILURE1_, 2306 pub ikeEmFailure: *mut FWPM_NET_EVENT_IKEEXT_EM_FAILURE1, 2307 pub classifyDrop: *mut FWPM_NET_EVENT_CLASSIFY_DROP2, 2308 pub ipsecDrop: *mut FWPM_NET_EVENT_IPSEC_KERNEL_DROP0, 2309 pub idpDrop: *mut FWPM_NET_EVENT_IPSEC_DOSP_DROP0, 2310 pub classifyAllow: *mut FWPM_NET_EVENT_CLASSIFY_ALLOW0, 2311 pub capabilityDrop: *mut FWPM_NET_EVENT_CAPABILITY_DROP0, 2312 pub capabilityAllow: *mut FWPM_NET_EVENT_CAPABILITY_ALLOW0, 2313 pub classifyDropMac: *mut FWPM_NET_EVENT_CLASSIFY_DROP_MAC0, 2314 } 2315 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2316 impl ::core::marker::Copy for FWPM_NET_EVENT4__0 {} 2317 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2318 impl ::core::clone::Clone for FWPM_NET_EVENT4__0 { clone(&self) -> Self2319 fn clone(&self) -> Self { 2320 *self 2321 } 2322 } 2323 #[repr(C)] 2324 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2325 pub struct FWPM_NET_EVENT5_ { 2326 pub header: FWPM_NET_EVENT_HEADER3, 2327 pub r#type: FWPM_NET_EVENT_TYPE, 2328 pub Anonymous: FWPM_NET_EVENT5__0, 2329 } 2330 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2331 impl ::core::marker::Copy for FWPM_NET_EVENT5_ {} 2332 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2333 impl ::core::clone::Clone for FWPM_NET_EVENT5_ { clone(&self) -> Self2334 fn clone(&self) -> Self { 2335 *self 2336 } 2337 } 2338 #[repr(C)] 2339 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2340 pub union FWPM_NET_EVENT5__0 { 2341 pub ikeMmFailure: *mut FWPM_NET_EVENT_IKEEXT_MM_FAILURE2_, 2342 pub ikeQmFailure: *mut FWPM_NET_EVENT_IKEEXT_QM_FAILURE1_, 2343 pub ikeEmFailure: *mut FWPM_NET_EVENT_IKEEXT_EM_FAILURE1, 2344 pub classifyDrop: *mut FWPM_NET_EVENT_CLASSIFY_DROP2, 2345 pub ipsecDrop: *mut FWPM_NET_EVENT_IPSEC_KERNEL_DROP0, 2346 pub idpDrop: *mut FWPM_NET_EVENT_IPSEC_DOSP_DROP0, 2347 pub classifyAllow: *mut FWPM_NET_EVENT_CLASSIFY_ALLOW0, 2348 pub capabilityDrop: *mut FWPM_NET_EVENT_CAPABILITY_DROP0, 2349 pub capabilityAllow: *mut FWPM_NET_EVENT_CAPABILITY_ALLOW0, 2350 pub classifyDropMac: *mut FWPM_NET_EVENT_CLASSIFY_DROP_MAC0, 2351 pub lpmPacketArrival: *mut FWPM_NET_EVENT_LPM_PACKET_ARRIVAL0_, 2352 } 2353 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2354 impl ::core::marker::Copy for FWPM_NET_EVENT5__0 {} 2355 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2356 impl ::core::clone::Clone for FWPM_NET_EVENT5__0 { clone(&self) -> Self2357 fn clone(&self) -> Self { 2358 *self 2359 } 2360 } 2361 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2362 pub type FWPM_NET_EVENT_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, event: *const FWPM_NET_EVENT1); 2363 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2364 pub type FWPM_NET_EVENT_CALLBACK1 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, event: *const FWPM_NET_EVENT2); 2365 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2366 pub type FWPM_NET_EVENT_CALLBACK2 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, event: *const FWPM_NET_EVENT3); 2367 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2368 pub type FWPM_NET_EVENT_CALLBACK3 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, event: *const FWPM_NET_EVENT4_); 2369 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2370 pub type FWPM_NET_EVENT_CALLBACK4 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, event: *const FWPM_NET_EVENT5_); 2371 #[repr(C)] 2372 #[cfg(feature = "Win32_Foundation")] 2373 pub struct FWPM_NET_EVENT_CAPABILITY_ALLOW0 { 2374 pub networkCapabilityId: FWPM_APPC_NETWORK_CAPABILITY_TYPE, 2375 pub filterId: u64, 2376 pub isLoopback: super::super::Foundation::BOOL, 2377 } 2378 #[cfg(feature = "Win32_Foundation")] 2379 impl ::core::marker::Copy for FWPM_NET_EVENT_CAPABILITY_ALLOW0 {} 2380 #[cfg(feature = "Win32_Foundation")] 2381 impl ::core::clone::Clone for FWPM_NET_EVENT_CAPABILITY_ALLOW0 { clone(&self) -> Self2382 fn clone(&self) -> Self { 2383 *self 2384 } 2385 } 2386 #[repr(C)] 2387 #[cfg(feature = "Win32_Foundation")] 2388 pub struct FWPM_NET_EVENT_CAPABILITY_DROP0 { 2389 pub networkCapabilityId: FWPM_APPC_NETWORK_CAPABILITY_TYPE, 2390 pub filterId: u64, 2391 pub isLoopback: super::super::Foundation::BOOL, 2392 } 2393 #[cfg(feature = "Win32_Foundation")] 2394 impl ::core::marker::Copy for FWPM_NET_EVENT_CAPABILITY_DROP0 {} 2395 #[cfg(feature = "Win32_Foundation")] 2396 impl ::core::clone::Clone for FWPM_NET_EVENT_CAPABILITY_DROP0 { clone(&self) -> Self2397 fn clone(&self) -> Self { 2398 *self 2399 } 2400 } 2401 #[repr(C)] 2402 #[cfg(feature = "Win32_Foundation")] 2403 pub struct FWPM_NET_EVENT_CLASSIFY_ALLOW0 { 2404 pub filterId: u64, 2405 pub layerId: u16, 2406 pub reauthReason: u32, 2407 pub originalProfile: u32, 2408 pub currentProfile: u32, 2409 pub msFwpDirection: u32, 2410 pub isLoopback: super::super::Foundation::BOOL, 2411 } 2412 #[cfg(feature = "Win32_Foundation")] 2413 impl ::core::marker::Copy for FWPM_NET_EVENT_CLASSIFY_ALLOW0 {} 2414 #[cfg(feature = "Win32_Foundation")] 2415 impl ::core::clone::Clone for FWPM_NET_EVENT_CLASSIFY_ALLOW0 { clone(&self) -> Self2416 fn clone(&self) -> Self { 2417 *self 2418 } 2419 } 2420 #[repr(C)] 2421 pub struct FWPM_NET_EVENT_CLASSIFY_DROP0 { 2422 pub filterId: u64, 2423 pub layerId: u16, 2424 } 2425 impl ::core::marker::Copy for FWPM_NET_EVENT_CLASSIFY_DROP0 {} 2426 impl ::core::clone::Clone for FWPM_NET_EVENT_CLASSIFY_DROP0 { clone(&self) -> Self2427 fn clone(&self) -> Self { 2428 *self 2429 } 2430 } 2431 #[repr(C)] 2432 #[cfg(feature = "Win32_Foundation")] 2433 pub struct FWPM_NET_EVENT_CLASSIFY_DROP1 { 2434 pub filterId: u64, 2435 pub layerId: u16, 2436 pub reauthReason: u32, 2437 pub originalProfile: u32, 2438 pub currentProfile: u32, 2439 pub msFwpDirection: u32, 2440 pub isLoopback: super::super::Foundation::BOOL, 2441 } 2442 #[cfg(feature = "Win32_Foundation")] 2443 impl ::core::marker::Copy for FWPM_NET_EVENT_CLASSIFY_DROP1 {} 2444 #[cfg(feature = "Win32_Foundation")] 2445 impl ::core::clone::Clone for FWPM_NET_EVENT_CLASSIFY_DROP1 { clone(&self) -> Self2446 fn clone(&self) -> Self { 2447 *self 2448 } 2449 } 2450 #[repr(C)] 2451 #[cfg(feature = "Win32_Foundation")] 2452 pub struct FWPM_NET_EVENT_CLASSIFY_DROP2 { 2453 pub filterId: u64, 2454 pub layerId: u16, 2455 pub reauthReason: u32, 2456 pub originalProfile: u32, 2457 pub currentProfile: u32, 2458 pub msFwpDirection: u32, 2459 pub isLoopback: super::super::Foundation::BOOL, 2460 pub vSwitchId: FWP_BYTE_BLOB, 2461 pub vSwitchSourcePort: u32, 2462 pub vSwitchDestinationPort: u32, 2463 } 2464 #[cfg(feature = "Win32_Foundation")] 2465 impl ::core::marker::Copy for FWPM_NET_EVENT_CLASSIFY_DROP2 {} 2466 #[cfg(feature = "Win32_Foundation")] 2467 impl ::core::clone::Clone for FWPM_NET_EVENT_CLASSIFY_DROP2 { clone(&self) -> Self2468 fn clone(&self) -> Self { 2469 *self 2470 } 2471 } 2472 #[repr(C)] 2473 #[cfg(feature = "Win32_Foundation")] 2474 pub struct FWPM_NET_EVENT_CLASSIFY_DROP_MAC0 { 2475 pub localMacAddr: FWP_BYTE_ARRAY6, 2476 pub remoteMacAddr: FWP_BYTE_ARRAY6, 2477 pub mediaType: u32, 2478 pub ifType: u32, 2479 pub etherType: u16, 2480 pub ndisPortNumber: u32, 2481 pub reserved: u32, 2482 pub vlanTag: u16, 2483 pub ifLuid: u64, 2484 pub filterId: u64, 2485 pub layerId: u16, 2486 pub reauthReason: u32, 2487 pub originalProfile: u32, 2488 pub currentProfile: u32, 2489 pub msFwpDirection: u32, 2490 pub isLoopback: super::super::Foundation::BOOL, 2491 pub vSwitchId: FWP_BYTE_BLOB, 2492 pub vSwitchSourcePort: u32, 2493 pub vSwitchDestinationPort: u32, 2494 } 2495 #[cfg(feature = "Win32_Foundation")] 2496 impl ::core::marker::Copy for FWPM_NET_EVENT_CLASSIFY_DROP_MAC0 {} 2497 #[cfg(feature = "Win32_Foundation")] 2498 impl ::core::clone::Clone for FWPM_NET_EVENT_CLASSIFY_DROP_MAC0 { clone(&self) -> Self2499 fn clone(&self) -> Self { 2500 *self 2501 } 2502 } 2503 #[repr(C)] 2504 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2505 pub struct FWPM_NET_EVENT_ENUM_TEMPLATE0 { 2506 pub startTime: super::super::Foundation::FILETIME, 2507 pub endTime: super::super::Foundation::FILETIME, 2508 pub numFilterConditions: u32, 2509 pub filterCondition: *mut FWPM_FILTER_CONDITION0, 2510 } 2511 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2512 impl ::core::marker::Copy for FWPM_NET_EVENT_ENUM_TEMPLATE0 {} 2513 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2514 impl ::core::clone::Clone for FWPM_NET_EVENT_ENUM_TEMPLATE0 { clone(&self) -> Self2515 fn clone(&self) -> Self { 2516 *self 2517 } 2518 } 2519 pub const FWPM_NET_EVENT_FLAG_APP_ID_SET: u32 = 32u32; 2520 pub const FWPM_NET_EVENT_FLAG_EFFECTIVE_NAME_SET: u32 = 8192u32; 2521 pub const FWPM_NET_EVENT_FLAG_ENTERPRISE_ID_SET: u32 = 2048u32; 2522 pub const FWPM_NET_EVENT_FLAG_IP_PROTOCOL_SET: u32 = 1u32; 2523 pub const FWPM_NET_EVENT_FLAG_IP_VERSION_SET: u32 = 256u32; 2524 pub const FWPM_NET_EVENT_FLAG_LOCAL_ADDR_SET: u32 = 2u32; 2525 pub const FWPM_NET_EVENT_FLAG_LOCAL_PORT_SET: u32 = 8u32; 2526 pub const FWPM_NET_EVENT_FLAG_PACKAGE_ID_SET: u32 = 1024u32; 2527 pub const FWPM_NET_EVENT_FLAG_POLICY_FLAGS_SET: u32 = 4096u32; 2528 pub const FWPM_NET_EVENT_FLAG_REAUTH_REASON_SET: u32 = 512u32; 2529 pub const FWPM_NET_EVENT_FLAG_REMOTE_ADDR_SET: u32 = 4u32; 2530 pub const FWPM_NET_EVENT_FLAG_REMOTE_PORT_SET: u32 = 16u32; 2531 pub const FWPM_NET_EVENT_FLAG_SCOPE_ID_SET: u32 = 128u32; 2532 pub const FWPM_NET_EVENT_FLAG_USER_ID_SET: u32 = 64u32; 2533 #[repr(C)] 2534 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2535 pub struct FWPM_NET_EVENT_HEADER0 { 2536 pub timeStamp: super::super::Foundation::FILETIME, 2537 pub flags: u32, 2538 pub ipVersion: FWP_IP_VERSION, 2539 pub ipProtocol: u8, 2540 pub Anonymous1: FWPM_NET_EVENT_HEADER0_0, 2541 pub Anonymous2: FWPM_NET_EVENT_HEADER0_1, 2542 pub localPort: u16, 2543 pub remotePort: u16, 2544 pub scopeId: u32, 2545 pub appId: FWP_BYTE_BLOB, 2546 pub userId: *mut super::super::Security::SID, 2547 } 2548 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2549 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER0 {} 2550 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2551 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER0 { clone(&self) -> Self2552 fn clone(&self) -> Self { 2553 *self 2554 } 2555 } 2556 #[repr(C)] 2557 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2558 pub union FWPM_NET_EVENT_HEADER0_0 { 2559 pub localAddrV4: u32, 2560 pub localAddrV6: FWP_BYTE_ARRAY16, 2561 } 2562 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2563 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER0_0 {} 2564 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2565 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER0_0 { clone(&self) -> Self2566 fn clone(&self) -> Self { 2567 *self 2568 } 2569 } 2570 #[repr(C)] 2571 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2572 pub union FWPM_NET_EVENT_HEADER0_1 { 2573 pub remoteAddrV4: u32, 2574 pub remoteAddrV6: FWP_BYTE_ARRAY16, 2575 } 2576 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2577 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER0_1 {} 2578 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2579 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER0_1 { clone(&self) -> Self2580 fn clone(&self) -> Self { 2581 *self 2582 } 2583 } 2584 #[repr(C)] 2585 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2586 pub struct FWPM_NET_EVENT_HEADER1 { 2587 pub timeStamp: super::super::Foundation::FILETIME, 2588 pub flags: u32, 2589 pub ipVersion: FWP_IP_VERSION, 2590 pub ipProtocol: u8, 2591 pub Anonymous1: FWPM_NET_EVENT_HEADER1_0, 2592 pub Anonymous2: FWPM_NET_EVENT_HEADER1_1, 2593 pub localPort: u16, 2594 pub remotePort: u16, 2595 pub scopeId: u32, 2596 pub appId: FWP_BYTE_BLOB, 2597 pub userId: *mut super::super::Security::SID, 2598 pub Anonymous3: FWPM_NET_EVENT_HEADER1_2, 2599 } 2600 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2601 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1 {} 2602 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2603 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1 { clone(&self) -> Self2604 fn clone(&self) -> Self { 2605 *self 2606 } 2607 } 2608 #[repr(C)] 2609 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2610 pub union FWPM_NET_EVENT_HEADER1_0 { 2611 pub localAddrV4: u32, 2612 pub localAddrV6: FWP_BYTE_ARRAY16, 2613 } 2614 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2615 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1_0 {} 2616 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2617 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1_0 { clone(&self) -> Self2618 fn clone(&self) -> Self { 2619 *self 2620 } 2621 } 2622 #[repr(C)] 2623 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2624 pub union FWPM_NET_EVENT_HEADER1_1 { 2625 pub remoteAddrV4: u32, 2626 pub remoteAddrV6: FWP_BYTE_ARRAY16, 2627 } 2628 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2629 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1_1 {} 2630 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2631 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1_1 { clone(&self) -> Self2632 fn clone(&self) -> Self { 2633 *self 2634 } 2635 } 2636 #[repr(C)] 2637 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2638 pub union FWPM_NET_EVENT_HEADER1_2 { 2639 pub Anonymous: FWPM_NET_EVENT_HEADER1_2_0, 2640 } 2641 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2642 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1_2 {} 2643 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2644 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1_2 { clone(&self) -> Self2645 fn clone(&self) -> Self { 2646 *self 2647 } 2648 } 2649 #[repr(C)] 2650 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2651 pub struct FWPM_NET_EVENT_HEADER1_2_0 { 2652 pub reserved1: FWP_AF, 2653 pub Anonymous: FWPM_NET_EVENT_HEADER1_2_0_0, 2654 } 2655 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2656 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1_2_0 {} 2657 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2658 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1_2_0 { clone(&self) -> Self2659 fn clone(&self) -> Self { 2660 *self 2661 } 2662 } 2663 #[repr(C)] 2664 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2665 pub union FWPM_NET_EVENT_HEADER1_2_0_0 { 2666 pub Anonymous: FWPM_NET_EVENT_HEADER1_2_0_0_0, 2667 } 2668 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2669 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1_2_0_0 {} 2670 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2671 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1_2_0_0 { clone(&self) -> Self2672 fn clone(&self) -> Self { 2673 *self 2674 } 2675 } 2676 #[repr(C)] 2677 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2678 pub struct FWPM_NET_EVENT_HEADER1_2_0_0_0 { 2679 pub reserved2: FWP_BYTE_ARRAY6, 2680 pub reserved3: FWP_BYTE_ARRAY6, 2681 pub reserved4: u32, 2682 pub reserved5: u32, 2683 pub reserved6: u16, 2684 pub reserved7: u32, 2685 pub reserved8: u32, 2686 pub reserved9: u16, 2687 pub reserved10: u64, 2688 } 2689 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2690 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER1_2_0_0_0 {} 2691 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2692 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER1_2_0_0_0 { clone(&self) -> Self2693 fn clone(&self) -> Self { 2694 *self 2695 } 2696 } 2697 #[repr(C)] 2698 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2699 pub struct FWPM_NET_EVENT_HEADER2 { 2700 pub timeStamp: super::super::Foundation::FILETIME, 2701 pub flags: u32, 2702 pub ipVersion: FWP_IP_VERSION, 2703 pub ipProtocol: u8, 2704 pub Anonymous1: FWPM_NET_EVENT_HEADER2_0, 2705 pub Anonymous2: FWPM_NET_EVENT_HEADER2_1, 2706 pub localPort: u16, 2707 pub remotePort: u16, 2708 pub scopeId: u32, 2709 pub appId: FWP_BYTE_BLOB, 2710 pub userId: *mut super::super::Security::SID, 2711 pub addressFamily: FWP_AF, 2712 pub packageSid: *mut super::super::Security::SID, 2713 } 2714 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2715 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER2 {} 2716 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2717 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER2 { clone(&self) -> Self2718 fn clone(&self) -> Self { 2719 *self 2720 } 2721 } 2722 #[repr(C)] 2723 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2724 pub union FWPM_NET_EVENT_HEADER2_0 { 2725 pub localAddrV4: u32, 2726 pub localAddrV6: FWP_BYTE_ARRAY16, 2727 } 2728 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2729 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER2_0 {} 2730 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2731 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER2_0 { clone(&self) -> Self2732 fn clone(&self) -> Self { 2733 *self 2734 } 2735 } 2736 #[repr(C)] 2737 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2738 pub union FWPM_NET_EVENT_HEADER2_1 { 2739 pub remoteAddrV4: u32, 2740 pub remoteAddrV6: FWP_BYTE_ARRAY16, 2741 } 2742 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2743 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER2_1 {} 2744 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2745 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER2_1 { clone(&self) -> Self2746 fn clone(&self) -> Self { 2747 *self 2748 } 2749 } 2750 #[repr(C)] 2751 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2752 pub struct FWPM_NET_EVENT_HEADER3 { 2753 pub timeStamp: super::super::Foundation::FILETIME, 2754 pub flags: u32, 2755 pub ipVersion: FWP_IP_VERSION, 2756 pub ipProtocol: u8, 2757 pub Anonymous1: FWPM_NET_EVENT_HEADER3_0, 2758 pub Anonymous2: FWPM_NET_EVENT_HEADER3_1, 2759 pub localPort: u16, 2760 pub remotePort: u16, 2761 pub scopeId: u32, 2762 pub appId: FWP_BYTE_BLOB, 2763 pub userId: *mut super::super::Security::SID, 2764 pub addressFamily: FWP_AF, 2765 pub packageSid: *mut super::super::Security::SID, 2766 pub enterpriseId: super::super::Foundation::PWSTR, 2767 pub policyFlags: u64, 2768 pub effectiveName: FWP_BYTE_BLOB, 2769 } 2770 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2771 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER3 {} 2772 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2773 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER3 { clone(&self) -> Self2774 fn clone(&self) -> Self { 2775 *self 2776 } 2777 } 2778 #[repr(C)] 2779 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2780 pub union FWPM_NET_EVENT_HEADER3_0 { 2781 pub localAddrV4: u32, 2782 pub localAddrV6: FWP_BYTE_ARRAY16, 2783 } 2784 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2785 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER3_0 {} 2786 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2787 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER3_0 { clone(&self) -> Self2788 fn clone(&self) -> Self { 2789 *self 2790 } 2791 } 2792 #[repr(C)] 2793 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2794 pub union FWPM_NET_EVENT_HEADER3_1 { 2795 pub remoteAddrV4: u32, 2796 pub remoteAddrV6: FWP_BYTE_ARRAY16, 2797 } 2798 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2799 impl ::core::marker::Copy for FWPM_NET_EVENT_HEADER3_1 {} 2800 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2801 impl ::core::clone::Clone for FWPM_NET_EVENT_HEADER3_1 { clone(&self) -> Self2802 fn clone(&self) -> Self { 2803 *self 2804 } 2805 } 2806 #[repr(C)] 2807 pub struct FWPM_NET_EVENT_IKEEXT_EM_FAILURE0 { 2808 pub failureErrorCode: u32, 2809 pub failurePoint: IPSEC_FAILURE_POINT, 2810 pub flags: u32, 2811 pub emState: IKEEXT_EM_SA_STATE, 2812 pub saRole: IKEEXT_SA_ROLE, 2813 pub emAuthMethod: IKEEXT_AUTHENTICATION_METHOD_TYPE, 2814 pub endCertHash: [u8; 20], 2815 pub mmId: u64, 2816 pub qmFilterId: u64, 2817 } 2818 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_EM_FAILURE0 {} 2819 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_EM_FAILURE0 { clone(&self) -> Self2820 fn clone(&self) -> Self { 2821 *self 2822 } 2823 } 2824 #[repr(C)] 2825 #[cfg(feature = "Win32_Foundation")] 2826 pub struct FWPM_NET_EVENT_IKEEXT_EM_FAILURE1 { 2827 pub failureErrorCode: u32, 2828 pub failurePoint: IPSEC_FAILURE_POINT, 2829 pub flags: u32, 2830 pub emState: IKEEXT_EM_SA_STATE, 2831 pub saRole: IKEEXT_SA_ROLE, 2832 pub emAuthMethod: IKEEXT_AUTHENTICATION_METHOD_TYPE, 2833 pub endCertHash: [u8; 20], 2834 pub mmId: u64, 2835 pub qmFilterId: u64, 2836 pub localPrincipalNameForAuth: super::super::Foundation::PWSTR, 2837 pub remotePrincipalNameForAuth: super::super::Foundation::PWSTR, 2838 pub numLocalPrincipalGroupSids: u32, 2839 pub localPrincipalGroupSids: *mut super::super::Foundation::PWSTR, 2840 pub numRemotePrincipalGroupSids: u32, 2841 pub remotePrincipalGroupSids: *mut super::super::Foundation::PWSTR, 2842 pub saTrafficType: IPSEC_TRAFFIC_TYPE, 2843 } 2844 #[cfg(feature = "Win32_Foundation")] 2845 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_EM_FAILURE1 {} 2846 #[cfg(feature = "Win32_Foundation")] 2847 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_EM_FAILURE1 { clone(&self) -> Self2848 fn clone(&self) -> Self { 2849 *self 2850 } 2851 } 2852 pub const FWPM_NET_EVENT_IKEEXT_EM_FAILURE_FLAG_BENIGN: u32 = 2u32; 2853 pub const FWPM_NET_EVENT_IKEEXT_EM_FAILURE_FLAG_MULTIPLE: u32 = 1u32; 2854 #[repr(C)] 2855 pub struct FWPM_NET_EVENT_IKEEXT_MM_FAILURE0 { 2856 pub failureErrorCode: u32, 2857 pub failurePoint: IPSEC_FAILURE_POINT, 2858 pub flags: u32, 2859 pub keyingModuleType: IKEEXT_KEY_MODULE_TYPE, 2860 pub mmState: IKEEXT_MM_SA_STATE, 2861 pub saRole: IKEEXT_SA_ROLE, 2862 pub mmAuthMethod: IKEEXT_AUTHENTICATION_METHOD_TYPE, 2863 pub endCertHash: [u8; 20], 2864 pub mmId: u64, 2865 pub mmFilterId: u64, 2866 } 2867 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_MM_FAILURE0 {} 2868 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_MM_FAILURE0 { clone(&self) -> Self2869 fn clone(&self) -> Self { 2870 *self 2871 } 2872 } 2873 #[repr(C)] 2874 #[cfg(feature = "Win32_Foundation")] 2875 pub struct FWPM_NET_EVENT_IKEEXT_MM_FAILURE1 { 2876 pub failureErrorCode: u32, 2877 pub failurePoint: IPSEC_FAILURE_POINT, 2878 pub flags: u32, 2879 pub keyingModuleType: IKEEXT_KEY_MODULE_TYPE, 2880 pub mmState: IKEEXT_MM_SA_STATE, 2881 pub saRole: IKEEXT_SA_ROLE, 2882 pub mmAuthMethod: IKEEXT_AUTHENTICATION_METHOD_TYPE, 2883 pub endCertHash: [u8; 20], 2884 pub mmId: u64, 2885 pub mmFilterId: u64, 2886 pub localPrincipalNameForAuth: super::super::Foundation::PWSTR, 2887 pub remotePrincipalNameForAuth: super::super::Foundation::PWSTR, 2888 pub numLocalPrincipalGroupSids: u32, 2889 pub localPrincipalGroupSids: *mut super::super::Foundation::PWSTR, 2890 pub numRemotePrincipalGroupSids: u32, 2891 pub remotePrincipalGroupSids: *mut super::super::Foundation::PWSTR, 2892 } 2893 #[cfg(feature = "Win32_Foundation")] 2894 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_MM_FAILURE1 {} 2895 #[cfg(feature = "Win32_Foundation")] 2896 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_MM_FAILURE1 { clone(&self) -> Self2897 fn clone(&self) -> Self { 2898 *self 2899 } 2900 } 2901 #[repr(C)] 2902 #[cfg(feature = "Win32_Foundation")] 2903 pub struct FWPM_NET_EVENT_IKEEXT_MM_FAILURE2_ { 2904 pub failureErrorCode: u32, 2905 pub failurePoint: IPSEC_FAILURE_POINT, 2906 pub flags: u32, 2907 pub keyingModuleType: IKEEXT_KEY_MODULE_TYPE, 2908 pub mmState: IKEEXT_MM_SA_STATE, 2909 pub saRole: IKEEXT_SA_ROLE, 2910 pub mmAuthMethod: IKEEXT_AUTHENTICATION_METHOD_TYPE, 2911 pub endCertHash: [u8; 20], 2912 pub mmId: u64, 2913 pub mmFilterId: u64, 2914 pub localPrincipalNameForAuth: super::super::Foundation::PWSTR, 2915 pub remotePrincipalNameForAuth: super::super::Foundation::PWSTR, 2916 pub numLocalPrincipalGroupSids: u32, 2917 pub localPrincipalGroupSids: *mut super::super::Foundation::PWSTR, 2918 pub numRemotePrincipalGroupSids: u32, 2919 pub remotePrincipalGroupSids: *mut super::super::Foundation::PWSTR, 2920 pub providerContextKey: *mut ::windows_sys::core::GUID, 2921 } 2922 #[cfg(feature = "Win32_Foundation")] 2923 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_MM_FAILURE2_ {} 2924 #[cfg(feature = "Win32_Foundation")] 2925 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_MM_FAILURE2_ { clone(&self) -> Self2926 fn clone(&self) -> Self { 2927 *self 2928 } 2929 } 2930 pub const FWPM_NET_EVENT_IKEEXT_MM_FAILURE_FLAG_BENIGN: u32 = 1u32; 2931 pub const FWPM_NET_EVENT_IKEEXT_MM_FAILURE_FLAG_MULTIPLE: u32 = 2u32; 2932 #[repr(C)] 2933 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2934 pub struct FWPM_NET_EVENT_IKEEXT_QM_FAILURE0 { 2935 pub failureErrorCode: u32, 2936 pub failurePoint: IPSEC_FAILURE_POINT, 2937 pub keyingModuleType: IKEEXT_KEY_MODULE_TYPE, 2938 pub qmState: IKEEXT_QM_SA_STATE, 2939 pub saRole: IKEEXT_SA_ROLE, 2940 pub saTrafficType: IPSEC_TRAFFIC_TYPE, 2941 pub Anonymous1: FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_0, 2942 pub Anonymous2: FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_1, 2943 pub qmFilterId: u64, 2944 } 2945 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2946 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_QM_FAILURE0 {} 2947 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2948 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_QM_FAILURE0 { clone(&self) -> Self2949 fn clone(&self) -> Self { 2950 *self 2951 } 2952 } 2953 #[repr(C)] 2954 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2955 pub union FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_0 { 2956 pub localSubNet: FWP_CONDITION_VALUE0, 2957 } 2958 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2959 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_0 {} 2960 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2961 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_0 { clone(&self) -> Self2962 fn clone(&self) -> Self { 2963 *self 2964 } 2965 } 2966 #[repr(C)] 2967 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2968 pub union FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_1 { 2969 pub remoteSubNet: FWP_CONDITION_VALUE0, 2970 } 2971 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2972 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_1 {} 2973 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2974 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_QM_FAILURE0_1 { clone(&self) -> Self2975 fn clone(&self) -> Self { 2976 *self 2977 } 2978 } 2979 #[repr(C)] 2980 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2981 pub struct FWPM_NET_EVENT_IKEEXT_QM_FAILURE1_ { 2982 pub failureErrorCode: u32, 2983 pub failurePoint: IPSEC_FAILURE_POINT, 2984 pub keyingModuleType: IKEEXT_KEY_MODULE_TYPE, 2985 pub qmState: IKEEXT_QM_SA_STATE, 2986 pub saRole: IKEEXT_SA_ROLE, 2987 pub saTrafficType: IPSEC_TRAFFIC_TYPE, 2988 pub Anonymous1: FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__0, 2989 pub Anonymous2: FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__1, 2990 pub qmFilterId: u64, 2991 pub mmSaLuid: u64, 2992 pub mmProviderContextKey: ::windows_sys::core::GUID, 2993 } 2994 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2995 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_QM_FAILURE1_ {} 2996 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 2997 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_QM_FAILURE1_ { clone(&self) -> Self2998 fn clone(&self) -> Self { 2999 *self 3000 } 3001 } 3002 #[repr(C)] 3003 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3004 pub union FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__0 { 3005 pub localSubNet: FWP_CONDITION_VALUE0, 3006 } 3007 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3008 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__0 {} 3009 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3010 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__0 { clone(&self) -> Self3011 fn clone(&self) -> Self { 3012 *self 3013 } 3014 } 3015 #[repr(C)] 3016 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3017 pub union FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__1 { 3018 pub remoteSubNet: FWP_CONDITION_VALUE0, 3019 } 3020 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3021 impl ::core::marker::Copy for FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__1 {} 3022 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3023 impl ::core::clone::Clone for FWPM_NET_EVENT_IKEEXT_QM_FAILURE1__1 { clone(&self) -> Self3024 fn clone(&self) -> Self { 3025 *self 3026 } 3027 } 3028 #[repr(C)] 3029 pub struct FWPM_NET_EVENT_IPSEC_DOSP_DROP0 { 3030 pub ipVersion: FWP_IP_VERSION, 3031 pub Anonymous1: FWPM_NET_EVENT_IPSEC_DOSP_DROP0_0, 3032 pub Anonymous2: FWPM_NET_EVENT_IPSEC_DOSP_DROP0_1, 3033 pub failureStatus: i32, 3034 pub direction: FWP_DIRECTION, 3035 } 3036 impl ::core::marker::Copy for FWPM_NET_EVENT_IPSEC_DOSP_DROP0 {} 3037 impl ::core::clone::Clone for FWPM_NET_EVENT_IPSEC_DOSP_DROP0 { clone(&self) -> Self3038 fn clone(&self) -> Self { 3039 *self 3040 } 3041 } 3042 #[repr(C)] 3043 pub union FWPM_NET_EVENT_IPSEC_DOSP_DROP0_0 { 3044 pub publicHostV4Addr: u32, 3045 pub publicHostV6Addr: [u8; 16], 3046 } 3047 impl ::core::marker::Copy for FWPM_NET_EVENT_IPSEC_DOSP_DROP0_0 {} 3048 impl ::core::clone::Clone for FWPM_NET_EVENT_IPSEC_DOSP_DROP0_0 { clone(&self) -> Self3049 fn clone(&self) -> Self { 3050 *self 3051 } 3052 } 3053 #[repr(C)] 3054 pub union FWPM_NET_EVENT_IPSEC_DOSP_DROP0_1 { 3055 pub internalHostV4Addr: u32, 3056 pub internalHostV6Addr: [u8; 16], 3057 } 3058 impl ::core::marker::Copy for FWPM_NET_EVENT_IPSEC_DOSP_DROP0_1 {} 3059 impl ::core::clone::Clone for FWPM_NET_EVENT_IPSEC_DOSP_DROP0_1 { clone(&self) -> Self3060 fn clone(&self) -> Self { 3061 *self 3062 } 3063 } 3064 #[repr(C)] 3065 pub struct FWPM_NET_EVENT_IPSEC_KERNEL_DROP0 { 3066 pub failureStatus: i32, 3067 pub direction: FWP_DIRECTION, 3068 pub spi: u32, 3069 pub filterId: u64, 3070 pub layerId: u16, 3071 } 3072 impl ::core::marker::Copy for FWPM_NET_EVENT_IPSEC_KERNEL_DROP0 {} 3073 impl ::core::clone::Clone for FWPM_NET_EVENT_IPSEC_KERNEL_DROP0 { clone(&self) -> Self3074 fn clone(&self) -> Self { 3075 *self 3076 } 3077 } 3078 pub const FWPM_NET_EVENT_KEYWORD_CAPABILITY_ALLOW: u32 = 8u32; 3079 pub const FWPM_NET_EVENT_KEYWORD_CAPABILITY_DROP: u32 = 4u32; 3080 pub const FWPM_NET_EVENT_KEYWORD_CLASSIFY_ALLOW: u32 = 16u32; 3081 pub const FWPM_NET_EVENT_KEYWORD_INBOUND_BCAST: u32 = 2u32; 3082 pub const FWPM_NET_EVENT_KEYWORD_INBOUND_MCAST: u32 = 1u32; 3083 pub const FWPM_NET_EVENT_KEYWORD_PORT_SCANNING_DROP: u32 = 32u32; 3084 #[repr(C)] 3085 pub struct FWPM_NET_EVENT_LPM_PACKET_ARRIVAL0_ { 3086 pub spi: u32, 3087 } 3088 impl ::core::marker::Copy for FWPM_NET_EVENT_LPM_PACKET_ARRIVAL0_ {} 3089 impl ::core::clone::Clone for FWPM_NET_EVENT_LPM_PACKET_ARRIVAL0_ { clone(&self) -> Self3090 fn clone(&self) -> Self { 3091 *self 3092 } 3093 } 3094 #[repr(C)] 3095 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3096 pub struct FWPM_NET_EVENT_SUBSCRIPTION0 { 3097 pub enumTemplate: *mut FWPM_NET_EVENT_ENUM_TEMPLATE0, 3098 pub flags: u32, 3099 pub sessionKey: ::windows_sys::core::GUID, 3100 } 3101 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3102 impl ::core::marker::Copy for FWPM_NET_EVENT_SUBSCRIPTION0 {} 3103 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3104 impl ::core::clone::Clone for FWPM_NET_EVENT_SUBSCRIPTION0 { clone(&self) -> Self3105 fn clone(&self) -> Self { 3106 *self 3107 } 3108 } 3109 pub type FWPM_NET_EVENT_TYPE = i32; 3110 pub const FWPM_NET_EVENT_TYPE_IKEEXT_MM_FAILURE: FWPM_NET_EVENT_TYPE = 0i32; 3111 pub const FWPM_NET_EVENT_TYPE_IKEEXT_QM_FAILURE: FWPM_NET_EVENT_TYPE = 1i32; 3112 pub const FWPM_NET_EVENT_TYPE_IKEEXT_EM_FAILURE: FWPM_NET_EVENT_TYPE = 2i32; 3113 pub const FWPM_NET_EVENT_TYPE_CLASSIFY_DROP: FWPM_NET_EVENT_TYPE = 3i32; 3114 pub const FWPM_NET_EVENT_TYPE_IPSEC_KERNEL_DROP: FWPM_NET_EVENT_TYPE = 4i32; 3115 pub const FWPM_NET_EVENT_TYPE_IPSEC_DOSP_DROP: FWPM_NET_EVENT_TYPE = 5i32; 3116 pub const FWPM_NET_EVENT_TYPE_CLASSIFY_ALLOW: FWPM_NET_EVENT_TYPE = 6i32; 3117 pub const FWPM_NET_EVENT_TYPE_CAPABILITY_DROP: FWPM_NET_EVENT_TYPE = 7i32; 3118 pub const FWPM_NET_EVENT_TYPE_CAPABILITY_ALLOW: FWPM_NET_EVENT_TYPE = 8i32; 3119 pub const FWPM_NET_EVENT_TYPE_CLASSIFY_DROP_MAC: FWPM_NET_EVENT_TYPE = 9i32; 3120 pub const FWPM_NET_EVENT_TYPE_LPM_PACKET_ARRIVAL: FWPM_NET_EVENT_TYPE = 10i32; 3121 pub const FWPM_NET_EVENT_TYPE_MAX: FWPM_NET_EVENT_TYPE = 11i32; 3122 #[repr(C)] 3123 #[cfg(feature = "Win32_Foundation")] 3124 pub struct FWPM_PROVIDER0 { 3125 pub providerKey: ::windows_sys::core::GUID, 3126 pub displayData: FWPM_DISPLAY_DATA0, 3127 pub flags: u32, 3128 pub providerData: FWP_BYTE_BLOB, 3129 pub serviceName: super::super::Foundation::PWSTR, 3130 } 3131 #[cfg(feature = "Win32_Foundation")] 3132 impl ::core::marker::Copy for FWPM_PROVIDER0 {} 3133 #[cfg(feature = "Win32_Foundation")] 3134 impl ::core::clone::Clone for FWPM_PROVIDER0 { clone(&self) -> Self3135 fn clone(&self) -> Self { 3136 *self 3137 } 3138 } 3139 #[repr(C)] 3140 pub struct FWPM_PROVIDER_CHANGE0 { 3141 pub changeType: FWPM_CHANGE_TYPE, 3142 pub providerKey: ::windows_sys::core::GUID, 3143 } 3144 impl ::core::marker::Copy for FWPM_PROVIDER_CHANGE0 {} 3145 impl ::core::clone::Clone for FWPM_PROVIDER_CHANGE0 { clone(&self) -> Self3146 fn clone(&self) -> Self { 3147 *self 3148 } 3149 } 3150 pub type FWPM_PROVIDER_CHANGE_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, change: *const FWPM_PROVIDER_CHANGE0); 3151 #[repr(C)] 3152 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3153 pub struct FWPM_PROVIDER_CONTEXT0 { 3154 pub providerContextKey: ::windows_sys::core::GUID, 3155 pub displayData: FWPM_DISPLAY_DATA0, 3156 pub flags: u32, 3157 pub providerKey: *mut ::windows_sys::core::GUID, 3158 pub providerData: FWP_BYTE_BLOB, 3159 pub r#type: FWPM_PROVIDER_CONTEXT_TYPE, 3160 pub Anonymous: FWPM_PROVIDER_CONTEXT0_0, 3161 pub providerContextId: u64, 3162 } 3163 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3164 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT0 {} 3165 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3166 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT0 { clone(&self) -> Self3167 fn clone(&self) -> Self { 3168 *self 3169 } 3170 } 3171 #[repr(C)] 3172 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3173 pub union FWPM_PROVIDER_CONTEXT0_0 { 3174 pub keyingPolicy: *mut IPSEC_KEYING_POLICY0, 3175 pub ikeQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY0, 3176 pub ikeQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY0, 3177 pub authipQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY0, 3178 pub authipQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY0, 3179 pub ikeMmPolicy: *mut IKEEXT_POLICY0, 3180 pub authIpMmPolicy: *mut IKEEXT_POLICY0, 3181 pub dataBuffer: *mut FWP_BYTE_BLOB, 3182 pub classifyOptions: *mut FWPM_CLASSIFY_OPTIONS0, 3183 } 3184 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3185 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT0_0 {} 3186 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3187 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT0_0 { clone(&self) -> Self3188 fn clone(&self) -> Self { 3189 *self 3190 } 3191 } 3192 #[repr(C)] 3193 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3194 pub struct FWPM_PROVIDER_CONTEXT1 { 3195 pub providerContextKey: ::windows_sys::core::GUID, 3196 pub displayData: FWPM_DISPLAY_DATA0, 3197 pub flags: u32, 3198 pub providerKey: *mut ::windows_sys::core::GUID, 3199 pub providerData: FWP_BYTE_BLOB, 3200 pub r#type: FWPM_PROVIDER_CONTEXT_TYPE, 3201 pub Anonymous: FWPM_PROVIDER_CONTEXT1_0, 3202 pub providerContextId: u64, 3203 } 3204 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3205 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT1 {} 3206 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3207 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT1 { clone(&self) -> Self3208 fn clone(&self) -> Self { 3209 *self 3210 } 3211 } 3212 #[repr(C)] 3213 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3214 pub union FWPM_PROVIDER_CONTEXT1_0 { 3215 pub keyingPolicy: *mut IPSEC_KEYING_POLICY0, 3216 pub ikeQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY1, 3217 pub ikeQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY1, 3218 pub authipQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY1, 3219 pub authipQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY1, 3220 pub ikeMmPolicy: *mut IKEEXT_POLICY1, 3221 pub authIpMmPolicy: *mut IKEEXT_POLICY1, 3222 pub dataBuffer: *mut FWP_BYTE_BLOB, 3223 pub classifyOptions: *mut FWPM_CLASSIFY_OPTIONS0, 3224 pub ikeV2QmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY1, 3225 pub ikeV2MmPolicy: *mut IKEEXT_POLICY1, 3226 pub idpOptions: *mut IPSEC_DOSP_OPTIONS0, 3227 } 3228 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3229 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT1_0 {} 3230 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3231 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT1_0 { clone(&self) -> Self3232 fn clone(&self) -> Self { 3233 *self 3234 } 3235 } 3236 #[repr(C)] 3237 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3238 pub struct FWPM_PROVIDER_CONTEXT2 { 3239 pub providerContextKey: ::windows_sys::core::GUID, 3240 pub displayData: FWPM_DISPLAY_DATA0, 3241 pub flags: u32, 3242 pub providerKey: *mut ::windows_sys::core::GUID, 3243 pub providerData: FWP_BYTE_BLOB, 3244 pub r#type: FWPM_PROVIDER_CONTEXT_TYPE, 3245 pub Anonymous: FWPM_PROVIDER_CONTEXT2_0, 3246 pub providerContextId: u64, 3247 } 3248 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3249 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT2 {} 3250 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3251 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT2 { clone(&self) -> Self3252 fn clone(&self) -> Self { 3253 *self 3254 } 3255 } 3256 #[repr(C)] 3257 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3258 pub union FWPM_PROVIDER_CONTEXT2_0 { 3259 pub keyingPolicy: *mut IPSEC_KEYING_POLICY1, 3260 pub ikeQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY2, 3261 pub ikeQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY2, 3262 pub authipQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY2, 3263 pub authipQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY2, 3264 pub ikeMmPolicy: *mut IKEEXT_POLICY2, 3265 pub authIpMmPolicy: *mut IKEEXT_POLICY2, 3266 pub dataBuffer: *mut FWP_BYTE_BLOB, 3267 pub classifyOptions: *mut FWPM_CLASSIFY_OPTIONS0, 3268 pub ikeV2QmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY2, 3269 pub ikeV2QmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY2, 3270 pub ikeV2MmPolicy: *mut IKEEXT_POLICY2, 3271 pub idpOptions: *mut IPSEC_DOSP_OPTIONS0, 3272 } 3273 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3274 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT2_0 {} 3275 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3276 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT2_0 { clone(&self) -> Self3277 fn clone(&self) -> Self { 3278 *self 3279 } 3280 } 3281 #[repr(C)] 3282 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3283 pub struct FWPM_PROVIDER_CONTEXT3_ { 3284 pub providerContextKey: ::windows_sys::core::GUID, 3285 pub displayData: FWPM_DISPLAY_DATA0, 3286 pub flags: u32, 3287 pub providerKey: *mut ::windows_sys::core::GUID, 3288 pub providerData: FWP_BYTE_BLOB, 3289 pub r#type: FWPM_PROVIDER_CONTEXT_TYPE, 3290 pub Anonymous: FWPM_PROVIDER_CONTEXT3__0, 3291 pub providerContextId: u64, 3292 } 3293 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3294 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT3_ {} 3295 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3296 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT3_ { clone(&self) -> Self3297 fn clone(&self) -> Self { 3298 *self 3299 } 3300 } 3301 #[repr(C)] 3302 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3303 pub union FWPM_PROVIDER_CONTEXT3__0 { 3304 pub keyingPolicy: *mut IPSEC_KEYING_POLICY1, 3305 pub ikeQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY2, 3306 pub ikeQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY3_, 3307 pub authipQmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY2, 3308 pub authipQmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY3_, 3309 pub ikeMmPolicy: *mut IKEEXT_POLICY2, 3310 pub authIpMmPolicy: *mut IKEEXT_POLICY2, 3311 pub dataBuffer: *mut FWP_BYTE_BLOB, 3312 pub classifyOptions: *mut FWPM_CLASSIFY_OPTIONS0, 3313 pub ikeV2QmTunnelPolicy: *mut IPSEC_TUNNEL_POLICY3_, 3314 pub ikeV2QmTransportPolicy: *mut IPSEC_TRANSPORT_POLICY2, 3315 pub ikeV2MmPolicy: *mut IKEEXT_POLICY2, 3316 pub idpOptions: *mut IPSEC_DOSP_OPTIONS0, 3317 } 3318 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3319 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT3__0 {} 3320 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3321 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT3__0 { clone(&self) -> Self3322 fn clone(&self) -> Self { 3323 *self 3324 } 3325 } 3326 #[repr(C)] 3327 pub struct FWPM_PROVIDER_CONTEXT_CHANGE0 { 3328 pub changeType: FWPM_CHANGE_TYPE, 3329 pub providerContextKey: ::windows_sys::core::GUID, 3330 pub providerContextId: u64, 3331 } 3332 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT_CHANGE0 {} 3333 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT_CHANGE0 { clone(&self) -> Self3334 fn clone(&self) -> Self { 3335 *self 3336 } 3337 } 3338 pub type FWPM_PROVIDER_CONTEXT_CHANGE_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, change: *const FWPM_PROVIDER_CONTEXT_CHANGE0); 3339 #[repr(C)] 3340 pub struct FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0 { 3341 pub providerKey: *mut ::windows_sys::core::GUID, 3342 pub providerContextType: FWPM_PROVIDER_CONTEXT_TYPE, 3343 } 3344 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0 {} 3345 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0 { clone(&self) -> Self3346 fn clone(&self) -> Self { 3347 *self 3348 } 3349 } 3350 pub const FWPM_PROVIDER_CONTEXT_FLAG_DOWNLEVEL: u32 = 2u32; 3351 pub const FWPM_PROVIDER_CONTEXT_FLAG_PERSISTENT: u32 = 1u32; 3352 pub const FWPM_PROVIDER_CONTEXT_SECURE_SOCKET_AUTHIP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3353 data1: 2992547840, 3354 data2: 3330, 3355 data3: 18157, 3356 data4: [146, 189, 127, 168, 75, 183, 62, 157], 3357 }; 3358 pub const FWPM_PROVIDER_CONTEXT_SECURE_SOCKET_IPSEC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3359 data1: 2351776068, 3360 data2: 63712, 3361 data3: 17088, 3362 data4: [148, 206, 124, 207, 198, 59, 47, 155], 3363 }; 3364 #[repr(C)] 3365 pub struct FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0 { 3366 pub enumTemplate: *mut FWPM_PROVIDER_CONTEXT_ENUM_TEMPLATE0, 3367 pub flags: FWPM_SUBSCRIPTION_FLAGS, 3368 pub sessionKey: ::windows_sys::core::GUID, 3369 } 3370 impl ::core::marker::Copy for FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0 {} 3371 impl ::core::clone::Clone for FWPM_PROVIDER_CONTEXT_SUBSCRIPTION0 { clone(&self) -> Self3372 fn clone(&self) -> Self { 3373 *self 3374 } 3375 } 3376 pub type FWPM_PROVIDER_CONTEXT_TYPE = i32; 3377 pub const FWPM_IPSEC_KEYING_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 0i32; 3378 pub const FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 1i32; 3379 pub const FWPM_IPSEC_IKE_QM_TUNNEL_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 2i32; 3380 pub const FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 3i32; 3381 pub const FWPM_IPSEC_AUTHIP_QM_TUNNEL_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 4i32; 3382 pub const FWPM_IPSEC_IKE_MM_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 5i32; 3383 pub const FWPM_IPSEC_AUTHIP_MM_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 6i32; 3384 pub const FWPM_CLASSIFY_OPTIONS_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 7i32; 3385 pub const FWPM_GENERAL_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 8i32; 3386 pub const FWPM_IPSEC_IKEV2_QM_TUNNEL_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 9i32; 3387 pub const FWPM_IPSEC_IKEV2_MM_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 10i32; 3388 pub const FWPM_IPSEC_DOSP_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 11i32; 3389 pub const FWPM_IPSEC_IKEV2_QM_TRANSPORT_CONTEXT: FWPM_PROVIDER_CONTEXT_TYPE = 12i32; 3390 pub const FWPM_PROVIDER_CONTEXT_TYPE_MAX: FWPM_PROVIDER_CONTEXT_TYPE = 13i32; 3391 #[repr(C)] 3392 pub struct FWPM_PROVIDER_ENUM_TEMPLATE0 { 3393 pub reserved: u64, 3394 } 3395 impl ::core::marker::Copy for FWPM_PROVIDER_ENUM_TEMPLATE0 {} 3396 impl ::core::clone::Clone for FWPM_PROVIDER_ENUM_TEMPLATE0 { clone(&self) -> Self3397 fn clone(&self) -> Self { 3398 *self 3399 } 3400 } 3401 pub const FWPM_PROVIDER_FLAG_DISABLED: u32 = 16u32; 3402 pub const FWPM_PROVIDER_FLAG_PERSISTENT: u32 = 1u32; 3403 pub const FWPM_PROVIDER_IKEEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 279810582, data2: 52446, data3: 17772, data4: [139, 22, 233, 240, 78, 96, 169, 11] }; 3404 pub const FWPM_PROVIDER_IPSEC_DOSP_CONFIG: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1013712297, data2: 49244, data3: 19385, data4: [131, 56, 35, 39, 129, 76, 232, 191] }; 3405 pub const FWPM_PROVIDER_MPSSVC_EDP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2835519223, data2: 18104, data3: 17495, data4: [143, 132, 176, 94, 5, 211, 198, 34] }; 3406 pub const FWPM_PROVIDER_MPSSVC_TENANT_RESTRICTIONS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3407 data1: 3497103353, 3408 data2: 17626, 3409 data3: 20304, 3410 data4: [157, 194, 201, 99, 164, 36, 118, 19], 3411 }; 3412 pub const FWPM_PROVIDER_MPSSVC_WF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3737917130, data2: 16179, data3: 17222, data4: [190, 30, 143, 180, 174, 15, 61, 98] }; 3413 pub const FWPM_PROVIDER_MPSSVC_WSH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3414 data1: 1259681589, 3415 data2: 4169, 3416 data3: 17536, 3417 data4: [170, 180, 209, 185, 189, 192, 55, 16], 3418 }; 3419 #[repr(C)] 3420 pub struct FWPM_PROVIDER_SUBSCRIPTION0 { 3421 pub enumTemplate: *mut FWPM_PROVIDER_ENUM_TEMPLATE0, 3422 pub flags: u32, 3423 pub sessionKey: ::windows_sys::core::GUID, 3424 } 3425 impl ::core::marker::Copy for FWPM_PROVIDER_SUBSCRIPTION0 {} 3426 impl ::core::clone::Clone for FWPM_PROVIDER_SUBSCRIPTION0 { clone(&self) -> Self3427 fn clone(&self) -> Self { 3428 *self 3429 } 3430 } 3431 pub const FWPM_PROVIDER_TCP_CHIMNEY_OFFLOAD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3432 data1: 2305466782, 3433 data2: 39476, 3434 data3: 19403, 3435 data4: [174, 121, 190, 185, 18, 124, 132, 185], 3436 }; 3437 pub const FWPM_PROVIDER_TCP_TEMPLATES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1993329968, data2: 13204, data3: 17197, data4: [190, 211, 68, 26, 229, 14, 99, 195] }; 3438 pub type FWPM_SERVICE_STATE = i32; 3439 pub const FWPM_SERVICE_STOPPED: FWPM_SERVICE_STATE = 0i32; 3440 pub const FWPM_SERVICE_START_PENDING: FWPM_SERVICE_STATE = 1i32; 3441 pub const FWPM_SERVICE_STOP_PENDING: FWPM_SERVICE_STATE = 2i32; 3442 pub const FWPM_SERVICE_RUNNING: FWPM_SERVICE_STATE = 3i32; 3443 pub const FWPM_SERVICE_STATE_MAX: FWPM_SERVICE_STATE = 4i32; 3444 #[repr(C)] 3445 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3446 pub struct FWPM_SESSION0 { 3447 pub sessionKey: ::windows_sys::core::GUID, 3448 pub displayData: FWPM_DISPLAY_DATA0, 3449 pub flags: u32, 3450 pub txnWaitTimeoutInMSec: u32, 3451 pub processId: u32, 3452 pub sid: *mut super::super::Security::SID, 3453 pub username: super::super::Foundation::PWSTR, 3454 pub kernelMode: super::super::Foundation::BOOL, 3455 } 3456 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3457 impl ::core::marker::Copy for FWPM_SESSION0 {} 3458 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3459 impl ::core::clone::Clone for FWPM_SESSION0 { clone(&self) -> Self3460 fn clone(&self) -> Self { 3461 *self 3462 } 3463 } 3464 #[repr(C)] 3465 pub struct FWPM_SESSION_ENUM_TEMPLATE0 { 3466 pub reserved: u64, 3467 } 3468 impl ::core::marker::Copy for FWPM_SESSION_ENUM_TEMPLATE0 {} 3469 impl ::core::clone::Clone for FWPM_SESSION_ENUM_TEMPLATE0 { clone(&self) -> Self3470 fn clone(&self) -> Self { 3471 *self 3472 } 3473 } 3474 pub const FWPM_SESSION_FLAG_DYNAMIC: u32 = 1u32; 3475 pub const FWPM_SESSION_FLAG_RESERVED: u32 = 268435456u32; 3476 #[repr(C)] 3477 pub struct FWPM_STATISTICS0 { 3478 pub numLayerStatistics: u32, 3479 pub layerStatistics: *mut FWPM_LAYER_STATISTICS0, 3480 pub inboundAllowedConnectionsV4: u32, 3481 pub inboundBlockedConnectionsV4: u32, 3482 pub outboundAllowedConnectionsV4: u32, 3483 pub outboundBlockedConnectionsV4: u32, 3484 pub inboundAllowedConnectionsV6: u32, 3485 pub inboundBlockedConnectionsV6: u32, 3486 pub outboundAllowedConnectionsV6: u32, 3487 pub outboundBlockedConnectionsV6: u32, 3488 pub inboundActiveConnectionsV4: u32, 3489 pub outboundActiveConnectionsV4: u32, 3490 pub inboundActiveConnectionsV6: u32, 3491 pub outboundActiveConnectionsV6: u32, 3492 pub reauthDirInbound: u64, 3493 pub reauthDirOutbound: u64, 3494 pub reauthFamilyV4: u64, 3495 pub reauthFamilyV6: u64, 3496 pub reauthProtoOther: u64, 3497 pub reauthProtoIPv4: u64, 3498 pub reauthProtoIPv6: u64, 3499 pub reauthProtoICMP: u64, 3500 pub reauthProtoICMP6: u64, 3501 pub reauthProtoUDP: u64, 3502 pub reauthProtoTCP: u64, 3503 pub reauthReasonPolicyChange: u64, 3504 pub reauthReasonNewArrivalInterface: u64, 3505 pub reauthReasonNewNextHopInterface: u64, 3506 pub reauthReasonProfileCrossing: u64, 3507 pub reauthReasonClassifyCompletion: u64, 3508 pub reauthReasonIPSecPropertiesChanged: u64, 3509 pub reauthReasonMidStreamInspection: u64, 3510 pub reauthReasonSocketPropertyChanged: u64, 3511 pub reauthReasonNewInboundMCastBCastPacket: u64, 3512 pub reauthReasonEDPPolicyChanged: u64, 3513 pub reauthReasonProxyHandleChanged: u64, 3514 } 3515 impl ::core::marker::Copy for FWPM_STATISTICS0 {} 3516 impl ::core::clone::Clone for FWPM_STATISTICS0 { clone(&self) -> Self3517 fn clone(&self) -> Self { 3518 *self 3519 } 3520 } 3521 #[repr(C)] 3522 #[cfg(feature = "Win32_Foundation")] 3523 pub struct FWPM_SUBLAYER0 { 3524 pub subLayerKey: ::windows_sys::core::GUID, 3525 pub displayData: FWPM_DISPLAY_DATA0, 3526 pub flags: u32, 3527 pub providerKey: *mut ::windows_sys::core::GUID, 3528 pub providerData: FWP_BYTE_BLOB, 3529 pub weight: u16, 3530 } 3531 #[cfg(feature = "Win32_Foundation")] 3532 impl ::core::marker::Copy for FWPM_SUBLAYER0 {} 3533 #[cfg(feature = "Win32_Foundation")] 3534 impl ::core::clone::Clone for FWPM_SUBLAYER0 { clone(&self) -> Self3535 fn clone(&self) -> Self { 3536 *self 3537 } 3538 } 3539 #[repr(C)] 3540 pub struct FWPM_SUBLAYER_CHANGE0 { 3541 pub changeType: FWPM_CHANGE_TYPE, 3542 pub subLayerKey: ::windows_sys::core::GUID, 3543 } 3544 impl ::core::marker::Copy for FWPM_SUBLAYER_CHANGE0 {} 3545 impl ::core::clone::Clone for FWPM_SUBLAYER_CHANGE0 { clone(&self) -> Self3546 fn clone(&self) -> Self { 3547 *self 3548 } 3549 } 3550 pub type FWPM_SUBLAYER_CHANGE_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, change: *const FWPM_SUBLAYER_CHANGE0); 3551 #[repr(C)] 3552 pub struct FWPM_SUBLAYER_ENUM_TEMPLATE0 { 3553 pub providerKey: *mut ::windows_sys::core::GUID, 3554 } 3555 impl ::core::marker::Copy for FWPM_SUBLAYER_ENUM_TEMPLATE0 {} 3556 impl ::core::clone::Clone for FWPM_SUBLAYER_ENUM_TEMPLATE0 { clone(&self) -> Self3557 fn clone(&self) -> Self { 3558 *self 3559 } 3560 } 3561 pub const FWPM_SUBLAYER_FLAG_PERSISTENT: u32 = 1u32; 3562 pub const FWPM_SUBLAYER_INSPECTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2272598497, data2: 59049, data3: 16805, data4: [129, 180, 140, 79, 17, 142, 74, 96] }; 3563 pub const FWPM_SUBLAYER_IPSEC_DOSP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3564 data1: 3765884274, 3565 data2: 23869, 3566 data3: 18671, 3567 data4: [128, 43, 144, 158, 221, 176, 152, 189], 3568 }; 3569 pub const FWPM_SUBLAYER_IPSEC_FORWARD_OUTBOUND_TUNNEL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2768776819, data2: 36721, data3: 17753, data4: [138, 154, 16, 28, 234, 4, 239, 135] }; 3570 pub const FWPM_SUBLAYER_IPSEC_SECURITY_REALM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3571 data1: 933590785, 3572 data2: 22660, 3573 data3: 18788, 3574 data4: [146, 184, 62, 112, 70, 136, 176, 173], 3575 }; 3576 pub const FWPM_SUBLAYER_IPSEC_TUNNEL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3577 data1: 2213714413, 3578 data2: 40948, 3579 data3: 18791, 3580 data4: [175, 244, 195, 9, 244, 218, 184, 39], 3581 }; 3582 pub const FWPM_SUBLAYER_LIPS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3583 data1: 460701902, 3584 data2: 65376, 3585 data3: 18193, 3586 data4: [167, 15, 180, 149, 140, 195, 178, 208], 3587 }; 3588 pub const FWPM_SUBLAYER_MPSSVC_EDP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 161775160, data2: 64151, data3: 18203, data4: [177, 35, 24, 188, 215, 230, 80, 113] }; 3589 pub const FWPM_SUBLAYER_MPSSVC_QUARANTINE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3016610881, data2: 44944, data3: 16826, data4: [167, 69, 124, 96, 8, 255, 35, 2] }; 3590 pub const FWPM_SUBLAYER_MPSSVC_TENANT_RESTRICTIONS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3591 data1: 516343777, 3592 data2: 64985, 3593 data3: 18314, 3594 data4: [181, 95, 255, 139, 161, 210, 193, 125], 3595 }; 3596 pub const FWPM_SUBLAYER_MPSSVC_WF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3016610881, data2: 44944, data3: 16826, data4: [167, 69, 124, 96, 8, 255, 35, 1] }; 3597 pub const FWPM_SUBLAYER_MPSSVC_WSH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3016610881, data2: 44944, data3: 16826, data4: [167, 69, 124, 96, 8, 255, 35, 0] }; 3598 pub const FWPM_SUBLAYER_RPC_AUDIT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3599 data1: 1972143348, 3600 data2: 64328, 3601 data3: 19945, 3602 data4: [154, 235, 62, 217, 85, 26, 177, 253], 3603 }; 3604 pub const FWPM_SUBLAYER_SECURE_SOCKET: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3605 data1: 363228695, 3606 data2: 16188, 3607 data3: 20347, 3608 data4: [170, 108, 129, 42, 166, 19, 221, 130], 3609 }; 3610 #[repr(C)] 3611 pub struct FWPM_SUBLAYER_SUBSCRIPTION0 { 3612 pub enumTemplate: *mut FWPM_SUBLAYER_ENUM_TEMPLATE0, 3613 pub flags: FWPM_SUBSCRIPTION_FLAGS, 3614 pub sessionKey: ::windows_sys::core::GUID, 3615 } 3616 impl ::core::marker::Copy for FWPM_SUBLAYER_SUBSCRIPTION0 {} 3617 impl ::core::clone::Clone for FWPM_SUBLAYER_SUBSCRIPTION0 { clone(&self) -> Self3618 fn clone(&self) -> Self { 3619 *self 3620 } 3621 } 3622 pub const FWPM_SUBLAYER_TCP_CHIMNEY_OFFLOAD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 863373497, data2: 47061, data3: 19807, data4: [130, 249, 54, 24, 97, 139, 192, 88] }; 3623 pub const FWPM_SUBLAYER_TCP_TEMPLATES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 608312783, data2: 2757, data3: 19626, data4: [158, 20, 80, 246, 227, 99, 106, 240] }; 3624 pub const FWPM_SUBLAYER_TEREDO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 3625 data1: 3127499878, 3626 data2: 20854, 3627 data3: 18809, 3628 data4: [156, 137, 38, 167, 180, 106, 131, 39], 3629 }; 3630 pub const FWPM_SUBLAYER_UNIVERSAL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4005481475, data2: 52948, data3: 17280, data4: [129, 154, 39, 52, 57, 123, 43, 116] }; 3631 pub type FWPM_SUBSCRIPTION_FLAGS = u32; 3632 pub const FWPM_SUBSCRIPTION_FLAG_NOTIFY_ON_ADD: FWPM_SUBSCRIPTION_FLAGS = 1u32; 3633 pub const FWPM_SUBSCRIPTION_FLAG_NOTIFY_ON_DELETE: FWPM_SUBSCRIPTION_FLAGS = 2u32; 3634 #[repr(C)] 3635 pub struct FWPM_SYSTEM_PORTS0 { 3636 pub numTypes: u32, 3637 pub types: *mut FWPM_SYSTEM_PORTS_BY_TYPE0, 3638 } 3639 impl ::core::marker::Copy for FWPM_SYSTEM_PORTS0 {} 3640 impl ::core::clone::Clone for FWPM_SYSTEM_PORTS0 { clone(&self) -> Self3641 fn clone(&self) -> Self { 3642 *self 3643 } 3644 } 3645 #[repr(C)] 3646 pub struct FWPM_SYSTEM_PORTS_BY_TYPE0 { 3647 pub r#type: FWPM_SYSTEM_PORT_TYPE, 3648 pub numPorts: u32, 3649 pub ports: *mut u16, 3650 } 3651 impl ::core::marker::Copy for FWPM_SYSTEM_PORTS_BY_TYPE0 {} 3652 impl ::core::clone::Clone for FWPM_SYSTEM_PORTS_BY_TYPE0 { clone(&self) -> Self3653 fn clone(&self) -> Self { 3654 *self 3655 } 3656 } 3657 pub type FWPM_SYSTEM_PORTS_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, sysports: *const FWPM_SYSTEM_PORTS0); 3658 pub type FWPM_SYSTEM_PORT_TYPE = i32; 3659 pub const FWPM_SYSTEM_PORT_RPC_EPMAP: FWPM_SYSTEM_PORT_TYPE = 0i32; 3660 pub const FWPM_SYSTEM_PORT_TEREDO: FWPM_SYSTEM_PORT_TYPE = 1i32; 3661 pub const FWPM_SYSTEM_PORT_IPHTTPS_IN: FWPM_SYSTEM_PORT_TYPE = 2i32; 3662 pub const FWPM_SYSTEM_PORT_IPHTTPS_OUT: FWPM_SYSTEM_PORT_TYPE = 3i32; 3663 pub const FWPM_SYSTEM_PORT_TYPE_MAX: FWPM_SYSTEM_PORT_TYPE = 4i32; 3664 pub const FWPM_TUNNEL_FLAG_ENABLE_VIRTUAL_IF_TUNNELING: u32 = 2u32; 3665 pub const FWPM_TUNNEL_FLAG_POINT_TO_POINT: u32 = 1u32; 3666 pub const FWPM_TUNNEL_FLAG_RESERVED0: u32 = 4u32; 3667 pub const FWPM_TXN_READ_ONLY: u32 = 1u32; 3668 #[repr(C)] 3669 #[cfg(feature = "Win32_Foundation")] 3670 pub struct FWPM_VSWITCH_EVENT0 { 3671 pub eventType: FWPM_VSWITCH_EVENT_TYPE, 3672 pub vSwitchId: super::super::Foundation::PWSTR, 3673 pub Anonymous: FWPM_VSWITCH_EVENT0_0, 3674 } 3675 #[cfg(feature = "Win32_Foundation")] 3676 impl ::core::marker::Copy for FWPM_VSWITCH_EVENT0 {} 3677 #[cfg(feature = "Win32_Foundation")] 3678 impl ::core::clone::Clone for FWPM_VSWITCH_EVENT0 { clone(&self) -> Self3679 fn clone(&self) -> Self { 3680 *self 3681 } 3682 } 3683 #[repr(C)] 3684 #[cfg(feature = "Win32_Foundation")] 3685 pub union FWPM_VSWITCH_EVENT0_0 { 3686 pub positionInfo: FWPM_VSWITCH_EVENT0_0_0, 3687 pub reorderInfo: FWPM_VSWITCH_EVENT0_0_1, 3688 } 3689 #[cfg(feature = "Win32_Foundation")] 3690 impl ::core::marker::Copy for FWPM_VSWITCH_EVENT0_0 {} 3691 #[cfg(feature = "Win32_Foundation")] 3692 impl ::core::clone::Clone for FWPM_VSWITCH_EVENT0_0 { clone(&self) -> Self3693 fn clone(&self) -> Self { 3694 *self 3695 } 3696 } 3697 #[repr(C)] 3698 #[cfg(feature = "Win32_Foundation")] 3699 pub struct FWPM_VSWITCH_EVENT0_0_0 { 3700 pub numvSwitchFilterExtensions: u32, 3701 pub vSwitchFilterExtensions: *mut super::super::Foundation::PWSTR, 3702 } 3703 #[cfg(feature = "Win32_Foundation")] 3704 impl ::core::marker::Copy for FWPM_VSWITCH_EVENT0_0_0 {} 3705 #[cfg(feature = "Win32_Foundation")] 3706 impl ::core::clone::Clone for FWPM_VSWITCH_EVENT0_0_0 { clone(&self) -> Self3707 fn clone(&self) -> Self { 3708 *self 3709 } 3710 } 3711 #[repr(C)] 3712 #[cfg(feature = "Win32_Foundation")] 3713 pub struct FWPM_VSWITCH_EVENT0_0_1 { 3714 pub inRequiredPosition: super::super::Foundation::BOOL, 3715 pub numvSwitchFilterExtensions: u32, 3716 pub vSwitchFilterExtensions: *mut super::super::Foundation::PWSTR, 3717 } 3718 #[cfg(feature = "Win32_Foundation")] 3719 impl ::core::marker::Copy for FWPM_VSWITCH_EVENT0_0_1 {} 3720 #[cfg(feature = "Win32_Foundation")] 3721 impl ::core::clone::Clone for FWPM_VSWITCH_EVENT0_0_1 { clone(&self) -> Self3722 fn clone(&self) -> Self { 3723 *self 3724 } 3725 } 3726 #[cfg(feature = "Win32_Foundation")] 3727 pub type FWPM_VSWITCH_EVENT_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, vswitchevent: *const FWPM_VSWITCH_EVENT0) -> u32; 3728 #[repr(C)] 3729 pub struct FWPM_VSWITCH_EVENT_SUBSCRIPTION0 { 3730 pub flags: u32, 3731 pub sessionKey: ::windows_sys::core::GUID, 3732 } 3733 impl ::core::marker::Copy for FWPM_VSWITCH_EVENT_SUBSCRIPTION0 {} 3734 impl ::core::clone::Clone for FWPM_VSWITCH_EVENT_SUBSCRIPTION0 { clone(&self) -> Self3735 fn clone(&self) -> Self { 3736 *self 3737 } 3738 } 3739 pub type FWPM_VSWITCH_EVENT_TYPE = i32; 3740 pub const FWPM_VSWITCH_EVENT_FILTER_ADD_TO_INCOMPLETE_LAYER: FWPM_VSWITCH_EVENT_TYPE = 0i32; 3741 pub const FWPM_VSWITCH_EVENT_FILTER_ENGINE_NOT_IN_REQUIRED_POSITION: FWPM_VSWITCH_EVENT_TYPE = 1i32; 3742 pub const FWPM_VSWITCH_EVENT_ENABLED_FOR_INSPECTION: FWPM_VSWITCH_EVENT_TYPE = 2i32; 3743 pub const FWPM_VSWITCH_EVENT_DISABLED_FOR_INSPECTION: FWPM_VSWITCH_EVENT_TYPE = 3i32; 3744 pub const FWPM_VSWITCH_EVENT_FILTER_ENGINE_REORDER: FWPM_VSWITCH_EVENT_TYPE = 4i32; 3745 pub const FWPM_VSWITCH_EVENT_MAX: FWPM_VSWITCH_EVENT_TYPE = 5i32; 3746 pub const FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS: u32 = 12u32; 3747 pub const FWPM_WEIGHT_RANGE_IPSEC: u32 = 0u32; 3748 pub const FWPS_ALE_ENDPOINT_FLAG_IPSEC_SECURED: u32 = 1u32; 3749 pub const FWPS_CLASSIFY_OUT_FLAG_ABSORB: u32 = 1u32; 3750 pub const FWPS_CLASSIFY_OUT_FLAG_ALE_FAST_CACHE_CHECK: u32 = 8u32; 3751 pub const FWPS_CLASSIFY_OUT_FLAG_ALE_FAST_CACHE_POSSIBLE: u32 = 16u32; 3752 pub const FWPS_CLASSIFY_OUT_FLAG_BUFFER_LIMIT_REACHED: u32 = 2u32; 3753 pub const FWPS_CLASSIFY_OUT_FLAG_NO_MORE_DATA: u32 = 4u32; 3754 pub const FWPS_FILTER_FLAG_CLEAR_ACTION_RIGHT: u32 = 1u32; 3755 pub const FWPS_FILTER_FLAG_HAS_SECURITY_REALM_PROVIDER_CONTEXT: u32 = 8u32; 3756 pub const FWPS_FILTER_FLAG_IPSEC_NO_ACQUIRE_INITIATE: u32 = 32u32; 3757 pub const FWPS_FILTER_FLAG_OR_CONDITIONS: u32 = 4u32; 3758 pub const FWPS_FILTER_FLAG_PERMIT_IF_CALLOUT_UNREGISTERED: u32 = 2u32; 3759 pub const FWPS_FILTER_FLAG_RESERVED0: u32 = 64u32; 3760 pub const FWPS_FILTER_FLAG_RESERVED1: u32 = 128u32; 3761 pub const FWPS_FILTER_FLAG_SILENT_MODE: u32 = 16u32; 3762 pub const FWPS_INCOMING_FLAG_ABSORB: u32 = 4u32; 3763 pub const FWPS_INCOMING_FLAG_CACHE_SAFE: u32 = 1u32; 3764 pub const FWPS_INCOMING_FLAG_CONNECTION_FAILING_INDICATION: u32 = 8u32; 3765 pub const FWPS_INCOMING_FLAG_ENFORCE_QUERY: u32 = 2u32; 3766 pub const FWPS_INCOMING_FLAG_IS_LOCAL_ONLY_FLOW: u32 = 128u32; 3767 pub const FWPS_INCOMING_FLAG_IS_LOOSE_SOURCE_FLOW: u32 = 64u32; 3768 pub const FWPS_INCOMING_FLAG_MID_STREAM_INSPECTION: u32 = 16u32; 3769 pub const FWPS_INCOMING_FLAG_RECLASSIFY: u32 = 32u32; 3770 pub const FWPS_INCOMING_FLAG_RESERVED0: u32 = 256u32; 3771 pub const FWPS_L2_INCOMING_FLAG_IS_RAW_IPV4_FRAMING: u32 = 1u32; 3772 pub const FWPS_L2_INCOMING_FLAG_IS_RAW_IPV6_FRAMING: u32 = 2u32; 3773 pub const FWPS_L2_INCOMING_FLAG_RECLASSIFY_MULTI_DESTINATION: u32 = 8u32; 3774 pub const FWPS_L2_METADATA_FIELD_ETHERNET_MAC_HEADER_SIZE: u32 = 1u32; 3775 pub const FWPS_L2_METADATA_FIELD_RESERVED: u32 = 2147483648u32; 3776 pub const FWPS_L2_METADATA_FIELD_VSWITCH_DESTINATION_PORT_ID: u32 = 32u32; 3777 pub const FWPS_L2_METADATA_FIELD_VSWITCH_PACKET_CONTEXT: u32 = 16u32; 3778 pub const FWPS_L2_METADATA_FIELD_VSWITCH_SOURCE_NIC_INDEX: u32 = 8u32; 3779 pub const FWPS_L2_METADATA_FIELD_VSWITCH_SOURCE_PORT_ID: u32 = 4u32; 3780 pub const FWPS_L2_METADATA_FIELD_WIFI_OPERATION_MODE: u32 = 2u32; 3781 pub const FWPS_METADATA_FIELD_ALE_CLASSIFY_REQUIRED: u32 = 4194304u32; 3782 pub const FWPS_METADATA_FIELD_COMPARTMENT_ID: u32 = 2048u32; 3783 pub const FWPS_METADATA_FIELD_COMPLETION_HANDLE: u32 = 16384u32; 3784 pub const FWPS_METADATA_FIELD_DESTINATION_INTERFACE_INDEX: u32 = 512u32; 3785 pub const FWPS_METADATA_FIELD_DESTINATION_PREFIX: u32 = 16777216u32; 3786 pub const FWPS_METADATA_FIELD_DISCARD_REASON: u32 = 1u32; 3787 pub const FWPS_METADATA_FIELD_ETHER_FRAME_LENGTH: u32 = 33554432u32; 3788 pub const FWPS_METADATA_FIELD_FLOW_HANDLE: u32 = 2u32; 3789 pub const FWPS_METADATA_FIELD_FORWARD_LAYER_INBOUND_PASS_THRU: u32 = 2097152u32; 3790 pub const FWPS_METADATA_FIELD_FORWARD_LAYER_OUTBOUND_PASS_THRU: u32 = 1048576u32; 3791 pub const FWPS_METADATA_FIELD_FRAGMENT_DATA: u32 = 4096u32; 3792 pub const FWPS_METADATA_FIELD_ICMP_ID_AND_SEQUENCE: u32 = 134217728u32; 3793 pub const FWPS_METADATA_FIELD_IP_HEADER_SIZE: u32 = 4u32; 3794 pub const FWPS_METADATA_FIELD_LOCAL_REDIRECT_TARGET_PID: u32 = 268435456u32; 3795 pub const FWPS_METADATA_FIELD_ORIGINAL_DESTINATION: u32 = 536870912u32; 3796 pub const FWPS_METADATA_FIELD_PACKET_DIRECTION: u32 = 262144u32; 3797 pub const FWPS_METADATA_FIELD_PACKET_SYSTEM_CRITICAL: u32 = 524288u32; 3798 pub const FWPS_METADATA_FIELD_PARENT_ENDPOINT_HANDLE: u32 = 67108864u32; 3799 pub const FWPS_METADATA_FIELD_PATH_MTU: u32 = 8192u32; 3800 pub const FWPS_METADATA_FIELD_PROCESS_ID: u32 = 32u32; 3801 pub const FWPS_METADATA_FIELD_PROCESS_PATH: u32 = 8u32; 3802 pub const FWPS_METADATA_FIELD_REDIRECT_RECORD_HANDLE: u32 = 1073741824u32; 3803 pub const FWPS_METADATA_FIELD_REMOTE_SCOPE_ID: u32 = 131072u32; 3804 pub const FWPS_METADATA_FIELD_RESERVED: u32 = 128u32; 3805 pub const FWPS_METADATA_FIELD_SOURCE_INTERFACE_INDEX: u32 = 256u32; 3806 pub const FWPS_METADATA_FIELD_SUB_PROCESS_TAG: u32 = 2147483648u32; 3807 pub const FWPS_METADATA_FIELD_SYSTEM_FLAGS: u32 = 64u32; 3808 pub const FWPS_METADATA_FIELD_TOKEN: u32 = 16u32; 3809 pub const FWPS_METADATA_FIELD_TRANSPORT_CONTROL_DATA: u32 = 65536u32; 3810 pub const FWPS_METADATA_FIELD_TRANSPORT_ENDPOINT_HANDLE: u32 = 32768u32; 3811 pub const FWPS_METADATA_FIELD_TRANSPORT_HEADER_INCLUDE_HEADER: u32 = 8388608u32; 3812 pub const FWPS_METADATA_FIELD_TRANSPORT_HEADER_SIZE: u32 = 1024u32; 3813 pub const FWPS_RIGHT_ACTION_WRITE: u32 = 1u32; 3814 pub const FWP_ACTION_FLAG_CALLOUT: u32 = 16384u32; 3815 pub const FWP_ACTION_FLAG_NON_TERMINATING: u32 = 8192u32; 3816 pub const FWP_ACTION_FLAG_TERMINATING: u32 = 4096u32; 3817 pub const FWP_ACTION_NONE: u32 = 7u32; 3818 pub const FWP_ACTION_NONE_NO_MATCH: u32 = 8u32; 3819 pub const FWP_ACTRL_MATCH_FILTER: u32 = 1u32; 3820 pub type FWP_AF = i32; 3821 pub const FWP_AF_INET: FWP_AF = 0i32; 3822 pub const FWP_AF_INET6: FWP_AF = 1i32; 3823 pub const FWP_AF_ETHER: FWP_AF = 2i32; 3824 pub const FWP_AF_NONE: FWP_AF = 3i32; 3825 pub const FWP_BYTEMAP_ARRAY64_SIZE: u32 = 8u32; 3826 #[repr(C)] 3827 pub struct FWP_BYTE_ARRAY16 { 3828 pub byteArray16: [u8; 16], 3829 } 3830 impl ::core::marker::Copy for FWP_BYTE_ARRAY16 {} 3831 impl ::core::clone::Clone for FWP_BYTE_ARRAY16 { clone(&self) -> Self3832 fn clone(&self) -> Self { 3833 *self 3834 } 3835 } 3836 #[repr(C)] 3837 pub struct FWP_BYTE_ARRAY6 { 3838 pub byteArray6: [u8; 6], 3839 } 3840 impl ::core::marker::Copy for FWP_BYTE_ARRAY6 {} 3841 impl ::core::clone::Clone for FWP_BYTE_ARRAY6 { clone(&self) -> Self3842 fn clone(&self) -> Self { 3843 *self 3844 } 3845 } 3846 pub const FWP_BYTE_ARRAY6_SIZE: u32 = 6u32; 3847 #[repr(C)] 3848 pub struct FWP_BYTE_BLOB { 3849 pub size: u32, 3850 pub data: *mut u8, 3851 } 3852 impl ::core::marker::Copy for FWP_BYTE_BLOB {} 3853 impl ::core::clone::Clone for FWP_BYTE_BLOB { clone(&self) -> Self3854 fn clone(&self) -> Self { 3855 *self 3856 } 3857 } 3858 pub const FWP_CALLOUT_FLAG_ALLOW_L2_BATCH_CLASSIFY: u32 = 128u32; 3859 pub const FWP_CALLOUT_FLAG_ALLOW_MID_STREAM_INSPECTION: u32 = 8u32; 3860 pub const FWP_CALLOUT_FLAG_ALLOW_OFFLOAD: u32 = 2u32; 3861 pub const FWP_CALLOUT_FLAG_ALLOW_RECLASSIFY: u32 = 16u32; 3862 pub const FWP_CALLOUT_FLAG_ALLOW_RSC: u32 = 64u32; 3863 pub const FWP_CALLOUT_FLAG_ALLOW_URO: u32 = 512u32; 3864 pub const FWP_CALLOUT_FLAG_ALLOW_USO: u32 = 256u32; 3865 pub const FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW: u32 = 1u32; 3866 pub const FWP_CALLOUT_FLAG_ENABLE_COMMIT_ADD_NOTIFY: u32 = 4u32; 3867 pub const FWP_CALLOUT_FLAG_RESERVED1: u32 = 32u32; 3868 pub const FWP_CALLOUT_FLAG_RESERVED2: u32 = 1024u32; 3869 pub type FWP_CLASSIFY_OPTION_TYPE = i32; 3870 pub const FWP_CLASSIFY_OPTION_MULTICAST_STATE: FWP_CLASSIFY_OPTION_TYPE = 0i32; 3871 pub const FWP_CLASSIFY_OPTION_LOOSE_SOURCE_MAPPING: FWP_CLASSIFY_OPTION_TYPE = 1i32; 3872 pub const FWP_CLASSIFY_OPTION_UNICAST_LIFETIME: FWP_CLASSIFY_OPTION_TYPE = 2i32; 3873 pub const FWP_CLASSIFY_OPTION_MCAST_BCAST_LIFETIME: FWP_CLASSIFY_OPTION_TYPE = 3i32; 3874 pub const FWP_CLASSIFY_OPTION_SECURE_SOCKET_SECURITY_FLAGS: FWP_CLASSIFY_OPTION_TYPE = 4i32; 3875 pub const FWP_CLASSIFY_OPTION_SECURE_SOCKET_AUTHIP_MM_POLICY_KEY: FWP_CLASSIFY_OPTION_TYPE = 5i32; 3876 pub const FWP_CLASSIFY_OPTION_SECURE_SOCKET_AUTHIP_QM_POLICY_KEY: FWP_CLASSIFY_OPTION_TYPE = 6i32; 3877 pub const FWP_CLASSIFY_OPTION_LOCAL_ONLY_MAPPING: FWP_CLASSIFY_OPTION_TYPE = 7i32; 3878 pub const FWP_CLASSIFY_OPTION_MAX: FWP_CLASSIFY_OPTION_TYPE = 8i32; 3879 pub const FWP_CONDITION_FLAG_IS_APPCONTAINER_LOOPBACK: u32 = 4194304u32; 3880 pub const FWP_CONDITION_FLAG_IS_AUTH_FW: u32 = 65536u32; 3881 pub const FWP_CONDITION_FLAG_IS_CONNECTION_REDIRECTED: u32 = 1048576u32; 3882 pub const FWP_CONDITION_FLAG_IS_FRAGMENT: u32 = 32u32; 3883 pub const FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP: u32 = 64u32; 3884 pub const FWP_CONDITION_FLAG_IS_HONORING_POLICY_AUTHORIZE: u32 = 33554432u32; 3885 pub const FWP_CONDITION_FLAG_IS_IMPLICIT_BIND: u32 = 512u32; 3886 pub const FWP_CONDITION_FLAG_IS_INBOUND_PASS_THRU: u32 = 524288u32; 3887 pub const FWP_CONDITION_FLAG_IS_IPSEC_NATT_RECLASSIFY: u32 = 128u32; 3888 pub const FWP_CONDITION_FLAG_IS_IPSEC_SECURED: u32 = 2u32; 3889 pub const FWP_CONDITION_FLAG_IS_LOOPBACK: u32 = 1u32; 3890 pub const FWP_CONDITION_FLAG_IS_NAME_APP_SPECIFIED: u32 = 16384u32; 3891 pub const FWP_CONDITION_FLAG_IS_NON_APPCONTAINER_LOOPBACK: u32 = 8388608u32; 3892 pub const FWP_CONDITION_FLAG_IS_OUTBOUND_PASS_THRU: u32 = 262144u32; 3893 pub const FWP_CONDITION_FLAG_IS_PROMISCUOUS: u32 = 32768u32; 3894 pub const FWP_CONDITION_FLAG_IS_PROXY_CONNECTION: u32 = 2097152u32; 3895 pub const FWP_CONDITION_FLAG_IS_RAW_ENDPOINT: u32 = 16u32; 3896 pub const FWP_CONDITION_FLAG_IS_REASSEMBLED: u32 = 1024u32; 3897 pub const FWP_CONDITION_FLAG_IS_REAUTHORIZE: u32 = 4u32; 3898 pub const FWP_CONDITION_FLAG_IS_RECLASSIFY: u32 = 131072u32; 3899 pub const FWP_CONDITION_FLAG_IS_RESERVED: u32 = 16777216u32; 3900 pub const FWP_CONDITION_FLAG_IS_WILDCARD_BIND: u32 = 8u32; 3901 pub const FWP_CONDITION_FLAG_REQUIRES_ALE_CLASSIFY: u32 = 256u32; 3902 pub const FWP_CONDITION_L2_IF_CONNECTOR_PRESENT: u32 = 128u32; 3903 pub const FWP_CONDITION_L2_IS_IP_FRAGMENT_GROUP: u32 = 64u32; 3904 pub const FWP_CONDITION_L2_IS_MALFORMED_PACKET: u32 = 32u32; 3905 pub const FWP_CONDITION_L2_IS_MOBILE_BROADBAND: u32 = 4u32; 3906 pub const FWP_CONDITION_L2_IS_NATIVE_ETHERNET: u32 = 1u32; 3907 pub const FWP_CONDITION_L2_IS_VM2VM: u32 = 16u32; 3908 pub const FWP_CONDITION_L2_IS_WIFI: u32 = 2u32; 3909 pub const FWP_CONDITION_L2_IS_WIFI_DIRECT_DATA: u32 = 8u32; 3910 pub const FWP_CONDITION_REAUTHORIZE_REASON_CHECK_OFFLOAD: u32 = 65536u32; 3911 pub const FWP_CONDITION_REAUTHORIZE_REASON_CLASSIFY_COMPLETION: u32 = 16u32; 3912 pub const FWP_CONDITION_REAUTHORIZE_REASON_EDP_POLICY_CHANGED: u32 = 512u32; 3913 pub const FWP_CONDITION_REAUTHORIZE_REASON_IPSEC_PROPERTIES_CHANGED: u32 = 32u32; 3914 pub const FWP_CONDITION_REAUTHORIZE_REASON_MID_STREAM_INSPECTION: u32 = 64u32; 3915 pub const FWP_CONDITION_REAUTHORIZE_REASON_NEW_ARRIVAL_INTERFACE: u32 = 2u32; 3916 pub const FWP_CONDITION_REAUTHORIZE_REASON_NEW_INBOUND_MCAST_BCAST_PACKET: u32 = 256u32; 3917 pub const FWP_CONDITION_REAUTHORIZE_REASON_NEW_NEXTHOP_INTERFACE: u32 = 4u32; 3918 pub const FWP_CONDITION_REAUTHORIZE_REASON_POLICY_CHANGE: u32 = 1u32; 3919 pub const FWP_CONDITION_REAUTHORIZE_REASON_PROFILE_CROSSING: u32 = 8u32; 3920 pub const FWP_CONDITION_REAUTHORIZE_REASON_PROXY_HANDLE_CHANGED: u32 = 16384u32; 3921 pub const FWP_CONDITION_REAUTHORIZE_REASON_SOCKET_PROPERTY_CHANGED: u32 = 128u32; 3922 pub const FWP_CONDITION_SOCKET_PROPERTY_FLAG_ALLOW_EDGE_TRAFFIC: u32 = 2u32; 3923 pub const FWP_CONDITION_SOCKET_PROPERTY_FLAG_DENY_EDGE_TRAFFIC: u32 = 4u32; 3924 pub const FWP_CONDITION_SOCKET_PROPERTY_FLAG_IS_SYSTEM_PORT_RPC: u32 = 1u32; 3925 #[repr(C)] 3926 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3927 pub struct FWP_CONDITION_VALUE0 { 3928 pub r#type: FWP_DATA_TYPE, 3929 pub Anonymous: FWP_CONDITION_VALUE0_0, 3930 } 3931 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3932 impl ::core::marker::Copy for FWP_CONDITION_VALUE0 {} 3933 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3934 impl ::core::clone::Clone for FWP_CONDITION_VALUE0 { clone(&self) -> Self3935 fn clone(&self) -> Self { 3936 *self 3937 } 3938 } 3939 #[repr(C)] 3940 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3941 pub union FWP_CONDITION_VALUE0_0 { 3942 pub uint8: u8, 3943 pub uint16: u16, 3944 pub uint32: u32, 3945 pub uint64: *mut u64, 3946 pub int8: i8, 3947 pub int16: i16, 3948 pub int32: i32, 3949 pub int64: *mut i64, 3950 pub float32: f32, 3951 pub double64: *mut f64, 3952 pub byteArray16: *mut FWP_BYTE_ARRAY16, 3953 pub byteBlob: *mut FWP_BYTE_BLOB, 3954 pub sid: *mut super::super::Security::SID, 3955 pub sd: *mut FWP_BYTE_BLOB, 3956 pub tokenInformation: *mut FWP_TOKEN_INFORMATION, 3957 pub tokenAccessInformation: *mut FWP_BYTE_BLOB, 3958 pub unicodeString: super::super::Foundation::PWSTR, 3959 pub byteArray6: *mut FWP_BYTE_ARRAY6, 3960 pub v4AddrMask: *mut FWP_V4_ADDR_AND_MASK, 3961 pub v6AddrMask: *mut FWP_V6_ADDR_AND_MASK, 3962 pub rangeValue: *mut FWP_RANGE0, 3963 } 3964 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3965 impl ::core::marker::Copy for FWP_CONDITION_VALUE0_0 {} 3966 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 3967 impl ::core::clone::Clone for FWP_CONDITION_VALUE0_0 { clone(&self) -> Self3968 fn clone(&self) -> Self { 3969 *self 3970 } 3971 } 3972 pub type FWP_DATA_TYPE = i32; 3973 pub const FWP_EMPTY: FWP_DATA_TYPE = 0i32; 3974 pub const FWP_UINT8: FWP_DATA_TYPE = 1i32; 3975 pub const FWP_UINT16: FWP_DATA_TYPE = 2i32; 3976 pub const FWP_UINT32: FWP_DATA_TYPE = 3i32; 3977 pub const FWP_UINT64: FWP_DATA_TYPE = 4i32; 3978 pub const FWP_INT8: FWP_DATA_TYPE = 5i32; 3979 pub const FWP_INT16: FWP_DATA_TYPE = 6i32; 3980 pub const FWP_INT32: FWP_DATA_TYPE = 7i32; 3981 pub const FWP_INT64: FWP_DATA_TYPE = 8i32; 3982 pub const FWP_FLOAT: FWP_DATA_TYPE = 9i32; 3983 pub const FWP_DOUBLE: FWP_DATA_TYPE = 10i32; 3984 pub const FWP_BYTE_ARRAY16_TYPE: FWP_DATA_TYPE = 11i32; 3985 pub const FWP_BYTE_BLOB_TYPE: FWP_DATA_TYPE = 12i32; 3986 pub const FWP_SID: FWP_DATA_TYPE = 13i32; 3987 pub const FWP_SECURITY_DESCRIPTOR_TYPE: FWP_DATA_TYPE = 14i32; 3988 pub const FWP_TOKEN_INFORMATION_TYPE: FWP_DATA_TYPE = 15i32; 3989 pub const FWP_TOKEN_ACCESS_INFORMATION_TYPE: FWP_DATA_TYPE = 16i32; 3990 pub const FWP_UNICODE_STRING_TYPE: FWP_DATA_TYPE = 17i32; 3991 pub const FWP_BYTE_ARRAY6_TYPE: FWP_DATA_TYPE = 18i32; 3992 pub const FWP_SINGLE_DATA_TYPE_MAX: FWP_DATA_TYPE = 255i32; 3993 pub const FWP_V4_ADDR_MASK: FWP_DATA_TYPE = 256i32; 3994 pub const FWP_V6_ADDR_MASK: FWP_DATA_TYPE = 257i32; 3995 pub const FWP_RANGE_TYPE: FWP_DATA_TYPE = 258i32; 3996 pub const FWP_DATA_TYPE_MAX: FWP_DATA_TYPE = 259i32; 3997 pub type FWP_DIRECTION = i32; 3998 pub const FWP_DIRECTION_OUTBOUND: FWP_DIRECTION = 0i32; 3999 pub const FWP_DIRECTION_INBOUND: FWP_DIRECTION = 1i32; 4000 pub const FWP_DIRECTION_MAX: FWP_DIRECTION = 2i32; 4001 pub type FWP_ETHER_ENCAP_METHOD = i32; 4002 pub const FWP_ETHER_ENCAP_METHOD_ETHER_V2: FWP_ETHER_ENCAP_METHOD = 0i32; 4003 pub const FWP_ETHER_ENCAP_METHOD_SNAP: FWP_ETHER_ENCAP_METHOD = 1i32; 4004 pub const FWP_ETHER_ENCAP_METHOD_SNAP_W_OUI_ZERO: FWP_ETHER_ENCAP_METHOD = 3i32; 4005 pub const FWP_FILTER_ENUM_FLAG_BEST_TERMINATING_MATCH: u32 = 1u32; 4006 pub const FWP_FILTER_ENUM_FLAG_BOOTTIME_ONLY: u32 = 4u32; 4007 pub const FWP_FILTER_ENUM_FLAG_INCLUDE_BOOTTIME: u32 = 8u32; 4008 pub const FWP_FILTER_ENUM_FLAG_INCLUDE_DISABLED: u32 = 16u32; 4009 pub const FWP_FILTER_ENUM_FLAG_RESERVED1: u32 = 32u32; 4010 pub const FWP_FILTER_ENUM_FLAG_SORTED: u32 = 2u32; 4011 pub type FWP_FILTER_ENUM_TYPE = i32; 4012 pub const FWP_FILTER_ENUM_FULLY_CONTAINED: FWP_FILTER_ENUM_TYPE = 0i32; 4013 pub const FWP_FILTER_ENUM_OVERLAPPING: FWP_FILTER_ENUM_TYPE = 1i32; 4014 pub const FWP_FILTER_ENUM_TYPE_MAX: FWP_FILTER_ENUM_TYPE = 2i32; 4015 pub type FWP_IP_VERSION = i32; 4016 pub const FWP_IP_VERSION_V4: FWP_IP_VERSION = 0i32; 4017 pub const FWP_IP_VERSION_V6: FWP_IP_VERSION = 1i32; 4018 pub const FWP_IP_VERSION_NONE: FWP_IP_VERSION = 2i32; 4019 pub const FWP_IP_VERSION_MAX: FWP_IP_VERSION = 3i32; 4020 pub type FWP_MATCH_TYPE = i32; 4021 pub const FWP_MATCH_EQUAL: FWP_MATCH_TYPE = 0i32; 4022 pub const FWP_MATCH_GREATER: FWP_MATCH_TYPE = 1i32; 4023 pub const FWP_MATCH_LESS: FWP_MATCH_TYPE = 2i32; 4024 pub const FWP_MATCH_GREATER_OR_EQUAL: FWP_MATCH_TYPE = 3i32; 4025 pub const FWP_MATCH_LESS_OR_EQUAL: FWP_MATCH_TYPE = 4i32; 4026 pub const FWP_MATCH_RANGE: FWP_MATCH_TYPE = 5i32; 4027 pub const FWP_MATCH_FLAGS_ALL_SET: FWP_MATCH_TYPE = 6i32; 4028 pub const FWP_MATCH_FLAGS_ANY_SET: FWP_MATCH_TYPE = 7i32; 4029 pub const FWP_MATCH_FLAGS_NONE_SET: FWP_MATCH_TYPE = 8i32; 4030 pub const FWP_MATCH_EQUAL_CASE_INSENSITIVE: FWP_MATCH_TYPE = 9i32; 4031 pub const FWP_MATCH_NOT_EQUAL: FWP_MATCH_TYPE = 10i32; 4032 pub const FWP_MATCH_PREFIX: FWP_MATCH_TYPE = 11i32; 4033 pub const FWP_MATCH_NOT_PREFIX: FWP_MATCH_TYPE = 12i32; 4034 pub const FWP_MATCH_TYPE_MAX: FWP_MATCH_TYPE = 13i32; 4035 pub const FWP_OPTION_VALUE_ALLOW_GLOBAL_MULTICAST_STATE: u32 = 2u32; 4036 pub const FWP_OPTION_VALUE_ALLOW_MULTICAST_STATE: u32 = 0u32; 4037 pub const FWP_OPTION_VALUE_DENY_MULTICAST_STATE: u32 = 1u32; 4038 pub const FWP_OPTION_VALUE_DISABLE_LOCAL_ONLY_MAPPING: u32 = 0u32; 4039 pub const FWP_OPTION_VALUE_DISABLE_LOOSE_SOURCE: u32 = 0u32; 4040 pub const FWP_OPTION_VALUE_ENABLE_LOCAL_ONLY_MAPPING: u32 = 1u32; 4041 pub const FWP_OPTION_VALUE_ENABLE_LOOSE_SOURCE: u32 = 1u32; 4042 #[repr(C)] 4043 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4044 pub struct FWP_RANGE0 { 4045 pub valueLow: FWP_VALUE0, 4046 pub valueHigh: FWP_VALUE0, 4047 } 4048 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4049 impl ::core::marker::Copy for FWP_RANGE0 {} 4050 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4051 impl ::core::clone::Clone for FWP_RANGE0 { clone(&self) -> Self4052 fn clone(&self) -> Self { 4053 *self 4054 } 4055 } 4056 #[repr(C)] 4057 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4058 pub struct FWP_TOKEN_INFORMATION { 4059 pub sidCount: u32, 4060 pub sids: *mut super::super::Security::SID_AND_ATTRIBUTES, 4061 pub restrictedSidCount: u32, 4062 pub restrictedSids: *mut super::super::Security::SID_AND_ATTRIBUTES, 4063 } 4064 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4065 impl ::core::marker::Copy for FWP_TOKEN_INFORMATION {} 4066 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4067 impl ::core::clone::Clone for FWP_TOKEN_INFORMATION { clone(&self) -> Self4068 fn clone(&self) -> Self { 4069 *self 4070 } 4071 } 4072 #[repr(C)] 4073 pub struct FWP_V4_ADDR_AND_MASK { 4074 pub addr: u32, 4075 pub mask: u32, 4076 } 4077 impl ::core::marker::Copy for FWP_V4_ADDR_AND_MASK {} 4078 impl ::core::clone::Clone for FWP_V4_ADDR_AND_MASK { clone(&self) -> Self4079 fn clone(&self) -> Self { 4080 *self 4081 } 4082 } 4083 #[repr(C)] 4084 pub struct FWP_V6_ADDR_AND_MASK { 4085 pub addr: [u8; 16], 4086 pub prefixLength: u8, 4087 } 4088 impl ::core::marker::Copy for FWP_V6_ADDR_AND_MASK {} 4089 impl ::core::clone::Clone for FWP_V6_ADDR_AND_MASK { clone(&self) -> Self4090 fn clone(&self) -> Self { 4091 *self 4092 } 4093 } 4094 pub const FWP_V6_ADDR_SIZE: u32 = 16u32; 4095 #[repr(C)] 4096 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4097 pub struct FWP_VALUE0 { 4098 pub r#type: FWP_DATA_TYPE, 4099 pub Anonymous: FWP_VALUE0_0, 4100 } 4101 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4102 impl ::core::marker::Copy for FWP_VALUE0 {} 4103 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4104 impl ::core::clone::Clone for FWP_VALUE0 { clone(&self) -> Self4105 fn clone(&self) -> Self { 4106 *self 4107 } 4108 } 4109 #[repr(C)] 4110 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4111 pub union FWP_VALUE0_0 { 4112 pub uint8: u8, 4113 pub uint16: u16, 4114 pub uint32: u32, 4115 pub uint64: *mut u64, 4116 pub int8: i8, 4117 pub int16: i16, 4118 pub int32: i32, 4119 pub int64: *mut i64, 4120 pub float32: f32, 4121 pub double64: *mut f64, 4122 pub byteArray16: *mut FWP_BYTE_ARRAY16, 4123 pub byteBlob: *mut FWP_BYTE_BLOB, 4124 pub sid: *mut super::super::Security::SID, 4125 pub sd: *mut FWP_BYTE_BLOB, 4126 pub tokenInformation: *mut FWP_TOKEN_INFORMATION, 4127 pub tokenAccessInformation: *mut FWP_BYTE_BLOB, 4128 pub unicodeString: super::super::Foundation::PWSTR, 4129 pub byteArray6: *mut FWP_BYTE_ARRAY6, 4130 } 4131 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4132 impl ::core::marker::Copy for FWP_VALUE0_0 {} 4133 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 4134 impl ::core::clone::Clone for FWP_VALUE0_0 { clone(&self) -> Self4135 fn clone(&self) -> Self { 4136 *self 4137 } 4138 } 4139 pub type FWP_VSWITCH_NETWORK_TYPE = i32; 4140 pub const FWP_VSWITCH_NETWORK_TYPE_UNKNOWN: FWP_VSWITCH_NETWORK_TYPE = 0i32; 4141 pub const FWP_VSWITCH_NETWORK_TYPE_PRIVATE: FWP_VSWITCH_NETWORK_TYPE = 1i32; 4142 pub const FWP_VSWITCH_NETWORK_TYPE_INTERNAL: FWP_VSWITCH_NETWORK_TYPE = 2i32; 4143 pub const FWP_VSWITCH_NETWORK_TYPE_EXTERNAL: FWP_VSWITCH_NETWORK_TYPE = 3i32; 4144 pub type ICMP4_TIME_EXCEED_CODE = i32; 4145 pub const ICMP4_TIME_EXCEED_TRANSIT: ICMP4_TIME_EXCEED_CODE = 0i32; 4146 pub const ICMP4_TIME_EXCEED_REASSEMBLY: ICMP4_TIME_EXCEED_CODE = 1i32; 4147 pub type ICMP4_UNREACH_CODE = i32; 4148 pub const ICMP4_UNREACH_NET: ICMP4_UNREACH_CODE = 0i32; 4149 pub const ICMP4_UNREACH_HOST: ICMP4_UNREACH_CODE = 1i32; 4150 pub const ICMP4_UNREACH_PROTOCOL: ICMP4_UNREACH_CODE = 2i32; 4151 pub const ICMP4_UNREACH_PORT: ICMP4_UNREACH_CODE = 3i32; 4152 pub const ICMP4_UNREACH_FRAG_NEEDED: ICMP4_UNREACH_CODE = 4i32; 4153 pub const ICMP4_UNREACH_SOURCEROUTE_FAILED: ICMP4_UNREACH_CODE = 5i32; 4154 pub const ICMP4_UNREACH_NET_UNKNOWN: ICMP4_UNREACH_CODE = 6i32; 4155 pub const ICMP4_UNREACH_HOST_UNKNOWN: ICMP4_UNREACH_CODE = 7i32; 4156 pub const ICMP4_UNREACH_ISOLATED: ICMP4_UNREACH_CODE = 8i32; 4157 pub const ICMP4_UNREACH_NET_ADMIN: ICMP4_UNREACH_CODE = 9i32; 4158 pub const ICMP4_UNREACH_HOST_ADMIN: ICMP4_UNREACH_CODE = 10i32; 4159 pub const ICMP4_UNREACH_NET_TOS: ICMP4_UNREACH_CODE = 11i32; 4160 pub const ICMP4_UNREACH_HOST_TOS: ICMP4_UNREACH_CODE = 12i32; 4161 pub const ICMP4_UNREACH_ADMIN: ICMP4_UNREACH_CODE = 13i32; 4162 pub const ICMP6_DST_UNREACH_ADDR: u32 = 3u32; 4163 pub const ICMP6_DST_UNREACH_ADMIN: u32 = 1u32; 4164 pub const ICMP6_DST_UNREACH_BEYONDSCOPE: u32 = 2u32; 4165 pub const ICMP6_DST_UNREACH_NOPORT: u32 = 4u32; 4166 pub const ICMP6_DST_UNREACH_NOROUTE: u32 = 0u32; 4167 pub const ICMP6_PARAMPROB_HEADER: u32 = 0u32; 4168 pub const ICMP6_PARAMPROB_NEXTHEADER: u32 = 1u32; 4169 pub const ICMP6_PARAMPROB_OPTION: u32 = 2u32; 4170 pub const ICMP6_TIME_EXCEED_REASSEMBLY: u32 = 1u32; 4171 pub const ICMP6_TIME_EXCEED_TRANSIT: u32 = 0u32; 4172 #[repr(C)] 4173 pub struct ICMPV4_ADDRESS_MASK_MESSAGE { 4174 pub Header: ICMP_MESSAGE, 4175 pub AddressMask: u32, 4176 } 4177 impl ::core::marker::Copy for ICMPV4_ADDRESS_MASK_MESSAGE {} 4178 impl ::core::clone::Clone for ICMPV4_ADDRESS_MASK_MESSAGE { clone(&self) -> Self4179 fn clone(&self) -> Self { 4180 *self 4181 } 4182 } 4183 pub const ICMPV4_INVALID_PREFERENCE_LEVEL: u32 = 2147483648u32; 4184 #[repr(C)] 4185 #[cfg(feature = "Win32_Networking_WinSock")] 4186 pub struct ICMPV4_ROUTER_ADVERT_ENTRY { 4187 pub RouterAdvertAddr: super::super::Networking::WinSock::IN_ADDR, 4188 pub PreferenceLevel: i32, 4189 } 4190 #[cfg(feature = "Win32_Networking_WinSock")] 4191 impl ::core::marker::Copy for ICMPV4_ROUTER_ADVERT_ENTRY {} 4192 #[cfg(feature = "Win32_Networking_WinSock")] 4193 impl ::core::clone::Clone for ICMPV4_ROUTER_ADVERT_ENTRY { clone(&self) -> Self4194 fn clone(&self) -> Self { 4195 *self 4196 } 4197 } 4198 #[repr(C)] 4199 pub struct ICMPV4_ROUTER_ADVERT_HEADER { 4200 pub RaHeader: ICMP_MESSAGE, 4201 } 4202 impl ::core::marker::Copy for ICMPV4_ROUTER_ADVERT_HEADER {} 4203 impl ::core::clone::Clone for ICMPV4_ROUTER_ADVERT_HEADER { clone(&self) -> Self4204 fn clone(&self) -> Self { 4205 *self 4206 } 4207 } 4208 #[repr(C)] 4209 pub struct ICMPV4_ROUTER_SOLICIT { 4210 pub RsHeader: ICMP_MESSAGE, 4211 } 4212 impl ::core::marker::Copy for ICMPV4_ROUTER_SOLICIT {} 4213 impl ::core::clone::Clone for ICMPV4_ROUTER_SOLICIT { clone(&self) -> Self4214 fn clone(&self) -> Self { 4215 *self 4216 } 4217 } 4218 #[repr(C)] 4219 pub struct ICMPV4_TIMESTAMP_MESSAGE { 4220 pub Header: ICMP_MESSAGE, 4221 pub OriginateTimestamp: u32, 4222 pub ReceiveTimestamp: u32, 4223 pub TransmitTimestamp: u32, 4224 } 4225 impl ::core::marker::Copy for ICMPV4_TIMESTAMP_MESSAGE {} 4226 impl ::core::clone::Clone for ICMPV4_TIMESTAMP_MESSAGE { clone(&self) -> Self4227 fn clone(&self) -> Self { 4228 *self 4229 } 4230 } 4231 pub const ICMPV6_ECHO_REQUEST_FLAG_REVERSE: u32 = 1u32; 4232 #[repr(C)] 4233 pub struct ICMP_HEADER { 4234 pub Type: u8, 4235 pub Code: u8, 4236 pub Checksum: u16, 4237 } 4238 impl ::core::marker::Copy for ICMP_HEADER {} 4239 impl ::core::clone::Clone for ICMP_HEADER { clone(&self) -> Self4240 fn clone(&self) -> Self { 4241 *self 4242 } 4243 } 4244 #[repr(C)] 4245 pub struct ICMP_MESSAGE { 4246 pub Header: ICMP_HEADER, 4247 pub Data: ICMP_MESSAGE_0, 4248 } 4249 impl ::core::marker::Copy for ICMP_MESSAGE {} 4250 impl ::core::clone::Clone for ICMP_MESSAGE { clone(&self) -> Self4251 fn clone(&self) -> Self { 4252 *self 4253 } 4254 } 4255 #[repr(C)] 4256 pub union ICMP_MESSAGE_0 { 4257 pub Data32: [u32; 1], 4258 pub Data16: [u16; 2], 4259 pub Data8: [u8; 4], 4260 } 4261 impl ::core::marker::Copy for ICMP_MESSAGE_0 {} 4262 impl ::core::clone::Clone for ICMP_MESSAGE_0 { clone(&self) -> Self4263 fn clone(&self) -> Self { 4264 *self 4265 } 4266 } 4267 #[repr(C)] 4268 #[cfg(feature = "Win32_Networking_WinSock")] 4269 pub struct IGMPV3_QUERY_HEADER { 4270 pub Type: u8, 4271 pub Anonymous1: IGMPV3_QUERY_HEADER_0, 4272 pub Checksum: u16, 4273 pub MulticastAddress: super::super::Networking::WinSock::IN_ADDR, 4274 pub _bitfield: u8, 4275 pub Anonymous2: IGMPV3_QUERY_HEADER_1, 4276 pub SourceCount: u16, 4277 } 4278 #[cfg(feature = "Win32_Networking_WinSock")] 4279 impl ::core::marker::Copy for IGMPV3_QUERY_HEADER {} 4280 #[cfg(feature = "Win32_Networking_WinSock")] 4281 impl ::core::clone::Clone for IGMPV3_QUERY_HEADER { clone(&self) -> Self4282 fn clone(&self) -> Self { 4283 *self 4284 } 4285 } 4286 #[repr(C)] 4287 #[cfg(feature = "Win32_Networking_WinSock")] 4288 pub union IGMPV3_QUERY_HEADER_0 { 4289 pub MaxRespCode: u8, 4290 pub Anonymous: IGMPV3_QUERY_HEADER_0_0, 4291 } 4292 #[cfg(feature = "Win32_Networking_WinSock")] 4293 impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_0 {} 4294 #[cfg(feature = "Win32_Networking_WinSock")] 4295 impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_0 { clone(&self) -> Self4296 fn clone(&self) -> Self { 4297 *self 4298 } 4299 } 4300 #[repr(C)] 4301 #[cfg(feature = "Win32_Networking_WinSock")] 4302 pub struct IGMPV3_QUERY_HEADER_0_0 { 4303 pub _bitfield: u8, 4304 } 4305 #[cfg(feature = "Win32_Networking_WinSock")] 4306 impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_0_0 {} 4307 #[cfg(feature = "Win32_Networking_WinSock")] 4308 impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_0_0 { clone(&self) -> Self4309 fn clone(&self) -> Self { 4310 *self 4311 } 4312 } 4313 #[repr(C)] 4314 #[cfg(feature = "Win32_Networking_WinSock")] 4315 pub union IGMPV3_QUERY_HEADER_1 { 4316 pub QueriersQueryInterfaceCode: u8, 4317 pub Anonymous: IGMPV3_QUERY_HEADER_1_0, 4318 } 4319 #[cfg(feature = "Win32_Networking_WinSock")] 4320 impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_1 {} 4321 #[cfg(feature = "Win32_Networking_WinSock")] 4322 impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_1 { clone(&self) -> Self4323 fn clone(&self) -> Self { 4324 *self 4325 } 4326 } 4327 #[repr(C)] 4328 #[cfg(feature = "Win32_Networking_WinSock")] 4329 pub struct IGMPV3_QUERY_HEADER_1_0 { 4330 pub _bitfield: u8, 4331 } 4332 #[cfg(feature = "Win32_Networking_WinSock")] 4333 impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_1_0 {} 4334 #[cfg(feature = "Win32_Networking_WinSock")] 4335 impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_1_0 { clone(&self) -> Self4336 fn clone(&self) -> Self { 4337 *self 4338 } 4339 } 4340 #[repr(C)] 4341 pub struct IGMPV3_REPORT_HEADER { 4342 pub Type: u8, 4343 pub Reserved: u8, 4344 pub Checksum: u16, 4345 pub Reserved2: u16, 4346 pub RecordCount: u16, 4347 } 4348 impl ::core::marker::Copy for IGMPV3_REPORT_HEADER {} 4349 impl ::core::clone::Clone for IGMPV3_REPORT_HEADER { clone(&self) -> Self4350 fn clone(&self) -> Self { 4351 *self 4352 } 4353 } 4354 #[repr(C)] 4355 #[cfg(feature = "Win32_Networking_WinSock")] 4356 pub struct IGMPV3_REPORT_RECORD_HEADER { 4357 pub Type: u8, 4358 pub AuxillaryDataLength: u8, 4359 pub SourceCount: u16, 4360 pub MulticastAddress: super::super::Networking::WinSock::IN_ADDR, 4361 } 4362 #[cfg(feature = "Win32_Networking_WinSock")] 4363 impl ::core::marker::Copy for IGMPV3_REPORT_RECORD_HEADER {} 4364 #[cfg(feature = "Win32_Networking_WinSock")] 4365 impl ::core::clone::Clone for IGMPV3_REPORT_RECORD_HEADER { clone(&self) -> Self4366 fn clone(&self) -> Self { 4367 *self 4368 } 4369 } 4370 #[repr(C)] 4371 #[cfg(feature = "Win32_Networking_WinSock")] 4372 pub struct IGMP_HEADER { 4373 pub Anonymous1: IGMP_HEADER_0, 4374 pub Anonymous2: IGMP_HEADER_1, 4375 pub Checksum: u16, 4376 pub MulticastAddress: super::super::Networking::WinSock::IN_ADDR, 4377 } 4378 #[cfg(feature = "Win32_Networking_WinSock")] 4379 impl ::core::marker::Copy for IGMP_HEADER {} 4380 #[cfg(feature = "Win32_Networking_WinSock")] 4381 impl ::core::clone::Clone for IGMP_HEADER { clone(&self) -> Self4382 fn clone(&self) -> Self { 4383 *self 4384 } 4385 } 4386 #[repr(C)] 4387 #[cfg(feature = "Win32_Networking_WinSock")] 4388 pub union IGMP_HEADER_0 { 4389 pub Anonymous: IGMP_HEADER_0_0, 4390 pub VersionType: u8, 4391 } 4392 #[cfg(feature = "Win32_Networking_WinSock")] 4393 impl ::core::marker::Copy for IGMP_HEADER_0 {} 4394 #[cfg(feature = "Win32_Networking_WinSock")] 4395 impl ::core::clone::Clone for IGMP_HEADER_0 { clone(&self) -> Self4396 fn clone(&self) -> Self { 4397 *self 4398 } 4399 } 4400 #[repr(C)] 4401 #[cfg(feature = "Win32_Networking_WinSock")] 4402 pub struct IGMP_HEADER_0_0 { 4403 pub _bitfield: u8, 4404 } 4405 #[cfg(feature = "Win32_Networking_WinSock")] 4406 impl ::core::marker::Copy for IGMP_HEADER_0_0 {} 4407 #[cfg(feature = "Win32_Networking_WinSock")] 4408 impl ::core::clone::Clone for IGMP_HEADER_0_0 { clone(&self) -> Self4409 fn clone(&self) -> Self { 4410 *self 4411 } 4412 } 4413 #[repr(C)] 4414 #[cfg(feature = "Win32_Networking_WinSock")] 4415 pub union IGMP_HEADER_1 { 4416 pub Reserved: u8, 4417 pub MaxRespTime: u8, 4418 pub Code: u8, 4419 } 4420 #[cfg(feature = "Win32_Networking_WinSock")] 4421 impl ::core::marker::Copy for IGMP_HEADER_1 {} 4422 #[cfg(feature = "Win32_Networking_WinSock")] 4423 impl ::core::clone::Clone for IGMP_HEADER_1 { clone(&self) -> Self4424 fn clone(&self) -> Self { 4425 *self 4426 } 4427 } 4428 pub const IGMP_LEAVE_GROUP_TYPE: u32 = 23u32; 4429 pub type IGMP_MAX_RESP_CODE_TYPE = i32; 4430 pub const IGMP_MAX_RESP_CODE_TYPE_NORMAL: IGMP_MAX_RESP_CODE_TYPE = 0i32; 4431 pub const IGMP_MAX_RESP_CODE_TYPE_FLOAT: IGMP_MAX_RESP_CODE_TYPE = 1i32; 4432 pub const IGMP_QUERY_TYPE: u32 = 17u32; 4433 pub const IGMP_VERSION1_REPORT_TYPE: u32 = 18u32; 4434 pub const IGMP_VERSION2_REPORT_TYPE: u32 = 22u32; 4435 pub const IGMP_VERSION3_REPORT_TYPE: u32 = 34u32; 4436 pub type IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE = i32; 4437 pub const IKEEXT_IMPERSONATION_NONE: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE = 0i32; 4438 pub const IKEEXT_IMPERSONATION_SOCKET_PRINCIPAL: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE = 1i32; 4439 pub const IKEEXT_IMPERSONATION_MAX: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE = 2i32; 4440 #[repr(C)] 4441 #[cfg(feature = "Win32_Foundation")] 4442 pub struct IKEEXT_AUTHENTICATION_METHOD0 { 4443 pub authenticationMethodType: IKEEXT_AUTHENTICATION_METHOD_TYPE, 4444 pub Anonymous: IKEEXT_AUTHENTICATION_METHOD0_0, 4445 } 4446 #[cfg(feature = "Win32_Foundation")] 4447 impl ::core::marker::Copy for IKEEXT_AUTHENTICATION_METHOD0 {} 4448 #[cfg(feature = "Win32_Foundation")] 4449 impl ::core::clone::Clone for IKEEXT_AUTHENTICATION_METHOD0 { clone(&self) -> Self4450 fn clone(&self) -> Self { 4451 *self 4452 } 4453 } 4454 #[repr(C)] 4455 #[cfg(feature = "Win32_Foundation")] 4456 pub union IKEEXT_AUTHENTICATION_METHOD0_0 { 4457 pub presharedKeyAuthentication: IKEEXT_PRESHARED_KEY_AUTHENTICATION0, 4458 pub certificateAuthentication: IKEEXT_CERTIFICATE_AUTHENTICATION0, 4459 pub kerberosAuthentication: IKEEXT_KERBEROS_AUTHENTICATION0, 4460 pub ntlmV2Authentication: IKEEXT_NTLM_V2_AUTHENTICATION0, 4461 pub sslAuthentication: IKEEXT_CERTIFICATE_AUTHENTICATION0, 4462 pub cgaAuthentication: IKEEXT_IPV6_CGA_AUTHENTICATION0, 4463 } 4464 #[cfg(feature = "Win32_Foundation")] 4465 impl ::core::marker::Copy for IKEEXT_AUTHENTICATION_METHOD0_0 {} 4466 #[cfg(feature = "Win32_Foundation")] 4467 impl ::core::clone::Clone for IKEEXT_AUTHENTICATION_METHOD0_0 { clone(&self) -> Self4468 fn clone(&self) -> Self { 4469 *self 4470 } 4471 } 4472 #[repr(C)] 4473 #[cfg(feature = "Win32_Foundation")] 4474 pub struct IKEEXT_AUTHENTICATION_METHOD1 { 4475 pub authenticationMethodType: IKEEXT_AUTHENTICATION_METHOD_TYPE, 4476 pub Anonymous: IKEEXT_AUTHENTICATION_METHOD1_0, 4477 } 4478 #[cfg(feature = "Win32_Foundation")] 4479 impl ::core::marker::Copy for IKEEXT_AUTHENTICATION_METHOD1 {} 4480 #[cfg(feature = "Win32_Foundation")] 4481 impl ::core::clone::Clone for IKEEXT_AUTHENTICATION_METHOD1 { clone(&self) -> Self4482 fn clone(&self) -> Self { 4483 *self 4484 } 4485 } 4486 #[repr(C)] 4487 #[cfg(feature = "Win32_Foundation")] 4488 pub union IKEEXT_AUTHENTICATION_METHOD1_0 { 4489 pub presharedKeyAuthentication: IKEEXT_PRESHARED_KEY_AUTHENTICATION1, 4490 pub certificateAuthentication: IKEEXT_CERTIFICATE_AUTHENTICATION1, 4491 pub kerberosAuthentication: IKEEXT_KERBEROS_AUTHENTICATION0, 4492 pub ntlmV2Authentication: IKEEXT_NTLM_V2_AUTHENTICATION0, 4493 pub sslAuthentication: IKEEXT_CERTIFICATE_AUTHENTICATION1, 4494 pub cgaAuthentication: IKEEXT_IPV6_CGA_AUTHENTICATION0, 4495 pub eapAuthentication: IKEEXT_EAP_AUTHENTICATION0, 4496 } 4497 #[cfg(feature = "Win32_Foundation")] 4498 impl ::core::marker::Copy for IKEEXT_AUTHENTICATION_METHOD1_0 {} 4499 #[cfg(feature = "Win32_Foundation")] 4500 impl ::core::clone::Clone for IKEEXT_AUTHENTICATION_METHOD1_0 { clone(&self) -> Self4501 fn clone(&self) -> Self { 4502 *self 4503 } 4504 } 4505 #[repr(C)] 4506 #[cfg(feature = "Win32_Foundation")] 4507 pub struct IKEEXT_AUTHENTICATION_METHOD2 { 4508 pub authenticationMethodType: IKEEXT_AUTHENTICATION_METHOD_TYPE, 4509 pub Anonymous: IKEEXT_AUTHENTICATION_METHOD2_0, 4510 } 4511 #[cfg(feature = "Win32_Foundation")] 4512 impl ::core::marker::Copy for IKEEXT_AUTHENTICATION_METHOD2 {} 4513 #[cfg(feature = "Win32_Foundation")] 4514 impl ::core::clone::Clone for IKEEXT_AUTHENTICATION_METHOD2 { clone(&self) -> Self4515 fn clone(&self) -> Self { 4516 *self 4517 } 4518 } 4519 #[repr(C)] 4520 #[cfg(feature = "Win32_Foundation")] 4521 pub union IKEEXT_AUTHENTICATION_METHOD2_0 { 4522 pub presharedKeyAuthentication: IKEEXT_PRESHARED_KEY_AUTHENTICATION1, 4523 pub certificateAuthentication: IKEEXT_CERTIFICATE_AUTHENTICATION2, 4524 pub kerberosAuthentication: IKEEXT_KERBEROS_AUTHENTICATION1, 4525 pub reservedAuthentication: IKEEXT_RESERVED_AUTHENTICATION0, 4526 pub ntlmV2Authentication: IKEEXT_NTLM_V2_AUTHENTICATION0, 4527 pub sslAuthentication: IKEEXT_CERTIFICATE_AUTHENTICATION2, 4528 pub cgaAuthentication: IKEEXT_IPV6_CGA_AUTHENTICATION0, 4529 pub eapAuthentication: IKEEXT_EAP_AUTHENTICATION0, 4530 } 4531 #[cfg(feature = "Win32_Foundation")] 4532 impl ::core::marker::Copy for IKEEXT_AUTHENTICATION_METHOD2_0 {} 4533 #[cfg(feature = "Win32_Foundation")] 4534 impl ::core::clone::Clone for IKEEXT_AUTHENTICATION_METHOD2_0 { clone(&self) -> Self4535 fn clone(&self) -> Self { 4536 *self 4537 } 4538 } 4539 pub type IKEEXT_AUTHENTICATION_METHOD_TYPE = i32; 4540 pub const IKEEXT_PRESHARED_KEY: IKEEXT_AUTHENTICATION_METHOD_TYPE = 0i32; 4541 pub const IKEEXT_CERTIFICATE: IKEEXT_AUTHENTICATION_METHOD_TYPE = 1i32; 4542 pub const IKEEXT_KERBEROS: IKEEXT_AUTHENTICATION_METHOD_TYPE = 2i32; 4543 pub const IKEEXT_ANONYMOUS: IKEEXT_AUTHENTICATION_METHOD_TYPE = 3i32; 4544 pub const IKEEXT_SSL: IKEEXT_AUTHENTICATION_METHOD_TYPE = 4i32; 4545 pub const IKEEXT_NTLM_V2: IKEEXT_AUTHENTICATION_METHOD_TYPE = 5i32; 4546 pub const IKEEXT_IPV6_CGA: IKEEXT_AUTHENTICATION_METHOD_TYPE = 6i32; 4547 pub const IKEEXT_CERTIFICATE_ECDSA_P256: IKEEXT_AUTHENTICATION_METHOD_TYPE = 7i32; 4548 pub const IKEEXT_CERTIFICATE_ECDSA_P384: IKEEXT_AUTHENTICATION_METHOD_TYPE = 8i32; 4549 pub const IKEEXT_SSL_ECDSA_P256: IKEEXT_AUTHENTICATION_METHOD_TYPE = 9i32; 4550 pub const IKEEXT_SSL_ECDSA_P384: IKEEXT_AUTHENTICATION_METHOD_TYPE = 10i32; 4551 pub const IKEEXT_EAP: IKEEXT_AUTHENTICATION_METHOD_TYPE = 11i32; 4552 pub const IKEEXT_RESERVED: IKEEXT_AUTHENTICATION_METHOD_TYPE = 12i32; 4553 pub const IKEEXT_AUTHENTICATION_METHOD_TYPE_MAX: IKEEXT_AUTHENTICATION_METHOD_TYPE = 13i32; 4554 #[repr(C)] 4555 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION0 { 4556 pub inboundConfigType: IKEEXT_CERT_CONFIG_TYPE, 4557 pub Anonymous1: IKEEXT_CERTIFICATE_AUTHENTICATION0_0, 4558 pub outboundConfigType: IKEEXT_CERT_CONFIG_TYPE, 4559 pub Anonymous2: IKEEXT_CERTIFICATE_AUTHENTICATION0_1, 4560 pub flags: IKEEXT_CERT_AUTH, 4561 } 4562 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION0 {} 4563 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION0 { clone(&self) -> Self4564 fn clone(&self) -> Self { 4565 *self 4566 } 4567 } 4568 #[repr(C)] 4569 pub union IKEEXT_CERTIFICATE_AUTHENTICATION0_0 { 4570 pub Anonymous: IKEEXT_CERTIFICATE_AUTHENTICATION0_0_0, 4571 pub inboundEnterpriseStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4572 pub inboundTrustedRootStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4573 } 4574 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION0_0 {} 4575 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION0_0 { clone(&self) -> Self4576 fn clone(&self) -> Self { 4577 *self 4578 } 4579 } 4580 #[repr(C)] 4581 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION0_0_0 { 4582 pub inboundRootArraySize: u32, 4583 pub inboundRootArray: *mut IKEEXT_CERT_ROOT_CONFIG0, 4584 } 4585 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION0_0_0 {} 4586 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION0_0_0 { clone(&self) -> Self4587 fn clone(&self) -> Self { 4588 *self 4589 } 4590 } 4591 #[repr(C)] 4592 pub union IKEEXT_CERTIFICATE_AUTHENTICATION0_1 { 4593 pub Anonymous: IKEEXT_CERTIFICATE_AUTHENTICATION0_1_0, 4594 pub outboundEnterpriseStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4595 pub outboundTrustedRootStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4596 } 4597 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION0_1 {} 4598 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION0_1 { clone(&self) -> Self4599 fn clone(&self) -> Self { 4600 *self 4601 } 4602 } 4603 #[repr(C)] 4604 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION0_1_0 { 4605 pub outboundRootArraySize: u32, 4606 pub outboundRootArray: *mut IKEEXT_CERT_ROOT_CONFIG0, 4607 } 4608 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION0_1_0 {} 4609 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION0_1_0 { clone(&self) -> Self4610 fn clone(&self) -> Self { 4611 *self 4612 } 4613 } 4614 #[repr(C)] 4615 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION1 { 4616 pub inboundConfigType: IKEEXT_CERT_CONFIG_TYPE, 4617 pub Anonymous1: IKEEXT_CERTIFICATE_AUTHENTICATION1_0, 4618 pub outboundConfigType: IKEEXT_CERT_CONFIG_TYPE, 4619 pub Anonymous2: IKEEXT_CERTIFICATE_AUTHENTICATION1_1, 4620 pub flags: IKEEXT_CERT_AUTH, 4621 pub localCertLocationUrl: FWP_BYTE_BLOB, 4622 } 4623 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION1 {} 4624 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION1 { clone(&self) -> Self4625 fn clone(&self) -> Self { 4626 *self 4627 } 4628 } 4629 #[repr(C)] 4630 pub union IKEEXT_CERTIFICATE_AUTHENTICATION1_0 { 4631 pub Anonymous: IKEEXT_CERTIFICATE_AUTHENTICATION1_0_0, 4632 pub inboundEnterpriseStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4633 pub inboundTrustedRootStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4634 } 4635 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION1_0 {} 4636 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION1_0 { clone(&self) -> Self4637 fn clone(&self) -> Self { 4638 *self 4639 } 4640 } 4641 #[repr(C)] 4642 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION1_0_0 { 4643 pub inboundRootArraySize: u32, 4644 pub inboundRootArray: *mut IKEEXT_CERT_ROOT_CONFIG0, 4645 } 4646 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION1_0_0 {} 4647 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION1_0_0 { clone(&self) -> Self4648 fn clone(&self) -> Self { 4649 *self 4650 } 4651 } 4652 #[repr(C)] 4653 pub union IKEEXT_CERTIFICATE_AUTHENTICATION1_1 { 4654 pub Anonymous: IKEEXT_CERTIFICATE_AUTHENTICATION1_1_0, 4655 pub outboundEnterpriseStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4656 pub outboundTrustedRootStoreConfig: *mut IKEEXT_CERT_ROOT_CONFIG0, 4657 } 4658 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION1_1 {} 4659 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION1_1 { clone(&self) -> Self4660 fn clone(&self) -> Self { 4661 *self 4662 } 4663 } 4664 #[repr(C)] 4665 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION1_1_0 { 4666 pub outboundRootArraySize: u32, 4667 pub outboundRootArray: *mut IKEEXT_CERT_ROOT_CONFIG0, 4668 } 4669 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION1_1_0 {} 4670 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION1_1_0 { clone(&self) -> Self4671 fn clone(&self) -> Self { 4672 *self 4673 } 4674 } 4675 #[repr(C)] 4676 #[cfg(feature = "Win32_Foundation")] 4677 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2 { 4678 pub inboundConfigType: IKEEXT_CERT_CONFIG_TYPE, 4679 pub Anonymous1: IKEEXT_CERTIFICATE_AUTHENTICATION2_0, 4680 pub outboundConfigType: IKEEXT_CERT_CONFIG_TYPE, 4681 pub Anonymous2: IKEEXT_CERTIFICATE_AUTHENTICATION2_1, 4682 pub flags: IKEEXT_CERT_AUTH, 4683 pub localCertLocationUrl: FWP_BYTE_BLOB, 4684 } 4685 #[cfg(feature = "Win32_Foundation")] 4686 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2 {} 4687 #[cfg(feature = "Win32_Foundation")] 4688 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2 { clone(&self) -> Self4689 fn clone(&self) -> Self { 4690 *self 4691 } 4692 } 4693 #[repr(C)] 4694 #[cfg(feature = "Win32_Foundation")] 4695 pub union IKEEXT_CERTIFICATE_AUTHENTICATION2_0 { 4696 pub Anonymous1: IKEEXT_CERTIFICATE_AUTHENTICATION2_0_0, 4697 pub Anonymous2: IKEEXT_CERTIFICATE_AUTHENTICATION2_0_1, 4698 pub Anonymous3: IKEEXT_CERTIFICATE_AUTHENTICATION2_0_2, 4699 } 4700 #[cfg(feature = "Win32_Foundation")] 4701 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_0 {} 4702 #[cfg(feature = "Win32_Foundation")] 4703 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_0 { clone(&self) -> Self4704 fn clone(&self) -> Self { 4705 *self 4706 } 4707 } 4708 #[repr(C)] 4709 #[cfg(feature = "Win32_Foundation")] 4710 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2_0_0 { 4711 pub inboundRootArraySize: u32, 4712 pub inboundRootCriteria: *mut IKEEXT_CERTIFICATE_CRITERIA0, 4713 } 4714 #[cfg(feature = "Win32_Foundation")] 4715 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_0_0 {} 4716 #[cfg(feature = "Win32_Foundation")] 4717 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_0_0 { clone(&self) -> Self4718 fn clone(&self) -> Self { 4719 *self 4720 } 4721 } 4722 #[repr(C)] 4723 #[cfg(feature = "Win32_Foundation")] 4724 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2_0_1 { 4725 pub inboundEnterpriseStoreArraySize: u32, 4726 pub inboundEnterpriseStoreCriteria: *mut IKEEXT_CERTIFICATE_CRITERIA0, 4727 } 4728 #[cfg(feature = "Win32_Foundation")] 4729 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_0_1 {} 4730 #[cfg(feature = "Win32_Foundation")] 4731 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_0_1 { clone(&self) -> Self4732 fn clone(&self) -> Self { 4733 *self 4734 } 4735 } 4736 #[repr(C)] 4737 #[cfg(feature = "Win32_Foundation")] 4738 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2_0_2 { 4739 pub inboundRootStoreArraySize: u32, 4740 pub inboundTrustedRootStoreCriteria: *mut IKEEXT_CERTIFICATE_CRITERIA0, 4741 } 4742 #[cfg(feature = "Win32_Foundation")] 4743 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_0_2 {} 4744 #[cfg(feature = "Win32_Foundation")] 4745 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_0_2 { clone(&self) -> Self4746 fn clone(&self) -> Self { 4747 *self 4748 } 4749 } 4750 #[repr(C)] 4751 #[cfg(feature = "Win32_Foundation")] 4752 pub union IKEEXT_CERTIFICATE_AUTHENTICATION2_1 { 4753 pub Anonymous1: IKEEXT_CERTIFICATE_AUTHENTICATION2_1_0, 4754 pub Anonymous2: IKEEXT_CERTIFICATE_AUTHENTICATION2_1_1, 4755 pub Anonymous3: IKEEXT_CERTIFICATE_AUTHENTICATION2_1_2, 4756 } 4757 #[cfg(feature = "Win32_Foundation")] 4758 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_1 {} 4759 #[cfg(feature = "Win32_Foundation")] 4760 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_1 { clone(&self) -> Self4761 fn clone(&self) -> Self { 4762 *self 4763 } 4764 } 4765 #[repr(C)] 4766 #[cfg(feature = "Win32_Foundation")] 4767 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2_1_0 { 4768 pub outboundRootArraySize: u32, 4769 pub outboundRootCriteria: *mut IKEEXT_CERTIFICATE_CRITERIA0, 4770 } 4771 #[cfg(feature = "Win32_Foundation")] 4772 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_1_0 {} 4773 #[cfg(feature = "Win32_Foundation")] 4774 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_1_0 { clone(&self) -> Self4775 fn clone(&self) -> Self { 4776 *self 4777 } 4778 } 4779 #[repr(C)] 4780 #[cfg(feature = "Win32_Foundation")] 4781 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2_1_1 { 4782 pub outboundEnterpriseStoreArraySize: u32, 4783 pub outboundEnterpriseStoreCriteria: *mut IKEEXT_CERTIFICATE_CRITERIA0, 4784 } 4785 #[cfg(feature = "Win32_Foundation")] 4786 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_1_1 {} 4787 #[cfg(feature = "Win32_Foundation")] 4788 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_1_1 { clone(&self) -> Self4789 fn clone(&self) -> Self { 4790 *self 4791 } 4792 } 4793 #[repr(C)] 4794 #[cfg(feature = "Win32_Foundation")] 4795 pub struct IKEEXT_CERTIFICATE_AUTHENTICATION2_1_2 { 4796 pub outboundRootStoreArraySize: u32, 4797 pub outboundTrustedRootStoreCriteria: *mut IKEEXT_CERTIFICATE_CRITERIA0, 4798 } 4799 #[cfg(feature = "Win32_Foundation")] 4800 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_AUTHENTICATION2_1_2 {} 4801 #[cfg(feature = "Win32_Foundation")] 4802 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_AUTHENTICATION2_1_2 { clone(&self) -> Self4803 fn clone(&self) -> Self { 4804 *self 4805 } 4806 } 4807 #[repr(C)] 4808 pub struct IKEEXT_CERTIFICATE_CREDENTIAL0 { 4809 pub subjectName: FWP_BYTE_BLOB, 4810 pub certHash: FWP_BYTE_BLOB, 4811 pub flags: u32, 4812 } 4813 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_CREDENTIAL0 {} 4814 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_CREDENTIAL0 { clone(&self) -> Self4815 fn clone(&self) -> Self { 4816 *self 4817 } 4818 } 4819 #[repr(C)] 4820 pub struct IKEEXT_CERTIFICATE_CREDENTIAL1 { 4821 pub subjectName: FWP_BYTE_BLOB, 4822 pub certHash: FWP_BYTE_BLOB, 4823 pub flags: u32, 4824 pub certificate: FWP_BYTE_BLOB, 4825 } 4826 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_CREDENTIAL1 {} 4827 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_CREDENTIAL1 { clone(&self) -> Self4828 fn clone(&self) -> Self { 4829 *self 4830 } 4831 } 4832 #[repr(C)] 4833 #[cfg(feature = "Win32_Foundation")] 4834 pub struct IKEEXT_CERTIFICATE_CRITERIA0 { 4835 pub certData: FWP_BYTE_BLOB, 4836 pub certHash: FWP_BYTE_BLOB, 4837 pub eku: *mut IKEEXT_CERT_EKUS0, 4838 pub name: *mut IKEEXT_CERT_NAME0, 4839 pub flags: u32, 4840 } 4841 #[cfg(feature = "Win32_Foundation")] 4842 impl ::core::marker::Copy for IKEEXT_CERTIFICATE_CRITERIA0 {} 4843 #[cfg(feature = "Win32_Foundation")] 4844 impl ::core::clone::Clone for IKEEXT_CERTIFICATE_CRITERIA0 { clone(&self) -> Self4845 fn clone(&self) -> Self { 4846 *self 4847 } 4848 } 4849 pub type IKEEXT_CERT_AUTH = u32; 4850 pub const IKEEXT_CERT_AUTH_FLAG_SSL_ONE_WAY: IKEEXT_CERT_AUTH = 1u32; 4851 pub const IKEEXT_CERT_AUTH_ENABLE_CRL_CHECK_STRONG: IKEEXT_CERT_AUTH = 4u32; 4852 pub const IKEEXT_CERT_AUTH_DISABLE_SSL_CERT_VALIDATION: IKEEXT_CERT_AUTH = 8u32; 4853 pub const IKEEXT_CERT_AUTH_ALLOW_HTTP_CERT_LOOKUP: IKEEXT_CERT_AUTH = 16u32; 4854 pub const IKEEXT_CERT_AUTH_URL_CONTAINS_BUNDLE: IKEEXT_CERT_AUTH = 32u32; 4855 pub const IKEEXT_CERT_AUTH_FLAG_DISABLE_CRL_CHECK: u32 = 2u32; 4856 pub const IKEEXT_CERT_AUTH_FLAG_DISABLE_REQUEST_PAYLOAD: u32 = 64u32; 4857 pub type IKEEXT_CERT_CONFIG_TYPE = i32; 4858 pub const IKEEXT_CERT_CONFIG_EXPLICIT_TRUST_LIST: IKEEXT_CERT_CONFIG_TYPE = 0i32; 4859 pub const IKEEXT_CERT_CONFIG_ENTERPRISE_STORE: IKEEXT_CERT_CONFIG_TYPE = 1i32; 4860 pub const IKEEXT_CERT_CONFIG_TRUSTED_ROOT_STORE: IKEEXT_CERT_CONFIG_TYPE = 2i32; 4861 pub const IKEEXT_CERT_CONFIG_UNSPECIFIED: IKEEXT_CERT_CONFIG_TYPE = 3i32; 4862 pub const IKEEXT_CERT_CONFIG_TYPE_MAX: IKEEXT_CERT_CONFIG_TYPE = 4i32; 4863 pub const IKEEXT_CERT_CREDENTIAL_FLAG_NAP_CERT: u32 = 1u32; 4864 pub type IKEEXT_CERT_CRITERIA_NAME_TYPE = i32; 4865 pub const IKEEXT_CERT_CRITERIA_DNS: IKEEXT_CERT_CRITERIA_NAME_TYPE = 0i32; 4866 pub const IKEEXT_CERT_CRITERIA_UPN: IKEEXT_CERT_CRITERIA_NAME_TYPE = 1i32; 4867 pub const IKEEXT_CERT_CRITERIA_RFC822: IKEEXT_CERT_CRITERIA_NAME_TYPE = 2i32; 4868 pub const IKEEXT_CERT_CRITERIA_CN: IKEEXT_CERT_CRITERIA_NAME_TYPE = 3i32; 4869 pub const IKEEXT_CERT_CRITERIA_OU: IKEEXT_CERT_CRITERIA_NAME_TYPE = 4i32; 4870 pub const IKEEXT_CERT_CRITERIA_O: IKEEXT_CERT_CRITERIA_NAME_TYPE = 5i32; 4871 pub const IKEEXT_CERT_CRITERIA_DC: IKEEXT_CERT_CRITERIA_NAME_TYPE = 6i32; 4872 pub const IKEEXT_CERT_CRITERIA_NAME_TYPE_MAX: IKEEXT_CERT_CRITERIA_NAME_TYPE = 7i32; 4873 #[repr(C)] 4874 #[cfg(feature = "Win32_Foundation")] 4875 pub struct IKEEXT_CERT_EKUS0 { 4876 pub numEku: u32, 4877 pub eku: *mut super::super::Foundation::PSTR, 4878 } 4879 #[cfg(feature = "Win32_Foundation")] 4880 impl ::core::marker::Copy for IKEEXT_CERT_EKUS0 {} 4881 #[cfg(feature = "Win32_Foundation")] 4882 impl ::core::clone::Clone for IKEEXT_CERT_EKUS0 { clone(&self) -> Self4883 fn clone(&self) -> Self { 4884 *self 4885 } 4886 } 4887 pub type IKEEXT_CERT_FLAGS = u32; 4888 pub const IKEEXT_CERT_FLAG_ENABLE_ACCOUNT_MAPPING: IKEEXT_CERT_FLAGS = 1u32; 4889 pub const IKEEXT_CERT_FLAG_DISABLE_REQUEST_PAYLOAD: IKEEXT_CERT_FLAGS = 2u32; 4890 pub const IKEEXT_CERT_FLAG_USE_NAP_CERTIFICATE: IKEEXT_CERT_FLAGS = 4u32; 4891 pub const IKEEXT_CERT_FLAG_INTERMEDIATE_CA: IKEEXT_CERT_FLAGS = 8u32; 4892 pub const IKEEXT_CERT_FLAG_IGNORE_INIT_CERT_MAP_FAILURE: IKEEXT_CERT_FLAGS = 16u32; 4893 pub const IKEEXT_CERT_FLAG_PREFER_NAP_CERTIFICATE_OUTBOUND: IKEEXT_CERT_FLAGS = 32u32; 4894 pub const IKEEXT_CERT_FLAG_SELECT_NAP_CERTIFICATE: IKEEXT_CERT_FLAGS = 64u32; 4895 pub const IKEEXT_CERT_FLAG_VERIFY_NAP_CERTIFICATE: IKEEXT_CERT_FLAGS = 128u32; 4896 pub const IKEEXT_CERT_FLAG_FOLLOW_RENEWAL_CERTIFICATE: IKEEXT_CERT_FLAGS = 256u32; 4897 pub const IKEEXT_CERT_HASH_LEN: u32 = 20u32; 4898 #[repr(C)] 4899 #[cfg(feature = "Win32_Foundation")] 4900 pub struct IKEEXT_CERT_NAME0 { 4901 pub nameType: IKEEXT_CERT_CRITERIA_NAME_TYPE, 4902 pub certName: super::super::Foundation::PWSTR, 4903 } 4904 #[cfg(feature = "Win32_Foundation")] 4905 impl ::core::marker::Copy for IKEEXT_CERT_NAME0 {} 4906 #[cfg(feature = "Win32_Foundation")] 4907 impl ::core::clone::Clone for IKEEXT_CERT_NAME0 { clone(&self) -> Self4908 fn clone(&self) -> Self { 4909 *self 4910 } 4911 } 4912 #[repr(C)] 4913 pub struct IKEEXT_CERT_ROOT_CONFIG0 { 4914 pub certData: FWP_BYTE_BLOB, 4915 pub flags: IKEEXT_CERT_FLAGS, 4916 } 4917 impl ::core::marker::Copy for IKEEXT_CERT_ROOT_CONFIG0 {} 4918 impl ::core::clone::Clone for IKEEXT_CERT_ROOT_CONFIG0 { clone(&self) -> Self4919 fn clone(&self) -> Self { 4920 *self 4921 } 4922 } 4923 #[repr(C)] 4924 pub struct IKEEXT_CIPHER_ALGORITHM0 { 4925 pub algoIdentifier: IKEEXT_CIPHER_TYPE, 4926 pub keyLen: u32, 4927 pub rounds: u32, 4928 } 4929 impl ::core::marker::Copy for IKEEXT_CIPHER_ALGORITHM0 {} 4930 impl ::core::clone::Clone for IKEEXT_CIPHER_ALGORITHM0 { clone(&self) -> Self4931 fn clone(&self) -> Self { 4932 *self 4933 } 4934 } 4935 pub type IKEEXT_CIPHER_TYPE = i32; 4936 pub const IKEEXT_CIPHER_DES: IKEEXT_CIPHER_TYPE = 0i32; 4937 pub const IKEEXT_CIPHER_3DES: IKEEXT_CIPHER_TYPE = 1i32; 4938 pub const IKEEXT_CIPHER_AES_128: IKEEXT_CIPHER_TYPE = 2i32; 4939 pub const IKEEXT_CIPHER_AES_192: IKEEXT_CIPHER_TYPE = 3i32; 4940 pub const IKEEXT_CIPHER_AES_256: IKEEXT_CIPHER_TYPE = 4i32; 4941 pub const IKEEXT_CIPHER_AES_GCM_128_16ICV: IKEEXT_CIPHER_TYPE = 5i32; 4942 pub const IKEEXT_CIPHER_AES_GCM_256_16ICV: IKEEXT_CIPHER_TYPE = 6i32; 4943 pub const IKEEXT_CIPHER_TYPE_MAX: IKEEXT_CIPHER_TYPE = 7i32; 4944 #[repr(C)] 4945 pub struct IKEEXT_COMMON_STATISTICS0 { 4946 pub v4Statistics: IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS0, 4947 pub v6Statistics: IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS0, 4948 pub totalPacketsReceived: u32, 4949 pub totalInvalidPacketsReceived: u32, 4950 pub currentQueuedWorkitems: u32, 4951 } 4952 impl ::core::marker::Copy for IKEEXT_COMMON_STATISTICS0 {} 4953 impl ::core::clone::Clone for IKEEXT_COMMON_STATISTICS0 { clone(&self) -> Self4954 fn clone(&self) -> Self { 4955 *self 4956 } 4957 } 4958 #[repr(C)] 4959 pub struct IKEEXT_COMMON_STATISTICS1 { 4960 pub v4Statistics: IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS1, 4961 pub v6Statistics: IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS1, 4962 pub totalPacketsReceived: u32, 4963 pub totalInvalidPacketsReceived: u32, 4964 pub currentQueuedWorkitems: u32, 4965 } 4966 impl ::core::marker::Copy for IKEEXT_COMMON_STATISTICS1 {} 4967 impl ::core::clone::Clone for IKEEXT_COMMON_STATISTICS1 { clone(&self) -> Self4968 fn clone(&self) -> Self { 4969 *self 4970 } 4971 } 4972 #[repr(C)] 4973 pub struct IKEEXT_COOKIE_PAIR0 { 4974 pub initiator: u64, 4975 pub responder: u64, 4976 } 4977 impl ::core::marker::Copy for IKEEXT_COOKIE_PAIR0 {} 4978 impl ::core::clone::Clone for IKEEXT_COOKIE_PAIR0 { clone(&self) -> Self4979 fn clone(&self) -> Self { 4980 *self 4981 } 4982 } 4983 #[repr(C)] 4984 #[cfg(feature = "Win32_Foundation")] 4985 pub struct IKEEXT_CREDENTIAL0 { 4986 pub authenticationMethodType: IKEEXT_AUTHENTICATION_METHOD_TYPE, 4987 pub impersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 4988 pub Anonymous: IKEEXT_CREDENTIAL0_0, 4989 } 4990 #[cfg(feature = "Win32_Foundation")] 4991 impl ::core::marker::Copy for IKEEXT_CREDENTIAL0 {} 4992 #[cfg(feature = "Win32_Foundation")] 4993 impl ::core::clone::Clone for IKEEXT_CREDENTIAL0 { clone(&self) -> Self4994 fn clone(&self) -> Self { 4995 *self 4996 } 4997 } 4998 #[repr(C)] 4999 #[cfg(feature = "Win32_Foundation")] 5000 pub union IKEEXT_CREDENTIAL0_0 { 5001 pub presharedKey: *mut IKEEXT_PRESHARED_KEY_AUTHENTICATION0, 5002 pub certificate: *mut IKEEXT_CERTIFICATE_CREDENTIAL0, 5003 pub name: *mut IKEEXT_NAME_CREDENTIAL0, 5004 } 5005 #[cfg(feature = "Win32_Foundation")] 5006 impl ::core::marker::Copy for IKEEXT_CREDENTIAL0_0 {} 5007 #[cfg(feature = "Win32_Foundation")] 5008 impl ::core::clone::Clone for IKEEXT_CREDENTIAL0_0 { clone(&self) -> Self5009 fn clone(&self) -> Self { 5010 *self 5011 } 5012 } 5013 #[repr(C)] 5014 #[cfg(feature = "Win32_Foundation")] 5015 pub struct IKEEXT_CREDENTIAL1 { 5016 pub authenticationMethodType: IKEEXT_AUTHENTICATION_METHOD_TYPE, 5017 pub impersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5018 pub Anonymous: IKEEXT_CREDENTIAL1_0, 5019 } 5020 #[cfg(feature = "Win32_Foundation")] 5021 impl ::core::marker::Copy for IKEEXT_CREDENTIAL1 {} 5022 #[cfg(feature = "Win32_Foundation")] 5023 impl ::core::clone::Clone for IKEEXT_CREDENTIAL1 { clone(&self) -> Self5024 fn clone(&self) -> Self { 5025 *self 5026 } 5027 } 5028 #[repr(C)] 5029 #[cfg(feature = "Win32_Foundation")] 5030 pub union IKEEXT_CREDENTIAL1_0 { 5031 pub presharedKey: *mut IKEEXT_PRESHARED_KEY_AUTHENTICATION1, 5032 pub certificate: *mut IKEEXT_CERTIFICATE_CREDENTIAL1, 5033 pub name: *mut IKEEXT_NAME_CREDENTIAL0, 5034 } 5035 #[cfg(feature = "Win32_Foundation")] 5036 impl ::core::marker::Copy for IKEEXT_CREDENTIAL1_0 {} 5037 #[cfg(feature = "Win32_Foundation")] 5038 impl ::core::clone::Clone for IKEEXT_CREDENTIAL1_0 { clone(&self) -> Self5039 fn clone(&self) -> Self { 5040 *self 5041 } 5042 } 5043 #[repr(C)] 5044 #[cfg(feature = "Win32_Foundation")] 5045 pub struct IKEEXT_CREDENTIAL2 { 5046 pub authenticationMethodType: IKEEXT_AUTHENTICATION_METHOD_TYPE, 5047 pub impersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5048 pub Anonymous: IKEEXT_CREDENTIAL2_0, 5049 } 5050 #[cfg(feature = "Win32_Foundation")] 5051 impl ::core::marker::Copy for IKEEXT_CREDENTIAL2 {} 5052 #[cfg(feature = "Win32_Foundation")] 5053 impl ::core::clone::Clone for IKEEXT_CREDENTIAL2 { clone(&self) -> Self5054 fn clone(&self) -> Self { 5055 *self 5056 } 5057 } 5058 #[repr(C)] 5059 #[cfg(feature = "Win32_Foundation")] 5060 pub union IKEEXT_CREDENTIAL2_0 { 5061 pub presharedKey: *mut IKEEXT_PRESHARED_KEY_AUTHENTICATION1, 5062 pub certificate: *mut IKEEXT_CERTIFICATE_CREDENTIAL1, 5063 pub name: *mut IKEEXT_NAME_CREDENTIAL0, 5064 } 5065 #[cfg(feature = "Win32_Foundation")] 5066 impl ::core::marker::Copy for IKEEXT_CREDENTIAL2_0 {} 5067 #[cfg(feature = "Win32_Foundation")] 5068 impl ::core::clone::Clone for IKEEXT_CREDENTIAL2_0 { clone(&self) -> Self5069 fn clone(&self) -> Self { 5070 *self 5071 } 5072 } 5073 #[repr(C)] 5074 #[cfg(feature = "Win32_Foundation")] 5075 pub struct IKEEXT_CREDENTIALS0 { 5076 pub numCredentials: u32, 5077 pub credentials: *mut IKEEXT_CREDENTIAL_PAIR0, 5078 } 5079 #[cfg(feature = "Win32_Foundation")] 5080 impl ::core::marker::Copy for IKEEXT_CREDENTIALS0 {} 5081 #[cfg(feature = "Win32_Foundation")] 5082 impl ::core::clone::Clone for IKEEXT_CREDENTIALS0 { clone(&self) -> Self5083 fn clone(&self) -> Self { 5084 *self 5085 } 5086 } 5087 #[repr(C)] 5088 #[cfg(feature = "Win32_Foundation")] 5089 pub struct IKEEXT_CREDENTIALS1 { 5090 pub numCredentials: u32, 5091 pub credentials: *mut IKEEXT_CREDENTIAL_PAIR1, 5092 } 5093 #[cfg(feature = "Win32_Foundation")] 5094 impl ::core::marker::Copy for IKEEXT_CREDENTIALS1 {} 5095 #[cfg(feature = "Win32_Foundation")] 5096 impl ::core::clone::Clone for IKEEXT_CREDENTIALS1 { clone(&self) -> Self5097 fn clone(&self) -> Self { 5098 *self 5099 } 5100 } 5101 #[repr(C)] 5102 #[cfg(feature = "Win32_Foundation")] 5103 pub struct IKEEXT_CREDENTIALS2 { 5104 pub numCredentials: u32, 5105 pub credentials: *mut IKEEXT_CREDENTIAL_PAIR2, 5106 } 5107 #[cfg(feature = "Win32_Foundation")] 5108 impl ::core::marker::Copy for IKEEXT_CREDENTIALS2 {} 5109 #[cfg(feature = "Win32_Foundation")] 5110 impl ::core::clone::Clone for IKEEXT_CREDENTIALS2 { clone(&self) -> Self5111 fn clone(&self) -> Self { 5112 *self 5113 } 5114 } 5115 #[repr(C)] 5116 #[cfg(feature = "Win32_Foundation")] 5117 pub struct IKEEXT_CREDENTIAL_PAIR0 { 5118 pub localCredentials: IKEEXT_CREDENTIAL0, 5119 pub peerCredentials: IKEEXT_CREDENTIAL0, 5120 } 5121 #[cfg(feature = "Win32_Foundation")] 5122 impl ::core::marker::Copy for IKEEXT_CREDENTIAL_PAIR0 {} 5123 #[cfg(feature = "Win32_Foundation")] 5124 impl ::core::clone::Clone for IKEEXT_CREDENTIAL_PAIR0 { clone(&self) -> Self5125 fn clone(&self) -> Self { 5126 *self 5127 } 5128 } 5129 #[repr(C)] 5130 #[cfg(feature = "Win32_Foundation")] 5131 pub struct IKEEXT_CREDENTIAL_PAIR1 { 5132 pub localCredentials: IKEEXT_CREDENTIAL1, 5133 pub peerCredentials: IKEEXT_CREDENTIAL1, 5134 } 5135 #[cfg(feature = "Win32_Foundation")] 5136 impl ::core::marker::Copy for IKEEXT_CREDENTIAL_PAIR1 {} 5137 #[cfg(feature = "Win32_Foundation")] 5138 impl ::core::clone::Clone for IKEEXT_CREDENTIAL_PAIR1 { clone(&self) -> Self5139 fn clone(&self) -> Self { 5140 *self 5141 } 5142 } 5143 #[repr(C)] 5144 #[cfg(feature = "Win32_Foundation")] 5145 pub struct IKEEXT_CREDENTIAL_PAIR2 { 5146 pub localCredentials: IKEEXT_CREDENTIAL2, 5147 pub peerCredentials: IKEEXT_CREDENTIAL2, 5148 } 5149 #[cfg(feature = "Win32_Foundation")] 5150 impl ::core::marker::Copy for IKEEXT_CREDENTIAL_PAIR2 {} 5151 #[cfg(feature = "Win32_Foundation")] 5152 impl ::core::clone::Clone for IKEEXT_CREDENTIAL_PAIR2 { clone(&self) -> Self5153 fn clone(&self) -> Self { 5154 *self 5155 } 5156 } 5157 pub type IKEEXT_DH_GROUP = i32; 5158 pub const IKEEXT_DH_GROUP_NONE: IKEEXT_DH_GROUP = 0i32; 5159 pub const IKEEXT_DH_GROUP_1: IKEEXT_DH_GROUP = 1i32; 5160 pub const IKEEXT_DH_GROUP_2: IKEEXT_DH_GROUP = 2i32; 5161 pub const IKEEXT_DH_GROUP_14: IKEEXT_DH_GROUP = 3i32; 5162 pub const IKEEXT_DH_GROUP_2048: IKEEXT_DH_GROUP = 3i32; 5163 pub const IKEEXT_DH_ECP_256: IKEEXT_DH_GROUP = 4i32; 5164 pub const IKEEXT_DH_ECP_384: IKEEXT_DH_GROUP = 5i32; 5165 pub const IKEEXT_DH_GROUP_24: IKEEXT_DH_GROUP = 6i32; 5166 pub const IKEEXT_DH_GROUP_MAX: IKEEXT_DH_GROUP = 7i32; 5167 #[repr(C)] 5168 pub struct IKEEXT_EAP_AUTHENTICATION0 { 5169 pub flags: IKEEXT_EAP_AUTHENTICATION_FLAGS, 5170 } 5171 impl ::core::marker::Copy for IKEEXT_EAP_AUTHENTICATION0 {} 5172 impl ::core::clone::Clone for IKEEXT_EAP_AUTHENTICATION0 { clone(&self) -> Self5173 fn clone(&self) -> Self { 5174 *self 5175 } 5176 } 5177 pub type IKEEXT_EAP_AUTHENTICATION_FLAGS = u32; 5178 pub const IKEEXT_EAP_FLAG_LOCAL_AUTH_ONLY: IKEEXT_EAP_AUTHENTICATION_FLAGS = 1u32; 5179 pub const IKEEXT_EAP_FLAG_REMOTE_AUTH_ONLY: IKEEXT_EAP_AUTHENTICATION_FLAGS = 2u32; 5180 #[repr(C)] 5181 #[cfg(feature = "Win32_Foundation")] 5182 pub struct IKEEXT_EM_POLICY0 { 5183 pub numAuthenticationMethods: u32, 5184 pub authenticationMethods: *mut IKEEXT_AUTHENTICATION_METHOD0, 5185 pub initiatorImpersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5186 } 5187 #[cfg(feature = "Win32_Foundation")] 5188 impl ::core::marker::Copy for IKEEXT_EM_POLICY0 {} 5189 #[cfg(feature = "Win32_Foundation")] 5190 impl ::core::clone::Clone for IKEEXT_EM_POLICY0 { clone(&self) -> Self5191 fn clone(&self) -> Self { 5192 *self 5193 } 5194 } 5195 #[repr(C)] 5196 #[cfg(feature = "Win32_Foundation")] 5197 pub struct IKEEXT_EM_POLICY1 { 5198 pub numAuthenticationMethods: u32, 5199 pub authenticationMethods: *mut IKEEXT_AUTHENTICATION_METHOD1, 5200 pub initiatorImpersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5201 } 5202 #[cfg(feature = "Win32_Foundation")] 5203 impl ::core::marker::Copy for IKEEXT_EM_POLICY1 {} 5204 #[cfg(feature = "Win32_Foundation")] 5205 impl ::core::clone::Clone for IKEEXT_EM_POLICY1 { clone(&self) -> Self5206 fn clone(&self) -> Self { 5207 *self 5208 } 5209 } 5210 #[repr(C)] 5211 #[cfg(feature = "Win32_Foundation")] 5212 pub struct IKEEXT_EM_POLICY2 { 5213 pub numAuthenticationMethods: u32, 5214 pub authenticationMethods: *mut IKEEXT_AUTHENTICATION_METHOD2, 5215 pub initiatorImpersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5216 } 5217 #[cfg(feature = "Win32_Foundation")] 5218 impl ::core::marker::Copy for IKEEXT_EM_POLICY2 {} 5219 #[cfg(feature = "Win32_Foundation")] 5220 impl ::core::clone::Clone for IKEEXT_EM_POLICY2 { clone(&self) -> Self5221 fn clone(&self) -> Self { 5222 *self 5223 } 5224 } 5225 pub type IKEEXT_EM_SA_STATE = i32; 5226 pub const IKEEXT_EM_SA_STATE_NONE: IKEEXT_EM_SA_STATE = 0i32; 5227 pub const IKEEXT_EM_SA_STATE_SENT_ATTS: IKEEXT_EM_SA_STATE = 1i32; 5228 pub const IKEEXT_EM_SA_STATE_SSPI_SENT: IKEEXT_EM_SA_STATE = 2i32; 5229 pub const IKEEXT_EM_SA_STATE_AUTH_COMPLETE: IKEEXT_EM_SA_STATE = 3i32; 5230 pub const IKEEXT_EM_SA_STATE_FINAL: IKEEXT_EM_SA_STATE = 4i32; 5231 pub const IKEEXT_EM_SA_STATE_COMPLETE: IKEEXT_EM_SA_STATE = 5i32; 5232 pub const IKEEXT_EM_SA_STATE_MAX: IKEEXT_EM_SA_STATE = 6i32; 5233 #[repr(C)] 5234 pub struct IKEEXT_INTEGRITY_ALGORITHM0 { 5235 pub algoIdentifier: IKEEXT_INTEGRITY_TYPE, 5236 } 5237 impl ::core::marker::Copy for IKEEXT_INTEGRITY_ALGORITHM0 {} 5238 impl ::core::clone::Clone for IKEEXT_INTEGRITY_ALGORITHM0 { clone(&self) -> Self5239 fn clone(&self) -> Self { 5240 *self 5241 } 5242 } 5243 pub type IKEEXT_INTEGRITY_TYPE = i32; 5244 pub const IKEEXT_INTEGRITY_MD5: IKEEXT_INTEGRITY_TYPE = 0i32; 5245 pub const IKEEXT_INTEGRITY_SHA1: IKEEXT_INTEGRITY_TYPE = 1i32; 5246 pub const IKEEXT_INTEGRITY_SHA_256: IKEEXT_INTEGRITY_TYPE = 2i32; 5247 pub const IKEEXT_INTEGRITY_SHA_384: IKEEXT_INTEGRITY_TYPE = 3i32; 5248 pub const IKEEXT_INTEGRITY_TYPE_MAX: IKEEXT_INTEGRITY_TYPE = 4i32; 5249 #[repr(C)] 5250 #[cfg(feature = "Win32_Foundation")] 5251 pub struct IKEEXT_IPV6_CGA_AUTHENTICATION0 { 5252 pub keyContainerName: super::super::Foundation::PWSTR, 5253 pub cspName: super::super::Foundation::PWSTR, 5254 pub cspType: u32, 5255 pub cgaModifier: FWP_BYTE_ARRAY16, 5256 pub cgaCollisionCount: u8, 5257 } 5258 #[cfg(feature = "Win32_Foundation")] 5259 impl ::core::marker::Copy for IKEEXT_IPV6_CGA_AUTHENTICATION0 {} 5260 #[cfg(feature = "Win32_Foundation")] 5261 impl ::core::clone::Clone for IKEEXT_IPV6_CGA_AUTHENTICATION0 { clone(&self) -> Self5262 fn clone(&self) -> Self { 5263 *self 5264 } 5265 } 5266 #[repr(C)] 5267 pub struct IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS0 { 5268 pub totalSocketReceiveFailures: u32, 5269 pub totalSocketSendFailures: u32, 5270 } 5271 impl ::core::marker::Copy for IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS0 {} 5272 impl ::core::clone::Clone for IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS0 { clone(&self) -> Self5273 fn clone(&self) -> Self { 5274 *self 5275 } 5276 } 5277 #[repr(C)] 5278 pub struct IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS1 { 5279 pub totalSocketReceiveFailures: u32, 5280 pub totalSocketSendFailures: u32, 5281 } 5282 impl ::core::marker::Copy for IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS1 {} 5283 impl ::core::clone::Clone for IKEEXT_IP_VERSION_SPECIFIC_COMMON_STATISTICS1 { clone(&self) -> Self5284 fn clone(&self) -> Self { 5285 *self 5286 } 5287 } 5288 #[repr(C)] 5289 pub struct IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS0 { 5290 pub currentActiveMainModes: u32, 5291 pub totalMainModesStarted: u32, 5292 pub totalSuccessfulMainModes: u32, 5293 pub totalFailedMainModes: u32, 5294 pub totalResponderMainModes: u32, 5295 pub currentNewResponderMainModes: u32, 5296 pub currentActiveQuickModes: u32, 5297 pub totalQuickModesStarted: u32, 5298 pub totalSuccessfulQuickModes: u32, 5299 pub totalFailedQuickModes: u32, 5300 pub totalAcquires: u32, 5301 pub totalReinitAcquires: u32, 5302 pub currentActiveExtendedModes: u32, 5303 pub totalExtendedModesStarted: u32, 5304 pub totalSuccessfulExtendedModes: u32, 5305 pub totalFailedExtendedModes: u32, 5306 pub totalImpersonationExtendedModes: u32, 5307 pub totalImpersonationMainModes: u32, 5308 } 5309 impl ::core::marker::Copy for IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS0 {} 5310 impl ::core::clone::Clone for IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS0 { clone(&self) -> Self5311 fn clone(&self) -> Self { 5312 *self 5313 } 5314 } 5315 #[repr(C)] 5316 pub struct IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS1 { 5317 pub currentActiveMainModes: u32, 5318 pub totalMainModesStarted: u32, 5319 pub totalSuccessfulMainModes: u32, 5320 pub totalFailedMainModes: u32, 5321 pub totalResponderMainModes: u32, 5322 pub currentNewResponderMainModes: u32, 5323 pub currentActiveQuickModes: u32, 5324 pub totalQuickModesStarted: u32, 5325 pub totalSuccessfulQuickModes: u32, 5326 pub totalFailedQuickModes: u32, 5327 pub totalAcquires: u32, 5328 pub totalReinitAcquires: u32, 5329 pub currentActiveExtendedModes: u32, 5330 pub totalExtendedModesStarted: u32, 5331 pub totalSuccessfulExtendedModes: u32, 5332 pub totalFailedExtendedModes: u32, 5333 pub totalImpersonationExtendedModes: u32, 5334 pub totalImpersonationMainModes: u32, 5335 } 5336 impl ::core::marker::Copy for IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS1 {} 5337 impl ::core::clone::Clone for IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS1 { clone(&self) -> Self5338 fn clone(&self) -> Self { 5339 *self 5340 } 5341 } 5342 #[repr(C)] 5343 pub struct IKEEXT_KERBEROS_AUTHENTICATION0 { 5344 pub flags: IKEEXT_KERBEROS_AUTHENTICATION_FLAGS, 5345 } 5346 impl ::core::marker::Copy for IKEEXT_KERBEROS_AUTHENTICATION0 {} 5347 impl ::core::clone::Clone for IKEEXT_KERBEROS_AUTHENTICATION0 { clone(&self) -> Self5348 fn clone(&self) -> Self { 5349 *self 5350 } 5351 } 5352 #[repr(C)] 5353 #[cfg(feature = "Win32_Foundation")] 5354 pub struct IKEEXT_KERBEROS_AUTHENTICATION1 { 5355 pub flags: IKEEXT_KERBEROS_AUTHENTICATION_FLAGS, 5356 pub proxyServer: super::super::Foundation::PWSTR, 5357 } 5358 #[cfg(feature = "Win32_Foundation")] 5359 impl ::core::marker::Copy for IKEEXT_KERBEROS_AUTHENTICATION1 {} 5360 #[cfg(feature = "Win32_Foundation")] 5361 impl ::core::clone::Clone for IKEEXT_KERBEROS_AUTHENTICATION1 { clone(&self) -> Self5362 fn clone(&self) -> Self { 5363 *self 5364 } 5365 } 5366 pub type IKEEXT_KERBEROS_AUTHENTICATION_FLAGS = u32; 5367 pub const IKEEXT_KERB_AUTH_DISABLE_INITIATOR_TOKEN_GENERATION: IKEEXT_KERBEROS_AUTHENTICATION_FLAGS = 1u32; 5368 pub const IKEEXT_KERB_AUTH_DONT_ACCEPT_EXPLICIT_CREDENTIALS: IKEEXT_KERBEROS_AUTHENTICATION_FLAGS = 2u32; 5369 pub const IKEEXT_KERB_AUTH_FORCE_PROXY_ON_INITIATOR: u32 = 4u32; 5370 #[repr(C)] 5371 pub struct IKEEXT_KEYMODULE_STATISTICS0 { 5372 pub v4Statistics: IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS0, 5373 pub v6Statistics: IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS0, 5374 pub errorFrequencyTable: [u32; 97], 5375 pub mainModeNegotiationTime: u32, 5376 pub quickModeNegotiationTime: u32, 5377 pub extendedModeNegotiationTime: u32, 5378 } 5379 impl ::core::marker::Copy for IKEEXT_KEYMODULE_STATISTICS0 {} 5380 impl ::core::clone::Clone for IKEEXT_KEYMODULE_STATISTICS0 { clone(&self) -> Self5381 fn clone(&self) -> Self { 5382 *self 5383 } 5384 } 5385 #[repr(C)] 5386 pub struct IKEEXT_KEYMODULE_STATISTICS1 { 5387 pub v4Statistics: IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS1, 5388 pub v6Statistics: IKEEXT_IP_VERSION_SPECIFIC_KEYMODULE_STATISTICS1, 5389 pub errorFrequencyTable: [u32; 97], 5390 pub mainModeNegotiationTime: u32, 5391 pub quickModeNegotiationTime: u32, 5392 pub extendedModeNegotiationTime: u32, 5393 } 5394 impl ::core::marker::Copy for IKEEXT_KEYMODULE_STATISTICS1 {} 5395 impl ::core::clone::Clone for IKEEXT_KEYMODULE_STATISTICS1 { clone(&self) -> Self5396 fn clone(&self) -> Self { 5397 *self 5398 } 5399 } 5400 pub type IKEEXT_KEY_MODULE_TYPE = i32; 5401 pub const IKEEXT_KEY_MODULE_IKE: IKEEXT_KEY_MODULE_TYPE = 0i32; 5402 pub const IKEEXT_KEY_MODULE_AUTHIP: IKEEXT_KEY_MODULE_TYPE = 1i32; 5403 pub const IKEEXT_KEY_MODULE_IKEV2: IKEEXT_KEY_MODULE_TYPE = 2i32; 5404 pub const IKEEXT_KEY_MODULE_MAX: IKEEXT_KEY_MODULE_TYPE = 3i32; 5405 pub type IKEEXT_MM_SA_STATE = i32; 5406 pub const IKEEXT_MM_SA_STATE_NONE: IKEEXT_MM_SA_STATE = 0i32; 5407 pub const IKEEXT_MM_SA_STATE_SA_SENT: IKEEXT_MM_SA_STATE = 1i32; 5408 pub const IKEEXT_MM_SA_STATE_SSPI_SENT: IKEEXT_MM_SA_STATE = 2i32; 5409 pub const IKEEXT_MM_SA_STATE_FINAL: IKEEXT_MM_SA_STATE = 3i32; 5410 pub const IKEEXT_MM_SA_STATE_FINAL_SENT: IKEEXT_MM_SA_STATE = 4i32; 5411 pub const IKEEXT_MM_SA_STATE_COMPLETE: IKEEXT_MM_SA_STATE = 5i32; 5412 pub const IKEEXT_MM_SA_STATE_MAX: IKEEXT_MM_SA_STATE = 6i32; 5413 #[repr(C)] 5414 #[cfg(feature = "Win32_Foundation")] 5415 pub struct IKEEXT_NAME_CREDENTIAL0 { 5416 pub principalName: super::super::Foundation::PWSTR, 5417 } 5418 #[cfg(feature = "Win32_Foundation")] 5419 impl ::core::marker::Copy for IKEEXT_NAME_CREDENTIAL0 {} 5420 #[cfg(feature = "Win32_Foundation")] 5421 impl ::core::clone::Clone for IKEEXT_NAME_CREDENTIAL0 { clone(&self) -> Self5422 fn clone(&self) -> Self { 5423 *self 5424 } 5425 } 5426 #[repr(C)] 5427 pub struct IKEEXT_NTLM_V2_AUTHENTICATION0 { 5428 pub flags: u32, 5429 } 5430 impl ::core::marker::Copy for IKEEXT_NTLM_V2_AUTHENTICATION0 {} 5431 impl ::core::clone::Clone for IKEEXT_NTLM_V2_AUTHENTICATION0 { clone(&self) -> Self5432 fn clone(&self) -> Self { 5433 *self 5434 } 5435 } 5436 pub const IKEEXT_NTLM_V2_AUTH_DONT_ACCEPT_EXPLICIT_CREDENTIALS: u32 = 1u32; 5437 #[repr(C)] 5438 #[cfg(feature = "Win32_Foundation")] 5439 pub struct IKEEXT_POLICY0 { 5440 pub softExpirationTime: u32, 5441 pub numAuthenticationMethods: u32, 5442 pub authenticationMethods: *mut IKEEXT_AUTHENTICATION_METHOD0, 5443 pub initiatorImpersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5444 pub numIkeProposals: u32, 5445 pub ikeProposals: *mut IKEEXT_PROPOSAL0, 5446 pub flags: IKEEXT_POLICY_FLAG, 5447 pub maxDynamicFilters: u32, 5448 } 5449 #[cfg(feature = "Win32_Foundation")] 5450 impl ::core::marker::Copy for IKEEXT_POLICY0 {} 5451 #[cfg(feature = "Win32_Foundation")] 5452 impl ::core::clone::Clone for IKEEXT_POLICY0 { clone(&self) -> Self5453 fn clone(&self) -> Self { 5454 *self 5455 } 5456 } 5457 #[repr(C)] 5458 #[cfg(feature = "Win32_Foundation")] 5459 pub struct IKEEXT_POLICY1 { 5460 pub softExpirationTime: u32, 5461 pub numAuthenticationMethods: u32, 5462 pub authenticationMethods: *mut IKEEXT_AUTHENTICATION_METHOD1, 5463 pub initiatorImpersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5464 pub numIkeProposals: u32, 5465 pub ikeProposals: *mut IKEEXT_PROPOSAL0, 5466 pub flags: IKEEXT_POLICY_FLAG, 5467 pub maxDynamicFilters: u32, 5468 pub retransmitDurationSecs: u32, 5469 } 5470 #[cfg(feature = "Win32_Foundation")] 5471 impl ::core::marker::Copy for IKEEXT_POLICY1 {} 5472 #[cfg(feature = "Win32_Foundation")] 5473 impl ::core::clone::Clone for IKEEXT_POLICY1 { clone(&self) -> Self5474 fn clone(&self) -> Self { 5475 *self 5476 } 5477 } 5478 #[repr(C)] 5479 #[cfg(feature = "Win32_Foundation")] 5480 pub struct IKEEXT_POLICY2 { 5481 pub softExpirationTime: u32, 5482 pub numAuthenticationMethods: u32, 5483 pub authenticationMethods: *mut IKEEXT_AUTHENTICATION_METHOD2, 5484 pub initiatorImpersonationType: IKEEXT_AUTHENTICATION_IMPERSONATION_TYPE, 5485 pub numIkeProposals: u32, 5486 pub ikeProposals: *mut IKEEXT_PROPOSAL0, 5487 pub flags: IKEEXT_POLICY_FLAG, 5488 pub maxDynamicFilters: u32, 5489 pub retransmitDurationSecs: u32, 5490 } 5491 #[cfg(feature = "Win32_Foundation")] 5492 impl ::core::marker::Copy for IKEEXT_POLICY2 {} 5493 #[cfg(feature = "Win32_Foundation")] 5494 impl ::core::clone::Clone for IKEEXT_POLICY2 { clone(&self) -> Self5495 fn clone(&self) -> Self { 5496 *self 5497 } 5498 } 5499 pub const IKEEXT_POLICY_ENABLE_IKEV2_FRAGMENTATION: u32 = 128u32; 5500 pub type IKEEXT_POLICY_FLAG = u32; 5501 pub const IKEEXT_POLICY_FLAG_DISABLE_DIAGNOSTICS: IKEEXT_POLICY_FLAG = 1u32; 5502 pub const IKEEXT_POLICY_FLAG_NO_MACHINE_LUID_VERIFY: IKEEXT_POLICY_FLAG = 2u32; 5503 pub const IKEEXT_POLICY_FLAG_NO_IMPERSONATION_LUID_VERIFY: IKEEXT_POLICY_FLAG = 4u32; 5504 pub const IKEEXT_POLICY_FLAG_ENABLE_OPTIONAL_DH: IKEEXT_POLICY_FLAG = 8u32; 5505 pub const IKEEXT_POLICY_FLAG_IMS_VPN: u32 = 64u32; 5506 pub const IKEEXT_POLICY_FLAG_MOBIKE_NOT_SUPPORTED: u32 = 16u32; 5507 pub const IKEEXT_POLICY_FLAG_SITE_TO_SITE: u32 = 32u32; 5508 pub const IKEEXT_POLICY_SUPPORT_LOW_POWER_MODE: u32 = 256u32; 5509 #[repr(C)] 5510 pub struct IKEEXT_PRESHARED_KEY_AUTHENTICATION0 { 5511 pub presharedKey: FWP_BYTE_BLOB, 5512 } 5513 impl ::core::marker::Copy for IKEEXT_PRESHARED_KEY_AUTHENTICATION0 {} 5514 impl ::core::clone::Clone for IKEEXT_PRESHARED_KEY_AUTHENTICATION0 { clone(&self) -> Self5515 fn clone(&self) -> Self { 5516 *self 5517 } 5518 } 5519 #[repr(C)] 5520 pub struct IKEEXT_PRESHARED_KEY_AUTHENTICATION1 { 5521 pub presharedKey: FWP_BYTE_BLOB, 5522 pub flags: IKEEXT_PRESHARED_KEY_AUTHENTICATION_FLAGS, 5523 } 5524 impl ::core::marker::Copy for IKEEXT_PRESHARED_KEY_AUTHENTICATION1 {} 5525 impl ::core::clone::Clone for IKEEXT_PRESHARED_KEY_AUTHENTICATION1 { clone(&self) -> Self5526 fn clone(&self) -> Self { 5527 *self 5528 } 5529 } 5530 pub type IKEEXT_PRESHARED_KEY_AUTHENTICATION_FLAGS = u32; 5531 pub const IKEEXT_PSK_FLAG_LOCAL_AUTH_ONLY: IKEEXT_PRESHARED_KEY_AUTHENTICATION_FLAGS = 1u32; 5532 pub const IKEEXT_PSK_FLAG_REMOTE_AUTH_ONLY: IKEEXT_PRESHARED_KEY_AUTHENTICATION_FLAGS = 2u32; 5533 #[repr(C)] 5534 pub struct IKEEXT_PROPOSAL0 { 5535 pub cipherAlgorithm: IKEEXT_CIPHER_ALGORITHM0, 5536 pub integrityAlgorithm: IKEEXT_INTEGRITY_ALGORITHM0, 5537 pub maxLifetimeSeconds: u32, 5538 pub dhGroup: IKEEXT_DH_GROUP, 5539 pub quickModeLimit: u32, 5540 } 5541 impl ::core::marker::Copy for IKEEXT_PROPOSAL0 {} 5542 impl ::core::clone::Clone for IKEEXT_PROPOSAL0 { clone(&self) -> Self5543 fn clone(&self) -> Self { 5544 *self 5545 } 5546 } 5547 pub type IKEEXT_QM_SA_STATE = i32; 5548 pub const IKEEXT_QM_SA_STATE_NONE: IKEEXT_QM_SA_STATE = 0i32; 5549 pub const IKEEXT_QM_SA_STATE_INITIAL: IKEEXT_QM_SA_STATE = 1i32; 5550 pub const IKEEXT_QM_SA_STATE_FINAL: IKEEXT_QM_SA_STATE = 2i32; 5551 pub const IKEEXT_QM_SA_STATE_COMPLETE: IKEEXT_QM_SA_STATE = 3i32; 5552 pub const IKEEXT_QM_SA_STATE_MAX: IKEEXT_QM_SA_STATE = 4i32; 5553 #[repr(C)] 5554 pub struct IKEEXT_RESERVED_AUTHENTICATION0 { 5555 pub flags: IKEEXT_RESERVED_AUTHENTICATION_FLAGS, 5556 } 5557 impl ::core::marker::Copy for IKEEXT_RESERVED_AUTHENTICATION0 {} 5558 impl ::core::clone::Clone for IKEEXT_RESERVED_AUTHENTICATION0 { clone(&self) -> Self5559 fn clone(&self) -> Self { 5560 *self 5561 } 5562 } 5563 pub type IKEEXT_RESERVED_AUTHENTICATION_FLAGS = u32; 5564 pub const IKEEXT_RESERVED_AUTH_DISABLE_INITIATOR_TOKEN_GENERATION: IKEEXT_RESERVED_AUTHENTICATION_FLAGS = 1u32; 5565 #[repr(C)] 5566 #[cfg(feature = "Win32_Foundation")] 5567 pub struct IKEEXT_SA_DETAILS0 { 5568 pub saId: u64, 5569 pub keyModuleType: IKEEXT_KEY_MODULE_TYPE, 5570 pub ipVersion: FWP_IP_VERSION, 5571 pub Anonymous: IKEEXT_SA_DETAILS0_0, 5572 pub ikeTraffic: IKEEXT_TRAFFIC0, 5573 pub ikeProposal: IKEEXT_PROPOSAL0, 5574 pub cookiePair: IKEEXT_COOKIE_PAIR0, 5575 pub ikeCredentials: IKEEXT_CREDENTIALS0, 5576 pub ikePolicyKey: ::windows_sys::core::GUID, 5577 pub virtualIfTunnelId: u64, 5578 } 5579 #[cfg(feature = "Win32_Foundation")] 5580 impl ::core::marker::Copy for IKEEXT_SA_DETAILS0 {} 5581 #[cfg(feature = "Win32_Foundation")] 5582 impl ::core::clone::Clone for IKEEXT_SA_DETAILS0 { clone(&self) -> Self5583 fn clone(&self) -> Self { 5584 *self 5585 } 5586 } 5587 #[repr(C)] 5588 #[cfg(feature = "Win32_Foundation")] 5589 pub union IKEEXT_SA_DETAILS0_0 { 5590 pub v4UdpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 5591 } 5592 #[cfg(feature = "Win32_Foundation")] 5593 impl ::core::marker::Copy for IKEEXT_SA_DETAILS0_0 {} 5594 #[cfg(feature = "Win32_Foundation")] 5595 impl ::core::clone::Clone for IKEEXT_SA_DETAILS0_0 { clone(&self) -> Self5596 fn clone(&self) -> Self { 5597 *self 5598 } 5599 } 5600 #[repr(C)] 5601 #[cfg(feature = "Win32_Foundation")] 5602 pub struct IKEEXT_SA_DETAILS1 { 5603 pub saId: u64, 5604 pub keyModuleType: IKEEXT_KEY_MODULE_TYPE, 5605 pub ipVersion: FWP_IP_VERSION, 5606 pub Anonymous: IKEEXT_SA_DETAILS1_0, 5607 pub ikeTraffic: IKEEXT_TRAFFIC0, 5608 pub ikeProposal: IKEEXT_PROPOSAL0, 5609 pub cookiePair: IKEEXT_COOKIE_PAIR0, 5610 pub ikeCredentials: IKEEXT_CREDENTIALS1, 5611 pub ikePolicyKey: ::windows_sys::core::GUID, 5612 pub virtualIfTunnelId: u64, 5613 pub correlationKey: FWP_BYTE_BLOB, 5614 } 5615 #[cfg(feature = "Win32_Foundation")] 5616 impl ::core::marker::Copy for IKEEXT_SA_DETAILS1 {} 5617 #[cfg(feature = "Win32_Foundation")] 5618 impl ::core::clone::Clone for IKEEXT_SA_DETAILS1 { clone(&self) -> Self5619 fn clone(&self) -> Self { 5620 *self 5621 } 5622 } 5623 #[repr(C)] 5624 #[cfg(feature = "Win32_Foundation")] 5625 pub union IKEEXT_SA_DETAILS1_0 { 5626 pub v4UdpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 5627 } 5628 #[cfg(feature = "Win32_Foundation")] 5629 impl ::core::marker::Copy for IKEEXT_SA_DETAILS1_0 {} 5630 #[cfg(feature = "Win32_Foundation")] 5631 impl ::core::clone::Clone for IKEEXT_SA_DETAILS1_0 { clone(&self) -> Self5632 fn clone(&self) -> Self { 5633 *self 5634 } 5635 } 5636 #[repr(C)] 5637 #[cfg(feature = "Win32_Foundation")] 5638 pub struct IKEEXT_SA_DETAILS2 { 5639 pub saId: u64, 5640 pub keyModuleType: IKEEXT_KEY_MODULE_TYPE, 5641 pub ipVersion: FWP_IP_VERSION, 5642 pub Anonymous: IKEEXT_SA_DETAILS2_0, 5643 pub ikeTraffic: IKEEXT_TRAFFIC0, 5644 pub ikeProposal: IKEEXT_PROPOSAL0, 5645 pub cookiePair: IKEEXT_COOKIE_PAIR0, 5646 pub ikeCredentials: IKEEXT_CREDENTIALS2, 5647 pub ikePolicyKey: ::windows_sys::core::GUID, 5648 pub virtualIfTunnelId: u64, 5649 pub correlationKey: FWP_BYTE_BLOB, 5650 } 5651 #[cfg(feature = "Win32_Foundation")] 5652 impl ::core::marker::Copy for IKEEXT_SA_DETAILS2 {} 5653 #[cfg(feature = "Win32_Foundation")] 5654 impl ::core::clone::Clone for IKEEXT_SA_DETAILS2 { clone(&self) -> Self5655 fn clone(&self) -> Self { 5656 *self 5657 } 5658 } 5659 #[repr(C)] 5660 #[cfg(feature = "Win32_Foundation")] 5661 pub union IKEEXT_SA_DETAILS2_0 { 5662 pub v4UdpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 5663 } 5664 #[cfg(feature = "Win32_Foundation")] 5665 impl ::core::marker::Copy for IKEEXT_SA_DETAILS2_0 {} 5666 #[cfg(feature = "Win32_Foundation")] 5667 impl ::core::clone::Clone for IKEEXT_SA_DETAILS2_0 { clone(&self) -> Self5668 fn clone(&self) -> Self { 5669 *self 5670 } 5671 } 5672 #[repr(C)] 5673 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 5674 pub struct IKEEXT_SA_ENUM_TEMPLATE0 { 5675 pub localSubNet: FWP_CONDITION_VALUE0, 5676 pub remoteSubNet: FWP_CONDITION_VALUE0, 5677 pub localMainModeCertHash: FWP_BYTE_BLOB, 5678 } 5679 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 5680 impl ::core::marker::Copy for IKEEXT_SA_ENUM_TEMPLATE0 {} 5681 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 5682 impl ::core::clone::Clone for IKEEXT_SA_ENUM_TEMPLATE0 { clone(&self) -> Self5683 fn clone(&self) -> Self { 5684 *self 5685 } 5686 } 5687 pub type IKEEXT_SA_ROLE = i32; 5688 pub const IKEEXT_SA_ROLE_INITIATOR: IKEEXT_SA_ROLE = 0i32; 5689 pub const IKEEXT_SA_ROLE_RESPONDER: IKEEXT_SA_ROLE = 1i32; 5690 pub const IKEEXT_SA_ROLE_MAX: IKEEXT_SA_ROLE = 2i32; 5691 #[repr(C)] 5692 pub struct IKEEXT_STATISTICS0 { 5693 pub ikeStatistics: IKEEXT_KEYMODULE_STATISTICS0, 5694 pub authipStatistics: IKEEXT_KEYMODULE_STATISTICS0, 5695 pub commonStatistics: IKEEXT_COMMON_STATISTICS0, 5696 } 5697 impl ::core::marker::Copy for IKEEXT_STATISTICS0 {} 5698 impl ::core::clone::Clone for IKEEXT_STATISTICS0 { clone(&self) -> Self5699 fn clone(&self) -> Self { 5700 *self 5701 } 5702 } 5703 #[repr(C)] 5704 pub struct IKEEXT_STATISTICS1 { 5705 pub ikeStatistics: IKEEXT_KEYMODULE_STATISTICS1, 5706 pub authipStatistics: IKEEXT_KEYMODULE_STATISTICS1, 5707 pub ikeV2Statistics: IKEEXT_KEYMODULE_STATISTICS1, 5708 pub commonStatistics: IKEEXT_COMMON_STATISTICS1, 5709 } 5710 impl ::core::marker::Copy for IKEEXT_STATISTICS1 {} 5711 impl ::core::clone::Clone for IKEEXT_STATISTICS1 { clone(&self) -> Self5712 fn clone(&self) -> Self { 5713 *self 5714 } 5715 } 5716 #[repr(C)] 5717 pub struct IKEEXT_TRAFFIC0 { 5718 pub ipVersion: FWP_IP_VERSION, 5719 pub Anonymous1: IKEEXT_TRAFFIC0_0, 5720 pub Anonymous2: IKEEXT_TRAFFIC0_1, 5721 pub authIpFilterId: u64, 5722 } 5723 impl ::core::marker::Copy for IKEEXT_TRAFFIC0 {} 5724 impl ::core::clone::Clone for IKEEXT_TRAFFIC0 { clone(&self) -> Self5725 fn clone(&self) -> Self { 5726 *self 5727 } 5728 } 5729 #[repr(C)] 5730 pub union IKEEXT_TRAFFIC0_0 { 5731 pub localV4Address: u32, 5732 pub localV6Address: [u8; 16], 5733 } 5734 impl ::core::marker::Copy for IKEEXT_TRAFFIC0_0 {} 5735 impl ::core::clone::Clone for IKEEXT_TRAFFIC0_0 { clone(&self) -> Self5736 fn clone(&self) -> Self { 5737 *self 5738 } 5739 } 5740 #[repr(C)] 5741 pub union IKEEXT_TRAFFIC0_1 { 5742 pub remoteV4Address: u32, 5743 pub remoteV6Address: [u8; 16], 5744 } 5745 impl ::core::marker::Copy for IKEEXT_TRAFFIC0_1 {} 5746 impl ::core::clone::Clone for IKEEXT_TRAFFIC0_1 { clone(&self) -> Self5747 fn clone(&self) -> Self { 5748 *self 5749 } 5750 } 5751 pub const IN6_EMBEDDEDV4_BITS_IN_BYTE: u32 = 8u32; 5752 pub const IN6_EMBEDDEDV4_UOCTET_POSITION: u32 = 8u32; 5753 pub const IP4_OFF_MASK: u32 = 65311u32; 5754 pub const IP6F_MORE_FRAG: u32 = 256u32; 5755 pub const IP6F_OFF_MASK: u32 = 63743u32; 5756 pub const IP6F_RESERVED_MASK: u32 = 1536u32; 5757 pub const IP6OPT_MUTABLE: u32 = 32u32; 5758 pub const IP6OPT_TYPE_DISCARD: u32 = 64u32; 5759 pub const IP6OPT_TYPE_FORCEICMP: u32 = 128u32; 5760 pub const IP6OPT_TYPE_ICMP: u32 = 192u32; 5761 pub const IP6OPT_TYPE_SKIP: u32 = 0u32; 5762 #[repr(C)] 5763 pub struct IPSEC_ADDRESS_INFO0 { 5764 pub numV4Addresses: u32, 5765 pub v4Addresses: *mut u32, 5766 pub numV6Addresses: u32, 5767 pub v6Addresses: *mut FWP_BYTE_ARRAY16, 5768 } 5769 impl ::core::marker::Copy for IPSEC_ADDRESS_INFO0 {} 5770 impl ::core::clone::Clone for IPSEC_ADDRESS_INFO0 { clone(&self) -> Self5771 fn clone(&self) -> Self { 5772 *self 5773 } 5774 } 5775 #[repr(C)] 5776 pub struct IPSEC_AGGREGATE_DROP_PACKET_STATISTICS0 { 5777 pub invalidSpisOnInbound: u32, 5778 pub decryptionFailuresOnInbound: u32, 5779 pub authenticationFailuresOnInbound: u32, 5780 pub udpEspValidationFailuresOnInbound: u32, 5781 pub replayCheckFailuresOnInbound: u32, 5782 pub invalidClearTextInbound: u32, 5783 pub saNotInitializedOnInbound: u32, 5784 pub receiveOverIncorrectSaInbound: u32, 5785 pub secureReceivesNotMatchingFilters: u32, 5786 } 5787 impl ::core::marker::Copy for IPSEC_AGGREGATE_DROP_PACKET_STATISTICS0 {} 5788 impl ::core::clone::Clone for IPSEC_AGGREGATE_DROP_PACKET_STATISTICS0 { clone(&self) -> Self5789 fn clone(&self) -> Self { 5790 *self 5791 } 5792 } 5793 #[repr(C)] 5794 pub struct IPSEC_AGGREGATE_DROP_PACKET_STATISTICS1 { 5795 pub invalidSpisOnInbound: u32, 5796 pub decryptionFailuresOnInbound: u32, 5797 pub authenticationFailuresOnInbound: u32, 5798 pub udpEspValidationFailuresOnInbound: u32, 5799 pub replayCheckFailuresOnInbound: u32, 5800 pub invalidClearTextInbound: u32, 5801 pub saNotInitializedOnInbound: u32, 5802 pub receiveOverIncorrectSaInbound: u32, 5803 pub secureReceivesNotMatchingFilters: u32, 5804 pub totalDropPacketsInbound: u32, 5805 } 5806 impl ::core::marker::Copy for IPSEC_AGGREGATE_DROP_PACKET_STATISTICS1 {} 5807 impl ::core::clone::Clone for IPSEC_AGGREGATE_DROP_PACKET_STATISTICS1 { clone(&self) -> Self5808 fn clone(&self) -> Self { 5809 *self 5810 } 5811 } 5812 #[repr(C)] 5813 pub struct IPSEC_AGGREGATE_SA_STATISTICS0 { 5814 pub activeSas: u32, 5815 pub pendingSaNegotiations: u32, 5816 pub totalSasAdded: u32, 5817 pub totalSasDeleted: u32, 5818 pub successfulRekeys: u32, 5819 pub activeTunnels: u32, 5820 pub offloadedSas: u32, 5821 } 5822 impl ::core::marker::Copy for IPSEC_AGGREGATE_SA_STATISTICS0 {} 5823 impl ::core::clone::Clone for IPSEC_AGGREGATE_SA_STATISTICS0 { clone(&self) -> Self5824 fn clone(&self) -> Self { 5825 *self 5826 } 5827 } 5828 #[repr(C)] 5829 pub struct IPSEC_AH_DROP_PACKET_STATISTICS0 { 5830 pub invalidSpisOnInbound: u32, 5831 pub authenticationFailuresOnInbound: u32, 5832 pub replayCheckFailuresOnInbound: u32, 5833 pub saNotInitializedOnInbound: u32, 5834 } 5835 impl ::core::marker::Copy for IPSEC_AH_DROP_PACKET_STATISTICS0 {} 5836 impl ::core::clone::Clone for IPSEC_AH_DROP_PACKET_STATISTICS0 { clone(&self) -> Self5837 fn clone(&self) -> Self { 5838 *self 5839 } 5840 } 5841 #[repr(C)] 5842 pub struct IPSEC_AUTH_AND_CIPHER_TRANSFORM0 { 5843 pub authTransform: IPSEC_AUTH_TRANSFORM0, 5844 pub cipherTransform: IPSEC_CIPHER_TRANSFORM0, 5845 } 5846 impl ::core::marker::Copy for IPSEC_AUTH_AND_CIPHER_TRANSFORM0 {} 5847 impl ::core::clone::Clone for IPSEC_AUTH_AND_CIPHER_TRANSFORM0 { clone(&self) -> Self5848 fn clone(&self) -> Self { 5849 *self 5850 } 5851 } 5852 pub const IPSEC_AUTH_CONFIG_GCM_AES_128: u32 = 3u32; 5853 pub const IPSEC_AUTH_CONFIG_GCM_AES_192: u32 = 4u32; 5854 pub const IPSEC_AUTH_CONFIG_GCM_AES_256: u32 = 5u32; 5855 pub const IPSEC_AUTH_CONFIG_HMAC_MD5_96: u32 = 0u32; 5856 pub const IPSEC_AUTH_CONFIG_HMAC_SHA_1_96: u32 = 1u32; 5857 pub const IPSEC_AUTH_CONFIG_HMAC_SHA_256_128: u32 = 2u32; 5858 pub const IPSEC_AUTH_CONFIG_MAX: u32 = 6u32; 5859 #[repr(C)] 5860 pub struct IPSEC_AUTH_TRANSFORM0 { 5861 pub authTransformId: IPSEC_AUTH_TRANSFORM_ID0, 5862 pub cryptoModuleId: *mut ::windows_sys::core::GUID, 5863 } 5864 impl ::core::marker::Copy for IPSEC_AUTH_TRANSFORM0 {} 5865 impl ::core::clone::Clone for IPSEC_AUTH_TRANSFORM0 { clone(&self) -> Self5866 fn clone(&self) -> Self { 5867 *self 5868 } 5869 } 5870 #[repr(C)] 5871 pub struct IPSEC_AUTH_TRANSFORM_ID0 { 5872 pub authType: IPSEC_AUTH_TYPE, 5873 pub authConfig: u8, 5874 } 5875 impl ::core::marker::Copy for IPSEC_AUTH_TRANSFORM_ID0 {} 5876 impl ::core::clone::Clone for IPSEC_AUTH_TRANSFORM_ID0 { clone(&self) -> Self5877 fn clone(&self) -> Self { 5878 *self 5879 } 5880 } 5881 pub type IPSEC_AUTH_TYPE = i32; 5882 pub const IPSEC_AUTH_MD5: IPSEC_AUTH_TYPE = 0i32; 5883 pub const IPSEC_AUTH_SHA_1: IPSEC_AUTH_TYPE = 1i32; 5884 pub const IPSEC_AUTH_SHA_256: IPSEC_AUTH_TYPE = 2i32; 5885 pub const IPSEC_AUTH_AES_128: IPSEC_AUTH_TYPE = 3i32; 5886 pub const IPSEC_AUTH_AES_192: IPSEC_AUTH_TYPE = 4i32; 5887 pub const IPSEC_AUTH_AES_256: IPSEC_AUTH_TYPE = 5i32; 5888 pub const IPSEC_AUTH_MAX: IPSEC_AUTH_TYPE = 6i32; 5889 pub const IPSEC_CIPHER_CONFIG_CBC_3DES: u32 = 2u32; 5890 pub const IPSEC_CIPHER_CONFIG_CBC_AES_128: u32 = 3u32; 5891 pub const IPSEC_CIPHER_CONFIG_CBC_AES_192: u32 = 4u32; 5892 pub const IPSEC_CIPHER_CONFIG_CBC_AES_256: u32 = 5u32; 5893 pub const IPSEC_CIPHER_CONFIG_CBC_DES: u32 = 1u32; 5894 pub const IPSEC_CIPHER_CONFIG_GCM_AES_128: u32 = 6u32; 5895 pub const IPSEC_CIPHER_CONFIG_GCM_AES_192: u32 = 7u32; 5896 pub const IPSEC_CIPHER_CONFIG_GCM_AES_256: u32 = 8u32; 5897 pub const IPSEC_CIPHER_CONFIG_MAX: u32 = 9u32; 5898 #[repr(C)] 5899 pub struct IPSEC_CIPHER_TRANSFORM0 { 5900 pub cipherTransformId: IPSEC_CIPHER_TRANSFORM_ID0, 5901 pub cryptoModuleId: *mut ::windows_sys::core::GUID, 5902 } 5903 impl ::core::marker::Copy for IPSEC_CIPHER_TRANSFORM0 {} 5904 impl ::core::clone::Clone for IPSEC_CIPHER_TRANSFORM0 { clone(&self) -> Self5905 fn clone(&self) -> Self { 5906 *self 5907 } 5908 } 5909 #[repr(C)] 5910 pub struct IPSEC_CIPHER_TRANSFORM_ID0 { 5911 pub cipherType: IPSEC_CIPHER_TYPE, 5912 pub cipherConfig: u8, 5913 } 5914 impl ::core::marker::Copy for IPSEC_CIPHER_TRANSFORM_ID0 {} 5915 impl ::core::clone::Clone for IPSEC_CIPHER_TRANSFORM_ID0 { clone(&self) -> Self5916 fn clone(&self) -> Self { 5917 *self 5918 } 5919 } 5920 pub type IPSEC_CIPHER_TYPE = i32; 5921 pub const IPSEC_CIPHER_TYPE_DES: IPSEC_CIPHER_TYPE = 1i32; 5922 pub const IPSEC_CIPHER_TYPE_3DES: IPSEC_CIPHER_TYPE = 2i32; 5923 pub const IPSEC_CIPHER_TYPE_AES_128: IPSEC_CIPHER_TYPE = 3i32; 5924 pub const IPSEC_CIPHER_TYPE_AES_192: IPSEC_CIPHER_TYPE = 4i32; 5925 pub const IPSEC_CIPHER_TYPE_AES_256: IPSEC_CIPHER_TYPE = 5i32; 5926 pub const IPSEC_CIPHER_TYPE_MAX: IPSEC_CIPHER_TYPE = 6i32; 5927 pub const IPSEC_DOSP_DSCP_DISABLE_VALUE: u32 = 255u32; 5928 pub type IPSEC_DOSP_FLAGS = u32; 5929 pub const IPSEC_DOSP_FLAG_ENABLE_IKEV1: IPSEC_DOSP_FLAGS = 1u32; 5930 pub const IPSEC_DOSP_FLAG_ENABLE_IKEV2: IPSEC_DOSP_FLAGS = 2u32; 5931 pub const IPSEC_DOSP_FLAG_DISABLE_AUTHIP: IPSEC_DOSP_FLAGS = 4u32; 5932 pub const IPSEC_DOSP_FLAG_DISABLE_DEFAULT_BLOCK: IPSEC_DOSP_FLAGS = 8u32; 5933 pub const IPSEC_DOSP_FLAG_FILTER_BLOCK: IPSEC_DOSP_FLAGS = 16u32; 5934 pub const IPSEC_DOSP_FLAG_FILTER_EXEMPT: IPSEC_DOSP_FLAGS = 32u32; 5935 #[repr(C)] 5936 pub struct IPSEC_DOSP_OPTIONS0 { 5937 pub stateIdleTimeoutSeconds: u32, 5938 pub perIPRateLimitQueueIdleTimeoutSeconds: u32, 5939 pub ipV6IPsecUnauthDscp: u8, 5940 pub ipV6IPsecUnauthRateLimitBytesPerSec: u32, 5941 pub ipV6IPsecUnauthPerIPRateLimitBytesPerSec: u32, 5942 pub ipV6IPsecAuthDscp: u8, 5943 pub ipV6IPsecAuthRateLimitBytesPerSec: u32, 5944 pub icmpV6Dscp: u8, 5945 pub icmpV6RateLimitBytesPerSec: u32, 5946 pub ipV6FilterExemptDscp: u8, 5947 pub ipV6FilterExemptRateLimitBytesPerSec: u32, 5948 pub defBlockExemptDscp: u8, 5949 pub defBlockExemptRateLimitBytesPerSec: u32, 5950 pub maxStateEntries: u32, 5951 pub maxPerIPRateLimitQueues: u32, 5952 pub flags: IPSEC_DOSP_FLAGS, 5953 pub numPublicIFLuids: u32, 5954 pub publicIFLuids: *mut u64, 5955 pub numInternalIFLuids: u32, 5956 pub internalIFLuids: *mut u64, 5957 pub publicV6AddrMask: FWP_V6_ADDR_AND_MASK, 5958 pub internalV6AddrMask: FWP_V6_ADDR_AND_MASK, 5959 } 5960 impl ::core::marker::Copy for IPSEC_DOSP_OPTIONS0 {} 5961 impl ::core::clone::Clone for IPSEC_DOSP_OPTIONS0 { clone(&self) -> Self5962 fn clone(&self) -> Self { 5963 *self 5964 } 5965 } 5966 pub const IPSEC_DOSP_RATE_LIMIT_DISABLE_VALUE: u32 = 0u32; 5967 #[repr(C)] 5968 pub struct IPSEC_DOSP_STATE0 { 5969 pub publicHostV6Addr: [u8; 16], 5970 pub internalHostV6Addr: [u8; 16], 5971 pub totalInboundIPv6IPsecAuthPackets: u64, 5972 pub totalOutboundIPv6IPsecAuthPackets: u64, 5973 pub durationSecs: u32, 5974 } 5975 impl ::core::marker::Copy for IPSEC_DOSP_STATE0 {} 5976 impl ::core::clone::Clone for IPSEC_DOSP_STATE0 { clone(&self) -> Self5977 fn clone(&self) -> Self { 5978 *self 5979 } 5980 } 5981 #[repr(C)] 5982 pub struct IPSEC_DOSP_STATE_ENUM_TEMPLATE0 { 5983 pub publicV6AddrMask: FWP_V6_ADDR_AND_MASK, 5984 pub internalV6AddrMask: FWP_V6_ADDR_AND_MASK, 5985 } 5986 impl ::core::marker::Copy for IPSEC_DOSP_STATE_ENUM_TEMPLATE0 {} 5987 impl ::core::clone::Clone for IPSEC_DOSP_STATE_ENUM_TEMPLATE0 { clone(&self) -> Self5988 fn clone(&self) -> Self { 5989 *self 5990 } 5991 } 5992 #[repr(C)] 5993 pub struct IPSEC_DOSP_STATISTICS0 { 5994 pub totalStateEntriesCreated: u64, 5995 pub currentStateEntries: u64, 5996 pub totalInboundAllowedIPv6IPsecUnauthPkts: u64, 5997 pub totalInboundRatelimitDiscardedIPv6IPsecUnauthPkts: u64, 5998 pub totalInboundPerIPRatelimitDiscardedIPv6IPsecUnauthPkts: u64, 5999 pub totalInboundOtherDiscardedIPv6IPsecUnauthPkts: u64, 6000 pub totalInboundAllowedIPv6IPsecAuthPkts: u64, 6001 pub totalInboundRatelimitDiscardedIPv6IPsecAuthPkts: u64, 6002 pub totalInboundOtherDiscardedIPv6IPsecAuthPkts: u64, 6003 pub totalInboundAllowedICMPv6Pkts: u64, 6004 pub totalInboundRatelimitDiscardedICMPv6Pkts: u64, 6005 pub totalInboundAllowedIPv6FilterExemptPkts: u64, 6006 pub totalInboundRatelimitDiscardedIPv6FilterExemptPkts: u64, 6007 pub totalInboundDiscardedIPv6FilterBlockPkts: u64, 6008 pub totalInboundAllowedDefBlockExemptPkts: u64, 6009 pub totalInboundRatelimitDiscardedDefBlockExemptPkts: u64, 6010 pub totalInboundDiscardedDefBlockPkts: u64, 6011 pub currentInboundIPv6IPsecUnauthPerIPRateLimitQueues: u64, 6012 } 6013 impl ::core::marker::Copy for IPSEC_DOSP_STATISTICS0 {} 6014 impl ::core::clone::Clone for IPSEC_DOSP_STATISTICS0 { clone(&self) -> Self6015 fn clone(&self) -> Self { 6016 *self 6017 } 6018 } 6019 #[repr(C)] 6020 pub struct IPSEC_ESP_DROP_PACKET_STATISTICS0 { 6021 pub invalidSpisOnInbound: u32, 6022 pub decryptionFailuresOnInbound: u32, 6023 pub authenticationFailuresOnInbound: u32, 6024 pub replayCheckFailuresOnInbound: u32, 6025 pub saNotInitializedOnInbound: u32, 6026 } 6027 impl ::core::marker::Copy for IPSEC_ESP_DROP_PACKET_STATISTICS0 {} 6028 impl ::core::clone::Clone for IPSEC_ESP_DROP_PACKET_STATISTICS0 { clone(&self) -> Self6029 fn clone(&self) -> Self { 6030 *self 6031 } 6032 } 6033 pub type IPSEC_FAILURE_POINT = i32; 6034 pub const IPSEC_FAILURE_NONE: IPSEC_FAILURE_POINT = 0i32; 6035 pub const IPSEC_FAILURE_ME: IPSEC_FAILURE_POINT = 1i32; 6036 pub const IPSEC_FAILURE_PEER: IPSEC_FAILURE_POINT = 2i32; 6037 pub const IPSEC_FAILURE_POINT_MAX: IPSEC_FAILURE_POINT = 3i32; 6038 #[repr(C)] 6039 pub struct IPSEC_GETSPI0 { 6040 pub inboundIpsecTraffic: IPSEC_TRAFFIC0, 6041 pub ipVersion: FWP_IP_VERSION, 6042 pub Anonymous: IPSEC_GETSPI0_0, 6043 pub rngCryptoModuleID: *mut ::windows_sys::core::GUID, 6044 } 6045 impl ::core::marker::Copy for IPSEC_GETSPI0 {} 6046 impl ::core::clone::Clone for IPSEC_GETSPI0 { clone(&self) -> Self6047 fn clone(&self) -> Self { 6048 *self 6049 } 6050 } 6051 #[repr(C)] 6052 pub union IPSEC_GETSPI0_0 { 6053 pub inboundUdpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 6054 } 6055 impl ::core::marker::Copy for IPSEC_GETSPI0_0 {} 6056 impl ::core::clone::Clone for IPSEC_GETSPI0_0 { clone(&self) -> Self6057 fn clone(&self) -> Self { 6058 *self 6059 } 6060 } 6061 #[repr(C)] 6062 pub struct IPSEC_GETSPI1 { 6063 pub inboundIpsecTraffic: IPSEC_TRAFFIC1, 6064 pub ipVersion: FWP_IP_VERSION, 6065 pub Anonymous: IPSEC_GETSPI1_0, 6066 pub rngCryptoModuleID: *mut ::windows_sys::core::GUID, 6067 } 6068 impl ::core::marker::Copy for IPSEC_GETSPI1 {} 6069 impl ::core::clone::Clone for IPSEC_GETSPI1 { clone(&self) -> Self6070 fn clone(&self) -> Self { 6071 *self 6072 } 6073 } 6074 #[repr(C)] 6075 pub union IPSEC_GETSPI1_0 { 6076 pub inboundUdpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 6077 } 6078 impl ::core::marker::Copy for IPSEC_GETSPI1_0 {} 6079 impl ::core::clone::Clone for IPSEC_GETSPI1_0 { clone(&self) -> Self6080 fn clone(&self) -> Self { 6081 *self 6082 } 6083 } 6084 #[repr(C)] 6085 #[cfg(feature = "Win32_Foundation")] 6086 pub struct IPSEC_ID0 { 6087 pub mmTargetName: super::super::Foundation::PWSTR, 6088 pub emTargetName: super::super::Foundation::PWSTR, 6089 pub numTokens: u32, 6090 pub tokens: *mut IPSEC_TOKEN0, 6091 pub explicitCredentials: u64, 6092 pub logonId: u64, 6093 } 6094 #[cfg(feature = "Win32_Foundation")] 6095 impl ::core::marker::Copy for IPSEC_ID0 {} 6096 #[cfg(feature = "Win32_Foundation")] 6097 impl ::core::clone::Clone for IPSEC_ID0 { clone(&self) -> Self6098 fn clone(&self) -> Self { 6099 *self 6100 } 6101 } 6102 #[repr(C)] 6103 pub struct IPSEC_KEYING_POLICY0 { 6104 pub numKeyMods: u32, 6105 pub keyModKeys: *mut ::windows_sys::core::GUID, 6106 } 6107 impl ::core::marker::Copy for IPSEC_KEYING_POLICY0 {} 6108 impl ::core::clone::Clone for IPSEC_KEYING_POLICY0 { clone(&self) -> Self6109 fn clone(&self) -> Self { 6110 *self 6111 } 6112 } 6113 #[repr(C)] 6114 pub struct IPSEC_KEYING_POLICY1 { 6115 pub numKeyMods: u32, 6116 pub keyModKeys: *mut ::windows_sys::core::GUID, 6117 pub flags: u32, 6118 } 6119 impl ::core::marker::Copy for IPSEC_KEYING_POLICY1 {} 6120 impl ::core::clone::Clone for IPSEC_KEYING_POLICY1 { clone(&self) -> Self6121 fn clone(&self) -> Self { 6122 *self 6123 } 6124 } 6125 pub const IPSEC_KEYING_POLICY_FLAG_TERMINATING_MATCH: u32 = 1u32; 6126 #[repr(C)] 6127 pub struct IPSEC_KEYMODULE_STATE0 { 6128 pub keyModuleKey: ::windows_sys::core::GUID, 6129 pub stateBlob: FWP_BYTE_BLOB, 6130 } 6131 impl ::core::marker::Copy for IPSEC_KEYMODULE_STATE0 {} 6132 impl ::core::clone::Clone for IPSEC_KEYMODULE_STATE0 { clone(&self) -> Self6133 fn clone(&self) -> Self { 6134 *self 6135 } 6136 } 6137 #[repr(C)] 6138 #[cfg(feature = "Win32_Foundation")] 6139 pub struct IPSEC_KEY_MANAGER0 { 6140 pub keyManagerKey: ::windows_sys::core::GUID, 6141 pub displayData: FWPM_DISPLAY_DATA0, 6142 pub flags: u32, 6143 pub keyDictationTimeoutHint: u8, 6144 } 6145 #[cfg(feature = "Win32_Foundation")] 6146 impl ::core::marker::Copy for IPSEC_KEY_MANAGER0 {} 6147 #[cfg(feature = "Win32_Foundation")] 6148 impl ::core::clone::Clone for IPSEC_KEY_MANAGER0 { clone(&self) -> Self6149 fn clone(&self) -> Self { 6150 *self 6151 } 6152 } 6153 #[repr(C)] 6154 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6155 pub struct IPSEC_KEY_MANAGER_CALLBACKS0 { 6156 pub reserved: ::windows_sys::core::GUID, 6157 pub flags: u32, 6158 pub keyDictationCheck: IPSEC_KEY_MANAGER_KEY_DICTATION_CHECK0, 6159 pub keyDictation: IPSEC_KEY_MANAGER_DICTATE_KEY0, 6160 pub keyNotify: IPSEC_KEY_MANAGER_NOTIFY_KEY0, 6161 } 6162 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6163 impl ::core::marker::Copy for IPSEC_KEY_MANAGER_CALLBACKS0 {} 6164 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6165 impl ::core::clone::Clone for IPSEC_KEY_MANAGER_CALLBACKS0 { clone(&self) -> Self6166 fn clone(&self) -> Self { 6167 *self 6168 } 6169 } 6170 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6171 pub type IPSEC_KEY_MANAGER_DICTATE_KEY0 = unsafe extern "system" fn(inboundsadetails: *mut IPSEC_SA_DETAILS1, outboundsadetails: *mut IPSEC_SA_DETAILS1, keyingmodulegenkey: *mut super::super::Foundation::BOOL) -> u32; 6172 pub const IPSEC_KEY_MANAGER_FLAG_DICTATE_KEY: u32 = 1u32; 6173 #[cfg(feature = "Win32_Foundation")] 6174 pub type IPSEC_KEY_MANAGER_KEY_DICTATION_CHECK0 = unsafe extern "system" fn(iketraffic: *const IKEEXT_TRAFFIC0, willdictatekey: *mut super::super::Foundation::BOOL, weight: *mut u32); 6175 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6176 pub type IPSEC_KEY_MANAGER_NOTIFY_KEY0 = unsafe extern "system" fn(inboundsa: *const IPSEC_SA_DETAILS1, outboundsa: *const IPSEC_SA_DETAILS1); 6177 pub type IPSEC_PFS_GROUP = i32; 6178 pub const IPSEC_PFS_NONE: IPSEC_PFS_GROUP = 0i32; 6179 pub const IPSEC_PFS_1: IPSEC_PFS_GROUP = 1i32; 6180 pub const IPSEC_PFS_2: IPSEC_PFS_GROUP = 2i32; 6181 pub const IPSEC_PFS_2048: IPSEC_PFS_GROUP = 3i32; 6182 pub const IPSEC_PFS_14: IPSEC_PFS_GROUP = 3i32; 6183 pub const IPSEC_PFS_ECP_256: IPSEC_PFS_GROUP = 4i32; 6184 pub const IPSEC_PFS_ECP_384: IPSEC_PFS_GROUP = 5i32; 6185 pub const IPSEC_PFS_MM: IPSEC_PFS_GROUP = 6i32; 6186 pub const IPSEC_PFS_24: IPSEC_PFS_GROUP = 7i32; 6187 pub const IPSEC_PFS_MAX: IPSEC_PFS_GROUP = 8i32; 6188 pub type IPSEC_POLICY_FLAG = u32; 6189 pub const IPSEC_POLICY_FLAG_ND_SECURE: IPSEC_POLICY_FLAG = 2u32; 6190 pub const IPSEC_POLICY_FLAG_ND_BOUNDARY: IPSEC_POLICY_FLAG = 4u32; 6191 pub const IPSEC_POLICY_FLAG_NAT_ENCAP_ALLOW_PEER_BEHIND_NAT: IPSEC_POLICY_FLAG = 16u32; 6192 pub const IPSEC_POLICY_FLAG_NAT_ENCAP_ALLOW_GENERAL_NAT_TRAVERSAL: IPSEC_POLICY_FLAG = 32u32; 6193 pub const IPSEC_POLICY_FLAG_DONT_NEGOTIATE_SECOND_LIFETIME: IPSEC_POLICY_FLAG = 64u32; 6194 pub const IPSEC_POLICY_FLAG_DONT_NEGOTIATE_BYTE_LIFETIME: IPSEC_POLICY_FLAG = 128u32; 6195 pub const IPSEC_POLICY_FLAG_CLEAR_DF_ON_TUNNEL: IPSEC_POLICY_FLAG = 8u32; 6196 pub const IPSEC_POLICY_FLAG_ENABLE_V6_IN_V4_TUNNELING: IPSEC_POLICY_FLAG = 256u32; 6197 pub const IPSEC_POLICY_FLAG_ENABLE_SERVER_ADDR_ASSIGNMENT: IPSEC_POLICY_FLAG = 512u32; 6198 pub const IPSEC_POLICY_FLAG_TUNNEL_ALLOW_OUTBOUND_CLEAR_CONNECTION: IPSEC_POLICY_FLAG = 1024u32; 6199 pub const IPSEC_POLICY_FLAG_TUNNEL_BYPASS_ALREADY_SECURE_CONNECTION: IPSEC_POLICY_FLAG = 2048u32; 6200 pub const IPSEC_POLICY_FLAG_TUNNEL_BYPASS_ICMPV6: IPSEC_POLICY_FLAG = 4096u32; 6201 pub const IPSEC_POLICY_FLAG_KEY_MANAGER_ALLOW_DICTATE_KEY: IPSEC_POLICY_FLAG = 8192u32; 6202 pub const IPSEC_POLICY_FLAG_KEY_MANAGER_ALLOW_NOTIFY_KEY: u32 = 16384u32; 6203 pub const IPSEC_POLICY_FLAG_RESERVED1: u32 = 32768u32; 6204 pub const IPSEC_POLICY_FLAG_SITE_TO_SITE_TUNNEL: u32 = 65536u32; 6205 #[repr(C)] 6206 pub struct IPSEC_PROPOSAL0 { 6207 pub lifetime: IPSEC_SA_LIFETIME0, 6208 pub numSaTransforms: u32, 6209 pub saTransforms: *mut IPSEC_SA_TRANSFORM0, 6210 pub pfsGroup: IPSEC_PFS_GROUP, 6211 } 6212 impl ::core::marker::Copy for IPSEC_PROPOSAL0 {} 6213 impl ::core::clone::Clone for IPSEC_PROPOSAL0 { clone(&self) -> Self6214 fn clone(&self) -> Self { 6215 *self 6216 } 6217 } 6218 #[repr(C)] 6219 pub struct IPSEC_SA0 { 6220 pub spi: u32, 6221 pub saTransformType: IPSEC_TRANSFORM_TYPE, 6222 pub Anonymous: IPSEC_SA0_0, 6223 } 6224 impl ::core::marker::Copy for IPSEC_SA0 {} 6225 impl ::core::clone::Clone for IPSEC_SA0 { clone(&self) -> Self6226 fn clone(&self) -> Self { 6227 *self 6228 } 6229 } 6230 #[repr(C)] 6231 pub union IPSEC_SA0_0 { 6232 pub ahInformation: *mut IPSEC_SA_AUTH_INFORMATION0, 6233 pub espAuthInformation: *mut IPSEC_SA_AUTH_INFORMATION0, 6234 pub espCipherInformation: *mut IPSEC_SA_CIPHER_INFORMATION0, 6235 pub espAuthAndCipherInformation: *mut IPSEC_SA_AUTH_AND_CIPHER_INFORMATION0, 6236 pub espAuthFwInformation: *mut IPSEC_SA_AUTH_INFORMATION0, 6237 } 6238 impl ::core::marker::Copy for IPSEC_SA0_0 {} 6239 impl ::core::clone::Clone for IPSEC_SA0_0 { clone(&self) -> Self6240 fn clone(&self) -> Self { 6241 *self 6242 } 6243 } 6244 #[repr(C)] 6245 pub struct IPSEC_SA_AUTH_AND_CIPHER_INFORMATION0 { 6246 pub saCipherInformation: IPSEC_SA_CIPHER_INFORMATION0, 6247 pub saAuthInformation: IPSEC_SA_AUTH_INFORMATION0, 6248 } 6249 impl ::core::marker::Copy for IPSEC_SA_AUTH_AND_CIPHER_INFORMATION0 {} 6250 impl ::core::clone::Clone for IPSEC_SA_AUTH_AND_CIPHER_INFORMATION0 { clone(&self) -> Self6251 fn clone(&self) -> Self { 6252 *self 6253 } 6254 } 6255 #[repr(C)] 6256 pub struct IPSEC_SA_AUTH_INFORMATION0 { 6257 pub authTransform: IPSEC_AUTH_TRANSFORM0, 6258 pub authKey: FWP_BYTE_BLOB, 6259 } 6260 impl ::core::marker::Copy for IPSEC_SA_AUTH_INFORMATION0 {} 6261 impl ::core::clone::Clone for IPSEC_SA_AUTH_INFORMATION0 { clone(&self) -> Self6262 fn clone(&self) -> Self { 6263 *self 6264 } 6265 } 6266 #[repr(C)] 6267 #[cfg(feature = "Win32_Foundation")] 6268 pub struct IPSEC_SA_BUNDLE0 { 6269 pub flags: IPSEC_SA_BUNDLE_FLAGS, 6270 pub lifetime: IPSEC_SA_LIFETIME0, 6271 pub idleTimeoutSeconds: u32, 6272 pub ndAllowClearTimeoutSeconds: u32, 6273 pub ipsecId: *mut IPSEC_ID0, 6274 pub napContext: u32, 6275 pub qmSaId: u32, 6276 pub numSAs: u32, 6277 pub saList: *mut IPSEC_SA0, 6278 pub keyModuleState: *mut IPSEC_KEYMODULE_STATE0, 6279 pub ipVersion: FWP_IP_VERSION, 6280 pub Anonymous: IPSEC_SA_BUNDLE0_0, 6281 pub mmSaId: u64, 6282 pub pfsGroup: IPSEC_PFS_GROUP, 6283 } 6284 #[cfg(feature = "Win32_Foundation")] 6285 impl ::core::marker::Copy for IPSEC_SA_BUNDLE0 {} 6286 #[cfg(feature = "Win32_Foundation")] 6287 impl ::core::clone::Clone for IPSEC_SA_BUNDLE0 { clone(&self) -> Self6288 fn clone(&self) -> Self { 6289 *self 6290 } 6291 } 6292 #[repr(C)] 6293 #[cfg(feature = "Win32_Foundation")] 6294 pub union IPSEC_SA_BUNDLE0_0 { 6295 pub peerV4PrivateAddress: u32, 6296 } 6297 #[cfg(feature = "Win32_Foundation")] 6298 impl ::core::marker::Copy for IPSEC_SA_BUNDLE0_0 {} 6299 #[cfg(feature = "Win32_Foundation")] 6300 impl ::core::clone::Clone for IPSEC_SA_BUNDLE0_0 { clone(&self) -> Self6301 fn clone(&self) -> Self { 6302 *self 6303 } 6304 } 6305 #[repr(C)] 6306 #[cfg(feature = "Win32_Foundation")] 6307 pub struct IPSEC_SA_BUNDLE1 { 6308 pub flags: IPSEC_SA_BUNDLE_FLAGS, 6309 pub lifetime: IPSEC_SA_LIFETIME0, 6310 pub idleTimeoutSeconds: u32, 6311 pub ndAllowClearTimeoutSeconds: u32, 6312 pub ipsecId: *mut IPSEC_ID0, 6313 pub napContext: u32, 6314 pub qmSaId: u32, 6315 pub numSAs: u32, 6316 pub saList: *mut IPSEC_SA0, 6317 pub keyModuleState: *mut IPSEC_KEYMODULE_STATE0, 6318 pub ipVersion: FWP_IP_VERSION, 6319 pub Anonymous: IPSEC_SA_BUNDLE1_0, 6320 pub mmSaId: u64, 6321 pub pfsGroup: IPSEC_PFS_GROUP, 6322 pub saLookupContext: ::windows_sys::core::GUID, 6323 pub qmFilterId: u64, 6324 } 6325 #[cfg(feature = "Win32_Foundation")] 6326 impl ::core::marker::Copy for IPSEC_SA_BUNDLE1 {} 6327 #[cfg(feature = "Win32_Foundation")] 6328 impl ::core::clone::Clone for IPSEC_SA_BUNDLE1 { clone(&self) -> Self6329 fn clone(&self) -> Self { 6330 *self 6331 } 6332 } 6333 #[repr(C)] 6334 #[cfg(feature = "Win32_Foundation")] 6335 pub union IPSEC_SA_BUNDLE1_0 { 6336 pub peerV4PrivateAddress: u32, 6337 } 6338 #[cfg(feature = "Win32_Foundation")] 6339 impl ::core::marker::Copy for IPSEC_SA_BUNDLE1_0 {} 6340 #[cfg(feature = "Win32_Foundation")] 6341 impl ::core::clone::Clone for IPSEC_SA_BUNDLE1_0 { clone(&self) -> Self6342 fn clone(&self) -> Self { 6343 *self 6344 } 6345 } 6346 pub type IPSEC_SA_BUNDLE_FLAGS = u32; 6347 pub const IPSEC_SA_BUNDLE_FLAG_ND_SECURE: IPSEC_SA_BUNDLE_FLAGS = 1u32; 6348 pub const IPSEC_SA_BUNDLE_FLAG_ND_BOUNDARY: IPSEC_SA_BUNDLE_FLAGS = 2u32; 6349 pub const IPSEC_SA_BUNDLE_FLAG_ND_PEER_NAT_BOUNDARY: IPSEC_SA_BUNDLE_FLAGS = 4u32; 6350 pub const IPSEC_SA_BUNDLE_FLAG_GUARANTEE_ENCRYPTION: IPSEC_SA_BUNDLE_FLAGS = 8u32; 6351 pub const IPSEC_SA_BUNDLE_FLAG_ALLOW_NULL_TARGET_NAME_MATCH: IPSEC_SA_BUNDLE_FLAGS = 512u32; 6352 pub const IPSEC_SA_BUNDLE_FLAG_CLEAR_DF_ON_TUNNEL: IPSEC_SA_BUNDLE_FLAGS = 1024u32; 6353 pub const IPSEC_SA_BUNDLE_FLAG_ASSUME_UDP_CONTEXT_OUTBOUND: IPSEC_SA_BUNDLE_FLAGS = 2048u32; 6354 pub const IPSEC_SA_BUNDLE_FLAG_ND_PEER_BOUNDARY: IPSEC_SA_BUNDLE_FLAGS = 4096u32; 6355 pub const IPSEC_SA_BUNDLE_FLAG_SUPPRESS_DUPLICATE_DELETION: IPSEC_SA_BUNDLE_FLAGS = 8192u32; 6356 pub const IPSEC_SA_BUNDLE_FLAG_PEER_SUPPORTS_GUARANTEE_ENCRYPTION: IPSEC_SA_BUNDLE_FLAGS = 16384u32; 6357 pub const IPSEC_SA_BUNDLE_FLAG_ENABLE_OPTIONAL_ASYMMETRIC_IDLE: u32 = 262144u32; 6358 pub const IPSEC_SA_BUNDLE_FLAG_FORCE_INBOUND_CONNECTIONS: u32 = 32768u32; 6359 pub const IPSEC_SA_BUNDLE_FLAG_FORCE_OUTBOUND_CONNECTIONS: u32 = 65536u32; 6360 pub const IPSEC_SA_BUNDLE_FLAG_FORWARD_PATH_INITIATOR: u32 = 131072u32; 6361 pub const IPSEC_SA_BUNDLE_FLAG_IP_IN_IP_PKT: u32 = 4194304u32; 6362 pub const IPSEC_SA_BUNDLE_FLAG_LOCALLY_DICTATED_KEYS: u32 = 1048576u32; 6363 pub const IPSEC_SA_BUNDLE_FLAG_LOW_POWER_MODE_SUPPORT: u32 = 8388608u32; 6364 pub const IPSEC_SA_BUNDLE_FLAG_NLB: u32 = 16u32; 6365 pub const IPSEC_SA_BUNDLE_FLAG_NO_EXPLICIT_CRED_MATCH: u32 = 128u32; 6366 pub const IPSEC_SA_BUNDLE_FLAG_NO_IMPERSONATION_LUID_VERIFY: u32 = 64u32; 6367 pub const IPSEC_SA_BUNDLE_FLAG_NO_MACHINE_LUID_VERIFY: u32 = 32u32; 6368 pub const IPSEC_SA_BUNDLE_FLAG_SA_OFFLOADED: u32 = 2097152u32; 6369 pub const IPSEC_SA_BUNDLE_FLAG_USING_DICTATED_KEYS: u32 = 524288u32; 6370 #[repr(C)] 6371 pub struct IPSEC_SA_CIPHER_INFORMATION0 { 6372 pub cipherTransform: IPSEC_CIPHER_TRANSFORM0, 6373 pub cipherKey: FWP_BYTE_BLOB, 6374 } 6375 impl ::core::marker::Copy for IPSEC_SA_CIPHER_INFORMATION0 {} 6376 impl ::core::clone::Clone for IPSEC_SA_CIPHER_INFORMATION0 { clone(&self) -> Self6377 fn clone(&self) -> Self { 6378 *self 6379 } 6380 } 6381 #[repr(C)] 6382 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6383 pub struct IPSEC_SA_CONTEXT0 { 6384 pub saContextId: u64, 6385 pub inboundSa: *mut IPSEC_SA_DETAILS0, 6386 pub outboundSa: *mut IPSEC_SA_DETAILS0, 6387 } 6388 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6389 impl ::core::marker::Copy for IPSEC_SA_CONTEXT0 {} 6390 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6391 impl ::core::clone::Clone for IPSEC_SA_CONTEXT0 { clone(&self) -> Self6392 fn clone(&self) -> Self { 6393 *self 6394 } 6395 } 6396 #[repr(C)] 6397 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6398 pub struct IPSEC_SA_CONTEXT1 { 6399 pub saContextId: u64, 6400 pub inboundSa: *mut IPSEC_SA_DETAILS1, 6401 pub outboundSa: *mut IPSEC_SA_DETAILS1, 6402 } 6403 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6404 impl ::core::marker::Copy for IPSEC_SA_CONTEXT1 {} 6405 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6406 impl ::core::clone::Clone for IPSEC_SA_CONTEXT1 { clone(&self) -> Self6407 fn clone(&self) -> Self { 6408 *self 6409 } 6410 } 6411 pub type IPSEC_SA_CONTEXT_CALLBACK0 = unsafe extern "system" fn(context: *mut ::core::ffi::c_void, change: *const IPSEC_SA_CONTEXT_CHANGE0); 6412 #[repr(C)] 6413 pub struct IPSEC_SA_CONTEXT_CHANGE0 { 6414 pub changeType: IPSEC_SA_CONTEXT_EVENT_TYPE0, 6415 pub saContextId: u64, 6416 } 6417 impl ::core::marker::Copy for IPSEC_SA_CONTEXT_CHANGE0 {} 6418 impl ::core::clone::Clone for IPSEC_SA_CONTEXT_CHANGE0 { clone(&self) -> Self6419 fn clone(&self) -> Self { 6420 *self 6421 } 6422 } 6423 #[repr(C)] 6424 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6425 pub struct IPSEC_SA_CONTEXT_ENUM_TEMPLATE0 { 6426 pub localSubNet: FWP_CONDITION_VALUE0, 6427 pub remoteSubNet: FWP_CONDITION_VALUE0, 6428 } 6429 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6430 impl ::core::marker::Copy for IPSEC_SA_CONTEXT_ENUM_TEMPLATE0 {} 6431 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6432 impl ::core::clone::Clone for IPSEC_SA_CONTEXT_ENUM_TEMPLATE0 { clone(&self) -> Self6433 fn clone(&self) -> Self { 6434 *self 6435 } 6436 } 6437 pub type IPSEC_SA_CONTEXT_EVENT_TYPE0 = i32; 6438 pub const IPSEC_SA_CONTEXT_EVENT_ADD: IPSEC_SA_CONTEXT_EVENT_TYPE0 = 1i32; 6439 pub const IPSEC_SA_CONTEXT_EVENT_DELETE: IPSEC_SA_CONTEXT_EVENT_TYPE0 = 2i32; 6440 pub const IPSEC_SA_CONTEXT_EVENT_MAX: IPSEC_SA_CONTEXT_EVENT_TYPE0 = 3i32; 6441 #[repr(C)] 6442 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6443 pub struct IPSEC_SA_CONTEXT_SUBSCRIPTION0 { 6444 pub enumTemplate: *mut IPSEC_SA_CONTEXT_ENUM_TEMPLATE0, 6445 pub flags: u32, 6446 pub sessionKey: ::windows_sys::core::GUID, 6447 } 6448 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6449 impl ::core::marker::Copy for IPSEC_SA_CONTEXT_SUBSCRIPTION0 {} 6450 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6451 impl ::core::clone::Clone for IPSEC_SA_CONTEXT_SUBSCRIPTION0 { clone(&self) -> Self6452 fn clone(&self) -> Self { 6453 *self 6454 } 6455 } 6456 #[repr(C)] 6457 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6458 pub struct IPSEC_SA_DETAILS0 { 6459 pub ipVersion: FWP_IP_VERSION, 6460 pub saDirection: FWP_DIRECTION, 6461 pub traffic: IPSEC_TRAFFIC0, 6462 pub saBundle: IPSEC_SA_BUNDLE0, 6463 pub Anonymous: IPSEC_SA_DETAILS0_0, 6464 pub transportFilter: *mut FWPM_FILTER0, 6465 } 6466 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6467 impl ::core::marker::Copy for IPSEC_SA_DETAILS0 {} 6468 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6469 impl ::core::clone::Clone for IPSEC_SA_DETAILS0 { clone(&self) -> Self6470 fn clone(&self) -> Self { 6471 *self 6472 } 6473 } 6474 #[repr(C)] 6475 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6476 pub union IPSEC_SA_DETAILS0_0 { 6477 pub udpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 6478 } 6479 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6480 impl ::core::marker::Copy for IPSEC_SA_DETAILS0_0 {} 6481 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6482 impl ::core::clone::Clone for IPSEC_SA_DETAILS0_0 { clone(&self) -> Self6483 fn clone(&self) -> Self { 6484 *self 6485 } 6486 } 6487 #[repr(C)] 6488 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6489 pub struct IPSEC_SA_DETAILS1 { 6490 pub ipVersion: FWP_IP_VERSION, 6491 pub saDirection: FWP_DIRECTION, 6492 pub traffic: IPSEC_TRAFFIC1, 6493 pub saBundle: IPSEC_SA_BUNDLE1, 6494 pub Anonymous: IPSEC_SA_DETAILS1_0, 6495 pub transportFilter: *mut FWPM_FILTER0, 6496 pub virtualIfTunnelInfo: IPSEC_VIRTUAL_IF_TUNNEL_INFO0, 6497 } 6498 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6499 impl ::core::marker::Copy for IPSEC_SA_DETAILS1 {} 6500 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6501 impl ::core::clone::Clone for IPSEC_SA_DETAILS1 { clone(&self) -> Self6502 fn clone(&self) -> Self { 6503 *self 6504 } 6505 } 6506 #[repr(C)] 6507 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6508 pub union IPSEC_SA_DETAILS1_0 { 6509 pub udpEncapsulation: *mut IPSEC_V4_UDP_ENCAPSULATION0, 6510 } 6511 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6512 impl ::core::marker::Copy for IPSEC_SA_DETAILS1_0 {} 6513 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security"))] 6514 impl ::core::clone::Clone for IPSEC_SA_DETAILS1_0 { clone(&self) -> Self6515 fn clone(&self) -> Self { 6516 *self 6517 } 6518 } 6519 #[repr(C)] 6520 pub struct IPSEC_SA_ENUM_TEMPLATE0 { 6521 pub saDirection: FWP_DIRECTION, 6522 } 6523 impl ::core::marker::Copy for IPSEC_SA_ENUM_TEMPLATE0 {} 6524 impl ::core::clone::Clone for IPSEC_SA_ENUM_TEMPLATE0 { clone(&self) -> Self6525 fn clone(&self) -> Self { 6526 *self 6527 } 6528 } 6529 #[repr(C)] 6530 pub struct IPSEC_SA_IDLE_TIMEOUT0 { 6531 pub idleTimeoutSeconds: u32, 6532 pub idleTimeoutSecondsFailOver: u32, 6533 } 6534 impl ::core::marker::Copy for IPSEC_SA_IDLE_TIMEOUT0 {} 6535 impl ::core::clone::Clone for IPSEC_SA_IDLE_TIMEOUT0 { clone(&self) -> Self6536 fn clone(&self) -> Self { 6537 *self 6538 } 6539 } 6540 #[repr(C)] 6541 pub struct IPSEC_SA_LIFETIME0 { 6542 pub lifetimeSeconds: u32, 6543 pub lifetimeKilobytes: u32, 6544 pub lifetimePackets: u32, 6545 } 6546 impl ::core::marker::Copy for IPSEC_SA_LIFETIME0 {} 6547 impl ::core::clone::Clone for IPSEC_SA_LIFETIME0 { clone(&self) -> Self6548 fn clone(&self) -> Self { 6549 *self 6550 } 6551 } 6552 #[repr(C)] 6553 pub struct IPSEC_SA_TRANSFORM0 { 6554 pub ipsecTransformType: IPSEC_TRANSFORM_TYPE, 6555 pub Anonymous: IPSEC_SA_TRANSFORM0_0, 6556 } 6557 impl ::core::marker::Copy for IPSEC_SA_TRANSFORM0 {} 6558 impl ::core::clone::Clone for IPSEC_SA_TRANSFORM0 { clone(&self) -> Self6559 fn clone(&self) -> Self { 6560 *self 6561 } 6562 } 6563 #[repr(C)] 6564 pub union IPSEC_SA_TRANSFORM0_0 { 6565 pub ahTransform: *mut IPSEC_AUTH_TRANSFORM0, 6566 pub espAuthTransform: *mut IPSEC_AUTH_TRANSFORM0, 6567 pub espCipherTransform: *mut IPSEC_CIPHER_TRANSFORM0, 6568 pub espAuthAndCipherTransform: *mut IPSEC_AUTH_AND_CIPHER_TRANSFORM0, 6569 pub espAuthFwTransform: *mut IPSEC_AUTH_TRANSFORM0, 6570 } 6571 impl ::core::marker::Copy for IPSEC_SA_TRANSFORM0_0 {} 6572 impl ::core::clone::Clone for IPSEC_SA_TRANSFORM0_0 { clone(&self) -> Self6573 fn clone(&self) -> Self { 6574 *self 6575 } 6576 } 6577 #[repr(C)] 6578 pub struct IPSEC_STATISTICS0 { 6579 pub aggregateSaStatistics: IPSEC_AGGREGATE_SA_STATISTICS0, 6580 pub espDropPacketStatistics: IPSEC_ESP_DROP_PACKET_STATISTICS0, 6581 pub ahDropPacketStatistics: IPSEC_AH_DROP_PACKET_STATISTICS0, 6582 pub aggregateDropPacketStatistics: IPSEC_AGGREGATE_DROP_PACKET_STATISTICS0, 6583 pub inboundTrafficStatistics: IPSEC_TRAFFIC_STATISTICS0, 6584 pub outboundTrafficStatistics: IPSEC_TRAFFIC_STATISTICS0, 6585 } 6586 impl ::core::marker::Copy for IPSEC_STATISTICS0 {} 6587 impl ::core::clone::Clone for IPSEC_STATISTICS0 { clone(&self) -> Self6588 fn clone(&self) -> Self { 6589 *self 6590 } 6591 } 6592 #[repr(C)] 6593 pub struct IPSEC_STATISTICS1 { 6594 pub aggregateSaStatistics: IPSEC_AGGREGATE_SA_STATISTICS0, 6595 pub espDropPacketStatistics: IPSEC_ESP_DROP_PACKET_STATISTICS0, 6596 pub ahDropPacketStatistics: IPSEC_AH_DROP_PACKET_STATISTICS0, 6597 pub aggregateDropPacketStatistics: IPSEC_AGGREGATE_DROP_PACKET_STATISTICS1, 6598 pub inboundTrafficStatistics: IPSEC_TRAFFIC_STATISTICS1, 6599 pub outboundTrafficStatistics: IPSEC_TRAFFIC_STATISTICS1, 6600 } 6601 impl ::core::marker::Copy for IPSEC_STATISTICS1 {} 6602 impl ::core::clone::Clone for IPSEC_STATISTICS1 { clone(&self) -> Self6603 fn clone(&self) -> Self { 6604 *self 6605 } 6606 } 6607 #[repr(C)] 6608 pub struct IPSEC_TOKEN0 { 6609 pub r#type: IPSEC_TOKEN_TYPE, 6610 pub principal: IPSEC_TOKEN_PRINCIPAL, 6611 pub mode: IPSEC_TOKEN_MODE, 6612 pub token: u64, 6613 } 6614 impl ::core::marker::Copy for IPSEC_TOKEN0 {} 6615 impl ::core::clone::Clone for IPSEC_TOKEN0 { clone(&self) -> Self6616 fn clone(&self) -> Self { 6617 *self 6618 } 6619 } 6620 pub type IPSEC_TOKEN_MODE = i32; 6621 pub const IPSEC_TOKEN_MODE_MAIN: IPSEC_TOKEN_MODE = 0i32; 6622 pub const IPSEC_TOKEN_MODE_EXTENDED: IPSEC_TOKEN_MODE = 1i32; 6623 pub const IPSEC_TOKEN_MODE_MAX: IPSEC_TOKEN_MODE = 2i32; 6624 pub type IPSEC_TOKEN_PRINCIPAL = i32; 6625 pub const IPSEC_TOKEN_PRINCIPAL_LOCAL: IPSEC_TOKEN_PRINCIPAL = 0i32; 6626 pub const IPSEC_TOKEN_PRINCIPAL_PEER: IPSEC_TOKEN_PRINCIPAL = 1i32; 6627 pub const IPSEC_TOKEN_PRINCIPAL_MAX: IPSEC_TOKEN_PRINCIPAL = 2i32; 6628 pub type IPSEC_TOKEN_TYPE = i32; 6629 pub const IPSEC_TOKEN_TYPE_MACHINE: IPSEC_TOKEN_TYPE = 0i32; 6630 pub const IPSEC_TOKEN_TYPE_IMPERSONATION: IPSEC_TOKEN_TYPE = 1i32; 6631 pub const IPSEC_TOKEN_TYPE_MAX: IPSEC_TOKEN_TYPE = 2i32; 6632 #[repr(C)] 6633 pub struct IPSEC_TRAFFIC0 { 6634 pub ipVersion: FWP_IP_VERSION, 6635 pub Anonymous1: IPSEC_TRAFFIC0_0, 6636 pub Anonymous2: IPSEC_TRAFFIC0_1, 6637 pub trafficType: IPSEC_TRAFFIC_TYPE, 6638 pub Anonymous3: IPSEC_TRAFFIC0_2, 6639 pub remotePort: u16, 6640 } 6641 impl ::core::marker::Copy for IPSEC_TRAFFIC0 {} 6642 impl ::core::clone::Clone for IPSEC_TRAFFIC0 { clone(&self) -> Self6643 fn clone(&self) -> Self { 6644 *self 6645 } 6646 } 6647 #[repr(C)] 6648 pub union IPSEC_TRAFFIC0_0 { 6649 pub localV4Address: u32, 6650 pub localV6Address: [u8; 16], 6651 } 6652 impl ::core::marker::Copy for IPSEC_TRAFFIC0_0 {} 6653 impl ::core::clone::Clone for IPSEC_TRAFFIC0_0 { clone(&self) -> Self6654 fn clone(&self) -> Self { 6655 *self 6656 } 6657 } 6658 #[repr(C)] 6659 pub union IPSEC_TRAFFIC0_1 { 6660 pub remoteV4Address: u32, 6661 pub remoteV6Address: [u8; 16], 6662 } 6663 impl ::core::marker::Copy for IPSEC_TRAFFIC0_1 {} 6664 impl ::core::clone::Clone for IPSEC_TRAFFIC0_1 { clone(&self) -> Self6665 fn clone(&self) -> Self { 6666 *self 6667 } 6668 } 6669 #[repr(C)] 6670 pub union IPSEC_TRAFFIC0_2 { 6671 pub ipsecFilterId: u64, 6672 pub tunnelPolicyId: u64, 6673 } 6674 impl ::core::marker::Copy for IPSEC_TRAFFIC0_2 {} 6675 impl ::core::clone::Clone for IPSEC_TRAFFIC0_2 { clone(&self) -> Self6676 fn clone(&self) -> Self { 6677 *self 6678 } 6679 } 6680 #[repr(C)] 6681 pub struct IPSEC_TRAFFIC1 { 6682 pub ipVersion: FWP_IP_VERSION, 6683 pub Anonymous1: IPSEC_TRAFFIC1_0, 6684 pub Anonymous2: IPSEC_TRAFFIC1_1, 6685 pub trafficType: IPSEC_TRAFFIC_TYPE, 6686 pub Anonymous3: IPSEC_TRAFFIC1_2, 6687 pub remotePort: u16, 6688 pub localPort: u16, 6689 pub ipProtocol: u8, 6690 pub localIfLuid: u64, 6691 pub realIfProfileId: u32, 6692 } 6693 impl ::core::marker::Copy for IPSEC_TRAFFIC1 {} 6694 impl ::core::clone::Clone for IPSEC_TRAFFIC1 { clone(&self) -> Self6695 fn clone(&self) -> Self { 6696 *self 6697 } 6698 } 6699 #[repr(C)] 6700 pub union IPSEC_TRAFFIC1_0 { 6701 pub localV4Address: u32, 6702 pub localV6Address: [u8; 16], 6703 } 6704 impl ::core::marker::Copy for IPSEC_TRAFFIC1_0 {} 6705 impl ::core::clone::Clone for IPSEC_TRAFFIC1_0 { clone(&self) -> Self6706 fn clone(&self) -> Self { 6707 *self 6708 } 6709 } 6710 #[repr(C)] 6711 pub union IPSEC_TRAFFIC1_1 { 6712 pub remoteV4Address: u32, 6713 pub remoteV6Address: [u8; 16], 6714 } 6715 impl ::core::marker::Copy for IPSEC_TRAFFIC1_1 {} 6716 impl ::core::clone::Clone for IPSEC_TRAFFIC1_1 { clone(&self) -> Self6717 fn clone(&self) -> Self { 6718 *self 6719 } 6720 } 6721 #[repr(C)] 6722 pub union IPSEC_TRAFFIC1_2 { 6723 pub ipsecFilterId: u64, 6724 pub tunnelPolicyId: u64, 6725 } 6726 impl ::core::marker::Copy for IPSEC_TRAFFIC1_2 {} 6727 impl ::core::clone::Clone for IPSEC_TRAFFIC1_2 { clone(&self) -> Self6728 fn clone(&self) -> Self { 6729 *self 6730 } 6731 } 6732 #[repr(C)] 6733 pub struct IPSEC_TRAFFIC_SELECTOR0_ { 6734 pub protocolId: u8, 6735 pub portStart: u16, 6736 pub portEnd: u16, 6737 pub ipVersion: FWP_IP_VERSION, 6738 pub Anonymous1: IPSEC_TRAFFIC_SELECTOR0__0, 6739 pub Anonymous2: IPSEC_TRAFFIC_SELECTOR0__1, 6740 } 6741 impl ::core::marker::Copy for IPSEC_TRAFFIC_SELECTOR0_ {} 6742 impl ::core::clone::Clone for IPSEC_TRAFFIC_SELECTOR0_ { clone(&self) -> Self6743 fn clone(&self) -> Self { 6744 *self 6745 } 6746 } 6747 #[repr(C)] 6748 pub union IPSEC_TRAFFIC_SELECTOR0__0 { 6749 pub startV4Address: u32, 6750 pub startV6Address: [u8; 16], 6751 } 6752 impl ::core::marker::Copy for IPSEC_TRAFFIC_SELECTOR0__0 {} 6753 impl ::core::clone::Clone for IPSEC_TRAFFIC_SELECTOR0__0 { clone(&self) -> Self6754 fn clone(&self) -> Self { 6755 *self 6756 } 6757 } 6758 #[repr(C)] 6759 pub union IPSEC_TRAFFIC_SELECTOR0__1 { 6760 pub endV4Address: u32, 6761 pub endV6Address: [u8; 16], 6762 } 6763 impl ::core::marker::Copy for IPSEC_TRAFFIC_SELECTOR0__1 {} 6764 impl ::core::clone::Clone for IPSEC_TRAFFIC_SELECTOR0__1 { clone(&self) -> Self6765 fn clone(&self) -> Self { 6766 *self 6767 } 6768 } 6769 #[repr(C)] 6770 pub struct IPSEC_TRAFFIC_SELECTOR_POLICY0_ { 6771 pub flags: u32, 6772 pub numLocalTrafficSelectors: u32, 6773 pub localTrafficSelectors: *mut IPSEC_TRAFFIC_SELECTOR0_, 6774 pub numRemoteTrafficSelectors: u32, 6775 pub remoteTrafficSelectors: *mut IPSEC_TRAFFIC_SELECTOR0_, 6776 } 6777 impl ::core::marker::Copy for IPSEC_TRAFFIC_SELECTOR_POLICY0_ {} 6778 impl ::core::clone::Clone for IPSEC_TRAFFIC_SELECTOR_POLICY0_ { clone(&self) -> Self6779 fn clone(&self) -> Self { 6780 *self 6781 } 6782 } 6783 #[repr(C)] 6784 pub struct IPSEC_TRAFFIC_STATISTICS0 { 6785 pub encryptedByteCount: u64, 6786 pub authenticatedAHByteCount: u64, 6787 pub authenticatedESPByteCount: u64, 6788 pub transportByteCount: u64, 6789 pub tunnelByteCount: u64, 6790 pub offloadByteCount: u64, 6791 } 6792 impl ::core::marker::Copy for IPSEC_TRAFFIC_STATISTICS0 {} 6793 impl ::core::clone::Clone for IPSEC_TRAFFIC_STATISTICS0 { clone(&self) -> Self6794 fn clone(&self) -> Self { 6795 *self 6796 } 6797 } 6798 #[repr(C)] 6799 pub struct IPSEC_TRAFFIC_STATISTICS1 { 6800 pub encryptedByteCount: u64, 6801 pub authenticatedAHByteCount: u64, 6802 pub authenticatedESPByteCount: u64, 6803 pub transportByteCount: u64, 6804 pub tunnelByteCount: u64, 6805 pub offloadByteCount: u64, 6806 pub totalSuccessfulPackets: u64, 6807 } 6808 impl ::core::marker::Copy for IPSEC_TRAFFIC_STATISTICS1 {} 6809 impl ::core::clone::Clone for IPSEC_TRAFFIC_STATISTICS1 { clone(&self) -> Self6810 fn clone(&self) -> Self { 6811 *self 6812 } 6813 } 6814 pub type IPSEC_TRAFFIC_TYPE = i32; 6815 pub const IPSEC_TRAFFIC_TYPE_TRANSPORT: IPSEC_TRAFFIC_TYPE = 0i32; 6816 pub const IPSEC_TRAFFIC_TYPE_TUNNEL: IPSEC_TRAFFIC_TYPE = 1i32; 6817 pub const IPSEC_TRAFFIC_TYPE_MAX: IPSEC_TRAFFIC_TYPE = 2i32; 6818 pub type IPSEC_TRANSFORM_TYPE = i32; 6819 pub const IPSEC_TRANSFORM_AH: IPSEC_TRANSFORM_TYPE = 1i32; 6820 pub const IPSEC_TRANSFORM_ESP_AUTH: IPSEC_TRANSFORM_TYPE = 2i32; 6821 pub const IPSEC_TRANSFORM_ESP_CIPHER: IPSEC_TRANSFORM_TYPE = 3i32; 6822 pub const IPSEC_TRANSFORM_ESP_AUTH_AND_CIPHER: IPSEC_TRANSFORM_TYPE = 4i32; 6823 pub const IPSEC_TRANSFORM_ESP_AUTH_FW: IPSEC_TRANSFORM_TYPE = 5i32; 6824 pub const IPSEC_TRANSFORM_TYPE_MAX: IPSEC_TRANSFORM_TYPE = 6i32; 6825 #[repr(C)] 6826 #[cfg(feature = "Win32_Foundation")] 6827 pub struct IPSEC_TRANSPORT_POLICY0 { 6828 pub numIpsecProposals: u32, 6829 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 6830 pub flags: IPSEC_POLICY_FLAG, 6831 pub ndAllowClearTimeoutSeconds: u32, 6832 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 6833 pub emPolicy: *mut IKEEXT_EM_POLICY0, 6834 } 6835 #[cfg(feature = "Win32_Foundation")] 6836 impl ::core::marker::Copy for IPSEC_TRANSPORT_POLICY0 {} 6837 #[cfg(feature = "Win32_Foundation")] 6838 impl ::core::clone::Clone for IPSEC_TRANSPORT_POLICY0 { clone(&self) -> Self6839 fn clone(&self) -> Self { 6840 *self 6841 } 6842 } 6843 #[repr(C)] 6844 #[cfg(feature = "Win32_Foundation")] 6845 pub struct IPSEC_TRANSPORT_POLICY1 { 6846 pub numIpsecProposals: u32, 6847 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 6848 pub flags: IPSEC_POLICY_FLAG, 6849 pub ndAllowClearTimeoutSeconds: u32, 6850 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 6851 pub emPolicy: *mut IKEEXT_EM_POLICY1, 6852 } 6853 #[cfg(feature = "Win32_Foundation")] 6854 impl ::core::marker::Copy for IPSEC_TRANSPORT_POLICY1 {} 6855 #[cfg(feature = "Win32_Foundation")] 6856 impl ::core::clone::Clone for IPSEC_TRANSPORT_POLICY1 { clone(&self) -> Self6857 fn clone(&self) -> Self { 6858 *self 6859 } 6860 } 6861 #[repr(C)] 6862 #[cfg(feature = "Win32_Foundation")] 6863 pub struct IPSEC_TRANSPORT_POLICY2 { 6864 pub numIpsecProposals: u32, 6865 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 6866 pub flags: IPSEC_POLICY_FLAG, 6867 pub ndAllowClearTimeoutSeconds: u32, 6868 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 6869 pub emPolicy: *mut IKEEXT_EM_POLICY2, 6870 } 6871 #[cfg(feature = "Win32_Foundation")] 6872 impl ::core::marker::Copy for IPSEC_TRANSPORT_POLICY2 {} 6873 #[cfg(feature = "Win32_Foundation")] 6874 impl ::core::clone::Clone for IPSEC_TRANSPORT_POLICY2 { clone(&self) -> Self6875 fn clone(&self) -> Self { 6876 *self 6877 } 6878 } 6879 #[repr(C)] 6880 pub struct IPSEC_TUNNEL_ENDPOINT0 { 6881 pub ipVersion: FWP_IP_VERSION, 6882 pub Anonymous: IPSEC_TUNNEL_ENDPOINT0_0, 6883 } 6884 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINT0 {} 6885 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINT0 { clone(&self) -> Self6886 fn clone(&self) -> Self { 6887 *self 6888 } 6889 } 6890 #[repr(C)] 6891 pub union IPSEC_TUNNEL_ENDPOINT0_0 { 6892 pub v4Address: u32, 6893 pub v6Address: [u8; 16], 6894 } 6895 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINT0_0 {} 6896 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINT0_0 { clone(&self) -> Self6897 fn clone(&self) -> Self { 6898 *self 6899 } 6900 } 6901 #[repr(C)] 6902 pub struct IPSEC_TUNNEL_ENDPOINTS0 { 6903 pub ipVersion: FWP_IP_VERSION, 6904 pub Anonymous1: IPSEC_TUNNEL_ENDPOINTS0_0, 6905 pub Anonymous2: IPSEC_TUNNEL_ENDPOINTS0_1, 6906 } 6907 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS0 {} 6908 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS0 { clone(&self) -> Self6909 fn clone(&self) -> Self { 6910 *self 6911 } 6912 } 6913 #[repr(C)] 6914 pub union IPSEC_TUNNEL_ENDPOINTS0_0 { 6915 pub localV4Address: u32, 6916 pub localV6Address: [u8; 16], 6917 } 6918 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS0_0 {} 6919 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS0_0 { clone(&self) -> Self6920 fn clone(&self) -> Self { 6921 *self 6922 } 6923 } 6924 #[repr(C)] 6925 pub union IPSEC_TUNNEL_ENDPOINTS0_1 { 6926 pub remoteV4Address: u32, 6927 pub remoteV6Address: [u8; 16], 6928 } 6929 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS0_1 {} 6930 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS0_1 { clone(&self) -> Self6931 fn clone(&self) -> Self { 6932 *self 6933 } 6934 } 6935 #[repr(C)] 6936 pub struct IPSEC_TUNNEL_ENDPOINTS1 { 6937 pub ipVersion: FWP_IP_VERSION, 6938 pub Anonymous1: IPSEC_TUNNEL_ENDPOINTS1_0, 6939 pub Anonymous2: IPSEC_TUNNEL_ENDPOINTS1_1, 6940 pub localIfLuid: u64, 6941 } 6942 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS1 {} 6943 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS1 { clone(&self) -> Self6944 fn clone(&self) -> Self { 6945 *self 6946 } 6947 } 6948 #[repr(C)] 6949 pub union IPSEC_TUNNEL_ENDPOINTS1_0 { 6950 pub localV4Address: u32, 6951 pub localV6Address: [u8; 16], 6952 } 6953 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS1_0 {} 6954 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS1_0 { clone(&self) -> Self6955 fn clone(&self) -> Self { 6956 *self 6957 } 6958 } 6959 #[repr(C)] 6960 pub union IPSEC_TUNNEL_ENDPOINTS1_1 { 6961 pub remoteV4Address: u32, 6962 pub remoteV6Address: [u8; 16], 6963 } 6964 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS1_1 {} 6965 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS1_1 { clone(&self) -> Self6966 fn clone(&self) -> Self { 6967 *self 6968 } 6969 } 6970 #[repr(C)] 6971 #[cfg(feature = "Win32_Foundation")] 6972 pub struct IPSEC_TUNNEL_ENDPOINTS2 { 6973 pub ipVersion: FWP_IP_VERSION, 6974 pub Anonymous1: IPSEC_TUNNEL_ENDPOINTS2_0, 6975 pub Anonymous2: IPSEC_TUNNEL_ENDPOINTS2_1, 6976 pub localIfLuid: u64, 6977 pub remoteFqdn: super::super::Foundation::PWSTR, 6978 pub numAddresses: u32, 6979 pub remoteAddresses: *mut IPSEC_TUNNEL_ENDPOINT0, 6980 } 6981 #[cfg(feature = "Win32_Foundation")] 6982 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS2 {} 6983 #[cfg(feature = "Win32_Foundation")] 6984 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS2 { clone(&self) -> Self6985 fn clone(&self) -> Self { 6986 *self 6987 } 6988 } 6989 #[repr(C)] 6990 #[cfg(feature = "Win32_Foundation")] 6991 pub union IPSEC_TUNNEL_ENDPOINTS2_0 { 6992 pub localV4Address: u32, 6993 pub localV6Address: [u8; 16], 6994 } 6995 #[cfg(feature = "Win32_Foundation")] 6996 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS2_0 {} 6997 #[cfg(feature = "Win32_Foundation")] 6998 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS2_0 { clone(&self) -> Self6999 fn clone(&self) -> Self { 7000 *self 7001 } 7002 } 7003 #[repr(C)] 7004 #[cfg(feature = "Win32_Foundation")] 7005 pub union IPSEC_TUNNEL_ENDPOINTS2_1 { 7006 pub remoteV4Address: u32, 7007 pub remoteV6Address: [u8; 16], 7008 } 7009 #[cfg(feature = "Win32_Foundation")] 7010 impl ::core::marker::Copy for IPSEC_TUNNEL_ENDPOINTS2_1 {} 7011 #[cfg(feature = "Win32_Foundation")] 7012 impl ::core::clone::Clone for IPSEC_TUNNEL_ENDPOINTS2_1 { clone(&self) -> Self7013 fn clone(&self) -> Self { 7014 *self 7015 } 7016 } 7017 #[repr(C)] 7018 #[cfg(feature = "Win32_Foundation")] 7019 pub struct IPSEC_TUNNEL_POLICY0 { 7020 pub flags: IPSEC_POLICY_FLAG, 7021 pub numIpsecProposals: u32, 7022 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 7023 pub tunnelEndpoints: IPSEC_TUNNEL_ENDPOINTS0, 7024 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 7025 pub emPolicy: *mut IKEEXT_EM_POLICY0, 7026 } 7027 #[cfg(feature = "Win32_Foundation")] 7028 impl ::core::marker::Copy for IPSEC_TUNNEL_POLICY0 {} 7029 #[cfg(feature = "Win32_Foundation")] 7030 impl ::core::clone::Clone for IPSEC_TUNNEL_POLICY0 { clone(&self) -> Self7031 fn clone(&self) -> Self { 7032 *self 7033 } 7034 } 7035 #[repr(C)] 7036 #[cfg(feature = "Win32_Foundation")] 7037 pub struct IPSEC_TUNNEL_POLICY1 { 7038 pub flags: IPSEC_POLICY_FLAG, 7039 pub numIpsecProposals: u32, 7040 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 7041 pub tunnelEndpoints: IPSEC_TUNNEL_ENDPOINTS1, 7042 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 7043 pub emPolicy: *mut IKEEXT_EM_POLICY1, 7044 } 7045 #[cfg(feature = "Win32_Foundation")] 7046 impl ::core::marker::Copy for IPSEC_TUNNEL_POLICY1 {} 7047 #[cfg(feature = "Win32_Foundation")] 7048 impl ::core::clone::Clone for IPSEC_TUNNEL_POLICY1 { clone(&self) -> Self7049 fn clone(&self) -> Self { 7050 *self 7051 } 7052 } 7053 #[repr(C)] 7054 #[cfg(feature = "Win32_Foundation")] 7055 pub struct IPSEC_TUNNEL_POLICY2 { 7056 pub flags: IPSEC_POLICY_FLAG, 7057 pub numIpsecProposals: u32, 7058 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 7059 pub tunnelEndpoints: IPSEC_TUNNEL_ENDPOINTS2, 7060 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 7061 pub emPolicy: *mut IKEEXT_EM_POLICY2, 7062 pub fwdPathSaLifetime: u32, 7063 } 7064 #[cfg(feature = "Win32_Foundation")] 7065 impl ::core::marker::Copy for IPSEC_TUNNEL_POLICY2 {} 7066 #[cfg(feature = "Win32_Foundation")] 7067 impl ::core::clone::Clone for IPSEC_TUNNEL_POLICY2 { clone(&self) -> Self7068 fn clone(&self) -> Self { 7069 *self 7070 } 7071 } 7072 #[repr(C)] 7073 #[cfg(feature = "Win32_Foundation")] 7074 pub struct IPSEC_TUNNEL_POLICY3_ { 7075 pub flags: u32, 7076 pub numIpsecProposals: u32, 7077 pub ipsecProposals: *mut IPSEC_PROPOSAL0, 7078 pub tunnelEndpoints: IPSEC_TUNNEL_ENDPOINTS2, 7079 pub saIdleTimeout: IPSEC_SA_IDLE_TIMEOUT0, 7080 pub emPolicy: *mut IKEEXT_EM_POLICY2, 7081 pub fwdPathSaLifetime: u32, 7082 pub compartmentId: u32, 7083 pub numTrafficSelectorPolicy: u32, 7084 pub trafficSelectorPolicies: *mut IPSEC_TRAFFIC_SELECTOR_POLICY0_, 7085 } 7086 #[cfg(feature = "Win32_Foundation")] 7087 impl ::core::marker::Copy for IPSEC_TUNNEL_POLICY3_ {} 7088 #[cfg(feature = "Win32_Foundation")] 7089 impl ::core::clone::Clone for IPSEC_TUNNEL_POLICY3_ { clone(&self) -> Self7090 fn clone(&self) -> Self { 7091 *self 7092 } 7093 } 7094 #[repr(C)] 7095 pub struct IPSEC_V4_UDP_ENCAPSULATION0 { 7096 pub localUdpEncapPort: u16, 7097 pub remoteUdpEncapPort: u16, 7098 } 7099 impl ::core::marker::Copy for IPSEC_V4_UDP_ENCAPSULATION0 {} 7100 impl ::core::clone::Clone for IPSEC_V4_UDP_ENCAPSULATION0 { clone(&self) -> Self7101 fn clone(&self) -> Self { 7102 *self 7103 } 7104 } 7105 #[repr(C)] 7106 pub struct IPSEC_VIRTUAL_IF_TUNNEL_INFO0 { 7107 pub virtualIfTunnelId: u64, 7108 pub trafficSelectorId: u64, 7109 } 7110 impl ::core::marker::Copy for IPSEC_VIRTUAL_IF_TUNNEL_INFO0 {} 7111 impl ::core::clone::Clone for IPSEC_VIRTUAL_IF_TUNNEL_INFO0 { clone(&self) -> Self7112 fn clone(&self) -> Self { 7113 *self 7114 } 7115 } 7116 #[repr(C, packed(1))] 7117 pub struct IPTLS_METADATA { 7118 pub SequenceNumber: u64, 7119 } 7120 impl ::core::marker::Copy for IPTLS_METADATA {} 7121 impl ::core::clone::Clone for IPTLS_METADATA { clone(&self) -> Self7122 fn clone(&self) -> Self { 7123 *self 7124 } 7125 } 7126 #[repr(C)] 7127 #[cfg(feature = "Win32_Networking_WinSock")] 7128 pub struct IPV4_HEADER { 7129 pub Anonymous1: IPV4_HEADER_0, 7130 pub Anonymous2: IPV4_HEADER_1, 7131 pub TotalLength: u16, 7132 pub Identification: u16, 7133 pub Anonymous3: IPV4_HEADER_2, 7134 pub TimeToLive: u8, 7135 pub Protocol: u8, 7136 pub HeaderChecksum: u16, 7137 pub SourceAddress: super::super::Networking::WinSock::IN_ADDR, 7138 pub DestinationAddress: super::super::Networking::WinSock::IN_ADDR, 7139 } 7140 #[cfg(feature = "Win32_Networking_WinSock")] 7141 impl ::core::marker::Copy for IPV4_HEADER {} 7142 #[cfg(feature = "Win32_Networking_WinSock")] 7143 impl ::core::clone::Clone for IPV4_HEADER { clone(&self) -> Self7144 fn clone(&self) -> Self { 7145 *self 7146 } 7147 } 7148 #[repr(C)] 7149 #[cfg(feature = "Win32_Networking_WinSock")] 7150 pub union IPV4_HEADER_0 { 7151 pub VersionAndHeaderLength: u8, 7152 pub Anonymous: IPV4_HEADER_0_0, 7153 } 7154 #[cfg(feature = "Win32_Networking_WinSock")] 7155 impl ::core::marker::Copy for IPV4_HEADER_0 {} 7156 #[cfg(feature = "Win32_Networking_WinSock")] 7157 impl ::core::clone::Clone for IPV4_HEADER_0 { clone(&self) -> Self7158 fn clone(&self) -> Self { 7159 *self 7160 } 7161 } 7162 #[repr(C)] 7163 #[cfg(feature = "Win32_Networking_WinSock")] 7164 pub struct IPV4_HEADER_0_0 { 7165 pub _bitfield: u8, 7166 } 7167 #[cfg(feature = "Win32_Networking_WinSock")] 7168 impl ::core::marker::Copy for IPV4_HEADER_0_0 {} 7169 #[cfg(feature = "Win32_Networking_WinSock")] 7170 impl ::core::clone::Clone for IPV4_HEADER_0_0 { clone(&self) -> Self7171 fn clone(&self) -> Self { 7172 *self 7173 } 7174 } 7175 #[repr(C)] 7176 #[cfg(feature = "Win32_Networking_WinSock")] 7177 pub union IPV4_HEADER_1 { 7178 pub TypeOfServiceAndEcnField: u8, 7179 pub Anonymous: IPV4_HEADER_1_0, 7180 } 7181 #[cfg(feature = "Win32_Networking_WinSock")] 7182 impl ::core::marker::Copy for IPV4_HEADER_1 {} 7183 #[cfg(feature = "Win32_Networking_WinSock")] 7184 impl ::core::clone::Clone for IPV4_HEADER_1 { clone(&self) -> Self7185 fn clone(&self) -> Self { 7186 *self 7187 } 7188 } 7189 #[repr(C)] 7190 #[cfg(feature = "Win32_Networking_WinSock")] 7191 pub struct IPV4_HEADER_1_0 { 7192 pub _bitfield: u8, 7193 } 7194 #[cfg(feature = "Win32_Networking_WinSock")] 7195 impl ::core::marker::Copy for IPV4_HEADER_1_0 {} 7196 #[cfg(feature = "Win32_Networking_WinSock")] 7197 impl ::core::clone::Clone for IPV4_HEADER_1_0 { clone(&self) -> Self7198 fn clone(&self) -> Self { 7199 *self 7200 } 7201 } 7202 #[repr(C)] 7203 #[cfg(feature = "Win32_Networking_WinSock")] 7204 pub union IPV4_HEADER_2 { 7205 pub FlagsAndOffset: u16, 7206 pub Anonymous: IPV4_HEADER_2_0, 7207 } 7208 #[cfg(feature = "Win32_Networking_WinSock")] 7209 impl ::core::marker::Copy for IPV4_HEADER_2 {} 7210 #[cfg(feature = "Win32_Networking_WinSock")] 7211 impl ::core::clone::Clone for IPV4_HEADER_2 { clone(&self) -> Self7212 fn clone(&self) -> Self { 7213 *self 7214 } 7215 } 7216 #[repr(C)] 7217 #[cfg(feature = "Win32_Networking_WinSock")] 7218 pub struct IPV4_HEADER_2_0 { 7219 pub _bitfield: u16, 7220 } 7221 #[cfg(feature = "Win32_Networking_WinSock")] 7222 impl ::core::marker::Copy for IPV4_HEADER_2_0 {} 7223 #[cfg(feature = "Win32_Networking_WinSock")] 7224 impl ::core::clone::Clone for IPV4_HEADER_2_0 { clone(&self) -> Self7225 fn clone(&self) -> Self { 7226 *self 7227 } 7228 } 7229 pub const IPV4_MAX_MINIMUM_MTU: u32 = 576u32; 7230 pub const IPV4_MINIMUM_MTU: u32 = 576u32; 7231 pub const IPV4_MIN_MINIMUM_MTU: u32 = 352u32; 7232 #[repr(C)] 7233 pub struct IPV4_OPTION_HEADER { 7234 pub Anonymous: IPV4_OPTION_HEADER_0, 7235 pub OptionLength: u8, 7236 } 7237 impl ::core::marker::Copy for IPV4_OPTION_HEADER {} 7238 impl ::core::clone::Clone for IPV4_OPTION_HEADER { clone(&self) -> Self7239 fn clone(&self) -> Self { 7240 *self 7241 } 7242 } 7243 #[repr(C)] 7244 pub union IPV4_OPTION_HEADER_0 { 7245 pub OptionType: u8, 7246 pub Anonymous: IPV4_OPTION_HEADER_0_0, 7247 } 7248 impl ::core::marker::Copy for IPV4_OPTION_HEADER_0 {} 7249 impl ::core::clone::Clone for IPV4_OPTION_HEADER_0 { clone(&self) -> Self7250 fn clone(&self) -> Self { 7251 *self 7252 } 7253 } 7254 #[repr(C)] 7255 pub struct IPV4_OPTION_HEADER_0_0 { 7256 pub _bitfield: u8, 7257 } 7258 impl ::core::marker::Copy for IPV4_OPTION_HEADER_0_0 {} 7259 impl ::core::clone::Clone for IPV4_OPTION_HEADER_0_0 { clone(&self) -> Self7260 fn clone(&self) -> Self { 7261 *self 7262 } 7263 } 7264 pub type IPV4_OPTION_TYPE = i32; 7265 pub const IP_OPT_EOL: IPV4_OPTION_TYPE = 0i32; 7266 pub const IP_OPT_NOP: IPV4_OPTION_TYPE = 1i32; 7267 pub const IP_OPT_SECURITY: IPV4_OPTION_TYPE = 130i32; 7268 pub const IP_OPT_LSRR: IPV4_OPTION_TYPE = 131i32; 7269 pub const IP_OPT_TS: IPV4_OPTION_TYPE = 68i32; 7270 pub const IP_OPT_RR: IPV4_OPTION_TYPE = 7i32; 7271 pub const IP_OPT_SSRR: IPV4_OPTION_TYPE = 137i32; 7272 pub const IP_OPT_SID: IPV4_OPTION_TYPE = 136i32; 7273 pub const IP_OPT_ROUTER_ALERT: IPV4_OPTION_TYPE = 148i32; 7274 pub const IP_OPT_MULTIDEST: IPV4_OPTION_TYPE = 149i32; 7275 #[repr(C)] 7276 pub struct IPV4_ROUTING_HEADER { 7277 pub OptionHeader: IPV4_OPTION_HEADER, 7278 pub Pointer: u8, 7279 } 7280 impl ::core::marker::Copy for IPV4_ROUTING_HEADER {} 7281 impl ::core::clone::Clone for IPV4_ROUTING_HEADER { clone(&self) -> Self7282 fn clone(&self) -> Self { 7283 *self 7284 } 7285 } 7286 #[repr(C)] 7287 pub struct IPV4_TIMESTAMP_OPTION { 7288 pub OptionHeader: IPV4_OPTION_HEADER, 7289 pub Pointer: u8, 7290 pub Anonymous: IPV4_TIMESTAMP_OPTION_0, 7291 } 7292 impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION {} 7293 impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION { clone(&self) -> Self7294 fn clone(&self) -> Self { 7295 *self 7296 } 7297 } 7298 #[repr(C)] 7299 pub union IPV4_TIMESTAMP_OPTION_0 { 7300 pub FlagsOverflow: u8, 7301 pub Anonymous: IPV4_TIMESTAMP_OPTION_0_0, 7302 } 7303 impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION_0 {} 7304 impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION_0 { clone(&self) -> Self7305 fn clone(&self) -> Self { 7306 *self 7307 } 7308 } 7309 #[repr(C)] 7310 pub struct IPV4_TIMESTAMP_OPTION_0_0 { 7311 pub _bitfield: u8, 7312 } 7313 impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION_0_0 {} 7314 impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION_0_0 { clone(&self) -> Self7315 fn clone(&self) -> Self { 7316 *self 7317 } 7318 } 7319 pub const IPV4_VERSION: u32 = 4u32; 7320 pub const IPV6_ECN_MASK: u32 = 12288u32; 7321 pub const IPV6_ECN_SHIFT: u32 = 12u32; 7322 #[repr(C)] 7323 pub struct IPV6_EXTENSION_HEADER { 7324 pub NextHeader: u8, 7325 pub Length: u8, 7326 } 7327 impl ::core::marker::Copy for IPV6_EXTENSION_HEADER {} 7328 impl ::core::clone::Clone for IPV6_EXTENSION_HEADER { clone(&self) -> Self7329 fn clone(&self) -> Self { 7330 *self 7331 } 7332 } 7333 pub const IPV6_FLOW_LABEL_MASK: u32 = 4294905600u32; 7334 #[repr(C)] 7335 pub struct IPV6_FRAGMENT_HEADER { 7336 pub NextHeader: u8, 7337 pub Reserved: u8, 7338 pub Anonymous: IPV6_FRAGMENT_HEADER_0, 7339 pub Id: u32, 7340 } 7341 impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER {} 7342 impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER { clone(&self) -> Self7343 fn clone(&self) -> Self { 7344 *self 7345 } 7346 } 7347 #[repr(C)] 7348 pub union IPV6_FRAGMENT_HEADER_0 { 7349 pub Anonymous: IPV6_FRAGMENT_HEADER_0_0, 7350 pub OffsetAndFlags: u16, 7351 } 7352 impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER_0 {} 7353 impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER_0 { clone(&self) -> Self7354 fn clone(&self) -> Self { 7355 *self 7356 } 7357 } 7358 #[repr(C)] 7359 pub struct IPV6_FRAGMENT_HEADER_0_0 { 7360 pub _bitfield: u16, 7361 } 7362 impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER_0_0 {} 7363 impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER_0_0 { clone(&self) -> Self7364 fn clone(&self) -> Self { 7365 *self 7366 } 7367 } 7368 pub const IPV6_FULL_TRAFFIC_CLASS_MASK: u32 = 61455u32; 7369 #[repr(C)] 7370 #[cfg(feature = "Win32_Networking_WinSock")] 7371 pub struct IPV6_HEADER { 7372 pub Anonymous: IPV6_HEADER_0, 7373 pub PayloadLength: u16, 7374 pub NextHeader: u8, 7375 pub HopLimit: u8, 7376 pub SourceAddress: super::super::Networking::WinSock::IN6_ADDR, 7377 pub DestinationAddress: super::super::Networking::WinSock::IN6_ADDR, 7378 } 7379 #[cfg(feature = "Win32_Networking_WinSock")] 7380 impl ::core::marker::Copy for IPV6_HEADER {} 7381 #[cfg(feature = "Win32_Networking_WinSock")] 7382 impl ::core::clone::Clone for IPV6_HEADER { clone(&self) -> Self7383 fn clone(&self) -> Self { 7384 *self 7385 } 7386 } 7387 #[repr(C)] 7388 #[cfg(feature = "Win32_Networking_WinSock")] 7389 pub union IPV6_HEADER_0 { 7390 pub VersionClassFlow: u32, 7391 pub Anonymous: IPV6_HEADER_0_0, 7392 } 7393 #[cfg(feature = "Win32_Networking_WinSock")] 7394 impl ::core::marker::Copy for IPV6_HEADER_0 {} 7395 #[cfg(feature = "Win32_Networking_WinSock")] 7396 impl ::core::clone::Clone for IPV6_HEADER_0 { clone(&self) -> Self7397 fn clone(&self) -> Self { 7398 *self 7399 } 7400 } 7401 #[repr(C)] 7402 #[cfg(feature = "Win32_Networking_WinSock")] 7403 pub struct IPV6_HEADER_0_0 { 7404 pub _bitfield: u32, 7405 } 7406 #[cfg(feature = "Win32_Networking_WinSock")] 7407 impl ::core::marker::Copy for IPV6_HEADER_0_0 {} 7408 #[cfg(feature = "Win32_Networking_WinSock")] 7409 impl ::core::clone::Clone for IPV6_HEADER_0_0 { clone(&self) -> Self7410 fn clone(&self) -> Self { 7411 *self 7412 } 7413 } 7414 pub const IPV6_MINIMUM_MTU: u32 = 1280u32; 7415 #[repr(C)] 7416 pub union IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { 7417 pub Anonymous: IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0, 7418 pub Value: u32, 7419 } 7420 impl ::core::marker::Copy for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS {} 7421 impl ::core::clone::Clone for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { clone(&self) -> Self7422 fn clone(&self) -> Self { 7423 *self 7424 } 7425 } 7426 #[repr(C)] 7427 pub struct IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { 7428 pub _bitfield: u8, 7429 pub Reserved2: [u8; 3], 7430 } 7431 impl ::core::marker::Copy for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 {} 7432 impl ::core::clone::Clone for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { clone(&self) -> Self7433 fn clone(&self) -> Self { 7434 *self 7435 } 7436 } 7437 #[repr(C)] 7438 pub struct IPV6_OPTION_HEADER { 7439 pub Type: u8, 7440 pub DataLength: u8, 7441 } 7442 impl ::core::marker::Copy for IPV6_OPTION_HEADER {} 7443 impl ::core::clone::Clone for IPV6_OPTION_HEADER { clone(&self) -> Self7444 fn clone(&self) -> Self { 7445 *self 7446 } 7447 } 7448 #[repr(C)] 7449 pub struct IPV6_OPTION_JUMBOGRAM { 7450 pub Header: IPV6_OPTION_HEADER, 7451 pub JumbogramLength: [u8; 4], 7452 } 7453 impl ::core::marker::Copy for IPV6_OPTION_JUMBOGRAM {} 7454 impl ::core::clone::Clone for IPV6_OPTION_JUMBOGRAM { clone(&self) -> Self7455 fn clone(&self) -> Self { 7456 *self 7457 } 7458 } 7459 #[repr(C)] 7460 pub struct IPV6_OPTION_ROUTER_ALERT { 7461 pub Header: IPV6_OPTION_HEADER, 7462 pub Value: [u8; 2], 7463 } 7464 impl ::core::marker::Copy for IPV6_OPTION_ROUTER_ALERT {} 7465 impl ::core::clone::Clone for IPV6_OPTION_ROUTER_ALERT { clone(&self) -> Self7466 fn clone(&self) -> Self { 7467 *self 7468 } 7469 } 7470 pub type IPV6_OPTION_TYPE = i32; 7471 pub const IP6OPT_PAD1: IPV6_OPTION_TYPE = 0i32; 7472 pub const IP6OPT_PADN: IPV6_OPTION_TYPE = 1i32; 7473 pub const IP6OPT_TUNNEL_LIMIT: IPV6_OPTION_TYPE = 4i32; 7474 pub const IP6OPT_ROUTER_ALERT: IPV6_OPTION_TYPE = 5i32; 7475 pub const IP6OPT_JUMBO: IPV6_OPTION_TYPE = 194i32; 7476 pub const IP6OPT_NSAP_ADDR: IPV6_OPTION_TYPE = 195i32; 7477 #[repr(C)] 7478 pub union IPV6_ROUTER_ADVERTISEMENT_FLAGS { 7479 pub Anonymous: IPV6_ROUTER_ADVERTISEMENT_FLAGS_0, 7480 pub Value: u8, 7481 } 7482 impl ::core::marker::Copy for IPV6_ROUTER_ADVERTISEMENT_FLAGS {} 7483 impl ::core::clone::Clone for IPV6_ROUTER_ADVERTISEMENT_FLAGS { clone(&self) -> Self7484 fn clone(&self) -> Self { 7485 *self 7486 } 7487 } 7488 #[repr(C)] 7489 pub struct IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { 7490 pub _bitfield: u8, 7491 } 7492 impl ::core::marker::Copy for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 {} 7493 impl ::core::clone::Clone for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { clone(&self) -> Self7494 fn clone(&self) -> Self { 7495 *self 7496 } 7497 } 7498 #[repr(C)] 7499 pub struct IPV6_ROUTING_HEADER { 7500 pub NextHeader: u8, 7501 pub Length: u8, 7502 pub RoutingType: u8, 7503 pub SegmentsLeft: u8, 7504 pub Reserved: [u8; 4], 7505 } 7506 impl ::core::marker::Copy for IPV6_ROUTING_HEADER {} 7507 impl ::core::clone::Clone for IPV6_ROUTING_HEADER { clone(&self) -> Self7508 fn clone(&self) -> Self { 7509 *self 7510 } 7511 } 7512 pub const IPV6_TRAFFIC_CLASS_MASK: u32 = 49167u32; 7513 pub const IPV6_VERSION: u32 = 96u32; 7514 pub type IP_OPTION_TIMESTAMP_FLAGS = i32; 7515 pub const IP_OPTION_TIMESTAMP_ONLY: IP_OPTION_TIMESTAMP_FLAGS = 0i32; 7516 pub const IP_OPTION_TIMESTAMP_ADDRESS: IP_OPTION_TIMESTAMP_FLAGS = 1i32; 7517 pub const IP_OPTION_TIMESTAMP_SPECIFIC_ADDRESS: IP_OPTION_TIMESTAMP_FLAGS = 3i32; 7518 pub const IP_VER_MASK: u32 = 240u32; 7519 pub const MAX_IPV4_HLEN: u32 = 60u32; 7520 pub const MAX_IPV4_PACKET: u32 = 65535u32; 7521 pub const MAX_IPV6_PAYLOAD: u32 = 65535u32; 7522 #[repr(C)] 7523 #[cfg(feature = "Win32_Networking_WinSock")] 7524 pub struct MLDV2_QUERY_HEADER { 7525 pub IcmpHeader: ICMP_HEADER, 7526 pub Anonymous1: MLDV2_QUERY_HEADER_0, 7527 pub Reserved: u16, 7528 pub MulticastAddress: super::super::Networking::WinSock::IN6_ADDR, 7529 pub _bitfield: u8, 7530 pub Anonymous2: MLDV2_QUERY_HEADER_1, 7531 pub SourceCount: u16, 7532 } 7533 #[cfg(feature = "Win32_Networking_WinSock")] 7534 impl ::core::marker::Copy for MLDV2_QUERY_HEADER {} 7535 #[cfg(feature = "Win32_Networking_WinSock")] 7536 impl ::core::clone::Clone for MLDV2_QUERY_HEADER { clone(&self) -> Self7537 fn clone(&self) -> Self { 7538 *self 7539 } 7540 } 7541 #[repr(C)] 7542 #[cfg(feature = "Win32_Networking_WinSock")] 7543 pub union MLDV2_QUERY_HEADER_0 { 7544 pub MaxRespCode: u16, 7545 pub Anonymous: MLDV2_QUERY_HEADER_0_0, 7546 } 7547 #[cfg(feature = "Win32_Networking_WinSock")] 7548 impl ::core::marker::Copy for MLDV2_QUERY_HEADER_0 {} 7549 #[cfg(feature = "Win32_Networking_WinSock")] 7550 impl ::core::clone::Clone for MLDV2_QUERY_HEADER_0 { clone(&self) -> Self7551 fn clone(&self) -> Self { 7552 *self 7553 } 7554 } 7555 #[repr(C)] 7556 #[cfg(feature = "Win32_Networking_WinSock")] 7557 pub struct MLDV2_QUERY_HEADER_0_0 { 7558 pub _bitfield: u16, 7559 } 7560 #[cfg(feature = "Win32_Networking_WinSock")] 7561 impl ::core::marker::Copy for MLDV2_QUERY_HEADER_0_0 {} 7562 #[cfg(feature = "Win32_Networking_WinSock")] 7563 impl ::core::clone::Clone for MLDV2_QUERY_HEADER_0_0 { clone(&self) -> Self7564 fn clone(&self) -> Self { 7565 *self 7566 } 7567 } 7568 #[repr(C)] 7569 #[cfg(feature = "Win32_Networking_WinSock")] 7570 pub union MLDV2_QUERY_HEADER_1 { 7571 pub QueriersQueryInterfaceCode: u8, 7572 pub Anonymous: MLDV2_QUERY_HEADER_1_0, 7573 } 7574 #[cfg(feature = "Win32_Networking_WinSock")] 7575 impl ::core::marker::Copy for MLDV2_QUERY_HEADER_1 {} 7576 #[cfg(feature = "Win32_Networking_WinSock")] 7577 impl ::core::clone::Clone for MLDV2_QUERY_HEADER_1 { clone(&self) -> Self7578 fn clone(&self) -> Self { 7579 *self 7580 } 7581 } 7582 #[repr(C)] 7583 #[cfg(feature = "Win32_Networking_WinSock")] 7584 pub struct MLDV2_QUERY_HEADER_1_0 { 7585 pub _bitfield: u8, 7586 } 7587 #[cfg(feature = "Win32_Networking_WinSock")] 7588 impl ::core::marker::Copy for MLDV2_QUERY_HEADER_1_0 {} 7589 #[cfg(feature = "Win32_Networking_WinSock")] 7590 impl ::core::clone::Clone for MLDV2_QUERY_HEADER_1_0 { clone(&self) -> Self7591 fn clone(&self) -> Self { 7592 *self 7593 } 7594 } 7595 #[repr(C)] 7596 pub struct MLDV2_REPORT_HEADER { 7597 pub IcmpHeader: ICMP_HEADER, 7598 pub Reserved: u16, 7599 pub RecordCount: u16, 7600 } 7601 impl ::core::marker::Copy for MLDV2_REPORT_HEADER {} 7602 impl ::core::clone::Clone for MLDV2_REPORT_HEADER { clone(&self) -> Self7603 fn clone(&self) -> Self { 7604 *self 7605 } 7606 } 7607 #[repr(C)] 7608 #[cfg(feature = "Win32_Networking_WinSock")] 7609 pub struct MLDV2_REPORT_RECORD_HEADER { 7610 pub Type: u8, 7611 pub AuxillaryDataLength: u8, 7612 pub SourceCount: u16, 7613 pub MulticastAddress: super::super::Networking::WinSock::IN6_ADDR, 7614 } 7615 #[cfg(feature = "Win32_Networking_WinSock")] 7616 impl ::core::marker::Copy for MLDV2_REPORT_RECORD_HEADER {} 7617 #[cfg(feature = "Win32_Networking_WinSock")] 7618 impl ::core::clone::Clone for MLDV2_REPORT_RECORD_HEADER { clone(&self) -> Self7619 fn clone(&self) -> Self { 7620 *self 7621 } 7622 } 7623 #[repr(C)] 7624 #[cfg(feature = "Win32_Networking_WinSock")] 7625 pub struct MLD_HEADER { 7626 pub IcmpHeader: ICMP_HEADER, 7627 pub MaxRespTime: u16, 7628 pub Reserved: u16, 7629 pub MulticastAddress: super::super::Networking::WinSock::IN6_ADDR, 7630 } 7631 #[cfg(feature = "Win32_Networking_WinSock")] 7632 impl ::core::marker::Copy for MLD_HEADER {} 7633 #[cfg(feature = "Win32_Networking_WinSock")] 7634 impl ::core::clone::Clone for MLD_HEADER { clone(&self) -> Self7635 fn clone(&self) -> Self { 7636 *self 7637 } 7638 } 7639 pub type MLD_MAX_RESP_CODE_TYPE = i32; 7640 pub const MLD_MAX_RESP_CODE_TYPE_NORMAL: MLD_MAX_RESP_CODE_TYPE = 0i32; 7641 pub const MLD_MAX_RESP_CODE_TYPE_FLOAT: MLD_MAX_RESP_CODE_TYPE = 1i32; 7642 pub const ND_NA_FLAG_OVERRIDE: u32 = 536870912u32; 7643 pub const ND_NA_FLAG_ROUTER: u32 = 2147483648u32; 7644 pub const ND_NA_FLAG_SOLICITED: u32 = 1073741824u32; 7645 pub type ND_OPTION_TYPE = i32; 7646 pub const ND_OPT_SOURCE_LINKADDR: ND_OPTION_TYPE = 1i32; 7647 pub const ND_OPT_TARGET_LINKADDR: ND_OPTION_TYPE = 2i32; 7648 pub const ND_OPT_PREFIX_INFORMATION: ND_OPTION_TYPE = 3i32; 7649 pub const ND_OPT_REDIRECTED_HEADER: ND_OPTION_TYPE = 4i32; 7650 pub const ND_OPT_MTU: ND_OPTION_TYPE = 5i32; 7651 pub const ND_OPT_NBMA_SHORTCUT_LIMIT: ND_OPTION_TYPE = 6i32; 7652 pub const ND_OPT_ADVERTISEMENT_INTERVAL: ND_OPTION_TYPE = 7i32; 7653 pub const ND_OPT_HOME_AGENT_INFORMATION: ND_OPTION_TYPE = 8i32; 7654 pub const ND_OPT_SOURCE_ADDR_LIST: ND_OPTION_TYPE = 9i32; 7655 pub const ND_OPT_TARGET_ADDR_LIST: ND_OPTION_TYPE = 10i32; 7656 pub const ND_OPT_ROUTE_INFO: ND_OPTION_TYPE = 24i32; 7657 pub const ND_OPT_RDNSS: ND_OPTION_TYPE = 25i32; 7658 pub const ND_OPT_DNSSL: ND_OPTION_TYPE = 31i32; 7659 pub const ND_OPT_DNSSL_MIN_LEN: u32 = 16u32; 7660 pub const ND_OPT_PI_FLAG_AUTO: u32 = 64u32; 7661 pub const ND_OPT_PI_FLAG_ONLINK: u32 = 128u32; 7662 pub const ND_OPT_PI_FLAG_ROUTE: u32 = 1u32; 7663 pub const ND_OPT_PI_FLAG_ROUTER_ADDR: u32 = 32u32; 7664 pub const ND_OPT_PI_FLAG_SITE_PREFIX: u32 = 16u32; 7665 pub const ND_OPT_RDNSS_MIN_LEN: u32 = 24u32; 7666 pub const ND_OPT_RI_FLAG_PREFERENCE: u32 = 24u32; 7667 pub const ND_RA_FLAG_HOME_AGENT: u32 = 32u32; 7668 pub const ND_RA_FLAG_MANAGED: u32 = 128u32; 7669 pub const ND_RA_FLAG_OTHER: u32 = 64u32; 7670 pub const ND_RA_FLAG_PREFERENCE: u32 = 24u32; 7671 #[repr(C)] 7672 #[cfg(feature = "Win32_Foundation")] 7673 pub struct NPI_MODULEID { 7674 pub Length: u16, 7675 pub Type: NPI_MODULEID_TYPE, 7676 pub Anonymous: NPI_MODULEID_0, 7677 } 7678 #[cfg(feature = "Win32_Foundation")] 7679 impl ::core::marker::Copy for NPI_MODULEID {} 7680 #[cfg(feature = "Win32_Foundation")] 7681 impl ::core::clone::Clone for NPI_MODULEID { clone(&self) -> Self7682 fn clone(&self) -> Self { 7683 *self 7684 } 7685 } 7686 #[repr(C)] 7687 #[cfg(feature = "Win32_Foundation")] 7688 pub union NPI_MODULEID_0 { 7689 pub Guid: ::windows_sys::core::GUID, 7690 pub IfLuid: super::super::Foundation::LUID, 7691 } 7692 #[cfg(feature = "Win32_Foundation")] 7693 impl ::core::marker::Copy for NPI_MODULEID_0 {} 7694 #[cfg(feature = "Win32_Foundation")] 7695 impl ::core::clone::Clone for NPI_MODULEID_0 { clone(&self) -> Self7696 fn clone(&self) -> Self { 7697 *self 7698 } 7699 } 7700 pub type NPI_MODULEID_TYPE = i32; 7701 pub const MIT_GUID: NPI_MODULEID_TYPE = 1i32; 7702 pub const MIT_IF_LUID: NPI_MODULEID_TYPE = 2i32; 7703 pub const SIZEOF_IP_OPT_ROUTERALERT: u32 = 4u32; 7704 pub const SIZEOF_IP_OPT_ROUTING_HEADER: u32 = 3u32; 7705 pub const SIZEOF_IP_OPT_SECURITY: u32 = 11u32; 7706 pub const SIZEOF_IP_OPT_STREAMIDENTIFIER: u32 = 4u32; 7707 pub const SIZEOF_IP_OPT_TIMESTAMP_HEADER: u32 = 4u32; 7708 pub const SNAP_CONTROL: u32 = 3u32; 7709 pub const SNAP_DSAP: u32 = 170u32; 7710 #[repr(C)] 7711 pub struct SNAP_HEADER { 7712 pub Dsap: u8, 7713 pub Ssap: u8, 7714 pub Control: u8, 7715 pub Oui: [u8; 3], 7716 pub Type: u16, 7717 } 7718 impl ::core::marker::Copy for SNAP_HEADER {} 7719 impl ::core::clone::Clone for SNAP_HEADER { clone(&self) -> Self7720 fn clone(&self) -> Self { 7721 *self 7722 } 7723 } 7724 pub const SNAP_OUI: u32 = 0u32; 7725 pub const SNAP_SSAP: u32 = 170u32; 7726 pub const TH_ACK: u32 = 16u32; 7727 pub const TH_CWR: u32 = 128u32; 7728 pub const TH_ECE: u32 = 64u32; 7729 pub const TH_FIN: u32 = 1u32; 7730 pub const TH_OPT_EOL: u32 = 0u32; 7731 pub const TH_OPT_FASTOPEN: u32 = 34u32; 7732 pub const TH_OPT_MSS: u32 = 2u32; 7733 pub const TH_OPT_NOP: u32 = 1u32; 7734 pub const TH_OPT_SACK: u32 = 5u32; 7735 pub const TH_OPT_SACK_PERMITTED: u32 = 4u32; 7736 pub const TH_OPT_TS: u32 = 8u32; 7737 pub const TH_OPT_WS: u32 = 3u32; 7738 pub const TH_PSH: u32 = 8u32; 7739 pub const TH_RST: u32 = 4u32; 7740 pub const TH_SYN: u32 = 2u32; 7741 pub const TH_URG: u32 = 32u32; 7742 pub type TUNNEL_SUB_TYPE = i32; 7743 pub const TUNNEL_SUB_TYPE_NONE: TUNNEL_SUB_TYPE = 0i32; 7744 pub const TUNNEL_SUB_TYPE_CP: TUNNEL_SUB_TYPE = 1i32; 7745 pub const TUNNEL_SUB_TYPE_IPTLS: TUNNEL_SUB_TYPE = 2i32; 7746 pub const TUNNEL_SUB_TYPE_HA: TUNNEL_SUB_TYPE = 3i32; 7747 #[repr(C)] 7748 pub struct VLAN_TAG { 7749 pub Anonymous: VLAN_TAG_0, 7750 pub Type: u16, 7751 } 7752 impl ::core::marker::Copy for VLAN_TAG {} 7753 impl ::core::clone::Clone for VLAN_TAG { clone(&self) -> Self7754 fn clone(&self) -> Self { 7755 *self 7756 } 7757 } 7758 #[repr(C)] 7759 pub union VLAN_TAG_0 { 7760 pub Tag: u16, 7761 pub Anonymous: VLAN_TAG_0_0, 7762 } 7763 impl ::core::marker::Copy for VLAN_TAG_0 {} 7764 impl ::core::clone::Clone for VLAN_TAG_0 { clone(&self) -> Self7765 fn clone(&self) -> Self { 7766 *self 7767 } 7768 } 7769 #[repr(C)] 7770 pub struct VLAN_TAG_0_0 { 7771 pub _bitfield: u16, 7772 } 7773 impl ::core::marker::Copy for VLAN_TAG_0_0 {} 7774 impl ::core::clone::Clone for VLAN_TAG_0_0 { clone(&self) -> Self7775 fn clone(&self) -> Self { 7776 *self 7777 } 7778 } 7779 pub const _BIG_ENDIAN: u32 = 4321u32; 7780 pub const _LITTLE_ENDIAN: u32 = 1234u32; 7781 pub const _PDP_ENDIAN: u32 = 3412u32; 7782 #[repr(C)] 7783 #[cfg(feature = "Win32_Networking_WinSock")] 7784 pub struct nd_neighbor_advert { 7785 pub nd_na_hdr: ICMP_MESSAGE, 7786 pub nd_na_target: super::super::Networking::WinSock::IN6_ADDR, 7787 } 7788 #[cfg(feature = "Win32_Networking_WinSock")] 7789 impl ::core::marker::Copy for nd_neighbor_advert {} 7790 #[cfg(feature = "Win32_Networking_WinSock")] 7791 impl ::core::clone::Clone for nd_neighbor_advert { clone(&self) -> Self7792 fn clone(&self) -> Self { 7793 *self 7794 } 7795 } 7796 #[repr(C)] 7797 #[cfg(feature = "Win32_Networking_WinSock")] 7798 pub struct nd_neighbor_solicit { 7799 pub nd_ns_hdr: ICMP_MESSAGE, 7800 pub nd_ns_target: super::super::Networking::WinSock::IN6_ADDR, 7801 } 7802 #[cfg(feature = "Win32_Networking_WinSock")] 7803 impl ::core::marker::Copy for nd_neighbor_solicit {} 7804 #[cfg(feature = "Win32_Networking_WinSock")] 7805 impl ::core::clone::Clone for nd_neighbor_solicit { clone(&self) -> Self7806 fn clone(&self) -> Self { 7807 *self 7808 } 7809 } 7810 #[repr(C)] 7811 pub struct nd_opt_dnssl { 7812 pub nd_opt_dnssl_type: u8, 7813 pub nd_opt_dnssl_len: u8, 7814 pub nd_opt_dnssl_reserved: u16, 7815 pub nd_opt_dnssl_lifetime: u32, 7816 } 7817 impl ::core::marker::Copy for nd_opt_dnssl {} 7818 impl ::core::clone::Clone for nd_opt_dnssl { clone(&self) -> Self7819 fn clone(&self) -> Self { 7820 *self 7821 } 7822 } 7823 #[repr(C)] 7824 pub struct nd_opt_hdr { 7825 pub nd_opt_type: u8, 7826 pub nd_opt_len: u8, 7827 } 7828 impl ::core::marker::Copy for nd_opt_hdr {} 7829 impl ::core::clone::Clone for nd_opt_hdr { clone(&self) -> Self7830 fn clone(&self) -> Self { 7831 *self 7832 } 7833 } 7834 #[repr(C)] 7835 pub struct nd_opt_mtu { 7836 pub nd_opt_mtu_type: u8, 7837 pub nd_opt_mtu_len: u8, 7838 pub nd_opt_mtu_reserved: u16, 7839 pub nd_opt_mtu_mtu: u32, 7840 } 7841 impl ::core::marker::Copy for nd_opt_mtu {} 7842 impl ::core::clone::Clone for nd_opt_mtu { clone(&self) -> Self7843 fn clone(&self) -> Self { 7844 *self 7845 } 7846 } 7847 #[repr(C)] 7848 #[cfg(feature = "Win32_Networking_WinSock")] 7849 pub struct nd_opt_prefix_info { 7850 pub nd_opt_pi_type: u8, 7851 pub nd_opt_pi_len: u8, 7852 pub nd_opt_pi_prefix_len: u8, 7853 pub Anonymous1: nd_opt_prefix_info_0, 7854 pub nd_opt_pi_valid_time: u32, 7855 pub nd_opt_pi_preferred_time: u32, 7856 pub Anonymous2: nd_opt_prefix_info_1, 7857 pub nd_opt_pi_prefix: super::super::Networking::WinSock::IN6_ADDR, 7858 } 7859 #[cfg(feature = "Win32_Networking_WinSock")] 7860 impl ::core::marker::Copy for nd_opt_prefix_info {} 7861 #[cfg(feature = "Win32_Networking_WinSock")] 7862 impl ::core::clone::Clone for nd_opt_prefix_info { clone(&self) -> Self7863 fn clone(&self) -> Self { 7864 *self 7865 } 7866 } 7867 #[repr(C)] 7868 #[cfg(feature = "Win32_Networking_WinSock")] 7869 pub union nd_opt_prefix_info_0 { 7870 pub nd_opt_pi_flags_reserved: u8, 7871 pub Flags: nd_opt_prefix_info_0_0, 7872 } 7873 #[cfg(feature = "Win32_Networking_WinSock")] 7874 impl ::core::marker::Copy for nd_opt_prefix_info_0 {} 7875 #[cfg(feature = "Win32_Networking_WinSock")] 7876 impl ::core::clone::Clone for nd_opt_prefix_info_0 { clone(&self) -> Self7877 fn clone(&self) -> Self { 7878 *self 7879 } 7880 } 7881 #[repr(C)] 7882 #[cfg(feature = "Win32_Networking_WinSock")] 7883 pub struct nd_opt_prefix_info_0_0 { 7884 pub _bitfield: u8, 7885 } 7886 #[cfg(feature = "Win32_Networking_WinSock")] 7887 impl ::core::marker::Copy for nd_opt_prefix_info_0_0 {} 7888 #[cfg(feature = "Win32_Networking_WinSock")] 7889 impl ::core::clone::Clone for nd_opt_prefix_info_0_0 { clone(&self) -> Self7890 fn clone(&self) -> Self { 7891 *self 7892 } 7893 } 7894 #[repr(C)] 7895 #[cfg(feature = "Win32_Networking_WinSock")] 7896 pub union nd_opt_prefix_info_1 { 7897 pub nd_opt_pi_reserved2: u32, 7898 pub Anonymous: nd_opt_prefix_info_1_0, 7899 } 7900 #[cfg(feature = "Win32_Networking_WinSock")] 7901 impl ::core::marker::Copy for nd_opt_prefix_info_1 {} 7902 #[cfg(feature = "Win32_Networking_WinSock")] 7903 impl ::core::clone::Clone for nd_opt_prefix_info_1 { clone(&self) -> Self7904 fn clone(&self) -> Self { 7905 *self 7906 } 7907 } 7908 #[repr(C)] 7909 #[cfg(feature = "Win32_Networking_WinSock")] 7910 pub struct nd_opt_prefix_info_1_0 { 7911 pub nd_opt_pi_reserved3: [u8; 3], 7912 pub nd_opt_pi_site_prefix_len: u8, 7913 } 7914 #[cfg(feature = "Win32_Networking_WinSock")] 7915 impl ::core::marker::Copy for nd_opt_prefix_info_1_0 {} 7916 #[cfg(feature = "Win32_Networking_WinSock")] 7917 impl ::core::clone::Clone for nd_opt_prefix_info_1_0 { clone(&self) -> Self7918 fn clone(&self) -> Self { 7919 *self 7920 } 7921 } 7922 #[repr(C)] 7923 pub struct nd_opt_rd_hdr { 7924 pub nd_opt_rh_type: u8, 7925 pub nd_opt_rh_len: u8, 7926 pub nd_opt_rh_reserved1: u16, 7927 pub nd_opt_rh_reserved2: u32, 7928 } 7929 impl ::core::marker::Copy for nd_opt_rd_hdr {} 7930 impl ::core::clone::Clone for nd_opt_rd_hdr { clone(&self) -> Self7931 fn clone(&self) -> Self { 7932 *self 7933 } 7934 } 7935 #[repr(C)] 7936 pub struct nd_opt_rdnss { 7937 pub nd_opt_rdnss_type: u8, 7938 pub nd_opt_rdnss_len: u8, 7939 pub nd_opt_rdnss_reserved: u16, 7940 pub nd_opt_rdnss_lifetime: u32, 7941 } 7942 impl ::core::marker::Copy for nd_opt_rdnss {} 7943 impl ::core::clone::Clone for nd_opt_rdnss { clone(&self) -> Self7944 fn clone(&self) -> Self { 7945 *self 7946 } 7947 } 7948 #[repr(C)] 7949 #[cfg(feature = "Win32_Networking_WinSock")] 7950 pub struct nd_opt_route_info { 7951 pub nd_opt_ri_type: u8, 7952 pub nd_opt_ri_len: u8, 7953 pub nd_opt_ri_prefix_len: u8, 7954 pub Anonymous: nd_opt_route_info_0, 7955 pub nd_opt_ri_route_lifetime: u32, 7956 pub nd_opt_ri_prefix: super::super::Networking::WinSock::IN6_ADDR, 7957 } 7958 #[cfg(feature = "Win32_Networking_WinSock")] 7959 impl ::core::marker::Copy for nd_opt_route_info {} 7960 #[cfg(feature = "Win32_Networking_WinSock")] 7961 impl ::core::clone::Clone for nd_opt_route_info { clone(&self) -> Self7962 fn clone(&self) -> Self { 7963 *self 7964 } 7965 } 7966 #[repr(C)] 7967 #[cfg(feature = "Win32_Networking_WinSock")] 7968 pub union nd_opt_route_info_0 { 7969 pub nd_opt_ri_flags_reserved: u8, 7970 pub Flags: nd_opt_route_info_0_0, 7971 } 7972 #[cfg(feature = "Win32_Networking_WinSock")] 7973 impl ::core::marker::Copy for nd_opt_route_info_0 {} 7974 #[cfg(feature = "Win32_Networking_WinSock")] 7975 impl ::core::clone::Clone for nd_opt_route_info_0 { clone(&self) -> Self7976 fn clone(&self) -> Self { 7977 *self 7978 } 7979 } 7980 #[repr(C)] 7981 #[cfg(feature = "Win32_Networking_WinSock")] 7982 pub struct nd_opt_route_info_0_0 { 7983 pub _bitfield: u8, 7984 } 7985 #[cfg(feature = "Win32_Networking_WinSock")] 7986 impl ::core::marker::Copy for nd_opt_route_info_0_0 {} 7987 #[cfg(feature = "Win32_Networking_WinSock")] 7988 impl ::core::clone::Clone for nd_opt_route_info_0_0 { clone(&self) -> Self7989 fn clone(&self) -> Self { 7990 *self 7991 } 7992 } 7993 #[repr(C)] 7994 #[cfg(feature = "Win32_Networking_WinSock")] 7995 pub struct nd_redirect { 7996 pub nd_rd_hdr: ICMP_MESSAGE, 7997 pub nd_rd_target: super::super::Networking::WinSock::IN6_ADDR, 7998 pub nd_rd_dst: super::super::Networking::WinSock::IN6_ADDR, 7999 } 8000 #[cfg(feature = "Win32_Networking_WinSock")] 8001 impl ::core::marker::Copy for nd_redirect {} 8002 #[cfg(feature = "Win32_Networking_WinSock")] 8003 impl ::core::clone::Clone for nd_redirect { clone(&self) -> Self8004 fn clone(&self) -> Self { 8005 *self 8006 } 8007 } 8008 #[repr(C)] 8009 pub struct nd_router_advert { 8010 pub nd_ra_hdr: ICMP_MESSAGE, 8011 pub nd_ra_reachable: u32, 8012 pub nd_ra_retransmit: u32, 8013 } 8014 impl ::core::marker::Copy for nd_router_advert {} 8015 impl ::core::clone::Clone for nd_router_advert { clone(&self) -> Self8016 fn clone(&self) -> Self { 8017 *self 8018 } 8019 } 8020 #[repr(C)] 8021 pub struct nd_router_solicit { 8022 pub nd_rs_hdr: ICMP_MESSAGE, 8023 } 8024 impl ::core::marker::Copy for nd_router_solicit {} 8025 impl ::core::clone::Clone for nd_router_solicit { clone(&self) -> Self8026 fn clone(&self) -> Self { 8027 *self 8028 } 8029 } 8030 #[repr(C, packed(1))] 8031 pub struct tcp_hdr { 8032 pub th_sport: u16, 8033 pub th_dport: u16, 8034 pub th_seq: u32, 8035 pub th_ack: u32, 8036 pub _bitfield: u8, 8037 pub th_flags: u8, 8038 pub th_win: u16, 8039 pub th_sum: u16, 8040 pub th_urp: u16, 8041 } 8042 impl ::core::marker::Copy for tcp_hdr {} 8043 impl ::core::clone::Clone for tcp_hdr { clone(&self) -> Self8044 fn clone(&self) -> Self { 8045 *self 8046 } 8047 } 8048 #[repr(C)] 8049 pub struct tcp_opt_fastopen { 8050 pub Kind: u8, 8051 pub Length: u8, 8052 pub Cookie: [u8; 1], 8053 } 8054 impl ::core::marker::Copy for tcp_opt_fastopen {} 8055 impl ::core::clone::Clone for tcp_opt_fastopen { clone(&self) -> Self8056 fn clone(&self) -> Self { 8057 *self 8058 } 8059 } 8060 #[repr(C, packed(1))] 8061 pub struct tcp_opt_mss { 8062 pub Kind: u8, 8063 pub Length: u8, 8064 pub Mss: u16, 8065 } 8066 impl ::core::marker::Copy for tcp_opt_mss {} 8067 impl ::core::clone::Clone for tcp_opt_mss { clone(&self) -> Self8068 fn clone(&self) -> Self { 8069 *self 8070 } 8071 } 8072 #[repr(C)] 8073 pub struct tcp_opt_sack { 8074 pub Kind: u8, 8075 pub Length: u8, 8076 pub Block: [tcp_opt_sack_0; 1], 8077 } 8078 impl ::core::marker::Copy for tcp_opt_sack {} 8079 impl ::core::clone::Clone for tcp_opt_sack { clone(&self) -> Self8080 fn clone(&self) -> Self { 8081 *self 8082 } 8083 } 8084 #[repr(C, packed(1))] 8085 pub struct tcp_opt_sack_0 { 8086 pub Left: u32, 8087 pub Right: u32, 8088 } 8089 impl ::core::marker::Copy for tcp_opt_sack_0 {} 8090 impl ::core::clone::Clone for tcp_opt_sack_0 { clone(&self) -> Self8091 fn clone(&self) -> Self { 8092 *self 8093 } 8094 } 8095 #[repr(C)] 8096 pub struct tcp_opt_sack_permitted { 8097 pub Kind: u8, 8098 pub Length: u8, 8099 } 8100 impl ::core::marker::Copy for tcp_opt_sack_permitted {} 8101 impl ::core::clone::Clone for tcp_opt_sack_permitted { clone(&self) -> Self8102 fn clone(&self) -> Self { 8103 *self 8104 } 8105 } 8106 #[repr(C, packed(1))] 8107 pub struct tcp_opt_ts { 8108 pub Kind: u8, 8109 pub Length: u8, 8110 pub Val: u32, 8111 pub EcR: u32, 8112 } 8113 impl ::core::marker::Copy for tcp_opt_ts {} 8114 impl ::core::clone::Clone for tcp_opt_ts { clone(&self) -> Self8115 fn clone(&self) -> Self { 8116 *self 8117 } 8118 } 8119 #[repr(C)] 8120 pub struct tcp_opt_unknown { 8121 pub Kind: u8, 8122 pub Length: u8, 8123 } 8124 impl ::core::marker::Copy for tcp_opt_unknown {} 8125 impl ::core::clone::Clone for tcp_opt_unknown { clone(&self) -> Self8126 fn clone(&self) -> Self { 8127 *self 8128 } 8129 } 8130 #[repr(C)] 8131 pub struct tcp_opt_ws { 8132 pub Kind: u8, 8133 pub Length: u8, 8134 pub ShiftCnt: u8, 8135 } 8136 impl ::core::marker::Copy for tcp_opt_ws {} 8137 impl ::core::clone::Clone for tcp_opt_ws { clone(&self) -> Self8138 fn clone(&self) -> Self { 8139 *self 8140 } 8141 } 8142