| iphlpapi.h (6.3.9600.17415-Windows 8.1) | | iphlpapi.h (10.0.10586.0-Windows 10 1511 10586.494) |
| | |
| skipping to change at line 23 | | skipping to change at line 23 |
| --*/ | | --*/ |
| | |
| #ifndef __IPHLPAPI_H__ | | #ifndef __IPHLPAPI_H__ |
| #define __IPHLPAPI_H__ | | #define __IPHLPAPI_H__ |
| | |
| #if _MSC_VER > 1000 | | #if _MSC_VER > 1000 |
| #pragma once | | #pragma once |
| #endif | | #endif |
| #include <winapifamily.h> | | #include <winapifamily.h> |
| | |
|
| #pragma region Desktop Family | | #pragma region Desktop Family or OneCore Family |
| #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| extern "C" { | | extern "C" { |
| #endif | | #endif |
| | |
| ////////////////////////////////////////////////////////////////////////////// | | ////////////////////////////////////////////////////////////////////////////// |
| // // | | // // |
| // IPRTRMIB.H has the definitions of the structures used to set and get // | | // IPRTRMIB.H has the definitions of the structures used to set and get // |
| // information // | | // information // |
| // // | | // // |
| ////////////////////////////////////////////////////////////////////////////// | | ////////////////////////////////////////////////////////////////////////////// |
| | |
| #include <iprtrmib.h> | | #include <iprtrmib.h> |
| #include <ipexport.h> | | #include <ipexport.h> |
| #include <iptypes.h> | | #include <iptypes.h> |
| #include <tcpestats.h> | | #include <tcpestats.h> |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| ////////////////////////////////////////////////////////////////////////////// | | ////////////////////////////////////////////////////////////////////////////// |
| // // | | // // |
| // The GetXXXTable APIs take a buffer and a size of buffer. If the buffer // | | // The GetXXXTable APIs take a buffer and a size of buffer. If the buffer // |
| // is not large enough, the APIs return ERROR_INSUFFICIENT_BUFFER and // | | // is not large enough, the APIs return ERROR_INSUFFICIENT_BUFFER and // |
| // *pdwSize is the required buffer size // | | // *pdwSize is the required buffer size // |
| // The bOrder is a BOOLEAN, which if TRUE sorts the table according to // | | // The bOrder is a BOOLEAN, which if TRUE sorts the table according to // |
| // MIB-II (RFC XXXX) // | | // MIB-II (RFC XXXX) // |
| // // | | // // |
| ////////////////////////////////////////////////////////////////////////////// | | ////////////////////////////////////////////////////////////////////////////// |
| | |
| | |
| skipping to change at line 219 | | skipping to change at line 225 |
| #if (NTDDI_VERSION >= NTDDI_VISTA) | | #if (NTDDI_VERSION >= NTDDI_VISTA) |
| ULONG | | ULONG |
| WINAPI | | WINAPI |
| GetTcpTable2( | | GetTcpTable2( |
| _Out_writes_bytes_opt_(*SizePointer) PMIB_TCPTABLE2 TcpTable, | | _Out_writes_bytes_opt_(*SizePointer) PMIB_TCPTABLE2 TcpTable, |
| _Inout_ PULONG SizePointer, | | _Inout_ PULONG SizePointer, |
| _In_ BOOL Order | | _In_ BOOL Order |
| ); | | ); |
| #endif // (NTDDI_VERSION >= NTDDI_VISTA) | | #endif // (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) |
| | |
| #if (NTDDI_VERSION < NTDDI_VISTA) | | #if (NTDDI_VERSION < NTDDI_VISTA) |
| // | | // |
| // Deprecated APIs, Added for documentation. | | // Deprecated APIs, Added for documentation. |
| // | | // |
| | |
| DWORD | | DWORD |
| AllocateAndGetTcpExTableFromStack( | | AllocateAndGetTcpExTableFromStack( |
| _Outptr_ PVOID *ppTcpTable, | | _Outptr_ PVOID *ppTcpTable, |
| _In_ BOOL bOrder, | | _In_ BOOL bOrder, |
| _In_ HANDLE hHeap, | | _In_ HANDLE hHeap, |
| | |
| skipping to change at line 244 | | skipping to change at line 256 |
| AllocateAndGetUdpExTableFromStack( | | AllocateAndGetUdpExTableFromStack( |
| _Outptr_ PVOID *ppUdpTable, | | _Outptr_ PVOID *ppUdpTable, |
| _In_ BOOL bOrder, | | _In_ BOOL bOrder, |
| _In_ HANDLE hHeap, | | _In_ HANDLE hHeap, |
| _In_ DWORD dwFlags, | | _In_ DWORD dwFlags, |
| _In_ DWORD dwFamily | | _In_ DWORD dwFamily |
| ); | | ); |
| | |
| #endif // (NTDDI_VERSION < NTDDI_VISTA) | | #endif // (NTDDI_VERSION < NTDDI_VISTA) |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| #ifdef _WS2IPDEF_ | | #ifdef _WS2IPDEF_ |
| // | | // |
| // The following definitions require Winsock2. | | // The following definitions require Winsock2. |
| // | | // |
| | |
| #if (NTDDI_VERSION >= NTDDI_VISTA) | | #if (NTDDI_VERSION >= NTDDI_VISTA) |
| ULONG | | ULONG |
| WINAPI | | WINAPI |
| GetTcp6Table( | | GetTcp6Table( |
| _Out_writes_bytes_(*SizePointer) PMIB_TCP6TABLE TcpTable, | | _Out_writes_bytes_(*SizePointer) PMIB_TCP6TABLE TcpTable, |
| | |
| skipping to change at line 716 | | skipping to change at line 734 |
| _Out_writes_bytes_opt_(*SizePointer) PIP_ADAPTER_INFO AdapterInfo, | | _Out_writes_bytes_opt_(*SizePointer) PIP_ADAPTER_INFO AdapterInfo, |
| _Inout_ PULONG SizePointer | | _Inout_ PULONG SizePointer |
| ); | | ); |
| | |
| PIP_ADAPTER_ORDER_MAP | | PIP_ADAPTER_ORDER_MAP |
| WINAPI | | WINAPI |
| GetAdapterOrderMap( | | GetAdapterOrderMap( |
| VOID | | VOID |
| ); | | ); |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| #ifdef _WINSOCK2API_ | | #ifdef _WINSOCK2API_ |
| | |
| // | | // |
| // The following functions require Winsock2. | | // The following functions require Winsock2. |
| // | | // |
| | |
| ULONG | | ULONG |
| WINAPI | | WINAPI |
| GetAdaptersAddresses( | | GetAdaptersAddresses( |
| _In_ ULONG Family, | | _In_ ULONG Family, |
| _In_ ULONG Flags, | | _In_ ULONG Flags, |
| _Reserved_ PVOID Reserved, | | _Reserved_ PVOID Reserved, |
| _Out_writes_bytes_opt_(*SizePointer) PIP_ADAPTER_ADDRESSES AdapterAddresses, | | _Out_writes_bytes_opt_(*SizePointer) PIP_ADAPTER_ADDRESSES AdapterAddresses, |
| _Inout_ PULONG SizePointer | | _Inout_ PULONG SizePointer |
| ); | | ); |
| | |
| #endif | | #endif |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| #if (NTDDI_VERSION >= NTDDI_WIN2KSP1) | | #if (NTDDI_VERSION >= NTDDI_WIN2KSP1) |
| DWORD | | DWORD |
| WINAPI | | WINAPI |
| GetPerAdapterInfo( | | GetPerAdapterInfo( |
| _In_ ULONG IfIndex, | | _In_ ULONG IfIndex, |
| _Out_writes_bytes_opt_(*pOutBufLen) PIP_PER_ADAPTER_INFO pPerAdapterInfo, | | _Out_writes_bytes_opt_(*pOutBufLen) PIP_PER_ADAPTER_INFO pPerAdapterInfo, |
| _Inout_ PULONG pOutBufLen | | _Inout_ PULONG pOutBufLen |
| ); | | ); |
| #endif | | #endif |
| | |
| | |
| skipping to change at line 993 | | skipping to change at line 1023 |
| #endif | | #endif |
| | |
| #endif // (NTDDI_VERSION >= NTDDI_VISTA) | | #endif // (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
| #if (NTDDI_VERSION >= NTDDI_VISTA) | | #if (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
| #include <netioapi.h> | | #include <netioapi.h> |
| | |
| #endif // (NTDDI_VERSION >= NTDDI_VISTA) | | #endif // (NTDDI_VERSION >= NTDDI_VISTA) |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| } | | } |
| #endif | | #endif |
|
| | | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ | | ) */ |
| #pragma endregion | | #pragma endregion |
| | |
| #endif //__IPHLPAPI_H__ | | #endif //__IPHLPAPI_H__ |
| | |
| End of changes. 8 change blocks. |
| 4 lines changed or deleted | | 44 lines changed or added |
|
| netioapi.h (6.3.9600.17415-Windows 8.1) | | netioapi.h (10.0.10586.0-Windows 10 1511 10586.494) |
| | |
| skipping to change at line 58 | | skipping to change at line 58 |
| 4. The functions in this file are grouped by the object they operate upon. | | 4. The functions in this file are grouped by the object they operate upon. |
| Within the group, they are sorted alphabetically. | | Within the group, they are sorted alphabetically. |
| | |
| --*/ | | --*/ |
| | |
| #ifndef _NETIOAPI_H_ | | #ifndef _NETIOAPI_H_ |
| #define _NETIOAPI_H_ | | #define _NETIOAPI_H_ |
| #pragma once | | #pragma once |
| #include <winapifamily.h> | | #include <winapifamily.h> |
| | |
|
| #pragma region Desktop Family | | #pragma region Desktop Family or OneCore Family |
| #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| extern "C" { | | extern "C" { |
| #endif | | #endif |
| | |
| // | | // |
| // General types. | | // General types. |
| // | | // |
| | |
| // | | // |
| | |
| skipping to change at line 106 | | skipping to change at line 106 |
| | |
| #include <ws2def.h> | | #include <ws2def.h> |
| #include <ws2ipdef.h> | | #include <ws2ipdef.h> |
| #include <ifdef.h> | | #include <ifdef.h> |
| #include <nldef.h> | | #include <nldef.h> |
| | |
| #define NETIO_STATUS NTSTATUS | | #define NETIO_STATUS NTSTATUS |
| #define NETIO_SUCCESS(x) NT_SUCCESS(x) | | #define NETIO_SUCCESS(x) NT_SUCCESS(x) |
| #define NETIOAPI_API_ NTAPI | | #define NETIOAPI_API_ NTAPI |
| #define _NETIOAPI_SUCCESS_ | | #define _NETIOAPI_SUCCESS_ |
|
| #endif | | #endif /* __IPHLPAPI_H__ */ |
| | |
| #define NETIOAPI_API NETIO_STATUS NETIOAPI_API_ | | #define NETIOAPI_API NETIO_STATUS NETIOAPI_API_ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| typedef enum _MIB_NOTIFICATION_TYPE { | | typedef enum _MIB_NOTIFICATION_TYPE { |
| // | | // |
| // ParameterChange. | | // ParameterChange. |
| // | | // |
| MibParameterNotification, | | MibParameterNotification, |
| // | | // |
| // Addition. | | // Addition. |
| // | | // |
| MibAddInstance, | | MibAddInstance, |
| // | | // |
| // Deletion. | | // Deletion. |
| // | | // |
| MibDeleteInstance, | | MibDeleteInstance, |
| // | | // |
| // Initial notification. | | // Initial notification. |
| // | | // |
| MibInitialNotification, | | MibInitialNotification, |
| } MIB_NOTIFICATION_TYPE, *PMIB_NOTIFICATION_TYPE; | | } MIB_NOTIFICATION_TYPE, *PMIB_NOTIFICATION_TYPE; |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| // | | // |
| // Interface management routines. | | // Interface management routines. |
| // | | // |
| | |
| // | | // |
| // The MIB structure for Interface management routines. | | // The MIB structure for Interface management routines. |
| // | | // |
| | |
| #ifdef _WS2IPDEF_ | | #ifdef _WS2IPDEF_ |
|
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| #include <ntddndis.h> | | #include <ntddndis.h> |
| | |
| typedef struct _MIB_IF_ROW2 { | | typedef struct _MIB_IF_ROW2 { |
| // | | // |
| // Key structure. Sorted by preference. | | // Key structure. Sorted by preference. |
| // | | // |
| NET_LUID InterfaceLuid; | | NET_LUID InterfaceLuid; |
| NET_IFINDEX InterfaceIndex; | | NET_IFINDEX InterfaceIndex; |
| | |
| // | | // |
| | |
| skipping to change at line 656 | | skipping to change at line 669 |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| --*/ | | --*/ |
| | |
| // | | // |
| // Unicast address management routines. | | // Unicast address management routines. |
| // | | // |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| // | | // |
| // The structure for unicast IP Address management. | | // The structure for unicast IP Address management. |
| // | | // |
| typedef struct _MIB_UNICASTIPADDRESS_ROW { | | typedef struct _MIB_UNICASTIPADDRESS_ROW { |
| // | | // |
| // Key Structure. | | // Key Structure. |
| // | | // |
| SOCKADDR_INET Address; | | SOCKADDR_INET Address; |
| NET_LUID InterfaceLuid; | | NET_LUID InterfaceLuid; |
| NET_IFINDEX InterfaceIndex; | | NET_IFINDEX InterfaceIndex; |
| | |
| skipping to change at line 690 | | skipping to change at line 709 |
| NL_DAD_STATE DadState; | | NL_DAD_STATE DadState; |
| SCOPE_ID ScopeId; | | SCOPE_ID ScopeId; |
| LARGE_INTEGER CreationTimeStamp; | | LARGE_INTEGER CreationTimeStamp; |
| } MIB_UNICASTIPADDRESS_ROW, *PMIB_UNICASTIPADDRESS_ROW; | | } MIB_UNICASTIPADDRESS_ROW, *PMIB_UNICASTIPADDRESS_ROW; |
| | |
| typedef struct _MIB_UNICASTIPADDRESS_TABLE { | | typedef struct _MIB_UNICASTIPADDRESS_TABLE { |
| ULONG NumEntries; | | ULONG NumEntries; |
| MIB_UNICASTIPADDRESS_ROW Table[ANY_SIZE]; | | MIB_UNICASTIPADDRESS_ROW Table[ANY_SIZE]; |
| } MIB_UNICASTIPADDRESS_TABLE, *PMIB_UNICASTIPADDRESS_TABLE; | | } MIB_UNICASTIPADDRESS_TABLE, *PMIB_UNICASTIPADDRESS_TABLE; |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| typedef | | typedef |
| VOID | | VOID |
| (NETIOAPI_API_ *PUNICAST_IPADDRESS_CHANGE_CALLBACK) ( | | (NETIOAPI_API_ *PUNICAST_IPADDRESS_CHANGE_CALLBACK) ( |
| _In_ PVOID CallerContext, | | _In_ PVOID CallerContext, |
| _In_opt_ PMIB_UNICASTIPADDRESS_ROW Row, | | _In_opt_ PMIB_UNICASTIPADDRESS_ROW Row, |
| _In_ MIB_NOTIFICATION_TYPE NotificationType | | _In_ MIB_NOTIFICATION_TYPE NotificationType |
| ); | | ); |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| | |
| skipping to change at line 796 | | skipping to change at line 821 |
| Notes: | | Notes: |
| | |
| On input, the following key fields of Row must be initialized: | | On input, the following key fields of Row must be initialized: |
| 1. Address to a valid IPv4 or IPv6 unicast address. | | 1. Address to a valid IPv4 or IPv6 unicast address. |
| 2. At least one of InterfaceLuid or InterfaceIndex must be specified. | | 2. At least one of InterfaceLuid or InterfaceIndex must be specified. |
| | |
| On output, the remaining fields of Row are filled in. | | On output, the remaining fields of Row are filled in. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| GetUnicastIpAddressTable( | | GetUnicastIpAddressTable( |
| _In_ ADDRESS_FAMILY Family, | | _In_ ADDRESS_FAMILY Family, |
| _Outptr_ PMIB_UNICASTIPADDRESS_TABLE *Table | | _Outptr_ PMIB_UNICASTIPADDRESS_TABLE *Table |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| skipping to change at line 835 | | skipping to change at line 866 |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| Notes: | | Notes: |
| | |
| The API allocates the buffer for Table. Use FreeMibTable to free it. | | The API allocates the buffer for Table. Use FreeMibTable to free it. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| VOID | | VOID |
| NETIOAPI_API_ | | NETIOAPI_API_ |
| InitializeUnicastIpAddressEntry( | | InitializeUnicastIpAddressEntry( |
| _Out_ PMIB_UNICASTIPADDRESS_ROW Row | | _Out_ PMIB_UNICASTIPADDRESS_ROW Row |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| | |
| skipping to change at line 1222 | | skipping to change at line 1259 |
| Notes: | | Notes: |
| | |
| The API allocates the buffer for Table. Use FreeMibTable to free it. | | The API allocates the buffer for Table. Use FreeMibTable to free it. |
| | |
| --*/ | | --*/ |
| | |
| // | | // |
| // Route management routines. | | // Route management routines. |
| // | | // |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| typedef struct _IP_ADDRESS_PREFIX { | | typedef struct _IP_ADDRESS_PREFIX { |
| SOCKADDR_INET Prefix; | | SOCKADDR_INET Prefix; |
| UINT8 PrefixLength; | | UINT8 PrefixLength; |
| } IP_ADDRESS_PREFIX, *PIP_ADDRESS_PREFIX; | | } IP_ADDRESS_PREFIX, *PIP_ADDRESS_PREFIX; |
| | |
| typedef struct _MIB_IPFORWARD_ROW2 { | | typedef struct _MIB_IPFORWARD_ROW2 { |
| // | | // |
| // Key Structure. | | // Key Structure. |
| // | | // |
| NET_LUID InterfaceLuid; | | NET_LUID InterfaceLuid; |
| | |
| skipping to change at line 1262 | | skipping to change at line 1305 |
| // | | // |
| ULONG Age; | | ULONG Age; |
| NL_ROUTE_ORIGIN Origin; | | NL_ROUTE_ORIGIN Origin; |
| } MIB_IPFORWARD_ROW2, *PMIB_IPFORWARD_ROW2; | | } MIB_IPFORWARD_ROW2, *PMIB_IPFORWARD_ROW2; |
| | |
| typedef struct _MIB_IPFORWARD_TABLE2 { | | typedef struct _MIB_IPFORWARD_TABLE2 { |
| ULONG NumEntries; | | ULONG NumEntries; |
| MIB_IPFORWARD_ROW2 Table[ANY_SIZE]; | | MIB_IPFORWARD_ROW2 Table[ANY_SIZE]; |
| } MIB_IPFORWARD_TABLE2, *PMIB_IPFORWARD_TABLE2; | | } MIB_IPFORWARD_TABLE2, *PMIB_IPFORWARD_TABLE2; |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| typedef | | typedef |
| VOID | | VOID |
| (NETIOAPI_API_ *PIPFORWARD_CHANGE_CALLBACK) ( | | (NETIOAPI_API_ *PIPFORWARD_CHANGE_CALLBACK) ( |
| _In_ PVOID CallerContext, | | _In_ PVOID CallerContext, |
| _In_opt_ PMIB_IPFORWARD_ROW2 Row, | | _In_opt_ PMIB_IPFORWARD_ROW2 Row, |
| _In_ MIB_NOTIFICATION_TYPE NotificationType | | _In_ MIB_NOTIFICATION_TYPE NotificationType |
| ); | | ); |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| | |
| skipping to change at line 1337 | | skipping to change at line 1386 |
| | |
| Notes: | | Notes: |
| | |
| On input, the following key fields of Row must be initialized: | | On input, the following key fields of Row must be initialized: |
| 1. At least one of InterfaceLuid or InterfaceIndex must be specified. | | 1. At least one of InterfaceLuid or InterfaceIndex must be specified. |
| 2. DestinationPrefix. | | 2. DestinationPrefix. |
| 3. NextHop. | | 3. NextHop. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| GetBestRoute2( | | GetBestRoute2( |
| _In_opt_ NET_LUID *InterfaceLuid, | | _In_opt_ NET_LUID *InterfaceLuid, |
| _In_ NET_IFINDEX InterfaceIndex, | | _In_ NET_IFINDEX InterfaceIndex, |
| _In_opt_ CONST SOCKADDR_INET *SourceAddress, | | _In_opt_ CONST SOCKADDR_INET *SourceAddress, |
| _In_ CONST SOCKADDR_INET *DestinationAddress, | | _In_ CONST SOCKADDR_INET *DestinationAddress, |
| _In_ ULONG AddressSortOptions, | | _In_ ULONG AddressSortOptions, |
| _Out_ PMIB_IPFORWARD_ROW2 BestRoute, | | _Out_ PMIB_IPFORWARD_ROW2 BestRoute, |
| | |
| skipping to change at line 1387 | | skipping to change at line 1442 |
| | |
| Notes: | | Notes: |
| | |
| On input, the following parameters must be supplied: | | On input, the following parameters must be supplied: |
| 1. At least one of InterfaceLuid or InterfaceIndex must be specified. | | 1. At least one of InterfaceLuid or InterfaceIndex must be specified. |
| 2. SourceAddress. | | 2. SourceAddress. |
| 3. DestinationAddress. | | 3. DestinationAddress. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| GetIpForwardEntry2( | | GetIpForwardEntry2( |
| _Inout_ PMIB_IPFORWARD_ROW2 Row | | _Inout_ PMIB_IPFORWARD_ROW2 Row |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| | |
| skipping to change at line 2102 | | skipping to change at line 2163 |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| Notes: | | Notes: |
| | |
| Blocks until all callback have returned. | | Blocks until all callback have returned. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| VOID | | VOID |
| NETIOAPI_API_ | | NETIOAPI_API_ |
| FreeMibTable( | | FreeMibTable( |
| _In_ PVOID Memory | | _In_ PVOID Memory |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| Free the buffer allocated by Get*Table APIs. | | Free the buffer allocated by Get*Table APIs. |
| | |
| skipping to change at line 2123 | | skipping to change at line 2190 |
| Arguments: | | Arguments: |
| | |
| Memory - Supplies the buffer to free. | | Memory - Supplies the buffer to free. |
| | |
| Return Value: | | Return Value: |
| | |
| None. | | None. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM |
| | ) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| CreateSortedAddressPairs( | | CreateSortedAddressPairs( |
| _In_opt_ const PSOCKADDR_IN6 SourceAddressList, | | _In_opt_ const PSOCKADDR_IN6 SourceAddressList, |
| _In_ ULONG SourceAddressCount, | | _In_ ULONG SourceAddressCount, |
| _In_ const PSOCKADDR_IN6 DestinationAddressList, | | _In_ const PSOCKADDR_IN6 DestinationAddressList, |
| _In_ ULONG DestinationAddressCount, | | _In_ ULONG DestinationAddressCount, |
| _In_ ULONG AddressSortOptions, | | _In_ ULONG AddressSortOptions, |
| _Outptr_result_buffer_(*SortedAddressPairCount) | | _Outptr_result_buffer_(*SortedAddressPairCount) |
| | |
| skipping to change at line 2179 | | skipping to change at line 2252 |
| | |
| SortedAddressPairCount - Returns the number of address pairs in | | SortedAddressPairCount - Returns the number of address pairs in |
| SortedAddressPairList. | | SortedAddressPairList. |
| | |
| Return Value: | | Return Value: |
| | |
| ERROR_SUCCESS on success. WIN32 error code on error. | | ERROR_SUCCESS on success. WIN32 error code on error. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| #endif //_WS2IPDEF_ | | #endif //_WS2IPDEF_ |
| | |
|
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| _NETIOAPI_SUCCESS_ | | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| ConvertCompartmentGuidToId( | | ConvertCompartmentGuidToId( |
| _In_ CONST GUID *CompartmentGuid, | | _In_ CONST GUID *CompartmentGuid, |
| _Out_ PNET_IF_COMPARTMENT_ID CompartmentId | | _Out_ PNET_IF_COMPARTMENT_ID CompartmentId |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| skipping to change at line 2568 | | skipping to change at line 2647 |
| | |
| Interface name on success, NULL otherwise. | | Interface name on success, NULL otherwise. |
| | |
| Notes: | | Notes: |
| | |
| The length of InterfaceName buffer must be equal to or greater than | | The length of InterfaceName buffer must be equal to or greater than |
| IF_NAMESIZE. | | IF_NAMESIZE. |
| | |
| --*/ | | --*/ |
| | |
|
| NET_IF_COMPARTMENT_ID | | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
|
| | NET_IF_COMPARTMENT_ID |
| NETIOAPI_API_ | | NETIOAPI_API_ |
| GetCurrentThreadCompartmentId( | | GetCurrentThreadCompartmentId( |
| VOID | | VOID |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| Get the compartment ID of current thread. | | Get the compartment ID of current thread. |
| | |
| | |
| skipping to change at line 2591 | | skipping to change at line 2670 |
| | |
| None. | | None. |
| | |
| Return Value: | | Return Value: |
| | |
| The compartment ID of current thread. | | The compartment ID of current thread. |
| | |
| --*/ | | --*/ |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
|
| | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| SetCurrentThreadCompartmentId( | | SetCurrentThreadCompartmentId( |
| _In_ NET_IF_COMPARTMENT_ID CompartmentId | | _In_ NET_IF_COMPARTMENT_ID CompartmentId |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| Set the compartment ID of current thread. | | Set the compartment ID of current thread. |
| | |
| | |
| skipping to change at line 2613 | | skipping to change at line 2693 |
| CompartmentId - Supplies the compartment ID to be set. | | CompartmentId - Supplies the compartment ID to be set. |
| | |
| Return Value: | | Return Value: |
| | |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| --*/ | | --*/ |
| | |
|
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | VOID |
| | NETIOAPI_API_ |
| | GetCurrentThreadCompartmentScope( |
| | _Out_ PNET_IF_COMPARTMENT_SCOPE CompartmentScope, |
| | _Out_ PNET_IF_COMPARTMENT_ID CompartmentId |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Returns the compartment scope and ID for the current thread. |
| | |
| | Arguments: |
| | |
| | CompartmentScope - Receives the compartment scope. |
| | |
| | CompartmentId - Optionally receives the compartment ID. |
| | |
| | Return Value: |
| | |
| | None. |
| | |
| | Permissions: |
| | |
| | This is open to all callers. |
| | |
| | --*/ |
| | |
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | _NETIOAPI_SUCCESS_ |
| | NETIOAPI_API |
| | SetCurrentThreadCompartmentScope( |
| | _In_ NET_IF_COMPARTMENT_SCOPE CompartmentScope |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Sets the compartment scope for the current thread. |
| | |
| | Arguments: |
| | |
| | CompartmentScope - Supplies the compartment scope. |
| | |
| | Return Value: |
| | |
| | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| | Permissions: |
| | |
| | This is a privileged operation available only to admin-like accounts |
| | used by services (LocalSystem, NetworkService, LocalService). |
| | |
| | --*/ |
| | |
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | NET_IF_COMPARTMENT_ID |
| | NETIOAPI_API_ |
| | GetJobCompartmentId( |
| | _In_ HANDLE JobHandle |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Gets the compartment ID of a given job object. |
| | |
| | Arguments: |
| | |
| | JobHandle - Supplies the job handle. |
| | |
| | Return Value: |
| | |
| | Returns the compartment ID associated with the job. |
| | |
| | Permissions: |
| | |
| | This is open to all callers. |
| | |
| | --*/ |
| | |
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | _NETIOAPI_SUCCESS_ |
| | NETIOAPI_API |
| | SetJobCompartmentId( |
| | _In_ HANDLE JobHandle, |
| | _In_ NET_IF_COMPARTMENT_ID CompartmentId |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Sets the compartment ID of the given job object. |
| | |
| | Arguments: |
| | |
| | JobHandle - Supplies the job handle. |
| | |
| | CompartmentId - Supplies the new compartment ID. |
| | |
| | Return Value: |
| | |
| | If the function succeeds, the return value is NO_ERROR. |
| | If the function fails, use FormatMessage to obtain the message string for |
| | the returned error. |
| | |
| | Permissions: |
| | |
| | This is a privileged operation available only to network-admin-like |
| | accounts (LocalSystem, NetworkService, LocalService). |
| | |
| | --*/ |
| | |
| NET_IF_COMPARTMENT_ID | | NET_IF_COMPARTMENT_ID |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
| NETIOAPI_API_ | | NETIOAPI_API_ |
| GetSessionCompartmentId( | | GetSessionCompartmentId( |
| _In_ ULONG SessionId | | _In_ ULONG SessionId |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| | |
| skipping to change at line 2636 | | skipping to change at line 2832 |
| | |
| SessionId - Supplies the session ID. | | SessionId - Supplies the session ID. |
| | |
| Return Value: | | Return Value: |
| | |
| The compartment ID of the session. | | The compartment ID of the session. |
| | |
| --*/ | | --*/ |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
|
| | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| SetSessionCompartmentId( | | SetSessionCompartmentId( |
| _In_ ULONG SessionId, | | _In_ ULONG SessionId, |
| _In_ NET_IF_COMPARTMENT_ID CompartmentId | | _In_ NET_IF_COMPARTMENT_ID CompartmentId |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| Set the compartment ID of the session. | | Set the compartment ID of the session. |
| | |
| skipping to change at line 2662 | | skipping to change at line 2859 |
| | |
| Return Value: | | Return Value: |
| | |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| --*/ | | --*/ |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
|
| | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| GetNetworkInformation( | | GetNetworkInformation( |
| _In_ CONST NET_IF_NETWORK_GUID *NetworkGuid, | | _In_ CONST NET_IF_NETWORK_GUID *NetworkGuid, |
| _Out_ PNET_IF_COMPARTMENT_ID CompartmentId, | | _Out_ PNET_IF_COMPARTMENT_ID CompartmentId, |
| _Out_ PULONG SiteId, | | _Out_ PULONG SiteId, |
| _Out_writes_(Length) PWCHAR NetworkName, | | _Out_writes_(Length) PWCHAR NetworkName, |
| _In_ ULONG Length | | _In_ ULONG Length |
| ); | | ); |
| /*++ | | /*++ |
| | |
| | |
| skipping to change at line 2697 | | skipping to change at line 2895 |
| | |
| Return Value: | | Return Value: |
| | |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| --*/ | | --*/ |
| | |
| _IRQL_requires_max_(PASSIVE_LEVEL) | | _IRQL_requires_max_(PASSIVE_LEVEL) |
|
| | _NETIOAPI_SUCCESS_ |
| NETIOAPI_API | | NETIOAPI_API |
| SetNetworkInformation( | | SetNetworkInformation( |
| _In_ CONST NET_IF_NETWORK_GUID *NetworkGuid, | | _In_ CONST NET_IF_NETWORK_GUID *NetworkGuid, |
| _In_ NET_IF_COMPARTMENT_ID CompartmentId, | | _In_ NET_IF_COMPARTMENT_ID CompartmentId, |
| _In_z_ CONST WCHAR *NetworkName | | _In_z_ CONST WCHAR *NetworkName |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| | |
| skipping to change at line 2725 | | skipping to change at line 2924 |
| NetworkName - Supplies the Network name to be set. | | NetworkName - Supplies the Network name to be set. |
| | |
| Return Value: | | Return Value: |
| | |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| --*/ | | --*/ |
| | |
|
| | // |
| | // Compartment management routines. |
| | // |
| | |
| | typedef struct _MIB_COMPARTMENT_ROW { |
| | // |
| | // Key structure. |
| | // |
| | GUID CompartmentGuid; |
| | NET_IF_COMPARTMENT_ID CompartmentId; |
| | |
| | // |
| | // Read-write fields. |
| | // |
| | WCHAR Description[IF_MAX_STRING_SIZE + 1]; |
| | |
| | } MIB_COMPARTMENT_ROW, *PMIB_COMPARTMENT_ROW; |
| | |
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | VOID |
| | NETIOAPI_API_ |
| | InitializeCompartmentEntry( |
| | _Out_ PMIB_COMPARTMENT_ROW CompartmentRow |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Initialize the MIB_COMPARTMENT_ROW entry for use in CreateCompartment. |
| | |
| | Arguments: |
| | |
| | CompartmentRow - Returns an initialized MIB_COMPARTMENT_ROW structure. |
| | |
| | Return Value: |
| | |
| | None. |
| | |
| | --*/ |
| | |
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | _NETIOAPI_SUCCESS_ |
| | NETIOAPI_API |
| | CreateCompartment( |
| | _Inout_ CONST PMIB_COMPARTMENT_ROW CompartmentRow |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Creates a new compartment. |
| | |
| | Arguments: |
| | |
| | CompartmentRow - Supplies properties for the compartment to be created. |
| | Must be previously initialized by calling InitializeCompartmentEntry. |
| | At a minimum, the CompartmentGuid field must be set by caller. |
| | Returns the ID of the new compartment if successful. |
| | |
| | Return Value: |
| | |
| | NETIO_ERROR_SUCCESS on success, error code on failure. |
| | |
| | Permissions: |
| | |
| | This is a privileged operation available only to admin-like accounts |
| | used by services (LocalSystem, NetworkService, LocalService). |
| | |
| | --*/ |
| | |
| | _IRQL_requires_max_(PASSIVE_LEVEL) |
| | _NETIOAPI_SUCCESS_ |
| | NETIOAPI_API |
| | DeleteCompartment( |
| | _In_ NET_IF_COMPARTMENT_ID CompartmentId |
| | ); |
| | /*++ |
| | |
| | Routine Description: |
| | |
| | Deletes a compartment. |
| | |
| | Arguments: |
| | |
| | CompartmentId - Supplies the ID of the compartment to be deleted. |
| | |
| | Return Value: |
| | |
| | NETIO_ERROR_SUCCESS on success, error code on failure. |
| | |
| | Permissions: |
| | |
| | This is a privileged operation available only to admin-like accounts |
| | used by services (LocalSystem, NetworkService, LocalService). |
| | |
| | --*/ |
| | |
| #pragma warning(pop) | | #pragma warning(pop) |
| | |
| NETIOAPI_API | | NETIOAPI_API |
| ConvertLengthToIpv4Mask( | | ConvertLengthToIpv4Mask( |
| _In_ ULONG MaskLength, | | _In_ ULONG MaskLength, |
| _Out_ PULONG Mask | | _Out_ PULONG Mask |
| ); | | ); |
| /*++ | | /*++ |
| | |
| Routine Description: | | Routine Description: |
| | |
| skipping to change at line 2777 | | skipping to change at line 3073 |
| MaskLength - Prefix length computed. | | MaskLength - Prefix length computed. |
| | |
| Return Value: | | Return Value: |
| | |
| User-Mode: NO_ERROR on success, error code on failure. | | User-Mode: NO_ERROR on success, error code on failure. |
| | |
| Kernel-Mode: STATUS_SUCCESS on success, error code on failure. | | Kernel-Mode: STATUS_SUCCESS on success, error code on failure. |
| | |
| --*/ | | --*/ |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SY |
| | STEM) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family or OneCore Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) |
| | |
| // | | // |
| //4201. | | //4201. |
| // | | // |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| } | | } |
| #endif | | #endif |
| | |
|
| #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ | | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM
) */ |
| #pragma endregion | | #pragma endregion |
| | |
| #endif // _NETIOAPI_H_. | | #endif // _NETIOAPI_H_. |
| | |
| End of changes. 27 change blocks. |
| 5 lines changed or deleted | | 321 lines changed or added |
|