https://bugs.winehq.org/show_bug.cgi?id=50520
Bug ID: 50520 Summary: Any Rust-Lang application: Cannot create an async tcp connection Product: Wine Version: 5.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: winsock Assignee: wine-bugs@winehq.org Reporter: winehq@greaka.de Distribution: ---
Created attachment 69183 --> https://bugs.winehq.org/attachment.cgi?id=69183 minimal example
Rust applications are not able to use async libraries in wine. TCP connections send Syn, receive Syn/Ack, send Reset.
Test matrix: - Wine versions 5.0, 5.8, 5.22, 6.0rc0 , 6.0rc6 - Ubuntu, Arch - WSL, native on laptop - Tokio, Smol, Async-Std (Smol and async-std use the same under the hood) - Rust versions 1.48 stable, 1.49 stable, 1.50 beta - Targets windows-gnu, windows-msvc - Toolchains gnu, msvc
Every combination fails to connect.
Minimal example source code: https://pastebin.com/SZavTYD7 precompiled binary 1.50 beta/windows-msvc/msvc attached. The example expects a listener on localhost:41206! You can easily open one with ncat -l -k -p 41206
The error returned to rust: [src\main.rs:10] TcpStream::connect(addr.as_slice()).await = Err( Os { code: 10045, kind: Other, message: "OS Error 10045 (FormatMessageW() returned error 317)", }, )
Trace from wineserver: Short version https://cdn.discordapp.com/attachments/596410107726921728/798862803648643082... Long version https://cdn.discordapp.com/attachments/596410107726921728/798858758411386880...