Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58635
This fixes the follow-up bug in CapCut: after clicking "Create Project" there's a crash into unimplemented call to GetPerTcp6ConnectionEStats. With this patch in place bug 58635 is fixed, no more craches appear.
From: Louis Lenders xerox.xerox2000x@gmail.com
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58635
This fixes the follow-up bug in CapCut: after clicking "Create Project" there's a crash into unimplemented call to GetPerTcp6ConnectionEStats. With this patch in place bug 58635 is fixed, no more craches appear. --- dlls/iphlpapi/iphlpapi.spec | 2 +- dlls/iphlpapi/iphlpapi_main.c | 14 +++++++++++++- include/iphlpapi.h | 4 ++++ 3 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/dlls/iphlpapi/iphlpapi.spec b/dlls/iphlpapi/iphlpapi.spec index f936d7d679d..81aeecd004e 100644 --- a/dlls/iphlpapi/iphlpapi.spec +++ b/dlls/iphlpapi/iphlpapi.spec @@ -128,7 +128,7 @@ #@ stub GetOwnerModuleFromUdp6Entry #@ stub GetOwnerModuleFromUdpEntry @ stdcall GetPerAdapterInfo( long ptr ptr ) -#@ stub GetPerTcp6ConnectionEStats +@ stdcall GetPerTcp6ConnectionEStats( ptr long ptr long long ptr long long ptr long long ) #@ stub GetPerTcp6ConnectionStats @ stdcall GetPerTcpConnectionEStats( ptr long ptr long long ptr long long ptr long long ) #@ stub GetPerTcpConnectionStats diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c index 47525c5a7da..7b0384a7d1f 100644 --- a/dlls/iphlpapi/iphlpapi_main.c +++ b/dlls/iphlpapi/iphlpapi_main.c @@ -4132,6 +4132,19 @@ ULONG WINAPI GetPerTcpConnectionEStats(MIB_TCPROW *row, TCP_ESTATS_TYPE stats, U return ERROR_CALL_NOT_IMPLEMENTED; }
+/*********************************************************************** + * GetPerTcp6ConnectionEStats (IPHLPAPI.@) + */ +ULONG WINAPI GetPerTcp6ConnectionEStats(MIB_TCP6ROW *row, TCP_ESTATS_TYPE stats, UCHAR *rw, ULONG rw_version, + ULONG rw_size, UCHAR *ro_static, ULONG ro_static_version, + ULONG ro_static_size, UCHAR *ro_dynamic, ULONG ro_dynamic_version, + ULONG ro_dynamic_size) +{ + FIXME( "(%p, %d, %p, %ld, %ld, %p, %ld, %ld, %p, %ld, %ld): stub\n", row, stats, rw, rw_version, rw_size, + ro_static, ro_static_version, ro_static_size, ro_dynamic, ro_dynamic_version, ro_dynamic_size ); + return ERROR_CALL_NOT_IMPLEMENTED; +} + /****************************************************************** * SetPerTcpConnectionEStats (IPHLPAPI.@) */ @@ -4663,7 +4676,6 @@ DWORD WINAPI GetIpInterfaceEntry( MIB_IPINTERFACE_ROW *row ) return ERROR_SUCCESS; }
- /****************************************************************** * GetBestRoute2 (IPHLPAPI.@) */ diff --git a/include/iphlpapi.h b/include/iphlpapi.h index c93542c6be5..9daf864a92b 100644 --- a/include/iphlpapi.h +++ b/include/iphlpapi.h @@ -72,6 +72,10 @@ IPHLPAPI_DLL_LINKAGE ULONG WINAPI GetPerTcpConnectionEStats(MIB_TCPROW *row, TCP ULONG rw_size, UCHAR *ro_static, ULONG ro_static_version, ULONG ro_static_size, UCHAR *ro_dynamic, ULONG ro_dynamic_version, ULONG ro_dynamic_size); +IPHLPAPI_DLL_LINKAGE ULONG WINAPI GetPerTcp6ConnectionEStats(MIB_TCP6ROW *row, TCP_ESTATS_TYPE stats, UCHAR *rw, ULONG rw_version, + ULONG rw_size, UCHAR *ro_static, ULONG ro_static_version, + ULONG ro_static_size, UCHAR *ro_dynamic, ULONG ro_dynamic_version, + ULONG ro_dynamic_size); IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetUdpStatistics(PMIB_UDPSTATS pStats); IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetUdpStatisticsEx(PMIB_UDPSTATS pStats, DWORD dwFamily); IPHLPAPI_DLL_LINKAGE DWORD WINAPI SetIfEntry(PMIB_IFROW pIfRow);
This merge request was approved by Huw Davies.