Rebase against b89c9c60d50cf21650331d1528ff965c319a1217.

This commit is contained in:
Alistair Leslie-Hughes 2024-06-05 09:04:45 +10:00
parent 03c0de0368
commit 6e641992a3
5 changed files with 45 additions and 427 deletions

View File

@ -1,4 +1,4 @@
From a207d7f2c77296798e047ed03d88d8a060139aff Mon Sep 17 00:00:00 2001
From 8dcb8ee100c5f81cef92ec98376288253b021f6a Mon Sep 17 00:00:00 2001
From: Jason Edmeades <us@edmeades.me.uk>
Date: Tue, 16 Jul 2019 13:49:18 +1000
Subject: [PATCH] cmd: Support for launching programs based on file association
@ -11,14 +11,14 @@ fred.msi for msiexec to be launched.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=18154
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=36646
---
programs/cmd/wcmdmain.c | 138 +++++++++++++++++++++++++++++-----------
1 file changed, 102 insertions(+), 36 deletions(-)
programs/cmd/wcmdmain.c | 139 +++++++++++++++++++++++++++++-----------
1 file changed, 102 insertions(+), 37 deletions(-)
diff --git a/programs/cmd/wcmdmain.c b/programs/cmd/wcmdmain.c
index cacb7ea7751..19a807c1624 100644
index 5f1a94b39b3..487be39c954 100644
--- a/programs/cmd/wcmdmain.c
+++ b/programs/cmd/wcmdmain.c
@@ -1135,8 +1135,10 @@ void WCMD_run_program (WCHAR *command, BOOL called)
@@ -1385,8 +1385,10 @@ void WCMD_run_program (WCHAR *command, BOOL called)
/* 1. If extension supplied, see if that file exists */
if (extensionsupplied) {
@ -30,7 +30,7 @@ index cacb7ea7751..19a807c1624 100644
}
}
@@ -1166,6 +1168,7 @@ void WCMD_run_program (WCHAR *command, BOOL called)
@@ -1416,6 +1418,7 @@ void WCMD_run_program (WCHAR *command, BOOL called)
}
if (GetFileAttributesW(thisDir) != INVALID_FILE_ATTRIBUTES) {
@ -38,7 +38,7 @@ index cacb7ea7751..19a807c1624 100644
found = TRUE;
thisExt = NULL;
}
@@ -1187,52 +1190,115 @@ void WCMD_run_program (WCHAR *command, BOOL called)
@@ -1437,52 +1440,114 @@ void WCMD_run_program (WCHAR *command, BOOL called)
/* Special case BAT and CMD */
if (ext && (!wcsicmp(ext, L".bat") || !wcsicmp(ext, L".cmd"))) {
BOOL oldinteractive = interactive;
@ -46,11 +46,9 @@ index cacb7ea7751..19a807c1624 100644
interactive = FALSE;
WCMD_batch (thisDir, command, called, NULL, INVALID_HANDLE_VALUE);
interactive = oldinteractive;
+ WINE_TRACE("Back from call to batch program\n");
return;
- } else {
+ }
- DWORD exit_code;
- /* thisDir contains the file to be launched, but with what?
- eg. a.exe will require a.exe to be launched, a.html may be iexplore */
- hinst = FindExecutableW (thisDir, NULL, temp);
@ -74,6 +72,8 @@ index cacb7ea7751..19a807c1624 100644
- WCMD_strip_quotes(command);
- opt_s = TRUE;
- WCMD_run_program(command, called);
+ }
+
+ /* Calculate what program will be launched, and whether it is a
+ console application or not. Note the program may be different
+ from the parameter (eg running a .txt file will launch notepad.exe) */
@ -157,8 +157,8 @@ index cacb7ea7751..19a807c1624 100644
- or for console applications */
- if (!interactive || (console && !HIWORD(console)))
- WaitForSingleObject (pe.hProcess, INFINITE);
- GetExitCodeProcess (pe.hProcess, &errorlevel);
- if (errorlevel == STILL_ACTIVE) errorlevel = 0;
- GetExitCodeProcess (pe.hProcess, &exit_code);
- errorlevel = (exit_code == STILL_ACTIVE) ? 0 : exit_code;
+ if (!status) {
+ WINE_TRACE("Failed to launch via CreateProcess, rc %d (%ld)\n",
+ status, GetLastError());
@ -190,5 +190,5 @@ index cacb7ea7751..19a807c1624 100644
}
--
2.29.2
2.43.0

View File

@ -1,387 +0,0 @@
From 31bf9cce575827299aae5e2bbf8f97f6e5f44cc6 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 28 May 2021 12:34:37 +1000
Subject: [PATCH] include: Add windows.networking.connectivity.idl
---
include/windows.networking.connectivity.idl | 358 ++++++++++++++++++--
1 file changed, 331 insertions(+), 27 deletions(-)
diff --git a/include/windows.networking.connectivity.idl b/include/windows.networking.connectivity.idl
index 8c6489ba13b..97727da8962 100644
--- a/include/windows.networking.connectivity.idl
+++ b/include/windows.networking.connectivity.idl
@@ -28,39 +28,343 @@ import "windows.foundation.idl";
/* import "windows.networking.idl"; */
import "windows.storage.streams.idl";
-namespace Windows.Networking.Connectivity {
- interface IIPInformation;
- interface INetworkAdapter;
-
- runtimeclass IPInformation;
- runtimeclass NetworkAdapter;
-
- [
- contract(Windows.Foundation.UniversalApiContract, 1.0),
- exclusiveto(Windows.Networking.Connectivity.IPInformation),
- uuid(d85145e0-138f-47d7-9b3a-36bb488cef33)
- ]
- interface IIPInformation : IInspectable
+namespace Windows
+{
+ namespace Foundation
{
- [propget] HRESULT NetworkAdapter([out, retval] Windows.Networking.Connectivity.NetworkAdapter **value);
- [propget] HRESULT PrefixLength([out, retval] Windows.Foundation.IReference<BYTE> **value);
+ interface IClosable;
+
+ /*runtimeclass Uri;*/
}
+}
- [
- contract(Windows.Foundation.UniversalApiContract, 1.0),
- marshaling_behavior(agile)
- ]
- runtimeclass IPInformation
+namespace Windows
+{
+ namespace Networking
{
- [default] interface Windows.Networking.Connectivity.IIPInformation;
+ /*typedef enum DomainNameType DomainNameType;*/
+
+ /*runtimeclass EndpointPair;*/
+
+ /*runtimeclass HostName;*/
+
+ /*typedef enum HostNameSortOptions HostNameSortOptions;*/
}
+}
- [
- contract(Windows.Foundation.UniversalApiContract, 1.0),
- marshaling_behavior(agile),
- ]
- runtimeclass NetworkAdapter
+namespace Windows
+{
+ namespace Networking
{
- [default] interface Windows.Networking.Connectivity.INetworkAdapter;
+ namespace Connectivity
+ {
+ runtimeclass ConnectionCost;
+ runtimeclass ConnectionProfile;
+ runtimeclass DataPlanStatus;
+ runtimeclass DataPlanUsage;
+ runtimeclass DataUsage;
+ runtimeclass IPInformation;
+ runtimeclass LanIdentifier;
+ runtimeclass LanIdentifierData;
+ runtimeclass NetworkAdapter;
+ runtimeclass NetworkInformation;
+ runtimeclass NetworkSecuritySettings;
+ runtimeclass ProxyConfiguration;
+
+ typedef enum NetworkConnectivityLevel NetworkConnectivityLevel;
+ typedef enum NetworkCostType NetworkCostType;
+ typedef enum RoamingStates RoamingStates;
+ typedef enum NetworkAuthenticationType NetworkAuthenticationType;
+ typedef enum NetworkEncryptionType NetworkEncryptionType;
+
+ declare
+ {
+ interface Windows.Foundation.Collections.IVectorView<Windows.Networking.Connectivity.ConnectionProfile*>;
+ interface Windows.Foundation.Collections.IVectorView<Windows.Networking.Connectivity.LanIdentifier*>;
+ /*interface Windows.Foundation.Collections.IVectorView<Windows.Networking.HostName*>;*/
+ /*interface Windows.Foundation.Collections.IVectorView<Windows.Networking.EndpointPair*>;*/
+
+
+ /*interface Windows.Foundation.Collections.IIterable<Windows.Networking.EndpointPair*>;*/
+
+ /*interface Windows.Foundation.IAsyncOperation<Windows.Networking.Connectivity.ProxyConfiguration*>;*/
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ enum NetworkConnectivityLevel
+ {
+ None,
+ LocalAccess,
+ ConstrainedInternetAccess,
+ InternetAccess
+ };
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ enum NetworkCostType
+ {
+ Unknown,
+ Unrestricted,
+ Fixed,
+ Variable
+ };
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [flags]
+ enum RoamingStates
+ {
+ None = 0x0,
+ NotRoaming = 0x1,
+ Roaming = 0x2
+ };
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ enum NetworkAuthenticationType
+ {
+ None,
+ Unknown,
+ Open80211,
+ SharedKey80211,
+ Wpa,
+ WpaPsk,
+ WpaNone,
+ Rsna,
+ RsnaPsk,
+ Ihv
+ };
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ enum NetworkEncryptionType
+ {
+ None,
+ Unknown,
+ Wep,
+ Wep40,
+ Wep104,
+ Tkip,
+ Ccmp,
+ WpaUseGroup,
+ RsnUseGroup,
+ Ihv
+ };
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [uuid(71ba143f-598e-49d0-84eb-8febaedcc195)]
+ delegate HRESULT NetworkStatusChangedEventHandler([in] IInspectable* sender);
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.ConnectionProfile)]
+ [uuid(71ba143c-598e-49d0-84eb-8febaedcc195)]
+ interface IConnectionProfile : IInspectable
+ {
+ [propget] HRESULT ProfileName([out, retval] HSTRING* value);
+ HRESULT GetNetworkConnectivityLevel([out, retval] Windows.Networking.Connectivity.NetworkConnectivityLevel* value);
+ HRESULT GetNetworkNames([out, retval] Windows.Foundation.Collections.IVectorView<HSTRING>** value);
+ HRESULT GetConnectionCost([out, retval] Windows.Networking.Connectivity.ConnectionCost** value);
+ HRESULT GetDataPlanStatus([out, retval] Windows.Networking.Connectivity.DataPlanStatus** value);
+ [propget] HRESULT NetworkAdapter([out, retval] Windows.Networking.Connectivity.NetworkAdapter** value);
+ HRESULT GetLocalUsage([in] Windows.Foundation.DateTime start, [in] Windows.Foundation.DateTime end,
+ [out, retval] Windows.Networking.Connectivity.DataUsage** value);
+ HRESULT GetLocalUsagePerRoamingStates([in] Windows.Foundation.DateTime start,
+ [in] Windows.Foundation.DateTime end, [in] Windows.Networking.Connectivity.RoamingStates states,
+ [out, retval] Windows.Networking.Connectivity.DataUsage** value);
+ [propget] HRESULT NetworkSecuritySettings([out, retval] Windows.Networking.Connectivity.NetworkSecuritySettings** value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.LanIdentifier)]
+ [uuid(48aa53aa-1108-4546-a6cb-9a74da4b7ba0)]
+ interface ILanIdentifier : IInspectable
+ {
+ [propget] HRESULT InfrastructureId([out, retval] Windows.Networking.Connectivity.LanIdentifierData** value);
+ [propget] HRESULT PortId([out, retval] Windows.Networking.Connectivity.LanIdentifierData** value);
+ [propget] HRESULT NetworkAdapterId([out, retval] GUID* value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.LanIdentifierData)]
+ [uuid(a74e83c3-d639-45be-a36a-c4e4aeaf6d9b)]
+ interface ILanIdentifierData : IInspectable
+ {
+ [propget] HRESULT Type([out, retval] UINT32* value);
+ [propget] HRESULT Value([out,retval] /*Windows.Foundation.Collections.IVectorView<BYTE>** */ BYTE **value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.IPInformation)]
+ [uuid(d85145e0-138f-47d7-9b3a-36bb488cef33)]
+ interface IIPInformation : IInspectable
+ {
+ [propget] HRESULT NetworkAdapter([out, retval] Windows.Networking.Connectivity.NetworkAdapter **value);
+ [propget] HRESULT PrefixLength([out, retval] Windows.Foundation.IReference<BYTE> **value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.NetworkInformation)]
+ [uuid(5074f851-950d-4165-9c15-365619481eea)]
+ interface INetworkInformationStatics : IInspectable
+ {
+ HRESULT GetConnectionProfiles([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Networking.Connectivity.ConnectionProfile*>** value);
+ HRESULT GetInternetConnectionProfile([out, retval] Windows.Networking.Connectivity.ConnectionProfile** value);
+ HRESULT GetLanIdentifiers([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Networking.Connectivity.LanIdentifier*>** value);
+ HRESULT GetHostNames([out, retval] /*Windows.Foundation.Collections.IVectorView<Windows.Networking.HostName*>** */ DWORD **value);
+ HRESULT GetProxyConfigurationAsync(/*[in] Windows.Foundation.Uri* */ char* uri,
+ [out, retval] /*Windows.Foundation.IAsyncOperation<Windows.Networking.Connectivity.ProxyConfiguration*>** */ DWORD **value);
+ HRESULT GetSortedEndpointPairs([in] /* Windows.Foundation.Collections.IIterable<Windows.Networking.EndpointPair*>* */ DWORD *endpoint,
+ [in] /*Windows.Networking.HostNameSortOptions*/ DWORD options,
+ [out, retval] /*Windows.Foundation.Collections.IVectorView<Windows.Networking.EndpointPair*>** */ DWORD **value);
+ [eventadd] HRESULT NetworkStatusChanged([in] Windows.Networking.Connectivity.NetworkStatusChangedEventHandler* handler,
+ [out, retval] EventRegistrationToken* eventCookie);
+ [eventremove] HRESULT NetworkStatusChanged([in] EventRegistrationToken cookie);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.ConnectionCost)]
+ [uuid(bad7d829-3416-4b10-a202-bac0b075bdae)]
+ interface IConnectionCost : IInspectable
+ {
+ [propget] HRESULT NetworkCostType([out, retval] Windows.Networking.Connectivity.NetworkCostType* value);
+ [propget] HRESULT Roaming([out, retval] boolean* value);
+ [propget] HRESULT OverDataLimit([out, retval] boolean* value);
+ [propget] HRESULT ApproachingDataLimit([out, retval] boolean* value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.DataUsage)]
+ [uuid(c1431dd3-b146-4d39-b959-0c69b096c512)]
+ interface IDataUsage : IInspectable
+ {
+ [propget] HRESULT BytesSent([out, retval] UINT64* value);
+ [propget] HRESULT BytesReceived([out, retval] UINT64* value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.NetworkAdapter)]
+ [uuid(3b542e03-5388-496c-a8a3-affd39aec2e6)]
+ interface INetworkAdapter : IInspectable
+ {
+ [propget] HRESULT OutboundMaxBitsPerSecond([out, retval] UINT64* value);
+ [propget] HRESULT InboundMaxBitsPerSecond([out ,retval] UINT64* value);
+ [propget] HRESULT IanaInterfaceType([out, retval] UINT32* value);
+ [propget] HRESULT NetworkItem([out, retval] /*Windows.Networking.Connectivity.NetworkItem** */ DWORD **value);
+ [propget] HRESULT NetworkAdapterId([out, retval] GUID* value);
+ HRESULT GetConnectedProfileAsync([out, retval] /*Windows.Foundation.IAsyncOperation<Windows.Networking.Connectivity.ConnectionProfile*>** */ DWORD **value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.NetworkSecuritySettings)]
+ [uuid(7CA07E8D-917B-4B5F-B84D-28F7A5AC5402)]
+ interface INetworkSecuritySettings : IInspectable
+ {
+ [propget] HRESULT NetworkAuthenticationType([out, retval] Windows.Networking.Connectivity.NetworkAuthenticationType* value);
+ [propget] HRESULT NetworkEncryptionType([out, retval] Windows.Networking.Connectivity.NetworkEncryptionType* value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.DataPlanUsage)]
+ [uuid(b921492d-3b44-47ff-b361-be59e69ed1b0)]
+ interface IDataPlanUsage : IInspectable
+ {
+ [propget] HRESULT MegabytesUsed([out] [retval] UINT32* value);
+ [propget] HRESULT LastSyncTime([out] [retval] Windows.Foundation.DateTime* value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [exclusiveto(Windows.Networking.Connectivity.DataPlanStatus)]
+ [uuid(977a8b8c-3885-40f3-8851-42cd2bd568bb)]
+ interface IDataPlanStatus : IInspectable
+ {
+ [propget] HRESULT DataPlanUsage([out, retval] Windows.Networking.Connectivity.DataPlanUsage** value);
+ [propget] HRESULT DataLimitInMegabytes([out, retval] /*Windows.Foundation.IReference<UINT32>** */ UINT32 **value);
+ [propget] HRESULT InboundBitsPerSecond([out, retval] /* Windows.Foundation.IReference<UINT64>** */ UINT64 **value);
+ [propget] HRESULT OutboundBitsPerSecond([out, retval] /* Windows.Foundation.IReference<UINT64>** */ UINT64 **value);
+ [propget] HRESULT NextBillingCycle([out, retval] /* Windows.Foundation.IReference<Windows.Foundation.DateTime>** */ UINT64 **value);
+ [propget] HRESULT MaxTransferSizeInMegabytes([out, retval] /*Windows.Foundation.IReference<UINT32>** */ UINT32 **value);
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass DataPlanStatus
+ {
+ [default] interface Windows.Networking.Connectivity.IDataPlanStatus;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass DataUsage
+ {
+ [default] interface Windows.Networking.Connectivity.IDataUsage;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass NetworkAdapter
+ {
+ [default] interface Windows.Networking.Connectivity.INetworkAdapter;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass DataPlanUsage
+ {
+ [default] interface Windows.Networking.Connectivity.IDataPlanUsage;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ [static(Windows.Networking.Connectivity.INetworkInformationStatics, Windows.Foundation.UniversalApiContract, 1.0)]
+ /*[static(Windows.Networking.Connectivity.INetworkInformationStatics2, Windows.Foundation.UniversalApiContract, 1.0)]*/
+ runtimeclass NetworkInformation
+ {
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass IPInformation
+ {
+ [default] interface Windows.Networking.Connectivity.IIPInformation;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass NetworkSecuritySettings
+ {
+ [default] interface Windows.Networking.Connectivity.INetworkSecuritySettings;
+ }
+
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass ConnectionProfile
+ {
+ [default] interface Windows.Networking.Connectivity.IConnectionProfile;
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Networking.Connectivity.IConnectionProfile2;
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Networking.Connectivity.IConnectionProfile3;
+ [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Networking.Connectivity.IConnectionProfile4;
+ [contract(Windows.Foundation.UniversalApiContract, 7.0)] interface Windows.Networking.Connectivity.IConnectionProfile5;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass ConnectionCost
+ {
+ [default] interface Windows.Networking.Connectivity.IConnectionCost;
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Networking.Connectivity.IConnectionCost2;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass LanIdentifier
+ {
+ [default] interface Windows.Networking.Connectivity.ILanIdentifier;
+ }
+
+ [contract(Windows.Foundation.UniversalApiContract, 1.0)]
+ [marshaling_behavior(agile)]
+ runtimeclass LanIdentifierData
+ {
+ [default] interface Windows.Networking.Connectivity.ILanIdentifierData;
+ }
+
+ }
}
}
--
2.40.1

View File

@ -1,22 +1,19 @@
From bb14d124f11785e8abd8abdbc0a15854d88848ce Mon Sep 17 00:00:00 2001
From 49769a580bc4ce9a12a74d6f3c79cc32aa42acd5 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Tue, 1 Jun 2021 11:10:25 +1000
Subject: [PATCH 5/8] windows.networking.connectivity: Implement
INetworkInformationStatics stubs.
Subject: windows.networking.connectivity: Implement INetworkInformationStatics
stubs.
v2:
Fixed QueryInterfaces
Based off patch by Esdras Tarsis.
---
.../windows.networking.connectivity_main.c | 242 ++++++++++++++++++
1 file changed, 242 insertions(+)
diff --git a/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c b/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c
index 2463cc2c93c..b96e6c4f0a4 100644
index 219170366be..2a0185dd009 100644
--- a/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c
+++ b/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c
@@ -10,6 +10,9 @@
@@ -10,12 +10,17 @@
#include "initguid.h"
#include "activation.h"
@ -26,7 +23,6 @@ index 2463cc2c93c..b96e6c4f0a4 100644
WINE_DEFAULT_DEBUG_CHANNEL(network);
@@ -25,6 +28,8 @@ static const char *debugstr_hstring(HSTRING hstr)
struct windows_networking_connectivity
{
IActivationFactory IActivationFactory_iface;
@ -35,7 +31,7 @@ index 2463cc2c93c..b96e6c4f0a4 100644
LONG refcount;
};
@@ -33,9 +38,237 @@ static inline struct windows_networking_connectivity *impl_from_IActivationFacto
@@ -24,9 +29,240 @@ static inline struct windows_networking_connectivity *impl_from_IActivationFacto
return CONTAINING_RECORD(iface, struct windows_networking_connectivity, IActivationFactory_iface);
}
@ -214,19 +210,22 @@ index 2463cc2c93c..b96e6c4f0a4 100644
+ return E_NOTIMPL;
+}
+
+static HRESULT STDMETHODCALLTYPE network_information_statics_GetHostNames(INetworkInformationStatics *iface, DWORD **value)
+static HRESULT STDMETHODCALLTYPE network_information_statics_GetHostNames(INetworkInformationStatics *iface, __FIVectorView_1_Windows__CNetworking__CHostName **value)
+{
+ FIXME("iface %p, %p stub!\n", iface, value);
+ return E_NOTIMPL;
+}
+
+static HRESULT STDMETHODCALLTYPE network_information_statics_GetProxyConfigurationAsync(INetworkInformationStatics *iface, char *name, DWORD **value)
+static HRESULT STDMETHODCALLTYPE network_information_statics_GetProxyConfigurationAsync(INetworkInformationStatics *iface, __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *name,
+ __FIAsyncOperation_1_Windows__CNetworking__CConnectivity__CProxyConfiguration **value)
+{
+ FIXME("iface %p, %p, %p stub!\n", iface, name, value);
+ return E_NOTIMPL;
+}
+
+static HRESULT STDMETHODCALLTYPE network_information_statics_GetSortedEndpointPairs(INetworkInformationStatics *iface, DWORD* destinationList, DWORD sortOptions, DWORD **value)
+static HRESULT STDMETHODCALLTYPE network_information_statics_GetSortedEndpointPairs(INetworkInformationStatics *iface, __FIIterable_1_Windows__CNetworking__CEndpointPair* destinationList,
+ enum __x_ABI_CWindows_CNetworking_CHostNameSortOptions sortOptions,
+ __FIVectorView_1_Windows__CNetworking__CEndpointPair **value)
+{
+ FIXME("iface %p, %p stub!\n", iface, value);
+ return E_NOTIMPL;
@ -273,7 +272,7 @@ index 2463cc2c93c..b96e6c4f0a4 100644
TRACE("iface %p, iid %s, object %p stub!\n", iface, debugstr_guid(iid), object);
if (IsEqualGUID(iid, &IID_IUnknown) ||
@@ -48,6 +281,13 @@ static HRESULT STDMETHODCALLTYPE windows_networking_connectivity_QueryInterface(
@@ -39,6 +275,13 @@ static HRESULT STDMETHODCALLTYPE windows_networking_connectivity_QueryInterface(
return S_OK;
}
@ -287,7 +286,7 @@ index 2463cc2c93c..b96e6c4f0a4 100644
FIXME("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(iid));
*object = NULL;
return E_NOINTERFACE;
@@ -115,6 +355,8 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl =
@@ -106,6 +349,8 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl =
static struct windows_networking_connectivity windows_networking_connectivity =
{
{&activation_factory_vtbl},
@ -296,6 +295,3 @@ index 2463cc2c93c..b96e6c4f0a4 100644
1
};
--
2.30.2

View File

@ -1,19 +1,23 @@
From f16ea174f68d257a7244d3365ac54eb5ccf7bff3 Mon Sep 17 00:00:00 2001
From 40f1be260d9741017d2bd4e755b3ce1b09187b3d Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Mon, 25 Mar 2024 08:38:33 +1100
Subject: [PATCH] windows.networking.connectivity: Register interfaces
---
.../Makefile.in | 1 +
.../classes.idl | 23 +++++++++++++++++++
2 files changed, 24 insertions(+)
.../Makefile.in | 2 ++
.../classes.idl | 28 +++++++++++++++++++
2 files changed, 30 insertions(+)
create mode 100644 dlls/windows.networking.connectivity/classes.idl
diff --git a/dlls/windows.networking.connectivity/Makefile.in b/dlls/windows.networking.connectivity/Makefile.in
index 3f0895ab567..d875e492aad 100644
index 3f0895ab567..43c512a2213 100644
--- a/dlls/windows.networking.connectivity/Makefile.in
+++ b/dlls/windows.networking.connectivity/Makefile.in
@@ -4,4 +4,5 @@ IMPORTS = combase uuid
@@ -1,7 +1,9 @@
MODULE = windows.networking.connectivity.dll
IMPORTS = combase uuid
+EXTRAIDLFLAGS = -DDO_NO_IMPORTS
EXTRADLLFLAGS = -mno-cygwin
SOURCES = \
@ -21,10 +25,10 @@ index 3f0895ab567..d875e492aad 100644
windows.networking.connectivity_main.c
diff --git a/dlls/windows.networking.connectivity/classes.idl b/dlls/windows.networking.connectivity/classes.idl
new file mode 100644
index 00000000000..45f17fa645d
index 00000000000..548a62be964
--- /dev/null
+++ b/dlls/windows.networking.connectivity/classes.idl
@@ -0,0 +1,23 @@
@@ -0,0 +1,28 @@
+/*
+ * Runtime Classes for windows.networking.hostname.dll
+ *
@ -47,6 +51,11 @@ index 00000000000..45f17fa645d
+
+#pragma makedep register
+
+#ifdef __WIDL__
+#pragma winrt ns_prefix
+#endif
+
+#define DO_NO_IMPORTS
+#include "windows.networking.connectivity.idl"
--
2.43.0

View File

@ -1 +1 @@
b6abacbb7b0ed2fb3557d23f716878214b156c8c
b89c9c60d50cf21650331d1528ff965c319a1217