- Fix broken passive/active mode transfers
0800a8f95d
- Fix an error when installed globally
49816ef682
- Reimplemented process management without Forever
- Improved error handling and logging facilities
- Implementing umask
- JSHint fixes
- Properly clean up processes, sockets and servers
- Code cleanup
- Implemented
ABOR
- FIX -
MLSx
functions return the UID, GID, username and group name now - FIX - Fix UNIX.mode for
MLSx
functions - FIX - Fix perm fact for
MLSx
functions
- Config files are now YAML
- Implement
MFMT
- FIX - Show the correct port when listening for TLS
- FIX - Don't start logging messages until we have the IP (TLS)
- FTP over implicit TLS support added
PROT
implementedPBSZ
implemented
- Use the EPLF format for the
LIST
command - Better error handling for the
LIST
command - Implement
APPE
- Implement
STOU
- FIX - Add
size
fact toMLSx
commands
- Implement
MLSD
- General refactoring
- Implement
STRU
- Implement
XCUP
- Implement
XCWD
- Implement
XPWD
- Implement
XMKD
- Basic PASV connection highjacking prevention by checking the client IP
- Implement
REST
- Reimplement
RETR
using Readable Streams and proper encoding handling - Refactored the
TYPE
command
- Implemented active mode transfers.
- FIX - Fix the root user check
- ENHANCEMENT - Make sure we are being run as root
- FIX - Defer log directory creation to the main process to avoid errors during installation. Fixes issue #3.
- Reworked passive mode transfers to request a port number from the supervisor process in order to properly maintain state (which ports are in use). This fixes a bug with multiple concurrent downloads.
- Passive ports are generated randomly instead of sequentially to fix possible exploits.
- ENHANCEMENT - Added a
-D
/--no-daemon
option to make dev/debugging easier - FIX - Fix command line arguments
- ENHANCEMENT - Nicer logging for commands & responses
- FIX - Fix a bug in the logger only replacing the first set of color tags
- FIX - Run
start
ifnodeftpd
is called with no arguments - FIX - Don't restart supervisor.js if it crashes, it should only crash for a good reason
- FIX - Don't crash on
nodeftpd status
if no forever processes are found
- Fix install error caused by making the log directory
- Run as a daemon using Forever now
- Log to files
- UID/GID support - The process now uses
setuid()
/setgid()
- Refuse to install on
win32
- Use writable streams for
STOR
STAT
is implementedMLST
is implemented (But notMLSD
)MODE
is implemented (fake implementation)- FIX - Show file errors before the upload starts for
STOR
- FIX - Catch errors in data channels to avoid cluttering error logs
- FIX - Better errors for
RMD
- FIX - Don't log passwords
- Initial stable version, most common functionality implemented
- Basic PAM authentication
- Chroot jail support