From 500dcd3da5d881d9ca211ef714762409c42851b7 Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Sat, 8 Nov 2025 16:31:41 +0100 Subject: [PATCH] [NETSH] Call a contexts connect function on a context change --- base/applications/network/netsh/context.c | 1 + base/applications/network/netsh/interpreter.c | 2 ++ base/applications/network/netsh/precomp.h | 1 + 3 files changed, 4 insertions(+) diff --git a/base/applications/network/netsh/context.c b/base/applications/network/netsh/context.c index 379415d407b..19dc29a6218 100644 --- a/base/applications/network/netsh/context.c +++ b/base/applications/network/netsh/context.c @@ -947,6 +947,7 @@ RegisterContext( { pContext->pfnCommitFn = pChildContext->pfnCommitFn; pContext->pfnDumpFn = pChildContext->pfnDumpFn; + pContext->pfnConnectFn = pChildContext->pfnConnectFn; pContext->ulPriority = (pChildContext->dwFlags & CMD_FLAG_PRIORITY) ? pChildContext->ulPriority : DEFAULT_CONTEXT_PRIORITY; diff --git a/base/applications/network/netsh/interpreter.c b/base/applications/network/netsh/interpreter.c index 1374eb029e7..99c730a342a 100644 --- a/base/applications/network/netsh/interpreter.c +++ b/base/applications/network/netsh/interpreter.c @@ -276,6 +276,8 @@ InterpretCommand( { DPRINT("Set current context\n"); pCurrentContext = pTempSubContext; + if (pCurrentContext->pfnConnectFn) + dwError = pCurrentContext->pfnConnectFn(pszMachine); State = STATE_DONE; break; } diff --git a/base/applications/network/netsh/precomp.h b/base/applications/network/netsh/precomp.h index 2272c00ac22..def0e3eac7a 100644 --- a/base/applications/network/netsh/precomp.h +++ b/base/applications/network/netsh/precomp.h @@ -115,6 +115,7 @@ typedef struct _CONTEXT_ENTRY ULONG ulPriority; PNS_CONTEXT_COMMIT_FN pfnCommitFn; PNS_CONTEXT_DUMP_FN pfnDumpFn; + PNS_CONTEXT_CONNECT_FN pfnConnectFn; PCOMMAND_ENTRY pCommandListHead; PCOMMAND_ENTRY pCommandListTail;