headers: add netcfgn.idl
Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
Signed-off-by: Liu Hao <lh_mouse@126.com>
diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index dec5eba..a014218 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -164,6 +164,7 @@
include/napsystemhealthagent.idl \
include/napsystemhealthvalidator.idl \
include/naptypes.idl \
+ include/netcfgn.idl \
include/netcfgx.idl \
include/netfw.idl \
include/netlistmgr.idl \
diff --git a/mingw-w64-headers/include/netcfgn.idl b/mingw-w64-headers/include/netcfgn.idl
new file mode 100644
index 0000000..e99f34d
--- /dev/null
+++ b/mingw-w64-headers/include/netcfgn.idl
@@ -0,0 +1,169 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+cpp_quote("#include <winapifamily.h>")
+
+cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
+
+#ifndef DO_NO_IMPORTS
+import "unknwn.idl";
+import "wtypes.idl";
+import "netcfgx.idl";
+#endif
+
+cpp_quote("")
+[local, object, uuid(8d84bd35-e227-11d2-b700-00a0c98a6a85), pointer_default(unique)]
+interface INetCfgPnpReconfigCallback : IUnknown {
+ typedef [v1_enum] enum tagNCPNP_RECONFIG_LAYER {
+ NCRL_NDIS = 1,
+ NCRL_TDI = 2
+ } NCPNP_RECONFIG_LAYER;
+
+ HRESULT SendPnpReconfig ([in] NCPNP_RECONFIG_LAYER Layer, [in] LPCWSTR pszwUpper, [in] LPCWSTR pszwLower, [in] PVOID pvData, [in] DWORD dwSizeOfData);
+};
+
+cpp_quote("")
+[local, object, uuid(932238df-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)]
+interface INetCfgComponentControl : IUnknown {
+ HRESULT Initialize ([in] INetCfgComponent *pIComp, [in] INetCfg *pINetCfg, [in] WINBOOL fInstalling);
+ HRESULT ApplyRegistryChanges ();
+ HRESULT ApplyPnpChanges ([in] INetCfgPnpReconfigCallback *pICallback);
+ HRESULT CancelChanges ();
+};
+
+cpp_quote("")
+[local, object, uuid(932238e3-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)]
+interface INetCfgComponentSetup : IUnknown {
+ typedef [v1_enum] enum tagNETWORK_INSTALL_TIME {
+ NSF_PRIMARYINSTALL = 0x00000001,
+ NSF_POSTSYSINSTALL = 0x00000002
+ } NETWORK_INSTALL_TIME;
+
+ typedef [v1_enum] enum tagNETWORK_UPGRADE_TYPE {
+ NSF_WIN16_UPGRADE = 0x00000010,
+ NSF_WIN95_UPGRADE = 0x00000020,
+ NSF_WINNT_WKS_UPGRADE = 0x00000040,
+ NSF_WINNT_SVR_UPGRADE = 0x00000080,
+ NSF_WINNT_SBS_UPGRADE = 0x00000100,
+ NSF_COMPONENT_UPDATE = 0x00000200
+ } NETWORK_UPGRADE_TYPE;
+
+ HRESULT Install ([in] DWORD dwSetupFlags);
+ HRESULT Upgrade ([in] DWORD dwSetupFlags, [in] DWORD dwUpgradeFomBuildNo );
+ HRESULT ReadAnswerFile ([in] LPCWSTR pszwAnswerFile, [in] LPCWSTR pszwAnswerSections);
+ HRESULT Removing ();
+};
+
+cpp_quote("")
+[local, object, uuid(932238e0-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)]
+interface INetCfgComponentPropertyUi : IUnknown {
+ typedef [v1_enum] enum tagDEFAULT_PAGES {
+ DPP_ADVANCED = 1,
+ } DEFAULT_PAGES;
+
+ HRESULT QueryPropertyUi ([in] IUnknown *pUnkReserved);
+ HRESULT SetContext ([in] IUnknown *pUnkReserved);
+ HRESULT MergePropPages ([in, out] DWORD *pdwDefPages, [out] BYTE **pahpspPrivate, [out] UINT *pcPages, [in] HWND hwndParent, [in] LPCWSTR *pszStartPage);
+ HRESULT ValidateProperties ([in] HWND hwndSheet);
+ HRESULT ApplyProperties ();
+ HRESULT CancelProperties ();
+};
+
+cpp_quote("")
+[local, object, uuid(932238e1-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)]
+interface INetCfgComponentNotifyBinding : IUnknown {
+ typedef [v1_enum] enum tagBIND_FLAGS1 {
+ NCN_ADD = 0x00000001,
+ NCN_REMOVE = 0x00000002,
+ NCN_UPDATE = 0x00000004,
+ NCN_ENABLE = 0x00000010,
+ NCN_DISABLE = 0x00000020,
+ NCN_BINDING_PATH = 0x00000100,
+ NCN_PROPERTYCHANGE = 0x00000200,
+ NCN_NET = 0x00010000,
+ NCN_NETTRANS = 0x00020000,
+ NCN_NETCLIENT = 0x00040000,
+ NCN_NETSERVICE = 0x00080000
+ } BIND_FLAGS1;
+
+ HRESULT QueryBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath);
+ HRESULT NotifyBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath);
+};
+
+cpp_quote("")
+[local, object, uuid(932238e2-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)]
+interface INetCfgComponentNotifyGlobal : IUnknown {
+ HRESULT GetSupportedNotifications ([out] DWORD *dwNotifications);
+ HRESULT SysQueryBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath);
+ HRESULT SysNotifyBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath);
+ HRESULT SysNotifyComponent ([in] DWORD dwChangeFlag, [in] INetCfgComponent *pIComp);
+};
+
+cpp_quote("")
+[local, object, uuid(932238e4-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)]
+interface INetCfgComponentUpperEdge : IUnknown {
+ HRESULT GetInterfaceIdsForAdapter ([in] INetCfgComponent *pAdapter, [out] DWORD *pdwNumInterfaces, [out] GUID **ppguidInterfaceIds);
+ HRESULT AddInterfacesToAdapter ([in] INetCfgComponent *pAdapter, [in] DWORD dwNumInterfaces);
+ HRESULT RemoveInterfacesFromAdapter ([in] INetCfgComponent *pAdapter, [in] DWORD dwNumInterfaces, [in] const GUID *pguidInterfaceIds);
+};
+
+cpp_quote("")
+[object, uuid(c08956a6-1cd3-11d1-b1c5-00805fc1270e), pointer_default(unique)]
+interface INetLanConnectionUiInfo : IUnknown {
+ HRESULT GetDeviceGuid ([out] GUID *pguid);
+};
+
+cpp_quote("")
+[object, uuid(faedcf58-31fe-11d1-aad2-00805fc1270e), pointer_default(unique)]
+interface INetRasConnectionIpUiInfo : IUnknown {
+ typedef enum tagRASCON_IPUI_FLAGS {
+ RCUIF_VPN = 0x00000001,
+ RCUIF_DEMAND_DIAL = 0x00000002,
+ RCUIF_NOT_ADMIN = 0x00000004,
+ RCUIF_USE_IPv4_STATICADDRESS = 0x00000008,
+ RCUIF_USE_IPv4_NAME_SERVERS = 0x00000010,
+ RCUIF_USE_IPv4_REMOTE_GATEWAY = 0x00000020,
+ RCUIF_USE_IPv4_EXPLICIT_METRIC = 0x00000040,
+ RCUIF_USE_HEADER_COMPRESSION = 0x00000080,
+ RCUIF_USE_DISABLE_REGISTER_DNS = 0x00000100,
+ RCUIF_USE_PRIVATE_DNS_SUFFIX = 0x00000200,
+ RCUIF_ENABLE_NBT = 0x00000400,
+ RCUIF_USE_IPv6_STATICADDRESS = 0x00000800,
+ RCUIF_USE_IPv6_NAME_SERVERS = 0x00001000,
+ RCUIF_USE_IPv6_REMOTE_GATEWAY = 0x00002000,
+ RCUIF_USE_IPv6_EXPLICIT_METRIC = 0x00004000,
+ RCUIF_DISABLE_CLASS_BASED_ROUTE = 0x00008000
+ } RASCON_UIINFO_FLAGS;
+
+ typedef struct tagRASCON_IPUI {
+ GUID guidConnection;
+ WINBOOL fIPv6Cfg;
+ DWORD dwFlags;
+ WCHAR pszwIpAddr[16];
+ WCHAR pszwDnsAddr[16];
+ WCHAR pszwDns2Addr[16];
+ WCHAR pszwWinsAddr[16];
+ WCHAR pszwWins2Addr[16];
+ WCHAR pszwDnsSuffix[256];
+ WCHAR pszwIpv6Addr[65];
+ DWORD dwIpv6PrefixLength;
+ WCHAR pszwIpv6DnsAddr[65];
+ WCHAR pszwIpv6Dns2Addr[65];
+ DWORD dwIPv4InfMetric;
+ DWORD dwIPv6InfMetric;
+ } RASCON_IPUI;
+
+ HRESULT GetUiInfo ([out] RASCON_IPUI *pInfo);
+};
+
+cpp_quote("")
+[local, object, uuid(c0e8ae9a-306e-11d1-aacf-00805fc1270e), pointer_default(unique)]
+interface INetCfgComponentSysPrep : IUnknown {
+ HRESULT SaveAdapterParameters([in] INetCfgSysPrep *pncsp, [in] LPCWSTR pszwAnswerSections, [in] GUID *pAdapterInstanceGuid);
+ HRESULT RestoreAdapterParameters([in] LPCWSTR pszwAnswerFile, [in] LPCWSTR pszwAnswerSection, [in] GUID *pAdapterInstanceGuid);
+};
+
+cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */")