1465 Commits

Author SHA1 Message Date
Ryan C. Gordon
b8aa7dab87 Fixed some infinite loops that a maliciously-crafted .iso can trigger.
These bugs exposed by American Fuzzy Lop (AFL), a powerful fuzzer.

http://lcamtuf.coredump.cx/afl/
(transplanted from 4f1bf89597e5b76c1c317fbeb2b472481090b4e4)
2017-10-23 14:58:54 -04:00
Ryan C. Gordon
b9fd9e8100 Don't allow NULL filenames to be mounted.
Regardless of what the 3.0.0 documentation says, PhysicsFS never handled this
correctly, so now we check for it so you can't get into crashy situations.

Corrected documentation to reflect reality.
(transplanted from 0bbfaf6c5508139ba3d417377c94d75ca921772a)
2017-10-23 12:40:59 -04:00
Ryan C. Gordon
e290b8d0a0 Fixed crash when duplicating PHYSFS_Io for zipfiles.
(transplanted from 67ca4c4f043ecf050c395e767845733512c83de2)
2017-10-23 12:16:51 -04:00
Ryan C. Gordon
12b7a80640 Added some notes on API documentation.
(transplanted from 7ee477e62e86838eca158df16a724d417eef125f)
2017-09-27 16:13:00 -04:00
Ryan C. Gordon
9e756312d5 Bumped version to 3.0.0! release-3.0.0 2017-09-27 11:54:25 -04:00
Ryan C. Gordon
975b7a577b Added R?mi Verschelde to the credits. 2017-09-27 15:57:29 -04:00
R?mi Verschelde
3167a48675 CMake: Honor LIB_SUFFIX for pkgconfig install path 2017-09-27 21:04:15 +02:00
Ryan C. Gordon
bb2c38cdea Added SLB to list of supported archives. 2017-09-27 12:33:36 -04:00
Ryan C. Gordon
9b42fe23fd Fixed doxygen comment. 2017-09-27 12:07:55 -04:00
Ryan C. Gordon
300beeda72 Tagging 2.1.1 release 2017-09-27 11:45:34 -04:00
Ryan C. Gordon
1722e9ba92 Added Tobias Markus to CREDITS.txt. 2017-09-25 17:08:08 -04:00
Ryan C. Gordon
4ca60a090b cmake: mark readline include directories as SYSTEM (thanks, Tobias!). 2017-09-25 17:07:08 -04:00
Ryan C. Gordon
3d8817346d Fixed seeking within read buffers. 2017-09-25 16:32:52 -04:00
Ryan C. Gordon
425131ccda Simplified doBufferedRead().
No longer recurses, and deals with EOF correctly.
2017-09-25 16:19:59 -04:00
Ryan C. Gordon
2b78f64c11 Fixed PHYSFS_flush(). 2017-09-25 16:19:30 -04:00
Ryan C. Gordon
395b2b02dd OS/2: Patched to compile. 2017-09-15 19:52:24 -04:00
Ryan C. Gordon
69d3df3286 OS/2: Deal with UTF-8 -> codepage conversion on older OS/2 installs.
(untested attempt.)
2017-09-15 19:49:40 -04:00
Ryan C. Gordon
7a26b83733 OS/2: don't report failures on Unicode conversion on older OS/2 installs. 2017-09-14 23:36:51 -04:00
Francesco Bertolaccini
e728c65912 vdf: Don't add directories; UNPK_addEntry()/DirTree will fill in parents. 2017-09-03 13:13:51 -04:00
Marty Plummer
db700fd327 Allow physfs.pc generation on mingw-w64 and osx homebrew/etc,
Rename physfs-static to physfs on mingw-w64
2017-07-16 23:03:07 -05:00
Ryan C. Gordon
21b2fd39f2 Made PHYSFS_caseFold() a public API. 2017-08-20 02:02:08 -04:00
Ryan C. Gordon
bc2ddf0a53 Added some warnings to the docs about converting bad Unicode strings. 2017-08-20 02:01:50 -04:00
Ryan C. Gordon
9f8ecb91cb unicode: Added UTF-16 and UCS-4 stricmp functions. 2017-08-20 01:18:41 -04:00
Ryan C. Gordon
eb75883226 OS/2: Fixed NULL pointer dereference. 2017-08-20 01:18:05 -04:00
Ryan C. Gordon
689333dc8f Clarified some documentation. 2017-08-20 00:35:25 -04:00
Ryan C. Gordon
6ad71878fe Updated PHYSFS_Archiver with PHYSFS_EnumerateCallbackResult change. 2017-08-19 11:19:28 -04:00
Ryan C. Gordon
4e0d3d55e9 Make PHYSFS_EnumerateCallback return an enum instead of an int. 2017-08-19 10:40:27 -04:00
Ryan C. Gordon
5fb9119ebc windows: Disable _CRT_SECURE_NO_WARNINGS again. 2017-08-16 21:19:16 -04:00
Ryan C. Gordon
7607eeeb00 Cleaned up some header inclusion politics. 2017-08-16 20:03:24 -04:00
Ryan C. Gordon
e19422cc06 qnx: Added more proper support for QNX. 2017-08-16 20:02:54 -04:00
Ryan C. Gordon
cd0ccf64ed Bump version to 2.1.1, since we've been at 2.1.0 for 8.5 years. :)
There isn't going to be an official 2.1.1 (or 2.1.0) release; we'll let this
marinate a little and jump to 3.0!
release-2.1.1
2017-08-15 02:08:24 -04:00
Ryan C. Gordon
98278f787b physfshttpd: serve up directory listings, a few other cleanups. 2017-08-14 22:47:02 -04:00
Ryan C. Gordon
2270b3c3c2 physfshttpd: removed deprecated PHYSFS_getLastError() calls. 2017-08-14 21:59:56 -04:00
Ryan C. Gordon
b311ee44ad Fixed one more Visual Studio compiler warning. 2017-08-14 21:22:30 -04:00
Ryan C. Gordon
735fd14ea4 Whoops, patched to compile. 2017-08-14 21:17:22 -04:00
Ryan C. Gordon
8dfd3cff8d Fixed some compiler warnings on Visual Studio.
(and maybe made a few new ones...)
2017-08-14 21:15:58 -04:00
Ryan C. Gordon
692d5e8219 Fixed some warnings that Xcode brought up. 2017-08-14 19:58:56 -04:00
Ryan C. Gordon
a65a7ed7a5 Updated TODO.txt 2017-08-14 17:10:01 -04:00
Ryan C. Gordon
0d1a73fce4 zip: add some zip_resolve() calls, deal with DirTree-inserted parent dirs. 2017-08-14 16:24:19 -04:00
Ryan C. Gordon
395ea71990 This appears to have been fixed at some point. 2017-08-14 14:06:43 -04:00
Ryan C. Gordon
660171f79f Don't fail enumeration if a directory isn't available in a given archive.
That shouldn't be a fatal error, that's a normal case.
2017-08-14 14:05:06 -04:00
Ryan C. Gordon
f425f051db Little tweaks to __PHYSFS_initSmallAlloc(). 2017-08-14 13:57:57 -04:00
Ryan C. Gordon
8db27a1236 Fix symlink filtering for enumeration under a virtual mount point. 2017-08-14 11:43:18 -04:00
Ryan C. Gordon
cfe3f0180b Make PHYSFS_exists() work with mounts from PHYSFS_mountIo(io, NULL, ...)
(Actually, from any mount function that accepts a bogus/NULL filename.)
2017-08-14 03:06:42 -04:00
Ryan C. Gordon
3b7ee3974c Don't set readonly if PHYSFS_stat()'ing something not in the write dir.
This API is meant to report what the archivers think about an item and not
actually tell you if a PHYSFS_openWrite() will succeed on it.
2017-08-14 02:46:07 -04:00
Ryan C. Gordon
63277e500c Turns out we were doing this for a (maybe not good, but reasonable) reason. 2017-08-14 02:42:13 -04:00
Ryan C. Gordon
3078acd1eb Archivers can now specify whether an archive definitely was intended for them.
So if a zip file goes to the zip archiver but is corrupted, the system can now
know not to bother trying other archivers once the zip archiver has had a shot
at it, and just as important: it can report the real error from that archiver
instead of a generic "unsupported."
2017-08-14 02:28:00 -04:00
Ryan C. Gordon
2a6215394b Reduced some FIXME-3.0 tags to normal FIXME. They can wait. 2017-08-14 01:35:10 -04:00
Ryan C. Gordon
88e7f3eb0f Sanity check archivers that should only have low-ASCII filename. 2017-08-14 01:29:45 -04:00
Ryan C. Gordon
9c9325c2c5 Filled in more documentation. 2017-08-14 01:28:30 -04:00