]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/Win32/System/HostComputeNetwork/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / System / HostComputeNetwork / mod.rs
CommitLineData
5e7ed085
FG
1#[link(name = "windows")]
2extern "system" {
04454e1e 3 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 4 pub fn HcnCloseEndpoint(endpoint: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 5 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 6 pub fn HcnCloseGuestNetworkService(guestnetworkservice: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 7 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 8 pub fn HcnCloseLoadBalancer(loadbalancer: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 9 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 10 pub fn HcnCloseNamespace(namespace: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 11 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 12 pub fn HcnCloseNetwork(network: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e
FG
13 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
14 pub fn HcnCreateEndpoint(network: *const ::core::ffi::c_void, id: *const ::windows_sys::core::GUID, settings: ::windows_sys::core::PCWSTR, endpoint: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
15 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
16 pub fn HcnCreateGuestNetworkService(id: *const ::windows_sys::core::GUID, settings: ::windows_sys::core::PCWSTR, guestnetworkservice: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
17 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
18 pub fn HcnCreateLoadBalancer(id: *const ::windows_sys::core::GUID, settings: ::windows_sys::core::PCWSTR, loadbalancer: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
19 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
20 pub fn HcnCreateNamespace(id: *const ::windows_sys::core::GUID, settings: ::windows_sys::core::PCWSTR, namespace: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
21 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
22 pub fn HcnCreateNetwork(id: *const ::windows_sys::core::GUID, settings: ::windows_sys::core::PCWSTR, network: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
23 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
24 pub fn HcnDeleteEndpoint(id: *const ::windows_sys::core::GUID, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
25 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
26 pub fn HcnDeleteGuestNetworkService(id: *const ::windows_sys::core::GUID, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
27 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
28 pub fn HcnDeleteLoadBalancer(id: *const ::windows_sys::core::GUID, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
29 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
30 pub fn HcnDeleteNamespace(id: *const ::windows_sys::core::GUID, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
31 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
32 pub fn HcnDeleteNetwork(id: *const ::windows_sys::core::GUID, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
33 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
34 pub fn HcnEnumerateEndpoints(query: ::windows_sys::core::PCWSTR, endpoints: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
35 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 36 pub fn HcnEnumerateGuestNetworkPortReservations(returncount: *mut u32, portentries: *mut *mut HCN_PORT_RANGE_ENTRY) -> ::windows_sys::core::HRESULT;
04454e1e
FG
37 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
38 pub fn HcnEnumerateLoadBalancers(query: ::windows_sys::core::PCWSTR, loadbalancer: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
39 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
40 pub fn HcnEnumerateNamespaces(query: ::windows_sys::core::PCWSTR, namespaces: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
41 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
42 pub fn HcnEnumerateNetworks(query: ::windows_sys::core::PCWSTR, networks: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
43 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 44 pub fn HcnFreeGuestNetworkPortReservations(portentries: *mut HCN_PORT_RANGE_ENTRY);
04454e1e
FG
45 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
46 pub fn HcnModifyEndpoint(endpoint: *const ::core::ffi::c_void, settings: ::windows_sys::core::PCWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
47 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
48 pub fn HcnModifyGuestNetworkService(guestnetworkservice: *const ::core::ffi::c_void, settings: ::windows_sys::core::PCWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
49 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
50 pub fn HcnModifyLoadBalancer(loadbalancer: *const ::core::ffi::c_void, settings: ::windows_sys::core::PCWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
51 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
52 pub fn HcnModifyNamespace(namespace: *const ::core::ffi::c_void, settings: ::windows_sys::core::PCWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
53 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
54 pub fn HcnModifyNetwork(network: *const ::core::ffi::c_void, settings: ::windows_sys::core::PCWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
55 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
56 pub fn HcnOpenEndpoint(id: *const ::windows_sys::core::GUID, endpoint: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
57 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
58 pub fn HcnOpenLoadBalancer(id: *const ::windows_sys::core::GUID, loadbalancer: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
59 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
60 pub fn HcnOpenNamespace(id: *const ::windows_sys::core::GUID, namespace: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
61 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
62 pub fn HcnOpenNetwork(id: *const ::windows_sys::core::GUID, network: *mut *mut ::core::ffi::c_void, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
63 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
64 pub fn HcnQueryEndpointProperties(endpoint: *const ::core::ffi::c_void, query: ::windows_sys::core::PCWSTR, properties: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
65 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
66 pub fn HcnQueryLoadBalancerProperties(loadbalancer: *const ::core::ffi::c_void, query: ::windows_sys::core::PCWSTR, properties: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
67 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
68 pub fn HcnQueryNamespaceProperties(namespace: *const ::core::ffi::c_void, query: ::windows_sys::core::PCWSTR, properties: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
69 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
70 pub fn HcnQueryNetworkProperties(network: *const ::core::ffi::c_void, query: ::windows_sys::core::PCWSTR, properties: *mut ::windows_sys::core::PWSTR, errorrecord: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT;
71 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 72 pub fn HcnRegisterGuestNetworkServiceCallback(guestnetworkservice: *const ::core::ffi::c_void, callback: HCN_NOTIFICATION_CALLBACK, context: *const ::core::ffi::c_void, callbackhandle: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 73 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 74 pub fn HcnRegisterServiceCallback(callback: HCN_NOTIFICATION_CALLBACK, context: *const ::core::ffi::c_void, callbackhandle: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 75 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
76 #[cfg(feature = "Win32_Foundation")]
77 pub fn HcnReleaseGuestNetworkServicePortReservationHandle(portreservationhandle: super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT;
04454e1e 78 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
79 #[cfg(feature = "Win32_Foundation")]
80 pub fn HcnReserveGuestNetworkServicePort(guestnetworkservice: *const ::core::ffi::c_void, protocol: HCN_PORT_PROTOCOL, access: HCN_PORT_ACCESS, port: u16, portreservationhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT;
04454e1e 81 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
82 #[cfg(feature = "Win32_Foundation")]
83 pub fn HcnReserveGuestNetworkServicePortRange(guestnetworkservice: *const ::core::ffi::c_void, portcount: u16, portrangereservation: *mut HCN_PORT_RANGE_RESERVATION, portreservationhandle: *mut super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT;
04454e1e 84 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 85 pub fn HcnUnregisterGuestNetworkServiceCallback(callbackhandle: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
04454e1e 86 #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085
FG
87 pub fn HcnUnregisterServiceCallback(callbackhandle: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
88}
04454e1e 89#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 90pub type HCN_NOTIFICATIONS = i32;
04454e1e 91#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 92pub const HcnNotificationInvalid: HCN_NOTIFICATIONS = 0i32;
04454e1e 93#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 94pub const HcnNotificationNetworkPreCreate: HCN_NOTIFICATIONS = 1i32;
04454e1e 95#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 96pub const HcnNotificationNetworkCreate: HCN_NOTIFICATIONS = 2i32;
04454e1e 97#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 98pub const HcnNotificationNetworkPreDelete: HCN_NOTIFICATIONS = 3i32;
04454e1e 99#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 100pub const HcnNotificationNetworkDelete: HCN_NOTIFICATIONS = 4i32;
04454e1e 101#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 102pub const HcnNotificationNamespaceCreate: HCN_NOTIFICATIONS = 5i32;
04454e1e 103#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 104pub const HcnNotificationNamespaceDelete: HCN_NOTIFICATIONS = 6i32;
04454e1e 105#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 106pub const HcnNotificationGuestNetworkServiceCreate: HCN_NOTIFICATIONS = 7i32;
04454e1e 107#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 108pub const HcnNotificationGuestNetworkServiceDelete: HCN_NOTIFICATIONS = 8i32;
04454e1e 109#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 110pub const HcnNotificationNetworkEndpointAttached: HCN_NOTIFICATIONS = 9i32;
04454e1e 111#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 112pub const HcnNotificationNetworkEndpointDetached: HCN_NOTIFICATIONS = 16i32;
04454e1e 113#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 114pub const HcnNotificationGuestNetworkServiceStateChanged: HCN_NOTIFICATIONS = 17i32;
04454e1e 115#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 116pub const HcnNotificationGuestNetworkServiceInterfaceStateChanged: HCN_NOTIFICATIONS = 18i32;
04454e1e 117#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 118pub const HcnNotificationServiceDisconnect: HCN_NOTIFICATIONS = 16777216i32;
04454e1e 119#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 120pub const HcnNotificationFlagsReserved: HCN_NOTIFICATIONS = -268435456i32;
04454e1e
FG
121#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
122pub type HCN_NOTIFICATION_CALLBACK = ::core::option::Option<unsafe extern "system" fn(notificationtype: u32, context: *const ::core::ffi::c_void, notificationstatus: ::windows_sys::core::HRESULT, notificationdata: ::windows_sys::core::PCWSTR)>;
123#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 124pub type HCN_PORT_ACCESS = i32;
04454e1e 125#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 126pub const HCN_PORT_ACCESS_EXCLUSIVE: HCN_PORT_ACCESS = 1i32;
04454e1e 127#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 128pub const HCN_PORT_ACCESS_SHARED: HCN_PORT_ACCESS = 2i32;
04454e1e 129#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 130pub type HCN_PORT_PROTOCOL = i32;
04454e1e 131#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 132pub const HCN_PORT_PROTOCOL_TCP: HCN_PORT_PROTOCOL = 1i32;
04454e1e 133#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085 134pub const HCN_PORT_PROTOCOL_UDP: HCN_PORT_PROTOCOL = 2i32;
04454e1e 135#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085
FG
136pub const HCN_PORT_PROTOCOL_BOTH: HCN_PORT_PROTOCOL = 3i32;
137#[repr(C)]
04454e1e 138#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085
FG
139pub struct HCN_PORT_RANGE_ENTRY {
140 pub OwningPartitionId: ::windows_sys::core::GUID,
141 pub TargetPartitionId: ::windows_sys::core::GUID,
142 pub Protocol: HCN_PORT_PROTOCOL,
143 pub Priority: u64,
144 pub ReservationType: u32,
145 pub SharingFlags: u32,
146 pub DeliveryMode: u32,
147 pub StartingPort: u16,
148 pub EndingPort: u16,
149}
150impl ::core::marker::Copy for HCN_PORT_RANGE_ENTRY {}
151impl ::core::clone::Clone for HCN_PORT_RANGE_ENTRY {
152 fn clone(&self) -> Self {
153 *self
154 }
155}
156#[repr(C)]
04454e1e 157#[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"]
5e7ed085
FG
158pub struct HCN_PORT_RANGE_RESERVATION {
159 pub startingPort: u16,
160 pub endingPort: u16,
161}
162impl ::core::marker::Copy for HCN_PORT_RANGE_RESERVATION {}
163impl ::core::clone::Clone for HCN_PORT_RANGE_RESERVATION {
164 fn clone(&self) -> Self {
165 *self
166 }
167}