Bug #3337

Updated by usa (Usaku NAKAMURA) over 9 years ago

  Special MS-DOS filenames return true from a call to File.readable_real? and File.file?. This exposes certain popular projects to a denial of service on the Windows platform.  
  irb(main):007:0> File.readable_real?("AUX") 
  => true 
  Modifying File.file? and File.readable_real? to return false for MS-DOS device names will allow standard tests for static files to avoid MS-DOS names. The regular express below can be used to match against known MS-DOS names and should be inclusive, however a second set of eyes would be great. 
  If you need information on the specific projects affected by this bug, please contact me via email