pkgsrc/emulators/wine/patches/patch-dlls_ws2__32_socket.c
adam 952ef55c4d wine: updated to 4.0.4
Bugs fixed in 4.0.4 (total 65):
* NEXON client installers using embedded IE browser control: buttons don't respond to click (Lunia Senki, Combat Arms, War Rock)
* Microsoft Document Explorer 2008 crashes when using MS Help 2 URL from command line (ieframe's WebBrowser COM object doesn't support aggregation)
* Password Safe crashes with page fault when renaming entries
* Brothers In Arms Hell's Highway : Setup asks for DVD for every .cab file (SetupPromptForDiskA/W should only show a dialog if the file doesn't exist)
* LegoLand: crashes at main menu without native directmusic
* TSDoctor 1.0.58 fails to run
* treeview wstr overrun in TVN_GETDISPINFOW (ExamXML crashes when opening an XML file)
* UFO: Extraterrestrials Gold - crash at start caused by wine's built-in dsound/directmusic
* GdipGraphicsClear() needs to overwrite pixels, not alpha blend (Text misrendered in Brain Workshop)
* Skyrim (Steam) hangup on quit
* In The Adventures Of Lomax some graphic elements flicker, disappear or are garbled
* Problems with Russian localization in page setup dialog
* using winegcc with stdin passes arguments in the wrong position to gcc
* FXCM Trading Station II installer reports 'OLE error 80004001' when running as 'Windows Vista' or higher ('ITaskbarList3::ThumbBarSetImageList' is a stub)
* 64-bit dlls/msdaps/row_server_p.c generates build warnings (discarded "const" qualifier)
* Broken geometry in Indiana Jones and the Emperor's Tomb
* Broken Sword: The Angel of Death demo needs IDirectSoundFXI3DL2Reverb interface
* The Moment of Silence launcher unusable (displays only black)
* Wine with freetype 2.7 causes font rendering issues
* The Witcher 2: Assassins of Kings - menus and subtitles rendered incorrectly (with built-in d3dx9)
* VSDC Video Editor. Crashes in ole32 when opening.
* HashMyFiles: Drag & Drop from native File Managers (Dolphin, Nautilus, ...) does not work
* Multiple .NET applications (Chime, DxO Photolab 2 trial) crash, need  RegisterApplicationRecoveryCallback  to return S_OK
* Tetris for Windows has wrong colors for the game pieces and the score box
* HotS - taking screenshot causes client crash, needs d3dx11_42.dll.D3DX11SaveTextureToFileW
* Far Cry 5 Cannot Steer Land Vehicles
* Multiple applications need msvcr120.dll.?_Yield@_Context@details@Concurrency@@SAXXZ (Darkest Dungeon, Noita, Amazon Kindle for PC)
* Shed installer - text overflow in browse-for-folder dialog
* Abiword 2.6.8 comboboxes should have a white background color
* μTorrent has squares in its update dialog
* Smoke not rendering properly in Castlevania: Lords of Shadow 2
* IVMU Social Network Client (500 series) crashes when selecting menu / settings
* Adobe DNG Converter 11.2+ runs into Call to unimplemented function api-ms-win-core-winrt-error-l1-1-0.dll.GetRestrictedErrorInfo
* winetricks -q --verify dotnet461 crashes under win64
* type command in cmd.exe with two files and stdout redirect, behavior is different
* boolean type defined as 'unsigned char' rather than 'char'
* 32-bit LAVFilters 0.74.x installer fails to register 64-bit AX codec/filters in Wow64 environment (32-bit regsvr32.exe needs to support 64-bit dll registration and vice versa by re-exec with proper bitness)
* Multiple 64-bit game and application crash reporting tools need x86_64 'ntdll.RtlCaptureStackBackTrace' implementation
* Glide wrapper - Configuration buttons misbehaving
* Accel World vs. Sword Art Online needs WTSRegisterSessionNotificationEx() to return true.
* ListBox LB_SETSEL doesn't scroll to newly selected item
* _putws outputs NULs, other wchar.h functions don't
* ExHIBIT (Sample Project): Can't select menu item in the title screen
* Zoom Edit&Share 5.0.0.0: installer crashes starting with wine-3.19
* commit "winex11.drv: Wake up the display on user input." introduced severe performance issues with atomic modesetting kernel drivers
* iCloud refuses to install: "Your computer is missing Media features."
* putty.exe displays an error at startup when placed in a path with accented characters.
* Magic: The Gathering Arena installer needs powershell.exe (cannot find it)
* FindFirstFileExW believes every directory entry has been read if NtQueryDirectoryFile underfills buffer
* FindFirstFileExW seems to be missing FILE_OPEN_FOR_BACKUP_INTENT flag to NtOpenFile
* Need for Speed: Carbon - Autosculpt causes geometry corruption and GL_INVALID_OPERATION error
* Blur: cars have no wheels when Wine is compiled with Ryzen optimisations
* Nextiva: Logging in fails with "Client is unable to connect to the server."
* IGMP source specific multicast does not create join requests for source
* NtCreateFile incorrectly returns STATUS_OBJECT_NAME_NOT_FOUND when RootDirectory is populated
* R-Studio (file recovery tool) wants ntoskrnl.exe.IoCreateUnprotectedSymbolicLink
* motec i2 pro v1.0 data logger fails to start
* Multiple applications need shcore.dll.GetScaleFactorForMonitor stub (Karafun player, Sync)
* UPlay fails to start : "Error at hooking API NtProtectVirtualMemory" (UPlay's hooking engine can't handle ENDBR32 instruction inserted at non-hotpatch API entries due to distro build environments '-fcf-protection')
* Visual C++ Express 2005 needs shell32.PathResolveW implementation (or fake success)
* Wrong color mapping with client-side graphics on 256-color X server
* IXMLDOMDocument_load() paths aren't URL-unescaped (Microsoft Document Explorer 2008 startup error)
* Building wine on CentOS7 fails due to lack of libkrb5
* Dell Latitude E6440 BIOS updater crashes on unimplemented function ntoskrnl.exe.KeSetImportanceDpc
* Arma Cold War Assault: Cursor stuck at low fps since Wine 5.0-rc6
2020-05-26 15:20:22 +00:00

45 lines
1.5 KiB
C

$NetBSD: patch-dlls_ws2__32_socket.c,v 1.1 2020/05/26 15:20:23 adam Exp $
Conditionally use RFC3678 socket options.
--- dlls/ws2_32/socket.c.orig 2020-05-25 20:28:31.195748937 +0000
+++ dlls/ws2_32/socket.c
@@ -692,10 +692,12 @@ static const int ws_ip_map[][2] =
MAP_OPTION( IP_MULTICAST_LOOP ),
MAP_OPTION( IP_ADD_MEMBERSHIP ),
MAP_OPTION( IP_DROP_MEMBERSHIP ),
+#ifdef IP_UNBLOCK_SOURCE
MAP_OPTION( IP_ADD_SOURCE_MEMBERSHIP ),
MAP_OPTION( IP_DROP_SOURCE_MEMBERSHIP ),
MAP_OPTION( IP_BLOCK_SOURCE ),
MAP_OPTION( IP_UNBLOCK_SOURCE ),
+#endif
MAP_OPTION( IP_OPTIONS ),
#ifdef IP_HDRINCL
MAP_OPTION( IP_HDRINCL ),
@@ -5776,7 +5778,9 @@ int WINAPI WS_setsockopt(SOCKET s, int l
int woptval;
struct linger linger;
struct timeval tval;
+#ifdef IP_BLOCK_SOURCE
struct ip_mreq_source mreq_source;
+#endif
TRACE("(socket %04lx, %s, optval %s, optlen %d)\n", s,
debugstr_sockopt(level, optname), debugstr_optval(optval, optlen),
@@ -5987,6 +5991,7 @@ int WINAPI WS_setsockopt(SOCKET s, int l
case WS_IPPROTO_IP:
switch(optname)
{
+#ifdef IP_BLOCK_SOURCE
case WS_IP_ADD_SOURCE_MEMBERSHIP:
case WS_IP_DROP_SOURCE_MEMBERSHIP:
case WS_IP_BLOCK_SOURCE:
@@ -6003,6 +6008,7 @@ int WINAPI WS_setsockopt(SOCKET s, int l
convert_sockopt(&level, &optname);
break;
}
+#endif
case WS_IP_ADD_MEMBERSHIP:
case WS_IP_DROP_MEMBERSHIP:
#ifdef IP_HDRINCL