1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 use shared::basetsd::SIZE_T;
7 use shared::guiddef::GUID;
8 use shared::ifdef::{NET_IFINDEX, NET_LUID, PNET_IFINDEX, PNET_LUID};
9 use shared::minwindef::DWORD;
10 use shared::ntdef::{CHAR, PSTR, PWSTR, WCHAR};
11 pub type NETIO_STATUS = DWORD;
12 pub type NETIOAPI_API = NETIO_STATUS;
13 extern "system" {
ConvertInterfaceNameToLuidA( InterfaceName: *const CHAR, InterfaceLuid: *mut NET_LUID, ) -> NETIOAPI_API14     pub fn ConvertInterfaceNameToLuidA(
15         InterfaceName: *const CHAR,
16         InterfaceLuid: *mut NET_LUID,
17     ) -> NETIOAPI_API;
ConvertInterfaceNameToLuidW( InterfaceName: *const WCHAR, InterfaceLuid: *mut NET_LUID, ) -> NETIOAPI_API18     pub fn ConvertInterfaceNameToLuidW(
19         InterfaceName: *const WCHAR,
20         InterfaceLuid: *mut NET_LUID,
21     ) -> NETIOAPI_API;
ConvertInterfaceLuidToNameA( InterfaceLuid: *const NET_LUID, InterfaceName: PSTR, Length: SIZE_T, ) -> NETIOAPI_API22     pub fn ConvertInterfaceLuidToNameA(
23         InterfaceLuid: *const NET_LUID,
24         InterfaceName: PSTR,
25         Length: SIZE_T,
26     ) -> NETIOAPI_API;
ConvertInterfaceLuidToNameW( InterfaceLuid: *const NET_LUID, InterfaceName: PWSTR, Length: SIZE_T, ) -> NETIOAPI_API27     pub fn ConvertInterfaceLuidToNameW(
28         InterfaceLuid: *const NET_LUID,
29         InterfaceName: PWSTR,
30         Length: SIZE_T,
31     ) -> NETIOAPI_API;
ConvertInterfaceLuidToIndex( InterfaceLuid: *const NET_LUID, InterfaceIndex: PNET_IFINDEX, ) -> NETIOAPI_API32     pub fn ConvertInterfaceLuidToIndex(
33         InterfaceLuid: *const NET_LUID,
34         InterfaceIndex: PNET_IFINDEX,
35     ) -> NETIOAPI_API;
ConvertInterfaceIndexToLuid( InterfaceIndex: NET_IFINDEX, InterfaceLuid: PNET_LUID, ) -> NETIOAPI_API36     pub fn ConvertInterfaceIndexToLuid(
37         InterfaceIndex: NET_IFINDEX,
38         InterfaceLuid: PNET_LUID,
39     ) -> NETIOAPI_API;
ConvertInterfaceLuidToAlias( InterfaceLuid: *const NET_LUID, InterfaceAlias: PWSTR, Length: SIZE_T, ) -> NETIOAPI_API40     pub fn ConvertInterfaceLuidToAlias(
41         InterfaceLuid: *const NET_LUID,
42         InterfaceAlias: PWSTR,
43         Length: SIZE_T,
44     ) -> NETIOAPI_API;
ConvertInterfaceAliasToLuid( InterfaceAlias: *const WCHAR, InterfaceLuid: PNET_LUID, ) -> NETIOAPI_API45     pub fn ConvertInterfaceAliasToLuid(
46         InterfaceAlias: *const WCHAR,
47         InterfaceLuid: PNET_LUID,
48     ) -> NETIOAPI_API;
ConvertInterfaceLuidToGuid( InterfaceLuid: *const NET_LUID, InterfaceGuid: *mut GUID, ) -> NETIOAPI_API49     pub fn ConvertInterfaceLuidToGuid(
50         InterfaceLuid: *const NET_LUID,
51         InterfaceGuid: *mut GUID,
52     ) -> NETIOAPI_API;
ConvertInterfaceGuidToLuid( InterfaceGuid: *const GUID, InterfaceLuid: PNET_LUID, ) -> NETIOAPI_API53     pub fn ConvertInterfaceGuidToLuid(
54         InterfaceGuid: *const GUID,
55         InterfaceLuid: PNET_LUID,
56     ) -> NETIOAPI_API;
57 }
58