https://bugs.winehq.org/show_bug.cgi?id=49819
Bug ID: 49819 Summary: EveMon (v 4.0.18.4979): (with dotnet461) crashes on add character Product: Wine Version: 5.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: httpapi Assignee: wine-bugs@winehq.org Reporter: maxwellc@gmail.com Distribution: ---
Created attachment 68155 --> https://bugs.winehq.org/attachment.cgi?id=68155 Report from EVEMon of the problem
Program: EVEMon 4.0.18.4979 (https://appdb.winehq.org/objectManager.php?sClass=application&iId=9346)
Download Link: https://github.com/peterhaneve/evemon/releases/tag/4.0.18 60c649699694060f0175e5830e9381ad9189593a EVEMon-install-4.0.18.exe
Wine Version is both 5.0 Ubuntu and 5.16
Setup:
Following suggestion in https://appdb.winehq.org/objectManager.php?sClass=version&iId=29658
Prior to upgrade to 5.16 from devel repo,
winetricks dotnet461 corefonts
From Linux Command line
wine /tmp/EVEMon-install-4.0.18.exe Click through installation prompts.
Offers to launch on conclusion.
Exited.
WINEDEBUG='fixme+all,err+all' wine "Program Files/EVEMon/EVEMon.exe"
Program runs but attempting to perform File->Add Character crashes the program.
Program brings up report on the problem attached as "EveMonCrashOwnWords.log"
Second attachment of output with WINEDEBUG="err+all,warn+all,fixme+all"
Unable to reproduce on clean 5.16 prefix since winetricks dotnet461 "is broken since 5.12"
https://bugs.winehq.org/show_bug.cgi?id=49819
Chris Maxwell maxwellc@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Ubuntu
https://bugs.winehq.org/show_bug.cgi?id=49819
Chris Maxwell maxwellc@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |maxwellc@gmail.com
--- Comment #1 from Chris Maxwell maxwellc@gmail.com --- Created attachment 68156 --> https://bugs.winehq.org/attachment.cgi?id=68156 Wine Output during application operation
https://bugs.winehq.org/show_bug.cgi?id=49819
--- Comment #2 from Chris Maxwell maxwellc@gmail.com --- Using guidance from https://bugs.winehq.org/show_bug.cgi?id=49532 was able to run winetricks dotnet461 to install in clean prefix of 5.16 and reproduce behavior in the prefix created by wine 5.0
https://bugs.winehq.org/show_bug.cgi?id=49819
--- Comment #3 from Chris Maxwell maxwellc@gmail.com --- For interest, this is started from about line 67 of https://github.com/peterhaneve/evemon/blob/4.0.18/src/EVEMon.Common/Service/...
Calls line 95 of https://referencesource.microsoft.com/#system/net/System/Net/HttpListenerTim... Calls line 521 of https://referencesource.microsoft.com/#system/net/system/Net/HttpListener.cs Calling line 501 of same and at line 510, we run into trouble "statusCode = UnsafeNclNativeMethods.HttpApi.HttpSetUrlGroupProperty( m_UrlGroupId, property, info, infosize);
if (statusCode != UnsafeNclNativeMethods.ErrorCodes.ERROR_SUCCESS) { HttpListenerException exception = new HttpListenerException((int)statusCode); if (Logging.On) Logging.Exception(Logging.HttpListener, this, "HttpSetUrlGroupProperty:: Property: " + property, exception); throw exception;" and throw back the exception.
https://source.winehq.org/source/dlls/httpapi/httpapi_main.c:0657
Which I think might be addressed in 5.17 (https://github.com/wine-mirror/wine/commit/52c6070ea5e47d254253dea6f977746d3...)
I will update if the problem disappears once I have worked all the way through the process of compiling (since Ubuntu's binary staging is still 5.16)
https://bugs.winehq.org/show_bug.cgi?id=49819
--- Comment #4 from Chris Maxwell maxwellc@gmail.com --- Like magic, 5.17 binary came up in the Devel on Wine Ubuntu binary source before I managed to get my compile to work.
(To my surprise and disappointment), unfortunately installing current devel (5.17) did not fix the issue.
https://bugs.winehq.org/show_bug.cgi?id=49819
Fred allyouneedis@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |allyouneedis@gmail.com
--- Comment #5 from Fred allyouneedis@gmail.com --- Created attachment 70191 --> https://bugs.winehq.org/attachment.cgi?id=70191 stack trace of missing http.sys calls with self-contained DOTNET 5 binary
https://bugs.winehq.org/show_bug.cgi?id=49819
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|EveMon (v 4.0.18.4979): |Multiple 4.x / 5.x .NET |(with dotnet461) crashes on |apps need |add character |'httpapi.HttpSetUrlGroupPro | |perty' to support | |'HttpServerTimeoutsProperty | |' property (EveMon | |4.0.18.4979, ASP.NET Core | |apps) Keywords| |dotnet Status|UNCONFIRMED |NEW CC| |focht@gmx.net Ever confirmed|0 |1
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming, still present. Refining the summary to highlight the actual problem here. User 'guest94' in IRC #winehq encountered same problem with custom ASP.NET core app.
Backtrace from the user:
--- snip --- vtwine_1 | fail: Microsoft.AspNetCore.Server.HttpSys.HttpSysListener[18] vtwine_1 | SetUrlGroupProperty vtwine_1 | Microsoft.AspNetCore.Server.HttpSys.HttpSysException (120): Call not implemented. vtwine_1 | 00a0:err:eventlog:ReportEventW L"Category: Microsoft.AspNetCore.Server.HttpSys.HttpSysListener\r\nEventId: 18\r\n\r\nSetUrlGroupProperty\r\n\r\nException: \r\nMicrosoft.AspNetCore.Server.HttpSys.HttpSysException (120): Call not implemented.\r\n" vtwine_1 | 00a0:err:eventlog:ReportEventW L"Category: Microsoft.AspNetCore.Server.HttpSys.HttpSysListener\r\nEventId: 43\r\n\r\nStart\r\n\r\nException: \r\nMicrosoft.AspNetCore.Server.HttpSys.HttpSysException (120): Call not implemented.\r\n at Microsoft.AspNetCore.Server.HttpSys.UrlGroup.SetProperty(HTTP_SERVER_PROPERTY property"... vtwine_1 | fail: Microsoft.AspNetCore.Server.HttpSys.HttpSysListener[43] vtwine_1 | Start vtwine_1 | Microsoft.AspNetCore.Server.HttpSys.HttpSysException (120): Call not implemented. vtwine_1 | at Microsoft.AspNetCore.Server.HttpSys.UrlGroup.SetProperty(HTTP_SERVER_PROPERTY property, IntPtr info, UInt32 infosize, Boolean throwOnError) vtwine_1 | at Microsoft.AspNetCore.Server.HttpSys.TimeoutManager.SetUrlGroupTimeouts(Int32[] timeouts, UInt32 minSendBytesPerSecond) vtwine_1 | at Microsoft.AspNetCore.Server.HttpSys.HttpSysOptions.Apply(UrlGroup urlGroup, RequestQueue requestQueue) vtwine_1 | at Microsoft.AspNetCore.Server.HttpSys.HttpSysListener.Start() --- snip ---
MS .NET reference source (expanding comment #3 further):
https://referencesource.microsoft.com/#system/net/system/Net/HttpListener.cs...
--- snip --- internal void SetServerTimeout(int[] timeouts, uint minSendBytesPerSecond) { ValidateV2Property(); // CheckDispose and initilize HttpListener in the case of app.config timeouts
UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_LIMIT_INFO timeoutinfo = new UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_LIMIT_INFO();
timeoutinfo.Flags = UnsafeNclNativeMethods.HttpApi.HTTP_FLAGS.HTTP_PROPERTY_FLAG_PRESENT; timeoutinfo.DrainEntityBody =
(ushort)timeouts[(int)UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_TYPE.DrainEntityBody]; timeoutinfo.EntityBody =
(ushort)timeouts[(int)UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_TYPE.EntityBody]; timeoutinfo.RequestQueue =
(ushort)timeouts[(int)UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_TYPE.RequestQueue]; timeoutinfo.IdleConnection =
(ushort)timeouts[(int)UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_TYPE.IdleConnection]; timeoutinfo.HeaderWait =
(ushort)timeouts[(int)UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_TYPE.HeaderWait]; timeoutinfo.MinSendRate = minSendBytesPerSecond;
IntPtr infoptr = new IntPtr(&timeoutinfo);
SetUrlGroupProperty(
UnsafeNclNativeMethods.HttpApi.HTTP_SERVER_PROPERTY.HttpServerTimeoutsProperty, infoptr, (uint)Marshal.SizeOf(typeof(UnsafeNclNativeMethods.HttpApi.HTTP_TIMEOUT_LIMIT_INFO))); } --- snip ---
Similar with 'Microsoft.AspNetCore.Server.HttpSys.TimeoutManager.SetUrlGroupTimeouts'.
Wine source:
https://source.winehq.org/git/wine.git/blob/ad03df1222c2bb22e991641dcc0d9e4e...
--- snip --- 651 /*********************************************************************** 652 * HttpSetUrlGroupProperty (HTTPAPI.@) 653 */ 654 ULONG WINAPI HttpSetUrlGroupProperty(HTTP_URL_GROUP_ID id, HTTP_SERVER_PROPERTY property, void *value, ULONG length) 655 { 656 struct url_group *group = get_url_group(id); 657 658 TRACE("id %s, property %u, value %p, length %u.\n", 659 wine_dbgstr_longlong(id), property, value, length); 660 661 switch (property) 662 { 663 case HttpServerBindingProperty: 664 { 665 const HTTP_BINDING_INFO *info = value; 666 667 TRACE("Binding to queue %p.\n", info->RequestQueueHandle); 668 group->queue = info->RequestQueueHandle; 669 if (group->url) 670 add_url(group->queue, group->url, group->context); 671 return ERROR_SUCCESS; 672 } 673 case HttpServerLoggingProperty: 674 WARN("Ignoring logging property.\n"); 675 return ERROR_SUCCESS; 676 default: 677 FIXME("Unhandled property %u.\n", property); 678 return ERROR_CALL_NOT_IMPLEMENTED; 679 } 680 } --- snip ---
$ wine --version wine-6.11-88-gad03df1222c
Regards
https://bugs.winehq.org/show_bug.cgi?id=49819
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Multiple 4.x / 5.x .NET |Multiple .NET 4.x/5.x apps |apps need |need |'httpapi.HttpSetUrlGroupPro |'httpapi.HttpSetUrlGroupPro |perty' to support |perty' to support |'HttpServerTimeoutsProperty |'HttpServerTimeoutsProperty |' property (EveMon |' property (EveMon |4.0.18.4979, ASP.NET Core |4.0.18.4979, ASP.NET Core |apps) |apps)