v8.0.0
ioFTPD v8.0.0
Ships as both a 64-bit (x64) and 32-bit (Win32) binary from the same release.
Prerequisites
x64 build — install both:
- Visual C++ 2015-2022 x64
- Visual C++ 2015-2022 x86 (required by ioFTPD-Watch.exe)
Win32 build — install:
Breaking Change
ioFTPD Message Window: The DataCopy shared-memory IPC wire format has changed. External Message Window clients
communicating via WM_DATACOPY_FILEMAP must be rebuilt against the v8.0 headers.
DC_MESSAGE_WIRE replaces DC_MESSAGE; ONLINEDATA_WIRE replaces ONLINEDATA.
32-bit IPC clients work with the Win32 build only — the x64 build rejects 32-bit senders.
What's New
- Native 64-bit build — no virtual-address ceiling, no LARGEADDRESSAWARE workaround; ASLR, DEP, and high-entropy ASLR enabled
- ioFTPD Message Window protocol redesigned — wire format updated for 64-bit compatibility; external tools must be rebuilt against the v8.0 headers
ONLINEDATA_WIRE— pointer fields replaced with char counts; per-session transfer cap raised from 4 GB to 64-bit counter- DataCopy security hardening — per-command bounds validation, null-terminator checks, buffer condition fixes, least-privilege
OpenProcess - Fixed:
io linkstack buffer overflow — could corrupt the stack and trigger a silentTerminateProcesswith no dump or log entry - Fixed:
Tcl_Initfailure in worker interpreter — previously silent; now logged as an error - Fixed: multiple 64-bit pointer-truncation bugs — IOCP keys, SOCKET atomics, Tcl wait objects, variable lookup, stack walker