zigwin32/win32/network_management/net_shell.zig

395 lines
13 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (32)
//--------------------------------------------------------------------------------
pub const NETSH_ERROR_BASE = @as(u32, 15000);
pub const ERROR_NO_ENTRIES = @as(u32, 15000);
pub const ERROR_INVALID_SYNTAX = @as(u32, 15001);
pub const ERROR_PROTOCOL_NOT_IN_TRANSPORT = @as(u32, 15002);
pub const ERROR_NO_CHANGE = @as(u32, 15003);
pub const ERROR_CMD_NOT_FOUND = @as(u32, 15004);
pub const ERROR_ENTRY_PT_NOT_FOUND = @as(u32, 15005);
pub const ERROR_DLL_LOAD_FAILED = @as(u32, 15006);
pub const ERROR_INIT_DISPLAY = @as(u32, 15007);
pub const ERROR_TAG_ALREADY_PRESENT = @as(u32, 15008);
pub const ERROR_INVALID_OPTION_TAG = @as(u32, 15009);
pub const ERROR_NO_TAG = @as(u32, 15010);
pub const ERROR_MISSING_OPTION = @as(u32, 15011);
pub const ERROR_TRANSPORT_NOT_PRESENT = @as(u32, 15012);
pub const ERROR_SHOW_USAGE = @as(u32, 15013);
pub const ERROR_INVALID_OPTION_VALUE = @as(u32, 15014);
pub const ERROR_OKAY = @as(u32, 15015);
pub const ERROR_CONTINUE_IN_PARENT_CONTEXT = @as(u32, 15016);
pub const ERROR_SUPPRESS_OUTPUT = @as(u32, 15017);
pub const ERROR_HELPER_ALREADY_REGISTERED = @as(u32, 15018);
pub const ERROR_CONTEXT_ALREADY_REGISTERED = @as(u32, 15019);
pub const ERROR_PARSING_FAILURE = @as(u32, 15020);
pub const NETSH_ERROR_END = @as(u32, 15019);
pub const NS_GET_EVENT_IDS_FN_NAME = "GetEventIds";
pub const MAX_NAME_LEN = @as(u32, 48);
pub const NETSH_VERSION_50 = @as(u32, 20480);
pub const NETSH_ARG_DELIMITER = "=";
pub const NETSH_CMD_DELIMITER = " ";
pub const NETSH_MAX_TOKEN_LENGTH = @as(u32, 64);
pub const NETSH_MAX_CMD_TOKEN_LENGTH = @as(u32, 128);
pub const DEFAULT_CONTEXT_PRIORITY = @as(u32, 100);
pub const GET_RESOURCE_STRING_FN_NAME = "GetResourceString";
//--------------------------------------------------------------------------------
// Section: Types (20)
//--------------------------------------------------------------------------------
pub const NS_CMD_FLAGS = enum(i32) {
PRIVATE = 1,
INTERACTIVE = 2,
LOCAL = 8,
ONLINE = 16,
HIDDEN = 32,
LIMIT_MASK = 65535,
PRIORITY = -2147483648,
};
pub const CMD_FLAG_PRIVATE = NS_CMD_FLAGS.PRIVATE;
pub const CMD_FLAG_INTERACTIVE = NS_CMD_FLAGS.INTERACTIVE;
pub const CMD_FLAG_LOCAL = NS_CMD_FLAGS.LOCAL;
pub const CMD_FLAG_ONLINE = NS_CMD_FLAGS.ONLINE;
pub const CMD_FLAG_HIDDEN = NS_CMD_FLAGS.HIDDEN;
pub const CMD_FLAG_LIMIT_MASK = NS_CMD_FLAGS.LIMIT_MASK;
pub const CMD_FLAG_PRIORITY = NS_CMD_FLAGS.PRIORITY;
pub const NS_REQS = enum(i32) {
ZERO = 0,
PRESENT = 1,
ALLOW_MULTIPLE = 2,
ONE_OR_MORE = 3,
};
pub const NS_REQ_ZERO = NS_REQS.ZERO;
pub const NS_REQ_PRESENT = NS_REQS.PRESENT;
pub const NS_REQ_ALLOW_MULTIPLE = NS_REQS.ALLOW_MULTIPLE;
pub const NS_REQ_ONE_OR_MORE = NS_REQS.ONE_OR_MORE;
pub const NS_EVENTS = enum(i32) {
LOOP = 65536,
LAST_N = 1,
LAST_SECS = 2,
FROM_N = 4,
FROM_START = 8,
};
pub const NS_EVENT_LOOP = NS_EVENTS.LOOP;
pub const NS_EVENT_LAST_N = NS_EVENTS.LAST_N;
pub const NS_EVENT_LAST_SECS = NS_EVENTS.LAST_SECS;
pub const NS_EVENT_FROM_N = NS_EVENTS.FROM_N;
pub const NS_EVENT_FROM_START = NS_EVENTS.FROM_START;
pub const NS_MODE_CHANGE = enum(i32) {
COMMIT = 0,
UNCOMMIT = 1,
FLUSH = 2,
COMMIT_STATE = 3,
SAVE = 4,
};
pub const NETSH_COMMIT = NS_MODE_CHANGE.COMMIT;
pub const NETSH_UNCOMMIT = NS_MODE_CHANGE.UNCOMMIT;
pub const NETSH_FLUSH = NS_MODE_CHANGE.FLUSH;
pub const NETSH_COMMIT_STATE = NS_MODE_CHANGE.COMMIT_STATE;
pub const NETSH_SAVE = NS_MODE_CHANGE.SAVE;
pub const TOKEN_VALUE = extern struct {
pwszToken: ?[*:0]const u16,
dwValue: u32,
};
pub const PGET_RESOURCE_STRING_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dwMsgID: u32,
lpBuffer: ?PWSTR,
nBufferMax: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
dwMsgID: u32,
lpBuffer: ?PWSTR,
nBufferMax: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_CONTEXT_COMMIT_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dwAction: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
dwAction: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_CONTEXT_CONNECT_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pwszMachine: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
pwszMachine: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_CONTEXT_DUMP_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pwszRouter: ?[*:0]const u16,
ppwcArguments: [*]?PWSTR,
dwArgCount: u32,
pvData: ?*const anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
pwszRouter: ?[*:0]const u16,
ppwcArguments: [*]?PWSTR,
dwArgCount: u32,
pvData: ?*const anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_DLL_STOP_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dwReserved: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
dwReserved: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_HELPER_START_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pguidParent: ?*const Guid,
dwVersion: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
pguidParent: ?*const Guid,
dwVersion: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_HELPER_STOP_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dwReserved: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
dwReserved: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_HANDLE_CMD = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pwszMachine: ?[*:0]const u16,
ppwcArguments: [*]?PWSTR,
dwCurrentIndex: u32,
dwArgCount: u32,
dwFlags: u32,
pvData: ?*const anyopaque,
pbDone: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
pwszMachine: ?[*:0]const u16,
ppwcArguments: [*]?PWSTR,
dwCurrentIndex: u32,
dwArgCount: u32,
dwFlags: u32,
pvData: ?*const anyopaque,
pbDone: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PNS_OSVERSIONCHECK = switch (@import("builtin").zig_backend) {
.stage1 => fn(
CIMOSType: u32,
CIMOSProductSuite: u32,
CIMOSVersion: ?[*:0]const u16,
CIMOSBuildNumber: ?[*:0]const u16,
CIMServicePackMajorVersion: ?[*:0]const u16,
CIMServicePackMinorVersion: ?[*:0]const u16,
uiReserved: u32,
dwReserved: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
CIMOSType: u32,
CIMOSProductSuite: u32,
CIMOSVersion: ?[*:0]const u16,
CIMOSBuildNumber: ?[*:0]const u16,
CIMServicePackMajorVersion: ?[*:0]const u16,
CIMServicePackMinorVersion: ?[*:0]const u16,
uiReserved: u32,
dwReserved: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const NS_HELPER_ATTRIBUTES = extern struct {
Anonymous: extern union {
Anonymous: extern struct {
dwVersion: u32,
dwReserved: u32,
},
_ullAlign: u64,
},
guidHelper: Guid,
pfnStart: ?PNS_HELPER_START_FN,
pfnStop: ?PNS_HELPER_STOP_FN,
};
pub const CMD_ENTRY = extern struct {
pwszCmdToken: ?[*:0]const u16,
pfnCmdHandler: ?PFN_HANDLE_CMD,
dwShortCmdHelpToken: u32,
dwCmdHlpToken: u32,
dwFlags: u32,
pOsVersionCheck: ?PNS_OSVERSIONCHECK,
};
pub const CMD_GROUP_ENTRY = extern struct {
pwszCmdGroupToken: ?[*:0]const u16,
dwShortCmdHelpToken: u32,
ulCmdGroupSize: u32,
dwFlags: u32,
pCmdGroup: ?*CMD_ENTRY,
pOsVersionCheck: ?PNS_OSVERSIONCHECK,
};
pub const NS_CONTEXT_ATTRIBUTES = extern struct {
Anonymous: extern union {
Anonymous: extern struct {
dwVersion: u32,
dwReserved: u32,
},
_ullAlign: u64,
},
pwszContext: ?PWSTR,
guidHelper: Guid,
dwFlags: u32,
ulPriority: u32,
ulNumTopCmds: u32,
pTopCmds: ?*CMD_ENTRY,
ulNumGroups: u32,
pCmdGroups: ?*CMD_GROUP_ENTRY,
pfnCommitFn: ?PNS_CONTEXT_COMMIT_FN,
pfnDumpFn: ?PNS_CONTEXT_DUMP_FN,
pfnConnectFn: ?PNS_CONTEXT_CONNECT_FN,
pReserved: ?*anyopaque,
pfnOsVersionCheck: ?PNS_OSVERSIONCHECK,
};
pub const TAG_TYPE = extern struct {
pwszTag: ?[*:0]const u16,
dwRequired: u32,
bPresent: BOOL,
};
pub const PNS_DLL_INIT_FN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dwNetshVersion: u32,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
dwNetshVersion: u32,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
//--------------------------------------------------------------------------------
// Section: Functions (8)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn MatchEnumTag(
hModule: ?HANDLE,
pwcArg: ?[*:0]const u16,
dwNumArg: u32,
pEnumTable: ?*const TOKEN_VALUE,
pdwValue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn MatchToken(
pwszUserToken: ?[*:0]const u16,
pwszCmdToken: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn PreprocessCommand(
hModule: ?HANDLE,
ppwcArguments: [*]?PWSTR,
dwCurrentIndex: u32,
dwArgCount: u32,
pttTags: ?[*]TAG_TYPE,
dwTagCount: u32,
dwMinArgs: u32,
dwMaxArgs: u32,
pdwTagType: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn PrintError(
hModule: ?HANDLE,
dwErrId: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn PrintMessageFromModule(
hModule: ?HANDLE,
dwMsgId: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn PrintMessage(
pwszFormat: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn RegisterContext(
pChildContext: ?*const NS_CONTEXT_ATTRIBUTES,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "netsh" fn RegisterHelper(
pguidParentContext: ?*const Guid,
pfnRegisterSubContext: ?*const NS_HELPER_ATTRIBUTES,
) callconv(@import("std").os.windows.WINAPI) u32;
//--------------------------------------------------------------------------------
// Section: Unicode Aliases (0)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
.ansi => struct {
},
.wide => struct {
},
.unspecified => if (@import("builtin").is_test) struct {
} else struct {
},
};
//--------------------------------------------------------------------------------
// Section: Imports (4)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BOOL = @import("../foundation.zig").BOOL;
const HANDLE = @import("../foundation.zig").HANDLE;
const PWSTR = @import("../foundation.zig").PWSTR;
test {
// The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
if (@hasDecl(@This(), "PGET_RESOURCE_STRING_FN")) { _ = PGET_RESOURCE_STRING_FN; }
if (@hasDecl(@This(), "PNS_CONTEXT_COMMIT_FN")) { _ = PNS_CONTEXT_COMMIT_FN; }
if (@hasDecl(@This(), "PNS_CONTEXT_CONNECT_FN")) { _ = PNS_CONTEXT_CONNECT_FN; }
if (@hasDecl(@This(), "PNS_CONTEXT_DUMP_FN")) { _ = PNS_CONTEXT_DUMP_FN; }
if (@hasDecl(@This(), "PNS_DLL_STOP_FN")) { _ = PNS_DLL_STOP_FN; }
if (@hasDecl(@This(), "PNS_HELPER_START_FN")) { _ = PNS_HELPER_START_FN; }
if (@hasDecl(@This(), "PNS_HELPER_STOP_FN")) { _ = PNS_HELPER_STOP_FN; }
if (@hasDecl(@This(), "PFN_HANDLE_CMD")) { _ = PFN_HANDLE_CMD; }
if (@hasDecl(@This(), "PNS_OSVERSIONCHECK")) { _ = PNS_OSVERSIONCHECK; }
if (@hasDecl(@This(), "PNS_DLL_INIT_FN")) { _ = PNS_DLL_INIT_FN; }
@setEvalBranchQuota(
comptime @import("std").meta.declarations(@This()).len * 3
);
// reference all the pub declarations
if (!@import("builtin").is_test) return;
inline for (comptime @import("std").meta.declarations(@This())) |decl| {
_ = @field(@This(), decl.name);
}
}