From 8dc9e50c09ef042fe68afccdf1499136bd1ecdb5 Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Tue, 21 Apr 2026 22:22:44 +0200 Subject: [PATCH] [NETCFGX][REACTOS][UUID] Uncover one of many secrets of netcfgx.dll The second parameter of the first function of the INetCfgComponentPrivate interface seems to be a REFIID. Netsh calls this function with an undocumented GUID called ITcpipProperties (see https://github.com/nihilus/GUID-Finder/blob/master/GUID-Finder/Interfaces.txt). --- dll/win32/netcfgx/inetcfgcomp_iface.c | 4 ++-- sdk/include/reactos/netcfgx_undoc.h | 2 +- sdk/lib/uuid/otherguids.c | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/dll/win32/netcfgx/inetcfgcomp_iface.c b/dll/win32/netcfgx/inetcfgcomp_iface.c index 51cf122a7fd..69bdb4f981d 100644 --- a/dll/win32/netcfgx/inetcfgcomp_iface.c +++ b/dll/win32/netcfgx/inetcfgcomp_iface.c @@ -220,11 +220,11 @@ HRESULT WINAPI INetCfgComponentPrivate_fnUnknown1( INetCfgComponentPrivate *iface, - DWORD dwParam1, + REFIID iid, DWORD dwParam2) { // INetCfgComponentImpl *This = impl_from_INetCfgComponentPrivate(iface); - ERR("INetCfgComponentPrivate_fnUnknown1(%p %lx %lx)\n", iface, dwParam1, dwParam2); + ERR("INetCfgComponentPrivate_fnUnknown1(%p %s %lx)\n", iface, wine_dbgstr_guid(iid), dwParam2); return S_OK; } diff --git a/sdk/include/reactos/netcfgx_undoc.h b/sdk/include/reactos/netcfgx_undoc.h index 32ff6f7110e..0cea0c43df3 100644 --- a/sdk/include/reactos/netcfgx_undoc.h +++ b/sdk/include/reactos/netcfgx_undoc.h @@ -8,7 +8,7 @@ DECLARE_INTERFACE_(INetCfgComponentPrivate, IUnknown) STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void **ppv) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; - STDMETHOD_(HRESULT,Unknown1)(THIS_ DWORD dwParam1, DWORD dwParam2) PURE; + STDMETHOD_(HRESULT,Unknown1)(THIS_ REFIID riid, DWORD dwParam2) PURE; /* ??? */ }; #undef INTERFACE diff --git a/sdk/lib/uuid/otherguids.c b/sdk/lib/uuid/otherguids.c index 1ae282adb83..ca46ab6e9cf 100644 --- a/sdk/lib/uuid/otherguids.c +++ b/sdk/lib/uuid/otherguids.c @@ -34,6 +34,7 @@ DEFINE_GUID(IID_INetCfgComponentNotifyBinding, 0x932238E1,0xBEA1,0x11D0,0x92,0x9 DEFINE_GUID(IID_INetCfgComponentNotifyGlobal, 0x932238E2,0xBEA1,0x11D0,0x92,0x98,0x00,0xC0,0x4f,0xC9,0x9D,0xCF); DEFINE_GUID(IID_INetCfgComponentSetup, 0x932238E3,0xBEA1,0x11D0,0x92,0x98,0x00,0xC0,0x4f,0xC9,0x9D,0xCF); DEFINE_GUID(IID_INetCfgComponentUpperEdge, 0x932238E4,0xBEA1,0x11D0,0x92,0x98,0x00,0xC0,0x4F,0xC9,0x9D,0xCF); +DEFINE_GUID(IID_ITcpipProperties, 0x98133271,0x4B20,0x11D1,0xAB,0x01,0x00,0x80,0x5F,0xC1,0x27,0x0E); DEFINE_GUID(FMTID_SummaryInformation,0xF29F85E0,0x4FF9,0x1068,0xAB,0x91,0x08,0x00,0x2B,0x27,0xB3,0xD9); DEFINE_GUID(FMTID_DocSummaryInformation,0xD5CDD502,0x2E9C,0x101B,0x93,0x97,0x08,0x00,0x2B,0x2C,0xF9,0xAE); DEFINE_GUID(FMTID_UserDefinedProperties,0xD5CDD505,0x2E9C,0x101B,0x93,0x97,0x08,0x00,0x2B,0x2C,0xF9,0xAE);