Skip to content
  • NARUSE, Yui's avatar
    2b8e9ece
    merge revision(s) 35595: [Backport #6446] · 2b8e9ece
    NARUSE, Yui authored
    	* include/ruby/win32.h (FD_SET): change function to macro.
    	  To avoid buffer overflow when smaller FD_SETSISE is used in ext
    	  libraries.
    
    	* win32/win32.c (rb_w32_fdset): this function is not used anymore.
    	  But we leave this for compatibility.
    
    	* win32/win32.c (rb_w32_select_with_thread): fix SEGV when smaller
    	  FD_SETSISE is used in ext libraries. Dereference of fd_set pointer
    	  causes SEGV.
    
    	* test/-ext-/win32/test_fd_setsize.rb(TestFdSetSize): add tests for
    	  above.
    
    	* ext/-test-/win32/fd_setsize/depend: ditto.
    
    	* ext/-test-/win32/fd_setsize/extconf.rb: ditto.
    
    	* ext/-test-/win32/fd_setsize/fd_setsize.c: ditto.
    	  [ruby-core:44588] [Bug #6352]
    
    
    git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
    2b8e9ece
    merge revision(s) 35595: [Backport #6446]
    NARUSE, Yui authored
    	* include/ruby/win32.h (FD_SET): change function to macro.
    	  To avoid buffer overflow when smaller FD_SETSISE is used in ext
    	  libraries.
    
    	* win32/win32.c (rb_w32_fdset): this function is not used anymore.
    	  But we leave this for compatibility.
    
    	* win32/win32.c (rb_w32_select_with_thread): fix SEGV when smaller
    	  FD_SETSISE is used in ext libraries. Dereference of fd_set pointer
    	  causes SEGV.
    
    	* test/-ext-/win32/test_fd_setsize.rb(TestFdSetSize): add tests for
    	  above.
    
    	* ext/-test-/win32/fd_setsize/depend: ditto.
    
    	* ext/-test-/win32/fd_setsize/extconf.rb: ditto.
    
    	* ext/-test-/win32/fd_setsize/fd_setsize.c: ditto.
    	  [ruby-core:44588] [Bug #6352]
    
    
    git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Loading