Skip to content
  • Samuel Williams's avatar
    ea8a7287
    Add support for `sockaddr_un` on Windows. (#6513) · ea8a7287
    Samuel Williams authored
    
    
    * Windows: Fix warning about undefined if_indextoname()
    
    * Windows: Fix UNIXSocket on MINGW and make .pair more reliable
    
    * Windows: Use nonblock=true for read tests with scheduler
    
    * Windows: Move socket detection from File.socket? to File.stat
    
    Add S_IFSOCK to Windows and interpret reparse points accordingly.
    Enable tests that work now.
    
    * Windows: Use wide-char functions to UNIXSocket
    
    This fixes behaviour with non-ASCII characters.
    It also fixes deletion of temporary UNIXSocket.pair files.
    
    * Windows: Add UNIXSocket tests for specifics of Windows impl.
    
    * Windows: fix VC build due to missing _snwprintf
    
    Avoid usage of _snwprintf, since it fails linking ruby.dll like so:
    
      linking shared-library x64-vcruntime140-ruby320.dll
      x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol snwprintf
      x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol vsnwprintf_l
    
    whereas linking miniruby.exe succeeds.
    
    This patch uses snprintf on the UTF-8 string instead.
    
    Also remove branch GetWindowsDirectoryW, since it doesn't work.
    
    * Windows: Fix dangling symlink test failures
    
    Co-authored-by: default avatarLars Kanis <kanis@comcard.de>
    ea8a7287
    Add support for `sockaddr_un` on Windows. (#6513)
    Samuel Williams authored
    
    
    * Windows: Fix warning about undefined if_indextoname()
    
    * Windows: Fix UNIXSocket on MINGW and make .pair more reliable
    
    * Windows: Use nonblock=true for read tests with scheduler
    
    * Windows: Move socket detection from File.socket? to File.stat
    
    Add S_IFSOCK to Windows and interpret reparse points accordingly.
    Enable tests that work now.
    
    * Windows: Use wide-char functions to UNIXSocket
    
    This fixes behaviour with non-ASCII characters.
    It also fixes deletion of temporary UNIXSocket.pair files.
    
    * Windows: Add UNIXSocket tests for specifics of Windows impl.
    
    * Windows: fix VC build due to missing _snwprintf
    
    Avoid usage of _snwprintf, since it fails linking ruby.dll like so:
    
      linking shared-library x64-vcruntime140-ruby320.dll
      x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol snwprintf
      x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol vsnwprintf_l
    
    whereas linking miniruby.exe succeeds.
    
    This patch uses snprintf on the UTF-8 string instead.
    
    Also remove branch GetWindowsDirectoryW, since it doesn't work.
    
    * Windows: Fix dangling symlink test failures
    
    Co-authored-by: default avatarLars Kanis <kanis@comcard.de>
Loading