MS-DOS device names are identified as readable_real
Special MS-DOS filenames return true from a call to
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
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