D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
share
/
doc
/
psa-proftpd
/
Filename :
ChangeLog
back
Copy
2016-03-11 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES: Updated release notes to mention DH selection issue. 2016-03-10 TJ Saunders <tj@castaglia.org> * README.md: Update link to shields.io badge for latest release. 2016-03-10 TJ Saunders <tj@castaglia.org> * README.md, contrib/dist/rpm/proftpd.spec, include/version.h: Updating files for 1.3.6rc3 development. 2016-03-10 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with release date. 2016-03-10 TJ Saunders <tj@castaglia.org> * include/version.h: Preparing for RC2 release. 2016-03-10 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/rfc4716.c, tests/t/etc/modules/mod_sftp/authorized_rsa_keys_no_nl, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Reproduce, and fix, the case where mod_sftp does not handle public key files which do not end in a newline. 2016-03-10 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with fix for Bug#4230. 2016-03-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #226 from proftpd/tls-dhparam-ignored-bug4230 Bug#4230: TLSDHParamFile directive appears ignored because unexpected… 2016-03-10 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Config/DisplayQuit.pm: If DisplayQuit is configured with a non-path, make sure we handle it properly. 2016-03-10 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm: If the configured DisplayFileTransfer file is not able to be handled successfully, don't penalize/close the data transfer connection for it. 2016-03-10 TJ Saunders <tj@castaglia.org> * contrib/mod_wrap.c: Sigh. Declared right variable in wrong location. Trying again. 2016-03-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #228 from proftpd/json-no-stdbool-dependency Remove the JSON implementation's dependence on stdbool.h, on the assu… 2016-03-10 TJ Saunders <tj@castaglia.org> * doc/modules/mod_core.html: Fix the documented default TimeoutLinger value. 2016-03-10 TJ Saunders <tj@castaglia.org> * contrib/mod_wrap.c: Address compiler warnings. 2016-03-10 TJ Saunders <tj@castaglia.org> * modules/mod_facl.c: Make sure the module-unload event listener is conditionally compiled with the same conditions as its usage. 2016-03-09 TJ Saunders <tj@castaglia.org> * : commit f9e85236e76703303ecad3c16951ac623ec34e5a Author: TJ Saunders <tj@castaglia.org> Date: Wed Mar 9 16:10:11 2016 -0800 2016-03-09 TJ Saunders <tj@castaglia.org> * src/netacl.c, tests/api/netacl.c: Adding tests showing that we properly handle "0.0.0.0/0" as a netacl expression. 2016-03-08 TJ Saunders <tj@castaglia.org> * : commit 35455b027ba9a315109035e117bd4890781ee489 Merge: 57ef0cd d49387e Author: TJ Saunders <tj@castaglia.org> Date: Tue Mar 8 23:04:55 2016 -0800 2016-03-08 TJ Saunders <tj@castaglia.org> * include/netacl.h, src/netacl.c, tests/api/netacl.c: Provide a pr_netacl_get_str2() function for getting string versions of ACLs without the added description that pr_netacl_get_str() adds. 2016-03-08 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES: Fleshing out the release notes, as we're getting very close to release. 2016-03-08 TJ Saunders <tj@castaglia.org> * doc/modules/mod_log.html: Add docs for the added %{file-size} and %{transfer-type} LogFormat variables. 2016-03-08 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Bug#4230: TLSDHParamFile directive appears ignored because unexpected DH is chosen. 2016-03-04 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_auth_otp.html: Minor updates/fixes to the mod_auth_otp docs. 2016-03-04 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_auth_otp.html: Add required OpenSSL attributions. 2016-03-04 TJ Saunders <tj@castaglia.org> * include/ccan-json.h, lib/ccan-json.c: Attempt to fix/address compiler errors on different platforms (e.g. HP-UX) by not reusing the same name for a struct and its typedef. Also avoid re-typedef'ing uchar_t. 2016-03-04 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Clear the internal statcache in a few more places when handling SFTP, SCP. 2016-03-04 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, modules/mod_site.c, modules/mod_xfer.c: More places where the internal cache should be cleared first. 2016-03-04 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Another place where we need to clear the internal statcache. 2016-02-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #223 from proftpd/core-str-hex2bin Add symmetric String API function for converting from hex string to b… 2016-02-25 TJ Saunders <tj@castaglia.org> * modules/mod_ctrls.c: If there are issues creating the ControlsSocket, log them at the NOTICE level, rather than in a ControlsLog (which not be opened anyway). 2016-02-25 TJ Saunders <tj@castaglia.org> * contrib/mod_statcache.c, src/fsio.c: When the pr_fs_clear_cache2() function is used to clear the statcache, generate an event for any OTHER modules which might also be doing caching (e.g. mod_statcache), so that they too can clear their cached stat data. 2016-02-25 TJ Saunders <tj@castaglia.org> * contrib/mod_statcache.c: Make mod_statcache less intrusive when it encounters an error when handling an FSIO callback; just return the underlying OS call return value. 2016-02-25 TJ Saunders <tj@castaglia.org> * contrib/mod_statcache.c: The FSIO open(2) callback in mod_statcache was only clearing the cached value IFF open(2) returned zero. But open(2) returns zero OR GREATER on success. Oops. 2016-02-25 TJ Saunders <tj@castaglia.org> * src/fsio.c: Cache the close(2) errno value, to avoid it being changed by later code in pr_fsio_close(). 2016-02-25 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_unique_id.html: Fix HTML markup. 2016-02-25 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Add a fake 451 response code for aborted SFTP file transfers. 2016-02-23 TJ Saunders <tj@castaglia.org> * contrib/mod_statcache.c: Automatically disable negative caching for SSH2 sessions. 2016-02-23 TJ Saunders <tj@castaglia.org> * NEWS: Add mention of fix for Bug#4227. 2016-02-23 TJ Saunders <tj@castaglia.org> * : Merge pull request #220 from proftpd/sftp-multi-init-bug4227 Bug#4227: Support SFTP clients that send multiple INIT requests. 2016-02-22 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Only increment the bytes transferred values, when handling an SFTP WRITE request, once the bytes have been successfully written, per write(2) result. 2016-02-22 TJ Saunders <tj@castaglia.org> * : Merge pull request #219 from proftpd/sftp-no-stat-on-read Attempt to mitigate the issue with mod_statcache's stat() causing SFT… 2016-02-22 TJ Saunders <tj@castaglia.org> * contrib/mod_statcache.c: Improve mod_statcache trace logging, to better differentiate among locking-related log messages. 2016-02-21 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html: Use a directive name of TLSServerInfoFile, for consistency with other mod_tls directives. 2016-02-20 TJ Saunders <tj@castaglia.org> * : Merge pull request #217 from proftpd/tls-serverinfo Add TLSServerInfo directive, for TLS ServerHello extensions 2016-02-20 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html: Implement a TLSServerInfo directive, for configuring custom TLS extension data (e.g. for SCT data). 2016-02-17 TJ Saunders <tj@castaglia.org> * contrib/mod_exec.c, contrib/mod_sftp/keys.c, contrib/mod_tls.c, modules/mod_rlimit.c, src/rlimit.c: Don't log spurious log messages if getrlimit(2) fails with ENOSYS/EPERM. 2016-02-16 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/blacklist.c: Quell Coverity warning by setting an upper bound on the number of records we are willing to scan/process from the blacklist.dat file. 2016-02-16 TJ Saunders <tj@castaglia.org> * lib/libltdl/ltdl.c: Quell Coverity warning about possible resource leak in libltdl. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keys.c, contrib/mod_tls.c: Ensure proper NUL-termination of buffers in all cases. Should make Coverity happier. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/base32.c: Use signed data types, to prevent underflow and bad shift operations. Found by Coverity. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_statcache.c: Add check for return value, per Coverity. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/mod_auth_otp.c: Fix issue discovered by Coverity. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_digest.c: Fix issue detected by Coverity. 2016-02-12 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_auth_otp.html, doc/contrib/mod_digest.html, doc/contrib/mod_statcache.html: Update docs of new modules to mention where their source code is. 2016-02-12 TJ Saunders <tj@castaglia.org> * : Merge pull request #214 from proftpd/contrib-statcache Adding mod_statcache to the contrib/ directory. 2016-02-12 TJ Saunders <tj@castaglia.org> * .gitignore, .travis.yml, contrib/mod_auth_otp/mod_auth_otp.c: Address build warnings, tweak the travis-ci setup. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/Makefile.in: Trying some reordering, when building mod_auth_otp as a DSO module. 2016-02-12 TJ Saunders <tj@castaglia.org> * contrib/mod_digest.c: Fix building of mod_digest as a shared module. 2016-02-11 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/Makefile.in: Back to the original. Probably won't work. 2016-02-11 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/Makefile.in: Still correcting paths. Sigh. 2016-02-11 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/Makefile.in, contrib/mod_auth_otp/mod_auth_otp.c: Still trying to get the travis-ci builds passing. 2016-02-11 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/Makefile.in: Tweak, tweak. 2016-02-11 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/Makefile.in: Still working on fixing the travis-ci build. 2016-02-11 TJ Saunders <tj@castaglia.org> * contrib/mod_auth_otp/t/Makefile.in, contrib/mod_auth_otp/t/api/base32.c, contrib/mod_auth_otp/t/api/otp.c, contrib/mod_auth_otp/t/api/stubs.c, contrib/mod_auth_otp/t/api/tests.c, contrib/mod_auth_otp/t/api/tests.h: Add missing API tests for mod_auth_otp, breaking the travis-ci build. 2016-02-11 TJ Saunders <tj@castaglia.org> * .travis.yml: Add mod_auth_otp, mod_digest to the travis-ci builds. 2016-02-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #213 from proftpd/contrib-auth-otp Adding mod_auth_otp to the contrib/ modules directory. 2016-02-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #212 from proftpd/contrib-digest Adding mod_digest module to contrib modules. 2016-02-01 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c: Log a warning about using the Plaintext SQLAuthType; it's a bad security policy, as it allows storing passwords IN THE CLEAR in the database. 2016-02-01 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, contrib/mod_sql.c, include/mod_log.h, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add a %{transfer-type} LogFormat variable; this is just one more variable needed to make an ExtendedLog that contains the same information as the fixed-format TransferLog. 2016-02-01 TJ Saunders <tj@castaglia.org> * contrib/mod_wrap.c, modules/mod_core.c: Update mod_wrap to properly handle a HOST command. 2016-02-01 TJ Saunders <tj@castaglia.org> * contrib/mod_quotatab.c, modules/mod_core.c: Update mod_quotatab to Do The Right Thing(tm) in the face of HOST commands. 2016-02-01 TJ Saunders <tj@castaglia.org> * contrib/mod_wrap2/mod_wrap2.c, modules/mod_core.c: Update mod_wrap2 to properly handle HOST commands. 2016-02-01 TJ Saunders <tj@castaglia.org> * contrib/mod_radius.c, contrib/mod_rewrite.c, modules/mod_core.c: Update the mod_radius and mod_rewrite modules to properly respond/handle HOST commands. 2016-01-31 TJ Saunders <tj@castaglia.org> * contrib/mod_ldap.c, modules/mod_core.c: Make mod_ldap be HOST-aware, and reset its settings as necessary. 2016-01-31 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_passwd.c, modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Make sure that mod_sql_passwd works properly with respect to HOST commands. 2016-01-31 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c: Update mod_sql so that it Does The Right Thing(tm) for HOST commands. 2016-01-31 TJ Saunders <tj@castaglia.org> * src/auth.c: Correct grammar in a trace log message; no functional change. 2016-01-31 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Update the list of modules needing HOST handling work. 2016-01-31 TJ Saunders <tj@castaglia.org> * modules/mod_auth.c: Remove now-obsolete POST_CMD HOST handler; it was replaced by the 'core.session-reinit' event listener. 2016-01-31 TJ Saunders <tj@castaglia.org> * modules/mod_auth.c, tests/t/lib/ProFTPD/Tests/Config/AnonAllowRobots.pm: Fix edge case with implementation of Bug#4224, where we do NOT want any automatic handling of "robots.txt" for non-anonymous logins. 2016-01-31 TJ Saunders <tj@castaglia.org> * : Merge pull request #210 from proftpd/auth-anon-allow-robots-bug4224 Bug#4224: Prohibit FTP indexing by web crawlers via auto-generated ro… 2016-01-30 TJ Saunders <tj@castaglia.org> * locale/files.txt: Updated files.txt. 2016-01-30 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_quotatab.html: Fix markup. 2016-01-29 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES, doc/modules/mod_auth.html, modules/mod_auth.c, tests/t/config/anonallowrobots.t, tests/t/lib/ProFTPD/Tests/Config/AnonAllowRobots.pm: Bug#4224: Prohibit FTP indexing by web crawlers via auto-generated robots.txt. 2016-01-29 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Properly shut down the TLS session on data connections as well. 2016-01-28 TJ Saunders <tj@castaglia.org> * doc/rfc/rfc7151.txt: Adding RFC 7151 to our RFCs area, since we now implement the HOST command. 2016-01-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #209 from proftpd/exists2 Restore backward compatibility 2016-01-28 TJ Saunders <tj@castaglia.org> * contrib/mod_copy.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, contrib/mod_sql.c, contrib/mod_tls.c, include/support.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/support.c, tests/api/misc.c: Restore backward compatibility by restoring the Support API's exists/mode functions back to their original signatures, and provide variants, which accept a pool, for the chroot+symlink-aware functionality. 2016-01-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #208 from proftpd/extlog-file-size-var-redux Use POST_CMD handlers for stashing the 'mod_xfer.file-size' note, so … 2016-01-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #207 from proftpd/extlog-file-size-var Add support for a %{file-size} LogFormat variable, which resolves to the 2016-01-27 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Config/AllowForeignAddress.pm: Add regression test for a site-to-site transfer of a >2GB file. 2016-01-27 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4219. 2016-01-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #206 from proftpd/fsio-chrooted-readlink-bug4219 Bug#4219: Better handling of symlinks when chrooted 2016-01-27 TJ Saunders <tj@castaglia.org> * modules/mod_site.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm: Added regression tests for SITE CHMOD commands and symlinks, chrooted and not. All tests pass properly now. 2016-01-27 TJ Saunders <tj@castaglia.org> * modules/mod_site.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm: Added regression tests for the SITE CHGRP command and symlinks, chrooted and not. All tests pass now. 2016-01-27 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for SCP downloads to symlinks, chrooted and not. Made sure the tests pass as expected. 2016-01-27 TJ Saunders <tj@castaglia.org> * : commit 5dc63cc755fbc7fde7757812678b4d02eb54a654 Author: TJ Saunders <tj@castaglia.org> Date: Wed Jan 27 11:15:37 2016 -0800 2016-01-27 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Add comment about where to find the definition of unknown TLS extension IDs. 2016-01-27 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_mysql.c: If mod_sql_mysql fails to configure the character set, just log the failure and do not treat it as a fatal error, in order to better handle situations of client/server version skew. 2016-01-27 TJ Saunders <tj@castaglia.org> * doc/howto/Logging.html: Mention that FreeBSD ftpd does NOT use the xferlog(5) format. 2016-01-26 TJ Saunders <tj@castaglia.org> * src/inet.c, src/support.c: Add Mac OSX-specific version macros for the newer OSX versions as needed. 2016-01-26 TJ Saunders <tj@castaglia.org> * : commit 662a109c354eb72b9f138e1b332ba3fd3e088b88 Author: TJ Saunders <tj@castaglia.org> Date: Tue Jan 26 16:54:44 2016 -0800 2016-01-26 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Add another regression test for Bug#4223, for the chroot case. 2016-01-26 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c: Style nit; no functional change. 2016-01-26 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Add the dir_readlink() magic to the check-file SFTP extension handling. 2016-01-26 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for SFTP RMDIR requests and symlinks, chrooted and not. Ensured that all tests pass as expected. 2016-01-26 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for SFTP OPENDIR requests and symlinks, chrooted and not. Made sure the tests pass as expected. 2016-01-26 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for SFTP SETSTAT requests and symlinks, chrooted and not. Made sure that the tests pass properly. 2016-01-26 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for the SFTP STAT requests and symlinks, chrooted and not, and made sure the tests pass. 2016-01-26 TJ Saunders <tj@castaglia.org> * : commit 9a17b90289f876339b4cf71f74329a2d5fa3c4f9 Author: TJ Saunders <tj@castaglia.org> Date: Tue Jan 26 10:47:03 2016 -0800 2016-01-26 TJ Saunders <tj@castaglia.org> * : Merge pull request #205 from proftpd/xfer-stou-umask-bug4223 Bug#4223: Permissions on files uploaded via STOU do not honor configured Umask 2016-01-26 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c: Bug#4223: Permissions on files uploaded via STOU do not honor configured Umask. 2016-01-25 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for the SFTP OPEN requests and symlinks, chrooted and not. 2016-01-25 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for SFTP MKDIR requests and symlinks, chrooted and not. 2016-01-25 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Added regression tests for the RNTO command, and symlinks. 2016-01-25 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Adding regression tests for the RNFR command and symlinks, chrooted and not. 2016-01-24 TJ Saunders <tj@castaglia.org> * : commit f8eded5488c03a40a02dbdb4056d6222e0a045a3 Author: TJ Saunders <tj@castaglia.org> Date: Sun Jan 24 20:24:44 2016 -0800 2016-01-24 TJ Saunders <tj@castaglia.org> * : Merge pull request #204 from proftpd/default-transfer-mode Move the processing of the DefaultTransferMode directive from mod_aut… 2016-01-24 TJ Saunders <tj@kiban.io> * modules/mod_auth.c, modules/mod_core.c: Move the processing of the DefaultTransferMode directive from mod_auth to mod_core. The directive handler is in mod_core, and the processing is more properly done as a post-PASS step. 2016-01-24 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Added regression tests for RMD and symlinks, and made sure that symlinks could be handled properly when chrooted. 2016-01-24 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Added regression tests for RETR and symlinks, and updated the RETR handling to use dir_readlink(), so that symlinks can be retrieved when chrooted. 2016-01-24 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Added regression tests for the CWD and symlinks, and made sure that CWD does The Right Thing(tm) with symlinks, chrooted and not. 2016-01-22 TJ Saunders <tj@castaglia.org> * : commit e09990a3840ddca4413160c86ab0eff403c3a698 Author: TJ Saunders <tj@castaglia.org> Date: Fri Jan 22 16:09:02 2016 -0800 2016-01-22 TJ Saunders <tj@castaglia.org> * src/fsio.c: Fix log messages to be grammatically correct. 2016-01-22 TJ Saunders <tj@kiban.io> * src/str.c, tests/api/str.c: For better logging/debugging, have the {uid,gid}2str() functions return "-1" for cases where the uid_t/gid_t have that value, as they are used as sentinel values in the core code. 2016-01-22 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Updated MKD regression tests to use test_setup()/test_cleanup(), in preparation to adding more symlink-related regression tests. 2016-01-22 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm: Update the handling of the MDTM command for chrooted symlinks, with accompanying regression tests. 2016-01-22 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm: First, update the MDTM regression tests to use test_setup() and test_cleanup(). Next, I'll add regression tests for MDTM on symlinks (to files and directories). 2016-01-22 TJ Saunders <tj@castaglia.org> * contrib/mod_copy.c: Found another place needing updating for the change of exists() signature. 2016-01-22 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c, contrib/mod_tls.c: Updated some contrib modules, due to changes in the Support API signatures. 2016-01-22 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Make sure that the destination path correctly lines up with the (adjusted) chroot on MacOSX. 2016-01-22 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, include/support.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/support.c, tests/api/misc.c, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Added more regression tests for the APPE command, for absolute destination path symlinks and chroots, which required some refactoring of the core library. 2016-01-22 TJ Saunders <tj@castaglia.org> * doc/howto/ListOptions.html, doc/modules/mod_facts.html, doc/modules/mod_ls.html: Update docs to mention new 'NoAdjustedSymlinks' options for mod_facts, mod_ls. 2016-01-22 TJ Saunders <tj@kiban.io> * doc/howto/CreateHome.html: Updated links to the main docs for the CreateHome directive. 2016-01-21 TJ Saunders <tj@kiban.io> * contrib/mod_sftp_pam.c: Now the mod_sftp_pam module will check for the AuthPAM directive, in addition to SFTPPAMEngine, to better work, as expected, with existing proftpd configurations that use AuthPAM. See: http://serverfault.com/questions/386294/proftpd-with-sftp-first-login-fails-seconds-succeeds 2016-01-21 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Modernized some of the DELE regression tests in preparation, but then realized that DELE's handling of symlinks just does The Right Thing(tm), regardless of chroots. 2016-01-21 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Adding APPE regression tests for symlinks, chrooted and not. 2016-01-21 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c: Rename a variable to be more consistent with usage elsewhere, i.e. using 'xerrno' as the errno holder, not 'ferrno'. 2016-01-21 TJ Saunders <tj@kiban.io> * include/ftp.h: Remove redundant redefinition of the C_HOST macro. 2016-01-21 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding regression tests for the LIST command, with regard to symlinks, ShowSymlinks, and chroots. 2016-01-21 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Added NLST regression tests for symlinks, and symlinks when chrooted. 2016-01-20 TJ Saunders <tj@castaglia.org> * src/support.c, tests/api/misc.c: Clean up the returned destination paths, even when not chrooted. 2016-01-20 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/STAT.pm: Updated the STAT regression tests, and added missing tests for symlinks, both when chrooted and not. 2016-01-20 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Fix the broken unit tests. 2016-01-20 TJ Saunders <tj@castaglia.org> * modules/mod_facts.c, src/support.c, tests/api/misc.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Update mod_facts to use dir_readlink() for MLST/MLSD commands. Turns out that this fixes an already-existing bug, where symlinks were not being handled well when the session is chrooted anyway. 2016-01-20 TJ Saunders <tj@castaglia.org> * src/fsio.c: Remove some distracting FSIO statcache trace logging by explicitly setting errno to zero for success cases. 2016-01-20 TJ Saunders <tj@castaglia.org> * src/dirtree.c: Move some noisy AllowOverride logging to trace logging, from debug logging. 2016-01-19 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Update mod_sftp's handling of the READLINK request to use the new chroot-aware dir_readlink() function. 2016-01-19 TJ Saunders <tj@castaglia.org> * : commit 632cc9dd493e263f66fb42dd54809cb3f671b17b Merge: d55f831 5fd7508 Author: TJ Saunders <tj@castaglia.org> Date: Tue Jan 19 09:56:04 2016 -0800 2016-01-19 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Make sure that mod_sql can also handle the new %R, %{transfer-millisecs} variables from Bug#4218. 2016-01-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #202 from proftpd/privs-coverage Increase test coverage of the Privs API. 2016-01-19 TJ Saunders <tj@castaglia.org> * include/privs.h, src/privs.c, tests/api/privs.c: Attempt to increase test coverage of the Privs API by providing a function for setting the "am I running as nonroot?" flag, to be used by unit tests. 2016-01-19 TJ Saunders <tj@castaglia.org> * include/support.h, src/support.c, tests/api/misc.c: Provide flags, for handling relative destination symlink paths (or not). Update the unit tests to cover the new branches. 2016-01-18 TJ Saunders <tj@castaglia.org> * src/support.c, tests/api/misc.c: If dir_readlink() reads in a relative path, and that path falls within the chroot, try to emit/provide a relative path as output, in order to preserve the principle of least surprise. 2016-01-18 TJ Saunders <tj@castaglia.org> * include/support.h, src/support.c, tests/api/misc.c: First part of Bug#4219: provide a support function which wraps pr_fsio_readlink(), and does the chroot checking/adaptation. 2016-01-18 TJ Saunders <tj@castaglia.org> * src/fsio.c: Handle the edge case where a custom FSIO object does not provide a readlink implementation, and that callback is thus NULL. 2016-01-18 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_snmp.pm: Update the mod_snmp tests to pass properly, when more contrib modules (e.g. mod_tls, mod_sftp, mod_ban) are present. 2016-01-18 TJ Saunders <tj@castaglia.org> * contrib/mod_snmp/mod_snmp.c: Remove some logically unneeded code, per Coverity. 2016-01-18 TJ Saunders <tj@castaglia.org> * contrib/mod_snmp/PROFTPD-MIB.txt: Remove CVS tag, now that we're in Git. 2016-01-18 TJ Saunders <tj@castaglia.org> * .gitignore: Ignore the Coverity cov-int directory, too. 2016-01-18 TJ Saunders <tj@castaglia.org> * modules/mod_ctrls.c: Avoid unnecessary (and redundant) null check, per Coverity. 2016-01-18 TJ Saunders <tj@castaglia.org> * src/dirtree.c: Catch/handle a possible null pointer dereference, per Coverity. 2016-01-18 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_passwd.c: Pedantically check for possible null values, per Coverity. 2016-01-18 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_fscache.c: Implement permission checks on the directory for caching OCSP responses, and avoid world-writable directories. 2016-01-18 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_fscache.c: Be a little more strict when checking permissions for cached OCSP responses, by calling open(2) on the path, then using fstat(2), rather than just using lstat(2). This should make Coverity happier. Hopefully. 2016-01-17 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Updates NEWS, release notes with mention of Bug#4218. 2016-01-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #201 from proftpd/extlog-response-transfer-millisecs-bug4218 Bug#4218: Support a LogFormat variable for logging command duration in milliseconds 2016-01-17 TJ Saunders <tj@castaglia.org> * doc/modules/mod_log.html, include/mod_log.h, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Implement the %{transfer-millisecs} LogFormat variable, with regression test. In doing so, the implementation of the %T LogFormat variable was made much simpler. 2016-01-17 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: First step: add missing regression test for the %T LogFormat variable, to be used as a template for the next part. 2016-01-17 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Now we're playing with platform-specific behaviors. Whee! 2016-01-17 TJ Saunders <tj@castaglia.org> * tests/api/str.c: Quell compiler warning about mismatched types. 2016-01-17 TJ Saunders <tj@kiban.io> * include/support.h, modules/mod_ls.c, src/support.c, tests/api/misc.c: Still working out the kinks with the rewritten get_name_max(). 2016-01-17 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: The rewriting of get_name_max() changed the test expectations. 2016-01-17 TJ Saunders <tj@castaglia.org> * src/support.c: Rewrite the get_name_max() function to be more legible, and avoid (hopefully) the rats' nest of ifdefs. 2016-01-17 TJ Saunders <tj@castaglia.org> * src/netio.c: At least check if our stashing of the NetIO in the notes fails, per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c: Avoid memory leak under error conditions; found by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Avoid memory leak in edge case scenario; found by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Avoid an unneeded loop, which avoids logically dead code. Found by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * modules/mod_dso.c: Avoid checking a pointer that we already know to be null (due to earlier checks), per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * src/log.c: Be more paranoid about checking for null pointers, per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_exec.c: It's possible for exec_subst_var() to be called with a null cmd_rec, thus we need to guard against such conditions. Found by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Remove unused code, detected by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/coverity/modeling.c: Update the Coverity modeling file, to squelch known false positives. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_fscache.c: Avoid passing a known null pointer, per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * src/support.c: If pr_localtime() returns NULL, just bail, rather than trying to skirt around the issue. Found by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/interop.c: Avoid a possible null dereference, found by Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * utils/ftpcount.c, utils/ftpscrub.c, utils/ftpwho.c: Add missing break statements, per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keys.c: Remove extraneous null check, per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * src/support.c: Avoid some dead/unreachable code, per Coverity. 2016-01-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_memcache.c: Removing now-unused variables. 2016-01-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #200 from proftpd/facts-media-type Update mod_facts to use mod_mime, when present/enabled, to provide the 2016-01-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #199 from proftpd/quotatab-better-handling-of-default Tweak the lookup pattern mod_quotatab uses, with regard to the QuotaD… 2016-01-16 TJ Saunders <tj@castaglia.org> * doc/howto/TLS.html: Adding FAQ about the TLS "unknown protocol" error, from the forums. 2016-01-15 TJ Saunders <tj@castaglia.org> * modules/mod_auth.c: Make sure to validate the USER command first, before any other special processing. 2016-01-15 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4217. 2016-01-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #198 from proftpd/auth-reauthenticate-bug4217 Bug#4217: Handle FTP re-authentication attempts better. 2016-01-15 TJ Saunders <tj@castaglia.org> * modules/mod_auth.c: Address Bug#4217, as requested, to be slightly more indicative, via response codes and messages, of the issue with reauthentication. 2016-01-15 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Logins.pm: First part of working on Bug#4217: make sure there is a regression test for the previous behavior, for Bug#3736. 2016-01-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #197 from proftpd/extlog-bug4067-redux Attempt to fix the exclusion LogFormat functionality introduced for a… 2016-01-14 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Fix bug where not providing all parameters for FSCachePolicy might not have the expected behavior. 2016-01-14 TJ Saunders <tj@castaglia.org> * src/str.c: Quell a compiler warning about an unused function. 2016-01-14 TJ Saunders <tj@castaglia.org> * configure, configure.in, contrib/mod_sftp/crypto.c, contrib/mod_sql_postgres.c: Make sure that the build system automatically enables OpenSSL support when mod_auth_otp or mod_digest are requested. Also update the lists of OpenSSL-using modules elsewhere. 2016-01-14 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Remove now-unused variable. 2016-01-13 TJ Saunders <tj@castaglia.org> * src/timers.c: Clean up stylistic nits, and leave more comments for my future self. This helped me track down a timer-related issue, where the suggested "next timeout" calculation was too coarse, and prone to cause unexpected behavior. Hopefully better now. 2016-01-13 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Set the module pointer for the TimeoutIdle callback, for better trace logging. 2016-01-12 TJ Saunders <tj@castaglia.org> * src/data.c, src/netio.c: Fix the generation of network IO read/write events, and refactor these events such that ALL of them are generated by the NetIO API, not spread out amongst the NetIO and data transfer routines. 2016-01-12 TJ Saunders <tj@castaglia.org> * src/auth.c: Include the number of items in the authcache, when we flush it. 2016-01-12 TJ Saunders <tj@castaglia.org> * src/table.c: Minor simplification to the code for removing an entry from a table. 2016-01-12 TJ Saunders <tj@castaglia.org> * : Merge pull request #196 from proftpd/sorted-feat Sorted FEAT response, for more professional look 2016-01-12 TJ Saunders <tj@castaglia.org> * src/table.c: Style nits; no functional change. 2016-01-12 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Sort the FEAT response, for prettier, more professional displays. 2016-01-12 TJ Saunders <tj@castaglia.org> * src/table.c: Style nits; no functional change. 2016-01-11 TJ Saunders <tj@castaglia.org> * src/response.c, tests/api/response.c: Minor improvement for pr_response_send_async() by properly tracking the starting pointer for sstrcat(), to avoid scanning bytes already concatenated. 2016-01-11 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Make sure to include CLNT in the HELP output. 2016-01-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #195 from proftpd/ssh2-on-ftp Detect SSH2 connections to an FTP port 2016-01-10 TJ Saunders <tj@castaglia.org> * : commit f70caf2b4c41f9a7fe4790d6d7a0c0650f35d6f9 Author: TJ Saunders <tj@castaglia.org> Date: Sun Jan 10 23:48:47 2016 -0800 2016-01-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #194 from proftpd/support-clnt Support the CLNT command 2016-01-10 TJ Saunders <tj@castaglia.org> * doc/howto/FTP.html, include/cmd.h, include/ftp.h, modules/mod_core.c, src/cmd.c, tests/api/cmd.c, tests/t/commands/clnt.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/CLNT.pm, tests/tests.pl: Support the CLNT command. 2016-01-10 TJ Saunders <tj@castaglia.org> * .gitignore: Ignoring a few more symlinks. 2016-01-10 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_passwd.c, contrib/mod_tls.c, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c, include/str.h, src/str.c, tests/api/str.c: I decided that pr_str_bin2hex() was a better function name. 2016-01-10 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_passwd.c: Typo in comment; no functional change. 2016-01-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #193 from proftpd/core-str-hex Add new `pr_str_hex()` function. 2016-01-09 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c: Quell compiler warning. 2016-01-08 TJ Saunders <tj@castaglia.org> * .gitignore: Adding a few more symlinks, generated by the build system, to be ignored by git. 2016-01-06 TJ Saunders <tj@castaglia.org> * src/fsio.c: Prevent infinite recursion, in lookup_file_fs(), by using the fs object's readlink callback directly, rather than going through the public API, which calls lookup_file_fs() -- hence the recursion. 2016-01-05 TJ Saunders <tj@castaglia.org> * : Merge pull request #192 from proftpd/sql-odbc-issues SQL ODBC issues 2016-01-05 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, contrib/mod_sql_odbc.c, doc/contrib/mod_sql_odbc.html, tests/t/etc/modules/mod_sql_odbc/odbc.ini, tests/t/etc/modules/mod_sql_odbc/odbcinst.ini, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: While investigating some mod_sql_odbc issues mentioned in the forums, I discovered some cases where the ODBC API version needed to be configurable. Adding in the new config (and docs), and the reproduction recipes. 2016-01-05 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c: Minor nits; no functional change. 2016-01-05 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Better name for added testcase. 2016-01-05 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test ensuring that mod_sftp properly fails to login a client that fails password authentication. 2016-01-03 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add regression test for CCC before login. 2016-01-03 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Per RFC 4217, Section 15.3, require authentication before accepting the CCC command, to mitigate anonymous clients from issuing AUTH/CCC in loops, tying up server resources. 2016-01-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #191 from proftpd/tls-verify-client-optional Implement "TLSVerifyClient optional", to replace functionality lost when 2016-01-01 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Mention fix for Bug#4214 in NEWS, release notes. 2016-01-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #190 from proftpd/lang-useencoding-per-user-bug4214 Bug#4214 - Allow UseEncoding to be set on a per-user basis. 2016-01-01 TJ Saunders <tj@castaglia.org> * configure, configure.in, modules/mod_lang.c, tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Bug#4214 - Allow UseEncoding to be set on a per-user basis. 2016-01-01 TJ Saunders <tj@castaglia.org> * config.h.in, configure, configure.in, src/regexp.c: Add necessary autoconf detection of pcre_free_study() function. 2016-01-01 TJ Saunders <tj@castaglia.org> * .travis.yml: Apparently the travis-ci environment doesn't have apt. Weird. 2016-01-01 TJ Saunders <tj@castaglia.org> * .travis.yml: Remove sending email notifications to -committers; it doesn't appear to be working as expected. 2016-01-01 TJ Saunders <tj@castaglia.org> * .travis.yml: Show the details of the libpcre3-dev package, to help debug a build failure on travis-ci (but working locally). 2016-01-01 TJ Saunders <tj@castaglia.org> * src/regexp.c: Syntax tweak, more of a stylistic nit. 2016-01-01 TJ Saunders <tj@castaglia.org> * src/regexp.c: We were missing an include of the PCRE headers. Odd. 2016-01-01 TJ Saunders <tj@castaglia.org> * src/auth.c: Quell compiler warning on travis-ci. 2016-01-01 TJ Saunders <tj@castaglia.org> * src/regexp.c: Refactor some common code into a single routine, and reduce needless duplication. 2016-01-01 TJ Saunders <tj@castaglia.org> * src/regexp.c: Make sure we explicitly call pcre_free_study(), to free up any JIT-allocated memory used by pcre_study(). 2015-12-31 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Style nits; no functional change. 2015-12-31 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update NEWS, release notes with mention of Bug#4213. 2015-12-31 TJ Saunders <tj@castaglia.org> * : Merge pull request #189 from proftpd/tls-nocertrequest-tlsoption-bug4213 Bug#4213 - Deprecate the NoCertRequest TLSOption. 2015-12-27 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Updates NEWS, release notes with mention of TLS session ticket support (Bug#4176). 2015-12-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #188 from proftpd/tls-session-tickets-bug4176 TLS session ticket support (Bug#4176) 2015-12-25 TJ Saunders <tj@castaglia.org> * : commit 251611d8f6f579cb8eacc87ad525822b0fbed1c3 Author: TJ Saunders <tj@castaglia.org> Date: Fri Dec 25 13:44:11 2015 -0800 2015-12-25 TJ Saunders <tj@castaglia.org> * .travis.yml: Add email notifications to the travis-ci builds. 2015-12-25 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_tls.html: Documenting the TLS session ticket support for Bug#4176. 2015-12-25 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Bug#4176: Support for TLS session tickets. Initial implementation, with some testing. Needs documentation now. 2015-12-23 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_sftp.html, doc/contrib/mod_tls.html: Remove some confusing text about having multiple Options directives on the same line. 2015-12-23 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update news, release notes to mention Bug#4200. 2015-12-23 TJ Saunders <tj@castaglia.org> * : Merge pull request #183 from proftpd/sql-tls-info-bug4200 Bug#4200 - Support TLS client configuration for SQL servers. 2015-12-22 TJ Saunders <tj@castaglia.org> * include/compat.h: Provide a backward compatibility macro for `_sql_make_cmd`, and remove some old backward compatibility macros while there. 2015-12-22 TJ Saunders <tj@castaglia.org> * : commit 39ee20cc2708bd8b7abd0c391e433f74858d2621 Author: TJ Saunders <tj@castaglia.org> Date: Tue Dec 22 17:38:16 2015 -0800 2015-12-22 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update NEWS, release notes with mention of fix for Bug#4175. 2015-12-22 TJ Saunders <tj@castaglia.org> * : Merge pull request #186 from proftpd/tls-ocsp-stapling-bug4175 Bug#4175: Support for OCSP stapling 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_memcache.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_memcache.pm: Implement an OCSP response cache provider using mod_tls_memcache, with accompanying regression tests. 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_shmcache.c: Update the mod_tls_shmcache comments to be more up-to-date. 2015-12-22 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_tls.html, doc/contrib/mod_tls_shmcache.html: Update the mod_tls_shmcache docs to mention its support for the TLSStaplingCache directive. 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_shmcache.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_shmcache.pm: Implement an OCSP response cache provider via SysV shared memory segments (using mod_tls_shmcache), with accompanying tests. 2015-12-22 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_fscache.pm: Move one of the OCSP stapling support routines to the mod_tls_fscache-specific tests. 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_fscache.c: Remove unused event listeners, and update the logging of OpenSSL errors to include the finer-grained data, if available. 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: If the EnableDiags TLSOption is in effect, print out the OCSP response we obtained from the TLSStaplingCache, if any. Also make sure that we do NOT add back to the TLSStaplingCache a response that we just read from that cache. 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_shmcache.c: Step #1 in adding OCSP cache support to mod_tls_shmcache: rename all of the existing SSL session cache variables/functions more clearly. 2015-12-22 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_fscache.pm, tests/t/modules/mod_tls_fscache.t, tests/tests.pl: Split out the mod_tls_fscache-related regression tests into their own test file, just as was done for mod_tls_memcache and mod_tls_shmcache. 2015-12-22 TJ Saunders <tj@castaglia.org> * .gitignore: Ignore the new mod_tls_fscache symlinked into the modules/ directory. 2015-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_fscache.c: Finish implementing some of the 'ftpdctl ocspcache' actions for mod_tls_fscache. 2015-12-21 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_tls_fscache.html: Provide better example configuration. 2015-12-21 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Remove development cruft. 2015-12-21 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_tls.html, doc/contrib/mod_tls_fscache.html, doc/contrib/mod_tls_memcache.html: Update the mod_tls docs for the OCSP stapling support, and include the docs for the new mod_tls_fscache module. 2015-12-21 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Implement a TLSStaplingResponder directive, for sites which will need to proxy their OCSP queries. Also remove unnecessary defensive coding, after reading the OpenSSL sources. 2015-12-21 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_fscache.c: Be a little more careful with the OCSP response files found on disk. 2015-12-21 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Refactor some of the previous OCSP code (for checking client certificates' revocation status) to use the newer code, and reduce the amount of code duplication. 2015-12-21 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Fix build errors, warnings caught by travis-ci. 2015-12-21 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add regression test demonstrating a mod_quotatab config that uses the QuotaDefault directive. 2015-12-21 TJ Saunders <tj@castaglia.org> * : commit 8a9a719b595b31f061be46835a18f9b73c172625 Author: TJ Saunders <tj@castaglia.org> Date: Mon Dec 21 15:24:27 2015 -0800 2015-12-21 TJ Saunders <tj@kiban.io> * contrib/mod_tls.c: Address Issue #185 by explicitly clearing the passphrase list, even when there are no explicit passphrases for a cert. 2015-12-17 TJ Saunders <tj@castaglia.org> * : commit 8787af68da750efcbe11ccee93df07a583e3ba89 Merge: f98a4fc 82a2fe1 Author: TJ Saunders <tj@castaglia.org> Date: Thu Dec 17 14:06:01 2015 -0800 2015-12-17 TJ Saunders <tj@castaglia.org> * locale/files.txt: Updating the list of candidate files which might contain localizable strings. 2015-12-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #180 from proftpd/build-fix-dist-target Fix the 'make dist' target 2015-12-17 TJ Saunders <tj@castaglia.org> * : commit fd4afb392a2855a93ea2615f73215125e07db72c Author: TJ Saunders <tj@castaglia.org> Date: Thu Dec 17 13:34:26 2015 -0800 2015-12-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #184 from proftpd/rpm-systemd-bug3661 Updated proftpd.spec file to include the systemd files, per Bug#3661. 2015-12-17 TJ Saunders <tj@castaglia.org> * .gitignore: Ignore symlinks generated by the build system, and other auto-generated files. 2015-12-16 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_memcache.c: Make the namespace for memcached sessions more precise, as we might want to cache other objects (e.g. OCSP responses) in the near future. 2015-12-16 TJ Saunders <tj@castaglia.org> * config.h.in, configure, configure.in, contrib/mod_tls.c: Initial start of OCSP stapling implementation in mod_tls. For this, we either return a "tryLater" OCSP response, or none. This is how it starts. 2015-12-15 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_sql_odbc.html: HTML fixups. 2015-12-15 TJ Saunders <tj@castaglia.org> * : commit d259494c8ebc9c2074ec95125d1e57a5b8db3074 Author: TJ Saunders <tj@castaglia.org> Date: Tue Dec 15 16:51:56 2015 -0800 2015-12-15 TJ Saunders <tj@castaglia.org> * config.h.in, configure, configure.in, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_odbc.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c, doc/contrib/mod_sql.html: Bug#4200 - Support TLS client configuration for SQL servers. 2015-12-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #182 from tkyf/fix_log_for_MaxHostsPerUser Fix log message on connection refused by MaxHostsPerUser limits 2015-12-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.h.in: Make mod_sftp compile when either/both DSA and DES are disabled in OpenSSL. 2015-12-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c: Ensure that mod_sftp builds if RIPEMD is disabled in OpenSSL. 2015-12-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c: Make sure that mod_sftp can compile against an OpenSSL which has had CAST support disabled. 2015-12-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/mod_sftp.h.in: Make it possible to build mod_sftp against an OpenSSL which has had Blowfish support disabled. 2015-12-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c: Make sure that mod_sftp compiles using an OpenSSL that has had RC4 support disabled. 2015-12-14 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4212. 2015-12-14 TJ Saunders <tj@castaglia.org> * : Merge pull request #181 from proftpd/rootrevoke-on-enforcement Bug#4212: Ensure that FTP data transfer commands fail appropriately when "RootRevoke on" is in effect. 2015-12-11 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, modules/mod_ls.c, src/data.c: Make sure that the port number logged in the "RootRevoke in effect" messages is accurate. Enforce the case where RootRevoke is on, but the client has ignored our error responses to PORT/EPRT, and had requested a data transfer anyway. We do this by returning an error response for the data transfer command (e.g. LIST, STOR, etc) before we even attempt to make the connection. 2015-12-11 TJ Saunders <tj@castaglia.org> * Make.rules.in, lib/Makefile.in, modules/Makefile.in, src/Makefile.in, utils/Makefile.in: Define a MAKEDEPEND variable in the top-level Make.rules, so that I can easily override what to use as "makedepend" on platforms which don't easily have one (e.g. Mac OSX). 2015-12-11 TJ Saunders <tj@castaglia.org> * src/ftpscrub.c: Remove duplicated 'ftpscrub.c' from the src/ directory; it is already in the utils/ directory (where it should be). I suspect that this file was gumming up the makedepend works. 2015-12-11 TJ Saunders <tj@castaglia.org> * contrib/mod_ldap.c: Fix mod_ldap build issue when building against e.g. OpenLDAP-2.3.x. 2015-12-10 TJ Saunders <tj@castaglia.org> * contrib/ftpasswd: Address Debian ProFTPD Bug 796233; see: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796233 2015-12-10 TJ Saunders <tj@castaglia.org> * utils/ftpshut.8.in: Man page style nits. 2015-12-10 TJ Saunders <tj@castaglia.org> * src/dirtree.c: Reduce logging verbosity when parsing Include directories. 2015-12-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #178 from proftpd/contrib-systemd-bug3661 Bug#3661 - Support for systemd's "socket activation" mode. 2015-12-10 TJ Saunders <tj@castaglia.org> * modules/mod_auth.c: Provide slightly more informative message about active data transfers being affected by "RootRevoke on". 2015-12-09 TJ Saunders <tj@castaglia.org> * : commit b82c2a02d2822d033f38026c53ee65579efce5b8 Author: TJ Saunders <tj@castaglia.org> Date: Wed Dec 9 14:21:26 2015 -0800 2015-12-09 TJ Saunders <tj@castaglia.org> * contrib/dist/systemd/README.systemd, contrib/dist/systemd/proftpd.socket, contrib/dist/systemd/proftpd@.service: Bug#3661 - Support for systemd's "socket activation" mode. 2015-12-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #177 from proftpd/null-times-bug4136 Attempt to address/mitigate Bug#4136 by checking for null return valu… 2015-12-09 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c: Removing unused variable/context. 2015-12-08 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES: Something more to mention in the release notes (Bug#4057, that is). 2015-12-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #176 from proftpd/tls-memcache-using-json-bug4057 Bug#4057 - Support using JSON when storing TLS session information in memcached 2015-12-08 TJ Saunders <tj@castaglia.org> * contrib/mod_ban.c: While working on Bug#4057, I encountered some memory-handling issues with the work for Bug#4056; these are the fixes. 2015-12-08 TJ Saunders <tj@castaglia.org> * .gitignore: Another form of temporary file to ignore, please. 2015-12-08 TJ Saunders <tj@castaglia.org> * NEWS, contrib/mod_tls_memcache.c, doc/contrib/mod_tls_memcache.html, include/memcache.h, src/memcache.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_memcache.pm: Bug#4057: Support using JSON when storing TLS session information in memcached. 2015-12-08 TJ Saunders <tj@castaglia.org> * : commit 6e34ab4c8132c3b8b87e60ab116e40a2b0aae3be Author: TJ Saunders <tj@castaglia.org> Date: Tue Dec 8 08:20:51 2015 -0800 2015-12-08 TJ Saunders <tj@castaglia.org> * src/signals.c: Minor tweaks (build warnings, error checking) for obtaining stacktraces on Mac OSX. 2015-12-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #175 from proftpd/ban-memcache-using-json-bug4056 Bug#4056: Use JSON when storing ban information in memcached 2015-12-07 TJ Saunders <tj@castaglia.org> * contrib/mod_ban.c, include/memcache.h, src/memcache.c, tests/t/lib/ProFTPD/Tests/Modules/mod_ban/memcache.pm, utils/ftpwho.c: Finish the regression tests for Bug#4056. This also involved adding some necessary cleanup (lessons learned!) in ftpwho. 2015-12-07 TJ Saunders <tj@castaglia.org> * contrib/mod_ban.c: Some cached ban rules might never expire; these can be added using ftpdctl. Make sure that mod_ban does not purge the rules when checking for expired cache entries. 2015-12-07 TJ Saunders <tj@castaglia.org> * contrib/mod_ban.c, doc/contrib/mod_ban.html, src/memcache.c: Implement the code for supporting Bug#4056, and update the mod_ban docs accordingly. 2015-12-04 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES: Flesh out the release notes, preparing for a release. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Remove troublesome assertion, for now. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Trying to get this persnickety test to pass. Sheesh. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Fix test failures by ensuring that localtime(3) returns GMT data. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Adding test coverage of the check_shutmsg() support routine. 2015-12-04 TJ Saunders <tj@castaglia.org> * utils/ftpshut.c: Stylistic nits in the ftpshut utility; no functional change. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/display.c: Properly test the SEND_NOW and NO_EOM display flags. 2015-12-04 TJ Saunders <tj@castaglia.org> * src/support.c, tests/api/misc.c: More tests of the Support API; I'm sure more coverage is needed. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/display.c: Cover more of the Display API via unit tests. 2015-12-04 TJ Saunders <tj@castaglia.org> * include/support.h, src/main.c, src/support.c, tests/api/misc.c: Adding to the code coverage of the unit tests. 2015-12-04 TJ Saunders <tj@castaglia.org> * tests/api/display.c: Tickle more of the code paths in the Display API in the unit tests. 2015-12-03 TJ Saunders <tj@castaglia.org> * tests/api/misc.c: Fix broken test, seen by travis-ci. 2015-12-03 TJ Saunders <tj@castaglia.org> * src/support.c, tests/api/misc.c: More unit tests, for more code coverage. 2015-12-03 TJ Saunders <tj@castaglia.org> * src/support.c, tests/api/misc.c: Filling out more unit tests, in the name of code coverage. 2015-12-03 TJ Saunders <tj@castaglia.org> * tests/Makefile.in, tests/api/misc.c, tests/api/tests.c, tests/api/tests.h: Start adding unit tests for the support API routines now pull in, to increase test coverage. 2015-12-03 TJ Saunders <tj@castaglia.org> * src/support.c: Stylistic nits; no functional change. 2015-12-03 TJ Saunders <tj@castaglia.org> * include/str.h, include/support.h, src/str.c, src/support.c, tests/api/str.c: With the addition of the src/support.c file to the unit tests, the test coverage has changed. Thus work to get the coverage back up to par, which involves some good refactoring. 2015-12-03 TJ Saunders <tj@castaglia.org> * src/display.c: Stylistic tweaks; no functional change. 2015-12-03 TJ Saunders <tj@castaglia.org> * include/display.h, src/display.c, tests/Makefile.in, tests/api/display.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Start working on unit tests for the Display API. 2015-12-03 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES: Start updating release notes; more to be fleshed out. 2015-12-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #168 from proftpd/login-timeout-exceeded-log-level Change the log level for various timeouts (TimeoutLogin, TimeoutSessi… 2015-11-30 TJ Saunders <tj@castaglia.org> * : Merge pull request #172 from proftpd/core-masqueradeaddress-resolved-later-bug4104 Bug#4104 - Handle MasqueradeAddress resolution errors due to startup … 2015-11-30 TJ Saunders <tj@castaglia.org> * tests/api/netaddr.c: Make sure to add a unit test for the specific errno value, when a DNS name cannot be resolved (Bug#4104). 2015-11-30 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update NEWS, release notes for this feature. 2015-11-30 TJ Saunders <tj@castaglia.org> * contrib/mod_dynmasq.c, tests/t/modules/mod_dynmasq.t, tests/tests.pl: Add regression tests for the mod_dynmasq module, ensuring that it handles the delayed-resolution DNS names for MasqueradeAddress properly (Bug#4104). 2015-11-30 TJ Saunders <tj@castaglia.org> * src/session.c, tests/t/lib/ProFTPD/Tests/Config/MasqueradeAddress.pm: Adding regression test for Bug#4104. 2015-11-28 TJ Saunders <tj@castaglia.org> * contrib/mod_dynmasq.c, modules/mod_core.c, src/dirtree.c, src/display.c, src/main.c, src/netaddr.c, src/session.c: Bug#4104 - Handle MasqueradeAddress resolution errors due to startup sequences. 2015-11-28 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kbdint.c: Remove now-unneeded cast. 2015-11-28 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with fix for Bug#4210. 2015-11-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #171 from proftpd/sftp-unbounded-extpair-bug4210 Bug#4210 - Avoid unbounded SFTP extended attribute key/values. 2015-11-28 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Bug#4210 - Avoid unbounded SFTP extension key/values. 2015-11-28 TJ Saunders <tj@castaglia.org> * NEWS: Updating NEWS for fix for Bug#4209. 2015-11-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #170 from proftpd/core-zero-size-pool-malloc-bug4209 Bug#4209 - Zero-length memory allocation possible, with undefined res… 2015-11-28 TJ Saunders <tj@castaglia.org> * src/pool.c: Bug#4209 - Zero-length memory allocation possible, with undefined results. 2015-11-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #169 from proftpd/tls-host-command Make the handling of the HOST command by mod_tls be more in line with… 2015-11-15 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Minor trace logging for debugging. 2015-11-15 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_mysql.c: Stylistic tweaks; no functional change. 2015-11-15 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c: Minor nit; no functional change. 2015-11-15 TJ Saunders <tj@castaglia.org> * src/netio.c: Minor nits; no functional change. 2015-11-14 TJ Saunders <tj@castaglia.org> * modules/mod_auth.c: Change the log level for various timeouts (TimeoutLogin, TimeoutSession) from NOTICE to INFO, given that these timeouts can be very frequent/common occurrences. 2015-11-14 TJ Saunders <tj@castaglia.org> * doc/howto/index.html: Fix link to LogLevels howto. 2015-11-13 TJ Saunders <tj@castaglia.org> * src/netio.c: If a stream has been marked as interruptible, then do not retry e.g. poll() when the system call is interrupted; return that error to the caller. 2015-11-12 TJ Saunders <tj@castaglia.org> * include/bindings.h, modules/mod_core.c, src/bindings.c: During the implementing of HOST handling in mod_proxy, the integration tests there stumbled across a minor bug in the handling of HOST commands which pertain to several different vhosts on the same _address_, but on different ports. We were not properly differentiating among these vhosts when looking for the one which had the requested HOST (or not). 2015-11-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #166 from proftpd/sftp-publickey-failed-login-logging Add more logging, via the normal auth logging channels, for when SFTP 2015-11-10 TJ Saunders <tj@castaglia.org> * : commit 100e7f7ca1780ce2cab8b489768b76816794999c Author: TJ Saunders <tj@castaglia.org> Date: Mon Nov 9 17:51:36 2015 -0800 2015-11-09 TJ Saunders <tj@castaglia.org> * src/inet.c: Ignore "Bad file descriptor" errors when toggling Nagle on sockets. 2015-11-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #165 from proftpd/lang-segfault-postparse-bug4206 Attempt to Bug#4206 by speculatively fixing possible causes. First, … 2015-10-28 TJ Saunders <tj@castaglia.org> * modules/mod_lang.c: Attempt to Bug#4206 by speculatively fixing possible causes. First, reset a static string (allocated out of a pool which is cleared on restart) to its default. Next, remove some (useless) #ifdefs which, if mod_lang is built as a DSO/shared module, could cause problems on module loading IFF the system does not have the expected header. 2015-10-27 TJ Saunders <tj@castaglia.org> * src/parser.c: Fix bug in parser, caused by refactoring. 2015-10-22 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Fix compiler warning. 2015-10-14 TJ Saunders <tj@castaglia.org> * : Merge pull request #159 from proftpd/sftp-fsetstat-bug4204 Attempt to mitigate/fix Bug#4204 by ensuring that the response lists are 2015-10-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: When writing out a STATUS message, make sure to use the pool from the SFTP request, rather than the session's pool, as the latter could possibly be overused; this thus counts as a memory leak. 2015-10-13 TJ Saunders <tj@castaglia.org> * : Merge pull request #163 from bverschueren/obsolete_timer_t_macro Remove HAVE_TIMER_T macro and timer_t detection mechanism 2015-10-07 TJ Saunders <tj@castaglia.org> * .travis.yml: Turns out that running the api-tests executable again doesn't really increase the coverage of the Privs API as I'd expected. Oh well. 2015-10-07 TJ Saunders <tj@castaglia.org> * .travis.yml: I think that the `api-tests` executable needs to be run in the tests/ directory, so that the lcov stuff picks up the files. 2015-10-07 TJ Saunders <tj@castaglia.org> * .travis.yml: Run just the privs-related unit tests as root, for better test code coverage. 2015-10-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Make sure that the errno value from a failed pr_fsio_write() call is properly propagated/used. 2015-10-07 TJ Saunders <tj@castaglia.org> * tests/api/privs.c: Remove unneeded setting of trace logging to STDERR. 2015-10-06 TJ Saunders <tj@castaglia.org> * tests/api/scoreboard.c: Attempt to fix spurious test failures. 2015-10-06 TJ Saunders <tj@castaglia.org> * tests/api/scoreboard.c: Refactor the Scoreboard testing code to be more in line with the rest of the styling. Added coverage of more fields when updating scoreboard entries. 2015-10-05 TJ Saunders <tj@castaglia.org> * tests/api/scoreboard.c: Cover more of pr_scoreboard_entry_get(), and note what needs to be done for pr_scoreboard_entry_update(). 2015-10-04 TJ Saunders <tj@castaglia.org> * include/scoreboard.h, src/scoreboard.c, tests/api/scoreboard.c: Refactor the other portion of locking code in the Scoreboard API, that for locking entries, into a common testable function. 2015-10-04 TJ Saunders <tj@castaglia.org> * include/scoreboard.h, src/scoreboard.c, tests/api/scoreboard.c: Refactor some of the scoreboard locking code to avoid code duplication, and make it possible to test via unit tests. There's more such refactoring to do here. 2015-10-04 TJ Saunders <tj@castaglia.org> * tests/api/auth.c: Tickle the "authenticated/authorized/checked via RFC2228" code paths. 2015-10-04 TJ Saunders <tj@castaglia.org> * tests/api/auth.c, tests/api/data.c, tests/api/modules.c: Fixed some typos, tried to cover a few more edge cases. 2015-10-04 TJ Saunders <tj@castaglia.org> * src/modules.c, tests/api/data.c, tests/api/modules.c: Testing more code paths. 2015-10-04 TJ Saunders <tj@castaglia.org> * tests/api/data.c, tests/api/stubs.c, tests/api/tests.h: Simulate receiving control commands during a data transfer, for more test coverage. 2015-10-04 TJ Saunders <tj@castaglia.org> * tests/api/data.c: Add test coverage for reading data via pr_data_xfer(). 2015-10-04 TJ Saunders <tj@castaglia.org> * src/data.c, tests/api/configdb.c, tests/api/data.c, tests/api/netacl.c: Refactor some of the too-large pr_data_xfer() function, to make it easier to read (and test). Start working on unit tests for this function, too. 2015-10-04 TJ Saunders <tj@castaglia.org> * tests/api/configdb.c: Much better exercising of the mergedown functionality. 2015-10-04 TJ Saunders <tj@castaglia.org> * tests/api/configdb.c, tests/api/stash.c: Working on exercising more of the config lookup code. 2015-10-04 TJ Saunders <tj@castaglia.org> * src/stash.c, tests/api/encode.c, tests/api/stash.c: Eking out ever more test coverage, bit by bit. 2015-10-03 TJ Saunders <tj@castaglia.org> * src/auth.c, src/encode.c, tests/api/auth.c, tests/api/encode.c: Increased code coverage for the Auth and Encode APIs. 2015-10-03 TJ Saunders <tj@castaglia.org> * src/response.c, tests/api/response.c: The response unit tests would fail if the TEST_VERBOSE environment variable was set; now fixed. Also added some sanity checking for null format strings for pr_response_add() and pr_response_add_err(), for paranoia. 2015-10-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #162 from proftpd/tls-no-mlock-for-empty-passphrase If there is no passphrase needed for a certificate, then do not bother 2015-09-30 TJ Saunders <tj@castaglia.org> * : Merge pull request #161 from orthographic-pedant/spell_check/administrator Fixed typographical error, changed adminstrator to administrator in README. 2015-09-30 TJ Saunders <tj@castaglia.org> * README.md: Add a few more badges. 2015-09-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Attempt to mitigate/fix Bug#4204 by ensuring that the response lists are cleared after each dispatching. 2015-09-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #158 from proftpd/exec-max-fd-count Limit the maximum number of fds closed by mod_exec when executing an … 2015-09-28 TJ Saunders <tj@castaglia.org> * src/configdb.c, tests/api/configdb.c: Tickling a few more branches in the Config API. 2015-09-28 TJ Saunders <tj@castaglia.org> * src/fsio.c, src/inet.c, tests/api/inet.c: Removing unneeded code paths. Covering more of the Inet API with more testing. 2015-09-28 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Cover more of the pr_fsio_access() code paths. 2015-09-28 TJ Saunders <tj@castaglia.org> * src/netaddr.c, tests/api/netaddr.c: Flesh out the remaining Netaddr API unit tests. 2015-09-28 TJ Saunders <tj@castaglia.org> * tests/api/netaddr.c: Cover the pr_netaddr_v6tov4() function in the tests, too. 2015-09-28 TJ Saunders <tj@castaglia.org> * tests/api/inet.c: Try covering more error paths in the Inet API. 2015-09-28 TJ Saunders <tj@castaglia.org> * src/fsio.c, tests/api/fsio.c: Trying to get coverage of the FSIO API higher. 2015-09-27 TJ Saunders <tj@castaglia.org> * contrib/mod_exec.c: Limit the maximum number of fds closed by mod_exec when executing an external program, regardless of the platform. 2015-09-27 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Easy addition for covering of the --enable-devel FSIO API. 2015-09-27 TJ Saunders <tj@castaglia.org> * src/configdb.c, tests/api/configdb.c: Covering more of the Config API. 2015-09-27 TJ Saunders <tj@castaglia.org> * src/fsio.c, tests/api/fsio.c: Covering more of the FSIO API. 2015-09-26 TJ Saunders <tj@castaglia.org> * src/regexp.c, tests/api/regexp.c: Increase coverage of POSIX regex handling in the Regexp API. 2015-09-26 TJ Saunders <tj@castaglia.org> * tests/api/configdb.c: Cover a little more of the Config API. 2015-09-26 TJ Saunders <tj@castaglia.org> * src/auth.c, tests/api/auth.c: Testing the handling of -1 UID/GIDs turned up a small bug, where the Auth API was not setting errno appropriately. 2015-09-26 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Test the cases where multiple FSes are inserted/removed. 2015-09-26 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Cover more of the FSIO API, too. 2015-09-26 TJ Saunders <tj@castaglia.org> * tests/api/trace.c: Make sure we test the handling of the "DEFAULT" trace channel, too. 2015-09-26 TJ Saunders <tj@castaglia.org> * src/trace.c: If the channel name is null, then it cannot be removed from the trace table of channels, can it? 2015-09-26 TJ Saunders <tj@castaglia.org> * src/trace.c, tests/api/stubs.c, tests/api/trace.c: Tickle a few more code paths in the Trace API. 2015-09-26 TJ Saunders <tj@castaglia.org> * src/log.c: Be more paranoid about handling of possible directories as log files, including the "/" case. 2015-09-26 TJ Saunders <tj@castaglia.org> * tests/api/trace.c: More Trace test coverage. 2015-09-26 TJ Saunders <tj@castaglia.org> * tests/api/data.c: Fix unit test broken in travis-ci environment. 2015-09-26 TJ Saunders <tj@castaglia.org> * include/data.h, src/data.c, tests/api/data.c: Attempt to write tests for pr_data_sendfile(), covering more of its code paths. 2015-09-26 TJ Saunders <tj@castaglia.org> * src/netio.c, tests/api/event.c, tests/api/netio.c: Finish implementing the NetIO unit tests. 2015-09-25 TJ Saunders <tj@castaglia.org> * tests/api/event.c: One more tweak for the Event API unit test coverage. 2015-09-25 TJ Saunders <tj@castaglia.org> * tests/api/event.c: More coverage of the Event API code paths. 2015-09-25 TJ Saunders <tj@castaglia.org> * tests/api/auth.c: Fix unit test failing in travis-ci environment. 2015-09-25 TJ Saunders <tj@castaglia.org> * config.h.in, configure, configure.in, include/fsio.h, src/fsio.c, tests/api/fsio.c: Finish fleshing out the FSIO API unit tests. This required adding a new pr_fsio_fsync() function (and its own test), for flushing data to disk for subsequent reading. 2015-09-25 TJ Saunders <tj@castaglia.org> * src/fsio.c, tests/api/fsio.c: More coverage for the FSIO API, please. 2015-09-25 TJ Saunders <tj@kiban.io> * tests/api/fsio.c, tests/api/trace.c: Quell compiler warnings, fix unit test failing in travis-ci environment. 2015-09-25 TJ Saunders <tj@kiban.io> * tests/api/fsio.c: Fix failing unit test. 2015-09-25 TJ Saunders <tj@kiban.io> * src/fsio.c, tests/api/fsio.c: Adding coverage for more functions in the FSIO API; still more to be done here. 2015-09-24 TJ Saunders <tj@kiban.io> * tests/api/parser.c: When testing the function for parsing files, load enough of a module's directive handling to test those paths, too. 2015-09-24 Castaglian <tj@kiban.io> * src/configdb.c, tests/api/configdb.c, tests/api/regexp.c: More test coverage, served up hot. 2015-09-24 Castaglian <tj@kiban.io> * src/parser.c, src/trace.c, tests/api/parser.c, tests/api/trace.c: Fix some of the Parser API tests, and try to cover more of the Trace API. 2015-09-24 Castaglian <tj@kiban.io> * tests/api/netaddr.c: Use 'www.google.com' as a well-known DNS name that has multiple IP addresses. 2015-09-24 Castaglian <tj@kiban.io> * src/parser.c, tests/api/netaddr.c, tests/api/parser.c: Filling in more unit tests here and there, tickling more code paths, extending coverage. 2015-09-24 Castaglian <tj@kiban.io> * tests/api/auth.c: Fix tests on travis-ci. 2015-09-24 Castaglian <tj@kiban.io> * include/modules.h, src/main.c, src/modules.c, tests/api/modules.c: Testing more of the Modules API. 2015-09-24 Castaglian <tj@kiban.io> * src/auth.c, tests/api/auth.c: More unit testing of the Auth API. Fixed one bug with the handling of the FL_AUTH_MODULE caching flag (yay unit tests!). 2015-09-24 Castaglian <tj@kiban.io> * src/pool.c, tests/api/parser.c, tests/api/pool.c: Extend test coverage of the Pool API. 2015-09-24 Castaglian <tj@kiban.io> * include/parser.h, modules/mod_auth_unix.c, modules/mod_core.c, src/main.c, src/parser.c, tests/api/parser.c: Fixing up compiler warnings. Fixed the API for parsing a single line of text so that it is actually _useful_ for callers outside of pr_parser_parse_file(). Added more unit tests for parsing. 2015-09-24 Castaglian <tj@kiban.io> * src/auth.c, tests/api/auth.c: Extend test coverage of the Auth API. 2015-09-24 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Properly test the eviction of expired fs.statcache entries. 2015-09-24 TJ Saunders <tj@castaglia.org> * src/fsio.c, tests/api/fsio.c, tests/api/tests.c: And yet more unit tests for the FSIO API. 2015-09-23 TJ Saunders <tj@castaglia.org> * tests/Makefile.in, tests/api/privs.c, tests/api/tests.c, tests/api/tests.h: Start working on unit tests for the Privs API directly. 2015-09-23 TJ Saunders <tj@castaglia.org> * tests/api/regexp.c: Flesh out more of the Regexp API unit tests. 2015-09-23 Castaglian <tj@kiban.io> * tests/api/data.c: The travis-ci environment yields slightly different (but still OK) errno values. 2015-09-23 Castaglian <tj@kiban.io> * include/configdb.h, src/data.c, tests/api/data.c, tests/api/stubs.c: Add some NULL checks, for e.g. unit tests. Flesh out more Data API unit tests. 2015-09-22 TJ Saunders <tj@kiban.io> * src/data.c, tests/api/data.c: Start working on unit tests for the Data API. 2015-09-22 TJ Saunders <tj@kiban.io> * README.md, tests/api/fsio.c: Tweak README. Fix unit test failing only in travis-ci. 2015-09-22 TJ Saunders <tj@kiban.io> * src/fsio.c, tests/api/fsio.c: Fleshing out more FSIO tests; more to come. 2015-09-22 TJ Saunders <tj@kiban.io> * tests/api/str.c: Fix failing test on this Yosemite MacOSX machine, due to not NUL-terminating the source buffer in a sstrcat test. 2015-09-22 TJ Saunders <tj@kiban.io> * src/pool.c: Quell compiler warnings about pointer arithmetic/casts; first seen on this version of Mac OSX (Yosemite). 2015-09-21 TJ Saunders <tj@castaglia.org> * README.md: Minor tweaks to README; no functional changes. 2015-09-21 TJ Saunders <tj@castaglia.org> * .travis.yml: Fix typo in travis-ci config file. 2015-09-21 TJ Saunders <tj@castaglia.org> * .travis.yml, src/inet.c, tests/api/configdb.c, tests/api/inet.c: Let's see/hope that these additions get us over the 50% mark for test coverage. 2015-09-20 TJ Saunders <tj@castaglia.org> * src/parser.c, src/scoreboard.c, tests/api/cmd.c, tests/api/event.c, tests/api/parser.c, tests/api/scoreboard.c, tests/api/trace.c: Working toward getting at least 50% unit test coverage. 2015-09-20 TJ Saunders <tj@castaglia.org> * src/netio.c, tests/api/netio.c, tests/api/timers.c: More unit tests, Cooky! 2015-09-20 TJ Saunders <tj@castaglia.org> * modules/mod_lang.c, tests/Makefile.in, tests/api/configdb.c, tests/api/encode.c, tests/api/parser.c, tests/api/tests.c, tests/api/tests.h: Adding more unit tests to increase the test coverage. 2015-09-20 TJ Saunders <tj@castaglia.org> * src/netio.c, tests/api/netio.c, tests/api/response.c: More work on the unit tests, trying to expand on the test coverage. Doing so found a few small bugs in the NetIO code. Yay Coveralls! 2015-09-20 TJ Saunders <tj@castaglia.org> * README.md: Add a badge for the Coveralls coverage status. 2015-09-20 TJ Saunders <tj@castaglia.org> * .travis.yml: Let's see how Coveralls does for us, shall we? 2015-09-20 TJ Saunders <tj@castaglia.org> * configure, configure.in: Support a 'coverage' option for the --enable-devel compile-time option, for enabling test coverage generation/reporting. 2015-09-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #154 from proftpd/ldap-libldap-tracing Enable more tracing of mod_ldap's operations by hooking into the LDAP… 2015-08-30 tjsaunders <tj@lyveminds.com> * doc/license.txt: Update license header years. 2015-08-30 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_ldap.html: Update the mod_ldap docs to actually match the code now, folding in the changes mentioned in README.LDAP. 2015-08-30 tjsaunders <tj@lyveminds.com> * contrib/mod_ldap.c: Make this directive handler name match the directive name, for consistency. 2015-08-26 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS for fix for Bug#4202. 2015-08-26 TJ Saunders <tj@castaglia.org> * : Merge pull request #152 from proftpd/facts-mlsd-crlf-bug4202 Bug#4202 - MLSD lines not properly terminated with CRLF. 2015-08-26 tjsaunders <tj@lyveminds.com> * : commit 62a4e24dcc37204168896ea35f379a1c0b952ff0 Author: tjsaunders <tj@lyveminds.com> Date: Thu Aug 20 13:59:55 2015 -0700 2015-08-20 tjsaunders <tj@lyveminds.com> * modules/mod_xfer.c: There are a few conditions under which we don't really need to log about failing to set the corking socket option. 2015-08-18 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS with mention of fix for Bug#4201. 2015-08-18 TJ Saunders <tj@castaglia.org> * : Merge pull request #150 from proftpd/sftp-scp-hiddenstores-cleanup-bug4201 Bug#4201 - HiddenStores temporary files not removed when exceeding qu… 2015-08-17 tjsaunders <tj@lyveminds.com> * contrib/mod_dnsbl/configure, contrib/mod_dnsbl/configure.in, contrib/mod_load/configure, contrib/mod_load/configure.in, contrib/mod_sftp/configure, contrib/mod_sftp/configure.in, contrib/mod_snmp/configure, contrib/mod_snmp/configure.in, contrib/mod_wrap2/configure, contrib/mod_wrap2/configure.in: Reorder the header/function checks in the module configure scripts, so that they happen after processing --with-includes and --with-libraries command-line options. While this doesn't fix any current issue, it does set a better example for future modules; this was a problem for the e.g. mod_proxy configure script. 2015-08-16 tjsaunders <tj@lyveminds.com> * .gitattributes: Add manual overrides, to stop mis-representing the language used for ProFTPD and its modules. 2015-08-16 tjsaunders <tj@lyveminds.com> * src/main.c: Add note to future self, about handling DisplayConnect properly for denied connections. 2015-08-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #151 from proftpd/extlog-speedup ExtendedLog speedup by avoiding redundant strlen(3) calls 2015-08-16 tjsaunders <tj@lyveminds.com> * lib/sstrncpy.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Speed up ExtendedLog writing by removing redundant strlen(3) calls on the logged string, and instead simply tracking the return values from snprintf et al. Note that to do this, the sstrncpy() semantics needed to be consistent, which means NOT using strcpy(3); we want sstrncpy() to return the number of bytes actually copied, not what WOULD have been copied. 2015-08-16 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fixed some regressions with handling of the DELE command's argument, and with mod_tls tagging the PASS command as a SEC logging class (when it should not). 2015-08-16 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Checking in regression test for Bug#4199. 2015-08-15 tjsaunders <tj@lyveminds.com> * configure, configure.in: Update the -pthread/OpenSSL check, to catch regressions of Bug#3975 on e.g FreeBSD platforms, where the `openssl version` command doesn't emit the expected flags. 2015-08-15 tjsaunders <tj@lyveminds.com> * : commit 006b1f73db9421ca653c5b545765ee6b6893ff6d Author: tjsaunders <tj@lyveminds.com> Date: Sat Aug 15 12:40:35 2015 -0700 2015-08-15 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/scp.c: Make sure that we delete the HiddenStores file on SCP upload when either write(2) or close(2) fails; we were handling close(2) failures, but not write(2) failures properly. 2015-08-15 tjsaunders <tj@lyveminds.com> * : commit d99edbb036cba1269352e66f6c89b26c502b58dd Author: tjsaunders <tj@lyveminds.com> Date: Fri Aug 14 10:47:04 2015 -0700 2015-08-13 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/interop.c, contrib/mod_sftp/interop.h, contrib/mod_sftp/mod_sftp.c: Fix regression for SSH2 logins, introduced by the changes for handling the optional 'comments' field in the initial version exchange. The initial version (exactly as sent) need to be used in the session ID/hash; the previous changes were trimming off the optional comment field, thus causing server and client to calculate different session IDs. 2015-08-13 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/scp.c: Bug#4201 - HiddenStores temporary files not removed when exceeding quota using SCP. Make sure to clean up the HiddenStores temporary file when there was an error, either when writing OR when closing the HiddenStores file (as when quota is exceeded). 2015-08-13 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/kex.c: Remove some unnecessary casts; fix a minor memory leak on error conditions. 2015-08-12 tjsaunders <tj@lyveminds.com> * src/main.c, src/signals.c: Clear out the EINTR errno value in a few more places. 2015-08-12 tjsaunders <tj@lyveminds.com> * src/main.c: Make sure to clear out any cached errno, too. 2015-08-12 tjsaunders <tj@lyveminds.com> * modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Checkpointing work on investigating a possible regression with regard to MLSD line formatting, i.e. missing proper CRLF terminations. 2015-08-12 tjsaunders <tj@lyveminds.com> * src/main.c: Make sure to clear any possibly-cached errno value in the main select() loop. 2015-08-10 tjsaunders <tj@lyveminds.com> * src/timers.c: Style nit; no functional change. 2015-08-10 tjsaunders <tj@lyveminds.com> * src/trace.c, tests/api/trace.c: Some tweaks to the Trace API, trying to reduce redundancy. 2015-08-10 tjsaunders <tj@lyveminds.com> * src/parser.c, tests/api/etc/str/utf8-space.txt, tests/api/str.c: If we fail to parse some configuration directives, check for any non-ASCII characters in the directive name. This recently tripped me up with diagnosing a broken system; now check for, and log, such things. 2015-08-10 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Update integration test, broken by change for Bug#3990. 2015-08-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #149 from proftpd/core-ptr-cast Address some pointer cast alignment issues by defining the cmd_rec.ar… 2015-08-10 tjsaunders <tj@lyveminds.com> * modules/mod_cap.c: See what happens when you change your mind about variable names partway through? Sigh. 2015-08-10 tjsaunders <tj@lyveminds.com> * modules/mod_core.c: Quell a few more compiler warnings about pointer casts. 2015-08-10 tjsaunders <tj@lyveminds.com> * lib/tpl.c: Remove unused variables. 2015-08-10 tjsaunders <tj@lyveminds.com> * contrib/mod_sql_passwd.c, modules/mod_cap.c: Fixing some build issues/warnings. 2015-08-10 tjsaunders <tj@lyveminds.com> * src/main.c: Quell another compiler warning about pointer casts. 2015-08-10 tjsaunders <tj@lyveminds.com> * contrib/mod_copy.c, contrib/mod_deflate.c, contrib/mod_exec.c, contrib/mod_ifsession.c, contrib/mod_ifversion.c, contrib/mod_ldap.c, contrib/mod_log_forensic.c, contrib/mod_quotatab.c, contrib/mod_quotatab_sql.c, contrib/mod_radius.c, contrib/mod_readme.c, contrib/mod_rewrite.c, contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, contrib/mod_sftp_sql.c, contrib/mod_shaper.c, contrib/mod_site_misc.c, contrib/mod_snmp/mod_snmp.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2_sql.c, include/dirtree.h, include/proftpd.h, lib/json.c, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_pam.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_dso.c, modules/mod_facts.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/cmd.c, src/data.c, src/dirtree.c, src/main.c, src/parser.c, tests/t/lib/ProFTPD/Tests/Config/Order.pm: Address some pointer cast alignment issues by defining the cmd_rec.argv member to be "void **", rather than "char **". Void pointers are guaranteed to be large enough to hold pointers to anything, where as char pointers are not. And we sometimes stash non-char data in the cmd_rec.argv area. This looks like a fair amount of code churn; mostly it's addressing compiler warnings by providing explicit casts to char * in most places (e.g. logging) where the variadic function cannot easily tell the type. 2015-08-09 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/kex.c: For some reason, the ordering in which the logging of the NEWKEYS command makes a difference. I suspect it's the order/amount of memory read out of the pool. By logging NEWKEYS after setting the session keys, some rather strange behaviors are alleviated. 2015-08-09 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/auth.c: Fix possible segfault (due to null pointer) when the SSH2 authentication method succeeds, but subsequent login fails. 2015-08-08 TJ Saunders <tj@castaglia.org> * tests/api/str.c: Slightly better demonstration of pr_str_get_word()'s handling of quoted strings. 2015-08-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #148 from proftpd/tls-shutdown-buffering When shutting down the TLS session, we need to send a 'close_notify' … 2015-08-07 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS for fix for Bug#4198. 2015-08-07 TJ Saunders <tj@castaglia.org> * : Merge pull request #147 from proftpd/facts-cdir-bug4198 Bug#4198 - MLSD/MLST fact type "cdir" is incorrectly used for the current working directory. 2015-08-06 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, doc/contrib/mod_tls.html: Provide an environment variable for the requested SNI, if present. 2015-08-06 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, doc/contrib/mod_tls.html: Provide an environment variable for the requested SNI, if present. 2015-08-06 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Checking in the accompanying regression tests for Bug#4198. 2015-08-06 tjsaunders <tj@lyveminds.com> * modules/mod_facts.c: Bug#4198 - MLSD/MLST fact type "cdir" is incorrectly used for the current working directory. 2015-08-05 tjsaunders <tj@lyveminds.com> * modules/mod_xfer.c: Better handling of errno values when adjusting process priorities. 2015-08-05 tjsaunders <tj@lyveminds.com> * tests/api/rlimit.c: Missed a couple of RLimit test cases needing the conditional check. 2015-08-05 tjsaunders <tj@lyveminds.com> * contrib/mod_rewrite.c, contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c: Quell more compiler warnings about shadowed global variables. 2015-08-05 tjsaunders <tj@lyveminds.com> * tests/api/filter.c: Add some additional assertions to quell compiler warnings about unused variables (and make the tests better). 2015-08-05 tjsaunders <tj@lyveminds.com> * tests/api/rlimit.c: Fixing up platform-sensitive tests for e.g. travis-ci builds. 2015-08-05 tjsaunders <tj@lyveminds.com> * tests/api/netio.c: Removing unused variable. 2015-08-05 tjsaunders <tj@lyveminds.com> * contrib/mod_sql_postgres.c: Quell compiler warning about shadowed global variable; stylistic nits. No functional change. 2015-08-05 tjsaunders <tj@lyveminds.com> * contrib/mod_deflate.c: Forgot to update mod_deflate for the changed NetIO API signature change. 2015-08-05 tjsaunders <tj@lyveminds.com> * src/scoreboard.c: Quell compiler warning about unreached function call. 2015-08-05 tjsaunders <tj@lyveminds.com> * tests/Makefile.in, tests/api/env.c, tests/api/help.c, tests/api/rlimit.c, tests/api/tests.c, tests/api/tests.h: Adding API tests for the RLimit API. Adding forgotten Help API tests. 2015-08-05 tjsaunders <tj@lyveminds.com> * src/help.c: Fix the terminating condition for adding help items; the previous end-of-loop condition was too fragile, and not accurate. 2015-08-05 tjsaunders <tj@lyveminds.com> * src/help.c, src/response.c, tests/Makefile.in, tests/api/response.c, tests/api/tests.c, tests/api/tests.h: Added some tests for the Help API, which sussed out a few very minor issues. 2015-08-04 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix a few nits in the PSK handling; no functional change. 2015-08-04 tjsaunders <tj@lyveminds.com> * src/dirtree.c: When checking limits, make sure that we actually have an authenticated user/ group before checking for per-user/per-group limits. With modules such as mod_proxy, this may not always be true. 2015-08-03 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/mod_sftp.c: Make the ban messages emitted to SSH2 clients a little more descriptive. 2015-08-03 tjsaunders <tj@lyveminds.com> * src/log.c: If the DebugLevel directive is used to set the debug level to anything higher than 0, then automatically assume that the SyslogLevel is DEBUG, not NOTICE. This helps in debugging configurations. 2015-08-03 tjsaunders <tj@lyveminds.com> * src/trace.c: Turns out that the trace logging code needs the same over-long log line handling fixes as the main logging code. 2015-08-03 tjsaunders <tj@lyveminds.com> * src/log.c: Better handling of over-long log lines. 2015-08-03 tjsaunders <tj@lyveminds.com> * src/log.c: Increase (and fix the handling of) the max log line length. 2015-08-03 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_tls.html: Some minor updates to the mod_tls docs. 2015-08-02 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: When cleaning up OpenSSL-related code, mod_tls needs to know that mod_proxy also uses OpenSSL (and thus should skip cleanup if that module is in use). 2015-07-31 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix logging of selected ALPN. 2015-07-30 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, include/netio.h, src/netio.c: Allow modules registering NetIO objects to customise the registered NetIO owner name, if they wish. 2015-07-28 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fixed a few nits in the cert-checking routine. 2015-07-28 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: We retrieved the data connection SSL object too early. 2015-07-28 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix some timing-related trace logging. 2015-07-28 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_tls.html: Mention, in the TLSSessionCache description, that mod_tls aggressively prunes its session cache of expired sessions by flushing the cache on each session exit. 2015-07-28 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Handle the edge cases where TLS read/write returns negative values; we don't want that to artificially affect the total raw IO values. 2015-07-28 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS with fix for Bug#4097. 2015-07-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #45 from proftpd/sftp-small-rsa-hostkey-rekeying-bug4097 Bug#4097 - SSH rekey fails when using RSA hostkey smaller than 2048 bits. 2015-07-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #145 from proftpd/ascii-oob-read-bug4195 Bug#4195 - Handle empty string inputs into ASCII CRLF translation rou… 2015-07-26 tjsaunders <tj@lyveminds.com> * src/ascii.c: Bug#4195 - Handle empty string inputs into ASCII CRLF translation routine. 2015-07-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #144 from proftpd/fsio-dircat-oob-read-bug4194 Bug#4194: Add more checks for empty paths in pr_fs_dircat(). 2015-07-25 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix broken build by including the necessary OpenSSL header. 2015-07-25 tjsaunders <tj@lyveminds.com> * src/fsio.c, tests/api/fsio.c: If either of the arguments to pr_fs_dircat() are empty strings, be consistent and append a "/" character, just as is done when BOTH arguments are empty strings. 2015-07-25 tjsaunders <tj@lyveminds.com> * src/fsio.c, tests/api/fsio.c: Bug#4194: Add more checks for empty paths in pr_fs_dircat(). 2015-07-25 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Better handling, when logging OpenSSL diagnostics, of the protocol record callbacks. 2015-07-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #143 from proftpd/tests-oob-read-bug4193 Bug#4193 - Out of bounds read in tests/api/str.c. 2015-07-25 tjsaunders <tj@lyveminds.com> * tests/api/ascii.c: Fix previous stupidity. 2015-07-25 tjsaunders <tj@lyveminds.com> * tests/api/ascii.c, tests/api/cmd.c: Quell some compiler warnings in the unit tests, spotted while still trying to figure out why travis-ci tests are failing (but they pass locally). 2015-07-25 tjsaunders <tj@lyveminds.com> * tests/api/ascii.c: Triaging a failing unit test in travis-ci. 2015-07-25 tjsaunders <tj@lyveminds.com> * tests/api/str.c: Bug#4193 - Out of bounds read in tests/api/str.c. 2015-07-25 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Tweaking/polishing the OpenSSL msg/info callbacks. 2015-07-25 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_ban.html: Remove duplicate/extraneous slash in example config. 2015-07-25 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_ban.html: Minor tweak. 2015-07-24 tjsaunders <tj@lyveminds.com> * : commit 4776466b62889dee9a67171c6dbd317822191595 Author: tjsaunders <tj@lyveminds.com> Date: Fri Jul 24 13:41:12 2015 -0700 2015-07-24 tjsaunders <tj@lyveminds.com> * modules/mod_log.c: Require a non-zero length LogFormat name. 2015-07-24 tjsaunders <tj@lyveminds.com> * modules/mod_log.c: Slightly better handling of using the default LogFormat, without necessarily blocking configs that want to use/override the "default" nickname themselves. 2015-07-24 tjsaunders <tj@lyveminds.com> * modules/mod_log.c: Fix the registration of the "default" LogFormat. 2015-07-24 tjsaunders <tj@lyveminds.com> * doc/howto/TLS.html: Adding TLS FAQ, from forums, about TLSVerifyDepth. 2015-07-23 tjsaunders <tj@lyveminds.com> * modules/mod_core.c: Better string handling, to make localization easier. 2015-07-23 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix the handling of OpenSSL's SSL_SESS_CACHE_OFF value (which is 0x0, and thus not usable for the bit-checking mod_tls was doing). Enhance the trace logging around TLS handshaking. 2015-07-23 tjsaunders <tj@lyveminds.com> * src/inet.c: Be a little more paranoid in pr_inet_close(), and only try to destroy a non-NULL pool pointer. (Although destroy_pool() does a NULL check, so this is more for clarity than anything else.) 2015-07-22 tjsaunders <tj@lyveminds.com> * include/netio.h, src/netio.c: Include the direction/mode of the stream in the NetIO trace messages. 2015-07-22 tjsaunders <tj@lyveminds.com> * modules/mod_core.c: Tweaks to the handling of HOST commands in relation to FTPS. Stylistic nits. 2015-07-22 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, include/cmd.h, src/cmd.c: Add missing PR_CMD_HOST_ID value, and use it in e.g. mod_tls, to allow the HOST command before AUTH is used. 2015-07-22 tjsaunders <tj@lyveminds.com> * src/netio.c: Add trace logging of which custom (or not) NetIO is being used for the network operations. 2015-07-21 tjsaunders <tj@lyveminds.com> * src/pool.c: Allow unregistering of any/all cleanups by handling a NULL callback value. 2015-07-21 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Quell some compiler warnings, and propagate errno appropriately in some cases. 2015-07-20 tjsaunders <tj@lyveminds.com> * src/response.c: Add some trace logging for when the Response API is blocked, for debugging. 2015-07-20 tjsaunders <tj@lyveminds.com> * include/pool.h, src/pool.c, tests/api/array.c: Create an array_cat2() function which provides a nice return value; array_cat() then just becomes a void wrapper around array_cat2(). 2015-07-19 TJ Saunders <tj@castaglia.org> * src/netaddr.c: If the caller wants to know all of the addresses resolved via pr_netaddr_get_addr(), then actually walk all of the struct addrinfo values provided by getaddrinfo(3) and provision the caller-provided list. 2015-07-19 TJ Saunders <tj@castaglia.org> * src/table.c: Stylistic nits; no functional changes. 2015-07-19 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_sftp.html: Minor tweaks/updates to the mod_sftp docs. 2015-07-18 TJ Saunders <tj@castaglia.org> * doc/modules/mod_core.html: Typos. 2015-07-18 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_snmp.html: Update the mod_snmp docs as to where the most recent code for mod_snmp can be found. 2015-07-18 TJ Saunders <tj@castaglia.org> * include/netaddr.h, src/ftpdctl.c, src/netaddr.c, tests/api/netaddr.c: Add new Netaddr API functions for clearing specific cached IP addresses, DNS names, as opposed to entire caches. 2015-07-17 tjsaunders <tj@lyveminds.com> * doc/modules/mod_auth_unix.html: Add mod_auth_unix FAQ about `passwd -d' and password-less logins. 2015-07-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/mod_sftp.c: Style nit; no functional change. 2015-07-17 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/kex.c: Add some trace logging into the function which determines the DH size to request, for debugging. 2015-07-17 tjsaunders <tj@lyveminds.com> * : commit aabf243ce6b52e6817509922d4889dd7e6cd63d4 Author: tjsaunders <tj@lyveminds.com> Date: Fri Jul 17 10:36:08 2015 -0700 2015-07-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #142 from proftpd/mysql-utf8-bug4191 Bug#4191 - Use "utf8mb4" for MySQL, not just "utf8", if the version of 2015-07-16 tjsaunders <tj@lyveminds.com> * include/log.h, include/options.h, src/xferlog.c: Make the default mode for the TransferLog be a PR_TUNABLE option. 2015-07-15 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_mysql.c: Bug#4191 - Use "utf8mb4" for MySQL, not just "utf8", if the version of MySQL is new enough, for UTF8 encodings. 2015-07-11 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_tls.c: I was going to provide configuration directives, for mod_tls and mod_sftp, to configure the path to the OpenSSL .cnf file that should be used. Due to the initialization timing, though, this is a path to do via configuration directives. Instead, I will simply document the use of the SetEnv directive, and setting the OPENSSL_CONF environment variable, in conjunction with adding calls to OPENSSL_config(3) in these respective modules. 2015-07-09 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/crypto.c, contrib/mod_tls.c: Use the OpenSSL config file; it's probably used by the configured ENGINE. 2015-07-07 TJ Saunders <tj@castaglia.org> * configure, configure.in: Adding a few more compiler warnings, when --enable-devel is used. 2015-07-07 TJ Saunders <tj@castaglia.org> * modules/mod_auth_pam.c: Finally clean up compiler warnings which had been bugging me for quite a while. 2015-07-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Quell some compiler warnings. 2015-07-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kex.c: When computing the size of the DH needed, we also need to pay attention to the negotiated cipher block sizes, not just the cipher key lengths. 2015-07-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kex.c: Remove now-unused macro value. 2015-07-07 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_sftp_sql.html: Remove now-unused keywords. 2015-07-07 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Minor tweaks when testing out some use cases. 2015-07-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keystore.c: Fix the trace log message when handling SFTPAuthorizedUserKeys to properly include the store type. 2015-07-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/service.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: When constructing the cmd_recs, do it properly, so that ExtendedLog entries, e.g. for the %r variable, log the request properly. The cmd_recs allocated did not set the correct cmd_rec.argc value. 2015-07-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp_sql.c: Remove extraneous (and misleading) trace logging. 2015-07-02 TJ Saunders <tj@castaglia.org> * src/dirtree.c: Found a place where we should have been using "_bind_", not just "_bind". 2015-07-01 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: More testsuite help when writing out subsections of e.g. <IfModule> config sections. 2015-07-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #141 from proftpd/core-class-add-note Add a function for attaching notes to a class, e.g. from a config dir… 2015-07-01 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kex.c: Always make sure we're using this kex's pool, not the overall Kex API pool, to prevent memory leaks. 2015-06-30 tjsaunders <tj@lyveminds.com> * : commit 98541b4a198b3f49721bd8a7d6d1894e52981623 Author: tjsaunders <tj@lyveminds.com> Date: Tue Jun 30 10:06:54 2015 -0700 2015-06-30 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/mod_sftp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Be more defensive/picky about the client version string handling from connecting SSH2 clients. 2015-06-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Impose a limit of 512K on the size of a single SFTP packet. For comparison, OpenSSH imposes a 256K limit. 2015-06-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Impose a limit (much higher than ever expected) on the number of EXTENDED attributes that we'll read from an SFTP client. 2015-06-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Be more consistent about the handling of errno values, especially across function calls. 2015-06-29 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES: Update release notes to mention SFTP hardlink extension support. 2015-06-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #140 from proftpd/sftp-hardlink-extension Support the SFTP "hardlink@openssh.com" extension. 2015-06-29 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES: Update release notes for LINK_COUNT SFTP STAT support. 2015-06-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #139 from proftpd/sftp-hardlink-stat-attr Support the SFTP STAT link-count attribute if clients are using a new… 2015-06-26 TJ Saunders <tj@castaglia.org> * configure, configure.in: More tweaks to the module build summary display, to properly display shared modules. 2015-06-26 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update NEWS, release notes for Bug#4153. 2015-06-26 TJ Saunders <tj@castaglia.org> * : Merge pull request #137 from proftpd/sftp-multi-auth-bug4153 Bug#4153 - Support requiring multiple SSH authentication methods 2015-06-26 tjsaunders <tj@lyveminds.com> * : commit 250ec7f47628c1eb0b518b1311b709860c78ba0e Author: tjsaunders <tj@lyveminds.com> Date: Fri Jun 26 13:04:34 2015 -0700 2015-06-26 TJ Saunders <tj@castaglia.org> * : Merge pull request #138 from proftpd/tls-protocol-exclusion-bug4189 Bug#4189 - Support protocol exclusion via TLSProtocol directive. 2015-06-25 tjsaunders <tj@lyveminds.com> * : commit d77feab0d434db2273bc16074f75106646a17d90 Author: tjsaunders <tj@lyveminds.com> Date: Thu Jun 25 15:28:11 2015 -0700 2015-06-25 tjsaunders <tj@lyveminds.com> * : commit 4372ae9463913ca03ba24b6c15dd590699a5989d Author: tjsaunders <tj@lyveminds.com> Date: Thu Jun 25 15:26:52 2015 -0700 2015-06-25 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/mod_sftp.c: Guard against auth chains which are unsupportable, i.e. chains that have "password" or "hostbased" appearing multiple times. 2015-06-25 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/auth-kbdint.c: Just as we require different publickey authentications, we now require different keyboard-interactive driver authentications in auth chains. 2015-06-24 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.h: Found another place to use auth "chain" instead of "list". 2015-06-24 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c, contrib/mod_sftp/mod_sftp.c: Use "auth chain" terminology more consistently throughout the code. 2015-06-24 tjsaunders <tj@lyveminds.com> * .gitignore: Ignore a few more file extensions. 2015-06-24 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_sftp.html: Update mod_sftp SFTPAuthMethods description for new auth chain syntax. 2015-06-24 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/mod_sftp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Implemented checking of the configured auth chains at startup, to catch chains that use a method (e.g. "hostbased") that cannot be supported (e.g. no SFTPAuthorizedHostKeys configured). Implemented restriction that publickey authentication requests must use different keys; duplicate keys will be rejected. This supports authentication chains such as "publickey+publickey". 2015-06-24 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/mod_sftp.c: Use the term "auth chain" rather than "auth list", as "chain" is, in my mind, more accurate. 2015-06-24 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c: Fix the handling of the next authentication methods in the chain. 2015-06-23 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c, contrib/mod_sftp/mod_sftp.c: Catch unknown/unsupported authentication methods properly, and report them properly, too. 2015-06-23 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c: Catch other misconfigurations such as double '+' characters in an SFTPAuthMethods list. 2015-06-23 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c: Fix the check used for detecting trailing '+' characters in a SFTPAuthMethods list. 2015-06-23 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/kbdint.h, contrib/mod_sftp/mod_sftp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Checking in the bulk of the work needed for Bug#4153. There is still a fair amount of testing to be done, but the initial tests are looking good. 2015-06-08 TJ Saunders <tj@castaglia.org> * doc/modules/mod_auth.html, modules/mod_auth.c, src/regexp.c, tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm: Make it possible to use the AnonRejectPasswords directive to require email-like anonymous passwords. 2015-06-08 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4139. 2015-06-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #134 from proftpd/auth-allow-empty-password-bug4139 Bug#4139 - Support rejecting empty passwords. 2015-06-08 TJ Saunders <tj@castaglia.org> * contrib/mod_ban.c, doc/contrib/mod_ban.html: Document the banning of hosts using empty passwords. 2015-06-08 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, doc/modules/mod_auth.html, modules/mod_auth.c, tests/t/lib/ProFTPD/Tests/Logins.pm: Add integration tests and documentation. 2015-06-08 TJ Saunders <tj@castaglia.org> * contrib/mod_ban.c, contrib/mod_sftp/auth-password.c, modules/mod_auth.c: Bug#4139 - Support rejecting empty passwords. 2015-06-08 TJ Saunders <tj@castaglia.org> * NEWS: Updating NEWS for Bug#4151. 2015-06-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #132 from proftpd/data-ascii-conversion-bug4151 Bug#4151 - FTP ASCII mode conversion algorithm is painfully slow. 2015-06-08 TJ Saunders <tj@castaglia.org> * Make.rules.in, include/ascii.h, include/data.h, src/ascii.c, src/data.c, tests/Makefile.in, tests/api/ascii.c, tests/api/data.c, tests/api/tests.c, tests/api/tests.h, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, utils/utils.h: Refactor the ASCII CRLF handling code into its own API, unentangling it from the implementation of the data transfers. This makes it much easier to unit test. Added those unit tests, including a regression test for uploading a file as ASCII. 2015-06-05 TJ Saunders <tj@castaglia.org> * : Merge pull request #133 from maytechnet/master Fix small copy/paste leftower 2015-06-04 TJ Saunders <tj@castaglia.org> * include/data.h, src/data.c, tests/api/data.c: Make the FTP ASCII translation function symbols publicly visible, for accessing directly for unit testing. Removed misleading comment; history is what git is for. Moved potentially expensive pr_signals_handle() outside of the byte-copying loop; we will handle any potential SIGSEGV signals after the loop. 2015-06-04 TJ Saunders <tj@castaglia.org> * tests/api/data.c: Not yet ready for these tests to be run. 2015-06-04 TJ Saunders <tj@castaglia.org> * tests/Makefile.in, tests/api/data.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Start working on unit tests for the Data API. This adds the build glue to do so; now to fill in the testcases. 2015-06-03 TJ Saunders <tj@castaglia.org> * src/data.c: Bug#4151 - FTP ASCII mode conversion algorithm is painfully slow. 2015-06-03 TJ Saunders <tj@castaglia.org> * NEWS: Updated NEWS for fix for Bug#4188. 2015-06-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #131 from proftpd/geoip-multi-expr-bug4188 Bug#4188 - Support filtering based on country code and regional code in 2015-06-03 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4167. 2015-06-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #98 from proftpd/core-crlf-in-path-bug4167 Bug#4167 - CR/LF characters are not supported in filenames. 2015-06-03 TJ Saunders <tj@castaglia.org> * src/main.c: Typo in comment; no functional change. 2015-06-03 TJ Saunders <tj@castaglia.org> * : commit 621000469e1f0b11486d2188f50eee87a33bb280 Author: TJ Saunders <tj@castaglia.org> Date: Wed Jun 3 22:30:51 2015 -0700 2015-06-02 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_geoip.html: Update the mod_geoip documentation with FAQ describing the use case of Bug#4188. 2015-06-02 TJ Saunders <tj@castaglia.org> * contrib/mod_geoip.c: Bug#4188 - Support filtering based on country code and regional code in mod_geoip. 2015-05-31 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/interop.c: Per this forums post, at least one SSH2 client identifying itself as J2SSH does not support/handle rekey requests properly: https://forums.proftpd.org/smf/index.php/topic,11757.0.html Thus add it to the builtin interop lists as a non-rekeying client. 2015-05-31 TJ Saunders <tj@castaglia.org> * NEWS: Updated NEWS for fix of Bug#4187. 2015-05-31 TJ Saunders <tj@castaglia.org> * : Merge pull request #129 from proftpd/geoip-table-loading-bug4187 Bug#4187 - mod_geoip does not load all of the GeoIPTables properly. 2015-05-30 TJ Saunders <tj@castaglia.org> * contrib/mod_geoip.c: Bug#4187 - mod_geoip does not load all of the GeoIPTables properly. 2015-05-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #128 from proftpd/tls-adaptive-buffering Implement adaptive tuning of the TLS record/buffer size for data tran… 2015-05-27 TJ Saunders <tj@castaglia.org> * doc/modules/mod_dso.html: Adding mod_dso FAQ, from the online forums. 2015-05-27 tjsaunders <tj@lyveminds.com> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Update files for rc2 status. 2015-05-27 TJ Saunders <tj@castaglia.org> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Warming up for a release of 1.3.6rc1. 2015-05-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #80 from proftpd/core-schmod-cifs-bug4134 Bug#4134 - Unable to create folders using FTP on a CIFS mounted share: "... 2015-05-25 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, doc/contrib/mod_sftp.html: Update mod_sftp to avoid weak DH groups, per Bug#4184. 2015-05-22 tjsaunders <tj@lyveminds.com> * modules/mod_auth.c: Attempt to address Debian Bug#717235: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=717235 2015-05-22 tjsaunders <tj@lyveminds.com> * configure, configure.in: Fix the build summary, so that it displays modules, like mod_sftp or mod_snmp, which have their own module directories. Also skip the module listing if there are no static (or no shared) modules to list in the summary. 2015-05-22 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES: Mention the new ServerAlias directive in the release notes, too. 2015-05-22 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES, doc/modules/mod_core.html: Update NEWS, release notes for HOST support. Add docs for the new ServerAlias directive. 2015-05-22 TJ Saunders <tj@castaglia.org> * : Merge pull request #126 from proftpd/core-host-cmd-bug3289 Bug#3289 - Support the HOST command 2015-05-22 TJ Saunders <tj@castaglia.org> * doc/howto/TLS.html: Tweaks to the TLS FAQ for FZ. 2015-05-21 TJ Saunders <tj@castaglia.org> * doc/howto/TLS.html: Add FAQs about FTPS connection issues with FileZilla, lftp to the TLS howto. 2015-05-21 TJ Saunders <tj@castaglia.org> * : Merge pull request #125 from proftpd/tls-weak-dh-bug4184 Bug#4184 - Remove support for "weak" Diffie-Hellman groups. 2015-05-12 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Nit. 2015-05-12 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Adding regression test showing successful login to name-based vhost. 2015-05-04 TJ Saunders <tj@castaglia.org> * : commit 8e6f14aa2f6141b632b48e1b063dde688cbeec62 Merge: 3b93982 64f28f1 Author: TJ Saunders <tj@castaglia.org> Date: Mon May 4 19:34:33 2015 -0700 2015-05-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #124 from proftpd/tls-ssl-buffer-sizing Tweak the SSL write buffer/record sizes during TLS handshakes, to try to 2015-04-30 TJ Saunders <tj@castaglia.org> * : Merge pull request #123 from proftpd/tls-npn-alpn Support/use the ALPN/NPN TLS extensions in mod_tls 2015-04-30 tjsaunders <tj@lyveminds.com> * config.h.in, configure, configure.in, contrib/mod_tls.c: Add support for the NPN and ALPN extensions to mod_tls, to support any FTPS clients which might use these as heuristics for determining when to use TLS False Start (e.g. Chrome/Firefox). 2015-04-29 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Tweaks. 2015-04-29 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Stylistic nits, compiler warnings; no functional change. 2015-04-29 tjsaunders <tj@lyveminds.com> * src/bindings.c: Fix null pointer derefence encountered during regression testing the HOST command. 2015-04-29 tjsaunders <tj@lyveminds.com> * doc/howto/Tracing.html, src/modules.c, src/trace.c: Add a 'module' trace channel, for tracing the Module API. 2015-04-29 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, modules/mod_core.c: Implement handling of the TLS SNI extension, so that we can then double-check that (if used) against the provided HOST command (and vice versa). 2015-04-29 tjsaunders <tj@lyveminds.com> * include/bindings.h, src/bindings.c: Fix bad merge. 2015-04-29 tjsaunders <tj@lyveminds.com> * : commit 2bde9ba89eb007778a940f1eae60f2fd22102195 Author: tjsaunders <tj@lyveminds.com> Date: Wed Apr 29 14:46:09 2015 -0700 2015-04-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #122 from proftpd/tls-session-reuse-bug4178 Bug#4178: When accepting a TLS connection for data transfers, disable th... 2015-04-28 tjsaunders <tj@lyveminds.com> * src/data.c: Fix segfault due to null pointer dereference. 2015-04-28 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Use the SSL options to work around a Safari ECDSA bug. 2015-04-27 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Enable SSL session cache flushing on session exit, to keep that cache as groomed as possible. 2015-04-27 TJ Saunders <tj@castaglia.org> * .gitignore: Ignore a few more files/paths. 2015-04-27 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Style nits; no functional change. 2015-04-26 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Refactor the random PSK generation code into a single helper function, for good style/DRY princicple. 2015-04-26 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix the handling of the TLSECDHCurve directive. 2015-04-26 TJ Saunders <tj@castaglia.org> * : Merge pull request #121 from proftpd/tls-psk-support Bug#4174 - Support for TLS-PSK (pre-shared keys) 2015-04-26 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES, doc/contrib/mod_tls.html: Adding documentation for the new TLSPreSharedKey directive. 2015-04-26 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Finish implementing TLS-PSK support. 2015-04-25 tjsaunders <tj@lyveminds.com> * : commit 569ebe9163e7d5cedcbf54215ced625a77aeab6b Merge: 9f1078f 46c8a0c Author: TJ Saunders <tj@castaglia.org> Date: Sat Apr 25 19:30:49 2015 -0700 2015-04-25 tjsaunders <tj@lyveminds.com> * doc/contrib/mod_tls.html: Improve the TLSECDHCurve docs by including the openssl command to use, to see the full list of supported curves. 2015-04-25 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Make sure that mod_tls compiles properly when using OpenSSL-1.0.2 or later. 2015-04-25 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c, doc/contrib/mod_tls.html: Better error reporting if the configured curve name isn't known. Add TLSOption for disabling auto-ECDH negotiation behavior, as a future-proof safety switch. 2015-04-25 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html: Add a new TLSECDHCurve directive, for specifying the curve to use for ECDHE ciphers. 2015-04-25 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES: Update NEWS, release notes for Bug#3125. 2015-04-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #119 from proftpd/facl-macosx-bug3125 Bug#3125 - Support for Mac OS X implementation of POSIX ACLs. 2015-04-25 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Only log a trace message about adjusting the DH parameter length if we indeed to adjust/change the length. 2015-04-24 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Properly handle multiple TLSDHParamFiles, if configured. Adjust the DH parameter length to be the size of the RSA/DSA private key, for greater strength, rather than using the given length (which will only ever be 512 or 1024 bits, even for 2048-bit server certs/keys). If OpenSSL-1.0.2 or later are used, automatically negotiate the best EC, rather than always falling back to the prime256v1 group. 2015-04-22 TJ Saunders <tj@castaglia.org> * src/privs.c: Change the logging priority based on errno consistently. 2015-04-20 TJ Saunders <tj@castaglia.org> * : Merge pull request #118 from proftpd/core-stash-remove-symbol Add symbol type-specific remove functions, for use by modules (e.g. mod_... 2015-04-19 TJ Saunders <tj@castaglia.org> * doc/howto/FXP.html, doc/modules/mod_core.html: Update references in FXP howto to point to local mod_core docs, and add the missing descriptions to the mod_core docs. 2015-04-19 TJ Saunders <tj@castaglia.org> * doc/howto/Directory.html, doc/modules/mod_core.html: Add description of AllowOverride directive, and fix up the Directory howto to point to that description. 2015-04-19 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Fix mod_sftp+mod_rewrite tests for Mac OSX. 2015-04-16 TJ Saunders <tj@castaglia.org> * doc/howto/LogMessages.html: Fix nits in LogMessages doc. 2015-04-15 tjsaunders <tj@lyveminds.com> * README.md: Add links/badges for Travis, Coverity. 2015-04-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #116 from rk295/patch-1 Changed the version string to reflect 1.3.6rc1 2015-04-15 Gildásio Júnior <gildasio97@gmail.com> * README, README.md: Update and rename README to README.md 1. Use md extention because use markdown sintaxe; 2. Update in some sections with markdown "tags" 2015-04-14 Robin Kearney <robin@kearney.co.uk> * contrib/dist/rpm/proftpd.spec: Changed the version string to reflect 1.3.6rc1 2015-04-12 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Clear the statcache appropriately for READLINK requests. Add a note for my future self to NOT make the mistake of using a resolved path (again) when making a call to readlink(2). 2015-04-12 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix a few more tests for running on a Mac OSX. 2015-04-12 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/sql.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: More fixing up of tests. 2015-04-12 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/OPTS.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm, tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm, tests/t/lib/ProFTPD/Tests/Config/FactsOptions.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/RMD.pm, tests/t/lib/ProFTPD/Tests/Config/MaxClients.pm, tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm, tests/t/lib/ProFTPD/Tests/Config/Umask.pm, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fixing up some of the regression tests to either work on Mac OSX, or to match the current code. Still more tests need updating. 2015-04-11 TJ Saunders <tj@castaglia.org> * modules/mod_facts.c: Now that the statcaches have been separated for stat(2) vs lstat(2), this second clearing of the statcaches is no longer needed. 2015-04-11 TJ Saunders <tj@castaglia.org> * src/fsio.c: I found that we need to maintain two different statcache tables: one for stat(2) data, and one for lstat(2) data. The data can be different, for the same path, depending on whether it's a symlink or not. 2015-04-11 TJ Saunders <tj@castaglia.org> * modules/mod_facts.c, src/dirtree.c: Running through the regression tests has picked up a few necessary fixes. Expect more. 2015-04-10 TJ Saunders <tj@castaglia.org> * NEWS: Updated NEWS for Bug#4168. 2015-04-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #110 from proftpd/xfer-hiddenstores-races-bug4168 Bug#4168 - Race condition with HiddenStores and TimeoutIdle timeout. 2015-04-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #114 from proftpd/sftp-realpath-ctrl-byte-bug4170 Bug#4170 - Incorrect handling of control-byte field of SSH_FXP_REALPATH ... 2015-04-09 TJ Saunders <tj@castaglia.org> * doc/howto/Radius.html: Update Radius howto to mention new attributes supported by mod_radius. 2015-04-09 TJ Saunders <tj@castaglia.org> * contrib/ftpasswd, modules/mod_auth_file.c: Bug#4171 - Add checks to mod_auth_file for crypt(3) failures due to the hash algorithm used, and make ftpasswd check for times when --des/--md5 will not be sufficient. 2015-04-09 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/fxp.c: Try to implement more of the SFTP protocol version 6 semantics for REALPATH's control byte. 2015-04-09 tjsaunders <tj@lyveminds.com> * : commit 8c1412153a13f51c63070c2ac67c7a922b1a9831 Author: tjsaunders <tj@lyveminds.com> Date: Thu Apr 9 00:18:17 2015 -0700 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Fix copy/pasto, spotted by Coverity. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/kex.c: Remove unnecessary NULL check, per Coverity. 2015-04-08 tjsaunders <tj@lyveminds.com> * src/str.c, tests/api/str.c: Make sure that pr_str_is_fnmatch() properly handles NULL arguments. 2015-04-08 tjsaunders <tj@lyveminds.com> * lib/glibc-glob.c: Initialize the 'next' value explicitly, so that things happen properly in the error handling code. Found by Coverity. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_radius.c: Handle the size where the size of an int may not be exactly 4 bytes; on some platforms, it might actually be larger. So be specific about the number of bytes we copy for the vendor ID of a VSA. 2015-04-08 tjsaunders <tj@lyveminds.com> * modules/mod_site.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm: Fix some typos in the handling of symbolic mode expressions for SITE CHMOD commands, and start adding some symbolic SITE CHMOD regression tests. 2015-04-08 tjsaunders <tj@lyveminds.com> * modules/mod_delay.c: When shutting down and preserving the DelayTable, make the handling a little more resilient, handling (very unlikely but possible) error cases better, per Coverity. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_snmp/mod_snmp.c: Remove unnecessary NULL check, per Coverity. 2015-04-08 tjsaunders <tj@lyveminds.com> * modules/mod_core.c: Handle NULL return values from pr_expr_create, and make Coverity happier. 2015-04-08 tjsaunders <tj@lyveminds.com> * src/inet.c: Make the fd checks in pr_inet_openrw() a little less brittle by checking for any valid-looking fd (i.e. > -1), rather than just directly comparing against -1. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/coverity/modeling.c: Tell Coverity to ignore rand(3)/random(3); we know what we're doing, and do not use it for cases where cryptographically strong random numbers are needed. So please, Coverity, stop marking its use as defects. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/keys.c, contrib/mod_tls.c: Make sure that we NUL-terminate the buffer we gave to read(2), for passphrase collection, before doing anything else with the buffer. 2015-04-08 tjsaunders <tj@lyveminds.com> * src/fsio.c: Check for possible NULL value before calling glob(3), lest it segfault on us. 2015-04-08 tjsaunders <tj@lyveminds.com> * src/fsio.c: Remove unnecessary NULL check, per Coverity. 2015-04-08 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Bug#4170 - Incorrect handling of control-byte field of SSH_FXP_REALPATH as bitmask rather than enumeration. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/auth.c: Handle possibly (albeit unlikely) NULL return value. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_radius.c: Slightly more paranoid parsing of RADIUS variable formatted strings, as configured in the config file. 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/mod_ifsession.c: The <If...> sections using regexes might be malformed; the configuration handler needs to handle this error case properly. 2015-04-08 tjsaunders <tj@lyveminds.com> * : commit ac1a6a4dc9d34703dd5a438336cb53c0fed33d10 Author: tjsaunders <tj@lyveminds.com> Date: Wed Apr 8 00:25:07 2015 -0700 2015-04-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #112 from proftpd/coverity-defects Moew Coverity defects 2015-04-08 tjsaunders <tj@lyveminds.com> * contrib/coverity/modeling.c, lib/tpl.c, lib/tpl.h: Tweak the TPL API a little, so that we can mark it for visibility by Coverity. 2015-04-07 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Quell warning about uninitialized variable being used. 2015-04-07 tjsaunders <tj@lyveminds.com> * src/fsio.c: Better NULL checking. Also clear the statcache in the case of renames. 2015-04-07 tjsaunders <tj@lyveminds.com> * contrib/mod_exec.c, contrib/mod_radius.c, lib/tpl.c, modules/mod_ls.c, modules/mod_site.c: Fixing up more issues spotted by Coverity. 2015-04-07 tjsaunders <tj@lyveminds.com> * src/fsio.c: Fix dead code spotted by Coverity. 2015-04-07 tjsaunders <tj@lyveminds.com> * contrib/mod_snmp/packet.c: Removing some logically dead code branches spotted by Coverity. 2015-04-07 TJ Saunders <tj@castaglia.org> * : Merge pull request #111 from proftpd/coverity-defects Quell some of the warnings/issues spotted by Coverity. 2015-04-07 tjsaunders <tj@lyveminds.com> * : commit 6bb2e06513363a256802ebb250ff05a1d9fd3208 Author: tjsaunders <tj@lyveminds.com> Date: Tue Apr 7 22:03:04 2015 -0700 2015-04-07 tjsaunders <tj@lyveminds.com> * modules/mod_core.c, modules/mod_xfer.c: Use PR_HANDLED, not HANDLED. 2015-04-07 tjsaunders <tj@lyveminds.com> * contrib/mod_copy.c: Use PR_DECLINED, not DECLINED. 2015-04-07 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES: Tweaks/edits to release notes. 2015-04-07 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES: More fleshing out of the release notes. We're getting close to release-ready. 2015-04-07 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES: Start fleshing out the release notes, getting ready for a release. 2015-04-07 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c: Bug#4168 - Race condition with HiddenStores and TimeoutIdle timeout. Attempt to reduce/mitigate this race by blocking timers during critical sections of transfer setup code, and handle some side effects in the exit handler by using other criteria for determining when/how to handle e.g. HiddenStores files. 2015-04-07 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/Makefile.in, contrib/mod_sftp/umac.c: Fix building of umac128.{o, lo}, and the resulting symbol collision for a DSO build of mod_sftp. 2015-04-07 tjsaunders <tj@lyveminds.com> * src/inet.c: Fix compilation when the --disable-ipv6 compile-time option is used. 2015-04-07 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES: Updating NEWS, release notes for Bug#4169. 2015-04-07 TJ Saunders <tj@castaglia.org> * : Merge pull request #109 from proftpd/copy-unauthenticated-copying Bug#4169 - Unauthenticated copying of files via SITE CPFR/CPTO allowed by mod_copy 2015-04-06 tjsaunders <tj@lyveminds.com> * NEWS, contrib/mod_sftp/fxp.c: Update NEWS with mention of fix for Bug#4166. 2015-04-06 TJ Saunders <tj@castaglia.org> * : Merge pull request #97 from proftpd/sftp-rekeying-memory-usage-bug4166 Bug#4166 - mod_sftp sessions consume large amounts of memory due to reke... 2015-04-05 TJ Saunders <tj@castaglia.org> * : Merge pull request #108 from proftpd/sftp-umac-128 Support for "umac-128@openssh.com" SSH MAC algorithm 2015-04-05 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/Makefile.in, contrib/mod_sftp/crypto.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/umac.c, contrib/mod_sftp/umac.h: Add support for the umac-128@openssh.com SSH MAC. 2015-04-05 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kbdint.c: Fix memory leak when handling 'keyboard-interactive' SSH authentication. 2015-04-05 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_memcache.c: Tone down the logging message emitted when we try to register a handler and there's no memcache support enabled in the build. 2015-04-04 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES: Update NEWS, release notes with mention of Bug#4059. 2015-04-04 TJ Saunders <tj@castaglia.org> * : Merge pull request #107 from proftpd/radius-addl-attributes-bug4059 Bug#4059 - Implement additional RADIUS attributes 2015-04-03 tjsaunders <tj@lyveminds.com> * contrib/mod_radius.c, doc/contrib/mod_radius.html: Bug#4059 - Implement additional RADIUS attributes. 2015-04-03 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp_pam.c: Stylistic nit cleanup in mod_sftp_pam, no functional changes. 2015-04-02 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES: Mention the new FSCachePolicy directive in the release notes. 2015-04-02 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_sftp.html: Fix the spacing in the mod_sftp docs referring to RFCs. 2015-04-02 TJ Saunders <tj@castaglia.org> * : Merge pull request #106 from proftpd/site-misc-resp-code-setting Fix the setting of FTP response codes for the internal commands that 2015-04-02 TJ Saunders <tj@castaglia.org> * : Merge pull request #105 from proftpd/site-misc-extlog-resp-code Add regression test for ExtendedLog handling of the response code for SITE commands 2015-04-02 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Found a few more places in mod_sftp that need to clear the statcache for accurate stat/lstat results. 2015-04-02 TJ Saunders <tj@castaglia.org> * : commit f88556af8c9395873f75fc43e5f779648b5de0c3 Author: TJ Saunders <tj@castaglia.org> Date: Thu Apr 2 11:25:48 2015 -0700 2015-04-02 TJ Saunders <tj@castaglia.org> * tests/api/table.c: Add a unit test for executing pr_table_do() on a table, with a callback that removes items from the table during the iteration. 2015-04-02 TJ Saunders <tj@castaglia.org> * src/fsio.c: Clear the statcache when files are created/modified via creat(2) and open(2) calls as well. 2015-04-02 TJ Saunders <tj@castaglia.org> * src/fsio.c, tests/api/fsio.c: Clear the statcache when a file is closed or unlinked. Flesh out the pr_fsio_stat()/pr_fsio_lstat() unit tests to catch regressions such as the previous statcache issue, where the statcache was not being populated with the struct stat information. 2015-04-02 TJ Saunders <tj@castaglia.org> * contrib/mod_site_misc.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Adding integration test demonstrating the proper handling of the %s ExtendedLog variable for SITE commands, e.g. those provided by mod_site_mis.c 2015-04-02 TJ Saunders <tj@castaglia.org> * : Merge pull request #104 from proftpd/core-fscacheoptions Add FSCachePolicy directive, for tuning statcache 2015-04-01 TJ Saunders <tj@castaglia.org> * : commit 36ed1cb9901e041e88b0a96e8fb4bd13defea24f Merge: b65700f 9d45a71 Author: TJ Saunders <tj@castaglia.org> Date: Wed Apr 1 23:35:15 2015 -0700 2015-04-01 TJ Saunders <tj@castaglia.org> * src/fsio.c: Set errno to the proper value in the case of stat(2)/lstat(2) failure. 2015-04-01 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/misc.c: Adding missing format string. 2015-04-01 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c: Remove debugging cruft. 2015-04-01 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c, src/fsio.c: Add missing memcpy(2) call that was causing FTP directory listings to fail. 2015-04-01 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c, src/dirtree.c, src/fsio.c, src/support.c: Checking in some changes while I debug why the statcaching is breaking FTP directory listings. 2015-04-01 tjsaunders <tj@lyveminds.com> * modules/mod_core.c: Start working on an FSCacheOptions directive, for tuning the newly-added statcache. 2015-04-01 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/fxp.c: Properly increment the st_size on SFTP WRITE, taking into account possible overwrites of existing chunks of the file. 2015-04-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #100 from proftpd/fsio-stat-caching Change the FSIO API's statcache from a single entry to one using tables. 2015-04-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #101 from proftpd/sftp-fstat-on-write-perf Avoid an fstat(2) call per WRITE request, to see if it helps with perfor... 2015-04-01 tjsaunders <tj@lyveminds.com> * src/fsio.c, tests/api/fsio.c: Dealing with test fallout, and quelling some compiler warnings spotted by travis-ci. 2015-04-01 tjsaunders <tj@lyveminds.com> * src/str.c: Remove some unused variables (spotted by travis-ci). 2015-04-01 tjsaunders <tj@lyveminds.com> * src/fsio.c: Make sure that pr_fsio_access() doesn't clear the statcache when it doesn't have to; that policy should be up to the caller, not to the implementation. 2015-04-01 tjsaunders <tj@lyveminds.com> * include/fsio.h, modules/mod_core.c, src/dirtree.c, src/fsio.c, tests/api/fsio.c: Disable statcaching until the client has authenticated, at which point we will start caching. 2015-03-31 tjsaunders <tj@lyveminds.com> * : commit fc5dda6054a982a858add1fa63addb48fbdbb9f4 Author: tjsaunders <tj@lyveminds.com> Date: Tue Mar 31 23:33:53 2015 -0700 2015-03-31 tjsaunders <tj@lyveminds.com> * contrib/mod_copy.c, contrib/mod_quotatab.c, contrib/mod_rewrite.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/misc.c, contrib/mod_site_misc.c, contrib/mod_snmp/mod_snmp.c, contrib/mod_sql.c, include/fsio.h, include/options.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_facl.c, modules/mod_facts.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/dirtree.c, src/fsio.c, src/mkhome.c, src/support.c, src/table.c, tests/api/fsio.c: Change the FSIO API's statcache from a single entry to one using tables. This cache now holds up to a configurable size, with expiration, and allows clearing of single entries (or the entire cache if needed). 2015-03-31 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/fxp.c: Fix bug where we were allocating a cmd_rec out of the wrong pool when handling REMOVE requests. 2015-03-31 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/fxp.c: Slight logging tweaks; no functional change. 2015-03-31 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with mention of Bug#4157. 2015-03-31 TJ Saunders <tj@castaglia.org> * : Merge pull request #96 from proftpd/core-tracing-perf-bug4157 Bug#4157 - LIST/NLST of 1000s of files is slow on some platforms. 2015-03-30 TJ Saunders <tj@castaglia.org> * src/bindings.c: Remove now-unused variable. 2015-03-30 TJ Saunders <tj@castaglia.org> * include/bindings.h, src/bindings.c: Fix up the ServerAlias/namebind handling which was causing spurious NOTICE level log messages in 1.3.5. 2015-03-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Make sure to set the curr_pkt pointer to NULL in the case of an unknown request, too. 2015-03-29 TJ Saunders <tj@castaglia.org> * modules/mod_dso.c, src/auth.c, src/inet.c, src/netio.c: Add missing tags on some pools, fix typos. Nothing major. 2015-03-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Found a place where we need to clear a pointer to a packet explicitly. Failing to do so could mean that a packet is reused, thus leading to leaking memory (as that packet pool is never actually freed/reused). 2015-03-28 TJ Saunders <tj@castaglia.org> * include/support.h, modules/mod_ls.c, src/support.c: Additional fixes for Bug#4157, trying to remove a redundant lstat(2) call during directory listings that include symlinks. 2015-03-28 TJ Saunders <tj@castaglia.org> * : commit fd68ce118083fea2e1add58ae6e43413aa0b408e Author: TJ Saunders <tj@castaglia.org> Date: Sat Mar 28 15:48:31 2015 -0700 2015-03-28 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, src/netio.c, src/response.c, tests/api/netio.c, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Additional changes needed for handling embedded LFs in paths, for Bug#4167. 2015-03-28 TJ Saunders <tj@castaglia.org> * include/netio.h, src/main.c, src/netio.c, src/str.c, tests/api/netio.c, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Bug#4167 - CR/LF characters are not supported in filenames. 2015-03-25 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/fxp.c: Avoid an fstat(2) call per WRITE request, to see if it helps with performance writing files on network filesystems like NFS. 2015-03-25 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Slightly better trace messages for SSL WANT_READ/WANT_WRITE conditions. 2015-03-21 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/mod_sftp.c: Only dump the memory pools if mod_shaper is NOT present. 2015-03-21 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kex.c: Additional changes for Bug#4166, to reduce the memory leaked during an SSH2 rekeying. 2015-03-21 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c, modules/mod_xfer.c: Bug#4166 - mod_sftp sessions consume large amounts of memory due to rekeying. In order to debug this, I had to add code to mod_sftp which handles the SIGUSR2 signal by dumping the memory pools of the process. This, in turn, required some slight adjustments to a similar handling of SIGUSR2 that mod_xfer does, but which was only needed if mod_shaper is present. 2015-03-20 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c, src/fsio.c, src/trace.c: Bug#4157 - LIST/NLST of 1000s of files is slow on some platforms. 2015-03-20 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES: Update NEWS, release notes for Bug#4164. 2015-03-20 TJ Saunders <tj@castaglia.org> * : Merge pull request #95 from proftpd/sql-uid-size-bug4164 Bug#4164 - mod_sql fails to read UID/GID values larger than 32 bits from SQL table 2015-03-16 tjsaunders <tj@lyveminds.com> * contrib/mod_exec.c, contrib/mod_sftp/fxp.c, contrib/mod_sql.c, modules/mod_cap.c, modules/mod_facts.c, src/main.c: Updating more places to use the new functions for stringifying UID/GID values. Display the max supported UID/GID value in the -V output. 2015-03-16 tjsaunders <tj@lyveminds.com> * : commit 005b8a5cccfa75109f738f2ecbb763225d1a76c3 Author: TJ Saunders <tj@castaglia.org> Date: Mon Mar 16 14:05:11 2015 -0700 2015-03-15 tjsaunders <tj@lyveminds.com> * src/auth.c, src/privs.c: Update more places in the core code to log UID/GID values properly. 2015-03-15 tjsaunders <tj@lyveminds.com> * contrib/mod_sql.c: Fix up a few more places in mod_sql where proper stringification of UID/GID needs to use the new routines. 2015-03-15 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: The bug has number; it's number is 4164. 2015-03-15 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Run all of the mod_sql_sqlite tests, please. 2015-03-15 tjsaunders <tj@lyveminds.com> * src/auth.c, src/str.c, tests/api/str.c: Bug#4164: Start using the new functions for ID/string conversion in more places; there's still more here to do. 2015-03-15 tjsaunders <tj@lyveminds.com> * : commit 9b215b1530bf4839ddce6505d70d9e79a9c541c5 Author: tjsaunders <tj@lyveminds.com> Date: Sun Mar 15 17:27:51 2015 -0700 2015-03-15 TJ Saunders <tj@castaglia.org> * configure: Updated configure. 2015-03-15 TJ Saunders <tj@castaglia.org> * config.h.in, configure.in: Check for the strtoll(3) function, too. 2015-03-15 TJ Saunders <tj@castaglia.org> * configure: Updated configure. 2015-03-15 TJ Saunders <tj@castaglia.org> * config.h.in, configure.in: Add autoconf checks for the size of uid_t/gid_t, as part of handling Bug#4164. 2015-03-15 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES: Update NEWS, release notes for Bug#4163. 2015-03-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #94 from proftpd/tls-no-export-ciphers-bug4163 Bug#4163 - Remove support for EXPORT grade ciphers. 2015-03-15 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/fxp.c: Fix two places with incorrect comparisons against the utf8ProtocolVersion SFTPOption, per comments in Bug#4160. 2015-03-15 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS for Bug#4160. 2015-03-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #93 from proftpd/sftp-realpath-nocheck-v6-response-bug4160 Bug#4160 - Malformed response to SSH_FXP_REALPATH with SFTP version 6. 2015-03-14 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS with fix for Bug#4156. 2015-03-14 TJ Saunders <tj@castaglia.org> * : Merge pull request #91 from proftpd/core-ls-segfault-bug4156 Bug#4156 - Segfault handling LIST/NLST FTP command on Mac OS X. 2015-03-03 tjsaunders <tj@lyveminds.com> * NEWS, RELEASE_NOTES: Updates NEWS, release notes for Bug#4159. 2015-03-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #92 from proftpd/xfer-ignore-ascii-bug4159 Bug#4159: Support ability to disable ASCII translation transparently to ... 2015-03-01 TJ Saunders <tj@castaglia.org> * include/fsio.h, lib/sstrncpy.c, src/fsio.c, tests/api/fsio.c, tests/api/str.c: Bug#4156 - Segfault handling LIST/NLST FTP command on Mac OS X. 2015-03-01 TJ Saunders <tj@castaglia.org> * src/main.c: Include PR_TUNABLE_PATH_MAX in the `proftpd -V' output. 2014-12-25 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update NEWS, release notes for JSON output of ftpwho (Bug#4031). 2015-02-27 TJ Saunders <tj@castaglia.org> * lib/pr_fnmatch_loop.c: Backport glibc fix for a memory overread for certain fnmatch patterns. 2015-02-19 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp_sql.c: Fix additional issue related to Bug#4155, where the buffer overrun could happen for bad key data. This also adds a log message for the future, pinpointing the root of the problem. 2015-02-19 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Remove stray comment character. 2015-02-17 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Add a regression test for the NLST command and how the -a and -1 options will affect the format of the NLST response. 2015-02-17 tjsaunders <tj@lyveminds.com> * modules/mod_ls.c: Stylistic nits; no functional change. 2015-02-17 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Adding mod_exec regression test demonstrating how to use mod_exec and mod_ifsession. 2015-02-17 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS with fix for Bug#4155. 2015-02-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #89 from proftpd/sftp-sql-overlong-commented-keys-bug4155 Bug#4155 - SSH keys with too-long Comment headers aren't recognized by mod_sftp_sql 2015-02-17 TJ Saunders <tj@castaglia.org> * tests/t/etc/modules/mod_sftp/test_rsa2048_key2, tests/t/etc/modules/mod_sftp/test_rsa2048_key2.pub, tests/t/etc/modules/mod_sftp/test_rsa_key_bug4155, tests/t/etc/modules/mod_sftp/test_rsa_key_bug4155.pub, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Adding accompanying regression tests for Bug#4155. 2015-02-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp_sql.c: Bug#4155 - SSH keys with too-long Comment headers aren't recognized by mod_sftp_sql. 2015-02-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #88 from proftpd/ls-option-parsing Fix random issue with LIST option parsing 2015-02-17 tjsaunders <tj@lyveminds.com> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding a regression test for the "LIST -a" parsing issue raised on GitHub. 2015-02-04 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS for fix for Bug#4152. 2015-02-04 TJ Saunders <tj@castaglia.org> * : Merge pull request #87 from proftpd/core-enotconn-logging-bug4152 Bug#4152 - Reduce logging of non-fatal "unable to open incoming connection" errors 2015-02-04 tjsaunders <tj@lyveminds.com> * src/main.c: Bug#4152 - Reduce logging of non-fatal "unable to open incoming connection" errors. 2015-02-03 tjsaunders <tj@lyveminds.com> * contrib/mod_sql_passwd.c: Correct the pointer check used in an error case; spotted by Coverity. 2015-02-03 tjsaunders <tj@lyveminds.com> * contrib/mod_tls.c: Stylistic nits; no functional change. 2015-02-03 tjsaunders <tj@lyveminds.com> * contrib/mod_radius.c: Stylistic cleanup; no functional changes. 2015-02-03 tjsaunders <tj@lyveminds.com> * contrib/mod_sftp/keys.c, contrib/mod_tls.c: Address some Coverity issues by ensuring that a buffer, given to OpenSSL, is NUL-terminated before calling e.g. strlen(3) on the buffer. 2015-02-03 tjsaunders <tj@lyveminds.com> * src/data.c: Clear the "have dangling CR" flag on data reset as well. 2015-02-03 tjsaunders <tj@lyveminds.com> * src/data.c: Reset any ASCII transformation state, possibly leftover from previous transfers, when preparing for a data transfer (Bug#4150). 2015-02-03 tjsaunders <tj@lyveminds.com> * src/data.c: Use the return value from xfrm_ascii_write() as part of a trace-level log message (Bug#4149). 2015-02-03 tjsaunders <tj@lyveminds.com> * src/data.c: Update stale comment (Bug#4148). 2015-02-03 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS for Bug#4145. 2015-02-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #86 from proftpd/authfile-symlink-segfault-bug4145 Bug#4145 - Segfault if AuthUserFile is a relative symlink. 2014-12-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #84 from proftpd/utils-ftpwho-json-bug4031 Bug#4031 - Support JSON output format for ftpwho 2014-12-25 TJ Saunders <tj@castaglia.org> * utils/ftpwho.1.in: Update the ftpwho man page to mention the new json option. 2014-12-25 TJ Saunders <tj@castaglia.org> * include/tpl.h: Include renamed file. 2014-12-25 TJ Saunders <tj@castaglia.org> * configure.in, include/memcache.h, lib/json.c, lib/json.h, lib/tpl.h, utils/ftpwho.c, utils/utils.h: Bug#4031 - Support JSON output format for ftpwho. 2014-12-24 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Updating NEWS, release notes for fix for Bug#4144. 2014-12-24 TJ Saunders <tj@castaglia.org> * : Merge pull request #83 from proftpd/xfer-appe-with-hiddenstores-bug4144 Bug#4144 - Support APPE when HiddenStores are enabled. 2014-12-22 TJ Saunders <tj@castaglia.org> * src/fsio.c: Adding missing trace logging of some FSIO operations. Stylistic cleanup. 2014-12-22 TJ Saunders <tj@castaglia.org> * .travis.yml, tests/api/fsio.c: Set the TRAVIS_CI environment variable when it is being used to e.g. run the API tests. Then use this in the fsio_access() tests, to avoid running the tests which run afoul of the travis-ci environment (and causing unexpected false-positive test failures). 2014-12-22 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: For the fsio_access() tests, use chmod(2) directly on the created directory, rather than futzing with the umask. 2014-12-22 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Comment out more of the fsio_access() tests, for now. 2014-12-22 TJ Saunders <tj@castaglia.org> * src/scoreboard.c: Quell compiler warning, found by travis-ci. 2014-12-22 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Comment out some of the just-added tests for fsio_access(), pending investigation into travis-ci's umask et al. 2014-12-22 TJ Saunders <tj@castaglia.org> * tests/api/inet.c: Removing more unused variables; no functional change. 2014-12-22 TJ Saunders <tj@castaglia.org> * tests/api/auth.c: Remove unused variable; no functional change. 2014-12-22 TJ Saunders <tj@castaglia.org> * tests/api/fsio.c: Fixup use of variables; no functional change. 2014-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kex.c: Quell another compiler warning, found by travis-ci. 2014-12-22 TJ Saunders <tj@castaglia.org> * contrib/mod_site_misc.c: Fix printf(3) format warning found by travis-ci. 2014-12-22 TJ Saunders <tj@castaglia.org> * src/fsio.c, tests/api/fsio.c: Add unit test for the fsio_access() function, as part of tracking down the culprit for Bug#4141. 2014-12-22 TJ Saunders <tj@castaglia.org> * src/dirtree.c: Add trace logging of various conditions under which we'll hide a file, for debugging/triage. 2014-12-20 TJ Saunders <tj@castaglia.org> * contrib/mod_tls_memcache.c: Reduce the severity of the "unable to register memcache SSL session cache" message, from NOTICE to DEBUG; it causes more confusion than aid. 2014-12-17 tjsaunders <tj@lyveminds.com> * RELEASE_NOTES, contrib/mod_ban.c, doc/contrib/mod_ban.html: Add support to mod_ban, for banning on "bad protocol" detection. 2014-12-15 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with fix for Bug#4143. 2014-12-15 TJ Saunders <tj@castaglia.org> * : Merge pull request #81 from proftpd/core-reject-http-smtp Bug#4143 - HTTPS/FTPS protocol confusion leads to XSS 2014-12-15 tjsaunders <tj@lyveminds.com> * src/cmd.c, src/main.c: Update the comments with the appropriate bug number. 2014-12-14 TJ Saunders <tj@castaglia.org> * include/cmd.h, include/dirtree.h, include/session.h, src/cmd.c, src/main.c, tests/t/http.t, tests/t/lib/ProFTPD/Tests/HTTP.pm, tests/t/lib/ProFTPD/Tests/SMTP.pm, tests/t/smtp.t: If we detect HTTP or SMTP commands, drop the connection. This prevents proftpd from being used as a staging server for nefarious attacks on other protocol servers. 2014-12-14 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix regression test for Bug#4097 to run using current mod_sftp code. 2014-12-14 TJ Saunders <tj@castaglia.org> * : commit 1ba73d3d85bb837ae08eb1fd15d81d087385fc60 Author: TJ Saunders <tj@castaglia.org> Date: Sun Dec 14 18:57:16 2014 -0800 2014-12-14 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fixed quite a few failing regression tests; many of them were failing (on Mac OSX) due to tmp filesystem fun. 2014-12-13 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_sftp.html: Add another mod_sftp FAQ about warnings about reading certain config files. 2014-12-09 TJ Saunders <tj@castaglia.org> * src/fsio.c: Remove the EPERM exclusion. 2014-12-09 TJ Saunders <tj@castaglia.org> * src/fsio.c: Ignore EPERM, in the case where we see ENOENT. 2014-12-09 TJ Saunders <tj@castaglia.org> * src/fsio.c: If we encounter an ENOENT from fchmod(2) when securely changing mode of a temporary directory, as from a network filesystem such as CIFS, then we should probably ignore any EACCES errors said filesystem might return as well. 2014-12-09 TJ Saunders <tj@castaglia.org> * src/fsio.c: Make sure the fchmod(2) call fails, using ENOENT, before deciding to fall back to chmod(2). 2014-12-09 TJ Saunders <tj@castaglia.org> * modules/mod_site.c: Fix build warnings about missing printf arguments. 2014-12-09 TJ Saunders <tj@castaglia.org> * src/fsio.c: Bug#4134 - Unable to create folders using FTP on a CIFS mounted share: "No such file or directory". The underlying cause of this bug is that, on a CIFS mount (perhaps because of the mount options used), fchmod(2) on the temporary directory returns ENOENT. Weird. So we address this by doing a) a fallback call to chmod(2) on the path, and b) ignoring ENOENT. 2014-12-08 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4140. 2014-12-08 TJ Saunders <tj@castaglia.org> * : Merge pull request #79 from proftpd/sftp-readlink-symlinks-bug4140 Bug#4140 - SFTP READLINK requests to symlinks to directories fail. 2014-12-08 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#4140 - SFTP READLINK requests to symlinks to directories fail. 2014-12-07 TJ Saunders <tj@castaglia.org> * src/auth.c: Log the value for TZ, if it is already present; this will help with debugging issues such as Bug#4113. 2014-12-06 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Updated NEWS, release notes for Bug#4138 changes. 2014-12-06 TJ Saunders <tj@castaglia.org> * : Merge pull request #78 from proftpd/sql-passwd-salt-encodings-bug4138 Bug#4138 - Support for hex-encoded salts in mod_sql_passwd. 2014-12-06 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_passwd.c, doc/contrib/mod_sql_passwd.html, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Bug#4138 - Support for hex-encoded salts in mod_sql_passwd. 2014-12-01 tjsaunders <tj@lyveminds.com> * NEWS: Update NEWS with fix for Bug#4137. 2014-12-01 TJ Saunders <tj@castaglia.org> * : Merge pull request #76 from proftpd/geoip-denyfilter-precedence-bug4137 Bug#4137 - GeoIPDenyFilter incorrectly takes precedence over GeoIPAllowF... 2014-11-30 TJ Saunders <tj@castaglia.org> * : Merge pull request #77 from proftpd/ctrls-openbsd-portability Issue #75: Add configure-time check for struct sockpeercred (as used on 2014-11-29 TJ Saunders <tj@castaglia.org> * contrib/mod_geoip.c: Bug#4137 - GeoIPDenyFilter incorrectly takes precedence over GeoIPAllowFilter. 2014-11-16 TJ Saunders <tj@castaglia.org> * NEWS: Updated NEWS for fix for Bug#4133. 2014-11-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #73 from proftpd/ldap-users-missing-uid-filter-bug4133 Bug#4133 - LDAPUsers directive does not honor uid-number-filter-templat... 2014-11-16 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keys.c: Make sure that sftp_keys_clear_ecdsa_hostkey() has proper semantics, and will return ENOENT if ECC is supported, but there are no ECDSA hostkeys configured. 2014-11-16 TJ Saunders <tj@castaglia.org> * RELEASE_NOTES, doc/contrib/mod_sftp.html: Update docs, release notes for new SFTPHostKey flags. 2014-11-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #72 from proftpd/sftp-disabling-global-hostkeys Modify the SFTPHostKey directive such that it can be used to unload/clea... 2014-11-14 tjsaunders <tjsaunders@blackpearlsystems.com> * src/log.c: Remove misleading comment; no functional change. 2014-11-13 TJ Saunders <tj@castaglia.org> * : Merge pull request #71 from proftpd/sftp-wrap2-deny-msg Make sure that mod_sftp properly resolves any %u variables in a WrapDeny... 2014-11-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #70 from proftpd/sftp-allowfilter-redux Following up on a forums post, make sure that if AllowFilter is used on 2014-11-10 TJ Saunders <tj@castaglia.org> * modules/mod_core.c: Update notes of which modules have been reworked, which need reworking. 2014-11-10 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c: Fix merge errors causing broken build. 2014-11-10 TJ Saunders <tj@castaglia.org> * : commit 7c4787492b879207a6052058bf9dd11c8c2f48dd Merge: bdaefba eef26a0 Author: TJ Saunders <tj@castaglia.org> Date: Mon Nov 10 10:24:31 2014 -0800 2014-11-10 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Add regression test demonstrating use of the new key fingerprint environment variables. 2014-11-10 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth-publickey.c, doc/contrib/mod_sftp.html: Populate some environment variables that can be used for logging/tracking the publickey used for user authentication, via key fingerprints. 2014-11-10 TJ Saunders <tj@castaglia.org> * NEWS, RELEASE_NOTES: Update NEWS, release notes for changes for Bug#4060. 2014-11-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #68 from proftpd/ls-opt-U-bug4060 Bug#4060 fix 2014-11-10 TJ Saunders <tj@castaglia.org> * doc/howto/ListOptions.html, modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Bug#4060 - Support unsorted LIST entries (-U) to decrease memory/CPU usage for large directory listings. 2014-11-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #67 from proftpd/xfer-note-file-offset Add support for %{file-offset} ExtendedLog variable, for tracking resumed uploads/downloads 2014-11-09 TJ Saunders <tj@castaglia.org> * : commit 8d0d90490407d67d8da7bd1543a5f4625b5797af Author: TJ Saunders <tj@castaglia.org> Date: Sun Nov 9 22:38:25 2014 -0800 2014-11-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #66 from proftpd/lang-require-valid-encoding-bug4125 Bug#4125 - mod_lang should provide way to reject illegally-encoded filenames. 2014-11-09 TJ Saunders <tj@castaglia.org> * modules/mod_lang.c: Copy-pasto. 2014-11-09 TJ Saunders <tj@castaglia.org> * include/encode.h, modules/mod_lang.c, src/encode.c, src/fsio.c: Forgot to actually wire up the handling of the RequireValidEncoding LangOption to the propagation of decoding errors; without this, all illegal encodings would be rejected. 2014-11-09 TJ Saunders <tj@castaglia.org> * contrib/mod_copy.c, contrib/mod_site_misc.c, doc/modules/mod_lang.html, include/encode.h, include/fsio.h, include/session.h, modules/mod_core.c, modules/mod_facts.c, modules/mod_lang.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/dirtree.c, src/encode.c, src/fsio.c, tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Bug#4125 - mod_lang should provide way to reject illegall-encoded filenames. 2014-11-09 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with mention of changes for Bug#4058. 2014-11-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #65 from proftpd/trace-timing-channel-bug4058 Bug#4058 - Create a 'timing' trace channel, for timing-related data 2014-11-09 TJ Saunders <tj@castaglia.org> * contrib/mod_log_forensic.c, contrib/mod_sftp/packet.c, contrib/mod_tls.c, include/proftpd.h, include/support.h, modules/mod_auth.c, src/main.c, src/support.c: Add supporting functions for easier timestamping for a 'timing' channel, and start implementing some of the more important timings to capture. 2014-11-09 TJ Saunders <tj@castaglia.org> * NEWS, contrib/mod_sftp/configure: Update NEWS, regenerate mod_sftp configure, for fix for Bug#4131. 2014-11-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #64 from proftpd/sftp-autoconf-sha2-detection Fix mod_sftp's autoconf script to properly detect OpenSSL support for SH... 2014-11-06 TJ Saunders <tj@castaglia.org> * : Merge pull request #63 from proftpd/sqlpasswd-dual-salt-support Modify mod_sql_passwd so that both global and per-user salts can be supp... 2014-11-06 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS, RELEASE_NOTES: Update NEWS, release notes for Bug#4130. 2014-11-06 TJ Saunders <tj@castaglia.org> * : Merge pull request #62 from proftpd/site-utime-multi-timestamps-bug4130 Bug#4130 - Support the 3-timestamp form of SITE UTIME. 2014-11-03 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Update NEWS for fix for Bug#4129. 2014-11-03 TJ Saunders <tj@castaglia.org> * : Merge pull request #61 from proftpd/sql-negative-cached-ids-bug4129 Bug#4129 - mod_sql caches incorrect UID/GID when name cannot be retrieve... 2014-11-02 tjsaunders <tjsaunders@blackpearlsystems.com> * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Add regression test demonstrating deletion of a directory (empty) whose name contains spaces. 2014-10-27 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with fix for Bug#4124. 2014-10-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #60 from proftpd/xfer-deleteabortestores-off-bug4124 Bug#4124 - DeleteAbortedStores defaults to "on" for all transfers, not j... 2014-10-24 tjsaunders <tjsaunders@blackpearlsystems.com> * src/scoreboard.c: Make sure we handle possible (albeit unlikey) lseek(2) errors here, too. 2014-10-24 tjsaunders <tjsaunders@blackpearlsystems.com> * utils/scoreboard.c: If lseek(2) fails, make sure we handle it properly. 2014-10-24 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/tpl.c: Slightly better (paranoid) handling of fatal messages in TPL. 2014-10-24 tjsaunders <tjsaunders@blackpearlsystems.com> * src/stash.c, tests/api/stash.c: Per Coverity, check that our name comparison is doing what we expect. Also ensure that the names used in stash tables are at least one character long; no empty strings. 2014-10-23 tjsaunders <tjsaunders@blackpearlsystems.com> * : commit 0ebf3f8a96aeaaa83bc1250fadc337d626a09186 Author: tjsaunders <tjsaunders@blackpearlsystems.com> Date: Thu Oct 23 08:50:32 2014 -0700 2014-10-23 TJ Saunders <tj@castaglia.org> * : Merge pull request #58 from proftpd/tls-protocol-version-bug4116 Bug#4116 - Report exact SSL/TLS protocol version used in client connecti... 2014-10-22 tjsaunders <tjsaunders@blackpearlsystems.com> * src/memcache.c: Check for a null pointer again, as was done above. 2014-10-22 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/tpl.c: Clean up the varargs in this error case. 2014-10-22 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/tpl.c: Tell compilers (and static code analyzers) that we explicitly do not care about the return values in this code branch. 2014-10-22 tjsaunders <tjsaunders@blackpearlsystems.com> * src/main.c: If we still have trouble opening the ScoreboardFile in inetd mode, after deleting it, then fail to start up. 2014-10-22 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_shaper.c: Check for an improbable error when deleting the ShaperTable on shutdown, per Coverity's suggestions. 2014-10-21 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_tls.c: More refactoring to the TLS version setting in mod_tls, to make sure that the intended behavior, a la Bug#4114, is enforced properly in all cases. This code is much simpler to maintain now. 2014-10-21 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Got the order of the default ciphersuites wrong, for Bug#4114. 2014-10-21 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_xfer.c: Remove some unneeded code, and check that the configured Max{Retrieve,Store}FileSize is greater than zero. 2014-10-21 tjsaunders <tjsaunders@blackpearlsystems.com> * src/scoreboard.c, utils/scoreboard.c: If lseek(2) fails, make sure to clean up after ourselves before leaving (i.e. unlocking the scoreboard, and closing the fd). 2014-10-19 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for Bug#4035. 2014-10-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #53 from proftpd/xfer-hiddenstores-not-renamed-bug4035 Bug#4035 - HiddenStores file not renamed every time 2014-10-19 TJ Saunders <tj@castaglia.org> * : commit e3a87649a7bafa593b68b36fcc0b9eb2d1045eee Author: TJ Saunders <tj@castaglia.org> Date: Sun Oct 19 12:13:49 2014 -0700 2014-10-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #51 from proftpd/sftp-too-small-buffer-bug4112 Bug#4112 - Failure to connect using mod_sftp sometimes due to too-small buffers 2014-10-19 TJ Saunders <tj@castaglia.org> * : commit 70c583005687a2cbba6807f9f83a504895eedb47 Author: TJ Saunders <tj@castaglia.org> Date: Sun Oct 19 12:08:38 2014 -0700 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/log.c: If we fail to open a syslog socket, log the error. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c: Remove redundant variable. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_core.c: Ignore errors from setting trace levels here, when restarting. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/pr-syslog.c, src/log.c: More cases where we are not concerned with errors; be explicit about it. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: Check (or ignore) errors from pr_inet_set_block(). 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_tls.c: Fix a case where, when secure site-to-site transfers are used, mod_tls would ignore a possible problem when matching the server cert's CN. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/tpl.c: The tpl code needed some va_end() calls before returning early from a variadic function. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/misc.c: Log in other places here when stat(2)/fstat(2) fail. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/misc.c: Log if stat(2) fails here. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/data.c: We're not really concerned with a fcntl(2) error here. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c: Some controls could elicit large responses. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c: Put a bound on the number of controls response arguments, too. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c: Put a bound on the max number of controls request arguments. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_ctrls.c: Another place where we can check before calling close() on an fd. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_ctrls.c: Make sure the fd is a valid fd value before passing it to close(2). 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/scoreboard.c: More handling of lseek(2) errors. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * utils/scoreboard.c: Handle possible lseek(2) error when scrubbing scoreboard via ftpscrub. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/netaddr.c: More paranoid error handling, prompted by Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_quotatab_file.c: Handle (rare) cases where lseek(2) might return an error. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_core.c: Coverity found another place where possibly badly formatted Trace settings could trigger a null pointer dereference. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/keystore.c: Avoid possible null pointer dereferences (unlikely) when handling badly configured SFTPAuthorized{Host,User}Keys parameters. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_core.c: Avoid possible null pointer dereference, per Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_wrap2/mod_wrap2.c: Paranoidly check for NULL from strchr(3); this case should've been caught in the directive handler. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: Avoid possible (but unlikely) null pointer dereference. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c: Watch for short reads when reading in a controls request. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * doc/howto/Tracing.html, src/log.c, src/trace.c: Handle the case where opening a syslog socket might fail. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: Remove unreachable code, found by Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_xfer.c: Remove code which is logically dead/unreachable, per Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/memcache.c: A few more missing break statements found by Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_core.c: Handle the EISDIR case first; the following code would handle it automatically, but we want to handle EISDIR as a special case. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/event.c: Coverity's analysis correctly identified some dead/unreachable code. Clean it up here. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_xfer.c: Remove redundant check, pointed out by Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/scoreboard.c: Remove some code which would never be reached, pointed out by Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * utils/ftpshut.c: Adding missing break statement, and make the code clearer. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/memcache.c: More missing break statements found by Coverity. 2014-10-18 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_memcache.c: Add missing break statements, per Coverity. 2014-10-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Refactor the protocol-enabling bits into a common function, which makes the protocol setting code easier to read/maintain. 2014-10-16 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS, RELEASE_NOTES, doc/contrib/mod_tls.html: Update mod_tls docs, NEWS, and release notes for Bug#4114. 2014-10-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #56 from proftpd/tls-sslv3-disabled-bug4114 Bug#4114 - mod_tls should not support SSLv3 by default. 2014-10-16 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_tls.c: Bug#4114 - mod_tls should not support SSLv3 by default. 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: Better error handling (and reporting). 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add regression test demonstrating setting the UID/GID columns for SQLUserInfo to NULL. 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sql.c: Always log the default UID/GID, not just when "SQLAuthenticate groups" is in effect. Sheesh. 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * src/bindings.c, src/inet.c, src/netaddr.c: In handling some Coverity-found issues, I think we were propagating some errors too eagerly. Fix these, along with the trace logging added for tracking down the cause. 2014-10-14 TJ Saunders <tj@castaglia.org> * : Merge pull request #55 from proftpd/coverity-defects Coverity defects 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_delay.c: Check for fcntl(2) return values, and log them (via trace logging). 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: If there are errors setting a file handle as blocking, log them via trace logging. 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_tls.c: Log (via trace messages) when putting a socket into nonblocking/blocking mode results in errors. Make it clear that setting other socket options can be ignored if they fail. 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * src/stash.c: Minor edge case found by Coverity. 2014-10-14 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/coverity/modeling.c: More Coverity modeling hints. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_tls.c: More places where we need to log if there's an issue stashing a note in a table, especially these SSL notes. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_shaper.c: Per Coverity, avoid possible divide-by-zero situation. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/coverity/modeling.c: Model pr_session_disconnect() as a killpath. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sql_passwd.c: If we have an error reading the salt, then don't proceed to trying to manipulate the buffer containing said salt. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * src/timers.c: Remove redundant null check. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: Fix more places in mod_sftp where checking xerrno for EOF was unnecessary. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: As it is not possible for xerrno to be EOF in this case, remove the unneeded tertiary operator/check for that condition. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_snmp/mod_snmp.c: Add missing break statement (copy-pasto). 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * src/dirtree.c: Add missing break statement. Oops. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_radius.c: Make it clearer what the expected usage/return value of the RADIUS_IS_VAR macro is. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * src/str.c: Remove some redundant checks: an int cannot be larger than INT_MAX, by definition. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * src/fsio.c: Restructure a function to remove dead code. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * src/cmd.c: Log if we have a problem caching our "displayable" string of a command in its notes table. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/display.c, src/display.c: Make sure that pr_fsio_fstat() succeeds before setting the IO block size hint on the file handle. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/misc.c: Another place where we weren't checking pr_fsio_fstat()'s return value. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: Be sure to check the pr_table_add() return value, per Coverity. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_xfer.c: Per Coverity's prodding, check the return value of pr_fsio_stat(). 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/coverity/modeling.c: Model setenv(3) as a TAINTED_DATA sink. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: Another copy-pasto found by Coverity. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/fxp.c: Copy-pasto, found by Coverity. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/keys.c: Copy-pasto, found by Coverity. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/packet.c: If mod_sftp is interrupted when reading from a socket, then retry that read(2) call again, rather than just looping infinitely. 2014-10-12 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_ldap.c: Remove unnecessary tertiary operator. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_delay.c: Use proper blocks, especially when dealing with macro expansion, to make clear what is happening (and what is in scope). 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/kex.c: Be consistent with the datatype used for the hostkey length throughout the KEX API. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_delay.c: If mod_delay has issues blocking/unblocking signals, log the reason why via trace logging. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_copy.c: Log, via trace logging, if we fail to add a session note. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_copy.c: Log, via trace logging, a should-never-fail error. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/pr-syslog.c: If we have a problem sending a message via syslog, try (at least) to report it via STDERR. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/fsio.c: Prompted by Coverity, log (rather than ignoring) return values. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/agent.c: Per Coverity, at least log the fcntl(2) error when trying to set CLOEXEC on an fd opened to talk to an SSH agent. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/netio.c: Explicitly ignore fcntl(2) return values here. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: Per Coverity, make sure that we check for, and handle errors, when calling getsockopt(2). 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: At least log, via trace logging, if fcntl(F_SETOWN) fails. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/bindings.c, src/inet.c: Propagate -- and check for -- more return values, prompted by Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/rfc4716.c: Be more paranoid about checking return values, prompted by Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/data.c: Explicitly ignore the fcntl(2) return value for data sockets. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: If setting a socket back to blocking mode fails, propagate that error to the caller, just as we do when setting the socket to nonblocking mode. Found by Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c, src/log.c: Explicitly ignore the fcntl(2) return value when opening a log fd; there is no existing log fd that we can use at that point for reporting the error. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/dirtree.c: If we encounter an error in opening a socket, make sure that we return from that function early, as appropriate (found by Coverity). 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * utils/ftptop.c: Fix a possible (albeit unlikely) resource leak identified by Coverity. 2014-10-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #54 from proftpd/coverity-defects Coverity defects 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/display.c, src/display.c: Fix error spotted by Coverity, where we might exceed the array of supported units for Display variables. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * lib/pr-syslog.c: Avoid possible buffer overrun on exceedingly log syslog-destined log messages, per Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h: Ensure matching datatypes, on platforms where uint32_t and size_t are not the same size; this should address an issue spotted by Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_shaper.c: Initialize variable, per Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_snmp/mod_snmp.c: Initialize variable, per Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/keys.c: Initialize variable, per Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/stash.c: Initialize variable value, per Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp_sql.c: Be pedanticly cautious, prompted by Coverity, in making sure that buffer indices are within the range we assume. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/main.c: Avoid possible descriptor leak, found by Coverity, by using the existing pr_fs_get_usable_fd() function, rather than multiple different approaches. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_snmp/mod_snmp.c: Coverity found a "leaked" file descriptor in mod_snmp; we were not returning the opened socket to the caller when opening the listening socket. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/netaddr.c: Fix a case, found by Coverity, where we would not properly free an addrinfo. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: Fix error case where a socket opened by init_conn() was not properly closed on error. This leak was identified by Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/ctrls.c: If there are errors when opening a Controls socket, make sure that the socket is closed, otherwise we have a descriptor leak. This was identified by Coverity. 2014-10-11 tjsaunders <tjsaunders@blackpearlsystems.com> * src/env.c: Fix memory leak identified by Coverity: setenv(3) already makes a copy of its arguments, which means that we do not need to do it. 2014-10-10 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/keys.c, contrib/mod_tls.c: Make sure that when prompting the user for a passphrase for a certificate, we ensure that the buffer holding the passphrase is NUL-terminated. 2014-10-10 tjsaunders <tjsaunders@blackpearlsystems.com> * utils/scoreboard.c: If we fail to obtain a lock on the scoreboard and return the error, make sure we close the fd on the way out, lest we leak an fd. 2014-10-10 tjsaunders <tjsaunders@blackpearlsystems.com> * src/netaddr.c: Fix case where we might reference a buffer that has fallen out of scope. 2014-10-10 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_radius.c: Fix minor socket descriptor leak found by Coverity. 2014-10-09 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c, tests/Makefile.in, tests/api/inet.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Start working on unit tests for the Inet API. 2014-10-09 tjsaunders <tjsaunders@blackpearlsystems.com> * include/filter.h, src/filter.c, tests/Makefile.in, tests/api/filter.c, tests/api/tests.c, tests/api/tests.h: Adding unit tests for the Filter API. 2014-10-08 tjsaunders <tjsaunders@blackpearlsystems.com> * doc/howto/BCP.html, doc/modules/mod_auth.html: Minor doc updates, especially a caution for guarding the /proc filesystem. 2014-10-07 TJ Saunders <tj@castaglia.org> * include/options.h: Make the default lingering close timeout be 10 secs, rather than 30 secs; the latter is rather long to wait for lost/wandering data to make its way to a client. 2014-10-07 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for Bug#4110. 2014-10-07 TJ Saunders <tj@castaglia.org> * : Merge pull request #52 from proftpd/core-solaris-conslog-bug4110 Bug#4110 - proftpd on Solaris should use /dev/conslog instead of /dev/lo... 2014-10-05 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Added more regression tests, and tweaked code to add more logging, and to handle additional error cases. This should help remove edge cases where HiddenStores are not properly deleted on error. 2014-10-05 TJ Saunders <tj@castaglia.org> * include/pr-syslog.h, lib/pr-syslog.c: Bug#4110 - proftpd on Solaris should use /dev/conslog instead of /dev/log. 2014-10-05 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/mac.c: Increase buffer sizes where we write out mpints during the key exchange process, for Bug#4112. 2014-10-05 TJ Saunders <tj@castaglia.org> * : commit d2e0461cc51145c71dc1d8a4b48b669a39f5fe1a Author: TJ Saunders <tj@castaglia.org> Date: Sun Oct 5 10:04:22 2014 -0700 2014-10-05 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_ldap.html: Update mod_ldap docs to mention "ldap" trace logging channel, courtesy of Bug#4107. 2014-10-05 TJ Saunders <tj@castaglia.org> * : Merge pull request #50 from proftpd/ldap-more-tracing-bug4107 Bug#4107 - LDAPLog can fill disk on a busy server. Start moving some of... 2014-09-28 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_tls.c: Initial work on PSK support; needs testing. 2014-09-28 TJ Saunders <tj@castaglia.org> * contrib/mod_ldap.c: Bug#4107 - LDAPLog can fill disk on a busy server. Start moving some of the mod_ldap logging into TraceLog. 2014-09-28 TJ Saunders <tj@castaglia.org> * NEWS: Updated NEWS for fix of Bug#4109. 2014-09-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #49 from proftpd/inet-ipv6-tclass-bug4109 Bug#4109 - setsockopt() call for IPV6_TCLASS should use IPPROTO_IPV6. 2014-09-23 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with fix for Bug#4108. 2014-09-23 TJ Saunders <tj@castaglia.org> * : Merge pull request #48 from proftpd/tls-data-conn-handshake-delay-bug4108 Bug#4108 - SSL handshakes for data connections sometimes stall for 3-30 ... 2014-09-21 TJ Saunders <tj@castaglia.org> * : commit cf83753a6564b84f6962f60f2f0b49b4c7a89a97 Author: TJ Saunders <tj@castaglia.org> Date: Sun Sep 21 21:51:56 2014 -0700 2014-09-21 TJ Saunders <tj@castaglia.org> * .travis.yml: Use --enable-devel when building via travis-ci. 2014-09-21 TJ Saunders <tj@castaglia.org> * contrib/mod_deflate.c, modules/mod_memcache.c: Fix build warnings/breakage. 2014-09-21 TJ Saunders <tj@castaglia.org> * : commit d2f5d99fef7a30b3772b48ee4b3a400bf7ef9a65 Author: TJ Saunders <tj@castaglia.org> Date: Sun Sep 21 16:53:03 2014 -0700 2014-09-18 TJ Saunders <tj@castaglia.org> * doc/modules/mod_facts.html: Slightly better anchor name. 2014-09-18 TJ Saunders <tj@castaglia.org> * doc/modules/mod_facts.html: Add FAQ about disabling mod_facts module entirely. 2014-09-14 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c: Increase cipher and MAC buffer sizes, as a (somewhat educated) guess as to what might be causing the issues reported here: https://forums.proftpd.org/smf/index.php/topic,11611.0.html 2014-09-10 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_tls.html: Doc typo. 2014-09-07 TJ Saunders <tj@castaglia.org> * NEWS, contrib/mod_sftp/display.c: Make sure the fix for Bug#4094 is applied to mod_sftp's handling of Display variables as well. 2014-09-07 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keys.c: When loading the hostkey data, stop using the scratch buffer, and start using the provided pool. In limited tests, this appears to help with rekeying. 2014-09-07 TJ Saunders <tj@castaglia.org> * doc/modules/mod_rlimit.html: Add a FAQ section to mod_rlimit, for the RLimitChroot directive. 2014-09-07 TJ Saunders <tj@castaglia.org> * modules/mod_core.c, modules/mod_xfer.c: Start moving toward using 'core.module-reset' event handlers, rather than a POST_CMD HOST handler, for preparing a module for a changed main_server pointer due to a HOST command. 2014-09-04 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS, RELEASE_NOTES: Update NEWS, RELEASE_NOTES for fix for Bug#4098. 2014-09-04 TJ Saunders <tj@castaglia.org> * : Merge pull request #44 from proftpd/sftp-hostkey-perms-bug4098 Bug#4098 - mod_sftp unable to use SFTPHostKey due to being group readable in CentOS 7. 2014-09-03 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keys.c, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add integration/regression test for Bug#4098, and improve the log message when insecure permissions on hostkey files are found. 2014-08-30 TJ Saunders <tj@castaglia.org> * : commit 3e1a5851a7e2c7bcb711328225ffa9898780f2ec Merge: cd85317 a8cc506 Author: TJ Saunders <tj@castaglia.org> Date: Fri Aug 29 08:51:04 2014 -0700 2014-08-29 TJ Saunders <tj@castaglia.org> * NEWS: Updating NEWS. 2014-08-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in: Make sure that if zlib support is lacking, mod_sftp does not to try negotiate compression during the key exchange. 2014-08-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/Makefile.in: Make sure to add -lz, when needed, to the building of a DSO mod_sftp. 2014-08-29 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/Makefile.in, contrib/mod_sftp/compress.c, contrib/mod_sftp/configure, contrib/mod_sftp/configure.in: Improve the detection of zlib support, and handling of the results, for mod_sftp. 2014-08-28 TJ Saunders <tj@castaglia.org> * Make.rules.in, configure, configure.in, contrib/mod_sftp/Makefile.in, contrib/mod_sftp/compress.c, contrib/mod_sftp/configure, contrib/mod_sftp/configure.in, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c: Bug#4102 - Failure to build mod_tls when using static libcrypto due to libdl linker errors. In the course of fixing this issue, I also fixed problems with configure's detection of EC support in OpenSSL, and make it possible for mod_sftp to build without zlib support. 2014-08-27 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/configure, contrib/mod_sftp/configure.in: Fix another place where the libdl linker flag may need to come earlier in the list. 2014-08-27 TJ Saunders <tj@castaglia.org> * configure, configure.in: Bug#4102 - Failure to build mod_tls when using static libcrypto due to libdl linker errors. 2014-08-27 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in: Bug#4098 - mod_sftp unable to use SFTPHostKey due to being group readable in CentOS 7. 2014-08-19 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/kex.c, tests/t/etc/modules/mod_sftp/ssh_host_rsa1024_key, tests/t/etc/modules/mod_sftp/ssh_host_rsa1024_key.pub, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#4097 - SSH rekey fails when using RSA hostkey smaller than 2048 bits. 2014-08-16 TJ Saunders <tj@castaglia.org> * : Merge pull request #41 from proftpd/core-smkdir-only-when-needed Only use the mkdtemp(3) route in pr_fsio_smkdir() if root privs are need... 2014-08-14 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c, include/bindings.h, modules/mod_core.c, src/bindings.c, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: More work on handling the implications of HOST commands in various modules; much more work to be done here. 2014-08-14 TJ Saunders <tj@castaglia.org> * include/ftp.h, modules/mod_core.c, tests/t/lib/ProFTPD/TestSuite/FTP.pm: Create branch for finishing work on supporting the HOST command (Bug#3289). 2014-08-14 TJ Saunders <tj@castaglia.org> * src/fsio.c: Only use the mkdtemp(3) route in pr_fsio_smkdir() if root privs are needed for setting the desired ownership, i.e. UserOwner/GroupOwner are in effect. 2014-08-13 TJ Saunders <tj@castaglia.org> * doc/modules/mod_log.html: Update mod_log docs with a FAQ section, including a FAQ on how to get the ExtendedLog to include the reason why a session was ended. 2014-08-13 TJ Saunders <tj@castaglia.org> * modules/mod_ctrls.c, src/ctrls.c: Stylistic nits; no functional change. 2014-08-13 TJ Saunders <tj@castaglia.org> * configure: Regenerated configure script. 2014-08-13 TJ Saunders <tj@castaglia.org> * configure.in: Adding build summary for static and shared modules; more info will be added in this section. 2014-08-13 TJ Saunders <tj@castaglia.org> * : commit e423841e2d07f72d766baff5fddf094db343ff38 Author: TJ Saunders <tj@castaglia.org> Date: Wed Aug 13 06:42:53 2014 -0700 2014-08-13 TJ Saunders <tj@castaglia.org> * configure.in: Fixed handling of too-many/misplaced colons in --with-shared argument. 2014-08-12 TJ Saunders <tj@castaglia.org> * configure, configure.in, src/fsio.c: Revert previous configure script change; it broke the build for shared modules. Need to reexamine why that feedback was given on GitHub. Also fix a typo causing a compiler warning. 2014-08-12 TJ Saunders <tj@castaglia.org> * configure: Regenerated configure script. 2014-08-12 TJ Saunders <tj@castaglia.org> * configure.in: Review feedback from GitHub. 2014-08-11 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Update NEWS for fix for Bug#4094. 2014-08-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #38 from proftpd/core-display-avail-space-bug4094 Bug#4094 - Available space on file system using %f displays wrong value. 2014-08-11 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Update NEWS for changes for Bug#4030. 2014-08-11 TJ Saunders <tj@castaglia.org> * : Merge pull request #37 from proftpd/auth-negative-cache-bug4030 Bug#4030 - Cache negative/failed Auth API name/ID lookups. 2014-08-11 TJ Saunders <tj@castaglia.org> * include/auth.h, src/auth.c, tests/api/auth.c: Bug#4030 - Cache negative/failed Auth API name/ID lookups. 2014-08-10 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS with fix for Bug#4020. 2014-08-10 TJ Saunders <tj@castaglia.org> * : Merge pull request #36 from proftpd/delay-delayonevent-bug4020 Bug#4020 - Add minimum delay options to mod_delay functionality 2014-08-10 TJ Saunders <tj@castaglia.org> * doc/modules/mod_delay.html, modules/mod_delay.c, tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Bug#4020 - Add minimum delay options to mod_delay functionality. 2014-08-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #35 from proftpd/fsio-getpipebuf-bug4050 Bug#4050 - Use of PIPE_BUF causes build failure on platforms without it. 2014-08-09 TJ Saunders <tj@castaglia.org> * doc/contrib/mod_copy.html, doc/contrib/mod_deflate.html, doc/contrib/mod_dnsbl.html, doc/contrib/mod_geoip.html, doc/contrib/mod_ifsession.html, doc/contrib/mod_rewrite.html, doc/contrib/mod_sftp.html, doc/contrib/mod_snmp.html, doc/contrib/mod_sql.html, doc/contrib/mod_sql_passwd.html, doc/contrib/mod_tls.html, doc/contrib/mod_tls_memcache.html, doc/contrib/mod_tls_shmcache.html, doc/modules/mod_auth_file.html, doc/modules/mod_auth_pam.html, doc/modules/mod_auth_unix.html, doc/modules/mod_ctrls.html, doc/modules/mod_delay.html, doc/modules/mod_dso.html, doc/modules/mod_facl.html, doc/modules/mod_ident.html, doc/modules/mod_xfer.html, modules/mod_auth_pam.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_memcache.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_tls_shmcache.pm: More documentation followup/cleanup for Bug#4054. 2014-08-09 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_passwd.c, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c, doc/contrib/mod_copy.html, doc/contrib/mod_deflate.html, doc/contrib/mod_dnsbl.html, doc/contrib/mod_geoip.html, doc/contrib/mod_ifsession.html, doc/contrib/mod_rewrite.html, doc/contrib/mod_sftp.html, doc/contrib/mod_snmp.html, doc/contrib/mod_sql.html, doc/contrib/mod_sql_passwd.html, doc/contrib/mod_tls.html, doc/contrib/mod_tls_memcache.html, doc/contrib/mod_tls_shmcache.html: Bug#4054 - Ensure that module documentation mentions Trace channel names where applicable. 2014-08-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #34 from proftpd/core-serverident-var-version Support %{version} variable for ServerIdent 2014-08-09 TJ Saunders <tj@castaglia.org> * : Merge pull request #33 from proftpd/sftp-missing-payload-bug4093 Bug#4093 - Improve mod_sftp handling of missing packet payloads. 2014-08-09 TJ Saunders <tj@castaglia.org> * src/session.c, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm: Support a %{version} variable in the ServerIdent value. 2014-08-09 TJ Saunders <tj@castaglia.org> * modules/mod_ctrls.c: Clarify the mod_ctrls message when chown(2) fails to include the local socket path. 2014-08-09 TJ Saunders <tj@castaglia.org> * modules/mod_log.c: Fix handling of ExtendedLogs which log to syslog. 2014-08-08 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding another regression test for Bug#4067, proving that an ExtendedLog using just the READ or WRITE classes properly logs SFTP uploads and downloads, without needing to explicitly include the SFTP class. 2014-08-07 tjsaunders <tjsaunders@blackpearlsystems.com> * RELEASE_NOTES: Minor note, for future fleshing out, about ExtendedLog functionality changes. 2014-08-07 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: Avoid log spam on FreeBSD 10, which is reported to indicate that the IPV6_TCLASS socket option is not usable on IPv6 sockets via EINVAL, rather than the more appropriate ENOPROTOOPT. Sigh. 2014-07-30 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/blacklist.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keystore.c, contrib/mod_sftp/msg.c: Bug#4093 - Improve mod_sftp handling of missing packet payloads. 2014-07-28 tjsaunders <tjsaunders@blackpearlsystems.com> * src/bindings.c: Ignore "unable to accept an incoming connection: Software caused connection abort" messages, as they are almost always caused by TCP probes/health checks from e.g. naive load balancers. 2014-07-28 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Updated NEWS for fix of Bug#4091. 2014-07-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #32 from proftpd/core-privs-error-logging-bug4091 Bug#4091 - Log "Operation not permitted" privs errors at NOTICE rather t... 2014-07-27 TJ Saunders <tj@castaglia.org> * src/privs.c: Bug#4091 - Log "Operation not permitted" privs errors at NOTICE rather than ERROR. 2014-07-25 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS, contrib/mod_wrap2_file.c: Update NEWS for fix of Bug#4090. 2014-07-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #31 from proftpd/wrap2-file-ipv6-addr-bug4090 Bug#4090 - mod_wrap2_file does not support IPv6 addresses properly. 2014-07-25 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Updated NEWS with fix for Bug#4089. 2014-07-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #30 from proftpd/sftp-auth-multiple-attempts-bug4089 Bug#4089 - mod_sftp does not allow multiple attempts using a given 2014-07-19 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS for fix for Bug#4087. 2014-07-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #29 from proftpd/sftp-maxloginattempts-none-bug4087 Bug#4087 - mod_sftp does not handle "MaxLoginAttempts none" properly. 2014-07-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/mod_sftp.h.in: Keep the mod_sftp version string format consistently using three digits, and use "1.0.0" instead of "1.0". 2014-07-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.h.in: Fix SFTPLog message if LINK request fails. Bump mod_sftp version, due to fixed LINK handling (and other fixes). 2014-07-16 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/auth.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#4087 - mod_sftp does not handle "MaxLoginAttempts none" properly. 2014-07-16 TJ Saunders <tj@castaglia.org> * tests/t/etc/modules/mod_sftp/authorized_rsa_keys2, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test of publickey SSH authentication, where the key is stored as the 2nd key in the file. 2014-07-09 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp_pam.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_pam.pm: Add louder logging for when mod_sftp_pam denies a login, along with a regression test that tickles this behavior. 2014-07-08 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add regression test for SQLUserInfo which returns NULL for the uid/gid columns; this ensures that a) mod_sql doesn't segfault on such return values, and b) that the SQLDefaultUID/SQLDefaultGID values are used. 2014-07-06 TJ Saunders <tj@castaglia.org> * NEWS: Updated NEWS with fix of Bug#4081. 2014-07-06 TJ Saunders <tj@castaglia.org> * : Merge pull request #28 from proftpd/sftp-symlink-rel-path-bug4081 Bug#4081 - Not possible to create relative symlinks with SFTP. 2014-07-05 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c, modules/mod_log.c: Add support for the %{file-offset} variable to mod_sql (and the missing %{file-modified} variable). Fixed formatting/printing of %{file-offset} for ExtendedLog. 2014-07-05 TJ Saunders <tj@castaglia.org> * NEWS: Updating NEWS for Bug#4084. 2014-07-05 TJ Saunders <tj@castaglia.org> * : Merge pull request #27 from proftpd/ls-nlst-glob-recursion-bug4084 Bug#4084 - "NLST *" returns files from subdirectories. 2014-07-05 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Bug#4084 - "NLST *" returns files from subdirectories. 2014-07-05 TJ Saunders <tj@castaglia.org> * tests/t/config/maxtransfersperhost.t, tests/t/config/maxtransfersperuser.t, tests/t/lib/ProFTPD/Tests/Config/MaxTransfersPerHost.pm, tests/t/lib/ProFTPD/Tests/Config/MaxTransfersPerUser.pm, tests/tests.pl: Adding regression tests for the MaxTransfersPerHost and MaxTransfersPerUser directives. 2014-07-03 TJ Saunders <tj@castaglia.org> * doc/modules/mod_auth.html, doc/modules/mod_xfer.html: Fill in missing descriptions for the MaxClients* and MaxTransfers* directives. 2014-07-02 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Updating NEWS for Bug#4083. 2014-07-02 TJ Saunders <tj@castaglia.org> * : Merge pull request #26 from proftpd/sql-defaulthomedir-empty-home-bug4083 Bug#4083 - Using SQLDefaultHomedir with null home results in "No such user" 2014-07-02 TJ Saunders <tj@castaglia.org> * contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#4083 - Using SQLDefaultHomedir with null home results in "No such user". 2014-06-26 TJ Saunders <tj@castaglia.org> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding regression test for particular mod_ifsession config, based on reports from the forums. 2014-06-26 TJ Saunders <tj@castaglia.org> * modules/mod_log.c: Fix bug in the handling of ExtendedLog class name parsing, introduced as part of the change for Bug#4067. 2014-06-24 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c, modules/mod_xfer.c: Stash the file-offset note for SCP transfers as well. Fix up misleading comments. 2014-06-24 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, include/mod_log.h, modules/mod_log.c, modules/mod_xfer.c: Add support for a new %{file-offset} LogFormat variable, to store the file offset at which a file transfer (upload or download) starts. 2014-06-24 TJ Saunders <tj@castaglia.org> * : Merge pull request #25 from proftpd/core-cmd-errno-note Stash an errno value for all commands, for use by e.g. auditing modules 2014-06-23 TJ Saunders <tj@castaglia.org> * : commit 7d818268492254c9ee32f5ef4ab24edc04fe2a7e Author: tjsaunders <tjsaunders@blackpearlsystems.com> Date: Mon Jun 23 09:34:29 2014 -0700 2014-06-23 TJ Saunders <tj@castaglia.org> * : Merge pull request #24 from proftpd/sftp-symlink-order-bug4080 Bug#4080 - mod_sftp does not implement SFTP LINK request properly. 2014-06-22 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c, src/fsio.c, tests/api/fsio.c: Bug#4080 - mod_sftp does not implement SFTP LINK request properly. 2014-06-20 tjsaunders <tjsaunders@blackpearlsystems.com> * doc/modules/mod_rlimit.html: Adding clarifying comments about RLimitChroot. 2014-06-20 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Update NEWS for fix for Bug#4079. 2014-06-20 TJ Saunders <tj@castaglia.org> * : Merge pull request #23 from proftpd/sftp-space-available-bug4079 Bug#4079 - Invalid response encoding for SFTP space-available request. 2014-06-20 TJ Saunders <tj@castaglia.org> * contrib/mod_sftp/fxp.c: Bug#4079 - Invalid response encoding for SFTP space-available request. 2014-06-19 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c: Add trace message of when REST offset exceeds file size, containg the requested offset and the file size in question. 2014-06-19 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c, src/netio.c, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Adding regression tests for the behavior reported in Bug#4035, and tweaking the code to handle these cases. 2014-06-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #21 from proftpd/exec-execenable-per-directory-bug4076 Bug#4076 - Ability to disable mod_exec on a per-directory basis. 2014-06-19 TJ Saunders <tj@castaglia.org> * : commit 37569a94b3156be8f732741774702bb3fe5136be Author: tjsaunders <tjsaunders@blackpearlsystems.com> Date: Thu Jun 19 18:36:35 2014 -0700 2014-06-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #20 from proftpd/shaper-log-sighup-bug4077 Bug#4077 - ShaperLog not closed/reopened on SIGHUP, causing log rotation 2014-06-19 TJ Saunders <tj@castaglia.org> * : commit f214df3fd415cb9ce2cb6fd74bd85caa5b0ecc46 Author: TJ Saunders <tj@castaglia.org> Date: Thu Jun 19 07:54:37 2014 -0700 2014-06-18 TJ Saunders <tj@castaglia.org> * : Merge pull request #22 from proftpd/auth-addl-failure-reasons-bug4070 Bug#4070 - Support wider range of authentication failures. 2014-06-18 TJ Saunders <tj@castaglia.org> * : commit 5027925f5133e3d911eb7af27672fe45bda2818d Author: TJ Saunders <tj@castaglia.org> Date: Wed Jun 18 21:50:26 2014 -0700 2014-06-18 TJ Saunders <tj@castaglia.org> * contrib/mod_ldap.c, src/auth.c, tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm: Something shifted that is causing mod_ldap login troubles; making some tweaks to hopefully narrow down the issue. 2014-06-18 TJ Saunders <tj@castaglia.org> * doc/modules/mod_facts.html: Mention, in the mod_facts docs, how to build that module as a shared module. 2014-06-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/stash.c: Address more travis-ci compiler warnings. 2014-06-18 tjsaunders <tjsaunders@blackpearlsystems.com> * src/pidfile.c: Remember to set errno if opening the PidFile fails. This fixes a compiler warning detected by travis-ci. 2014-06-18 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Update NEWS with mention of Bug#4073. 2014-06-18 TJ Saunders <tj@castaglia.org> * : Merge pull request #19 from proftpd/tls-implicitssl-download-bug4073 Bug#4073 - Polycom VOIP phones unable to use FTPS data transfers. 2014-06-17 TJ Saunders <tj@castaglia.org> * include/auth.h, modules/mod_auth.c, modules/mod_auth_pam.c: Bug#4070 - Support wider range of authentication failures. 2014-06-17 TJ Saunders <tj@castaglia.org> * contrib/mod_exec.c, doc/contrib/mod_exec.html, tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Bug#4076 - Ability to disable mod_exec on a per-directory basis. 2014-06-17 TJ Saunders <tj@castaglia.org> * include/cmd.h, src/cmd.c, tests/api/cmd.c: Start working on stashing the errno value for every command in the cmd->notes table. This will allow modules (such as audit modules for Bug#3807) access to that errno value, for tracking/logging. 2014-06-17 TJ Saunders <tj@castaglia.org> * contrib/mod_shaper.c: Bug#4077 - ShaperLog not closed/reopened on SIGHUP, causing log rotation problems. 2014-06-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c: Remove unnecessary comment. 2014-06-17 TJ Saunders <tj@castaglia.org> * contrib/mod_tls.c, modules/mod_xfer.c: Bug#4073 - Polycom VOIP phones unable to use FTPS data transfers. 2014-06-17 TJ Saunders <tj@castaglia.org> * : Merge pull request #18 from proftpd/ls-stat-response-codes-bug3990 Fix regression for Bug#3990 2014-06-17 TJ Saunders <tj@castaglia.org> * modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/STAT.pm: Fix the handling of the response code for STAT commands, fixing a regression caused by the previous commits for Bug#3990. 2014-05-30 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS: Update NEWS for Bug#4063. 2014-05-30 TJ Saunders <tj@castaglia.org> * : Merge pull request #16 from proftpd/fsio-smkdir-cifs-eacces-bug4063 Bug#4063 - Unable to create directory on NFS/CIFS partition: Permission... 2014-05-30 TJ Saunders <tj@castaglia.org> * : Merge pull request #17 from proftpd/ls-nlst-opt-a-wrong-directory-bug4069 Bug#4069 - NLST -a shows / directory instead of the current directory. 2014-05-30 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_ls.c: Bug#4069 - NLST -a shows / directory instead of the current directory. 2014-05-29 tjsaunders <tjsaunders@blackpearlsystems.com> * src/fsio.c: Bug#4063 - Unable to create directory on NFS/CIFS partition: Permission denied. 2014-05-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #15 from proftpd/auth-anon-maxclients-bug4068 Bug#4068 - MaxClients directive doesn't work for <Anonymous> sessions. 2014-05-29 tjsaunders <tjsaunders@blackpearlsystems.com> * : commit cd89bc454ba0e3655b01a79ca32cc342595bdd46 Author: tjsaunders <tjsaunders@blackpearlsystems.com> Date: Thu May 29 09:57:31 2014 -0700 2014-05-29 TJ Saunders <tj@castaglia.org> * : Merge pull request #14 from proftpd/sftp-extlog-class-bug4067 ExtendedLog classes for SSH, SFTP (Bug#4067) 2014-05-29 tjsaunders <tjsaunders@blackpearlsystems.com> * modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Better implementation of logging class exclusion, and tested with regression tests, including the new SSH and SFTP logging classes. 2014-05-28 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS, RELEASE_NOTES, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/service.c, include/modules.h, modules/mod_log.c: Bug#4067 - Create ExtendedLog class for SFTP requests. 2014-05-28 tjsaunders <tjsaunders@blackpearlsystems.com> * doc/modules/mod_core.html: Update ServerIdent description to mention the supported variables, and add description for the ServerName directive. 2014-05-28 tjsaunders <tjsaunders@blackpearlsystems.com> * NEWS, doc/contrib/mod_sftp.html: Update NEWS, mod_sftp docs for Bug#4065. 2014-05-28 TJ Saunders <tj@castaglia.org> * : Merge pull request #13 from proftpd/sftp-banner-environ-variable-bug4065 Bug#4065 - mod_sftp should provide the SSH client banner as environment variable, for logging 2014-05-27 tjsaunders <tjsaunders@blackpearlsystems.com> * contrib/mod_sftp/mod_sftp.c: Bug#4065 - mod_sftp should provide the SSH client banner as environment variable, for logging. 2014-05-27 tjsaunders <tjsaunders@blackpearlsystems.com> * doc/contrib/mod_sftp.html: Improved formatting for mod_sftp environment variables. 2014-05-27 TJ Saunders <tj@castaglia.org> * : Merge pull request #12 from proftpd/scoreboard-entry-locking-bug3823 Attempt to mitigate possible cause for Bug#3823 by replacing use of F_SE... 2014-05-27 TJ Saunders <tj@castaglia.org> * src/scoreboard.c: Attempt to mitigate possible cause for Bug#3823 by replacing use of F_SETLKW when updating scoreboard entries to F_SETLK, and handling interruptions. This should reduce any (potentially long) blocking behaviors. 2014-05-26 TJ Saunders <tj@castaglia.org> * : Merge pull request #11 from proftpd/signals-refactoring Refactor the signal-handling code out of src/main.c, and into its own so... 2014-05-25 TJ Saunders <tj@castaglia.org> * include/conf.h: Previous merge forgot to include the new configdb header. 2014-05-25 TJ Saunders <tj@castaglia.org> * : Merge pull request #10 from proftpd/dirtree-refactoring Refactor the src/dirtree.c file into smaller chunks, one for the pr_conf... 2014-05-24 TJ Saunders <tj@castaglia.org> * : Merge pull request #9 from proftpd/hiddenstores-pid-variable-bug4062 Bug#4062 - Support PID variable in HiddenStores filename. 2014-05-24 TJ Saunders <tj@castaglia.org> * include/log.h, src/log.c, src/main.c: Fix slight regression in logging behavior due to changes for Bug#3983. If the -d command-line option is used, then make sure the default syslog level is DEBUG, so that the requested debug logging appears. 2014-05-24 TJ Saunders <tj@castaglia.org> * modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Bug#4062 - Support PID variable in HiddenStores filename. 2014-05-24 TJ Saunders <tj@castaglia.org> * modules/mod_auth_file.c: Sprinkle more signal handling in potentially long while() loops when handling AuthUserFiles and AuthGroupFiles. 2014-05-24 TJ Saunders <tj@castaglia.org> * modules/mod_auth_file.c: Fix ordering of handlers in mod_auth_file; no functional change. 2014-05-24 TJ Saunders <tj@castaglia.org> * modules/mod_auth_file.c, modules/mod_auth_unix.c: Use better trace channel names in the provided auth modules. 2014-05-24 TJ Saunders <tj@castaglia.org> * modules/mod_auth_file.c: Comment typo fixed. No functional change. 2014-05-24 TJ Saunders <tj@castaglia.org> * : Merge pull request #8 from proftpd/snmp-multiple-agent-addrs-bug4061 Bug#4061 - SNMPAgent should support multiple addresses, including IPv6 2014-05-23 TJ Saunders <tj@castaglia.org> * : Merge pull request #7 from proftpd/aix-build-errors Fix AIX build issues, as reported in the forums; see: 2014-05-21 TJ Saunders <tj@castaglia.org> * : Merge pull request #6 from proftpd/symtab-hash-comparison When storing symbols in the symbol table hash ("stash"), stop storing al... 2014-05-21 TJ Saunders <tj@castaglia.org> * contrib/mod_ctrls_admin.c, contrib/mod_quotatab_ldap.c, contrib/mod_quotatab_radius.c, contrib/mod_quotatab_sql.c, contrib/mod_ratio.c, contrib/mod_sftp_sql.c, contrib/mod_sql_passwd.c, contrib/mod_wrap2_sql.c, include/dirtree.h, include/stash.h, src/auth.c, src/cmd.c, src/main.c, src/modules.c, src/parser.c, src/stash.c, tests/api/stash.c: When storing symbols in the symbol table hash ("stash"), stop storing all symbol types (CMD, CONF, AUTH, and HOOK) all in the same table. Instead, have different tables for each different type. This makes it faster when looking up (by name) a symbol of a given type; less symbol names to grovel through and compare. And speaking of symbol comparisons, this change also stores the hash value (of the symbol name) as part of the symbol data. Thus when doing symbol lookups, the hash value is compared FIRST, and only if that value matches will the more in-depth comparison (by name length, name content) be done. The overall effect should be a net gain in speed (less latency when dispatching e.g. commands, auth lookups, parsing), and a drop in CPU (due to fewer string comparisons hopefully). 2014-05-20 TJ Saunders <tj@castaglia.org> * : Merge pull request #5 from proftpd/parser-pidfile-unit-tests Add unit tests for the Pidfile API, and start working on tests for the 2014-05-19 TJ Saunders <tj@castaglia.org> * : Merge pull request #4 from proftpd/trace-unit-tests Adding unit tests for the Trace API; fixed some minor bugs found while 2014-05-18 TJ Saunders <tj@castaglia.org> * .gitignore: A few more files for git to ignore. 2014-05-18 TJ Saunders <tj@castaglia.org> * src/main.c: Stylistic nit; no functional change. 2014-05-18 TJ Saunders <tj@castaglia.org> * : Merge pull request #3 from proftpd/clang-warnings Clean up some warnings spotted by travis-ci's clang build. 2014-05-18 TJ Saunders <tj@castaglia.org> * : Merge pull request #2 from proftpd/radius-timeout-parsing Update mod_radius to use pr_str_get_duration() for parsing timeout strin... 2014-05-18 TJ Saunders <tj@castaglia.org> * contrib/mod_radius.c: Update mod_radius to use pr_str_get_duration() for parsing timeout strings for the RadiusAuthServer and RadiusAcctServer directives. Fixed stylistic nits while there. 2014-05-18 TJ Saunders <tj@castaglia.org> * Makefile.in: Clean up the .git/ directory, and .gitignore and .travis.yml files, when preparing a release. 2014-05-18 TJ Saunders <tj@castaglia.org> * .cvsignore, contrib/.cvsignore, contrib/mod_dnsbl/.cvsignore, contrib/mod_load/.cvsignore, contrib/mod_sftp/.cvsignore, contrib/mod_snmp/.cvsignore, contrib/mod_wrap2/.cvsignore, include/.cvsignore, lib/.cvsignore, lib/libcap/.cvsignore, locale/.cvsignore, modules/.cvsignore, src/.cvsignore, tests/.cvsignore, tests/api/.cvsignore, tests/array.c, tests/class.c, tests/env.c, tests/event.c, tests/expr.c, tests/feat.c, tests/modules.c, tests/netacl.c, tests/netaddr.c, tests/pool.c, tests/regexp.c, tests/scoreboard.c, tests/sets.c, tests/str.c, tests/stubs.c, tests/table.c, tests/tests.c, tests/tests.h, tests/timers.c, tests/var.c, tests/version.c, utils/.cvsignore: Clean up more files from the cvs2git conversion. 2014-05-18 TJ Saunders <tj@castaglia.org> * NEWS: Update NEWS. 2014-05-18 TJ Saunders <tj@castaglia.org> * : Merge pull request #1 from proftpd/stat-response-code-bug3990 Bug#3990 - Use 213 response code for STAT on a file. We also use 212 fo... 2014-05-18 TJ Saunders <tj@castaglia.org> * contrib/mod_quotatab.c: Style nits; no functional change. 2014-05-18 TJ Saunders <tj@castaglia.org> * tests/api/cmd.c: Remove unused variable. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Disable the static code analyzers, for now; they can be re-enabled when needed. Do another configure/build, this time with all modules being shared, rather than static. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Have cppcheck write to stdout its errors. Use normal email notifications (i.e. committer). 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Skip checking header files, and unit test files, when performing static code analysis. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Still wrestling with cppcheck. Sigh. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Fix the cppcheck arguments. Enable PCRE support. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: More tweaks to the static code analysers. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Use the direct email address to the -committers list. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Keep cppcheck from scanning *every* file; use find to tell it which file to scan. Break the `make' and `make check-api' steps onto separate lines, for legibility. 2014-05-18 TJ Saunders <tj@castaglia.org> * .travis.yml: Start commenting the travis-ci config file. Add some static code analysis in. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Direct email notifications of build success/failures to the proftp-committers list. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Enable memcache support. 2014-05-17 TJ Saunders <tj@castaglia.org> * contrib/mod_sql_postgres.c: Fix another build warning spotted by travis-ci. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Make the dependency installations a little easier to read. Build the MySQL and Postgres modules. Install gettext, so that we can use --enable-nls. 2014-05-17 TJ Saunders <tj@castaglia.org> * contrib/mod_snmp/asn1.c, contrib/mod_snmp/notify.c, contrib/mod_snmp/smi.c, contrib/mod_sql_sqlite.c, src/log.c: Clean up build warnings spotted by travis-ci. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Now install the check library, to enable the API/unit tests -- and run them. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Need the PAM libraries/headers for some modules. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Build mod_geoip as well; we'll need its geoip library dependency as well. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Install more dependencies, and build more modules, via travis-ci. 2014-05-17 TJ Saunders <tj@castaglia.org> * .travis.yml: Add a .travis.yml file, to start using travis-ci for continuous build/integration. I'm sure we'll get fancier over time. 2014-05-17 TJ Saunders <tj@castaglia.org> * src/data.c: Forgot to update copyright dates with last modification. 2014-05-17 TJ Saunders <tj@castaglia.org> * NEWS, src/log.c: Bug#3983 - Change default SyslogLevel to be NOTICE rather than DEBUG. 2014-05-17 TJ Saunders <tj@castaglia.org> * NEWS, src/data.c, src/inet.c, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Bug#3944 - Session closed if active data transfer fails due to "Address already in use" error. 2014-05-17 TJ Saunders <tj@castaglia.org> * src/netaddr.c: Avoid null pointer dereference for interfaces with no addresses. 2014-05-17 TJ Saunders <tj@castaglia.org> * po/Makefile.in: Remove unused po/ directory; it came back with the cvs2git conversion. 2014-05-17 TJ Saunders <tj@castaglia.org> * NEWS: Bug#4055 - "error setting listen fd IPV6_TCLASS: Protocol not available" log message. 2014-05-17 TJ Saunders <tj@castaglia.org> * : commit 3fd34befa71cdc41bc1375b243a18e8837ee76d0 Author: tjsaunders <tjsaunders@blackpearlsystems.com> Date: Fri May 16 09:53:25 2014 -0700 2014-05-16 tjsaunders <tjsaunders@blackpearlsystems.com> * .gitignore: Improving the .gitignore file. 2014-05-16 tjsaunders <tjsaunders@blackpearlsystems.com> * .gitignore: Adding .gitignore file. 2014-05-16 tjsaunders <tjsaunders@blackpearlsystems.com> * src/inet.c: Bug#4055: Ignore any ENOPROTOOPT errors when setting the IPv6 TCLASS (TOS) flags on the socket; they make for noisier logging without providing any actual value to the user/admin. 2014-05-16 tjsaunders <tjsaunders@blackpearlsystems.com> * include/version.h: Bump version to reflect new release cycle. 2014-05-15 castaglia <castaglia> * NEWS: Preparing for release. 2014-05-15 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2014-05-15 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing files for release. 2014-05-15 castaglia <castaglia> * locale/files.txt: Updated list of files for localization. 2014-05-09 castaglia <castaglia> * RELEASE_NOTES: Fleshing out release notes for upcoming release. 2014-05-05 castaglia <castaglia> * contrib/mod_sql_passwd.c: Use sql_log() instead of pr_log_debug(), so that the logging is consistently done in the module. There may still be a few outliers. 2014-05-04 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Updated SQLPasswordPBKDF2 docs in light of Bug#4052. 2014-05-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Added regression test for Bug#4052. 2014-05-04 castaglia <castaglia> * NEWS, contrib/mod_sql_passwd.c: Bug#4052 - Enhance SQLPasswordPBKDF2 to support per-user query for settings. 2014-05-04 castaglia <castaglia> * doc/contrib/mod_site_misc.html: Emphasize that both acces and mod times are set by SITE UTIME. 2014-05-04 castaglia <castaglia> * NEWS, modules/mod_facl.c: Bug#4044 - mod_facl prevents a normal SIGHUP reload. 2014-05-03 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#4042 - MIC command between RNFR and RNTO should not be rejected. 2014-05-02 castaglia <castaglia> * NEWS, contrib/mod_exec.c: Bug#4049 - mod_exec should include supplemental groups when running commands as logged-in user. 2014-04-30 castaglia <castaglia> * contrib/mod_ban.c: As a follow-on to the fix for Bug#4048, add some "headroom" to the SHM segment, to allow for multiple racing/competing processes incrementing indices. 2014-04-30 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#4048 - Race condition in mod_ban can lead to segfault of all new connections. 2014-04-28 castaglia <castaglia> * modules/mod_xfer.c: Slightly better fix for Bug#4046; less chance of overflowing the off_t datatype on filesystems with lots of free space. 2014-04-28 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#4046 - ALLO command failed because of bad size check. 2014-03-26 castaglia <castaglia> * doc/howto/TLS.html: Typo. 2014-03-19 castaglia <castaglia> * contrib/mod_tls.c: Bug#4039 - Fix compile error in mod_tls, when built using newer OpenSSL versions. This is a regression caused by Bug#4029. 2014-03-13 castaglia <castaglia> * doc/howto/Chroot.html: Fix broken link, per Bug#4038. 2014-03-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm: Adding some regression tests for the DeleteAbortedStores directive, for when timeouts kick in and kill the session. 2014-03-08 castaglia <castaglia> * modules/mod_xfer.c: If a session dies in the middle of a data transfer, make sure that the path in the fake cmd_rec is correct. It was empty, which led to some misleading logging. 2014-03-08 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#4024 - TLS 1.1/1.2 configurable, but not properly implemented. 2014-03-05 castaglia <castaglia> * contrib/mod_tls.c: When seeding OpenSSL's PRNG manually, use gettimeofday(2) instead of time(3). 2014-03-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for Bug#4034. 2014-03-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c: Bug#4034 - SSH publickey authentication fails with "MaxLoginAttempts 1". 2014-03-03 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add mod_sftp FAQ about pointing an SSH client (*not* SFTP or SCP) at mod_sftp, and why that connection would fail. 2014-03-02 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the AllowInsecureLogin SFTPOption. 2014-03-02 castaglia <castaglia> * contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in: Add a new SFTPOption, called 'AllowInsecureLogin'. This is needed for sites which wish to use/allow SSH2 logins that use the 'none' cipher or digest (hopefully just for performance testing). 2014-03-02 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#4032 - Restarting proftpd with mod_sftp fails due to permissions on SFTPHostKey file. 2014-03-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the mod_sftp regression tests which SHOULD have caught Bug#4033. 2014-03-02 castaglia <castaglia> * NEWS, contrib/mod_sftp/cipher.c: Bug#4033 - mod_sftp fails to create SSH2 session using 'none' cipher. 2014-03-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Added regression test for Bug#3938. 2014-03-01 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3938 - mod_wrap2 uses reverse DNS regardless "UseReverseDNS off". 2014-02-28 castaglia <castaglia> * tests/t/config/passiveports.t, tests/t/lib/ProFTPD/Tests/Config/PassivePorts.pm, tests/tests.pl: Added regression tests for the PassivePorts directive in various configuration contexts, i.e. "server config", <Global>, and <VirtualHost>. 2014-02-28 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#4029 - TLSOptions EnableDiags logs "unknown version (771)" for TLS 1.1/1.2 connections. 2014-02-23 castaglia <castaglia> * contrib/mod_ban.c: Minor name/string change; no functional change. 2014-02-23 castaglia <castaglia> * contrib/mod_ban.c, tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Allow for custom, user-specified event names in the BanOnEvent directive. This will make it easier to support rules for events other than the ones that are specially handled, and ease the need to add special handling in the future. 2014-02-23 castaglia <castaglia> * doc/contrib/mod_ban.html: Added support for RootLogin bans. 2014-02-23 castaglia <castaglia> * contrib/mod_ban.c, tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Make it possible to ban clients which attempt to login as root. 2014-02-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding reproduction recipe/regression test for Bug#4026. 2014-02-19 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add "Cipher Implementations" section to "Known Client Issues", noting that SBB clients don't handle the blowfish-ctr cipher. 2014-02-18 castaglia <castaglia> * doc/contrib/mod_sftp.html: Fix typo/misnamed cipher in list. 2014-02-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding regression test for Bug#4025. 2014-02-15 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#4025 - <IfClass> sections do not work for multiple SQLLog directives. 2014-02-15 castaglia <castaglia> * contrib/mod_sql.c: If SQLEngine is not configured, then DO emit the "no SQLAuthTypes configured" log message if necessary. Previous commit would not have handled the case where SQLEngine was not explicitly set. 2014-02-15 castaglia <castaglia> * contrib/mod_sql.c: If "SQLEngine log" is configured, then do NOT log a message saying "error: no SQLAuthTypes configured". Stylistic nits addressed while there. 2014-02-11 castaglia <castaglia> * NEWS, src/fsio.c: Bug#4022 - "Directory not empty" error when creating directory is misleading. 2014-02-11 castaglia <castaglia> * src/stash.c: Fix minor compiler warning when --enable-devel is used. 2014-02-09 castaglia <castaglia> * modules/mod_delay.c: The regression tests caught a small regression in mod_delay, where the fix for Bug#3622 was reverted partly by the fixes for Bug#3970. 2014-02-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Another MKD test, making sure that using a preceding CWD doesn't gum up the works. Also makes for a nice testbed for pr_fsio_smkdir() issues. 2014-02-09 castaglia <castaglia> * src/fsio.c: Add more logging of error conditions in the pr_fsio_smkdir() function, for better diagnosing some reported MKD errors. 2014-02-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Yet another data point/reproduction recipe for Bug#4017. 2014-02-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/SocketOptions.pm: Add basic test for SocketOption keepalive. 2014-02-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Additional regression/reproduction recipe for Bug#4017, this time using PCRE regexes. 2014-02-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Regression test/reproduction recipe for Bug#4017. 2014-02-01 castaglia <castaglia> * contrib/mod_tls.c: Update mod_tls to start using the pr_netio_t notes table for stashing/retrieving its SSL objects, rather than the strm_data void pointer. The table is more flexible, and allows for other code to use the keys as needed. 2014-01-31 castaglia <castaglia> * modules/mod_rlimit.c, tests/t/lib/ProFTPD/Tests/Config/RLimitChroot.pm: Allow for per-user (via <IfUser>) setting of the RLimitChroot directive. 2014-01-31 castaglia <castaglia> * doc/modules/mod_rlimit.html: Add description for new RLimitChroot directive to mod_rlimit docs. 2014-01-31 castaglia <castaglia> * src/fsio.c: Match URLs for "Roaring Beast" reports. 2014-01-31 castaglia <castaglia> * tests/t/config/rlimitchroot.t, tests/t/lib/ProFTPD/Tests/Config/RLimitChroot.pm, tests/tests.pl: Adding regression tests for the new RLimitChroot directive. 2014-01-31 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/fsio.h, modules/mod_rlimit.c, src/fsio.c: Bug#4018 - Implement checks for sensitive directories when chrooted. 2014-01-30 castaglia <castaglia> * doc/modules/mod_core.html: Add description of SocketBindTight directive to mod_core docs, and include FAQ about using it. 2014-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Adding regression/reproduction recipe for Bug#4017. 2014-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix broken (only on MacOSX) test. 2014-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Minor tweaks while investigating Bug#3638. 2014-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Updated mod_tls tests to work around bug in Net-FTPSSL version 0.21's quot() implementation. 2014-01-28 castaglia <castaglia> * include/version.h: Updating version for CVS. 2014-01-28 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2014-01-28 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Prepping files for RC. 2014-01-28 castaglia <castaglia> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/umac.c: Allow mod_sftp to be compiled using an old version of OpenSSL, e.g. OpenSSL-0.9.6. Fixes Bug#4016. 2014-01-28 castaglia <castaglia> * contrib/mod_tls.c: Enable mod_tls to be built using old OpenSSL version; tested using OpenSSL-0.9.6h. 2014-01-27 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Try to make the Installation notes for mod_quotatab a little clearer. 2014-01-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Quell compiler warning about redefined variables. 2014-01-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Quell compiler warning about overloaded variables. 2014-01-27 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Copy-pasto was blocking the setting of different values for the (as-yet) little used test_setup() function. 2014-01-27 castaglia <castaglia> * tests/api/str.c: With this tweak (of debatable and investigatable value), all of the API tests now pass on my old Linux machine. 2014-01-27 castaglia <castaglia> * tests/api/netaddr.c: Make the INCL_DEVICE API test a little more resilient by providing some fallback device names. 2014-01-27 castaglia <castaglia> * src/fsio.c, tests/api/cmd.c: The API testsuite found some places where we were not properly checking for null strings, which might lead to segfaults. 2014-01-27 castaglia <castaglia> * tests/Makefile.in, tests/api/stubs.c: Make sure the API testsuite compiles properly when --enable-nls is used. 2014-01-27 castaglia <castaglia> * contrib/mod_snmp/db.c: Quell compiler warning about unused variable. 2014-01-27 castaglia <castaglia> * RELEASE_NOTES, doc/howto/Radius.html, doc/howto/index.html: Adding (finally!) RADIUS howto. 2014-01-26 castaglia <castaglia> * contrib/mod_ban.c: Typo in comment; no functional change. 2014-01-25 castaglia <castaglia> * modules/mod_core.c: Make sure to handle the case where units aren't specified properly. 2014-01-25 castaglia <castaglia> * NEWS, include/options.h, modules/mod_core.c, src/main.c, tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm: Bug#4014 - CommandBufferSize should override PR_DEFAULT_CMD_BUFSZ. 2014-01-24 castaglia <castaglia> * contrib/mod_tls.c: Bug#4015 - Possible bad/ambiguous expression found by static code analyzer cppcheck. 2014-01-22 castaglia <castaglia> * doc/howto/TLS.html: Updates to the TLS howto, adding some FAQs and noting that secure FXP transfers are now supported. 2014-01-22 castaglia <castaglia> * doc/howto/SQL.html: Add more links from the SQL howto to the mod_sql docs, and add more substance to the "min ID" question, pointing out the default UID/GID values. 2014-01-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Update AuthGroupFile world-readable test to match changes to the permissions checking code. 2014-01-22 castaglia <castaglia> * modules/mod_auth_file.c: Alter the permission checks (per Bug#3892) to allow world-readable AuthGroupFiles; there's no sensitive information in there. 2014-01-22 castaglia <castaglia> * doc/modules/mod_auth_file.html: Improve/expand on the FAQ about permissions. 2014-01-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Adding regression test for Bug#4010 (which, I think, is actually a client bug). 2014-01-21 castaglia <castaglia> * RELEASE_NOTES: Update release notes, getting them ready for a release. 2014-01-21 castaglia <castaglia> * doc/contrib/mod_exec.html: Update the ExecOnEvent description to match the code. 2014-01-21 castaglia <castaglia> * doc/contrib/mod_sql.html: Note when the IgnoreConfigFile SQLOption first appeared. 2014-01-21 castaglia <castaglia> * doc/contrib/mod_ldap.html: Add description for LDAPLog directive to mod_ldap docs. 2014-01-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression test for Bug#4013. 2014-01-20 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#4013 - SCP upload of shorter file does not completely overwrite existing file of same name. 2014-01-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Adding regression tests for several NLST bugs, including Bug#4011. 2014-01-20 castaglia <castaglia> * NEWS, include/fsio.h, modules/mod_ls.c, src/fsio.c, tests/api/fsio.c: Bug#4011 - NLST ../ shows current directory contents rather than parent directory. 2014-01-17 castaglia <castaglia> * configure: Updated configure. 2014-01-17 castaglia <castaglia> * configure.in: Fix default location of datadir to be '/usr/local/share', not '/usr/locale/share'. 2014-01-17 castaglia <castaglia> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make sure that SFTP CLOSE requests are logged as either READ or WRITE requests as appropriate (per the ExtendedLog logging classes), but not both. 2014-01-13 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update SFTPClientMatch description for 'sftpUTF8ProtocolVersion', noting the NLS requirement. Also add FAQ about this, with regard to accepted protocol versions. 2014-01-13 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: If the 'sftpUTF8ProtocolVersion' SFTPClientMatch key is used, AND the proftpd has not been compiled with --enable-nls, then display a more informative error about this situation, instead of acting as if 'sftpUTF8ProtocolVersion' is unknown. 2014-01-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Tweaks to the mod_tls testsuite to make it pass (more) on my Mac; I think it's related to the version of Net::FTPSSL being used. 2014-01-06 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#4006 - RADIUS "service-type" attribute encoded with wrong length on 64-bit system. 2014-01-06 castaglia <castaglia> * tests/Makefile.in, tests/api/netio.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Adding API tests for the NetIO API, focusing heavily on the pr_netio_telnet_gets() function. 2014-01-06 castaglia <castaglia> * include/netio.h, src/netio.c: Make the function for allocating and attaching a pr_buffer_t to a NetIO stream public. 2014-01-03 castaglia <castaglia> * contrib/mod_deflate.c: Refactor the same note name string into a single #define. 2014-01-03 castaglia <castaglia> * contrib/mod_deflate.c: Update the mod_deflate module to use the new pr_netio_stream_t notes table for stashing the z_stream pointers, rather than the nstrm_data member. 2014-01-02 castaglia <castaglia> * doc/modules/mod_log.html: Fix inaccurate description of %p LogFormat variable. 2014-01-02 castaglia <castaglia> * include/netio.h, src/netio.c: A NetIO stream object now has a table for stashing any/all kinds of module-specific data. This table will eventually replace the void *strm_data member, once all modules have been updated to use the new table for their stashing. 2014-01-02 castaglia <castaglia> * src/netio.c: Use slightly better, more descriptive names for the default NetIO objects. Make the code use consistent style, i.e. switch statements, enclosing parentheses around function pointers, etc throughout. No functional change. 2014-01-01 castaglia <castaglia> * contrib/mod_tls.c: Fix grammar-o in a comment. 2014-01-01 castaglia <castaglia> * src/fsio.c: When reading from a file using pr_fsio_gets(), use the given iosz hint as is, rather than using the smaller size of given buffer vs iosz hint. The iosz hint, if present, will always be more efficient. The given buffer can then be filled from the read-in buffer. 2013-12-30 castaglia <castaglia> * src/parser.c: Clean up a few stylistic nits in the parser code; no functional change. 2013-12-30 castaglia <castaglia> * src/fsio.c: Clean up a few stylistic nits in fsio.c; no functional change. 2013-12-29 castaglia <castaglia> * modules/mod_auth.c: Once the "has this client authenticated?" check -- which occurs per-command -- has succeeded, record that success value such that we do not do the same lookup for subsequent commands. Once a client has authenticated, that state will not change for the duration of the connection. At least until REIN is implemented. 2013-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Add regression test for failed logins due to out-of-sequence commands. 2013-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Despite Net::FTP's documentation with regard to FTP firewalls (i.e. proxying), the implementation leaves much to be desired. So I worked around the Net::FTP internals to make it do what I wanted. 2013-12-27 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#4004 - IgnoreSCPUploadPerms SFTPOption not honored properly for SCP directory upload. 2013-12-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#4004. 2013-12-23 castaglia <castaglia> * include/netaddr.h, src/netaddr.c, tests/api/netaddr.c: Rename the ADDRS_ONLY pr_netaddr_get_addr2() flag to EXCL_DNS, to be more consistent with the naming of similar flags for the option, and to be more descriptive. 2013-12-23 castaglia <castaglia> * include/netaddr.h, src/netaddr.c, tests/api/netaddr.c: Support new flag for pr_netaddr_get_addr2() which can be used to skip DNS name resolutions, and only check whether the given string is a resolvable IP address. Add missing regression test for pr_netaddr_get_addr2(), with tests for the INCL_DEVICE and ADDRS_ONLY flags. 2013-12-20 castaglia <castaglia> * NEWS, contrib/mod_sftp/dhparams.pem: Bug#4002 - Add 7680-bit DH parameter to mod_sftp bundled dhparams.pem file. 2013-12-20 castaglia <castaglia> * modules/mod_auth_file.c: Try mitigating some of the terror/madness caused by Bug#3892 preemptively by using root privs when opening the AuthUserFile/AuthGroupFile for reading. 2013-12-20 castaglia <castaglia> * modules/mod_auth_file.c: Slight tweaks to the error messages logged. 2013-12-20 castaglia <castaglia> * modules/mod_auth_file.c: Add more information to error messages logged by mod_auth_file due to the stricter checks added for Bug#3892. 2013-12-19 castaglia <castaglia> * contrib/mod_wrap2_file.c: Add some helpful logging when mod_wrap2_file performs resolution on the given table path. 2013-12-19 castaglia <castaglia> * doc/contrib/mod_wrap2.html: Fix typos. 2013-12-19 castaglia <castaglia> * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c: Bug#4001 - mod_sftp fails key exchange for 8192-bit DH group. 2013-12-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix regressions in the handling of <Limit> sections applicable to READDIR SFTP requests, caused by the fix for Bug#3753 and pointed out by Mike Futerko. 2013-12-15 castaglia <castaglia> * src/netaddr.c: When caching the remote session address information, make sure to properly zero out the cache structures first. 2013-12-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Handle the new test_cleanup function properly, i.e. by going one level deeper into the call stack when writing out to the tests.log file, for accurate reporting of the failing testcase in question. 2013-12-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Provide a way to tell test_cleanup() to keep the log files around. 2013-12-14 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Fix typo in comment; no functional change. 2013-12-12 castaglia <castaglia> * doc/contrib/mod_geoip.html: Typo. 2013-12-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_shaper.pm: Checking in reproduction recipe for Bug#3928, for when I can address that issue in the future. 2013-12-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_exec.c: Bug#3876 - ExecOnEvent should be configurable per <VirtualHost>/<Global>. 2013-12-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Regression tests for Bug#3996. 2013-12-12 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3996 - Handling ALLO command can result in wrong response when chrooted. 2013-12-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/keys.c: Bug#3992 - RSA signature issue when connecting using PuTTY/WinSCP. 2013-12-10 castaglia <castaglia> * contrib/ftpasswd: Fix minor issue with Bug#3994 fix, to prevent multiple --locks on the same user from prepending multiple "lock" characters; just one is enough. 2013-12-09 castaglia <castaglia> * doc/contrib/mod_tls.html: Update mod_tls docs with descriptions for the new EC cert/key directives. 2013-12-09 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3772 - Support Elliptic Curve Cryptography (ECC) certs for FTPS connections. 2013-12-09 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_snmp/db.c, include/fsio.h, modules/mod_delay.c, src/fsio.c, src/scoreboard.c, src/wtmp.c: Refactor some of the common code for getting a usable fd into a new pr_fs_get_usable_fd2() function, and update some of the sites to use the new function. 2013-12-09 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, contrib/mod_snmp/db.c, modules/mod_delay.c, src/scoreboard.c, src/wtmp.c: Bug#3970 - ProFTPD should not use fd 2 (stderr) for files. 2013-12-09 castaglia <castaglia> * modules/mod_core.c: Fix compiler warning about type mismatch. 2013-12-09 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES, tests/t/etc/modules/mod_tls/ec-ca.pem, tests/t/etc/modules/mod_tls/ec-server-cert.pem: Adding EC certs for tests. 2013-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm: Add regression tests for <Anonymous> configs with upload-only directories. 2013-12-08 castaglia <castaglia> * contrib/ftpasswd, doc/contrib/ftpasswd.html: Minor reordering of new --lock, --unlock options, and updating the docs to reflect the new options. 2013-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Adding regression tests for Bug#3994. 2013-12-08 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/ftpasswd: Bug#3994 - ftpasswd utility should support --lock/--unlock options. 2013-12-08 castaglia <castaglia> * NEWS, contrib/ftpasswd: Bug#3995 - ftpasswd utility should prevent concurrent modification of files. 2013-12-05 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update mod_sftp docs for the new IgnoreSCPUploadTimes SFTPOption. 2013-12-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression test for Bug#3998 (the new IgnoreSCPUploadTimes SFTPOption). 2013-12-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/scp.c: Bug#3998 - Support IgnoreSCPUploadTimes SFTPOption. 2013-12-05 castaglia <castaglia> * doc/contrib/mod_sftp.html: List the supported SFTPOptions in lexicographical order. 2013-12-05 castaglia <castaglia> * modules/mod_ctrls.c: Make sure that the mod_ctrls module cannot be built without using the --enable-ctrls configure option. 2013-12-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Adding regression test for the ALLO command in a chrooted environment. 2013-12-04 castaglia <castaglia> * lib/pr_fnmatch_loop.c: Bug#3997 - pr_fnmatch_loop.c compilation error: "CHAR str[0] : error #2094: the size of an array must be greater than zero" 2013-11-24 castaglia <castaglia> * NEWS, contrib/mod_exec.c, contrib/mod_ldap.c, contrib/mod_tls.c, include/str.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/str.c, tests/api/str.c: Bug#3965 - Timeout directives have inconsistent maximum values. 2013-11-18 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Create new test_setup() and test_cleanup() functions, to reduce the amount of boilerplate in testcases and to reduce the accrued technical debt in the testsuite codebase by applying the DRY principle. 2013-11-11 castaglia <castaglia> * doc/modules/mod_log.html: Added description of new %{basename} variable to the LogFormat docs. 2013-11-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Added (simplistic) regression tests for the new LogFormat %{basename} variable introduced for Bug#3987. 2013-11-11 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, include/mod_log.h, modules/mod_log.c: Bug#3987 - LogFormat variable for just the filename. 2013-11-10 castaglia <castaglia> * RELEASE_NOTES, doc/howto/LogMessages.html: Check in the work-to-date on a log message compendium; there are still a few sections to fill in. 2013-11-10 castaglia <castaglia> * src/auth.c: Make the "Preparing to chroot to" log message slightly less noisy. 2013-11-10 castaglia <castaglia> * modules/mod_xfer.c: Shift the HiddenStore DEBUG level messages to properly use the pr_log_debug() function, and to use a lower DEBUG level, so they are not as noisy (and are more consistent with other debug-level logging). 2013-11-10 castaglia <castaglia> * modules/mod_auth_file.c: Improve the log message slightly when mod_auth_file can't open its configured files. 2013-11-09 castaglia <castaglia> * src/bindings.c: Found another place with inconsistent log message formatting; now fixed. 2013-11-09 castaglia <castaglia> * src/data.c: Fixed formatting of log message to be more consistent with the format used elsewhere, i.e. that the strerror(3) string follows a colon and space. 2013-11-09 castaglia <castaglia> * doc/modules/mod_core.html: Include description for the UserOwner directive in the mod_core docs. 2013-11-09 castaglia <castaglia> * contrib/mod_ifsession.c: Log messages about misconfigurations should be logged at WARNING, not ERR. 2013-11-05 castaglia <castaglia> * NEWS, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c: Bug#3991 - SSL session caching modules use incorrect OpenSSL cache mode flags, breaking session caching. 2013-11-05 castaglia <castaglia> * doc/contrib/mod_tls_shmcache.html: Updated mod_tls_shmcache docs. 2013-10-27 castaglia <castaglia> * doc/howto/TLS.html: TLS FAQ about difference between shm and memcache for SSL session caching. 2013-10-15 castaglia <castaglia> * src/fsio.c: If the underlying filesystem doesn't support chmod(2) (per Bug#3986), then at least log a DEBUG level message about it. 2013-10-15 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3986 - Support filesystems which do not support chmod(2)/chown(2), e.g. FAT/ExFAT. 2013-10-14 castaglia <castaglia> * NEWS, RELEASE_NOTES: Bug#3982 - Normalize log messages and levels. 2013-10-13 castaglia <castaglia> * modules/mod_dso.c, src/log.c: Fix comments to match code. 2013-10-13 castaglia <castaglia> * modules/mod_core.c: Tweak a log message to be more in line with similar log messages elsewhere. 2013-10-13 castaglia <castaglia> * contrib/mod_rewrite.c: If a configured RewriteLog is in a world-writable directory, log it -- but use the same phrasing as used for other modules in similar situations. 2013-10-13 castaglia <castaglia> * src/fsio.c: Found only one instance of a DEBUG level message which needed a different log level (Bug#3982). 2013-10-13 castaglia <castaglia> * src/auth.c: The log message about chrooting is more of a DEBUG level message, rather than INFO (per Bug#3982). 2013-10-13 castaglia <castaglia> * modules/mod_ctrls.c, modules/mod_delay.c, modules/mod_dso.c, modules/mod_xfer.c: Changing the log levels of messages for some modules to be more consistent, per Bug#3982. 2013-10-13 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_ctrls_admin.c, contrib/mod_dynmasq.c, contrib/mod_geoip.c, contrib/mod_load/mod_load.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c, contrib/mod_shaper.c, contrib/mod_tls.c, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c, contrib/mod_wrap.c: Tweak the log levels of various log messages in contrib modules, bringing the messages in line with a more consistent logging policy (Bug#3982). 2013-10-13 castaglia <castaglia> * contrib/ftpmail: If there are comments after the user/password values in the ftpmail SMTP AUTH file, trim them off. 2013-10-13 castaglia <castaglia> * src/bindings.c, src/dirtree.c, src/lastlog.c, src/log.c, src/main.c: Combing through NOTICE level log messages in src/ turned up a few needed tweaks, for Bug#3982. 2013-10-13 castaglia <castaglia> * modules/mod_auth.c, modules/mod_auth_pam.c, modules/mod_auth_unix.c, modules/mod_cap.c, modules/mod_ctrls.c, modules/mod_dso.c, modules/mod_lang.c, modules/mod_log.c, modules/mod_memcache.c, modules/mod_xfer.c: Minor tweaks to log messages and log levels, bringing them in line with the expected/consistent log levels, per Bug#3982. 2013-10-13 castaglia <castaglia> * contrib/mod_dnsbl/mod_dnsbl.c, contrib/mod_geoip.c, contrib/mod_ldap.c, contrib/mod_log_forensic.c, contrib/mod_radius.c, contrib/mod_ratio.c, contrib/mod_rewrite.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_snmp/mod_snmp.c, contrib/mod_sql.c, contrib/mod_tls.c: Tweaks to log levels of various messages in the contrib modules, making them be more consistent, per Bug#3982. 2013-10-11 castaglia <castaglia> * src/auth.c: Slightly better log message, hopefully. 2013-10-11 castaglia <castaglia> * src/auth.c, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Added regression tests for Bug#3985, and slightly better logging that MIGHT help track down issues like this in the future. 2013-10-09 castaglia <castaglia> * doc/howto/Logging.html: Fix broken anchor tag. 2013-10-09 castaglia <castaglia> * src/timers.c: Use the WARNING level if we can't install our signal handlers needed for timers, rather than NOTICE. 2013-10-09 castaglia <castaglia> * contrib/mod_dynmasq.c: Slightly better language in the log message when we can't resolve a DNS name. 2013-10-09 castaglia <castaglia> * contrib/mod_deflate.c: Use more appropriate log levels for issues opening a DeflateLog file, and also make sure to preserve errno for proper error reporting. 2013-10-09 castaglia <castaglia> * contrib/mod_ban.c: Most of the NOTICE-level log messages in mod_ban are actually WARNING-level worthy; make them use WARNING, then. 2013-10-09 castaglia <castaglia> * modules/mod_xfer.c: Found a few more places where errno might be getting clobbered, and thus leading to inaccurate reporting. 2013-10-09 castaglia <castaglia> * modules/mod_delay.c: Preserve errno properly when reporting errors here. 2013-10-09 castaglia <castaglia> * src/main.c: Fix another case where the reported errno value might not be the correct one. 2013-10-09 castaglia <castaglia> * modules/mod_auth.c: Cut down on possibly-spurious log warnings. 2013-10-09 castaglia <castaglia> * src/lastlog.c: Another place where we might be losing the real errno value. 2013-10-09 castaglia <castaglia> * src/mkhome.c: Make sure that when an error occurs, we log and preserve the errno properly. 2013-10-09 castaglia <castaglia> * src/wtmp.c: Fix a few more places where we need to be careful to preserve the errno value. 2013-10-09 castaglia <castaglia> * modules/mod_auth_unix.c: More cases where we need to take care to preserve the errno value properly. 2013-10-09 castaglia <castaglia> * modules/mod_core.c: Preserve errno for proper error reporting. 2013-10-09 castaglia <castaglia> * modules/mod_facl.c: Make sure we preserve errno appropriately. 2013-10-09 castaglia <castaglia> * doc/modules/mod_core.html: One more link which should use the #Syslog anchor in the Logging doc. 2013-10-09 castaglia <castaglia> * contrib/mod_sql_postgres.c: Forgot to update copyright date on previous checkin. 2013-10-08 castaglia <castaglia> * src/child.c: If we update an empty child list, explicitly set the listlen back to zero. It should already be this value anyway, we just want to make sure. 2013-10-07 castaglia <castaglia> * contrib/mod_rewrite.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_snmp/mod_snmp.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c, contrib/mod_tls.c, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_unix.c, modules/mod_cap.c, modules/mod_delay.c, modules/mod_facl.c, modules/mod_log.c, modules/mod_memcache.c, modules/mod_site.c, modules/mod_xfer.c, src/auth.c, src/bindings.c, src/data.c, src/dirtree.c, src/display.c, src/fsio.c, src/inet.c, src/main.c, src/modules.c, src/parser.c, src/pool.c: Shuffle some of the log levels used for log messages, making ERR message that should be something else BE something else, leaving ERR messages which should be ERR alone (Bug#3982). 2013-10-07 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_ldap.c: Bug#3888 - Add LDAPLog directive to mod_ldap. 2013-10-07 castaglia <castaglia> * contrib/mod_ldap.c: Start making stylistic changes to the mod_ldap code, bringing it more in line with the coding style used elsewhere in proftpd. No functional change. 2013-10-07 castaglia <castaglia> * contrib/mod_sftp/auth.c, modules/mod_auth.c: Log "SECURITY VIOLATION" messages at the NOTICE level (Bug#3982). 2013-10-07 castaglia <castaglia> * contrib/mod_exec.c, contrib/mod_sftp/cipher.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/msg.c, contrib/mod_sftp_pam.c, contrib/mod_shaper.c, contrib/mod_snmp/mod_snmp.c, contrib/mod_tls.c, include/log.h, modules/mod_auth_file.c, modules/mod_ls.c, src/data.c, src/env.c, src/fsio.c, src/log.c, src/main.c, src/pool.c: On second thought, remove the whole lookup-of-log-level-by-resource mechanism. It's overengineered, and we don't need it right now. 2013-10-06 castaglia <castaglia> * contrib/mod_exec.c, contrib/mod_sftp/keys.c, contrib/mod_snmp/mod_snmp.c, contrib/mod_tls.c, include/log.h, src/log.c, src/main.c: When fork(2) fails and we need to log a message, use the new lookup function to determine the log level for that "process" resource. 2013-10-06 castaglia <castaglia> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/msg.c, contrib/mod_sftp_pam.c, contrib/mod_shaper.c, contrib/mod_tls.c, include/log.h, modules/mod_auth_file.c, modules/mod_ls.c, src/data.c, src/env.c, src/fsio.c, src/log.c, src/pool.c: When a resource is exhausted, we now have a lookup function to determine the proper log level to use for the ensuing log message. This lets us coordinate/tweak these levels in the future as needed, as well as being able to differentiate/tweak different log levels for the same resource but different errors (e.g. EMFILE vs ENFILE for fd exhaustion). 2013-10-06 castaglia <castaglia> * contrib/mod_snmp/mod_snmp.c: mod_snmp, too, needs to log fork(2) failures at the ALERT level (Bug#3982). 2013-10-06 castaglia <castaglia> * contrib/mod_exec.c, contrib/mod_tls.c, src/main.c: Log other out-of-resource errors (such as fork(2) and pipe(2) failures) at the ALERT log level, per Bug#3982. 2013-10-06 castaglia <castaglia> * modules/mod_ls.c, src/data.c, src/env.c, src/pool.c: Let's be consistent about the message logged when we are out of memory, and use "Out of memory!", rather than a mix of the former as well as variations on "memory exhausted" (Bug#3982). 2013-10-06 castaglia <castaglia> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/keys.c, contrib/mod_tls.c, modules/mod_ls.c, src/data.c, src/env.c: Found more places in the code where an out-of-memory condition needed to be logged at the ALERT level, per Bug#3982. 2013-10-06 castaglia <castaglia> * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/msg.c, contrib/mod_sftp_pam.c, contrib/mod_shaper.c, modules/mod_auth_file.c, src/fsio.c, src/pool.c: Bug#3982 - Normalize log messages and levels. We start by logging all out-of-memory conditions at the ALERT level. 2013-10-06 castaglia <castaglia> * contrib/mod_snmp/.cvsignore: Updated .cvsignore files for mod_dnsbl and mod_snmp. 2013-10-06 castaglia <castaglia> * doc/howto/LogLevels.html: More typos, layout fixes. 2013-10-06 castaglia <castaglia> * doc/howto/LogLevels.html: Typo. 2013-10-06 castaglia <castaglia> * doc/howto/index.html: Add the LogLevels doc to the index. 2013-10-06 castaglia <castaglia> * doc/howto/LogLevels.html, doc/howto/Logging.html, doc/modules/mod_core.html: Beef up the logging documentation by covering the log levels, and the granularity of the DEBUG level messages. This is necessary groundwork for the next stop: creating a log message catalog, per level. 2013-10-06 castaglia <castaglia> * doc/howto/Compiling.html: Minor embellishment on what the install_user/install_group variables are for (and what they are NOT for). 2013-10-06 castaglia <castaglia> * doc/howto/ConfigurationTricks.html: Add recipe for using environment variable to achieve ServerRoot-like functionality. 2013-10-06 castaglia <castaglia> * doc/howto/Filters.html: Add recipe about filtering SITE CHMOD parameters using DenyFilter to doc. Fixed links to be relative. 2013-10-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DenyFilter.pm: Added regression test show how to use DenyFilter to prevent a SITE CHMOD command that uses mode 777. 2013-10-06 castaglia <castaglia> * src/dirtree.c: Fixed bug in the handling of AllowFilter/DenyFilter, where a non-match would result in a false positive, such that a command might be allowed (when it should not be), or denied when it should be allowed. 2013-10-06 castaglia <castaglia> * src/var.c: Clean up minor stylistic nits in the Variables API; no real functional change. 2013-10-05 castaglia <castaglia> * src/fsio.c: Additional improvements for Bug#3963, reducing the scope of root privs used when setting created directory permissions. 2013-10-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Updated mod_exec ExecOption useStdin regression test in light of Bug#3981. 2013-10-05 castaglia <castaglia> * NEWS, contrib/mod_exec.c: Bug#3981 - Null pointer dereference in mod_exec with ExecOption useStdin. 2013-10-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c: When constructing the string version of unsupported OPEN flags sent by the SFTP client, make sure we are checking the correct flags variable. 2013-10-05 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support writing out of configs that are given as arrayrefs, not just as hashrefs. 2013-10-05 castaglia <castaglia> * tests/t/config/setenv.t, tests/t/lib/ProFTPD/Tests/Config/SetEnv.pm, tests/tests.pl: Adding regression test for the SetEnv directive. In this case, the test also demonstrates how environment variables can be used to approximate the functionality of Apache's ServerRoot directive. 2013-10-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ratio.pm: Add a (currently failing) mod_ratio regression, found in an Ubuntu bug report. 2013-10-03 castaglia <castaglia> * doc/contrib/mod_ratio.html: Start working on mod_ratio docs, if only to cut down on bug reports about it. 2013-10-03 castaglia <castaglia> * doc/contrib/mod_sftp_pam.html: Fix typos and improve the installation instructions for mod_sftp_pam. 2013-10-02 castaglia <castaglia> * modules/mod_dso.c: Update mod_dso to use the pr_strnrstr() function, which duplicated code already in mod_dso. 2013-10-02 castaglia <castaglia> * RELEASE_NOTES: Plan to release RC4, and mention the fixing of the LDFLAGS for module builds. 2013-10-02 castaglia <castaglia> * contrib/mod_dnsbl/configure, contrib/mod_load/configure, contrib/mod_sftp/configure, contrib/mod_snmp/configure, contrib/mod_wrap2/configure: Updated contrib module configure scripts. 2013-10-02 castaglia <castaglia> * contrib/mod_dnsbl/Makefile.in, contrib/mod_dnsbl/configure.in, contrib/mod_load/Makefile.in, contrib/mod_load/configure.in, contrib/mod_sftp/Makefile.in, contrib/mod_sftp/configure.in, contrib/mod_snmp/Makefile.in, contrib/mod_snmp/configure.in, contrib/mod_wrap2/Makefile.in, contrib/mod_wrap2/configure.in: Properly propagate/use LDFLAGS in the contrib module Makefiles. 2013-10-02 castaglia <castaglia> * contrib/mod_sftp/kex.c: Even when SSH2 clients do not send a "guess" KEX packet, but do correctly guess the preferred kex, we need to be prepared to handle ECDH key exchanges. 2013-10-01 castaglia <castaglia> * modules/mod_auth_unix.c: Fix typo in patch for Bug#3952 that was resulting in segfault. 2013-10-01 castaglia <castaglia> * contrib/mod_exec.c: Remove extraneous semicolon; I've been trying not to use them after the PRIVS macros. 2013-09-30 castaglia <castaglia> * contrib/mod_exec.c, contrib/mod_sql.c, modules/mod_log.c, modules/mod_xfer.c, src/dirtree.c, tests/api/cmd.c, tests/api/stubs.c: Deprecate get_full_cmd() in favor of pr_cmd_get_displayable_str(); both are existing functions, and the latter is more performant. 2013-09-30 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Make sure that ECC key exchange algorithms can be explicitly configured via the SFTPKeyExchanges directive, when supported. 2013-09-29 castaglia <castaglia> * doc/modules/mod_auth_unix.html: Updated PersistentPasswd docs per Bug#3952. 2013-09-29 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/options.h, modules/mod_auth_file.c, modules/mod_auth_unix.c, src/main.c: Bug#3952 - Make PersistentPasswd default to 'off'. 2013-09-27 castaglia <castaglia> * src/netaddr.c: Include the address family (IPv4 vs IPv6) to which we tried (and failed) to resolve the given name, in the failed-resolution log message. 2013-09-27 castaglia <castaglia> * src/bindings.c: Only return an error from pr_ipbind_get_listening_conn(), if we fail to duplicate an address, for a reason other than EINVAL. Turns out that EINVAL is actually an expected/common reason for the dup to fail. 2013-09-27 castaglia <castaglia> * src/bindings.c, src/dirtree.c, src/inet.c, src/netaddr.c: Fix an interesting bug only encountered if the following config is used: DefaultAddress <ipv6-addr> UseIPv6 off That is, the server is configured with an IPv6 address, and then later, in the config, support for IPv6 is disabled. Without this patch, a strange segfault will ensue on startup. Note that if the order of the directives is reversed, so that UseIPv6 occurs before the DefaultAddress directive, then startup fails as one might expect, since the IPv6 address won't be resolved unless IPv6 support is enabled. 2013-09-25 castaglia <castaglia> * contrib/mod_sftp/display.c, src/display.c: Silly compilers disagree on whether '' is valid syntax for denoting a single character. Sigh. 2013-09-25 castaglia <castaglia> * contrib/mod_sftp/display.c, src/display.c: When formatting the %f Display variable, the units index was not being calculated correctly. 2013-09-25 castaglia <castaglia> * src/fsio.c: Minor clarifying comment. 2013-09-25 castaglia <castaglia> * NEWS, contrib/mod_sql_odbc.c: Bug#3979 - mod_sql_odbc compiler warnings on 64-bit systems using unixODBC. 2013-09-24 castaglia <castaglia> * include/str.h, src/str.c, tests/api/str.c, tests/api/timers.c: Add new pr_strnrstr() function, for checking whether a given string ends with a given suffix. Comes with accompanying API tests. Fixed a few racy timer tests while there. 2013-09-20 castaglia <castaglia> * contrib/mod_sftp/keys.c, contrib/mod_tls.c: Updated the cached PID, so that log messages reflected the forked process' PID properly. 2013-09-20 castaglia <castaglia> * contrib/mod_exec.c: Make sure we revoke root privs, even if we already hae the session.login_uid, when the '~' ExecOnEvent syntax is used. 2013-09-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Adding regression test for Bug#3964. 2013-09-20 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_exec.c: Bug#3964 - Support running ExecOnEvent actions with logged-in user's permissions. 2013-09-20 castaglia <castaglia> * NEWS, contrib/mod_geoip.c: Bug#3976 - ProFTPD terminating (signal 11) crash for GeoLiteCity-20130903 database lookup. 2013-09-20 castaglia <castaglia> * NEWS, contrib/mod_geoip.c: Bug#3975 - Error printed to stderr when loading GeoIP Lite country database using IndexCache flag. 2013-09-19 castaglia <castaglia> * include/netio.h, src/netio.c: Include not only the module pointer, but a stringified version of the module name. The module pointer of the owner may not be available for comparison (think shared/DSO modules), so having the string is a nice complement. 2013-09-19 castaglia <castaglia> * contrib/mod_deflate.c, contrib/mod_tls.c, include/conf.h, include/netio.h, src/netio.c: Add new pr_alloc_netio2() function, for associate the module * with the netio created. This allows modules to see, for a given pr_netio_t, which module registered/owns that netio. And, related, add a new pr_get_netio() function, so that modules can see the currently registered NetIO object for a given stream type. With the above module * now part of that NetIO, said modules can see what is registered, and take appropriate action. 2013-09-18 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3963 - Improve permission setting when creating directories. 2013-09-18 castaglia <castaglia> * doc/contrib/index.html: Update contrib module index with link to mod_dnsbl. 2013-09-18 castaglia <castaglia> * contrib/mod_dnsbl/configure: Updated configure for mod_dnsbl. 2013-09-18 castaglia <castaglia> * contrib/mod_dnsbl/Makefile.in, contrib/mod_dnsbl/configure.in, contrib/mod_dnsbl/mod_dnsbl.h.in: Tweaking the mod_dnsbl build system to use the module-libs.txt file, for e.g. building properly as a static module when libresolv is needed. 2013-09-18 castaglia <castaglia> * contrib/mod_dnsbl/.cvsignore: Adding necessary .cvsignore file. 2013-09-18 castaglia <castaglia> * contrib/mod_dnsbl/Makefile.in: Update clean target for mod_dnsbl Makefile. 2013-09-18 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_dnsbl.html: Mention addition of mod_dnsbl to the contrib/ area. 2013-09-18 castaglia <castaglia> * contrib/mod_dnsbl/Makefile.in, contrib/mod_dnsbl/config.guess, contrib/mod_dnsbl/config.sub, contrib/mod_dnsbl/configure, contrib/mod_dnsbl/configure.in, contrib/mod_dnsbl/install-sh, contrib/mod_dnsbl/mod_dnsbl.c, contrib/mod_dnsbl/mod_dnsbl.h.in: Adding the mod_dnsbl module to the proftpd project. 2013-09-18 castaglia <castaglia> * contrib/mod_snmp/config.guess, contrib/mod_snmp/config.sub, contrib/mod_snmp/install-sh: Updating config.guess, config.sub, install-sh scripts for mod_snmp. 2013-09-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add ExtendedLog test for the %r LogFormat variable, for commands other than PASS. Fixed broken mod_sftp test. 2013-09-18 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Using a slightly different memory pool here avoids some strange side-effects later. 2013-09-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update mod_tls tests to expect a 522 response code where mod_tls now generates such codes, rather than the 550 response codes that had been sent in the past. 2013-09-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression tests for the handling of the SSCN command by mod_tls. 2013-09-17 castaglia <castaglia> * contrib/xferstats.holger-preiss: Fix/make -t option work properly. Fixed handling/counting for -i/-o options. Added new -e option, to count number of deleted (mnemonic: "erased") files. 2013-09-17 castaglia <castaglia> * RELEASE_NOTES: Mention fix of mod_sftp/mod_sftp_pam memory allocation (CVE-2013-4359) in release notes. 2013-09-15 castaglia <castaglia> * contrib/mod_tls.c: Harden the mod_tls NetIO open callback so that, if multiple streams are opened, they don't overwrite each other. 2013-09-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for Bug#3974, regarding the handling of the PathDenyFilter for SFTP sessions. 2013-09-15 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3974 - PathDenyFilter directive does not work as expected for SFTP sessions. 2013-09-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Update regression test to work successfully on Mac OSX (due to how that platform handles its temporary paths). 2013-09-15 castaglia <castaglia> * include/str.h, src/str.c, tests/api/str.c: Add a variant of get_token, i.e. pr_str_get_token2, which not only returns the next token, but also returns its length. This is quite useful for using get_token for iterating over a single string while tokenizing it in place. 2013-09-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/kbdint.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp_pam.c: Bug#3973 - mod_sftp can be forced to allocate too much memory for keyboard-interactive authentication. 2013-09-14 castaglia <castaglia> * contrib/mod_sftp/keys.c: When comparing EC curve points, use the curve group and points from the local file as the first parameters; the first parameter represents the "baseline" in the OpenSSL comparators to which we want to compare the client-supplied curve group/point. 2013-09-13 castaglia <castaglia> * contrib/mod_sftp_pam.c: Fix gcc-4.8 warning; patch supplied by Sergei Trofimovich <slyfox@gentoo.org>. 2013-09-05 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#3972 - Authentication error on Cygwin due to bad code. 2013-09-04 castaglia <castaglia> * doc/contrib/mod_sql.html: Document the new IgnoreConfigFile SQLOption (Bug#3971). 2013-09-04 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c: Bug#3971 - Support SQLOption for ignoring client library config files when needed. 2013-08-25 castaglia <castaglia> * tests/t/config/deferwelcome.t, tests/t/lib/ProFTPD/Tests/Config/DeferWelcome.pm, tests/tests.pl: Add regression tests for the DeferWelcome directive. 2013-08-25 castaglia <castaglia> * src/session.c: Make sure that the %L variable, when used in a ServerIdent message, properly reflects a configured MasqueradeAddress, just as the non-customised ServerIdent message would. 2013-08-19 castaglia <castaglia> * doc/howto/Authentication.html: Update Auth howto links. Added FAQ about getting passwords logged. 2013-08-19 castaglia <castaglia> * doc/modules/mod_auth.html: Adding more mod_auth directives to the docs. 2013-08-14 castaglia <castaglia> * doc/contrib/mod_ban.html, doc/contrib/mod_ctrls_admin.html, doc/contrib/mod_deflate.html, doc/contrib/mod_dynmasq.html, doc/contrib/mod_exec.html, doc/contrib/mod_ifsession.html, doc/contrib/mod_log_forensic.html, doc/contrib/mod_qos.html, doc/contrib/mod_quotatab_file.html, doc/contrib/mod_quotatab_ldap.html, doc/contrib/mod_quotatab_sql.html, doc/contrib/mod_radius.html, doc/contrib/mod_readme.html, doc/contrib/mod_rewrite.html, doc/contrib/mod_shaper.html, doc/contrib/mod_site_misc.html, doc/contrib/mod_unique_id.html: Updating installation instructions for many modules, noting how to build them as shared/DSO modules, and using prxs to do so. 2013-08-14 castaglia <castaglia> * doc/contrib/mod_ban.html: Typo. 2013-08-14 castaglia <castaglia> * contrib/mod_geoip.c: Fix mod_geoip's handling of multiple GeoIPAllowFilter directives. 2013-08-14 castaglia <castaglia> * doc/contrib/mod_ban.html, doc/contrib/mod_deflate.html, doc/contrib/mod_exec.html, doc/contrib/mod_quotatab.html, doc/contrib/mod_radius.html, doc/contrib/mod_rewrite.html, doc/contrib/mod_shaper.html, doc/contrib/mod_wrap2.html: Fix typos. 2013-08-14 castaglia <castaglia> * doc/contrib/mod_sql.html: Typo. 2013-08-12 castaglia <castaglia> * contrib/mod_geoip.c: Bug#3967 - Typo in TraceLog output: "Allow" should be "Deny". 2013-08-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Added/updated logging-related tests for Bug#3966. 2013-08-09 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_core.c, modules/mod_log.c: Bug#3966 - LogFormat %f variable not resolved for some commands. 2013-08-07 castaglia <castaglia> * src/inet.c, src/support.c: Preemptive support for FreeBSD 10. 2013-08-07 castaglia <castaglia> * modules/mod_log.c: Eliminate a strlen(3) when writing the full ExtendedLog line. 2013-08-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm: Add regression tests for the SIZE command, as applied to symlinks (e.g. to files and to directories). 2013-08-01 castaglia <castaglia> * doc/contrib/mod_tls.html: Adding documentation for the new TLSVerifyServer directive. 2013-08-01 castaglia <castaglia> * include/mod_log.h, modules/mod_log.c: Moving the various "meta" values used for LogFormat variables into a mod_log.h header, so that other modules which use the parsed LogFormat directives can also know what the "meta" values are. 2013-08-01 castaglia <castaglia> * modules/mod_log.c: Make mod_log stash the configured LogFormat directives in the config tree, so that other modules might also look up and use the LogFormat data. 2013-07-31 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3955 - Support secure FXP (site-to-site) transfers using SSCN. 2013-07-29 castaglia <castaglia> * doc/modules/mod_facts.html: FAQ about FileZilla, symlinks, and MLSD for older proftpd versions. 2013-07-26 castaglia <castaglia> * doc/contrib/mod_ban.html: Add FAQ about banning root logins. 2013-07-25 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3962 - Directory creation fails (chmod(2) EPERM) when root privs are used in some cases. 2013-07-22 castaglia <castaglia> * doc/contrib/mod_sftp.html: Adding mod_sftp FAQ/gotcha, per Bug#3961. 2013-07-19 castaglia <castaglia> * doc/modules/mod_cap.html: Document the support for CAP_FSETID for the CapabilitiesSet directive, per Bug#3960. 2013-07-19 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_cap.c: Bug#3960 - Support the CAP_FSETID Linux capability, for preserving directory SGID bit. 2013-07-18 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3958 - Directory creation does not honor single-parameter Umask setting. 2013-07-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Adding regression tests which would have caught Bug#3958. 2013-07-17 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: When using the pr_str_get_nbytes() function, we need to use off_t, not uint32_t, to hold the result value. On some systems (e.g. SPARC), a uint32_t is smaller than an off_t, so trying to shove an off_t worth of data into memory allocated for uint32_t will cause problems. 2013-07-17 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3959 - mod_sftp does not honor <Directory>/<Limit> sections when symlinks are involved. The mod_sftp module was not properly canoncalizing the paths sent by the client before checking <Directory> restrictions. 2013-07-17 castaglia <castaglia> * configure: Updated configure. 2013-07-17 castaglia <castaglia> * configure.in: Make the configure script handle common typos such as leading/trailing colons in the --with-modules/--with-shared lists, and handling double colons in these lists. 2013-07-17 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Making sure that ExtendedLog variables such as %d and %f work properly for the MFMT command, and some other SITE commands (e.g. SITE UTIME). 2013-07-16 castaglia <castaglia> * contrib/mod_tls.c: Fix compiler warning about unused variable (only when --disable-ipv6 configure option is used). 2013-07-16 castaglia <castaglia> * src/ftpdctl.c: Fix compiler warning. 2013-07-16 castaglia <castaglia> * src/netaddr.c: Fix compiler warning on Solaris. 2013-07-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix compiler warnings about shadowed local variables. 2013-07-16 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_log.c, src/auth.c, src/dirtree.c: Bug#3957 - ProFTPD configuration with thousands of <Directory>/<Limit> sections leads to slow logins. With this, the find_config() function now takes flags which can be used to indicate disinterest in specific config types, so that they are skipped when doing recursive searches of the in-memory config tree. 2013-07-09 castaglia <castaglia> * doc/howto/ECCN.html, doc/howto/index.html: Adding ECCN howto. 2013-07-05 castaglia <castaglia> * contrib/mod_sftp_pam.c, modules/mod_auth_pam.c: Fix possible minor memory leak with an error happens during PAM message processing. 2013-07-02 castaglia <castaglia> * tests/t/config/allowforeignaddress.t, tests/t/lib/ProFTPD/Tests/Config/AllowForeignAddress.pm, tests/tests.pl: Adding regression tests for site-to-site transfers (FXP) and the AllowForeignAddress directive. 2013-07-02 castaglia <castaglia> * doc/contrib/mod_ban.html: Improve the mod_ban docs by listing the type of ban (class/host/user) next to the BanOnEvent rules. 2013-07-02 castaglia <castaglia> * doc/howto/Stopping.html: HTML formatting (missed closing tag). 2013-07-01 castaglia <castaglia> * src/fsio.c: Quell compiler warning on Solaris. 2013-07-01 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3954 - scp downloads result in segfault. 2013-06-30 castaglia <castaglia> * contrib/mod_sftp/kex.c: We only need to check whether the client correctly guessed the key exchange algorithm if the client indicate that it has sent the first KEX packet (as a guess). If not, then no need to write out possibly-confusing log messages. 2013-06-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Adding regression test for mod_wrap2's event + mod_exec, for emulating the "spawn" feature of tcpwrappers (Bug#3209). 2013-06-30 castaglia <castaglia> * src/inet.c: Defensive check. 2013-06-29 castaglia <castaglia> * modules/mod_xfer.c: Found a few more places in mod_xfer where the errno value was being stomped, rather than being preserved properly. 2013-06-29 castaglia <castaglia> * src/netio.c: More attempts to properly preserve the errno value, e.g. during polling. 2013-06-29 castaglia <castaglia> * modules/mod_core.c: Correcting a log message. 2013-06-29 castaglia <castaglia> * NEWS, contrib/mod_ldap.c: Bug#3951 - Null pointer dereference for mod_ldap logins when LDAPDefaultAuthScheme not configured. 2013-06-29 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Updated spec with fixes from the Fedora maintainer. 2013-06-24 castaglia <castaglia> * doc/contrib/mod_ifsession.html: Formatting. 2013-06-24 castaglia <castaglia> * doc/contrib/mod_ifsession.html: Update mod_ifsession Usage section with mention of loading it last, when using it as a shared module. 2013-06-24 castaglia <castaglia> * src/str.c: Remove unused variable. 2013-06-23 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#3858 - mod_delay allows too-large values, leading to client hang on authentication. 2013-06-22 castaglia <castaglia> * src/fsio.c: Refactor pr_fs_dircat() such that its use of sstrcat() will not scan the same buffer over and over to find end-of-string; we now advance the destination pointer manually to avoid such a thing. 2013-06-22 castaglia <castaglia> * tests/api/fsio.c: Add a unit test for the pr_fs_dircat() function; we're going to be refactoring it a bit. 2013-06-22 castaglia <castaglia> * lib/sstrncpy.c, tests/api/str.c: Fix the sstrncpy() implementation to do what is expected both when strlcpy(3) is present, and when it is not. Update the API unit tests to match the changed sstrncpy() return value. 2013-06-22 castaglia <castaglia> * include/libsupp.h, lib/pwgrent.c, lib/sstrncpy.c, src/ftpdctl.c: Change sstrcat() to return an int (denoting length) rather than pointer. This will make it easier to concatenate strings without constantly rescanning for the end-of-string in the destination buffer. 2013-06-22 castaglia <castaglia> * src/str.c: Finding cases where we use sstrcat(), and improving them by moving the destination pointer along, rather than having sstrcat() scan for the end-of-string every time using the same pointer. This should improvement performance a little. It would be easier/nicer if sstrcat() returned the number of bytes copied; maybe I'll work on that. 2013-06-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Make the ExtendedLog tests pass properly by dealing with MacOSX-isms where needed. 2013-06-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: More work on FTP response codes for ExtendedLog for SFTP sessions (part of Bug#3948). 2013-06-21 castaglia <castaglia> * RELEASE_NOTES: Add note about LogFormat %s handling change for SFTP transfers. 2013-06-21 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3948 - Support FTP response codes in ExtendedLog for SFTP data transfers. 2013-06-21 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3949 - RNFR/RNTO not logged as expected for SFTP EXTENDED posix-rename@openssh.com requests. 2013-06-21 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_log.html: Update docs for LogFormat %d/%D handling changes. 2013-06-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding regression tests for Bug#3950. 2013-06-21 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_log.c: Bug#3950 - LogFormat %d/%D variables not resolved properly for directory listings. 2013-06-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Additional ExtendedLog regression tests for the %f (and %d) LogFormat variable, pertaining to directory listings such as MLSD. 2013-06-20 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3947 - LogFormat %f variable not resolved properly for SFTP renames. 2013-06-20 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_log.c: Bug#3946 - Null pointer dereference causes segfault when logging %{transfer-status}, %{transfer-failure} LogFormat variables on EXIT. 2013-06-20 castaglia <castaglia> * doc/modules/mod_log.html: Minor nit: %{transfer-status} and %{transfer-failure} only pertain to *data* transfers; they do not pertain to e.g. RNFR/RNTO. 2013-06-20 castaglia <castaglia> * doc/modules/mod_core.html: Add missing description of MaxConnectionRate directive to the mod_core docs. 2013-06-17 castaglia <castaglia> * doc/modules/mod_cap.html: Mention support for "CAP_SETUID" in the CapabilitiesSet directive docs. 2013-06-17 castaglia <castaglia> * NEWS, modules/mod_cap.c: Bug#3945 - Spurious log messages at session close. 2013-06-15 castaglia <castaglia> * contrib/mod_wrap2_file.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Support use of the %U variable in mod_wrap2_file paths, for storing access rules in per-user locations that are not necessarily that user's home directory. 2013-06-14 castaglia <castaglia> * contrib/mod_snmp/mod_snmp.c: Fix the forged packet check in mod_snmp to check both address AND port, rather than just address. Set the RLIMIT_NPROC resource limit in the agent process, after we've chrooted and dropped privs, such that the agent process cannot fork again. 2013-06-14 castaglia <castaglia> * include/version.h: Revving version for CVS. 2013-06-14 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2013-06-14 castaglia <castaglia> * NEWS: Updating NEWS with today's date for 1.3.5rc3 release. 2013-06-14 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing 1.3.5rc3 for release. 2013-06-14 castaglia <castaglia> * locale/files.txt: Updated files.txt to include new mod_snmp, mod_sftp files. 2013-06-14 castaglia <castaglia> * RELEASE_NOTES: Fleshed out release notes for 1.3.5rc3. 2013-06-14 castaglia <castaglia> * doc/howto/SQL.html: Adding section on using the SQL PrimaryKey directives to the howto. 2013-06-14 castaglia <castaglia> * doc/contrib/mod_sql.html: Add descriptions for the SQLUserPrimaryKey, SQLGroupPrimaryKey directives added for Bug#3864. 2013-06-10 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Update SQLPasswordPBKDF2 docs to mention use of non-SHA1 digests requires OpenSSL-1.0.0c and later. 2013-06-10 castaglia <castaglia> * contrib/mod_sql_passwd.c: Allow use of PBKDF2 passwords in mod_sql_passwd for OpenSSL versions older than 1.0.0c, as long as the configured PBKDF2 digest algorithm is SHA1. 2013-06-10 castaglia <castaglia> * doc/modules/mod_rlimit.html: Removed docs for now-obsolete RLimitProcesses directive. 2013-06-10 castaglia <castaglia> * NEWS, modules/mod_rlimit.c: Bug#3941 - RLimitProcesses causes problems with setuid/setreuid. Remove the RLimitProcesses and setrlimit(RLIMIT_NPROC) code; it was causing more problems (due to setuid(2) tricks) than it solved. 2013-06-07 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sql_passwd.html: Add documentation for the new PBKDF2 support. 2013-06-07 castaglia <castaglia> * NEWS, contrib/mod_sql_passwd.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Bug#3943 - Support for PBKDF2 passwords in mod_sql_passwd. 2013-06-06 castaglia <castaglia> * NEWS, contrib/mod_sftp_sql.c: Bug#3942 - mod_sftp_sql should support multiple keys concatenated together in a single column. 2013-06-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Adding regression test for Bug#3942. 2013-06-06 castaglia <castaglia> * doc/contrib/mod_sftp.html: Adding another mod_sftp FAQ. 2013-06-06 castaglia <castaglia> * contrib/mod_load/Makefile.in, contrib/mod_sftp/Makefile.in, contrib/mod_snmp/Makefile.in, contrib/mod_wrap2/Makefile.in: Updating several contrib module Makefiles to clean up properly after themselves when doing a 'make clean'. 2013-06-06 castaglia <castaglia> * src/rlimit.c: If both current and max are NULL pointers, then return EINVAL; no need to proceed further. 2013-06-06 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Comment nit; no functional change. 2013-06-06 castaglia <castaglia> * contrib/mod_load/Makefile.in: Try to bring the mod_load Makefile back up to spec, to properly clean out the .la, .lo files, and libs/ directory. 2013-06-05 castaglia <castaglia> * modules/mod_dso.c: Handle a LoadModule module name with ".cpp" extension, in addition to ".c", for loading e.g. C++ modules. 2013-06-03 castaglia <castaglia> * contrib/mod_sftp/umac.c: Bug#3940 - Compiler warnings in mod_sftp. Fixed -Wstrict-aliasing warnings in umac.c. 2013-05-31 castaglia <castaglia> * RELEASE_NOTES: Working on fleshing out release notes; still need to do more. 2013-05-28 castaglia <castaglia> * NEWS, modules/mod_ctrls.c, src/ctrls.c: Bug#3939 - Disable Controls for "ServerType inetd" servers. 2013-05-23 castaglia <castaglia> * doc/howto/Limit.html: Add section about using multiple <Limit LOGIN> sections to the Limit howto. 2013-05-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm: Adding <Limit LOGIN> test showing what happens when multiple such sections appear in the same vhost config (answer: last one wins). 2013-05-17 castaglia <castaglia> * doc/howto/SQL.html: Add SQLNamedConnectInfo recipe to SQL howto. 2013-05-17 castaglia <castaglia> * doc/modules/mod_ctrls.html: Copy-pasto. 2013-05-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding regression test for LIST for relative symlinks where target path contains double-slashes (regression caused by fix for Bug#3719). 2013-05-16 castaglia <castaglia> * NEWS, RELEASE_NOTES: Mention addition of mod_snmp in release docs. 2013-05-15 castaglia <castaglia> * tests/t/etc/modules/mod_snmp/ssh_host_dsa_key, tests/t/etc/modules/mod_snmp/ssh_host_dsa_key.pub, tests/t/etc/modules/mod_snmp/ssh_host_rsa_key, tests/t/etc/modules/mod_snmp/ssh_host_rsa_key.pub, tests/t/etc/modules/mod_snmp/tls-ca-cert.pem, tests/t/etc/modules/mod_snmp/tls-server-cert.pem, tests/t/lib/ProFTPD/Tests/Modules/mod_snmp.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_snmp/ban.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_snmp/sftp.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_snmp/tls.pm, tests/t/modules/mod_snmp.t, tests/t/modules/mod_snmp/ban.t, tests/t/modules/mod_snmp/sftp.t, tests/t/modules/mod_snmp/tls.t, tests/tests.pl: Adding the mod_snmp testsuite. 2013-05-15 castaglia <castaglia> * doc/contrib/index.html, doc/contrib/mod_snmp.html: Adding mod_snmp documentation. 2013-05-15 castaglia <castaglia> * contrib/mod_snmp/Makefile.in, contrib/mod_snmp/PROFTPD-MIB.txt, contrib/mod_snmp/agentx.h, contrib/mod_snmp/asn1.c, contrib/mod_snmp/asn1.h, contrib/mod_snmp/config.guess, contrib/mod_snmp/config.sub, contrib/mod_snmp/configure, contrib/mod_snmp/configure.in, contrib/mod_snmp/contrib/opennms/proftpd.datacollection-config.xml, contrib/mod_snmp/contrib/opennms/proftpd.snmp-graph.properties, contrib/mod_snmp/db.c, contrib/mod_snmp/db.h, contrib/mod_snmp/install-sh, contrib/mod_snmp/mib.c, contrib/mod_snmp/mib.h, contrib/mod_snmp/mod_snmp.c, contrib/mod_snmp/mod_snmp.h.in, contrib/mod_snmp/msg.c, contrib/mod_snmp/msg.h, contrib/mod_snmp/notify.c, contrib/mod_snmp/notify.h, contrib/mod_snmp/packet.c, contrib/mod_snmp/packet.h, contrib/mod_snmp/pdu.c, contrib/mod_snmp/pdu.h, contrib/mod_snmp/smi.c, contrib/mod_snmp/smi.h, contrib/mod_snmp/stacktrace.c, contrib/mod_snmp/stacktrace.h, contrib/mod_snmp/uptime.c, contrib/mod_snmp/uptime.h: Adding mod_snmp to the contrib modules of the ProFTPD source distribution. 2013-05-15 castaglia <castaglia> * .cvsignore: Ignore any .git/ directories and .gitignore files which may show up. 2013-05-14 castaglia <castaglia> * src/auth.c: When caching the UID based on a name, use the name that's been retrieved from the source, rather than the lookup key name. In the case of e.g. SQL table lookups, the lookup key might be different from the returned official name. We need to use the official name, since that is what would be used later for name-to-ID lookups. 2013-05-12 castaglia <castaglia> * doc/contrib/mod_wrap2_sql.html: Include indexes (for performance) in the example schema. 2013-05-09 castaglia <castaglia> * doc/howto/Memcache.html: Adding another memcache-related FAQ. 2013-05-09 castaglia <castaglia> * doc/howto/Memcache.html, doc/howto/index.html: Adding a howto for Memcache support in proftpd. 2013-05-09 castaglia <castaglia> * doc/howto/Logging.html: Add a wtmp log-related FAQ to the Logging howto. 2013-05-09 castaglia <castaglia> * doc/howto/Logging.html: No need to direct SystemLog to /dev/null to disable logging; simply setting "SystemLog none" is enough. 2013-05-09 castaglia <castaglia> * doc/modules/mod_dso.html: Adding mod_dso FAQ encountered on the proftp-user mailing list today. 2013-05-08 castaglia <castaglia> * NEWS, contrib/mod_ldap.c: Bug#3937 - Segfault when retrieving SSH public key from LDAP directory. 2013-05-07 castaglia <castaglia> * doc/modules/mod_memcache.html: Mention that the MemcacheServers directive handles Unix domain socket paths as well (per Bug#3931). 2013-05-07 castaglia <castaglia> * contrib/mod_ban.c: Typo which broke the BanCache directive's memcache functionality. 2013-05-06 castaglia <castaglia> * NEWS, modules/mod_ctrls.c: Bug#3927 - Default ControlsSocket created despite custom ControlsSocket path. 2013-05-06 castaglia <castaglia> * contrib/mod_sftp/scp.c: Fix comment from bad patching. 2013-05-06 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3935 - scp download of nonexistent file results in client hang. 2013-05-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#3935, or at least one of its manifestations. Also cleaned up some minor styling. 2013-05-03 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c: Bug#3934 - HideUser/HideGroup do not work as expected for virtual users. 2013-05-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm, tests/t/lib/ProFTPD/Tests/Config/HideUser.pm: Adding regression tests for Bug#3934 (HideUser/HideGroup not working for virtual users). 2013-04-30 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#3932 - SQLAuthType Backend returns "password mismatch" for MySQL PASSWORD(). 2013-04-30 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#3929 - pam_session_close() requires root privs on some platforms. 2013-04-23 castaglia <castaglia> * contrib/ftpasswd, contrib/ftpquota: Use env in the shebang line, rather than assuming the location of perl to use. 2013-04-23 castaglia <castaglia> * src/proftpd.8.in: Incorporating doc patch from FreeBSD ports tree. 2013-04-23 castaglia <castaglia> * src/wtmp.c: Incorporating patch from FreeBSD ports tree. 2013-04-23 castaglia <castaglia> * src/var.c: Removed unnecessary typecast. 2013-04-23 castaglia <castaglia> * src/auth.c: Quell compiler warnings on some platforms/compilers about signature mismatches via typecasting. 2013-04-16 castaglia <castaglia> * modules/mod_delay.c, src/inet.c, src/netaddr.c: If getaddrinfo(3) fails for a new connection, make sure the connection fails quickly, rather than proceeding further (and getting into a state where it is never terminated). 2013-04-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: SFTP regression test for HideFiles and symlinks (Bug#3924). 2013-04-16 castaglia <castaglia> * src/dirtree.c: Minor tweak to dir_hide_file(), needed for Bug#3924 (and SFTP directory listings, specifically). 2013-04-16 castaglia <castaglia> * NEWS, modules/mod_facts.c, modules/mod_ls.c, src/dirtree.c: Bug#3924 - HideFiles does not filter symlinks. 2013-04-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding regression tests for Bug#3924. 2013-04-15 castaglia <castaglia> * contrib/mod_sftp/fxp.h: Missing checkin for Bug#3926; this fixes the CVS build. 2013-04-12 castaglia <castaglia> * doc/contrib/mod_sftp.html: Fix up the SFTPAuthorizedUserKeys directive description. 2013-04-11 castaglia <castaglia> * doc/contrib/mod_sftp.html: Adding FAQ to mod_sftp docs about localised directory listings, from Bug#3925. 2013-04-11 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3925 - SFTP directory listings are sensitive to locale environment variables. 2013-04-11 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sftp.html: Update mod_sftp docs with mention of support for the fsync extension. 2013-04-11 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c: Bug#3926 - Support OpenSSH fsync SFTP extension. 2013-04-10 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix the length of the strings compared for the OpenSSH extensions in SFTP EXTENDED requests. 2013-04-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Collect all the common code for building the SQLite db into a function. Add test showing that just changing the table name for SQLUserInfo/SQLGroupInfo directives works as expected. 2013-04-03 castaglia <castaglia> * modules/mod_rlimit.c: Correct the bug number in the comment. 2013-04-03 castaglia <castaglia> * modules/mod_cap.c: Slightly better error message when setreuid(2) fails. 2013-04-03 castaglia <castaglia> * NEWS, modules/mod_rlimit.c: Bug#3923 - mod_cap does not revoke root privileges properly for SFTP connections. 2013-04-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm: Adding regression test for Bug#3923. 2013-03-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding more regression tests for <Directory> + <Limit> configs. 2013-03-29 castaglia <castaglia> * configure: Updated configure. 2013-03-29 castaglia <castaglia> * config.h.in, configure.in, contrib/mod_sql_mysql.c: Improve on the detection of MySQL's "scrambled password" API (for implementing the "Backend" SQLAuthType for MySQL servers), based on a patch from Bernd Lommerzheim. 2013-03-29 castaglia <castaglia> * contrib/mod_sftp/auth-kbdint.c: Include explanatory comment about the errno value and Bug#3921. 2013-03-28 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth-kbdint.c: Bug#3921 - Single failed keyboard-interactive login attempt causes SSH connection to close prematurely. 2013-03-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_pam.pm, tests/t/modules/mod_sftp_pam.t, tests/tests.pl: Start working on regression tests for the mod_sftp_pam module, in light of Bug#3921. 2013-03-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for the umac-64@openssh.com support added for Bug#3920. 2013-03-28 castaglia <castaglia> * contrib/mod_sftp/mac.c: Typo. Sigh. 2013-03-28 castaglia <castaglia> * contrib/mod_sftp/mac.c: Properly free up the allocated UMAC context objects when e.g. unloading mod_sftp (part of Bug#3920). 2013-03-28 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Need to include the mac.h header now, to avoid compiler warnings about unknown functions. 2013-03-28 castaglia <castaglia> * contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h: Forgot to commit these changes for Bug#3920. 2013-03-28 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the mod_sftp docs to reflect supporting umac-64@openssh.com. 2013-03-28 castaglia <castaglia> * NEWS, contrib/mod_sftp/Makefile.in, contrib/mod_sftp/crypto.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/mac.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/umac.c, contrib/mod_sftp/umac.h: Bug#3920 - Support umac-64@openssh.com digest for mod_sftp. 2013-03-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm: Adding regression test showing that proftpd correctly handles group names that contain backslashes in them. 2013-03-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Clean up the SQLite script once we're done with it. 2013-03-16 castaglia <castaglia> * doc/modules/mod_log.html: Bug#3864 added support for (among other things) a %g LogFormat variable; updated the LogFormat docs accordingly. 2013-03-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding regression tests for the SQL PrimaryKey directives added for Bug#3864. 2013-03-16 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, modules/mod_log.c: Bug#3864 - Support SQL query to lookup/use primary key for logged-in user/group. 2013-03-15 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Quell compiler warnings (Bug#3919) caused by changes in callback signatures between OpenSSL-0.9.x and OpenSSL-1.0.x. Since the latter now has ABI compatibility rules, it will become more widespread, and thus we will change our callbacks to match the newer signatures. This will cause compiler warnings about mismatched signatures for older OpenSSL installations, but that is the price of keeping up to date. 2013-03-15 castaglia <castaglia> * doc/howto/KeepAlives.html: Minor grammar fixes. 2013-03-14 castaglia <castaglia> * contrib/mod_sftp/keys.c: Make the SFTPLog a little less spammy by moving some of the logged messages (e.g. about which paths are used as host keys) into trace logging. 2013-03-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.c, src/regexp.c: Bug#3918 - mod_sftp segfault after SIGHUP when evaluating client banner. 2013-03-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#3918. 2013-03-13 castaglia <castaglia> * doc/modules/mod_xfer.html: Updating DeleteAbortedStores doc per Bug#3917. 2013-03-13 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, modules/mod_xfer.c: Bug#3917 - Make DeleteAbortedStores on by default when HiddenStores enabled. 2013-03-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm: Adding regression test for Bug#3917. 2013-03-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding another regression test for Bug#3915. 2013-03-12 castaglia <castaglia> * doc/howto/TLS.html: Include the error message frequently seen on the client end of things in the FAQ about NoSessionReuseRequired. 2013-03-12 castaglia <castaglia> * doc/howto/TLS.html: Add TLS FAQ about data transfers and the NoSessionReuseRequired TLSOption. 2013-03-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding regression test for Bug#3915. 2013-03-08 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3914 - 1.3.5rc2 fails to build on Solaris 10. 2013-03-08 castaglia <castaglia> * contrib/mod_sftp/msg.c: Quell compiler (and static code analysi) warnings (Bu#3912). 2013-03-08 castaglia <castaglia> * modules/mod_auth_unix.c: Handle potential NULL return value from getpwnam(3) better. Stylistic nits. 2013-03-08 castaglia <castaglia> * utils/ftptop.c: Replace strcat(3) with snprintf(3). Not as much of a concern for overflows given that ftptop is not a setuid process, but still, it's a good habit to get into. 2013-03-08 castaglia <castaglia> * contrib/mod_sftp/packet.c: Don't fire the 'ssh2.netio-write' event until after we've determined that the socket is writable. And if the socket is NOT writable, then clear the iovec array before returning. 2013-03-08 castaglia <castaglia> * contrib/mod_sql_mysql.c: Add comment about known compiler warning about "implicit function declaration" (Bug#3908). 2013-03-08 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3910 - Clang's scan-build warns on set[u][g]id unchecked return value. 2013-03-07 castaglia <castaglia> * configure: Updated configure. 2013-03-07 castaglia <castaglia> * configure.in: Enable a few more gcc warning flags, if supported, when --enable-devel is used. 2013-03-07 castaglia <castaglia> * contrib/mod_log_forensic.c: Quell more compiler warnings (Bug#3908). 2013-03-07 castaglia <castaglia> * contrib/mod_sql_mysql.c: Trying to quell compiler warnings (Bug#3908). 2013-03-07 castaglia <castaglia> * contrib/mod_log_forensic.c, src/fsio.c: Quell compiler warnings (Bug#3908). 2013-03-06 castaglia <castaglia> * include/version.h: Bump version for CVS. 2013-03-06 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2013-03-06 castaglia <castaglia> * locale/files.txt: Updated list of files for localization. 2013-03-06 castaglia <castaglia> * NEWS: Update NEWS with release date. 2013-03-06 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of proftpd-1.3.5rc2. 2013-03-06 castaglia <castaglia> * contrib/mod_log_forensic.c: Quell compiler warning. 2013-03-06 castaglia <castaglia> * RELEASE_NOTES: Updating release notes for proftpd-1.3.5rc2. 2013-03-06 castaglia <castaglia> * doc/contrib/mod_tls.html: Adding description of the new TLSUserName directive to the mod_tls docs. 2013-03-06 castaglia <castaglia> * doc/contrib/mod_tls.html: Document that TLSSessionCache can be configured with a parameter of "off". 2013-03-06 castaglia <castaglia> * doc/modules/mod_xfer.html: Mention the optional suffix parameter in the HiddenStores synopsis. 2013-03-06 castaglia <castaglia> * doc/modules/mod_auth_file.html: Adding discussion of the stricter permission checks now done by mod_auth_file. 2013-03-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Adding regression test showing conversion from ISO-8859-1 client-side charset to UTF-8 server-side charset. 2013-03-01 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_ban.html: Updating docs for new TLSHandshake BanOnEvent rule. 2013-03-01 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_ban.c, contrib/mod_tls.c: Bug#3906 - Support ban rule for clients which perform SSL/TLS handshakes too frequently. 2013-03-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Adding regression test for the new BanOnEvent TLSHandshake rule (Bug#3906). 2013-03-01 castaglia <castaglia> * contrib/mod_log_forensic.c: Print out mod_unique_id's UNIQUE_ID value, if present, in the ForensicLogFile. 2013-02-28 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3900 - ProFTPD terminating (signal 11) on some sftp connections. 2013-02-27 castaglia <castaglia> * src/mkhome.c: And, for site which really need it, generate before/after events for when a skeleton directory is configured for CreateHome. 2013-02-27 castaglia <castaglia> * src/mkhome.c: Only fire the 'core.created-home' event IFF the home directory was actually created (versus already existing). 2013-02-27 castaglia <castaglia> * src/fsio.c: Slight performance in statcache check by checking path lengths first, before calling strncmp(3). 2013-02-27 castaglia <castaglia> * RELEASE_NOTES: Adding more release notes to myself, to flesh out today/tomorrow. 2013-02-27 castaglia <castaglia> * contrib/mod_sftp/scp.c: Checking in the proper patch/fix for Bug#3904. 2013-02-27 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3904 - scp downloads using glob pattern sometimes fails. 2013-02-27 castaglia <castaglia> * doc/contrib/ftpmail.html: Updated ftpmail docs, per Bug#3709. 2013-02-27 castaglia <castaglia> * NEWS, contrib/ftpmail: Bug#3709 - Support download-triggered emails in the ftpmail script. 2013-02-27 castaglia <castaglia> * contrib/mod_log_forensic.c: Rather than using sstrncpy() (which can examine every byte looking for NUL), use memcpy(3), since we already know how long the buffer to be copied is. Hopefully this is faster, and reduces CPU load on logging-busy servers (e.g. lots of TraceLog messages being generated/copied by mod_log_forensic). 2013-02-27 castaglia <castaglia> * src/mkhome.c: Don't generate the 'core.created-home' event until after any possible CreateHome skeleton directory has been copied. 2013-02-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Typo. 2013-02-26 castaglia <castaglia> * doc/contrib/mod_sftp_pam.html: Document the new SFTPPAMOptions value, per Bug#3905. 2013-02-26 castaglia <castaglia> * NEWS, contrib/mod_sftp_pam.c, modules/mod_auth_pam.c: Bug#3905 - Handle the Linux-specific PAM_RADIO_TYPE message properly. 2013-02-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the handling of exit status values from external commands (e.g. scp). 2013-02-25 castaglia <castaglia> * contrib/mod_log_forensic.c: Deal with Bug#3903 in mod_log_forensic by have a separate pool for each log message object in the ring (and thus each message string is allocated out of its own pool). 2013-02-25 castaglia <castaglia> * contrib/mod_sftp/packet.c: Use a more conservative approach, and use memmove(3) instead of memcpy(3). 2013-02-25 castaglia <castaglia> * src/log.c: Better handling of return value from pr_log_event_listening(). 2013-02-25 castaglia <castaglia> * src/trace.c: Avoid calling strlen(3) unnecessarily on TraceLog messages. 2013-02-24 jwm <jwm> * contrib/mod_ldap.c: git 07dd890968: release mod_ldap 2.9.3 2013-02-24 jwm <jwm> * contrib/mod_ldap.c: git 577776b579: don't emit the bind DN password in debug output on successful bind (Bug #3885) 2013-02-24 jwm <jwm> * contrib/mod_ldap.c: git b77b43e314: fail when someone's left the on/off flags when moving to LDAP{Users,Groups} 2013-02-24 castaglia <castaglia> * NEWS, include/log.h, src/event.c, src/log.c: Bug#3903 - With mod_log_forensic enabled, SSH connections fail randomly. 2013-02-24 castaglia <castaglia> * modules/mod_auth_file.c, tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Per Bug#3892, have mod_auth_file check for symlinks; if the configured Auth file path is a symlink, make sure that the parent directory of the symlink is not world-writable, as well as the parent directory of the target path not being world-writable. 2013-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Give the server time to start up, and write out the PidFile, before checking for the PidFile. 2013-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding more different configurations/environments to the regression tests for Bug#3904. 2013-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test using scp(1) to download a glob pattern. 2013-02-22 castaglia <castaglia> * src/trace.c: Avoid needless (and wasteful) strlen(3) calls by tracking the length ourselves. 2013-02-22 castaglia <castaglia> * modules/mod_facts.c: Attempt to address Bug#3900 by having the mod_facts module's handling of a LOG_CMD_ERR MLSD command be ignored for SFTP connections. 2013-02-22 castaglia <castaglia> * src/trace.c: Bug#3902 - mod_log_forensic seems to send trace channels to trace log even if level is 0. 2013-02-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Populate the cmd_class member for the fake cmd_recs generated when aborting unclosed handles in mod_sftp. 2013-02-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Do not re-allocate a new tmp_pool for the internal cmd_recs in mod_sftp; a tmp_pool is already allocated by pr_cmd_alloc(). 2013-02-21 castaglia <castaglia> * doc/contrib/mod_log_forensic.html: Document the additional ForensicLogFile metadata headers. 2013-02-21 castaglia <castaglia> * contrib/mod_log_forensic.c: Add an "Elapsed:" header to the metadata, containing the elapsed session time (in millisecs). Also fixes up a few other nits (like correctly setting the engine variable to 'false' when we need to disable the module due to bad config). 2013-02-21 castaglia <castaglia> * doc/modules/mod_rlimit.html: Fleshing out the rest of the mod_rlimit documentation. 2013-02-21 castaglia <castaglia> * doc/modules/index.html, doc/modules/mod_rlimit.html: Adding documentation for the new mod_rlimit module. 2013-02-21 castaglia <castaglia> * modules/mod_rlimit.c: Adding an RLimitProcesses directive, to disable the NPROC limit if needed. 2013-02-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: I suspect that this is the cause of Bug#3900. We were allocating a buffer for the generated handle which was too short (8 bytes), and then proceeding to write into the buffer as if it was the larger size that we expected (16 bytes). 2013-02-21 castaglia <castaglia> * contrib/mod_log_forensic.c: Fixing the generation of ForensicLogFile data in the face of unclean closes, e.g. when dealing with segfaults. 2013-02-21 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Tweak to make use of AuthUserFiles in the testsuite work as expected. 2013-02-20 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3899 - Support authentication of users based on SSL/TLS client certificate. 2013-02-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for Bug#3899 (TLSUserName directive). 2013-02-20 castaglia <castaglia> * contrib/mod_ifsession.c: Typo in comment; no functional change. 2013-02-20 castaglia <castaglia> * contrib/mod_ifsession.c: More fun with deferred <Directory> path resolution in mod_ifsession, for Bug#3881. 2013-02-20 castaglia <castaglia> * contrib/mod_ifsession.c: More work (and hopefully progress) on Bug#3881. Now the complications on the user's site seem to be related to the use of symlinks. 2013-02-20 castaglia <castaglia> * NEWS, src/parser.c: Bug#3896 - Warn when world-writable config files are used. 2013-02-20 castaglia <castaglia> * src/dirtree.c: Re-enable the clearing of the CF_DEFER flag, to prevent repetitive needless processing of <Directory> paths. 2013-02-20 castaglia <castaglia> * src/parser.c: Avoid unnecessary strlen(3) calls when parsing configuration. 2013-02-20 castaglia <castaglia> * src/fsio.c: Stylistic nits; no functional change. 2013-02-20 castaglia <castaglia> * contrib/mod_ifsession.c: More tweaks needed for Bug#3881. 2013-02-19 castaglia <castaglia> * src/dirtree.c: Do NOT clear the CF_DEFER flag from <Directory> sections; we may need to re-try resolution later (e.g. for <Directory> sections added via mod_ifsession). 2013-02-19 castaglia <castaglia> * src/dirtree.c: Add some trace logging into the resolution of deferred-path <Directory> sections. 2013-02-19 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3897 - mod_sftp does not handle a REALPATH request properly for SFTP protocol version 6. 2013-02-19 castaglia <castaglia> * contrib/mod_ifsession.c: Check that the configured DisplayLogin file is not a directory in mod_ifsession, too. 2013-02-19 castaglia <castaglia> * tests/api/pool.c: Adding pool API test, commented out for now. There is an issue with regard to pool size with larger-than-pool-size allocations out of the pool, it seems. 2013-02-17 jwm <jwm> * doc/Configuration.html: whee up-to-date configuration docs for the first time since 2007 2013-02-17 jwm <jwm> * tests/tests.pl: fix syntax error 2013-02-16 castaglia <castaglia> * src/dirtree.c: One more tiny tweak; might help Bug#3881. 2013-02-15 castaglia <castaglia> * modules/mod_core.c, modules/mod_ident.c, modules/mod_ls.c, modules/mod_xfer.c: Switch the core modules to start using the new PR_IS*() character type detection macros. 2013-02-15 castaglia <castaglia> * contrib/mod_ctrls_admin.c, contrib/mod_exec.c, contrib/mod_ifversion.c, contrib/mod_radius.c, contrib/mod_rewrite.c, contrib/mod_sftp/interop.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/scp.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c: Start using the new PR_IS*() macros to guard the ctype(3) character detection checks. 2013-02-15 castaglia <castaglia> * src/auth.c, src/ctrls.c, src/fsio.c, src/main.c, src/netacl.c, src/netaddr.c, src/parser.c, src/str.c, src/support.c, src/xferlog.c, utils/ftpshut.c, utils/misc.c: Start using the new PR_IS*() macros for character type detection/checking. 2013-02-15 castaglia <castaglia> * include/ascii.h, include/conf.h, utils/utils.h: Define PR_IS* macro wrappers around the ctype(3) checks, so that isascii(3) is always checked first, before using the other ctype(3) check on the given character. 2013-02-15 castaglia <castaglia> * contrib/mod_ifsession.c: Fix compiler warning (and logged message). 2013-02-15 castaglia <castaglia> * contrib/mod_ifsession.c, include/dirtree.h, modules/mod_core.c, src/dirtree.c: The previous change (additional work for Bug#3881) changed the signature of the add_config() and add_config_set() functions. To avoid possible API breakage, this change creates new pr_config_add() and pr_config_add_set() functions (which take the new flags argument), and provides backward-compatible add_config() and add_config_set() wrappers. 2013-02-15 castaglia <castaglia> * contrib/mod_ifsession.c, include/dirtree.h, modules/mod_core.c, src/dirtree.c: Additional work needed for Bug#3881. Specifically, when merging <Directory> sections in, mod_ifsession needs to add the <Directory> config_rec to the *head* of the set, rather than the *tail*. When parsing the config file without mod_ifsession, <Directory> sections are added to the set head (i.e. last <Directory> parsed appears first in the set). With this, mod_ifsession's merging in of <Directory> sections now more closely matches the parser behavior/ordering. 2013-02-15 castaglia <castaglia> * src/dirtree.c: Stylistic cleanup. 2013-02-15 castaglia <castaglia> * modules/mod_ls.c, src/netaddr.c: Use the isascii(3) test prior to checking with isalnum(3), to ensure that the isalnum(3) input really is an ASCII character. 2013-02-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Adding regression test for mod_quotatab_file, using quotatab files created via ftpquota, and using zero-byte download limits. 2013-02-14 castaglia <castaglia> * modules/mod_xfer.c: Removing now-unnecessary trace logging; I think the fix for Bug#3874 has been verified. 2013-02-14 castaglia <castaglia> * modules/mod_xfer.c: More trace logging for investigating Bug#3874. 2013-02-14 castaglia <castaglia> * modules/mod_xfer.c: More debug trace logging, trying to determine why the fix for Bug#3874 isn't working as expected. 2013-02-14 castaglia <castaglia> * modules/mod_xfer.c: Log if there's an error adding the HiddenStores-path-is-on-NFS node. 2013-02-14 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_rewrite.c, contrib/mod_shaper.c, contrib/mod_tls_shmcache.c, contrib/mod_wrap.c, contrib/mod_wrap2_file.c: Catch more cases where the expected paths to files might inadvertently be paths to directories. 2013-02-14 castaglia <castaglia> * modules/mod_core.c: Check for a directory when opening a configured DisplayQuit file. 2013-02-14 castaglia <castaglia> * modules/mod_auth.c, modules/mod_delay.c, modules/mod_xfer.c: Adding more checks for directories in places where we expect to find files. 2013-02-14 castaglia <castaglia> * contrib/mod_sftp/auth.c, contrib/mod_sftp/rfc4716.c: Handle cases in mod_sftp where the files to be opened might inadvertently be directories. 2013-02-14 castaglia <castaglia> * src/display.c: Make sure that we don't open Display files that are directories. 2013-02-14 castaglia <castaglia> * src/parser.c: Don't forget to close the file handle. 2013-02-14 castaglia <castaglia> * modules/mod_auth_file.c: Make sure that the configure AuthUserFile/AuthGroupFile paths are not directories. 2013-02-14 castaglia <castaglia> * src/parser.c: Check whether the given config file is a directory; if so, error out. 2013-02-14 castaglia <castaglia> * modules/mod_auth_file.c: Set the close-on-exec flag for the AuthUserFile/AuthGroupFile fds. 2013-02-14 castaglia <castaglia> * doc/contrib/mod_quotatab_file.html: Mention the fact that <= 0 values for files/bytes limits/tallies are handled as "unlimited" in the mod_quotatab_file docs. 2013-02-14 castaglia <castaglia> * contrib/ftpquota: If users specify zero (or less) values for any bytes/files value, ftpquota now emits a notice message indicating that such values mean "unlimited". 2013-02-14 castaglia <castaglia> * contrib/ftpquota: Make sure that ftpquota shows "unlimited" for values set to zero (or lower). 2013-02-13 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3895 - Missing TransferLog entry under some out-of-space conditions. 2013-02-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Regression test for Bug#3895; requires the mod_enospc module. 2013-02-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Adding regression test for MKD, making sure that SGID bits are propagated properly for newly-created directories (see Bug#3841). 2013-02-12 castaglia <castaglia> * src/fsio.c: Additional fix for Bug#3841: make sure the pr_fsio_smkdir() function correctly propagates the SUID/SGID bits from the parent directory to the created directory. 2013-02-12 castaglia <castaglia> * contrib/mod_sftp/packet.c: When we try to reset the TimeoutIdle timer, the timers may be in the process of being handled. Thus we need to handle the EINTR properly. 2013-02-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Add another TransferLog regression test, based on uploading to /dev/full and making sure that a TransferLog entry for the aborted upload is recorded. 2013-02-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Fix one mod_exec test such that, if the expected file is not present, we properly capture the exception thrown in the testcase-specific log. 2013-02-08 castaglia <castaglia> * contrib/mod_exec.c: Use an int, rather than an unsigned char, for the ExecEngine value. It's easier that way, and it's becoming the convention for all *Engine values. 2013-02-08 castaglia <castaglia> * modules/mod_rlimit.c: Make sure that mod_rlimit does not set RLIMIT_NPROC if the mod_exec module is loaded and enabled for this <VirtualHost>. 2013-02-08 castaglia <castaglia> * configure: Used wrong version of autoconf to generate previous configure script. 2013-02-08 castaglia <castaglia> * configure: Updated configure. 2013-02-08 castaglia <castaglia> * RELEASE_NOTES: Mention the appearance of mod_rlimit in the release notes. 2013-02-08 castaglia <castaglia> * configure.in, modules/mod_core.c, modules/mod_rlimit.c, src/main.c: Refactor the RLimit* code out of mod_core.c, and out of src/main.c, into its own module: mod_rlimit. This module will be compiled in by default, and will try to set sensible resource limits for new sessions (e.g. RLIMIT_NPROC). 2013-02-08 castaglia <castaglia> * src/dirtree.c: Add some trace logging for when we check AllowFilter/DenyFilter against the arguments for specific commands. 2013-02-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AllowFilter.pm: Explicitly specify the Order directive, to ensure that the <Limit> sections are handled as expected. 2013-02-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/RLimitOpenFiles.pm: More tests for minimal RLimitOpenFiles settings. 2013-02-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/RLimitCPU.pm: Adding more RLimitCPU tests, ensuring the configured CPU resource limits are being enforced. 2013-02-08 castaglia <castaglia> * src/trace.c: Faster way to check for an empty string, without calling strlen(3). 2013-02-08 castaglia <castaglia> * modules/mod_core.c, src/trace.c: Better handling of typo'd Trace directive values (e.g. "directory:", with no level number). 2013-02-07 castaglia <castaglia> * contrib/mod_tls.c, include/inet.h, src/inet.c: For control connections, TCP_NODELAY is enabled by default. For data connections, TCP_NODELAY is *disabled* by default (since we want to optimize for full packets for data transmission). However, disabling TCP_NODELAY may hurt TLS handshakes, which are full of many small packets going back and forth. With this tweak, then, Nagling is turned off (i.e. TCP_NODELAY is enabled) for performing a TLS handshake for a data connection, for the duration of the handshake. 2013-02-07 castaglia <castaglia> * include/options.h: Tune the default listen(2) backlog higher. 2013-02-06 castaglia <castaglia> * NEWS, utils/ftptop.c: Bug#3894 - ftptop doesn't work with --enable-nls. 2013-02-06 castaglia <castaglia> * tests/t/config/rlimitcpu.t, tests/t/config/rlimitopenfiles.t, tests/t/lib/ProFTPD/Tests/Config/RLimitCPU.pm, tests/t/lib/ProFTPD/Tests/Config/RLimitOpenFiles.pm, tests/tests.pl: Adding regression tests for the RLimitCPU and RLimitOpenFiles directives. 2013-02-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/RLimitMemory.pm: Update RLimitMemory tests to use testcase-specific logging. Added test for using the 'daemon' setting. 2013-02-06 castaglia <castaglia> * include/rlimit.h, modules/mod_core.c, src/main.c, src/rlimit.c: Next part of the resource limit refactoring: update the code to use the new pr_rlimit_* functions. 2013-02-06 castaglia <castaglia> * include/conf.h: Pull in the new rlimit.h header. 2013-02-06 castaglia <castaglia> * include/rlimit.h, src/rlimit.c: Make sure we don't lose functionality by omitting use of RLIMIT_VMEM (if possible) as a fallback for memory resource limits. 2013-02-06 castaglia <castaglia> * Make.rules.in, include/rlimit.h, src/rlimit.c: Refactoring the resource limit code into a separate API, so that it can be easily called/used by other portions of the code (e.g. other modules). 2013-02-06 castaglia <castaglia> * contrib/ftpasswd, tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Update the ftpasswd script so that it sets permissions on the created AuthUserFile/AuthGroupFile such that mod_auth_file, in light of the more strict checks added for Bug#3892, will still accept the ftpasswd-generated files. 2013-02-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Properly delete log from successful SQLLogOnEvent test. 2013-02-06 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#3893 - Add SQLLogOnEvent directive, for performing SQL query on configurable event. 2013-02-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Checking in test for new SQLLogOnEvent functionality (Bug#3893). 2013-02-05 castaglia <castaglia> * doc/modules/mod_auth_file.html: Mention the new strict permission checks on the AuthUserFile and AuthGroupFile in the mod_auth_file docs. 2013-02-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Adding regression tests for Bug#3892. 2013-02-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_auth_file.c: Bug#3892 - mod_auth_file should have strict permission checks of configured files. 2013-02-04 castaglia <castaglia> * doc/howto/Logging.html: Add logging FAQ for how to disable all logging for proftpd. 2013-02-04 castaglia <castaglia> * src/ctrls.c: Skip any zero-length control request arguments. 2013-02-04 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: When generating AuthUserFile and AuthGroupFiles for the unit tests, make sure the generated files have stricter permissions on them. 2013-02-04 castaglia <castaglia> * include/ctrls.h, src/ctrls.c: Avoid non-printable characters in ftpdctl requests. 2013-02-04 castaglia <castaglia> * src/ctrls.c: Add max length limit to control action request argument. Fix caching/propagating of errno value. Fix stylistic nits. 2013-02-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Various tests for configurations related to Bug#3753. 2013-02-04 castaglia <castaglia> * doc/contrib/mod_sftp.html: Updating some of the mapping between FTP command and SFTP request, with regard to <Limit> sections, per Bug#3753. 2013-02-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3753 - Support SFTP request names in <Limit> sections better. 2013-02-03 castaglia <castaglia> * src/dirtree.c: Stylistic nit; no functional change. 2013-02-03 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add mention of <Limit WRITE> applying to WRITE SFTP request (of course). 2013-02-03 castaglia <castaglia> * doc/contrib/mod_tls.html: Update mod_tls docs in light of TLSProtocol changes for Bug#3891. 2013-02-03 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3891 - Allow TLSProtocol directive in <VirtualHost> and <Global> sections. 2013-02-03 castaglia <castaglia> * src/scoreboard.c: Fix up the trace-level log messages related to scoreboard locking. 2013-02-02 castaglia <castaglia> * src/log.c: Fix compiler error (i.e. programmer error). 2013-02-02 castaglia <castaglia> * modules/mod_facts.c, modules/mod_ls.c, src/data.c: Additional tweaks needed for Bug#3819 (and for cleaning out development logging). 2013-01-31 castaglia <castaglia> * RELEASE_NOTES: Document the log format change in the release notes. 2013-01-31 castaglia <castaglia> * src/log.c: Now SystemLog (console and file), and all *Log files (via pr_log_writefile()) use ISO-8601 timestamp format. 2013-01-31 castaglia <castaglia> * include/trace.h, src/trace.c: Switch TraceLog to use ISO-8601 timestamps. Other logs soon to follow suit. 2013-01-31 castaglia <castaglia> * src/dirtree.c: Minor bugfixes when resolving deferred directories: handle cases where a leading '~' means just that, and clear the CF_DEFER flag once we're done resolving that directory. 2013-01-31 castaglia <castaglia> * doc/modules/mod_log.html: Updating LogFormat docs with descriptions of new %{iso8601}, %{microsecs}, and %{millisecs} variables. 2013-01-31 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, modules/mod_log.c: Bug#3889 - Support millisecond timestamp LogFormat variable. 2013-01-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding regression tests for the SQLLog handling of the timestamp-related LogFormat variables added for Bug#3889. 2013-01-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add regression test for %{microsecs} LogFormat variable, for Bug#3889, too. 2013-01-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding regression tests for the LogFormat variables added for Bug#3889. 2013-01-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Additional reproduction recipes for Bug#3881. 2013-01-30 castaglia <castaglia> * NEWS, include/data.h, modules/mod_facts.c, modules/mod_ls.c, src/data.c, src/pool.c: Bug#3819 - Second and subsequent LIST of directory with many files is very slow. 2013-01-30 castaglia <castaglia> * modules/mod_xfer.c: More tweaks on the path to verification/resolution for Bug#3874. 2013-01-30 castaglia <castaglia> * src/fsio.c: Since we are not including <linux/magic.h>, the NFS_SUPER_MAGIC value was not defined. So define it manually, for now. 2013-01-29 castaglia <castaglia> * src/fsio.c: Try to be more informative about NFS-related 'fsio' trace logging. 2013-01-29 castaglia <castaglia> * modules/mod_xfer.c: Temporary trace logging to help debug Bug#3874. 2013-01-29 castaglia <castaglia> * src/fsio.c: Slightly better formatting for NFS-related trace message. 2013-01-29 castaglia <castaglia> * modules/mod_xfer.c, src/fsio.c: When checking whether a HiddenStores path will be on an NFS filesystem, we need to use a path which *does* exist -- not the path that WILL exist, but does not exist yet (Bug#3874). 2013-01-29 castaglia <castaglia> * contrib/mod_sftp/mac.c: Remove unnecessary (and misleading) typecasts. 2013-01-29 castaglia <castaglia> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/cipher.h, contrib/mod_sftp/packet.c: Use unsigned char buffers in more places in the mod_sftp code, especially when reading in the bytes for incoming packets. This MAY help alleviate some of those "too long" packet warnings. 2013-01-29 castaglia <castaglia> * contrib/mod_sftp/ssh2.h: For (hopefully) better interoperability, use the same max packet size as OpenSSH does. 2013-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Add a mod_lang/UseEncoding test showing conversion from ISO-8859-1 characters to a UTF8 path locally. 2013-01-29 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/fsio.c: Further refinements of the trace logging of failed encoding/decoding. 2013-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Remove development cruft. 2013-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for Bug#3887. 2013-01-29 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3887 - <Limit ALL> erroneously blocks the PROT command used for FTPS. 2013-01-29 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/fsio.c: If we fail to encode/decode a string, AND the TraceLog level is set high enough, then log the bytes of the string in hex, for better analysis. 2013-01-28 castaglia <castaglia> * src/memcache.c: Bug#3886 - Calling pr_memcache_conn_set_namespace() crashes on buffer overflow. 2013-01-28 castaglia <castaglia> * contrib/mod_tls_memcache.c: Clean up logging/comments in mod_tls_shmcache; no functional change. 2013-01-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Tweak the regression test for Bug#3881 to match the reported use case better. 2013-01-25 castaglia <castaglia> * src/dirtree.c: When resolving deferred paths, make sure to handle tilde interpolation as well. 2013-01-25 castaglia <castaglia> * contrib/mod_ifsession.c: Make the lookup for the primary group name NOT be a requirement. If we find it, great. Otherwise, look up the supplemental groups, and move on. 2013-01-25 castaglia <castaglia> * contrib/mod_ifsession.c: Fix call to pr_auth_getgroups() to use user name, not group name, for the lookup. Sigh. 2013-01-25 castaglia <castaglia> * contrib/mod_ifsession.c: Additional tweak related to Bug#3882. Turns out that some modules (e.g. mod_ldap) are particular about the pr_auth_getgroups() call. In particular, some functions REQUIRE that array_headers be provided for GIDS and group names, not just one or the other. 2013-01-25 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add better trace logging of the v5/v6 BITS attribute. 2013-01-25 castaglia <castaglia> * contrib/mod_sftp/display.c, include/fsio.h, src/display.c, src/fsio.c: Provide a pr_fsio_fgetsize() function which gets the filesystem size given an fd, rather than a path. Then use this new function when handling Display files which are displayed AFTER a chroot(2) has occurred -- for in those cases, using fstatfs(2) et al works better than statfs(3). 2013-01-25 castaglia <castaglia> * contrib/mod_ifsession.c: More cleanup/polish for Bug#3882, removing misleading DisplayLogin related log messages. 2013-01-25 castaglia <castaglia> * configure: Updated configure. 2013-01-25 castaglia <castaglia> * NEWS, configure.in: Bug#3884 - Configure script not detecting MySQL make_scrambled_password functions. 2013-01-25 castaglia <castaglia> * contrib/mod_ifsession.c: Fix logging of mod_ifsession's lookup of a DisplayLogin file (to differentiate it from the logging done by mod_auth). 2013-01-25 castaglia <castaglia> * src/fsio.c: Typo. 2013-01-25 castaglia <castaglia> * contrib/mod_tls.c: If a data transfer command is rejected due to the lack of SSL/TLS, use the more proper 522 response code, rather than 550. 2013-01-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding regression test for Bug#3881. 2013-01-25 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#3881 - <Directory> sections within <IfGroup> sections not applied as expected. 2013-01-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_log_forensic.pm, tests/t/modules/mod_log_forensic.t, tests/tests.pl: Adding in the regression tests for the new mod_log_forensic module. 2013-01-25 castaglia <castaglia> * NEWS, README.modules, RELEASE_NOTES, contrib/mod_log_forensic.c, doc/contrib/index.html, doc/contrib/mod_log_forensic.html: Adding the mod_log_forensic module to the source distribution. 2013-01-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for a bug where mod_sftp would occasionally lose track of file/directory handles, due to use of wrong memory pool. 2013-01-24 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#3882 - DisplayLogin with an absolute path does not work properly within an <IfGroup> section. 2013-01-24 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix a bug in mod_sftp where file/directory handles could become "lost", leading to "Invalid handle" SFTP responses, due to use of wrong memory pool. 2013-01-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding regression test for Bug#3882. 2013-01-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Make the mod_ifsession tests pass properly on MacOSX. 2013-01-24 castaglia <castaglia> * src/fsio.c: Add trace logging for the pr_fsio_is_nfs() function, for easier analysis. 2013-01-23 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Use trace logging to log the error when we fail to find the handle given a name from the client. 2013-01-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Increase subpool size for SFTP packets to 128 bytes. 2013-01-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fleshing out the support for various v5/v6-specific attributes. 2013-01-22 castaglia <castaglia> * contrib/mod_sftp/msg.c: Log the errno value from backtrace(3), if we fail to get a backtrace from it. 2013-01-22 castaglia <castaglia> * src/main.c: Wrong datatype for backtrace(3) return value. 2013-01-22 castaglia <castaglia> * src/main.c: Log the errors we get from backtrace(3) and backtrace_symbols(3), if any. 2013-01-21 castaglia <castaglia> * modules/mod_xfer.c: Reduce unnecessary logging of EEXIST cases when adding command notes. 2013-01-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Adding regression test for Bug#3879. 2013-01-21 castaglia <castaglia> * NEWS, contrib/mod_quotatab_sql.c: Bug#3879 - Allow additional columns in SQLNamedQuery queries used for quota limits and tallies. 2013-01-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Wrong cmd_rec in fix for Bug#3874. 2013-01-21 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3878 - QuotaExcludeFilter not honored for uploads when 'hard' limits are used. 2013-01-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Adding regression test for Bug#3878. 2013-01-19 castaglia <castaglia> * contrib/mod_geoip.c: Bug#3877 - Fix GeoIPPolicy logging by making it a trace log message. 2013-01-19 castaglia <castaglia> * src/parser.c: Fix possible segfault due to null pointer dereference. 2013-01-19 castaglia <castaglia> * configure: Updated configure. 2013-01-19 castaglia <castaglia> * NEWS, config.h.in, configure.in, contrib/mod_sftp/fxp.c, include/fsio.h, modules/mod_xfer.c, src/fsio.c: Bug#3874 - Use of O_EXCL flag on HiddenStores files might break for NFS filesystems. 2013-01-18 castaglia <castaglia> * src/mkhome.c: Rather than generating a single event prior to actually creating the CreateHome directory, we now generate two events: 'core.creating-home' for before home creation, and 'core.created-home' for after. 2013-01-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for Bug#3869 using "TLSSessionCache off". 2013-01-18 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3869 - Use longer SSL session cache expiration by default. 2013-01-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#3873. 2013-01-16 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3873 - Provide FTP response code in ExtendedLog for failed SFTP REMOVE request. 2013-01-16 castaglia <castaglia> * doc/modules/mod_xfer.html: Updated HiddenStores docs per changes for Bug#3872. 2013-01-16 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_xfer.c: Bug#3872 - Use HiddenStores directive to customise suffix. 2013-01-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Adding unit test for HiddenStores suffix feature (Bug#3872). Also used assert_transfer_ok() function in the tests here. 2013-01-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Updated the HiddenStores tests to use testcase-specific logging. 2013-01-16 castaglia <castaglia> * doc/modules/mod_xfer.html: Fleshing out more directive descriptions in the mod_xfer docs. 2013-01-15 castaglia <castaglia> * contrib/mod_tls.c: Remove duplicate setting of SSL session context ID. 2013-01-15 castaglia <castaglia> * contrib/mod_tls.c: Logging nits and tweaks to the SSL session context ID used. (Removed some duplicate code that had snuck in, too.) 2013-01-15 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Minor logging nits/cleanup for the mod_tls_shmcache module. 2013-01-15 castaglia <castaglia> * contrib/mod_tls.c: Guard against NULL pointer dereference if the TLSRenegotiate timer fires when the SSL session on the control connection is being torn down. 2013-01-15 castaglia <castaglia> * contrib/mod_tls.c: Fix incorrect format string. 2013-01-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Revert the REALPATH request to be in the INFO logging class, not DIRS; REALPATH can be used on files and symlinks as well as on directories. Changed for fix for Bug#3871. 2013-01-15 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3871 - REALPATH SFTP request not properly handled by <Limit DIRS> configuration. 2013-01-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression/reproduction test for Bug#3871. 2013-01-15 castaglia <castaglia> * modules/mod_core.c: Use the proper C_ macros, rather than hardcoded strings, in more places. 2013-01-15 castaglia <castaglia> * contrib/mod_tls.c: Use a better variable name here. 2013-01-15 castaglia <castaglia> * src/fsio.c: Add trace logging of the arguments to the pr_fsio_smkdir() function, for future debugging/analysis. 2013-01-15 castaglia <castaglia> * contrib/mod_tls.c: Make sure that we can properly handle a SubjAltName iPAddress value that contains an IPv6 address, for comparing with our address. 2013-01-15 castaglia <castaglia> * tests/t/etc/modules/mod_tls/ipv6-ca.pem, tests/t/etc/modules/mod_tls/ipv6-client-cert2.pem, tests/t/etc/modules/mod_tls/ipv6-server-cert2.pem, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for handling of IPv6 iPAddress SubjAltName values in client certs. 2013-01-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/dhparams.pem, contrib/mod_tls.c: Bug#3779 - Generate new DH parameters for mod_tls and mod_sftp. 2013-01-14 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3870 - Handling of OPTS command can lead to crash. 2013-01-14 castaglia <castaglia> * tests/t/commands/opts.t, tests/t/lib/ProFTPD/Tests/Commands/OPTS.pm, tests/tests.pl: Add regression tests for the OPTS command (including test for Bug#3870). 2013-01-14 castaglia <castaglia> * src/fsio.c: Remove erroneous errno assignment. 2013-01-14 castaglia <castaglia> * contrib/mod_tls.c: Always set the socket to non-blocking before calling SSL_accept(), even on retries. This latter condition was not happening. 2013-01-14 castaglia <castaglia> * contrib/mod_tls.c: Fix minor nits in comments; no functional change. 2013-01-14 castaglia <castaglia> * contrib/mod_tls.c: Additional tweak (to avoid null pointer dereference) for Bug#3868. 2013-01-14 castaglia <castaglia> * contrib/mod_tls.c: Typo. 2013-01-14 castaglia <castaglia> * src/fsio.c: Make sure that if mkdtemp(3) is not available for any reason, we do not fail with a linker error. 2013-01-14 castaglia <castaglia> * include/fsio.h, src/fsio.c: Rather than having pr_fsio_smkdir() use mkdtemp(3) if available, now the use of mkdtemp(3) can be enabled/disabled at runtime. This is necessary e.g. to have mod_vroot function as expected. (Which is OK; the race condition against which pr_fsio_smkdir() guards mostly pertains to root privileges, and mod_vroot is for cases where root privs are NOT wanted.) 2013-01-13 castaglia <castaglia> * doc/contrib/mod_tls.html: Improvide the TLSDHParamFile documentation, in light of Bug#3868. 2013-01-13 castaglia <castaglia> * tests/t/etc/modules/mod_tls/dh1024.pem, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression tests for Bug#3868. 2013-01-13 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3868 - Only first DH param in TLSDHParamFile is used, regardless of requested keylength. 2013-01-13 castaglia <castaglia> * NEWS, contrib/ftpasswd: Bug#3867 - ftpasswd fails with "Permission denied" when adding subsequent passwd/group entries. 2013-01-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Now we have a bug number assigned. 2013-01-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Flesh out the first ftpasswd regression test. 2013-01-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Utils/ftpcount.pm, tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Make these utils tests pass again (just needed correct path to the executables). 2013-01-11 castaglia <castaglia> * tests/t/contrib/ftpasswd.t, tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Start working on ftpasswd unit tests. 2013-01-11 castaglia <castaglia> * contrib/ftpasswd: Bump the ftpasswd version, given the addition of support for other password hash types. 2013-01-11 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3866 - Issuing invalid 'ftpdctl ban' request causes segfault. 2013-01-11 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3865 - BanEngine not set in "server config" results in "mod_ban not enabled" ftpdctl error. 2013-01-11 castaglia <castaglia> * modules/mod_core.c: Stylistic nits; no functional change. 2013-01-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm: Adding another regression test using a config based on issues reported for Bug#3841, involving <Anonymous> logins and UserOwner. 2013-01-10 castaglia <castaglia> * src/fsio.c: Log a warning if we can't rename the directory in pr_fsio_smkdir(), too. 2013-01-10 castaglia <castaglia> * src/fsio.c: Fix another regression caused by Bug#3841: we might need root privs when setting the permissions on the created directory, as well as when possibly setting the ownership. 2013-01-10 castaglia <castaglia> * src/fsio.c: Fix regression with MKD commands (due to Bug#3841). 2013-01-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Added needed regression test for sending MKD for a chrooted session. 2013-01-10 castaglia <castaglia> * contrib/mod_tls.c: Generate an event whenever mod_tls is verifying a client certificate; the event fired will indicate whether the verification succeeded or failed. 2013-01-10 castaglia <castaglia> * contrib/mod_tls.c: Stylistic nits. Moved checking for peer cert earlier in the tls_dotlogin_allow() function; if the client doesn't present a certificate, then don't try to do any of the other work there, as a minor optimization. No functional changes. 2013-01-10 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c: Bug#3863 - mod_sftp does not handle MaxLoginAttempts properly. Make sure that we increment the auth_attempts counter whenever the auth method request does not explicitly succeed. 2013-01-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm: Updating mod_sftp+mod_ban MaxLoginAttempts regression test for Bug#3863. 2013-01-10 castaglia <castaglia> * doc/contrib/mod_tls.html: Adding description of TLSMasqueradeAddress directive to mod_tls docs. 2013-01-10 castaglia <castaglia> * doc/modules/mod_core.html: Typo. 2013-01-09 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, modules/mod_core.c: Bug#3862 - Support for FTPS-specific MasqueradeAddress functionality. 2013-01-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for TLSMasqueradeAddress directive; see Bug#3862. 2013-01-09 castaglia <castaglia> * tests/t/config/masqueradeaddress.t, tests/t/lib/ProFTPD/Tests/Config/MasqueradeAddress.pm, tests/tests.pl: Adding unit tests for the MaqueradeAddress directive. 2013-01-09 castaglia <castaglia> * contrib/mod_ban.c: Provide more information for the 'mod_ban.ban.expired' event. 2013-01-09 castaglia <castaglia> * doc/howto/Controls.html: Fix typo. 2013-01-09 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Aborting an SFTP directory listing is always an error. 2013-01-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding an ExtendedLog/LogFormat %f test for SFTP transfers in a chrooted session. 2013-01-08 castaglia <castaglia> * contrib/mod_tls.c: Fix erroneous "renegotiation accepted" TLSLog messages for data transfers. 2013-01-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure that we dispatch a MLSD command for aborted SFTP directory listings. 2013-01-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Give the server a little time to start up, and make this mod_ban test a little more robust. 2013-01-08 castaglia <castaglia> * contrib/mod_ban.c: Generate an event whenever mod_ban disconnects a client, with a descriptive string about why the client was disconnected (i.e. including ban type, and reason if known). 2013-01-08 castaglia <castaglia> * src/inet.c: Quell compiler warning about unused variable on platforms which do not support the TCP keepalive macros (e.g. Mac OSX). 2013-01-08 castaglia <castaglia> * doc/howto/Rewrite.html: Another time-related mod_rewrite config/trick. 2013-01-08 castaglia <castaglia> * doc/howto/Rewrite.html: Start adding some time-related mod_rewrite examples, now that mod_rewrite supports time variables. 2013-01-07 castaglia <castaglia> * contrib/mod_ban.c: Have mod_ban generate an event when it removes a ban due to expiry, for the benefit of logging modules like mod_snmp. 2013-01-07 castaglia <castaglia> * doc/contrib/mod_geoip.html: Added description of the GeoIPPolicy directive to the mod_geoip docs. 2013-01-07 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_geoip.c: Bug#3860 - Add a default deny option for mod_geoip. 2013-01-07 castaglia <castaglia> * doc/modules/mod_core.html: Adding descriptions for the Port and <VirtualHost> directives to the mod_core docs. 2013-01-07 castaglia <castaglia> * doc/modules/mod_core.html: Add description for DefaultAddress to the mod_core docs. 2013-01-07 castaglia <castaglia> * doc/contrib/mod_geoip.html: Cut-n-pasto. 2013-01-07 castaglia <castaglia> * doc/contrib/mod_geoip.html: Include links to some of the MaxMind documentation on e.g. country codes and continents. 2013-01-07 castaglia <castaglia> * doc/modules/mod_core.html: Add the MasqueradeAddress description to the mod_core docs. 2013-01-07 castaglia <castaglia> * modules/mod_facts.c: Additional fix for Bug#3859. 2013-01-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Another regression test for Bug#3859, this time using "ShowSymlinks off". 2013-01-07 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3859 - MLSD fails to show symlinks when ShowSymlinks is not configured. 2013-01-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Adding regression test for Bug#3859. 2013-01-07 castaglia <castaglia> * modules/mod_lang.c, tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: If the admin configures a strict UseEncoding, AND that UseEncoding specifies UTF8 as the client charset, then DO list UTF8 in the FEAT output. 2013-01-06 castaglia <castaglia> * modules/Makefile.in: As part of work on Bug#3725, make sure that the mod_dso-specific rules are invoked when mod_dso.c is modified, AND that the more general .c.o rule is NOT used for mod_dso; mod_dso requires some additional -I flags. 2013-01-06 castaglia <castaglia> * modules/mod_lang.c, tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Refinement for Bug#3737: when the UseEncoding "strict" keyword is used, then UTF8 should not appear in the FEAT listing. 2013-01-06 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Map the OPENDIR/CLOSE SFTP requests to the MLSD FTP command, for better interaction with the configuration (and with other modules such as mod_snmp). 2013-01-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Remove spurious/unnecessary event generation (this particular event is generated elsewhere); bad patch application? 2013-01-05 castaglia <castaglia> * src/pool.c: Bug#3857 - ProFTPD 1.3.5rc1 API test suite fails. 2013-01-05 castaglia <castaglia> * src/event.c, src/netaddr.c, tests/api/event.c, tests/api/netaddr.c, tests/api/scoreboard.c, tests/api/stubs.c: Bug#3856 - Linking ProFTPD 1.3.5rc1 API test suite fails. This will teach me to actually run the API tests before releasing. Sigh. 2013-01-05 castaglia <castaglia> * src/dirtree.c: Slightly better approach (avoids having root privs while writing out a log; that's not needed). 2013-01-05 castaglia <castaglia> * src/dirtree.c, src/parser.c: Bug#3855 was a pain to track down because we don't report any parsing errors encountered for Include'd files. Now fixed. 2013-01-04 castaglia <castaglia> * doc/howto/Scoreboard.html: One more tool affected by disabling of scoreboarding. 2013-01-04 castaglia <castaglia> * include/version.h: Bumped version for the next RC. 2013-01-04 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2013-01-04 castaglia <castaglia> * locale/files.txt: Updates files.txt, for localization efforts. 2013-01-04 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Updating versions, dates, getting ready to release 1.3.5rc1. 2013-01-04 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3855 - Restarting proftpd may cause Include files not to be parsed. 2013-01-04 castaglia <castaglia> * doc/modules/mod_auth.html: Add CreateHome description to the mod_auth docs. 2013-01-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Minor nits, adding delays to avoid races to make the test more robust. 2013-01-04 castaglia <castaglia> * modules/mod_core.c: Use the PR_USE_HOST guard in more places. Move the registration of the restart event listener to a more appropriate/expected location. 2013-01-04 castaglia <castaglia> * src/event.c: Handle the case where the first event listener is for a core callback, in which case where are no existing lists of listeners. 2013-01-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Using assert_transfer_ok() in more tests. 2013-01-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm: Using assert_transfer_ok() in more tests. 2013-01-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Using assert_transfer_ok() in more tests. 2013-01-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Start using the assert_transfer_ok() function in more tests. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Make some of the ExtendedLog tests more robust. 2013-01-03 castaglia <castaglia> * modules/mod_core.c: Guard the HOST implementation with #ifdefs, as it is not yet ready for public use. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Fixed failing test, added new regression test. Updated tests to use testcase- specific logging. 2013-01-03 castaglia <castaglia> * contrib/mod_sql.c: Don't log an error about having no SQLAuthTypes configured if SQLAuthenticate has been explicitly configured to be 'off'. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm: Update tests to use testcase-specific logging. Fix test code issue (bad expectation). 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Updated tests to use testcase-specific logging. 2013-01-03 castaglia <castaglia> * contrib/mod_sftp/scp.c: Remove debugging cruft. 2013-01-03 castaglia <castaglia> * contrib/mod_sftp/scp.c: Fix regression caught by testsuite. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Update mod_sftp unit tests to weed out some known bad tests (bad due to client issues), fix up others, etc. 2013-01-03 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sql.c, modules/mod_log.c: Fix another regression caught by the testsuite, concerning the handling of the %F LogFormat variable. 2013-01-03 castaglia <castaglia> * src/event.c: Fix another regression caught by the testsuite, caused by the change in ordering of event listener subscription. This tweak moves all core event listeners to the end of the list, to be invoked last. 2013-01-03 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fixed regression caused by use of new pr_fsio_smkdir() function, which expects the given path to be a canonical path. Now SFTP mkdir requests work again. 2013-01-03 castaglia <castaglia> * src/fsio.c: Stylistic nit (extraneous whitespace); no functional change. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab/copy.pm: Update the mod_quotatab+mod_copy tests to use testcase-specific logging. Fixed "broken" tests to work properly on different platforms. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Allow more time for one of the mod_delay unit tests to run, and mark it as a 'slow' test. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Update these tests to use testcase-specific logging. Make them more robust with data transfers by using the assert_transfer_ok() function. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Minor tweaks help this testcase to pass more often (timing issues related to closing the data connection, it seems). 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Update the mod_wrap2_sql tests to pass. Added checks for the module load order; one of the tests is sensitive to this. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Expose the utility function for obtaining the list of compiled-in modules. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Fix test code issues so that all of the mod_wrap2_file tests pass. 2013-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls_shmcache.pm: Use testcase-specific logging. Avoid verification errors by providing the CA file to the openssl s_client command. 2013-01-02 castaglia <castaglia> * contrib/mod_tls.c: Remove the SSL_COMP_add_compression_method() ifdef; it won't be used. 2013-01-02 castaglia <castaglia> * RELEASE_NOTES: Typo. 2013-01-02 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_tls.c: Update the release notes with the updated TLSCipherSuite defaults, i.e. no anonymous Diffie-Hellman key exchanges. Disable SSL compression. 2013-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix some failing mod_sql_sqlite tests by providing the necessary custom SQLUserInfo queries. 2013-01-02 castaglia <castaglia> * contrib/mod_tls.c: Testsuite caught a regression in the handling of the TLSPKCS12File directive. 2013-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: If the DateTime Perl module is not present, then do not try to run some of the mod_rewrite unit tests which require it. With this tweak, at least some of the mod_rewrite unit tests run, rather than having none of them run because Perl complains that the DateTime module is not present. 2013-01-02 castaglia <castaglia> * src/scoreboard.c: When opening an fd for the ScoreboardFile, make sure that we do NOT use one of the Big Three fds (i.e. no 0, 1, or 2). 2013-01-02 castaglia <castaglia> * src/scoreboard.c: Guard against "Illegal seek" lseek(2) error by detecting/catching a call to pr_restore_scoreboard() before pr_rewind_scoreboard() has been called. 2013-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm: Updating .ftpaccess file tests to use testcase-specific logging. 2013-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm: More fixes to the DirFakeGroup tests to make the tests pass properly; these are issues with the testing code, not the core proftpd code. 2013-01-02 castaglia <castaglia> * RELEASE_NOTES: Updated the release notes, preparing for a release. 2013-01-02 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Adding description of QuotaDefault directive to mod_quotatab docs. 2013-01-02 castaglia <castaglia> * contrib/mod_tls.c: Fix compiler warning about unused variable. 2013-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Start using testcase-specific logging for these tests. 2013-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Fix some Perl warnings when running the mod_exec tests. 2012-12-29 castaglia <castaglia> * doc/contrib/mod_tls.html: Typo. 2012-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Updated/fixed tests. 2012-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Use the assert_transfer_ok() function in a few more places. 2012-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Trace.pm: Updated tests to deal with Trace logging changes. Added testcase-specific logging. 2012-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Update tests to deal with different platforms' symlink permission defaults. 2012-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm: Update tests to use testcase-specific logging, and the assert_transfer_ok() function. 2012-12-29 castaglia <castaglia> * src/privs.c: Testsuite caught another regression; now fixed. 2012-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm: Updating test to use testcase-specific logging. 2012-12-29 castaglia <castaglia> * src/fsio.c: When safely creating directories, allow the parent directory path to be a symlink. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Fixing up tests. 2012-12-28 castaglia <castaglia> * modules/mod_facts.c: Regression for Bug#3715 now fixed. 2012-12-28 castaglia <castaglia> * modules/mod_facts.c: Caching/preserving of errno values, some stylistic nits. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm: Fix testware issue on Linux; update tests to use assert_transfer_ok(). 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm: Updating to use testcase-specific logging. 2012-12-28 castaglia <castaglia> * src/dirtree.c: Testsuite caught a regression; now fixed. 2012-12-28 castaglia <castaglia> * src/dirtree.c: Stylistic nits; no functional change. 2012-12-28 castaglia <castaglia> * doc/howto/Compiling.html: Adding more compiling FAQs. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Fill in the testcase for a password which contains spaces. 2012-12-28 castaglia <castaglia> * modules/mod_core.c: Don't advertise support for the HOST command just yet, as it has not been completely implemented as yet. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Fix re-declaration of variables. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Fix re-declaration of variable. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Quell compiler warning about use of uninitialized value. 2012-12-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm, tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Now that server_restart() is provided by the Utils class, these tests no longer need to provide their own implementations. 2012-12-28 castaglia <castaglia> * src/cmd.c: Quell compiler warning. 2012-12-28 castaglia <castaglia> * modules/mod_core.c: Remove unused variable, quelling compiler warning. 2012-12-28 castaglia <castaglia> * src/throttle.c: Style nits. Fix one minor edge case, where the signal mask would not be restored properly if the transfer was aborted. 2012-12-28 castaglia <castaglia> * src/fsio.c: Minor nits; no functional change. 2012-12-28 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c, include/fsio.h, modules/mod_core.c, src/fsio.c: Bug#3841 - Possible symlink race when applying UserOwner to newly created directory. 2012-12-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Some additional regression tests for MKD/XMKD commands. 2012-12-27 castaglia <castaglia> * doc/howto/FTP.html: Provide links to the mod_tls docs where appropriate. 2012-12-27 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Remove duplicate event. 2012-12-27 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Update mod_sftp to use the pr_cmd_set_name() function as well. 2012-12-27 castaglia <castaglia> * contrib/mod_copy.c, contrib/mod_quotatab.c, modules/mod_core.c: Start updating modules to use the new pr_cmd_set_name() function. 2012-12-27 castaglia <castaglia> * include/cmd.h, src/cmd.c: Introduce new pr_cmd_set_name() function, for setting the cmd_rec name AND for resetting the cmd_id properly (so that I don't forget in the future). 2012-12-27 castaglia <castaglia> * doc/howto/TLS.html: Add another FileZilla-related mod_tls FAQ. 2012-12-27 castaglia <castaglia> * modules/mod_core.c, modules/mod_log.c: Try to provide better error messages. 2012-12-27 castaglia <castaglia> * doc/howto/Logging.html: Adding logging FAQ about FIFOs. 2012-12-27 castaglia <castaglia> * doc/howto/FTP.html: Add FAQ to FTP howto, talking about renaming of directories across mount points. 2012-12-27 castaglia <castaglia> * modules/mod_core.c: Updating mod_core to use the new pr_fsio_lchown() function. 2012-12-26 castaglia <castaglia> * modules/mod_log.c: Report the correct error reason if we can't open an ExtendedLog. 2012-12-26 castaglia <castaglia> * contrib/mod_sftp/misc.c, include/fsio.h, modules/mod_xfer.c, src/fsio.c: Implement part of the fix for Bug#3841 by providing a pr_fsio_lchown() function. 2012-12-26 castaglia <castaglia> * modules/mod_log.c: Fix handling of SIGHUP with regard to SystemLog. The problem was that we were re-opening the SystemLog file itself in the restart event listener; after the restart event listeners are triggered, init_log() is called which itself closes the SystemLog. Oops. 2012-12-26 castaglia <castaglia> * doc/modules/mod_cap.html: Adding description of the new CapabilitiesRootRevoke directive. 2012-12-24 castaglia <castaglia> * src/event.c: Fix the handling of event notification subscription. Specifically, modules that were loaded last would receive the event notification last. And if that notification were for the 'core.restart' event, AND the subscribing module was built as a shared module, this would mean that that module would NEVER be notified; the mod_dso 'core.restart' event handler would be notified first, and would unload all shared modules. The fix, then, is to have the modules loaded last have their notifications be delivered first. This was the intended ordering in the first place. 2012-12-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm: Adding regression tests for Bug#3839. 2012-12-21 castaglia <castaglia> * configure: Updated configure. 2012-12-21 castaglia <castaglia> * NEWS, RELEASE_NOTES, config.h.in, configure.in, modules/mod_cap.c: Bug#3839 - Enhance mod_cap to support dropping root privs entirely. 2012-12-21 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_auth.html: Adding description of new AllowChrootSymlinks directive to mod_auth docs. 2012-12-20 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_auth.c: Bug#3852 - Support directive for ignoring symlink DefaultRoot directories. 2012-12-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DefaultRoot.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Checking in the regression tests for the new AllowChrootSymlinks directive, part of Bug#3852. 2012-12-18 castaglia <castaglia> * NEWS, contrib/mod_sftp/keys.c: Bug#3851 - SFTPPassPhraseProvider fails due to incorrect pointer. 2012-12-18 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/passphrase_host_dsa_key, tests/t/etc/modules/mod_sftp/passphrase_host_dsa_key.pub, tests/t/etc/modules/mod_sftp/passphrase_host_rsa_key, tests/t/etc/modules/mod_sftp/passphrase_host_rsa_key.pub, tests/t/etc/modules/mod_sftp/sftp-get-passphrase.pl, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for SFTPPassPhraseProvider (Bug#3851). 2012-12-14 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/ftpasswd, doc/contrib/ftpasswd.html: Bug#3850 - ftpasswd should support generating SHA-256, SHA-512 hashes where possible. 2012-12-13 castaglia <castaglia> * contrib/mod_sftp/auth.c, contrib/mod_sftp/compress.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/scp.c: Instrument mod_sftp by generating events under certain conditions, for the benefit of any other modules (e.g. mod_snmp) who might be interested. 2012-12-13 castaglia <castaglia> * doc/howto/TLS.html: Add missing closing font tag. 2012-12-11 castaglia <castaglia> * doc/utils/index.html: Typo. 2012-12-10 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Fixed typo in comment. 2012-12-09 castaglia <castaglia> * contrib/mod_tls.c: Use more stable pools for allocating environment variables (the main_server pointer can change, e.g. due to the HOST command). Generate events when our SSL/TLS handshake fails (both ctrl and data conns). 2012-12-09 castaglia <castaglia> * modules/mod_auth.c: Make sure that if we cannot find the requested USER name, we still fire the "authentication-code" event, for any interested listeners (e.g. mod_snmp). 2012-12-07 castaglia <castaglia> * modules/mod_auth_file.c: If an AuthUserFile happens to contain an empty password field, make sure we handle such a file the same way on a Mac OSX platform as on a Linux/BSD platform. The difference is in how the crypt(3) function handles the case of a salt argument that is an empty string; the crypt(3) implementations differ in this particular case, and so the mod_auth_file module does a runtime check for this. 2012-12-07 castaglia <castaglia> * tests/t/config/authuserfile.t, tests/t/lib/ProFTPD/Tests/Config/AuthUserFile.pm, tests/tests.pl: Adding AuthUserFile tests now. 2012-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow for specifying empty password values for an AuthUserFile. 2012-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AuthGroupFile.pm: Updated AuthGroupFile test to use testcase-specific logging. 2012-12-06 castaglia <castaglia> * configure: Updated configure. 2012-12-06 castaglia <castaglia> * config.h.in, configure.in, contrib/mod_sql_mysql.c: As part of Bug#3669, check for the RedHat distribution's changes to MySQL, since they export the my_make_scrambled_password symbol. 2012-12-05 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add utility server_restart() function for tests which need to HUP the running daemon. 2012-12-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Start creating indexes on the columns in the SQLite test cases. This way, the tests can provide "best practice" SQL scripts. 2012-12-05 castaglia <castaglia> * doc/utils/index.html: Add link to ftpshut docs. Fix typo. 2012-12-05 castaglia <castaglia> * doc/contrib/mod_ban.html: Bad grammar. 2012-12-04 castaglia <castaglia> * doc/utils/ftpmail.html: Typo. 2012-12-04 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3846 - Avoid scanning ScoreboardFile needlessly on login if limits are not configured. 2012-12-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for FTPS login using mod_tls and a DSA server certificate. 2012-12-04 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES, tests/t/etc/modules/mod_tls/dsa-ca.pem, tests/t/etc/modules/mod_tls/dsa-server-cert.pem: Adding DSA server cert, for DSA-specific testing. 2012-12-03 castaglia <castaglia> * contrib/mod_sql.c: Debug logging of the number of fields/columns returned by the custom SQLUserInfo, for triage. 2012-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding testcase showing how SQLite and mod_sql can be used to enforce a MaxHostsPerUser restriction in a much more efficient manner than that used by the mod_auth module. 2012-12-03 castaglia <castaglia> * src/netio.c: Remove unused variable. 2012-12-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c: Bug#3845 - mod_sftp does not provide response codes for %s LogFormat variable for AUTH ExtendedLog. 2012-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#3845. 2012-12-02 castaglia <castaglia> * doc/howto/ServerType.html: Updating ServerType howto to use relative links. 2012-12-02 castaglia <castaglia> * doc/modules/mod_core.html: Adding description of ServerType directive to mod_core docs. 2012-12-02 castaglia <castaglia> * doc/howto/Debugging.html: Updating Debugging howto. 2012-12-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding mod_sftp unit tests for the handling of %f and %r LogFormat variables for SFTP WRITE requests. 2012-12-01 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add more information to the cmd_rec logged for a WRITE request, such that the %r LogFormat variable will also include the file offset and chunk length fields from the WRITE request. Make sure to reset the cmd_id member for cmd_recs when changing the cmd_rec name; otherwise, the cmd_id value will not be reset, and logging may not Do The Right Thing(tm) with that cmd_rec. This was the cause of %f LogFormat variables not being interpolated properly by mod_log for WRITE requests. 2012-12-01 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix log message typos/nits. 2012-11-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_radius.pm: Added testcase demonstrating that use of "%u" for the home attribute works as expected. Updated testcases to use testcase-specific logging. 2012-11-27 castaglia <castaglia> * modules/mod_auth_unix.c: Adding trace logging, for better analysis of shadow/autoshadow user lookup issues. 2012-11-21 castaglia <castaglia> * modules/mod_auth_unix.c: More debug logging for when user entry retrieval fails. 2012-11-20 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Fixed markup typo. 2012-11-19 castaglia <castaglia> * NEWS, modules/mod_dso.c: Bug#3843 - ProFTPD should not fail when starting up due to loading same module multiple times. 2012-11-19 castaglia <castaglia> * doc/modules/mod_dso.html: Another DSO FAQ, about the "already loaded" error for special-case modules like mod_ctrls. 2012-11-19 castaglia <castaglia> * doc/modules/mod_dso.html: Adding FAQ about already loaded modules (will be fixed with Bug#3843). 2012-11-16 castaglia <castaglia> * modules/mod_auth_unix.c: Log, at debug level 3, when getspnam(3) and getpwnam(3) fail (and why). 2012-11-15 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Adding more substantial description of the situation which lead to the preprocessor guards for AES-CTR modes in mod_sftp, for my future self (and others). 2012-11-15 castaglia <castaglia> * contrib/mod_quotatab.c: Use session.pool instead of main_server->pool; the latter can change during the lifetime of a session, whereas the former does not. 2012-11-14 castaglia <castaglia> * contrib/mod_sftp/crypto.c: For the AES-CTR implementation, only set the NID if we're working with a FIPS-enabled OpenSSL library. 2012-11-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3842 - Incorrect handling of REALPATH requests for symlink paths in mod_sftp. 2012-11-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Finishing the SFTP REALPATH tests (per Bug#3842). 2012-11-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding tests for mod_sftp's handling of REALPATH requests on different types of paths: files, directories, symlinks, chrooted or not, etc. 2012-11-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding testing of HideFiles/IgnoreHidden configuration on MLSD. 2012-11-13 castaglia <castaglia> * doc/modules/mod_facts.html: Adding FAQ about dotfiles and MLSD. 2012-11-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding PCRE-based HideFiles test. 2012-11-12 castaglia <castaglia> * configure: Updated configure. 2012-11-12 castaglia <castaglia> * config.h.in, configure.in: Adding autoconf check for mkdtemp(3), as part of fix for Bug#3841. 2012-11-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm: Updating UserOwner tests to use testcase-specific logging, and added test for UserOwner+MKD. 2012-11-05 castaglia <castaglia> * doc/modules/mod_auth.html: Add docs for the RewriteHome directive. 2012-10-29 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3837 - mod_tls unable to read certificate files after SIGHUP. 2012-10-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for SFTP uploads which demonstrate that AllowFilter works as expected in a <Limit> STOR section. 2012-10-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ratio.pm: Adding mod_ratio regression test ensuring that the RatioFile is updated as expected after session closure. 2012-10-22 castaglia <castaglia> * tests/t/config/allowfilter.t, tests/t/lib/ProFTPD/Tests/Config/AllowFilter.pm, tests/tests.pl: Adding regression tests for the AllowFilter directive. 2012-10-14 castaglia <castaglia> * doc/howto/ConfigurationTricks.html: Add another configuration trick (using env vars, -D, and <IfDefine>) to the collection. 2012-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm: Now the <IfDefine> regression test for dealing with environment variables work as I intended. 2012-10-14 castaglia <castaglia> * src/parser.c: In fact, why not use one strlen(3) call instead of three in the get_config_word() function. 2012-10-14 castaglia <castaglia> * src/parser.c: Minor change: use a single strlen(3) call instead of two. 2012-10-12 castaglia <castaglia> * doc/howto/FTP.html: Updating the stale list of supported commands. 2012-10-12 castaglia <castaglia> * modules/mod_xfer.c: Stylistic cleanup of nits in the handling of the MODE command; no functional change. 2012-10-12 castaglia <castaglia> * doc/howto/DSO.html: Adding FAQ to DSO doc about adding modules to proftpd. 2012-10-11 castaglia <castaglia> * include/netio.h, src/netio.c: Added a useful variant of pr_netio_printf(), allowing for a va_list argument to be passed in (e.g. for use by functions which themselves take variadic arguments). 2012-10-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PWD.pm: Adding regression test for PWD commands using the upload-only directory config described in the Limit howto. 2012-10-10 castaglia <castaglia> * doc/howto/Limit.html: Update upload-only directory example config to allow PWD. Some clients get cranky if PWD doesn't work. 2012-10-10 castaglia <castaglia> * src/dirtree.c: When discovering the optimal TCP buffer sizes, set the discovered sizes on our main_server rec as well. 2012-10-10 castaglia <castaglia> * doc/modules/mod_lang.html: Update the mod_lang docs with a FAQ about the "not a supported language" error. 2012-10-09 castaglia <castaglia> * locale/es_ES.po: Updated .po file from Bug#3834. 2012-10-05 castaglia <castaglia> * doc/modules/mod_lang.html: Mention the new Spanish translation in the mod_lang docs. 2012-10-05 castaglia <castaglia> * RELEASE_NOTES, locale/Makefile.in, locale/es_ES.po: Bug#3834 - Spanish translation. 2012-10-04 castaglia <castaglia> * doc/howto/Logging.html: Add Logging FAQ, inspired by Bug#3832. 2012-10-04 castaglia <castaglia> * doc/howto/KeepAlives.html, doc/howto/index.html: Adding new KeepAlives howto. 2012-10-03 castaglia <castaglia> * modules/mod_core.c: Slightly better error reporting for badly formed keepalive specs. 2012-10-03 castaglia <castaglia> * doc/modules/mod_core.html: Adding docs for the new keepalive SocketOptions parameter. 2012-10-03 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/dirtree.h, include/inet.h, modules/mod_core.c, src/data.c, src/dirtree.c, src/inet.c, src/parser.c: Bug#3833 - Enable TCP keepalive by default, with configurable SocketOption. 2012-10-03 castaglia <castaglia> * doc/modules/mod_core.html: Add docs for the SocketOptions directive to the mod_core docs. 2012-10-02 castaglia <castaglia> * NEWS, src/data.c: Bug#3831 - Sporadic "451 Insufficient memory or file locked" failure when downloading. 2012-10-02 castaglia <castaglia> * modules/mod_memcache.c: Fix compilation errors in mod_memcache, when --enable-memcache is used. 2012-10-02 castaglia <castaglia> * Makefile.in: Fixed typo in Makefile rules, for Bug#3725. 2012-10-01 castaglia <castaglia> * tests/Makefile.in, tests/api/fsio.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Start working on unit tests for the FSIO API functions: pr_fs_clean_path() is the first victim. 2012-10-01 castaglia <castaglia> * modules/mod_ls.c: Even more robust checking for complex possible symlink targets, as part of hardening against Bug#3719. 2012-10-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Another regression test for Bug#3719, showing a more complex symlink that should be considered "unsafe". 2012-10-01 castaglia <castaglia> * modules/mod_ls.c: An "unsafe" symlink path must be 2 characters or greater in length. 2012-10-01 castaglia <castaglia> * modules/mod_ls.c: Make the check for "unsafe" symlinks in recursive directory listings a little more robust, for Bug#3719. 2012-10-01 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3792 - Recursive SCP uploads using preserve-time (-p) option may not work. 2012-09-30 castaglia <castaglia> * modules/mod_ls.c: Fix regression caused by fix for Bug#3719. 2012-09-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding additional regression test for Bug#3719. 2012-09-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Updating mod_sftp regression tests to use testcase-specific logging across the board. 2012-09-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for recursive SCP uploads which use the preserve time/mode option, for Bug#3792. 2012-09-28 castaglia <castaglia> * contrib/mod_sftp/scp.c: Quell comparing warning about signedness; it's a harmless cast in this case. 2012-09-28 castaglia <castaglia> * configure: Updated configure. 2012-09-28 castaglia <castaglia> * configure.in: Some platforms (e.g. Mac OSX) require that the <sys/socket.h> header be included before including <net/if.h>, otherwise autoconf complains about seeing <net/if.h> but not being able to use it. Hopefully this doesn't break the check for the <net/if.h> header on other platforms. 2012-09-28 castaglia <castaglia> * RELEASE_NOTES: Adding reminder to release notes to mention SystemLog changes for Bug#3832. 2012-09-28 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#3832 - Support disabling of system logging on per-connection basis. 2012-09-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ServerLog.pm, tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm, tests/t/logging/serverlog.t, tests/tests.pl: Adding ServerLog tests for Bug#3832 as well, and updating the SystemLog tests (which were pointed at the wrong log file). 2012-09-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm: Updated tests for Bug#3832 so that they work properly. 2012-09-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm: Adding unit tests for verifying the change/fix for Bug#3832. 2012-09-27 castaglia <castaglia> * doc/howto/Tracing.html: Typo. 2012-09-26 castaglia <castaglia> * modules/mod_xfer.c: Fix logging of spurious EEXIST error when adding a note to the session notes. 2012-09-25 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the network latency impact of the SFTPTrafficPolicy behavior for CBC ciphers, and include a FAQ on the issue. 2012-09-25 castaglia <castaglia> * doc/howto/Tracing.html: Update the Tracing howto with a section discussing runtime tuning of the trace levels. 2012-09-25 castaglia <castaglia> * doc/howto/TLS.html: Add a section on client auth to the TLS howto. 2012-09-23 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3829 - RNFR without following RNTO can lead to NULL pointer dereference. 2012-09-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Updating regression test for Bug#3829. 2012-09-22 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3830 - MFF/MFMT command segfaults due to insufficient parameter checks. 2012-09-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm: Update of regression test for Bug#3830. 2012-09-22 castaglia <castaglia> * doc/modules/mod_facts.html: Update link to somers Draft which defines the MFF and MFMT commands. 2012-09-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm: Checking in regression test for Bug#3830. 2012-09-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Checking in regression test for Bug#3829. 2012-09-21 castaglia <castaglia> * NEWS: Typo. 2012-09-21 castaglia <castaglia> * NEWS, contrib/mod_deflate.c, tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Bug#3828 - Certain sequences of FTP data transfer commands lead to NULL pointer deferences in mod_deflate. 2012-09-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Updated the mod_deflate tests to use testcase-specific logging. 2012-09-19 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3827 - Use non-filesystem based SFTP handle generator instead of mktemp(3). 2012-09-19 castaglia <castaglia> * src/prxs.in: Even if the installed `proftpd' executable supports DSOs, the prxs script itself may have been generated by a configure script that did not use the --enable-dso option -- and we need to error out in that case, rather than trying to build a shared module without the proper flags. 2012-09-12 castaglia <castaglia> * tests/api/netaddr.c: Flesh out tests for the pr_netaddr_is_v4mappedv6() function. Added tests for the new pr_netaddr_is_rfc1918() function (Bug#3825). 2012-09-12 castaglia <castaglia> * src/netaddr.c: Fix compilation error if --disable-ipv6 is used. Set errno appropriately when the pr_netaddr_is_v4mappedv6() comparison (done by macros) returns false. 2012-09-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/netaddr.h, modules/mod_core.c, src/netaddr.c: Bug#3825 - Handle RFC 1918 IP addresses in PORT/EPRT commands. 2012-09-11 castaglia <castaglia> * NEWS, src/data.c: Bug#3824 - Use RFC compliant address/port for data transfer if FTP client has not sent PORT/PASV/EPRT/EPSV commands. 2012-09-07 castaglia <castaglia> * doc/howto/TLS.html: Try to tell admins how to configure mod_tls if they want to support clients which send "PROT C". 2012-09-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm: Adding regression test demonstrating that a SITE CHMOD command can be properly blocked by a <Limit> in a .ftpaccess file. 2012-09-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Regression tests for the logging changes made for Bug#3822. 2012-09-07 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_log.c: Bug#3822 - Resolving %U/%u LogFormat variables inconsistent between mod_log/mod_sql in certain cases. 2012-09-07 jwm <jwm> * contrib/mod_ldap.c: git 3d541bc898: fix symbol copy pasta 2012-09-07 castaglia <castaglia> * src/netaddr.c: Portability fix for Bug#3820: FreeBSD (and probably others) don't define AF_PACKET. Filter ifaddrs, then, based on AF_INET/AF_INET6. 2012-09-06 castaglia <castaglia> * config.h.in: Forgot to update config.h.in for the new header checks. 2012-09-06 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/netaddr.h, modules/mod_core.c, src/netaddr.c: Bug#3820 - Support device/interface names in <VirtualHost>, MasqueradeAddress, and DefaultAddress. 2012-09-06 castaglia <castaglia> * NEWS, src/netaddr.c: Bug#3806 - Support reverse DNS resolution for IPv6 addresses when gethostbyname2(3) is not available. 2012-09-06 castaglia <castaglia> * src/auth.c: Pass along the path to which a chroot() will happen, as part of the 'core.chroot' event. 2012-09-05 castaglia <castaglia> * src/proftpd.8.in: Mention the new proftpd.conf(5) man page in the proftpd(8) man page. 2012-09-05 castaglia <castaglia> * configure: Updated configure. 2012-09-05 castaglia <castaglia> * Makefile.in, configure.in, src/.cvsignore, src/proftpd.conf.5.in: Bug#3805 - proftpd.conf could use a short manpage. 2012-09-05 castaglia <castaglia> * doc/howto/CreateHome.html: Mention the new NoRootPrivs CreateHome parameter in the CreateHome howto. 2012-09-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Tests for the CreateHome NoRootPrivs option added for Bug#3813. 2012-09-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/mkhome.h, modules/mod_auth.c, src/mkhome.c: Bug#3813 - Ability to use CreateHome to create parent directories as non-root user, for better interoperability with NFS. 2012-08-30 castaglia <castaglia> * configure: Updated configure. 2012-08-30 castaglia <castaglia> * configure.in: Starting work on Bug#3820. To do so, we need to add autoconf checks for the necessary headers (net/if.h, ifaddrs.h) and functions (getifaddrs(3)). 2012-08-27 castaglia <castaglia> * doc/contrib/mod_sftp.html: Missed a mention of hmac-sha2-256-96 and hmac-sha2-512-96. 2012-08-27 castaglia <castaglia> * contrib/mod_sftp/crypto.c, doc/contrib/mod_sftp.html: Remove support for the hmac-sha2-256-96 and hmac-sha2-512-96 digests, since they were removed from the spec. 2012-08-23 castaglia <castaglia> * src/inet.c: When toggling the blocking/nonblocking status of the connection, make sure that we set the mode flag properly on the connection; the blocking-changing functions rely on that mode flag. 2012-08-23 castaglia <castaglia> * src/inet.c: Check the return value of pr_inet_set_nonblock(), so that we can catch errors (e.g. EBADF) earlier. This might also prevent seeing EADDRINUSE spuriously. 2012-08-23 castaglia <castaglia> * modules/mod_xfer.c, src/netio.c: Trying to avoid a "Insufficient memory or file locked" transfer aborted message (probably caused by EAGAIN being returned somewhere). 2012-08-22 castaglia <castaglia> * src/trace.c: Avoid possible file descriptor leak in the just-added pr_trace_use_stderr() function. 2012-08-22 castaglia <castaglia> * include/trace.h, src/trace.c: Add some functions to the Trace API to cause its logging to be written out to stderr. Useful for development/debugging utilities. 2012-08-22 castaglia <castaglia> * tests/api/netaddr.c: Be prepared for a few other possibilities when resolving '::1' to DNS names. 2012-08-22 castaglia <castaglia> * NEWS, contrib/Makefile.in: Bug#3816 - Installation of ftpasswd does not honor DESTDIR environment variable. 2012-08-22 castaglia <castaglia> * tests/api/netaddr.c: Start working on an API-level unit test for handling changes related to Bug#3806 (i.e. making sure pr_netaddr_get_dnsstr() works properly for IPv6 addresses on systems which don't have gethostbyname2(3)). 2012-08-20 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Update mod_sftp to use the same OpenSSL version checking as is done in mod_tls, i.e. don't log a header/library version mismatch if the OpenSSL version is 1.0.0 or newer. 2012-08-16 castaglia <castaglia> * contrib/mod_sftp_pam.c: If the PAM conversation in mod_sftp_pam fails, log it to the SFTPLog rather than to the TraceLog. (Maybe this should be logged to the normal debug logging as well?) 2012-08-15 castaglia <castaglia> * contrib/mod_sftp_pam.c: Filter out unhelpful error log messages. 2012-08-15 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.init.d: Bug#3814 - Support "configtest" command for contrib init.d script. 2012-08-10 castaglia <castaglia> * configure: Updated configure script for Bug#3725. 2012-08-10 castaglia <castaglia> * Makefile.in: Substitute the proftpd_cvs_version_main value in the proftpd.spec (part of Bug#3725). 2012-08-10 castaglia <castaglia> * Makefile.in: More work on Bug#3725: separate out the handling of the .spec file into its own target, for clarity. This also starts work on substituting some of the .spec file values for values obtained during the build. 2012-08-10 castaglia <castaglia> * configure.in: Make sure the version-parsing stuff in the configure script correctly handles the case where there is no RC portion of the version string. 2012-08-09 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in: Start working on Bug#3725. To do this, the configure/Make.rules files need to parse out the following forms of the version: the full version (i.e. BUILD_VERSION), the release version (e.g. 1.3.5 for the stable/production version of this development cycle), and the RC version (for RCs only). 2012-08-09 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Merge in changes from Paul Howarth, packaging up the language files when building an RPM with --enable-nls, and requiring the gettext tools for building said language files. 2012-08-09 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Update the proftpd.spec file to have mod_wrap2 et al in the main package, rather than in the wrap subpackage, since they do not need tcpwrappers. 2012-08-09 castaglia <castaglia> * tests/t/config/maxclientsperclass.t, tests/t/config/maxclientsperuser.t, tests/t/lib/ProFTPD/Tests/Config/MaxClientsPerClass.pm, tests/t/lib/ProFTPD/Tests/Config/MaxClientsPerUser.pm, tests/tests.pl: Adding missing regression tests for the MaxClientsPerClass and MaxClientsPerUser directives. 2012-08-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Regression tests for Bug#3811. 2012-08-08 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3811 - ExtendedLog entries not written if MaxClients limit reached. 2012-08-07 castaglia <castaglia> * include/netaddr.h, src/netaddr.c: Add new pr_netaddr_set_port2() function, which automatically handles conversion of the host byte order port number to network byte order. (Should have been done this way from the start.) 2012-08-06 castaglia <castaglia> * src/inet.c: Make sure we always return the socket to blocking mode, regardless of how we return from pr_inet_connect_nowait(). 2012-08-06 castaglia <castaglia> * contrib/mod_tls.c: Remove duplicate SSL_CTX_check_private_key() calls. 2012-08-06 castaglia <castaglia> * src/trace.c: Always try to leave a terminating NUL, just in case. 2012-08-06 castaglia <castaglia> * src/support.c: Stylistic nit; no functional change. 2012-08-06 castaglia <castaglia> * include/dirtree.h, src/dirtree.c, src/parser.c: Add a pr_table_t to the server_rec, so that modules can associate any data they wish with a given server_rec, for their (or other modules') use later. 2012-08-05 castaglia <castaglia> * src/dirtree.c: Fix possible off-by-one error. Clean up stylistic nit. Avoid unnecessary config_rec lookup if there is no <Class> defined for a connection. 2012-08-01 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Fix the logging of the %f variable for uploads by looking for the correct key in the cmd->notes table. Prefer the cmd->notes table over session.xfer for uploads. 2012-08-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: And a few more places to use assert_transfer_ok(). 2012-08-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Update tests to use assert_transfer_ok() in more places. 2012-08-01 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sftp.html: Update the docs showing that mod_sftp now supports MaxStoreFileSize. 2012-08-01 castaglia <castaglia> * contrib/mod_sftp/scp.c: Support MaxStoreFileSize for scp uploads now. Populate the various cmd->notes keys, as used by mod_xfer, for scp transfers. 2012-08-01 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Stylistic nit. 2012-08-01 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Off-by-one nit. 2012-08-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/sql.pm: Additional tests for the %{transfer-status}, %{transfer-failure} variables, as well as ensuring that %f is populated properly in the various situations. 2012-08-01 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Support the MaxStoreFileSize directive for SFTP uploads. Start stashing the same notes for file transfers as used by mod_xfer; this is for the benefit of logging modules such as mod_log and mod_sql. 2012-07-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Updated/fixed mod_sql logging tests for the %{transfer-status} variable, and added testing of the %f in those various transfer cases, making sure the full path is extrapolated properly. 2012-07-31 castaglia <castaglia> * locale/Makefile.in: When generating a new .pot file, delete the old version. 2012-07-31 castaglia <castaglia> * doc/modules/mod_facts.html: Grammar fix. 2012-07-31 castaglia <castaglia> * doc/modules/mod_facts.html: Markup typo. 2012-07-30 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3809 - Segfaults in mod_radius when configured with RadiusGroupInfo. 2012-07-30 castaglia <castaglia> * contrib/mod_radius.c: Stylistic cleanup; no functional change. 2012-07-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Remove duplicate variable. 2012-07-30 castaglia <castaglia> * doc/howto/DSO.html: Minor update to DSO howto. 2012-07-30 castaglia <castaglia> * contrib/mod_tls.c: Minor update/improvement to fix for Bug#3808. 2012-07-30 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3808 - Segfault in mod_tls when mod_tls_shmcache used. 2012-07-27 castaglia <castaglia> * NEWS, src/inet.c: Bug#3804 - ioctl(RPROTDIS) code no longer needed on Solaris 11. 2012-07-27 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html: Change the default TLSCipherSuite from "ALL:!ADH" to "DEFAULT:!EXPORT:!DES", to be more secure out-of-the-box. This disables weaker ciphersuites such as the export-grade ciphers, and the DES ciphers. 2012-07-27 castaglia <castaglia> * doc/contrib/mod_tls.html: Adding documentation for new TLSServerCipherPreference directive. 2012-07-27 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3801 - mod_tls should have directive like Apache mod_ssl's SSLHonorCipherOrder. 2012-07-26 castaglia <castaglia> * tests/api/response.c: Remove unused variable. 2012-07-26 castaglia <castaglia> * contrib/mod_sftp/scp.c: Quell compiler warning about signedness mismatch. 2012-07-25 castaglia <castaglia> * NEWS, contrib/mod_exec.c, contrib/mod_quotatab.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp_pam.c, contrib/mod_sql.c, contrib/mod_sql_passwd.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c, modules/mod_facts.c: Bug#3800 - Multiple *Options directives should be handled properly. 2012-07-25 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Quell compiler warning about possibly uninitialized memory/variable. 2012-07-25 castaglia <castaglia> * contrib/mod_quotatab.c: Minor style cleanup. Better handling of errno values when creating the QuotaLock file. 2012-07-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Regression test for TLSOptions handling change, per Bug#3800. 2012-07-25 castaglia <castaglia> * doc/modules/mod_facts.html: Fix markup. 2012-07-20 castaglia <castaglia> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/compress.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/packet.c: More careful use of errno value when writing out SSH2 packets. 2012-07-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test showing client-initiated rekeying. 2012-07-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for Bug#3798. 2012-07-20 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3798 - Downloading nonexistent file via SCP results in timeout rather than error. 2012-07-13 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3790 - Logfile timestamps change to GMT after MFMT command. 2012-07-12 castaglia <castaglia> * contrib/mod_sftp/kex.c: Increase the message buffer size for some KEX messages. Fix some unintialized variable compiler warnings. 2012-07-12 castaglia <castaglia> * configure: Updated configure. 2012-07-12 castaglia <castaglia> * NEWS, configure.in: Bug#3795 - ProFTPD needs to use -pthread linker option if linking against OpenSSL with thread support. 2012-07-12 castaglia <castaglia> * configure: Updated configure. 2012-07-12 castaglia <castaglia> * configure.in: Fix mistake in previous configure.in patch; we forgot to restore the LIBS variable in the case where linking with OpenSSL succeeds without needing to check for an -ldl linkage. 2012-07-11 castaglia <castaglia> * configure: Updated configure. 2012-07-11 castaglia <castaglia> * configure.in: Fix minor bug in autoconf check for successful linking with OpenSSL; the LIBS variable still contained a reference to -lsupp at that check, and the libsupp library hasn't been compiled at that check. 2012-07-10 castaglia <castaglia> * contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c: Be sure to set errno properly when indicating an authentication has failed; the errno value is used when determining the list of still-acceptable auth methods to report back to the client. 2012-06-26 jwm <jwm> * contrib/mod_ldap.c: git 603e38269a: interpolate %u in the quota base DN, too 2012-06-26 jwm <jwm> * contrib/mod_ldap.c: git 53e5489e64: Fixed swapped DN/attr name in 'no attr for' error messages. 2012-06-18 castaglia <castaglia> * NEWS, lib/tpl.c: Bug#3794 - Cygwin build failure in lib/tpl.c due to wrong include of mman.h. 2012-06-08 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3791 - Invalid handling of SCP control messages fragmented over multiple SSH packets. 2012-06-06 castaglia <castaglia> * NEWS, src/main.c: Bug#3740 - Overwrite permission denied when reloading multiple times and multiple <VirtualHost> sections in proftpd.conf. 2012-06-06 castaglia <castaglia> * doc/howto/Timestamps.html: Update the Timestamps howto in light of information learned from Bug#3790. 2012-06-01 castaglia <castaglia> * doc/howto/Limit.html: Try to make it clear that <Limit ALL> does not automatically cover <Limit LOGIN> as well. 2012-05-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Added regression test for the AllowDotLogin TLSOption, spurred by Bug#3788. 2012-05-31 castaglia <castaglia> * doc/modules/mod_core.html: Add description for the AuthOrder directive to the mod_core docs. 2012-05-30 castaglia <castaglia> * src/prxs.in: Update the prxs script to check for a module-specific configure script; if found, refuse to build the module. Otherwise, prxs might successfully compile a module which doesn't work. This will be the situation until Bug#3308 is fixed. 2012-05-30 castaglia <castaglia> * src/prxs.in: Handle the case where prxs might be used like so: $ prxs -c -i -d contrib/mod_sql_sqlite.c i.e. from the top-level of the source directory. 2012-05-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding regression test for logging of a failed transfer where the control connection goes away first. 2012-05-30 castaglia <castaglia> * modules/mod_xfer.c: If the control connection dies while we are in the middle of a data transfer, dispatch a fake command for the aborted RETR/STOR, so that logging is done properly for the failed data transfer command. 2012-05-30 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Additional fix to handling of OPEN attributes per spec, related to Bug#3787. 2012-05-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding regression test to work on population of the %{transfer-status} and %{transfer-failure} logging variables. 2012-05-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/sql.pm, tests/t/modules/mod_sftp/sql.t, tests/tests.pl: Adding regression tests for the %{transfer-status}, %{transfer-failure} logging variables for SFTP sessions. 2012-05-29 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Try a little harder to populate the %F/%f logging variables for RETR/STOR in the cases where they might have been aborted. 2012-05-29 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Stash enough information in the command notes for supporting the transfer logging variables properly for aborted SFTP transfers. 2012-05-29 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Adding support for the %{transfer-status} and %{transfer-failure} logging variables when dealing with SFTP/SCP sessions. 2012-05-29 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make the trace message about read-only SFTP OPENs less verbose. 2012-05-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#3787. 2012-05-29 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3787 - Read-only SFTP OPEN request permissions not properly ignored. 2012-05-29 castaglia <castaglia> * contrib/mod_sql.c: Use the proper format string for the data type being printed. 2012-05-25 castaglia <castaglia> * config.guess, config.sub, contrib/mod_load/config.guess, contrib/mod_load/config.sub, contrib/mod_sftp/config.guess, contrib/mod_sftp/config.sub, lib/libltdl/config/config.guess, lib/libltdl/config/config.sub: Updating the config.{guess,sub} files. 2012-05-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Additional regression tests for Bug#3785. 2012-05-25 castaglia <castaglia> * src/fsio.c: Additional fix needed for Bug#3785. 2012-05-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Update mod_auth_file tests to use testcase-specific logging. Added a test showing that use of syntax such as 'user@domain.com' works properly. 2012-05-24 castaglia <castaglia> * contrib/mod_tls.c: If mod_tls sees that the OpenSSL header version is 1.0.0 or greater, then relax the header/library version check/warning a little. 2012-05-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Regression test for Bug#3785. 2012-05-24 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3785 - Support resolution of tilde (~) within a chrooted session. To implement this, in pr_fs_interpolate(), we check to see whether we are chrooted or not. If so, instead of interpolating in the user's home directory, we simply interpolate in the string "/". 2012-05-23 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Add regression test for a plain ABOR command, with no data transfer involved. 2012-05-23 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Slightly better handling of the ABOR command when it comes to determining the value of the %{transfer-status} log variable. 2012-05-22 castaglia <castaglia> * doc/howto/NAT.html: Added another NAT-related FAQ. 2012-05-22 castaglia <castaglia> * src/child.c, src/support.c: Stylistic nits. 2012-05-22 castaglia <castaglia> * modules/mod_delay.c: Stylistic cleanups. 2012-05-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Updated mod_delay tests in light of changed response code/message for Bug#3736. 2012-05-22 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3736 - Trying to re-authenticate an existing FTP connection causes invalid 503 response. 2012-05-22 castaglia <castaglia> * contrib/mod_sftp/kex.c: Typo in comment. 2012-05-20 castaglia <castaglia> * src/log.c: Remove a few redundant strlen(3) calls in the "hot" paths of logging. 2012-05-18 castaglia <castaglia> * contrib/mod_tls.c: After loading a private key into an SSL_CTX object, use the SSL_CTX_check_private_key() function to verify that it's a good private key. 2012-05-16 castaglia <castaglia> * modules/mod_log.c: Reduce the window of time where root privs are used when dealing with any configured ServerLogs. Log if we can't open a ServerLog for some reason. 2012-05-15 castaglia <castaglia> * NEWS, src/inet.c: Bug#3780 - AIX gives "error setting listen fd IP_TOS: Invalid argument". 2012-05-14 castaglia <castaglia> * doc/contrib/index.html: Adding entries for mod_deflate, mod_qos to the contrib module docs. 2012-05-14 castaglia <castaglia> * modules/mod_dso.c: Try to make mod_dso's error reporting better when it comes to loading a module which is not where it is expected to be. 2012-05-14 castaglia <castaglia> * modules/Makefile.in: If proftpd has been linked, and then the modules/mod_dso.c file has been modified, make sure that `make' will recompile that modified file (this was not happening as expected for mod_dso.c, due to its special Makefile rule). 2012-05-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding regression test for Bug#3782. 2012-05-10 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3782 - SQLShowInfo does not work properly for error responses. 2012-05-10 castaglia <castaglia> * src/support.c: Stylistic nits; no functional change. 2012-05-10 castaglia <castaglia> * src/pool.c: The pool_release_free_block_list() function already blocks/unblocks alarms. 2012-05-10 castaglia <castaglia> * src/pool.c: Fix the pool_release_blocks_on_free_list() function so that it properly calls free(3) on all malloc'd memory on the freelist; the previous loop logic was quite wonky. Made the block_freelist symbol have file scope only; there's absolutely no reason why it should be visible outside of this file. Stylistic nits/cleanup. 2012-05-10 castaglia <castaglia> * src/parser.c: Stylistic nits. 2012-05-10 castaglia <castaglia> * modules/mod_auth_file.c: Add minor trace logging to the mod_auth_file module. Stylistic nits, better errno reporting. 2012-05-09 castaglia <castaglia> * contrib/mod_sftp/keys.c: If we can't read the configured SFTPHostKey, provide a more accurate/informative error message about why. 2012-05-08 castaglia <castaglia> * doc/modules/mod_core.html: Updated mod_core docs to include DisplayChdir, DisplayConnect, and DisplayQuit descriptions. 2012-05-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Update the mod_sql_passwd tests to use testcase-specific logging. Added another config/recipe showing the SQLPasswordOptions. 2012-05-03 castaglia <castaglia> * doc/howto/DisplayFiles.html: Fix typo, add another FAQ about the location of the Display file having a bearing on the %F/%f values. 2012-05-03 castaglia <castaglia> * src/pool.c: Add the address of the pool being dumped to the output. 2012-05-01 castaglia <castaglia> * contrib/mod_wrap2_sql.c: Try to improve the logging of mod_wrap2 misconfigurations, to make it clearer/easier for admins to diagnose the problem. 2012-04-28 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Fix cut-n-pasto. 2012-04-27 castaglia <castaglia> * contrib/mod_tls.c: Make the TLSLog a little quieter; stop spamming the log with needless information. 2012-04-27 castaglia <castaglia> * contrib/mod_tls.c: If we encounter an error reading the CertificateKeyFile because of a badly formatted file, display a more informative error. 2012-04-24 castaglia <castaglia> * include/stash.h, src/stash.c: Add a pr_stash_dump() function, for dumping out info about the stash table. This function is only implemented when the --enable-devel configure option is used. 2012-04-24 castaglia <castaglia> * src/auth.c: More trace logging of some edge cases when dispatching auth commands. Some stylistic cleanup. 2012-04-24 castaglia <castaglia> * contrib/mod_sftp/keys.c: Fix excess fd usage when loading passphrase-protected SSH host keys. 2012-04-24 castaglia <castaglia> * contrib/mod_tls.c: Turns out these explicit casts aren't needed; I just had an unclean work area. 2012-04-24 castaglia <castaglia> * contrib/mod_tls.c: Quell compiler warnings about mismatched pointers using an explicit cast. 2012-04-24 castaglia <castaglia> * contrib/mod_tls.c: Fix an fd issue in mod_tls. Not exactly an fd leak, per se (the number of open fds does not keep increasing), but definitely an excess number of fds issue. 2012-04-24 castaglia <castaglia> * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Bug#3774 - Linking libsupp.a fails (undefined reference to `__alloca'). 2012-04-23 castaglia <castaglia> * doc/howto/NAT.html: Adding MasqueradeAddress FAQ. 2012-04-23 castaglia <castaglia> * doc/modules/mod_auth_file.html, doc/modules/mod_auth_unix.html: Add FAQs about the crypt(3) first 8 character limitation. 2012-04-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Adding test proving that spaces in passwords are handled properly. 2012-04-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Increase the amount of metadata allotted for each directory entry. Hopefully this will fix some issues for some directory listings. 2012-04-19 castaglia <castaglia> * NEWS, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Bug#3732 - AIX build error: undefined symbol: .alloca. 2012-04-18 castaglia <castaglia> * configure: Updated configure. 2012-04-18 castaglia <castaglia> * configure.in: The --enable-devel flags/libs are typically not specific to gcc; make sure that they are applied to non-gcc compiler builds, then. 2012-04-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Adding regression test for the ListOptions maxfiles parameter. 2012-04-16 castaglia <castaglia> * src/support.c: Quell compiler warnings. 2012-04-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/keys.c: Quell compiler warnings (Bug#3773). 2012-04-16 castaglia <castaglia> * modules/mod_cap.c: Fix compiler issue requiring forward reference/decclaration. 2012-04-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Remove cruft from these tests. 2012-04-15 castaglia <castaglia> * RELEASE_NOTES: Make sure to mention HOST support in the release notes. 2012-04-15 castaglia <castaglia> * contrib/mod_tls.c, include/bindings.h, include/modules.h, include/proftpd.h, include/session.h, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_unix.c, modules/mod_cap.c, modules/mod_core.c, modules/mod_delay.c, modules/mod_facts.c, modules/mod_ident.c, modules/mod_log.c, modules/mod_memcache.c, modules/mod_xfer.c, src/bindings.c, src/cmd.c, src/dirtree.c, src/main.c, src/modules.c, src/proctitle.c, src/session.c, src/trace.c, tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Major work done on support for the HOST command (Bug#3289), to support name-based virtual hosting in proftpd. There is still more work needed to complete the feature, however. 2012-04-13 castaglia <castaglia> * src/fsio.c: Fix possible issue with encoding, due to passing the terminating NUL into the iconv functions (Bug#3769). 2012-04-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UserAlias.pm: Add regression test demonstrating a UserAlias which uses the '@' symbol. 2012-04-08 castaglia <castaglia> * include/netaddr.h, src/netaddr.c, tests/api/netaddr.c: Add two new functions: pr_netaddr_is_v4() and pr_netaddr_is_v6(). These functions can be used to test whether a given name is an IP address (or a DNS name). 2012-04-08 castaglia <castaglia> * include/conf.h, include/netaddr.h, src/netaddr.c, tests/api/netaddr.c: Back out the addition of the pr_netaddr_get_addr2() function; I'll be using a different approach for determining when a user-given string is an IP address or a DNS name. 2012-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm, tests/t/logging/systemlog.t: Adding regression tests for the SystemLog directive. 2012-04-06 castaglia <castaglia> * modules/Makefile.in: Make sure that if a static module fails to build (e.g. mod_sftp), the entire build is failed. 2012-04-06 castaglia <castaglia> * contrib/mod_sftp/agent.c: It appears that Solaris 10 does not like the use of a variable name 'sun'; it already has that name defined in some system headers. Silly. 2012-04-06 castaglia <castaglia> * NEWS, src/encode.c: Bug#3769 - Ensure that encoded strings are NUL-terminated. 2012-04-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Add regression tests showing that HideFiles properly hides files from the MLSD and STAT commands. 2012-04-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Updating the HideFiles regression tests to use testcase-specific logging. 2012-04-04 castaglia <castaglia> * contrib/mod_tls.c: When validating OCSP responses, make sure that we validate the timestamps on the OCSP response as well. 2012-04-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_geoip.pm: Removing mod_geoip tests; it's not that easy/expedient to have them in the testsuite. 2012-04-04 castaglia <castaglia> * contrib/mod_geoip.c: Add support for checking the GeoIP filters in PASS POST_CMD handler, so that geoip restrictions can be enforced on a per-user/group basis e.g. via mod_ifsession. 2012-04-04 castaglia <castaglia> * modules/mod_xfer.c, src/data.c: Move the cleanup of aborted data connection stuff to a LOG_CMD handler in mod_xfer, so that other modules (e.g. mod_sql, mod_log) could log abort-related info first. Do some stylistic cleanups as well. 2012-04-04 castaglia <castaglia> * include/conf.h, include/netaddr.h, src/netaddr.c, tests/api/netaddr.c: Add a new pr_netaddr_get_addr2() function, which returns additional information about a retrieved address. Namely, whether the given lookup name was an IPv4/6 address, or a DNS name. This information will be needed for handling HOST parameters. 2012-04-04 castaglia <castaglia> * doc/modules/mod_log.html: Document the new %{transfer-status}, %{transfer-failure} LogFormat variables. 2012-04-04 castaglia <castaglia> * modules/mod_log.c: Support the new %{transfer-status}, %{transfer-failure} LogFormat variables. 2012-04-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Added regression tests for the %{transfer-status}, %{transfer-failure} LogFormat variables in ExtendedLogs. 2012-04-04 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_sql.c: Support the new %{transfer-status}, %{transfer-failure} variables in SQLLog directives. 2012-04-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding tests for using the new %{transfer-status}, %{transfer-failure} variables in SQLLog directives. 2012-04-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_geoip.pm, tests/t/modules/mod_geoip.t, tests/tests.pl: Adding necessary files for writing regression tests for the mod_geoip module. 2012-04-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Fix up the mod_delay tests to use testcase-specific logging. 2012-04-03 castaglia <castaglia> * README.modules, doc/contrib/mod_geoip.html: Updating other docs related to mod_geoip. 2012-04-03 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_geoip.c, doc/contrib/mod_geoip.html: Adding mod_geoip to the list of contrib modules distributed with ProFTPD. 2012-04-03 castaglia <castaglia> * NEWS, contrib/mod_exec.c: Bug#3768 - ExecTimeout 0 (zero) not treated as infinite. 2012-04-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding regression test for Bug#3767. 2012-04-03 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3767 - mod_rewrite segfault when handling SITE CHGRP without a parameter. 2012-03-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Updating the mod_sql_sqlite tests to use testcase-specific logging. 2012-03-31 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_quotatab.c, contrib/mod_quotatab.h: Bug#3766 - Support a QuotaDefault directive, for configuring default limits. 2012-03-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Adding regression tests for Bug#3766 functionality (QuotaDefault directive). 2012-03-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Updating the mod_quotatab_sql regression testcases to use testcase-specific logging. 2012-03-30 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Child.pm: Since aborted transfers can result in a 226 response code but different response text, the assert_transfer_ok() method should allow callers to indicate whether the transfer was indeed aborted or not, lest the assertion fail unexpectedly. 2012-03-30 castaglia <castaglia> * contrib/mod_sftp/auth.c: Make sure to set the session.hide_password field to 'TRUE' for SSH2 logins. 2012-03-30 castaglia <castaglia> * include/version.h: This should mention a version of "1.3.5rc1", not "1.3.5". 2012-03-30 castaglia <castaglia> * doc/modules/mod_auth_unix.html: Add FAQ about PersistentPasswd and "caching" of system users. 2012-03-29 castaglia <castaglia> * src/data.c: Remove duplicate pr_timer_reset() call, and fix coding style. 2012-03-28 castaglia <castaglia> * tests/tests.pl: Run the HOST regression tests. 2012-03-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Start building up the collection of HOST-related regression tests. 2012-03-28 castaglia <castaglia> * modules/mod_core.c: Start working towards supporting the HOST command (Bug#3289). 2012-03-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Adding regression tests for Bug#3754. 2012-03-28 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3754 - ProFTPD refuses to delete/rename a symlink pointing outside a writable directory. 2012-03-27 castaglia <castaglia> * doc/contrib/mod_rewrite.html: Document the new mod_rewrite date/time-related variables. 2012-03-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding regression tests for Bug#3673 functionality. 2012-03-27 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_rewrite.c: Bug#3673 - Support date/timestamp variables in mod_rewrite. 2012-03-24 castaglia <castaglia> * doc/howto/Umask.html: Adding more info to the Umask howto. 2012-03-24 castaglia <castaglia> * doc/modules/mod_core.html: Adding Umask directive description to the mod_core doc. 2012-03-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Update EXIT regression test to use the %L/%a LogFormat variables. 2012-03-23 castaglia <castaglia> * modules/mod_log.c: Fix null pointer dereference when using the %L/%a variables in a LogFormat for the EXIT ExtendedLog command class. 2012-03-23 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3626 - Display variable %f off by a factor of 1024 on 64-bit platforms. 2012-03-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for Bug#3765. 2012-03-23 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/misc.c, contrib/mod_sftp/misc.h, contrib/mod_sftp/scp.c: Bug#3765 - mod_sftp should honor the GroupOwner directive for MKDIR requests. 2012-03-22 castaglia <castaglia> * doc/modules/mod_log.html: Try to clarify that the ALL ExtendedLog command class does not include the EXIT command class. 2012-03-22 castaglia <castaglia> * NEWS: Fix wrong bug number in NEWS. 2012-03-19 castaglia <castaglia> * doc/modules/mod_log.html: Add link to RFC 959 and mention the section which defines the FTP response docs. Add link to CLF, and explicitly mention that LogFormat's default format produces CLF entries. 2012-03-18 castaglia <castaglia> * doc/howto/Logging.html: Attempting to improve the Logging howto, in order to better address Bug#3540. 2012-03-18 castaglia <castaglia> * doc/modules/mod_core.html: By default, proftpd logs everything (in terms of SyslogLevel), thus the default SyslogLevel setting is "debug", not "none". 2012-03-17 castaglia <castaglia> * doc/howto/Logging.html: Updating Logging howto to point to local docs (now that we have them). 2012-03-17 castaglia <castaglia> * doc/modules/mod_core.html: For the SyslogFacility default, list "daemon" (although proftpd also uses "auth" for authentication messages). 2012-03-17 castaglia <castaglia> * doc/modules/mod_core.html: Add description of the DebugLevel directive to the mod_core documentation. Add links to the Logging howto in the descriptions for DebugLevel, SyslogFacility, and SyslogLevel. 2012-03-17 castaglia <castaglia> * doc/modules/mod_core.html: Adding descriptions of the SyslogFacility and SyslogLevel directives to the mod_core documentation. 2012-03-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/kex.c: Bug#3746 - mod_sftp does not correctly handle a 'guess' KEX message when the client guesses correctly. 2012-03-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd/FIPS.pm, tests/t/modules/mod_sql_passwd/fips.t, tests/tests.pl: Adding regression tests for mod_sql_passwd when it is using an OpenSSL that is in FIPS mode. 2012-03-14 castaglia <castaglia> * src/log.c: Make sure that we get a usable syslog socket fd (read: not 0, 1, or 2) after a restart. 2012-03-13 castaglia <castaglia> * contrib/mod_sql_passwd.c: Now mod_sql_passwd properly checks the EVP_Digest* return values. This makes it possible for mod_sql_passwd to Do The Right Thing(tm) when the digest cannot be used, e.g. MD5 passwords and OpenSSL that is in FIPS mode. 2012-03-13 castaglia <castaglia> * contrib/mod_sftp/kex.c: Add more trace logging of the name lists that mod_sftp is sending to the client. 2012-03-13 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in: There will be enough new features in mod_sftp in this release to warrant bumping the module version. 2012-03-13 castaglia <castaglia> * contrib/mod_sftp/blacklist.c: Fix compiler warning. 2012-03-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/FIPS.pm: Adding regression tests for key-based SSH2 auth when in FIPS mode. 2012-03-13 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/blacklist.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h: Properly handle fingerprinting of keys when FIPS mode is enabled. We used to always use MD5 fingerprints -- but that does not work for FIPS. (We also weren't checking for digest errors when obtaining key fingerprints). Now, when FIPS mode is enabled, we use SHA1 fingerprints. 2012-03-13 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the list of cipher/digest algorithms that are no longer advertised by mod_sftp when FIPS mode is enabled. 2012-03-13 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Allow the 3des-ctr cipher in FIPS mode (Bug#3763). 2012-03-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support for a 'feat_openssl_fips' testcase class label. (Needed this to have the Bug#3763 regression tests executed but only when mod_sftp was built against a FIPS-enabled OpenSSL.) 2012-03-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/FIPS.pm, tests/t/modules/mod_sftp/fips.t, tests/tests.pl: Adding regression tests for Bug#3763. 2012-03-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sftp/cipher.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/mod_sftp.c: Bug#3763 - Ensure that mod_sftp operates properly when OpenSSL FIPS mode is enabled. 2012-03-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Include.pm: Add regression test for an Include directive which uses a glob pattern that results in no matches. 2012-03-12 castaglia <castaglia> * doc/modules/mod_core.html: Make sure the Include directive docs mention how a glob pattern with no matches is handled. 2012-03-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Make sure the modified/new server_wait() still sets a default timeout of 10 secs, even if a hashref of options has been provided by the caller. 2012-03-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm: Fix these tests so that they actually stop the daemon processes that they launch. 2012-03-11 castaglia <castaglia> * contrib/mod_sftp/packet.c: Include the IP address of the client who sends us a DISCONNECT SSH message. 2012-03-11 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Alter the server_wait() and server_start() Utils functions so that test cases can specify environment variables, and -D defines, to be used when starting proftpd. 2012-03-11 castaglia <castaglia> * tests/t/config/ifdefine.t, tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm, tests/tests.pl: Adding regression tests for the <IfDefine> directive. 2012-03-11 castaglia <castaglia> * NEWS, contrib/mod_sftp/kex.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h: Bug#3761 - SSH2 key exchange fails if client sends certain SSH message before NEWKEYS. 2012-03-08 castaglia <castaglia> * contrib/mod_sftp/kex.c: Fix a few places where compilation would fail with a non-ECC capable OpenSSL version because I was missing some preprocessor guards. 2012-03-08 castaglia <castaglia> * tests/t/commands/site/chgrp.t, tests/t/lib/ProFTPD/Tests/Commands/SITE/CHGRP.pm, tests/tests.pl: Adding missing regression tests for the SITE CHGRP command. 2012-03-07 castaglia <castaglia> * src/main.c: On some platforms (e.g. Solaris), uname(3) returns a positive number on success, and on other platforms, uname(3) returns zero on success. The only reliable check for success, then, is whether the return value is less than zero on error -- all other values indicate success. 2012-03-07 castaglia <castaglia> * NEWS, RELEASE_NOTES, doc/contrib/mod_sftp.html: Mention the new support for loading host keys from an SSH agent in the docs. 2012-03-07 castaglia <castaglia> * contrib/mod_sftp/agent.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c: Put the finishing touches on support for loading SSH hostkeys from an SSH agent. 2012-03-06 castaglia <castaglia> * contrib/mod_sftp/agent.c, contrib/mod_sftp/agent.h, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c: More work on getting mod_sftp ready to read hostkeys from an SSH agent. 2012-03-06 castaglia <castaglia> * contrib/mod_sftp/agent.c: Slightly better trace logging messages by including the Unix domain socket path, e.g. where there are different SSH agents for different vhosts. 2012-03-06 castaglia <castaglia> * contrib/mod_sftp/Makefile.in, contrib/mod_sftp/agent.c, contrib/mod_sftp/agent.h, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h, contrib/mod_sftp/mod_sftp.c: Start working on support for obtaining hostkeys from an SSH agent, rather than from files on disk. 2012-03-04 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2012-03-04 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c: Forgot to update the hostbased auth to use the key type enum, and to support ECDSA keys for hostbased authentication as well. 2012-03-04 castaglia <castaglia> * doc/modules/mod_core.html: Fixing markup. 2012-03-02 castaglia <castaglia> * RELEASE_NOTES: Call out the ECC support for mod_sftp in the release notes. 2012-03-02 castaglia <castaglia> * contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h: Support use of ECDSA public keys for user/host authentication, as part of ECC support (Bug#3573). 2012-03-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests to mod_sftp, verifying that user public key authentication using ECDSA public keys works properly. Part of Bug#3573. 2012-03-02 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/authorized_ecdsa256_keys, tests/t/etc/modules/mod_sftp/authorized_ecdsa384_keys, tests/t/etc/modules/mod_sftp/authorized_ecdsa521_keys, tests/t/etc/modules/mod_sftp/test_ecdsa256_key, tests/t/etc/modules/mod_sftp/test_ecdsa256_key.pub, tests/t/etc/modules/mod_sftp/test_ecdsa384_key, tests/t/etc/modules/mod_sftp/test_ecdsa384_key.pub, tests/t/etc/modules/mod_sftp/test_ecdsa521_key, tests/t/etc/modules/mod_sftp/test_ecdsa521_key.pub: Adding ECDSA public keys, for use in verifying that ECDSA-based public key user authentication works properly (part of Bug#3573). 2012-03-01 castaglia <castaglia> * src/support.c: There's no reason for this memscrub_ctr variable symbol to be visible outside of this file. 2012-03-01 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3758 - ProFTPD crashes when handling mod_gss authentication due to null pointer. 2012-03-01 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the mod_sftp docs to mention the new key exchange algorithms supported, as well as ECDSA hostkey support (Bug#3573). 2012-03-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for the ECC support (hostkey algorithms, key exchange algorithms) in mod_sftp. Note that these tests rely on an external sftp(1) program which has ECC support. 2012-03-01 castaglia <castaglia> * NEWS, contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h, contrib/mod_sftp/ssh2.h: Bug#3573 - Support Elliptic Curve Cryptography (ECC) in SSH. 2012-03-01 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/ssh_host_ecdsa256_key, tests/t/etc/modules/mod_sftp/ssh_host_ecdsa256_key.pub, tests/t/etc/modules/mod_sftp/ssh_host_ecdsa384_key, tests/t/etc/modules/mod_sftp/ssh_host_ecdsa384_key.pub, tests/t/etc/modules/mod_sftp/ssh_host_ecdsa521_key, tests/t/etc/modules/mod_sftp/ssh_host_ecdsa521_key.pub: Adding SSH ECDSA host keys for the regression tests for Bug#3573. 2012-02-28 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Removed mention of the 'dump' ftpdctl action; it is no longer supported by the mod_ctrls_admin module. 2012-02-28 castaglia <castaglia> * contrib/mod_ban.c: Better handling of errno values in certain cases, so that the return values (and log messages) reflect reality. 2012-02-27 castaglia <castaglia> * locale/proftpd.pot: Updating POT file; most of the changes are of source code line number changes, but there are a couple of different strings. 2012-02-27 castaglia <castaglia> * locale/files.txt: Updated list of files containing strings that might need to be localized. 2012-02-27 castaglia <castaglia> * modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm: Return a 504 response code for unsupported TYPE parameters, rather than 500. 2012-02-27 castaglia <castaglia> * doc/modules/mod_auth.html, doc/modules/mod_core.html, doc/modules/mod_xfer.html: Document the maximum allowed timeout value, if any, for the various Timeout directives. 2012-02-24 castaglia <castaglia> * doc/modules/mod_lang.html: Updated mod_lang docs, per changes for Bug#3737. 2012-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Adding regression tests for the mod_lang changes from Bug#3737. 2012-02-24 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_lang.c: Bug#3737 - Allow UTF8 when UseEncoding is used. 2012-02-24 castaglia <castaglia> * src/encode.c: Use syslogging, rather than trace logging, in encode_init(), since encoding is initialized before the config file is parsed (and thus before the TraceLog is opened). 2012-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Adding regression tests for the current mod_lang behavior with regard to UseEncoding and OPTS UTF8 commands. 2012-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Updated the mod_lang tests to use testcase-specific logging. 2012-02-24 castaglia <castaglia> * src/netio.c: Preserve the errno value, for the sake of the caller. 2012-02-24 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c, modules/mod_xfer.c: Update mod_sftp and mod_xfer so that they use the new pr_str_get_nbytes() function for parsing file sizes, e.g. from directive parameters. 2012-02-24 castaglia <castaglia> * include/str.h, src/str.c, tests/api/str.c: Refactor some common code (duplicated in mod_xfer and in mod_sftp) used to parse a string of "bytes", including suffix, into a numeric value, into a new String API pr_str_get_nbytes() function. 2012-02-24 castaglia <castaglia> * doc/modules/mod_auth.html: Document the new RootRevoke parameter, per Bug#3731. 2012-02-24 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_auth.c, modules/mod_core.c, src/data.c, src/inet.c, tests/t/lib/ProFTPD/Tests/Config/RootRevoke.pm: Bug#3731 - Support active data transfers while RootRevoke is in effect. 2012-02-24 castaglia <castaglia> * src/table.c: Since we're only reading from /dev/urandom, we don't really care about any error value from fclose(3). 2012-02-24 castaglia <castaglia> * modules/mod_dso.c: Quell valid compiler warning about shadowed variable. 2012-02-24 castaglia <castaglia> * contrib/mod_ban.c: Quell compiler warning about unreachable code (but only unreachable when memcache support is not enabled). 2012-02-24 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Quell compiler warning about a line of code which will never be reached. 2012-02-24 castaglia <castaglia> * src/table.c: Fix compiler warning about generating the per-table random seed, when OpenSSL's RAND API is not available. Also decided to simply add the per-table seed to the returned hash value, rather than XOR the seed in. 2012-02-24 castaglia <castaglia> * src/ctrls.c: Fixed another place in the Controls API where we weren't using the proper buffer length. 2012-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add regression test for LogFormat/ExtendedLog, to make sure that an ABOR command is properly logged. 2012-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm: Adding regression test for Bug#3756. 2012-02-23 castaglia <castaglia> * NEWS, modules/mod_ctrls.c, src/ctrls.c: Bug#3756 - mod_ctrls no longer listens on ControlsSocket after restart. 2012-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Missing testcase tag. 2012-02-23 castaglia <castaglia> * doc/contrib/mod_sftp.html: Added documentation for the new IgnoreSFTPSetOwners SFTPOption (Bug#3757). 2012-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for Bug#3757. 2012-02-23 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in: Bug#3757 - Support SFTPOption for ignoring requests to modify file ownership. 2012-02-23 castaglia <castaglia> * modules/mod_dso.c: Quell compiler warning about losing pointer qualifier. 2012-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Add regression test showing that the PASS command works properly with non-ASCII characters in the provided password. 2012-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Adding reproduction recipe for Bug#3730; this test shows that the reported behavior does not currently happen. Still, useful to have the recipe around for possible regressions. 2012-02-22 castaglia <castaglia> * contrib/mod_ban.c: Committing additional fix for Bug#3751, to make sure that the BanTable fd, after a restart, is not one of stdin/stdout/stderr. 2012-02-21 castaglia <castaglia> * tests/t/config/envvars.t, tests/t/lib/ProFTPD/Tests/Config/EnvVars.pm, tests/tests.pl: Adding regression tests for using environment variables in proftpd.conf config files. 2012-02-21 castaglia <castaglia> * doc/utils/index.html: Better description of the prxs docs in the index. 2012-02-20 castaglia <castaglia> * doc/utils/prxs.html: Beginnings of a prxs doc. 2012-02-20 castaglia <castaglia> * doc/modules/mod_xfer.html: Adding descriptions for the TimeoutNoTransfer, TimeoutStalled directives to the bundled docs. 2012-02-20 castaglia <castaglia> * doc/modules/mod_core.html: Adding descriptions for the MaxInstances, TimeoutIdle directives to the bundled docs. 2012-02-20 castaglia <castaglia> * doc/modules/mod_auth.html: Adding descriptions for the TimeoutLogin, TimeoutSession directives to the bundled docs. 2012-02-19 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Refactor the code snippet for setting the 'sftp.file-handle' note into a common function, and avoid the code duplication. 2012-02-19 castaglia <castaglia> * modules/mod_auth.c: Removed unused variable which was leading to a compiler warning noted in Bug#3755. 2012-02-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for feature added for Bug#3707. 2012-02-19 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3707 - Add request/transfer ID to the logging of the initial and closing commands for SFTP file transfers. This adds a "sftp.file-handle" note to the cmd->notes table for SFTP transfer-related requests. This note can then be logged in a custom LogFormat using the new support for notes, e.g. '%{note:sftp.file-handle}'. Note that I also fixed the logging of %f LogFormat variables for SFTP CLOSE requests; the session.xfer struct was being cleared by the RETR/STOR handles to which the CLOSE request handler dispatched, and thus when the CLOSE request was dispatched, mod_log had no session.xfer information to work with. Now fixed. 2012-02-19 castaglia <castaglia> * RELEASE_NOTES, modules/mod_log.c: Add support for a '%{note:...}' LogFormat variable, for logging "notes" to a custom LogFormat. This makes LogFormat have parity with SQLLog, which also handles "notes" (something I quietly snuck into mod_sql). It is also going to be used to satisfy the feature requested in Bug#3707. 2012-02-18 castaglia <castaglia> * configure: Updated configure. 2012-02-18 castaglia <castaglia> * configure.in: Extend the fix for Bug#3702 (i.e. checking for the -pthread library link flag) to apply to the handling of Postgres as well. 2012-02-18 castaglia <castaglia> * contrib/mod_sftp_sql.c: Fix up compiler warnings noted in Bug#3755. 2012-02-18 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix up a few more places where compiler warnings (noted in Bug#3755) about unused variables could be addressed. 2012-02-18 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Pay more attention to the file_type field sent in an OPEN SFTP request from SFTP clients using SFTP protocol version 4 and later. Use this field to actually set the st.st_mode bits for that file type properly. Note that this also addresses a compiler warning about an unused variable noted in Bug#3755. 2012-02-18 castaglia <castaglia> * contrib/mod_sftp/channel.c: Remove unused variable causing compiler warning noted in Bug#3755. 2012-02-18 castaglia <castaglia> * contrib/mod_sftp/auth-password.c: Log when an SSH2 client gives us a new password, so that admins will know that that functionality is not supported by mod_sftp. This addresses a compiler warning about an unused variable reported by Bug#3755. 2012-02-18 castaglia <castaglia> * contrib/mod_rewrite.c: Remove unused variable causing compiler warning noted in Bug#3755. 2012-02-18 castaglia <castaglia> * contrib/mod_sql_mysql.c: Fix up the coding style and clean up some compiler warnings noted in Bug#3755. 2012-02-18 castaglia <castaglia> * contrib/mod_sql.c: Quell a compiler warning noted in Bug#3755. 2012-02-18 castaglia <castaglia> * src/auth.c: Stylistic cleanup, and fix a few compiler warnings noted in Bug#3755. 2012-02-18 castaglia <castaglia> * modules/mod_auth.c: Fix some stylistic nits, and clean up a few compiler warnings noted in Bug#3755. 2012-02-17 castaglia <castaglia> * src/lastlog.c: Use explicit cast to time_t pointer, to avoid compiler warnings on some platforms. 2012-02-17 castaglia <castaglia> * src/pool.c: The previous changes to the Pool API erroneously removed the memset(3) calls which zeroed out the allocated memory; these are very important calls. Oops. 2012-02-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Add a reproduction recipe for Bug#3740. So far, though, the reported bug hasn't manifested in my regression test attempts. 2012-02-17 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3751 - mod_ban does not close/reopen the BanLog/BanTable file descriptors on restart, causing a file descriptor leak. 2012-02-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Added regression test for Bug#3751 (mod_ban-related fd leak). 2012-02-16 castaglia <castaglia> * NEWS, src/bindings.c, src/inet.c: Bug#3752 - proftpd process exit status is zero for "Failed binding to address, port N: Address already in use" startup failure. 2012-02-16 castaglia <castaglia> * tests/api/response.c: Disable a unit test which was creating an expected segfault; the test code in question is a reproduction recipe rather than a regression test, and so should not necessarily be run all of the time (Bug#3750). 2012-02-16 castaglia <castaglia> * include/pool.h, src/pool.c: Clean up some places in the Pool API which allowed signed ints for sizes/counts of things. It does not make sense to allow for negative pool sizes or negative counts, so prevent it at the API level, rather than having less-than-zero checks in the code. 2012-02-16 castaglia <castaglia> * src/scoreboard.c: Clean up warnings in the Scoreboard API code. 2012-02-16 castaglia <castaglia> * src/table.c: Include the <openssl/rand.h> header, if OpenSSL is enabled, so that we get the proper RAND_* function definitions. 2012-02-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Missed part of the "unsigned char" merge. 2012-02-15 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/blacklist.c, contrib/mod_sftp/blacklist.h, contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/cipher.c, contrib/mod_sftp/date.c, contrib/mod_sftp/date.h, contrib/mod_sftp/disconnect.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/kbdint.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h, contrib/mod_sftp/keystore.c, contrib/mod_sftp/keystore.h, contrib/mod_sftp/mac.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h, contrib/mod_sftp/rfc4716.c, contrib/mod_sftp/scp.c, contrib/mod_sftp/scp.h, contrib/mod_sftp/service.c, contrib/mod_sftp/tap.c: Reworked the mod_sftp handling of buffers of data to use "unsigned char" rather than just "char". Raw data has really no signedness, so its better/cleaner to treat it as unsigned. 2012-02-15 castaglia <castaglia> * contrib/mod_sftp/kex.c: Fix minor issue pointed out by valgrind, where we were not tracking the length properly. 2012-02-15 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3743 - Random stalls/segfaults seen when transferring large files via SFTP. 2012-02-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Calling fxp_packet_add_cache() with null args should NOT zero out the static buffer length-tracking variable. 2012-02-15 castaglia <castaglia> * tests/api/scoreboard.c, tests/api/stubs.c: Fix unit tests to compile properly. 2012-02-15 castaglia <castaglia> * contrib/mod_sftp/packet.c: Missing return value. 2012-02-14 castaglia <castaglia> * NEWS, src/netacl.c: Bug#3749 - Compile of src/netacl.c fails on Tru64 UNIX (OSF/1) due to conflict with system header. 2012-02-14 castaglia <castaglia> * contrib/mod_sftp/packet.c: Comment typo. 2012-02-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm: Updating the TimeoutIdle test cases to use testcase-specific logging. 2012-02-10 castaglia <castaglia> * doc/modules/mod_auth.html: Adding description of MaxLoginAttempts directive to mod_auth docs. 2012-02-10 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3742 - Improper handling of self-signed certificate in client-sent cert list when "TLSVerifyClient on" is used. 2012-02-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression tests for Bug#3742. 2012-02-10 castaglia <castaglia> * tests/t/etc/modules/mod_tls/bug3742-ca.pem, tests/t/etc/modules/mod_tls/bug3742-client.pem: Adding some supporting certs used for testing Bug#3742. 2012-02-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Updating the main mod_tls tests to use testcase-specific logging. 2012-02-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Adding testcase for mod_ban's BanOnEvent ClientConnectRate functionality. 2012-02-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Making sure that all of the existing mod_ban testcases pass. 2012-02-09 castaglia <castaglia> * modules/mod_auth.c: Minor nit fix: When TimeoutLogin is exceeded, if the TimeoutLogin is just a single second, then the 421 response message should say "1 second" rather than "1 seconds". 2012-02-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Updating mod_ban testcases to use testcase-specific logging. 2012-02-09 castaglia <castaglia> * src/main.c: We were not properly generating the 'core.preparse' event on restarts, even though we would properly generate a 'core.postparse' event during a restart. Add generation of the 'core.preparse' event during restarts, for symmetry with the sequence of events during startup parsing. 2012-02-09 castaglia <castaglia> * src/parser.c: The config parser is supposed to handle most things in a case-insensitive fashion; it was not doing do for "<global>" (vs "<Global>"). 2012-02-08 castaglia <castaglia> * doc/howto/Scoreboard.html, doc/modules/mod_core.html: Update the documentation (mod_core to add description for ScoreboardFile and ScoreboardMutex, Scoreboard howto to add anchor for the "what happens if I disable scoreboarding?" FAQ) in light of Bug#3701. 2012-02-08 castaglia <castaglia> * NEWS, RELEASE_NOTES, src/scoreboard.c, tests/api/scoreboard.c: Bug#3701 - Modify ScoreboardFile directive to support disabling scoreboarding. 2012-02-06 castaglia <castaglia> * doc/modules/mod_ls.html: Updated mod_ls docs. 2012-02-05 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3745 - Reject PASV command if no IPv4 address available. 2012-02-05 castaglia <castaglia> * modules/mod_core.c: More minor stylistic changes. 2012-02-05 castaglia <castaglia> * modules/mod_core.c: More style changes; no functional change. 2012-02-05 castaglia <castaglia> * modules/mod_core.c: Clean up of some of the coding style; no functional change. 2012-02-05 castaglia <castaglia> * src/proftpd.8.in: Bug#3748 - Update FILES section in proftpd(8) man page. List the /etc/ftpusers file in the FILES section. 2012-02-03 castaglia <castaglia> * doc/modules/mod_facts.html: Added docs for FactsOptions directive. 2012-02-03 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_facts.c: Bug#3747 - Support option for displaying symlinks via MLSD using syntax preferred by FileZilla. 2012-02-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Updating ShowSymlinks regression tests to work properly on a Mac. 2012-02-03 castaglia <castaglia> * tests/t/config/factsoptions.t, tests/t/lib/ProFTPD/Tests/Config/FactsOptions.pm, tests/tests.pl: Adding regression tests for the new FactsOptions directive (Bug#3747). 2012-02-03 castaglia <castaglia> * doc/modules/mod_facts.html: Minor update to the MLSD FAQs. 2012-02-02 castaglia <castaglia> * doc/howto/ListOptions.html: Update the ListOptions howto to mention the LISTOnly, NLSTOnly, and NoErrorIfAbsent keywords. 2012-02-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Supply regression tests for the LISTOnly, NLSTOnly keywords for the ListOptions directive (Bug#3746). 2012-02-02 castaglia <castaglia> * RELEASE_NOTES: Update release notes with stubs about the ListOptions changes. 2012-02-02 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3746 - Support applying ListOptions only to NLST or to LIST commands. The ListOptions directive now supports "LISTOnly" and "NLSTOnly" keywords. 2012-02-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Adding regression tests for the new -1 ListOption added for Bug#3744. 2012-02-01 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3744 - Support ls(1) -1 option for LIST command. 2012-02-01 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Child.pm: There are times when the unit tests will fail, particularly when dealing with data transfers, because the test code expects a response of "226 Transfer complete" when the server has only sent "150 Opening ..." at that point. Provide a convenience assert_transfer_ok() method for checking for both scenarios, in order to try to reduce the spurious test failures due to this race/timing issue. 2012-01-31 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Some mod_sftp users are reporting issues with stalled/segfaulting SFTP uploads; I've narrowed down the cause to the buffering of channel data that the SFTP code does. Adding finer-grained trace logging in this code, to aid further debugging in this area. 2012-01-27 castaglia <castaglia> * tests/api/scoreboard.c: Forgot to update unit tests to match Scoreboard API change. 2012-01-27 castaglia <castaglia> * include/scoreboard.h, modules/mod_auth.c, src/main.c, src/scoreboard.c: When proftpd starts up in "ServerType standalone" mode, it should keep an fd on the ScoreboardMutex file open -- but make sure that that fd is not one of the Big Three (stdin/stdout/stderr). This fd should be shared across the child processes, i.e. for proper synchronization during scoreboard scrubbing. 2012-01-26 castaglia <castaglia> * include/table.h, src/auth.c, src/memcache.c, src/table.c, tests/api/table.c: Improve the randomization of table key hashing by moving the mixing of the random seed into the hash value into the Table API itself, rather than pushing it down into the key-hash functions. This makes for a cleaner design, so that custom key hashing functions don't need to handle the seed (or be afraid of causing problems if they forgot to use the seed). 2012-01-25 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c, modules/mod_core.c, src/main.c: I don't know why, but the ServerIdent configuration handler would parse the Boolean parameter, but store it in the config_rec by using "!bool", inverting the value. It make for confusing reading of the code which handles that config_rec. Avoid this confusion in the future, and simply store the parsed Boolean value in the config_rec as is. 2012-01-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm: Update the ServerIdent test cases to use the testcase-specific logging. 2012-01-25 castaglia <castaglia> * doc/modules/mod_core.html: Add docs for the ServerIdent directive to the mod_core documentation. 2012-01-25 castaglia <castaglia> * doc/contrib/mod_sftp.html: Updating mod_sftp docs with mention of using ServerIdent. 2012-01-25 castaglia <castaglia> * include/privs.h, src/main.c, src/privs.c: If proftpd is started by a nonroot user, then avoid spamming the logs with "unable to setuid" ERROR level messages. 2012-01-25 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#3699 - ProFTPD crash on start up on Mac OSX Lion with NLS enabled. 2012-01-25 castaglia <castaglia> * configure: Updated configure. 2012-01-25 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#3718 - ftptop fails to build on OpenSUSE. 2012-01-25 castaglia <castaglia> * RELEASE_NOTES: Update release notes, mentioning mod_sftp and the ServerIdent directive. 2012-01-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding tests for the ServerIdent directive and mod_sftp, for Bug#3739. 2012-01-25 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h: Bug#3739 - Allow for configurable SSH version identifiers in mod_sftp. 2012-01-23 castaglia <castaglia> * doc/contrib/mod_sql.html: Document that SQL*WhereClauses are effectively overridden by custom queries; the SQL*WhereClause will NOT be appended to a custom query. 2012-01-23 castaglia <castaglia> * contrib/mod_tls.c: Bug#3738 - Fix the handling of SSL_shutdown() return value so that shutdown errors are properly logged in TLSLog. 2012-01-20 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Bug#3735 - RPM spec: proftpd-devel package should require gcc and libtool. 2012-01-20 castaglia <castaglia> * modules/mod_dso.c: Added logging (at debug level 7) of more information of the module that mod_dso successfully loaded. In particular, we log the full path to the file that was loaded, and its last-modified time. This should help in situations where old/stale shared modules are being inadvertently loaded. 2012-01-17 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3734 - DirFakeUser/DirFakeGroup off with name causes SIGSEGV for MLSD/MLST commands. 2012-01-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Adding regression tests for Bug#3734. 2012-01-13 castaglia <castaglia> * modules/mod_xfer.c, src/inet.c: Add the calls to pr_inet_set_proto_cork() unconditionally; the conditional use of TCP_CORK vs TCP_NOPUSH (depending on the platform) is contained within the pr_inet_set_proto_cork() function. 2012-01-09 castaglia <castaglia> * doc/contrib/mod_ban.html: Add mod_ban FAQ about BanOnEvent and MaxLoginAttempts. 2012-01-06 castaglia <castaglia> * lib/pr_fnmatch_loop.c: Fix an issue with compiling with older GCC versions, which don't like a declaration like "char str[]", and instead want "char str[0]". 2012-01-04 castaglia <castaglia> * Make.rules.in: Move the $INSTALL_STRIP variable out to its own variable, so that at some point in the future, it can be overridden via environment variable. 2012-01-03 castaglia <castaglia> * src/table.c: Make the default table hash function use the random hash "seed" via XOR, rather than the simplistic addition (which wouldn't have added any value at all with regard to mitigating attempts to drive the table into hashing all values to the same chain/bucket index). 2012-01-03 castaglia <castaglia> * src/auth.c, src/memcache.c: Update the key hash callbacks used elsewhere in proftpd to take the additional random hash "seed" value into account. 2012-01-02 castaglia <castaglia> * src/table.c: Adding some comments/notes about hashing to src/table.c, for my future reference. 2012-01-02 castaglia <castaglia> * include/table.h, src/table.c, tests/api/table.c: Add a pr_table_load() function for calculating the load factor of a given table. To decrease collision avoidance for default tables, increase the default number of chains in a table from 32 to 256. Future testing using pr_table_load() will be used to better determine a good default, and perhaps to work towards dynamically adjusting tables (although such adjustments themselves can be abused by an attacker to burn CPU cycles). 2012-01-02 castaglia <castaglia> * include/table.h, src/table.c, tests/api/table.c: Fix some issues with ProFTPD'd pr_table_t handling. First, the default hashing function was fixed so that it actually used the different values in the given key. Previously, it only ever used the first value. Second, randomize the hash output by generating a random "seed" value on table creation time. Any custom key hash callbacks need to be updated to accept this seed value as one of the hashing inputs. This will help to mitigate any attacks which seek to force the table API into the worst-case performance scenario, where all keys are effectively hashed to the same chain, and thus linear scans are done, burning CPU time. Last, add a limit to the maximum number of items that a table can hold. This, too, helps to mitigate any attacks/abuses that can be done on tables. This maximum limit is 8K by default, and can be modified by a call to pr_table_ctl. 2011-12-29 castaglia <castaglia> * contrib/mod_sftp/auth.c: As per RFC 4252, if the USERAUTH_REQUEST contains service names which are unknown/unsupported, then return an error to the client and disconnect it. 2011-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression case for a second USERAUTH_REQUEST. 2011-12-29 castaglia <castaglia> * contrib/mod_sftp/packet.c: Properly ignore an USERAUTH_REQUEST from a client which has already authenticated. 2011-12-28 castaglia <castaglia> * contrib/mod_sftp/auth.c: Add better errno handling during SSH authentication, so that the logged messages are more accurate. 2011-12-22 castaglia <castaglia> * tests/t/config/umask.t, tests/t/lib/ProFTPD/Tests/Config/Umask.pm, tests/tests.pl: Start working on regression tests for the Umask directive. 2011-12-21 castaglia <castaglia> * modules/mod_dso.c: Minor updates to mod_dso's logging, and better handling (i.e. caching) of the errno value, for better/more accurate logging. 2011-12-21 castaglia <castaglia> * include/dirtree.h, include/fsio.h, include/inet.h, include/modules.h, include/netio.h, include/pool.h, include/proftpd.h, include/sets.h, include/table.h, src/pool.c: More changes to the headers in order to support C++ modules. Mostly it involves not using a typedef'd symbol in the definition of other structs; the C++ compiler is more stringent about that than the C compiler. 2011-12-21 castaglia <castaglia> * NEWS, src/wtmp.c: Bug#3728 - Build failure in wtmp.c on Gentoo/FreeBSD on sparc. 2011-12-21 castaglia <castaglia> * NEWS: Mention that Bug#3729 was fixed. 2011-12-20 castaglia <castaglia> * src/filter.c: Include the filter pattern string in the Filter trace messages. 2011-12-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Add regression/reproduction recipe for using PathDenyFilter to block uploads of any dot files. 2011-12-20 castaglia <castaglia> * doc/howto/Filters.html: Add PathDenyFilter example for how to block uploads of any/all dot files. 2011-12-19 castaglia <castaglia> * configure: Updated configure. 2011-12-19 castaglia <castaglia> * configure.in: In order to support C++ modules (Bug#3079), we need to add configure-time checks for a C++ compiler. 2011-12-18 jwm <jwm> * README.LDAP, contrib/mod_ldap.c: git 9d4234fbd69: prevent segfault when no user filters are specified 2011-12-14 castaglia <castaglia> * doc/modules/mod_lang.html: Add a mod_lang FAQ about the list of translations currently provided for proftpd. 2011-12-14 castaglia <castaglia> * modules/mod_lang.c: If mod_lang complains about the configured LangDefault, try to make the emitted log message a little clearer about the reason. 2011-12-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Added regression test for Bug#3727. 2011-12-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, contrib/mod_wrap2/mod_wrap2.c: Bug#3727 - mod_wrap2 causes unexpected LogFormat %u expansion for SFTP connections. 2011-12-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Updating mod_wrap2_file regression tests to use testcase-specific logging. 2011-12-14 castaglia <castaglia> * contrib/mod_copy.c: Updating mod_copy to use the renamed cmd_rec.cmd_class struct member. 2011-12-13 castaglia <castaglia> * src/ctrls.c: If we can't bind the test Unix domain socket, then log it at DEBUG3, rather than at just DEBUG. This should make proftpd start up logging a little less needlessly verbose. 2011-12-13 castaglia <castaglia> * src/fsio.c: When setting the CLOEXEC flag on fds that are possibly returned by FSIO handlers, be sure to ignore any "Invalid descriptor" errors, since many FSIO handlers return fake fds. 2011-12-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Update mod_exec tests to use testcase-specific logging. Added Linux-specific unit test for logging the open fds in the exec'd process, for auditing. 2011-12-13 castaglia <castaglia> * NEWS, contrib/mod_exec.c: Bug#3726 - mod_exec does not always capture stdout/stderr output from executed command. 2011-12-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Fix broken LIST regression test which only runs with rootprivs. 2011-12-12 castaglia <castaglia> * contrib/mod_exec.c: Stupid typo. 2011-12-12 castaglia <castaglia> * contrib/mod_exec.c: The buflen variable MUST be a signed datatype (e.g. int), rather than unsigned (e.g. size_t), in order to capture any error values from read(2). 2011-12-12 castaglia <castaglia> * contrib/mod_ban.c: Update mod_ban to use session.conn_class struct member. 2011-12-12 castaglia <castaglia> * contrib/mod_exec.c: Updated mod_exec to use session.conn_class struct member. 2011-12-12 castaglia <castaglia> * modules/mod_ctrls.c, src/ctrls.c, src/fsio.c, src/inet.c, src/log.c, src/main.c: As part of preparing proftpd for a different SIGHUP/restart implementation (Bug#3553), start setting the close-on-exec flag on file descriptors opened by the parent/daemon process. This is a good habit to get into, anyway. 2011-12-12 castaglia <castaglia> * configure: Updated configure. 2011-12-11 castaglia <castaglia> * configure.in: Typo. 2011-12-11 castaglia <castaglia> * configure: Updated configure. 2011-12-11 castaglia <castaglia> * NEWS, configure.in: Bug#3682 - Configure does not detect libiconv under Gentoo FreeBSD. 2011-12-11 castaglia <castaglia> * include/pool.h, include/proftpd.h, src/pool.c: Rename 'struct pool' to 'struct pool_struc', to a) be more consistent with the rest of the struct naming conventions used, and b) to avoid causing problems for C++ compilers. This is for Bug#3079. 2011-12-11 castaglia <castaglia> * RELEASE_NOTES, include/modules.h, src/main.c: Rename the cmdtable.class struct member to cmdtable.cmd_class, in order to support C++ modules (Bug#3079). 2011-12-11 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/service.c, contrib/mod_site_misc.c, include/dirtree.h, modules/mod_log.c, src/main.c: Rename the cmd_rec.class struct member to cmd_rec.cmd_class, in order to support C++ modules (Bug#3079). 2011-12-11 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_ifsession.c, contrib/mod_quotatab.c, contrib/mod_rewrite.c, contrib/mod_sftp/display.c, contrib/mod_sql.c, include/proftpd.h, modules/mod_auth.c, modules/mod_log.c, src/dirtree.c, src/display.c, src/expr.c, src/main.c, tests/api/expr.c: Rename the session.class struct member to session.conn_class, as part of supporting C++ modules (Bug#3079). 2011-12-10 castaglia <castaglia> * doc/contrib/mod_tls.html: Mention the TLSv1.1 and TLSv1.2 values for the TLSProtocol directive in the mod_tls docs. 2011-12-10 castaglia <castaglia> * configure: Updated configure. 2011-12-10 castaglia <castaglia> * config.h.in, configure.in: As part of working toward supporting ECC in mod_tls, and in mod_sftp (Bug#3573), we need to detect whether the version of OpenSSL used supports ECC. 2011-12-10 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_tls.c: Support TLSv1.1 and TLSv1.2 protocol versions in the TLSProtocol directive, assuming the version of OpenSSL used is new enough (1.0.1 and later). 2011-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Add regression tests for HideGroup and the NLST and MLSD commands. 2011-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Updating the HideGroup config regression tests to use testcase-specific logging. 2011-12-10 castaglia <castaglia> * doc/modules/mod_core.html: Adding descriptions for HideGroup, HideNoAccess, and HideUser directives to the mod_core documentation. 2011-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding regression test for a <Directory> configuration posted in the forums. 2011-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Updating <Directory>/<Limit> regression test cases to use testcase-specific logging. 2011-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Added TestSuite function for obtaining an arrayref of the shared module names (if any) built for the given proftpd executable. 2011-12-10 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make mod_sftp handle READDIR requests in a more optimal/intelligent way. Specifically, rather than using a hardcoded limit of 30 entries in each response, mod_sftp now looks at the max packet size and the amount of data used for the current number of entries, trying to stuff as many entries in a single response as possible. 2011-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for SFTP READDIR requests for a "wide" directory (e.g. a directory with many files at the same level). This test is used for trying to optimize the number of entries that mod_sftp returns in response to a READDIR request (i.e. to do better than 30 entries per response). 2011-12-10 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h: Add a sftp_channel_get_maxpacketsz(), so that code (e.g. the SFTP code) can get the maximum packet size. This can be used e.g. to figure out the maximum number of entries to write into a READDIR response, rather than having the naive hardcoded limit of 30 entries per READDIR response. 2011-12-10 castaglia <castaglia> * contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h: The various sftp_msg_write_* functions now return the number of bytes written into the given buffer. These return values make it easier for calling code to keep a total of how many bytes have been written into the buffer, which in turn enables other optimizations/more intelligent guessing. 2011-12-09 castaglia <castaglia> * RELEASE_NOTES: Fill in a little more of the release notes, for later fleshing out. 2011-12-09 castaglia <castaglia> * doc/contrib/mod_ifsession.html: Add documentation for the new <IfAuthenticated> mod_ifsession config section. 2011-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Updating test cases to use testcase-specific logging. Adding regression test for Bug#3629. 2011-12-09 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#3629 - Support <IfAuthenticated> conditional config section. 2011-12-09 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the new SHA2 SSH2 digests supported by the SFTPDigests directive. 2011-12-08 castaglia <castaglia> * contrib/mod_sftp/configure: Updating mod_sftp configure. 2011-12-08 castaglia <castaglia> * NEWS, contrib/mod_sftp/crypto.c: Bug#3686 - Support SHA2 digests in mod_sftp. 2011-12-08 castaglia <castaglia> * contrib/mod_sftp/configure.in: When the mod_sftp configure script is checking for SHA256/512 support in OpenSSL, it needs to check whether linking with OpenSSL requires -ldl (for dynmic linking) and/or -lz (for compression). Otherwise, the autoconf test programs will fail because of these linker errors (depending on how OpenSSL was built), and the script won't properly detect whether SHA256/512 support actually exists. 2011-12-07 castaglia <castaglia> * src/inet.c: Remove extraneous space and period. 2011-12-07 castaglia <castaglia> * src/inet.c: Make the log message about other processes using the address/port a little better (i.e. mention the possibility of inetd/xinetd using that address/port as well). 2011-12-06 castaglia <castaglia> * contrib/mod_sftp/auth.c: Make sure that the password data is properly hidden with a static string for SFTP connections. 2011-12-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add some ExtendedLog tests ensuring that the %r LogFormat variable, for PASS commands, is properly sanitized -- even for SFTP connections. 2011-12-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Updating ExtendedLog tests to use testcase-specific logging. 2011-12-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Make sure that the regression tests which purport to use active transfers do actually, in fact, use the PORT command for active transfers. 2011-12-06 castaglia <castaglia> * tests/t/config/rootrevoke.t, tests/t/lib/ProFTPD/Tests/Config/RootRevoke.pm, tests/tests.pl: Start adding unit/regression tests for the RootRevoke directive. 2011-12-06 castaglia <castaglia> * modules/mod_core.c: Comment typo. 2011-12-06 castaglia <castaglia> * src/inet.c: Adding more verbiage to the error message logged when proftpd fails to start, due to being unable to bind to the listening address/port. 2011-12-06 castaglia <castaglia> * contrib/mod_tls.c, modules/mod_core.c: As per RFC2389, the FEAT response MUST include any FTP commands and extensions after RFC959. We were missing EPRT and EPSV, and CCC for FTPS connections, in our FEAT response. 2011-12-06 castaglia <castaglia> * src/bindings.c: Make sure that the errno value is preserved properly, in order to get all of the proper logging done. 2011-12-06 castaglia <castaglia> * doc/modules/mod_core.html: Adding docs for the AllowFilter and DenyFilter directives to the mod_core docs. 2011-12-05 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3724 - Unloading mod_quotatab causes segfault. 2011-12-05 castaglia <castaglia> * modules/mod_delay.c: Quell a few compiler warnings about unsigned long vs size_t (see on FreeBSD). 2011-12-04 castaglia <castaglia> * tests/api/str.c: Added API/unit test for the newly-added pr_str_replace() function (from Bug#3721). 2011-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DenyFilter.pm: Added regression test for the case-insensitive flag for the DenyFilter directive. 2011-12-03 castaglia <castaglia> * RELEASE_NOTES, modules/mod_core.c: Support the case-insensitive filter flags for the AllowFilter and DenyFilter directives, too (similar to Bug#3592). 2011-12-03 castaglia <castaglia> * tests/t/config/denyfilter.t, tests/t/lib/ProFTPD/Tests/Config/DenyFilter.pm, tests/tests.pl: Start adding tests for the DenyFilter directive. 2011-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Updating the PathDenyFilter tests to use the testcase-specific logging. 2011-12-03 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_rewrite.html: Adding documentation for the new RewriteMaxReplace directive, added for Bug#3721. 2011-12-03 castaglia <castaglia> * doc/modules/mod_auth.html: Adding module-specific doc description for the RootRevoke directive to the mod_auth docs. 2011-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding regression tests for Bug#3721. 2011-12-03 castaglia <castaglia> * contrib/mod_rewrite.c: With the fix for Bug#3721, the mod_rewrite module now relies on the 1.3.5 codebase (i.e. the new pr_str_replace() function). 2011-12-03 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c, include/str.h, src/str.c: Bug#3721 - mod_rewrite does not replace characters if there are more than 8 occurrences. 2011-12-01 castaglia <castaglia> * RELEASE_NOTES: Minor update to the release notes, getting them ready for the 1.3.5 release cycle. 2011-12-01 castaglia <castaglia> * modules/mod_core.c: Remove the deprecated DisplayGoAway directive (Bug#3443). 2011-12-01 castaglia <castaglia> * NEWS, modules/mod_memcache.c: Bug#3723 - mod_memcache segfault on server restart. 2011-11-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding mod_rewrite regression test showing how to deal with both spaces and tabs in a filename. 2011-11-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Updating the mod_rewrite testcase coding style to use the new testcase-specific logging. 2011-11-23 castaglia <castaglia> * NEWS, contrib/mod_deflate.c, contrib/mod_exec.c, contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c, modules/mod_ctrls.c, modules/mod_memcache.c: Bug#3720 - Various module logfile permissions are 0600 instead of 0640. 2011-11-21 castaglia <castaglia> * doc/howto/Globbing.html: Update the Globbing howto to more accurately describe how the PR_TUNABLE_GLOBBING_MAX_MATCHES limit operates (i.e. that it restricts the number of files _checked_ by glob(3), not the number of _matches_ returned by glob(3)). 2011-11-21 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3719 - LIST -R can loop endlessly if bad directory symlink exists. 2011-11-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding regression test for Bug#3719. 2011-11-19 castaglia <castaglia> * contrib/mod_sftp/blacklist.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/scp.c: Fixing up a few more places where -Wshorten-64-to-32 warned about implicit conversions. 2011-11-19 castaglia <castaglia> * contrib/mod_tls.c: Use an explicit typecase to avoid a compiler warninga about implicit shortening of a 64-bit datatype to a 32-bit datatype. 2011-11-19 castaglia <castaglia> * modules/mod_delay.c: Fixing up mod_delay warnings about implicit shortening of 64-bit values to 32-bit values, found by gcc's -Wshorten-64-to-32 flag. 2011-11-19 castaglia <castaglia> * src/proctitle.c: Fix compiler warning about mixing code and declarations (hard to tell, based on the nasty ifdefs in the proctitle code). 2011-11-19 castaglia <castaglia> * include/support.h, modules/mod_ls.c, src/support.c: Quell a warning about implicit 64-to-32 bit conversion, turned up by gcc's -Wshorten-64-to-32 flag, by switching to size_t from int, when getting the max length of a filename. 2011-11-19 castaglia <castaglia> * lib/tpl.c: Fixing some warnings that gcc's -Wshorten-64-to-32 flag picked up. 2011-11-18 jwm <jwm> * README.LDAP: latest mod_ldap README 2011-11-18 jwm <jwm> * contrib/mod_ldap.c: this should have been labeled 2.9.1 2011-11-18 castaglia <castaglia> * src/str.c: A variable is needed, regardless of whether strlcat(3) is present or not. 2011-11-18 castaglia <castaglia> * configure: Updated configure. 2011-11-18 castaglia <castaglia> * config.h.in, configure.in, lib/sstrncpy.c, src/str.c: Use the strlcat(3) and strlcpy(3) functions, if available. I'm hoping that these will have been optimized for the host platform, and perform better than our homegrown versions. 2011-11-17 castaglia <castaglia> * NEWS, contrib/mod_sftp/keys.c, contrib/mod_tls.c, lib/pr-syslog.c, lib/pwgrent.c, modules/mod_auth_file.c, modules/mod_ctrls.c, src/ctrls.c, utils/ftptop.c: Bug#3717 - proftpd fails to run with "Abort trap" error message. Replace all occurrences of strncpy(3) with our own sstrncpy(), to avoid any gcc traps/issues about using that function. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Might as well update these HOST tests to use testcase-specific logging while I'm changing things. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/HELP.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Updating the rest of the FTP command tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm: Updating more tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm: Updating more tests to use the testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/PASS.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm: Updating tests to use the testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm: Updating EPSV tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PASV.pm: Update PASV tests to use the testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Update the login tests to use the testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm: Update the SITE CHMOD test to log its fatal exception in the testcase log. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/t/lib/ProFTPD/Tests/Commands/STAT.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Updating the tests to log the exception in the testcase log. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Finally managed to reproduce, and fix, the one PORT testcase which kept failing in my continuous integration server. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Update the PORT tests to pass along the fatal exception for logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: The test_append_logfile() function now takes an optional parameter for the exception which caused the testcase to fail; this exception is then added to the main log file. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Updated STOR tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Updated RETR tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Updated STOU tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Update LIST tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Update APPE tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Update NLST tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STAT.pm: Update STAT tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm: Updating EPRT tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Updated ABOR tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: When appending the testcase log file to the main 'tests.log' file, use the full path to the main log file, for better diagnostics when there are problems writing to that file. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Updating MLSD tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Updating MLST tests to use testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm: Updated MFMT tests to use the new testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm: Updating the MFF tests to use the testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm: Updating SITE CHMOD test to use the new testcase-specific logging. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: After appending the testcase-specific log to the main 'tests.log', be sure to unlink the testcase-specific log file. 2011-11-17 castaglia <castaglia> * tests/Makefile.in: Forgot to update the tests/Makefile to use the renamed tests.pl command-line option. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Updating the PORT testcases to using the new per-testcase logging functions, in an effort to track down why one of these testcases keeps failing in my continuous integration build. 2011-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Adding some functions to generate per-testcase log file names, and to append the contents of those logs, when the testcase files, to the main 'tests.log' file. This should help preserve the log files for failed testcases, even when the following testcases succeed; currently those subsequent testcases will delete the 'tests.log'. 2011-11-16 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3715 - MLSD/MLST fail when "DirFakeUser off" or "DirFakeGroup off" used. 2011-11-16 castaglia <castaglia> * contrib/mod_load/.cvsignore: More auto-generated files to be ignored by CVS. 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm, tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Adding regression tests for Bug#3715. 2011-11-16 castaglia <castaglia> * modules/mod_ls.c: Clean up the coding style in a couple of places. Also replace strcmp(3) with strncmp(3) in a couple of places where a string constant was being used for comparison. 2011-11-16 castaglia <castaglia> * tests/tests.pl: Change tests.pl to use --file-pattern instead of just --pattern, in order to make room for a --test-pattern. This --test-pattern (which doesn't exist yet) will be used to provide a similar regex matching pattern for testcase names (as opposed to file names). 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Updating MLST test cases to hopefully pass better on my Mac OSX machine. 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Adding a regression test for Bug#3714. 2011-11-16 castaglia <castaglia> * utils/ftpwho.c: Quell cppcheck warning about a memory leak. 2011-11-16 castaglia <castaglia> * Makefile.in, tests/Makefile.in: Provide a wider range of 'check' targets, so that various parts of the testsuite can be run from the top-level Makefile. This is useful for the continuous integration server config I am working on. 2011-11-16 castaglia <castaglia> * tests/tests.pl: Adding support for a --pattern comand-line option to the testsuite script, for specifing a filename pattern. All testcase files whose names match the given pattern will be run. This allows us to run only certain files as needed (e.g. commands, config, modules, etc). 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Minor updates to the NLST unit tests. 2011-11-16 castaglia <castaglia> * modules/mod_ls.c: Fix the handling of filenames with non-printable characters, when the -B list option is provided/used by the client. 2011-11-16 castaglia <castaglia> * NEWS, src/cmd.c, src/main.c: Bug#3714 - ftpwho/ftptop are not showing command arguments (e.g. downloaded file name). 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Making some of the PORT tests a little more resilient. 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Update DELE unit tests to run better on MacOSX. 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Updating RMD tests to hopefully pass better on my MacOSX machine. 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Updating MKD tests to hopefully pass better on my MacOSX machine. 2011-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PWD.pm: Fixing the PWD tests so that they work properly on MacOSX. 2011-11-15 castaglia <castaglia> * NEWS, src/log.c: Bug#3646 - Debug logging to stderr should include timestamps and PID. 2011-11-15 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Adding in missing "Context" descriptions for some of the mod_quotatab directives. 2011-11-15 castaglia <castaglia> * contrib/.cvsignore: Ignore the generated Makefile. 2011-11-15 castaglia <castaglia> * doc/modules/mod_core.html: Missing <br> tag. 2011-11-15 castaglia <castaglia> * doc/modules/mod_core.html: Missing closing </code> tags. 2011-11-14 castaglia <castaglia> * src/inet.c: Use the IPV6_TCLASS value for IPv6 connections for setting the Type-Of-Service (TOS) bits, where available. 2011-11-14 castaglia <castaglia> * tests/api/response.c: Fix the Bug#3711 test case to work properly on Mac OSX 10.5; the test fails due to SIGBUS rather than SIGSEGV in this case. 2011-11-11 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3713 - mod_tls cannot be compiled using Openssl 0.9.6. 2011-11-11 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Updated .spec file. Have I mentioned how much I dislike rpmbuild and .spec file "idiosyncrasies"? 2011-11-10 castaglia <castaglia> * NEWS: Bug#3712 - mod_wrap2/mod_load build errors: missing config.h. (Patches committed earlier today.) 2011-11-10 castaglia <castaglia> * include/version.h: Updated trunk version in CVS. 2011-11-10 castaglia <castaglia> * contrib/mod_load/Makefile.in, contrib/mod_wrap2/Makefile.in: Fixing the Makefiles for mod_load and mod_wrap2; I broke them when trying to fix the conditional contrib module library issue. 2011-11-10 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Trying to fix the release_cand_version macro in the .spec file. 2011-11-10 castaglia <castaglia> * contrib/dist/rpm/xinetd: Fixed comment in xinetd config file. 2011-11-09 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2011-11-09 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Updating for 1.3.4 release. 2011-11-09 castaglia <castaglia> * NEWS, RELEASE_NOTES: Updating NEWS, release notes, getting ready for release. 2011-11-09 castaglia <castaglia> * RELEASE_NOTES: Minor formatting consistency fix. 2011-11-09 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2011-11-09 castaglia <castaglia> * NEWS, src/main.c: Bug#3711 - Response pool use-after-free memory corruption error. 2011-11-08 castaglia <castaglia> * tests/api/response.c: Adding more unit tests for the Response API, including a demonstration of Bug#3711. 2011-11-08 castaglia <castaglia> * contrib/dist/rpm/xinetd: Updating the xinetd config file for the RPM package, as per Bug#3640. 2011-11-07 castaglia <castaglia> * RELEASE_NOTES: Updated release notes to mention the RPM/.spec changes. 2011-11-07 castaglia <castaglia> * contrib/dist/rpm/basic-pam.conf, contrib/dist/rpm/proftpd.spec: More updates for Bug#3640, reworking the proftpd.spec file and related config files. 2011-11-07 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd-tmpfs.conf, contrib/dist/rpm/proftpd.init.d, contrib/dist/rpm/proftpd.logrotate, contrib/dist/rpm/proftpd.pam, contrib/dist/rpm/proftpd.service: Bug#3640 - rpmbuild on CentOS5.5 (64bit): "File not found by glob". This involves a fairly large reworking of the .spec file, and adding new files expected by the .spec file. 2011-11-06 castaglia <castaglia> * contrib/mod_load/configure: Updated mod_load configure. 2011-11-06 castaglia <castaglia> * .cvsignore: Ignore the auto-generated module-libs.txt file. 2011-11-06 castaglia <castaglia> * contrib/mod_load/Makefile.in, contrib/mod_load/configure.in, contrib/mod_load/mod_load.c: Updating the mod_load configure/Makefiles to use the $(MODULE_LIBS_FILE) mechanism. 2011-11-06 castaglia <castaglia> * contrib/mod_wrap2/configure: Updated mod_wrap2 configure. 2011-11-06 castaglia <castaglia> * contrib/mod_wrap2/Makefile.in, contrib/mod_wrap2/configure.in, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in: Updating the mod_wrap2 build files to use the new $(MODULE_LIBS_FILE), rather than modifying the generated mod_wrap2.h file. 2011-11-06 castaglia <castaglia> * Make.rules.in, Makefile.in: Modifying the build system/scripts to support a $(MODULE_LIBS_FILE) file, which will contain a list of libraries that modules will want to add to the linker list, when linking the full proftpd executable AND when the modules in question are being built as static modules. Shared modules are built as .la files, which contain their own linkage lists. Consider the case where a module like mod_load (or mod_wrap2) might want to conditionally link against a library, depending on whether the host requires that library or depending on the configure options given when building proftpd. The libraries needed by the module won't be known by the top-level main Makefile -- hence the need for this new $(MODULE_LIBS_FILE) file. The top-level Makefile knows to read from this file for additional libraries; the module configure scripts/Makefiles can append the libraries they need to the $(MODULE_LIBS_FILE) file. I'll be updating the mod_wrap2 configure/Makefile files to use this mechanism shortly. 2011-11-05 castaglia <castaglia> * modules/mod_ls.c: Adding a little more trace logging, and some --enable-devel=timing instrumenting of the code, trying to track down a reported CPU spike. 2011-11-03 castaglia <castaglia> * config.h.in: Since the AC_FUNC_SETPGRP macro has been removed from the configure.in file, we should always assume the POSIX setpgrp(2) signature. 2011-11-01 castaglia <castaglia> * RELEASE_NOTES: Updated release notes. 2011-11-01 castaglia <castaglia> * configure: Updated configure. 2011-11-01 castaglia <castaglia> * configure.in, m4/proftpd.m4: Start tweaking the configure script to work better in cross-compiling situations. 2011-10-31 castaglia <castaglia> * tests/Makefile.in: Make sure to build the response unit tests, and include them in the api-tests binary. 2011-10-31 castaglia <castaglia> * tests/api/response.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Start working on API-level regression tests for the Response API. 2011-10-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Fixing some of the broken mod_tls regression tests so that they pass properly again. 2011-10-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Updating the mod_tls tests to reflect changes to the Net:FTPSSL-0.19 version of the dependent Perl module. 2011-10-24 castaglia <castaglia> * tests/t/config/listoptions.t, tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm, tests/tests.pl: Start working on regression tests for the ListOptions directive, spurred by some questions about it in the online forums. 2011-10-18 castaglia <castaglia> * doc/contrib/mod_sftp.html: Mention that mod_sftp does not honor the ListOptions directive. 2011-10-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding mod_rewrite regression test for rewriting backslashes to slashes. 2011-10-17 castaglia <castaglia> * doc/howto/Rewrite.html: Adding new mod_rewrite example, for converting backslashes to slashes. 2011-10-13 castaglia <castaglia> * contrib/mod_sftp/Makefile.in: Remove redundant object file from `ar' command list; the mod_sftp.o object is already mentioned in the $(MODULE_OBJS) list of object files. 2011-10-12 castaglia <castaglia> * doc/contrib/mod_sftp.html: Updated SFTPOptions documentation to mention new IgnoreSFTPSetTimes option (Bug#3706). 2011-10-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3706 - Support SFTPOption for ignoring requests to modify timestamps. 2011-10-10 castaglia <castaglia> * NEWS, RELEASE_NOTES: Fuller description in NEWS for Bug#3704, and mention the new TLSOption in the release notes. 2011-10-10 castaglia <castaglia> * doc/contrib/mod_tls.html: Documenting the new NoEmptyFragments TLSOption. 2011-10-10 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3704 - Enable OpenSSL countermeasure against SSLv3/TLSv1 BEAST attacks. 2011-10-06 castaglia <castaglia> * configure: Updated configure for Bug#3192. 2011-10-06 castaglia <castaglia> * NEWS, config.h.in, configure.in, contrib/mod_sql_postgres.c: Bug#3192 - PQescapeStringConn() needs a better check. 2011-10-06 castaglia <castaglia> * configure: Updated configure for Bug#3669. 2011-10-06 castaglia <castaglia> * NEWS, config.h.in, configure.in, contrib/mod_sql_mysql.c: Bug#3669 - mod_sql_mysql.so: undefined symbol: make_scrambled_password with MySQL 5.5 on Fedora. 2011-10-06 castaglia <castaglia> * configure: Updated configure for Bug#3702. 2011-10-06 castaglia <castaglia> * NEWS, configure.in: Bug#3702 - ProFTPD with mod_sql_mysql dies of "Alarm clock" on FreeBSD. 2011-10-04 castaglia <castaglia> * src/main.c, src/support.c, src/timers.c: Add checking of the return values for calling signal(2), sigaction(2), and siginterrupt(2), and logging of any errors. 2011-10-04 castaglia <castaglia> * contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Further fix to Bug#3692: make sure that if the processing of the SQLLog directive (marked with "IGNORE_ERRORS") needs to open a database connection, and the database info is bad (e.g. bad database name), this bad database open is also ignored, rather than causing the session to be disconnected. 2011-09-29 castaglia <castaglia> * contrib/mod_sftp/date.c: Bug#3650 - Update the FSF address. 2011-09-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Minor update to unit test, trying to avoid ugly regex error on Mac OSX (due to its temporary file naming scheme). 2011-09-26 castaglia <castaglia> * include/version.h: Updated version for CVS status. 2011-09-26 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Update the versions for RC3. 2011-09-26 castaglia <castaglia> * NEWS: Update NEWS with the release date. 2011-09-26 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2011-09-26 castaglia <castaglia> * RELEASE_NOTES: Updated release notes. 2011-09-26 castaglia <castaglia> * modules/mod_log.c: Slightly better fix for Bug#3696, which doesn't require the whole command dispatch mechanism for getting the ExtendedLog entry written. 2011-09-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add unit test for Bug#3696 (ExtendedLog written in cases of TimeoutStalled) for SFTP transfers as well. 2011-09-24 castaglia <castaglia> * contrib/mod_sftp/scp.c: Modify the handling of SCP downloads to allow for PRE_CMD handlers to rewrite the file name (e.g. via mod_rewrite). 2011-09-24 castaglia <castaglia> * modules/mod_xfer.c: If ever the RETR PRE_CMD handler in mod_xfer says "no, I won't download this file because it's not a regular file", set the errno to EISDIR. This specific errno value can then be handled properly, e.g. by the SCP download code. 2011-09-24 castaglia <castaglia> * src/main.c: More tricks to preserve the errno value through the command dispatch mechanism. 2011-09-24 castaglia <castaglia> * modules/mod_log.c: Guard against a possibly-null session.curr_cmd_rec pointer, when handling the 'core.timeout-stalled' event in mod_log. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Fixing broken unit tests. 2011-09-24 castaglia <castaglia> * contrib/mod_exec.c: Use strncmp(3) in more places, give the compiler some hints when we will be ignoring the return values, and fix the byte count for writes when using the useStdin ExecOption. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/exec.pm: Leave a long explanation to my future self about failures of a particular unit test, and why it can happen (e.g. due to module load ordering). 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix broken mod_sql_sqlite unit tests. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Relax some of the heuristics, allowing some of the unit tests to pass more regularly. 2011-09-24 castaglia <castaglia> * contrib/mod_rewrite.c: Fix a regression in the RewriteHome feature, where it wasn't working at all. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm: Minor style updates; no functional change. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Expect to handle a "File too large" error response as well in these unit tests. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm: Fix broken unit test. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Add a different expected error message, fixing the unit test on a Linux system. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/HELP.pm: Fix the HELP unit test to work properly, even if mod_tls is in the build. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm: Update the FEAT unit test to better handle when other modules, e.g. mod_site_misc and mod_copy, are in the build. 2011-09-24 castaglia <castaglia> * tests/tests.pl: Don't run the mod_sftp_sql unit tests unless that module, too, is loaded. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: More places to catch data connection timeouts. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm, tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: More places to catch data connection timeouts. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: More places to catch data connection timeouts. 2011-09-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Hardening the testsuite caused by spurious data connection timeouts; this makes the tests still fail when it happens, but the output is more intelligible. 2011-09-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Trying to fix/quell Perl warnings emitted while running the testsuite. 2011-09-23 castaglia <castaglia> * tests/api/scoreboard.c: Fixing pr_scoreboard_scrub() unit test so that it passes properly. 2011-09-21 castaglia <castaglia> * NEWS, modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Bug#3698 - <Limit WRITE> does not prevent deletion of a file/directory via renaming. 2011-09-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Telnet.pm: Adding regression test for Bug#3697. 2011-09-21 castaglia <castaglia> * NEWS, src/netio.c: Bug#3697 - Filenames with embedded IAC do not get processed correctly. 2011-09-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Regression test for Bug#3696. 2011-09-21 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_log.c, src/main.c: Bug#3696 - ExtendedLog not getting written on timeouts. 2011-09-21 castaglia <castaglia> * NEWS, include/inet.h, modules/mod_core.c, src/bindings.c, src/inet.c: Bug#3693 - Clients are disconnected if proftpd cannot listen on port for passive data transfer. 2011-09-09 castaglia <castaglia> * contrib/mod_sftp/mac.c: Use the newer HMAC_Init_ex() when available in the OpenSSL version used (e.g. to make use of any ENGINEs configured), as well as checking the return values of HMAC_Init_ex(), HMAC_Update(), and HMAC_Final() (again, when supported by the OpenSSL version used). 2011-09-09 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update mod_sftp doc to mention Axway clients as having the channel window sizing issues, just like WS_FTP. 2011-09-06 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3692 - SQLLog IGNORE_ERRORS parameter does not work. 2011-09-06 castaglia <castaglia> * src/memcache.c: Pedantically fix more compiler warnings. 2011-09-05 castaglia <castaglia> * doc/contrib/mod_sql.html: Fix HTML markup. 2011-09-05 castaglia <castaglia> * contrib/mod_tls_memcache.c: Address a few compiler warnings. 2011-09-05 castaglia <castaglia> * contrib/mod_tls.c: Fix typo causing compiler warninga about "statement with no effect". 2011-09-05 castaglia <castaglia> * src/trace.c: Fix compiler error when compiling with --disable-trace; the pr_trace_vsmg() function was not implemented in that case. 2011-09-02 castaglia <castaglia> * contrib/README, contrib/mod_quotatab_ldap.ldif, contrib/mod_quotatab_ldap.schema: Bug#3678 - Include LDAP schema for mod_quotatab_ldap. 2011-09-02 castaglia <castaglia> * doc/contrib/mod_exec.html: Adding mod_exec FAQ. 2011-08-19 castaglia <castaglia> * modules/mod_core.c: Reducing the log level used for the log message about setting the DefaultAddress, so that e.g. heavily loaded proftpd servers using "ServerType inetd" aren't spamming syslog with this message. 2011-08-16 castaglia <castaglia> * src/trace.c: Quell compiler warning on some systems by using an explicit typecast. 2011-08-16 castaglia <castaglia> * contrib/mod_radius.c: Fix the compilation of mod_radius on FreeBSD, which was broken by the patch for Bug#3679, which added support for the NAS-IPv6-Address attribute. Turns out that the s6_addr32 macro is not available on all systems (e.g. FreeBSD); hopefully the s6_addr macro is more widely supported. 2011-08-13 castaglia <castaglia> * modules/mod_core.c: Replace the unnecessary (and unchecked) malloc(3) calls -- used when handling the CDPath directive -- with palloc(), which handles out of memory conditions automatically (and is more consistent with the proftpd coding style). 2011-08-13 castaglia <castaglia> * NEWS, src/response.c: Bug#3685 - NULL pointer dereference after an idle timeout. 2011-08-12 castaglia <castaglia> * configure: Updated configure. 2011-08-12 castaglia <castaglia> * NEWS, configure.in: Bug#3681 - Non POSIX test constructions in autoconf script. 2011-08-08 castaglia <castaglia> * contrib/mod_tls.c: Reduce the OpenSSL memory usage for SSL connections (if OpenSSL-1.0.0a or later are used). 2011-08-05 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the SFTPOptions IgnoreSFTPUploadPerms description to mention directory creation, as per Bug#3680. 2011-08-05 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3680 - SFTP MKDIR does not respect the IgnoreSFTPUploadPerms option. 2011-08-05 castaglia <castaglia> * contrib/mod_radius.c: Better implementation of the NAS-IPv6-Address functionality for Bug#3679. 2011-08-04 castaglia <castaglia> * doc/contrib/mod_radius.html: Mention that mod_radius might use NAS-IPv6-Address in the mod_radius docs. 2011-08-04 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3679 - Support NAS-IPv6-Address RADIUS attribute. 2011-08-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h: Bug#3676 - RADIUS-based logins don't work using mod_sftp. 2011-08-03 castaglia <castaglia> * doc/contrib/mod_radius.html: Update the RadiusNASIdentifier docs to mention that it will use "ssh2" for SFTP/SCP sessions. 2011-08-03 castaglia <castaglia> * contrib/mod_radius.c: When setting the NAS-Identifier attribute in the RADIUS request, be sure to dynamically get the protocol, so that we use "ftp" for FTP sessions and "ssh2" for SFTP sessions. 2011-08-02 castaglia <castaglia> * src/scoreboard.c: Fix compiler warning about shadowed variable. 2011-08-02 castaglia <castaglia> * configure: Updated configure. 2011-08-02 castaglia <castaglia> * NEWS, configure.in: Bug#3675 - Automatically disable sendfile support for AIX systems. 2011-08-02 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Fix the compilation of mod_sftp.c (Bug#3677). 2011-08-02 castaglia <castaglia> * src/regexp.c: Remove unused variable. 2011-08-01 castaglia <castaglia> * src/main.c: Defend against possible null cmd_rec argument in pr_cmd_dispatch_phase(). 2011-07-31 castaglia <castaglia> * NEWS, modules/mod_ctrls.c: Bug#3674 - After running "proftpd -t" command, ftpdctl commands no longer work. 2011-07-26 castaglia <castaglia> * modules/mod_core.c: Try to make the error logging better, for the case where a client requests a rename of a directory across filesystem mount points. 2011-07-10 castaglia <castaglia> * doc/contrib/mod_tls.html: Updated mod_tls AllowClientRenegotiations TLSOption description to mention CVE-2011-1437. 2011-07-10 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3671 - TLSOption AllowClientRenegotiations to be unconditionally required for client-initiated renegotiations. 2011-07-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm: Adding regression tests for Bug#3670. 2011-07-10 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#3670 - WrapDenyMsg not displayed when using mod_wrap2 + mod_sftp. 2011-07-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm, tests/t/modules/mod_sftp/wrap2.t, tests/tests.pl: Breaking out the mod_sftp+mod_wrap2 unit tests into their own separate file of test cases. 2011-07-09 castaglia <castaglia> * contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/kex.c: Adding comments for my future reference, for when I start adding X509 support to mod_sftp. 2011-07-06 castaglia <castaglia> * doc/modules/mod_facts.html: Adding MLSD/MLST FAQ from forums. 2011-07-02 castaglia <castaglia> * NEWS, src/scoreboard.c: Bug#3668 - File descriptor leak during scoreboard scrubbing. 2011-07-01 castaglia <castaglia> * doc/modules/mod_core.html: Add description of the GroupOwner directive, updated for Bug#3665, to the mod_core HTML docs. 2011-07-01 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3665 - GID of new files are inherited from parent directory on FreeBSD. The GroupOwner directive is enhanced to use "~" as "GID of logged-in user", to work around the FreeBSD-specific behavior. 2011-06-30 jwm <jwm> * NEWS: mention the mod_ldap configuration directive overhaul 2011-06-21 castaglia <castaglia> * NEWS, src/scoreboard.c: Bug#3667 - Scoreboard scrubbing can block daemon process for long periods of time. 2011-06-17 castaglia <castaglia> * doc/contrib/mod_sftp.html: Minor updates to the mod_sftp docs for SFTPCiphers, SFTPDigests, and SFTPOptions. 2011-06-17 castaglia <castaglia> * contrib/mod_sftp/kex.c: Add trace logging of the SSH2 session algorithms. This duplicates info already logged in the SFTPLog, but if you're *only* getting a TraceLog, it helps to have the session algorithms logged there. 2011-06-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Added regression test for "LIST -R", prompted by a forums post saying that ncftp shows an issue with proftpd-1.3.3e's handling of LIST -R. Couldn't reproduce the reported symptoms with this test case, though. 2011-06-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Bug#3664 - mod_sftp does not update process title. 2011-06-10 castaglia <castaglia> * contrib/mod_deflate.c: Add finer-grained trace logging of compressed data transfers. Modify the read() callback slightly to be more efficient (one less branch/block to think through when debugging). 2011-06-10 castaglia <castaglia> * src/scoreboard.c: If we can't open the ScoreboardFile during scrubbing, make sure we log the proper error reason for it. 2011-06-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm: Add HideNoAccess regression test, trying to reproduce an issue described on forums.proftpd.org. 2011-06-05 castaglia <castaglia> * modules/mod_delay.c: Remove now-unnecessary blank line in 'ftpdctl delay info' response. 2011-06-05 castaglia <castaglia> * modules/mod_delay.c: First, fix the calculation of the row indices; mod_delay was inadvertently trampling on the values in the wrong rows, especially for vhosts. Second, make the output from 'ftpdctl delay info' a little prettier. 2011-06-05 castaglia <castaglia> * src/ctrls.c: Cache errno value for better trace messages. Fix truncation of Unix domain socket path such that it doesn't trash the call stack (e.g. on Mac OSX) due to bad assumptions about the structure/fields of a struct sockaddr_un. 2011-06-05 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#3663 - TimeoutLogin cannot interrupt mod_delay as it should. 2011-06-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Add mod_deflate regression test showing read/compress of chunks of upload data. 2011-06-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Fix mod_deflate regression tests broken by the addition of the ScoreboardMutex. 2011-05-27 castaglia <castaglia> * doc/modules/mod_core.html: Add docs for the PassivePorts directive to the bundled HTML mod_core doc. 2011-05-27 castaglia <castaglia> * doc/howto/Scoreboard.html: Mention the types of data tracked in the ScoreboardFile for a data transfer, and link to the utilities docs. This should cover Bug#2625. 2011-05-27 castaglia <castaglia> * src/fsio.c: More caching/setting of errno properly, and fixing a minor memory leak. 2011-05-26 castaglia <castaglia> * modules/mod_core.c: Properly cache/set the errno value before returning PR_ERROR. 2011-05-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab/site_misc.pm, tests/t/modules/mod_quotatab/site_misc.t, tests/tests.pl: Adding regression tests for Bug#3660. 2011-05-26 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, contrib/mod_site_misc.c: Bug#3660 - SITE MKDIR/RMDIR should update quota tallies properly. 2011-05-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Update the mod_quotatab tests to be a little more resilient during full runs of the testsuite. 2011-05-26 castaglia <castaglia> * contrib/mod_quotatab_sql.c: Remove the checking for underflowing the files used values in mod_quotatab_sql. The mod_quotatab module already makes such checks. Plus, the checks at this layer prevent the decrementing of the files used value to zero. 2011-05-26 castaglia <castaglia> * contrib/mod_sql.c: Fix some strncasecmp(3) cases in mod_sql, and convert other strcasecmp(3) to strncasecmp(3). 2011-05-26 castaglia <castaglia> * contrib/mod_copy.c: Allocate the cmd->arg string out of the cmd->pool, NOT out of the cmd->tmp_pool, as the latter pool is cleared after every dispatch phase and the former pool is not. 2011-05-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab/copy.pm: Forgot to check in the regression tests for the recent work on Bug#3641. 2011-05-25 castaglia <castaglia> * contrib/mod_copy.c: Make mod_copy interact with mod_quotatab such that a recursively copied directory will update the quota tallies properly (Bug#3641). 2011-05-25 castaglia <castaglia> * contrib/mod_quotatab.c: Fix up some minor nits in mod_quotatab, found while working on Bug#3641. 2011-05-25 castaglia <castaglia> * modules/mod_xfer.c: Set errno before returning PR_ERROR. 2011-05-25 castaglia <castaglia> * contrib/mod_sftp/fxp.c: The copy-file functionality in mod_sftp needs to interact with e.g. mod_copy and mod_quotatab properly, which requires that mod_sftp generate a SITE COPY cmd_rec, not a COPY cmd_rec. 2011-05-24 castaglia <castaglia> * contrib/install-sh: Adding install-sh script for contrib/ area. 2011-05-24 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in: The newly added date(1) support in mod_sftp needs to be explicitly enabled via the Protocols directive, rather than being enabled by default. This should preserve the principle of least surprise. And since this date(1) support is for testing anyway, there's (currently) no reason it should be enabled by default. 2011-05-24 castaglia <castaglia> * contrib/mod_sftp/Makefile.in, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/date.c, contrib/mod_sftp/date.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in: Adding support for builtin date(1) command, for speed tests related to authentication (versus file transfers via SFTP/SCP). 2011-05-24 castaglia <castaglia> * contrib/mod_sftp/scp.c: Remove redundant setting of the POSIXLY_CORRECT environment variable. 2011-05-24 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Documenting the -n 'ftpdctl kick' option, added for Bug#3555. 2011-05-24 castaglia <castaglia> * NEWS, contrib/mod_ctrls_admin.c: Bug#3555 - Support optional maximum number of clients to be disconnected via 'ftpdctl kick'. 2011-05-23 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_sftp/scp.c, contrib/mod_tls.c, include/support.h, src/support.c: Refactor all of the getopt(3) resetting code into a single pr_getopt_reset() function than then be used by the interested parties (e.g. mod_ban, mod_sftp, mod_tls). 2011-05-23 castaglia <castaglia> * contrib/mod_wrap2/configure: Updated mod_wrap2 configure. 2011-05-23 castaglia <castaglia> * configure.in, contrib/mod_wrap2/configure.in: Updating FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * contrib/ftpasswd, contrib/ftpmail, contrib/ftpquota, src/prxs.in: Updated FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * COPYING, doc/license.txt, src/auth.c, src/bindings.c, src/child.c, src/class.c, src/cmd.c, src/ctrls.c, src/data.c, src/dirtree.c, src/display.c, src/encode.c, src/env.c, src/event.c, src/expr.c, src/feat.c, src/filter.c, src/fsio.c, src/ftpdctl.c, src/help.c, src/inet.c, src/lastlog.c, src/log.c, src/main.c, src/memcache.c, src/mkhome.c, src/modules.c, src/netacl.c, src/netaddr.c, src/netio.c, src/parser.c, src/pidfile.c, src/pool.c, src/privs.c, src/proctitle.c, src/regexp.c, src/response.c, src/scoreboard.c, src/session.c, src/sets.c, src/stash.c, src/str.c, src/support.c, src/table.c, src/throttle.c, src/timers.c, src/trace.c, src/var.c, src/version.c, src/wtmp.c, src/xferlog.c: Updating FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * doc/mod_sample.c, lib/getopt.c, lib/getopt1.c, lib/glibc-gai_strerror.c, lib/glibc-glob.c, lib/glibc-mkstemp.c, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c, lib/pwgrent.c, lib/sstrncpy.c, lib/strsep.c, lib/vsnprintf.c, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_pam.c, modules/mod_auth_unix.c, modules/mod_cap.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_delay.c, modules/mod_dso.c, modules/mod_facl.c, modules/mod_facts.c, modules/mod_ident.c, modules/mod_lang.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_memcache.c, modules/mod_site.c, modules/mod_xfer.c: Updated FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_copy.c, contrib/mod_ctrls_admin.c, contrib/mod_deflate.c, contrib/mod_dynmasq.c, contrib/mod_exec.c, contrib/mod_ifsession.c, contrib/mod_ifversion.c, contrib/mod_ldap.c, contrib/mod_load/mod_load.c.in, contrib/mod_qos.c, contrib/mod_quotatab.c, contrib/mod_quotatab_file.c, contrib/mod_quotatab_ldap.c, contrib/mod_quotatab_radius.c, contrib/mod_quotatab_sql.c, contrib/mod_radius.c, contrib/mod_ratio.c, contrib/mod_readme.c, contrib/mod_rewrite.c, contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/cipher.c, contrib/mod_sftp/compress.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/disconnect.c, contrib/mod_sftp/display.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/interop.c, contrib/mod_sftp/kbdint.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keystore.c, contrib/mod_sftp/mac.c, contrib/mod_sftp/misc.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/msg.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/rfc4716.c, contrib/mod_sftp/scp.c, contrib/mod_sftp/service.c, contrib/mod_sftp/session.c, contrib/mod_sftp/tap.c, contrib/mod_sftp/utf8.c, contrib/mod_sftp_pam.c, contrib/mod_sftp_sql.c, contrib/mod_shaper.c, contrib/mod_site_misc.c, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_odbc.c, contrib/mod_sql_passwd.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c, contrib/mod_unique_id.c, contrib/mod_wrap.c, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c: Updating FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * contrib/mod_quotatab.h, contrib/mod_sftp/auth.h, contrib/mod_sftp/channel.h, contrib/mod_sftp/cipher.h, contrib/mod_sftp/compress.h, contrib/mod_sftp/crypto.h, contrib/mod_sftp/disconnect.h, contrib/mod_sftp/display.h, contrib/mod_sftp/fxp.h, contrib/mod_sftp/interop.h, contrib/mod_sftp/kbdint.h, contrib/mod_sftp/kex.h, contrib/mod_sftp/keys.h, contrib/mod_sftp/keystore.h, contrib/mod_sftp/mac.h, contrib/mod_sftp/misc.h, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/msg.h, contrib/mod_sftp/packet.h, contrib/mod_sftp/rfc4716.h, contrib/mod_sftp/scp.h, contrib/mod_sftp/service.h, contrib/mod_sftp/session.h, contrib/mod_sftp/ssh2.h, contrib/mod_sftp/tap.h, contrib/mod_sftp/utf8.h, contrib/mod_sql.h, contrib/mod_tls.h, contrib/mod_wrap2/mod_wrap2.h.in, lib/getopt.h, tests/api/array.c, tests/api/class.c, tests/api/cmd.c, tests/api/env.c, tests/api/event.c, tests/api/expr.c, tests/api/feat.c, tests/api/modules.c, tests/api/netacl.c, tests/api/netaddr.c, tests/api/pool.c, tests/api/regexp.c, tests/api/scoreboard.c, tests/api/sets.c, tests/api/stash.c, tests/api/str.c, tests/api/stubs.c, tests/api/table.c, tests/api/tests.c, tests/api/tests.h, tests/api/timers.c, tests/api/var.c, tests/api/version.c, utils/ftpcount.c, utils/ftpscrub.c, utils/ftpshut.c, utils/ftptop.c, utils/ftpwho.c, utils/misc.c, utils/scoreboard.c: Updating FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * include/auth.h, include/bindings.h, include/child.h, include/class.h, include/cmd.h, include/compat.h, include/conf.h, include/ctrls.h, include/data.h, include/default_paths.h, include/dirtree.h, include/display.h, include/encode.h, include/env.h, include/event.h, include/expr.h, include/feat.h, include/filter.h, include/fsio.h, include/ftp.h, include/glibc-glob.h, include/help.h, include/inet.h, include/libsupp.h, include/log.h, include/memcache.h, include/mkhome.h, include/mod_ctrls.h, include/modules.h, include/netacl.h, include/netaddr.h, include/netio.h, include/options.h, include/parser.h, include/pidfile.h, include/pool.h, include/pr-syslog.h, include/privs.h, include/proctitle.h, include/proftpd.h, include/regexp.h, include/response.h, include/scoreboard.h, include/session.h, include/sets.h, include/stash.h, include/str.h, include/support.h, include/table.h, include/throttle.h, include/timers.h, include/trace.h, include/var.h, include/xferlog.h, utils/utils.h: Updating the FSF address, per Bug#3650. 2011-05-23 castaglia <castaglia> * COPYING: Updating FSF address, per Bug#3650. 2011-05-20 castaglia <castaglia> * contrib/mod_tls.c: Don't allow client certs if they point to an OCSP responder whose response says that the OCSP responder doesn't know about the client cert. 2011-05-20 castaglia <castaglia> * contrib/mod_tls.c: Clarify the certificate revocation callback code a little, and add some comments on edge cases to handle better. 2011-05-20 castaglia <castaglia> * contrib/mod_tls.c: Fixed cases of strncmp(3) to use strncmp(3), and strcasecmp(3) to be strncasecmp(3), as the 'n' variants are more efficient (saves on a strlen(3) call internally). Reworked the OCSP verification code so that it works properly. 2011-05-20 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression tests for the TLSVerifyOrder directive, for both 'crl' and 'ocsp' (separately). Updates NOTES to mention how to generate certs with OCSP attributes, running OpenSSL's ocsp(1) as responder (and client), issues found, etc. 2011-05-20 castaglia <castaglia> * tests/t/etc/modules/mod_tls/ocsp-ca.pem, tests/t/etc/modules/mod_tls/ocsp-client.pem, tests/t/etc/modules/mod_tls/ocsp-https-ca.pem, tests/t/etc/modules/mod_tls/ocsp-https-client.pem, tests/t/etc/modules/mod_tls/ocsp-https-server.pem, tests/t/etc/modules/mod_tls/ocsp-server.pem: Adding certs/files for OCSP verification tests. 2011-05-19 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3658 - TLSVerifyOrder directive is broken. 2011-05-19 castaglia <castaglia> * doc/howto/Testing.html: Mention the brittleness of the 127.0.0.1/localhost-related tests in the Testing howto, and mention how they are "expected failures". 2011-05-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update the mod_tls CRL regression test to use the newly-generated/updated CRL test files. 2011-05-18 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES: Updated mod_tls notes with how to generate CRL regression test certs (I really mean it this time!). 2011-05-18 castaglia <castaglia> * tests/t/etc/modules/mod_tls/crl-ca-revoked.pem, tests/t/etc/modules/mod_tls/crl-ca.pem, tests/t/etc/modules/mod_tls/crl-client-cert.pem, tests/t/etc/modules/mod_tls/crl-server-cert.pem: Added new CA, server/client certs, and CRL PEM files for the CRL revocation regression test. Updated the NOTES file with instructions on how to generate the above files. 2011-05-18 castaglia <castaglia> * tests/t/etc/modules/mod_quotatab_file/NOTES: Remove the broken file tables for the group quota test. Add notes for how the file tables were generated, for future reference. 2011-05-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Update the group quota regression test to use the fixed table files. 2011-05-18 castaglia <castaglia> * : Fixing the group quota file-based tables for the mod_quotatab_file regression test. 2011-05-18 castaglia <castaglia> * : Adding the limit/tally file tables for the ALL regression test. 2011-05-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Adding regression test involving file-based quota tables and an ALL quota (from the forums). 2011-05-18 castaglia <castaglia> * configure: Updated configure. 2011-05-18 castaglia <castaglia> * configure.in: Fix --disable-strip logic. 2011-05-18 castaglia <castaglia> * doc/contrib/mod_wrap2.html: Fix typos in the mod_wrap2 docs. 2011-05-18 castaglia <castaglia> * contrib/mod_sftp/packet.c: Refactor the ssh2_sftp_packet_read() function, moving some of the special-case handling of SSH messages like DEBUG, IGNORE, UNIMPLEMENTED et al into the ssh2_sftp_packet_handle() function, where all of the other SSH message types are handled. Now all of the message types are handled in the same function, in the same way. 2011-05-17 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3656 - Prefer "File too big" error message for MaxStoreFilesize. 2011-05-16 castaglia <castaglia> * modules/mod_xfer.c: Another typo. 2011-05-16 castaglia <castaglia> * modules/mod_xfer.c: Typo. 2011-05-15 castaglia <castaglia> * contrib/mod_sftp/packet.c: Leaving notes for myself about the use of TCP_CORK/TCP_NOPUSH when sending SSH messages. 2011-05-15 castaglia <castaglia> * include/inet.h, modules/mod_xfer.c, src/inet.c: Refactor pr_inet_set_proto_opts(), breaking out the TCP_CORK/TCP_NOPUSH functionality into a new pr_inet_set_proto_cork() function. This was done to test using TCP_CORK/TCP_NOPUSH in mod_sftp. 2011-05-15 castaglia <castaglia> * contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h, contrib/mod_sftp/tap.c: Refactor mod_sftp's packet functions a little, removing the circular calling between sftp_ssh2_packet_write() and sftp_tap_send_packet(). This allows us to remove the ugly hack in the TAP code. Also included the number of bytes written out by writev(2), so that we can get a better idea of the sizes of the messages being written to the network. This helps when looking at things like MSS, delayed ACKs, Nagle, etc. 2011-05-13 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Provide better error message for SFTPClientMatch values configured to be zero. 2011-05-13 castaglia <castaglia> * NEWS, src/main.c: Bug#3653 - Segfault with "DefaultServer off" and no matching server for incoming IP address. 2011-05-13 castaglia <castaglia> * configure: Updated configure. 2011-05-13 castaglia <castaglia> * configure.in: Renaming --enable-symbols configure option, added for Bug#3651, to be --disable-strip (which is what OpenSSH uses). 2011-05-13 castaglia <castaglia> * doc/contrib/mod_sftp.html: Typo. 2011-05-13 castaglia <castaglia> * contrib/mod_sftp/keys.c: Fix typo in comment. 2011-05-11 castaglia <castaglia> * doc/howto/TLS.html: Added TLS FAQ/example config for requring FTPS for remote clients but allowing just FTP for local clients. 2011-05-11 castaglia <castaglia> * contrib/mod_wrap.c: Additional fixes for Bug#3652. 2011-05-11 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add proper dispatching through PRE_CMD phase handlers for the FSETSTAT SFTP request, including the path of the file being changed (not the filehandle). 2011-05-09 castaglia <castaglia> * NEWS, contrib/mod_wrap.c: Bug#3652 - TCPAccessSyslogLevel directive broken by Bug#3317. 2011-05-08 castaglia <castaglia> * configure: Updated configure. 2011-05-08 castaglia <castaglia> * configure.in: Adding --enable-symbols configure option, to generate proftpd code which is not stripped of code symbols at install time (Bug#3651). 2011-05-08 castaglia <castaglia> * contrib/mod_load/Makefile.in, contrib/mod_sftp/Makefile.in, contrib/mod_wrap2/Makefile.in: Minor cleanups of paths, removing some double-slash occurrences (pointed out in Bug#3651). 2011-05-05 castaglia <castaglia> * modules/mod_facts.c: Update mod_facts to use the new defines for the MFF and MFMT commands. 2011-05-05 castaglia <castaglia> * include/cmd.h, include/ftp.h, src/cmd.c: Include defines ands IDs for the MFF and MFMT commands. Add define (not ID yet) for the HOST command. 2011-05-05 castaglia <castaglia> * modules/mod_ls.c: Remove now-unused variable declaration. 2011-05-04 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix issues with mod_sftp's handling of the RMDIR and REMOVE requests with regard to PRE_CMD handlers. 2011-05-03 castaglia <castaglia> * modules/mod_core.c: If the system defines the SOMAXCONN limit, then make sure that a configured TCPBacklog value does not exceed that limit. 2011-05-02 castaglia <castaglia> * contrib/mod_quotatab_sql.c, contrib/mod_sql_passwd.c: More idiomatic check for DECLINED/null results. 2011-05-01 jwm <jwm> * Makefile.in: - execute the clean target in tests/, too - remove some Makefiles on distclean that were sneaking their way into release tarballs 2011-05-01 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_deflate.c, contrib/mod_quotatab_sql.c, contrib/mod_rewrite.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/cipher.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/rfc4716.c, contrib/mod_sftp/scp.c, contrib/mod_sftp/utf8.c, contrib/mod_sql.c, contrib/mod_sql_passwd.c, contrib/mod_tls.c, lib/pr-syslog.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_facts.c, modules/mod_ls.c, modules/mod_xfer.c, src/auth.c, src/ctrls.c, src/encode.c, src/help.c, src/inet.c, src/main.c, src/netaddr.c, src/scoreboard.c, src/stash.c, src/table.c, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c: Fix up various small issues found by Apple's clang static source code analysis tool. 2011-04-30 castaglia <castaglia> * lib/tpl.c: Fixing nits in libtpl found by Apple's clang static source code analysis tool. 2011-04-30 castaglia <castaglia> * modules/mod_delay.c: Fix nit found by Apple's clang static source code analysis tool. 2011-04-30 castaglia <castaglia> * src/pool.c: Adding comment describing why the logic in null_alloc() is as intended, for future reference. 2011-04-30 castaglia <castaglia> * modules/mod_facts.c: Fix up minor nits pointed out by Apple'c clang static code analysis tool. 2011-04-29 castaglia <castaglia> * modules/mod_auth.c: Paranoidly guard against possible NULL pointer dereference (found by Klocwork static source code analysis). 2011-04-29 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3649 - MaxStoreFileSize can be bypassed using REST/APPE. 2011-04-29 castaglia <castaglia> * modules/mod_log.c: Code/style clarity. 2011-04-29 castaglia <castaglia> * modules/mod_facts.c: Typo. 2011-04-29 castaglia <castaglia> * src/fsio.c: Fix issue highlighted by Klocwork's static source code analysis. 2011-04-29 castaglia <castaglia> * modules/mod_ls.c: Fix issue highlighted by Klocwork's static source code analysis. 2011-04-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Adding regression test for Bug#3649. 2011-04-26 castaglia <castaglia> * doc/modules/mod_xfer.html: Filling in the descriptions for MaxRetrieveFileSize and MaxStoreFileSize in the mod_xfer HTML docs. 2011-04-22 castaglia <castaglia> * doc/howto/TLS.html: Adding a TLS FAQ about long-lived FTPS sessions, the NoSessionReuseRequired TLSOption, and SSL session caching timeouts (cf. Bug#3580). 2011-04-22 castaglia <castaglia> * doc/contrib/mod_tls.html, doc/howto/TLS.html: A few minor improvements to the mod_tls docs. 2011-04-22 castaglia <castaglia> * include/log.h, modules/mod_log.c, src/ftpdctl.c, src/log.c, src/main.c, src/trace.c, src/xferlog.c: Add a new API for generating events whenever messages are logged. These events cover TransferLog, SystemLog, syslog, TraceLog, and per-module logging. Listeners for these events can be registered by modules which want to send the log messages remotely, process/digest/aggregrate them, etc. (And yes, I do already have a mod_log_forensic module which uses these events, which I may decide is worth bundling with proftpd.) 2011-04-21 castaglia <castaglia> * NEWS, src/main.c: Bug#3644 - Disable signal handling for exiting session processes. 2011-04-21 castaglia <castaglia> * doc/howto/Tracing.html: Fix broken URL. 2011-04-20 castaglia <castaglia> * contrib/mod_exec.c, doc/contrib/mod_exec.html: Disable the sendStdout ExecOption completely for SSH2 sessions, if possible. Update the docs for sendStdout to mention that this option, for SSH2 sessions, is a bad idea. 2011-04-20 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Move the setting of the session protocol to 'SSH2' to be earlier in the cycle, i.e. during mod_sftp's sess init callback. This should help clear up the "SSH2 session opened" messages (which are currently logged as "FTP session opened" but "SSH2 session closed"). 2011-04-20 castaglia <castaglia> * contrib/mod_exec.c: If we detect that mod_exec's ExecOnConnect scripts are being used in an SSH2 session, disable the sendStdout ExecOption -- it will only cause connection problems for those clients. 2011-04-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/exec.pm, tests/t/modules/mod_sftp/exec.t, tests/tests.pl: Adding unit tests for mod_exec/mod_sftp interoperability. 2011-04-19 castaglia <castaglia> * modules/mod_auth_pam.c: Typo. 2011-04-19 castaglia <castaglia> * doc/contrib/mod_sql_odbc.html: Improved the mod_sql_odbc docs a little. 2011-04-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_odbc.pm, tests/t/modules/mod_sql_odbc.t, tests/tests.pl: Add unit tests for mod_sql_odbc. 2011-04-19 castaglia <castaglia> * contrib/mod_sql_odbc.c: Fix some issues found in mod_sql_odbc while working on some regression tests for it. 2011-04-19 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Unless explicitly set, use a TimeoutLinger value of 1 in the testsuite. 2011-04-15 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3645 - Ensure that SQLNamedConnectInfos with PERSESSION connection policies are opened before chroot. 2011-04-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for mod_sftp's handling of SYMLINK requests when the destination already exists, and when the source does not exist. 2011-04-15 castaglia <castaglia> * contrib/mod_sftp/auth.c: Use a dynamically allocated string for the fake PASS cmd_rec dispatched for SSH2 authentication, rather than a read-only stack string; the latter causes problems when mod_auth goes to scrub that password buffer. 2011-04-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Another conversion from strchr(3) to memchr(3). 2011-04-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Tweaks to the mod_sftp testsuite, making sure that all of the current tests pass. 2011-04-14 castaglia <castaglia> * contrib/mod_sftp/channel.c: Add trace logging of when we invoke a channel's finish handler. 2011-04-14 castaglia <castaglia> * include/cmd.h, src/cmd.c, src/main.c: Another minor performance optimization: use memchr(3) instead of strchr(3) where we can, especially on hot paths, to save on a strlen(3) call inside of the C library. 2011-04-14 castaglia <castaglia> * contrib/mod_sftp/kex.c: Another performance/optimization tweak: use memchr(3) instead of strchr(3), and save on a strlen(3) in the C library. 2011-04-14 castaglia <castaglia> * src/scoreboard.c: Watch for, and log, any short writes when updating a scoreboard entry. 2011-04-14 castaglia <castaglia> * contrib/mod_exec.c: Fixed compiler issue in previous change; need to provide all the proper arguments to a printf() style function. 2011-04-14 castaglia <castaglia> * contrib/mod_exec.c: Adding a little more logging of the value returned from mod_exec's exec_ssystem() function. This helps diagnose whether the value returned came from the command that was executed, and whether a coredump file was created by that command. 2011-04-14 castaglia <castaglia> * contrib/mod_rewrite.c: Slightly better logging of mod_rewrite's file test operators and the path against which they are being evaluated. 2011-04-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Adding another reproduction recipe for Bug#3643 to the testsuite. 2011-04-14 castaglia <castaglia> * doc/modules/mod_core.html: Add docs for the TimeoutLinger directive. 2011-04-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Adding regression test for Bug#3643. 2011-04-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Update the mod_sql/mod_sql_sqlite unit tests so that they run properly if run with root privs. 2011-04-13 castaglia <castaglia> * configure: Updated configure. 2011-04-13 castaglia <castaglia> * configure.in: Be more defensive about the --with-X configure options, and make sure that the provided values (if any) are suitable for use. 2011-04-12 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3642 - Segfault seen in mod_sql_mysql if "SQLAuthenticate groupsetfast" used. 2011-04-12 castaglia <castaglia> * contrib/mod_sql_mysql.c: Typo. 2011-04-12 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Logging of the %{uid} and %{gid} variables (added in Bug#3390) was using session.{uid,gid} rather than the more proper session.login_{uid,gid} members. The difference is between the UID/GID of the authenticated user versus the UID/GID of the User/Group config directives. 2011-04-09 castaglia <castaglia> * NEWS, contrib/mod_copy.c, contrib/mod_quotatab.c: Bug#3641 - SITE CPFR/CPTO does not update quota tally. 2011-04-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab/copy.pm, tests/t/modules/mod_quotatab/copy.t, tests/tests.pl: Added regression tests for mod_copy/mod_quotatab, for Bug#3641. 2011-04-07 castaglia <castaglia> * modules/mod_auth.c: Scrub the memory holding the password received from the client when done processing the PASS command. 2011-04-07 castaglia <castaglia> * include/proftpd.h, src/main.c: Add a new session.curr_cmd_id, which holds the command ID for the current command (found in session.curr_cmd), for faster identification of the command. 2011-04-06 castaglia <castaglia> * doc/howto/Chroot.html: Adding more chroot-related FAQs to the Chroot howto. 2011-04-06 castaglia <castaglia> * tests/t/config/defaultroot.t, tests/t/lib/ProFTPD/Tests/Config/DefaultRoot.pm, tests/tests.pl: Adding regression tests for various DefaultRoot configurations involving symlinks. 2011-04-06 castaglia <castaglia> * doc/modules/mod_dso.html: Typo. 2011-04-06 castaglia <castaglia> * doc/modules/mod_auth.html: Add docs for the UserPassword directive, including examples. 2011-04-06 castaglia <castaglia> * NEWS, src/netio.c: Bug#3639 - Avoid spinning proftpd process if read(2) returns EAGAIN. 2011-04-06 castaglia <castaglia> * RELEASE_NOTES: Forgot to mention the new ProcessTitles directive in the release notes for 1.3.4rc2. 2011-04-06 castaglia <castaglia> * doc/modules/mod_ctrls.html: Fix typos in mod_ctrls docs. 2011-04-05 castaglia <castaglia> * doc/howto/Compiling.html, doc/modules/mod_memcache.html: Mention the minimum libmemcached library version requirement in the mod_memcache docs, and the minimum pcre library versoin requirement in the Compiling howto. 2011-04-05 castaglia <castaglia> * NEWS, include/regexp.h, src/memcache.c: Bug#3637 - Enforce pcre and libmemcached version requirements. 2011-04-04 castaglia <castaglia> * tests/api/stubs.c: Fix API testsuite compilation when --enable-pcre configure option is used. 2011-04-01 castaglia <castaglia> * include/version.h: Setting version back to CVS status, with increased version number for next release. 2011-04-01 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2011-04-01 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Getting ready to release 1.3.4rc2. 2011-04-01 castaglia <castaglia> * locale/proftpd.pot: Updated the template of strings to be translated. 2011-04-01 castaglia <castaglia> * modules/mod_core.c: Fix the NLS support for a FEAT string in mod_core, so that generating the proftpd.pot file doesn't cause complaints about a string containing the '\r' character. 2011-04-01 castaglia <castaglia> * locale/files.txt: Updating list of localisable files. 2011-03-31 castaglia <castaglia> * NEWS, contrib/mod_sftp/keys.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3634 - Incorrect generation of DSA signature for SSH sessions. 2011-03-30 castaglia <castaglia> * doc/howto/ConfigurationTricks.html: Add mention of proftpd's support for simple directory hashing using the %u variable to the ConfigurationTricks howto. 2011-03-30 castaglia <castaglia> * doc/modules/mod_core.html: Adding more references about kernel-level tuning for TCP backlogs and SYN cookies and such to the TCPBacklog directive docs. 2011-03-30 castaglia <castaglia> * doc/modules/mod_core.html: Add docs for the TCPBacklog directive. 2011-03-30 castaglia <castaglia> * src/table.c: Remove an unnecessary (and unused) pointer increment in the Table API's default hashing. Make the table dump messages a little better by including the calculated hash value for each entry in the message. 2011-03-30 castaglia <castaglia> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Config/Trace.pm: The Trace directive can be set on a per-session basis using the "session" parameter. The addition of log level ranges (Bug#3617) was not handled properly for such per-session Trace settings. 2011-03-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm: Add regression tests demonstrating that "demuxing" based on the username variable %u still works as advertised. Still need some negative test cases for this feature, though. 2011-03-29 castaglia <castaglia> * RELEASE_NOTES: Mention a few more addressed issues in the release notes. 2011-03-29 castaglia <castaglia> * RELEASE_NOTES: Finishing up the release notes for 1.3.4rc2. 2011-03-29 castaglia <castaglia> * doc/modules/mod_log.html: Mention the new EXIT ExtendedLog "command class" in the mod_log docs. 2011-03-29 castaglia <castaglia> * doc/modules/mod_core.html: Adding docs for the PathAllowFilter and PathDenyFilter directives. 2011-03-29 castaglia <castaglia> * doc/modules/mod_core.html: Add docs for the TransferLog directive. 2011-03-29 castaglia <castaglia> * doc/modules/mod_log.html: Minor doc tweaks. 2011-03-28 castaglia <castaglia> * doc/howto/Compiling.html: Mention the new --enable-memcache and --enable-pcre configure options in the Compiling howto. 2011-03-28 castaglia <castaglia> * doc/modules/mod_memcache.html: Updating mod_memcache docs a little more. 2011-03-28 castaglia <castaglia> * src/scoreboard.c: If "ScoreboardFile /dev/null" is configured, don't try to delete the /dev/null device. Some platforms will actually let you do this. 2011-03-26 castaglia <castaglia> * include/session.h: Include an end-of-session code for snprintf(3) buffer truncation. I'll soon be adding code which uses this end-of-session code. 2011-03-26 castaglia <castaglia> * NEWS, contrib/mod_exec.c, contrib/mod_ifsession.c, contrib/mod_sql.c, include/dirtree.h, modules/mod_cap.c, modules/mod_core.c: Bug#3610 - Proftpd is eating CPU when reparsing configuration file on SIGHUP. The mod_sql module was marking most of its config_recs with the CF_MERGEDOWN flag -- but it only ever looked up those config_recs from the server->conf list, and never from the per-directory list. This meant that those mod_sql config_recs would be merged down needlessly. In configurations with many <Directory> sections (e.g. into the hundreds), the merging process would take hundreds of seconds, if not longer, during startup/restart. I've removed those unneeded CF_MERGEDOWN flags. And in places where CF_MERGEDOWN_MULTI was used solely to prevent mod_ifsession from removing a config_rec, I've added a new CF_MULTI flag, for such needs (without the merging down semantics). 2011-03-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Remove commented-out config. 2011-03-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Refining the regression test for Bug#3610. 2011-03-26 castaglia <castaglia> * src/main.c: Add trace logging of the entire time it takes to handle a SIGHUP/restart. 2011-03-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: The regression test for Bug#3610 requires a proftpd with the mod_sql module. 2011-03-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Adding reproduction recipe/regression test for Bug#3610. 2011-03-25 castaglia <castaglia> * src/dirtree.c: Provide more legible trace logging of the config_type value for a config_rec. 2011-03-25 castaglia <castaglia> * src/trace.c: Fix compiler warning. 2011-03-25 castaglia <castaglia> * doc/contrib/mod_sftp.html, doc/howto/TLS.html: Adding FAQs about the OpenSSL header/library version mismatch warning to both the mod_tls and the mod_sftp docs. 2011-03-25 castaglia <castaglia> * NEWS, contrib/mod_sql.c, src/main.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3633 - Using SQLOption noDisconnectOnError can cause ExtendedLog logging to silently fail. 2011-03-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Regression test to make sure that mod_sftp fails an RMDIR SFTP request if the directory in question is not empty. 2011-03-24 castaglia <castaglia> * doc/modules/mod_core.html: Adding docs for the new TraceOptions directive. 2011-03-24 castaglia <castaglia> * tests/t/config/traceoptions.t, tests/t/lib/ProFTPD/Tests/Config/TraceOptions.pm, tests/tests.pl: Adding regression tests for the TraceOptions directive (Bug#3631). 2011-03-24 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/trace.h, modules/mod_core.c, src/trace.c: Bug#3631 - Support TraceOptions directive, for altering TraceLog format slightly. 2011-03-24 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3632 - mod_sql should log "unrecoverable database error" at a higher priority. 2011-03-24 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Try to make sure that we only send SSH2 DISCONNECT messages, as when mod_ban rejects a client, only to SSH2 clients and not to any other (e.g. FTP) clients. 2011-03-24 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Now mod_sftp has separate event listeners for the 'core.exit' event (for session processes) and the 'core.shutdown' event (for daemon shutdown), rather than overloading the same event listener for both use cases. 2011-03-24 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3630 - SSH DISCONNECT messages sent by mod_sftp even for FTP connections in some cases. 2011-03-24 castaglia <castaglia> * contrib/mod_rewrite.c: Update mod_rewrite to use pr_cmd_strcmp() where appropriate. 2011-03-23 castaglia <castaglia> * doc/modules/mod_log.html: Document how the ExtendedLog directive can be used to log the data to syslog rather than to a file. 2011-03-23 castaglia <castaglia> * src/inet.c: Merging more fixes from the FreeBSD ports tree, which were neglected to be reported upstream. Sigh. 2011-03-23 castaglia <castaglia> * NEWS, src/throttle.c: Bug#3628 - Unnecessarily verbose "warning: unable to throttle bandwidth: Interrupted system call". 2011-03-22 castaglia <castaglia> * configure: Updated configure. 2011-03-22 castaglia <castaglia> * configure.in: Use the AC_TRY_LINK, and explicitly provide the test code to compile, for detecting the backtrace(3) and backtrace_symbols(3) functions, on platforms where the compiler/library combinations are too stupid to be able to do it themselves (e.g. Solaris 10 and gcc). 2011-03-22 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3627 - %w variable populated with non-absolute path in SQLLog statement. 2011-03-22 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_shaper.c, contrib/mod_tls_shmcache.c, modules/mod_ctrls.c, modules/mod_delay.c: Updating more modules to use the 'core.shutdown' event for their shutdown listeners. 2011-03-22 castaglia <castaglia> * contrib/mod_tls.c: Update mod_tls so that it uses the new 'core.shutdown' event for its daemon shutdown handling, rather than the old overloaded 'core.exit' event. 2011-03-22 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression test for the TLSPassPhraseProvider directive. And updating the notes on how to generate the passphrase-protected server cert used in the test. 2011-03-22 castaglia <castaglia> * tests/t/etc/modules/mod_tls/server-cert-passwd.pem, tests/t/etc/modules/mod_tls/tls-get-passphrase.pl: Adding a test passphrase-protected server cert, and a passphrase-provider script, for testing the mod_tls TLSPassPhraseProvider directive. 2011-03-22 castaglia <castaglia> * contrib/mod_tls.c: Start using trace logging for some of the mod_tls actions, especially those during server startup. 2011-03-22 castaglia <castaglia> * contrib/mod_tls.c: Additional fix for Bug#3624. 2011-03-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Adding another regression test for CreateHome, making sure it parses all of the multiple options at the same time. 2011-03-22 castaglia <castaglia> * contrib/mod_ifsession.c: Changing a few cases of strcmp(3) on fixed-length strings to use strncmp(3). Adding debug logging of the regular expressions that mod_ifsession might be evaluating. 2011-03-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Regression test for Bug#3625. 2011-03-21 castaglia <castaglia> * configure: Updated configure. 2011-03-21 castaglia <castaglia> * configure.in: Check for headers that platforms often want for their backtrace(2) functions, before checking for the backtrace(2) function itself. 2011-03-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression test for the %f LogFormat variable and the SFTP REMOVE request. 2011-03-21 castaglia <castaglia> * NEWS, src/scoreboard.c: Bug#3623 - Truncated client name saved in ScoreboardFile. 2011-03-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add test showing how <IfUser> can be used with SQLLog EXIT to only log EXIT statements for authenticated clients. 2011-03-21 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#3625 - mod_ifsession rules using regular expressions do not work. 2011-03-21 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3624 - Plaintext command injection in FTPS support. 2011-03-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Adding regression tests for Bug#3622. 2011-03-21 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#3622 - mod_delay sometimes logs "unable to load DelayTable into memory". 2011-03-21 castaglia <castaglia> * src/session.c: Don't try to stash session disconnect notes in the session.notes table if that table does not exit. 2011-03-21 castaglia <castaglia> * src/main.c: If the session exits because of a signal, use pr_session_disconnect() to set this end-of-session code. 2011-03-21 castaglia <castaglia> * modules/mod_delay.c: If we fail to load the DelayTable into memory via mmap(2) AND we locked the DelayTable before this, be sure to release that lock. 2011-03-21 castaglia <castaglia> * utils/scoreboard.c: Adding explicit off_t typecasts in the utility code for reading the scoreboard. 2011-03-21 castaglia <castaglia> * src/scoreboard.c: Add explicit typecasts to off_t for some of the lseek(2) calls in the scoreboard code, to ensure that compilers on 64-bit machines Do The Right Thing(tm). 2011-03-21 castaglia <castaglia> * modules/mod_delay.c: Don't penalize clients by taking the row-locking time into account as part of the USER/PASS command times; lock the DelayTable row after getting the duration for those commands, not before. 2011-03-21 castaglia <castaglia> * contrib/mod_quotatab_file.c: Some compilers don't use the correct argument size (e.g. on 64-bit platforms); add an explicit typecast to off_t where needed. 2011-03-21 castaglia <castaglia> * contrib/mod_quotatab.c: Reset errno after delaying after a failed lock poll. 2011-03-21 castaglia <castaglia> * src/scoreboard.c: Add more trace logging of the scoreboard scrubbing process. Fix the releasing of the lock on the ScoreboardMutex fd after scrubbing such that it uses SETLKW, rather than SETLK. Reset errno after the delay due to being unable to obtain a lock on the ScoreboardMutex. 2011-03-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm, tests/t/modules/mod_delay.t, tests/tests.pl: Start collecting regression tests for the mod_delay module. 2011-03-20 castaglia <castaglia> * modules/mod_delay.c: Make all uses of pr_trace_msg() in mod_delay use the trace_channel variable; saves a few bytes of space. 2011-03-20 castaglia <castaglia> * modules/mod_delay.c: Include the DelayTable fd in the error messages, and fix a case where the wrong errno value was being used. 2011-03-20 castaglia <castaglia> * modules/mod_delay.c: Re-register any 'delay' ftpdctl actions upon restart. 2011-03-20 castaglia <castaglia> * doc/contrib/mod_sql.html: Adding documentation for the new SQLNamedConnectInfo directive. 2011-03-20 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3621 - mod_quotatab increments tallies for aborted uploads if DeleteAbortedStores is on. 2011-03-20 castaglia <castaglia> * src/auth.c: Generate a new event, 'core.chroot', just before a chroot(2) occurs. Many modules want to know when a chroot is about to occur. 2011-03-20 castaglia <castaglia> * src/cmd.c: Make the Command API a little more bullet-proof by trying catch some invalid arguments of various sorts. 2011-03-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm: Add another unit tests for the DeleteAbortedStores directive, this time explicitly sending the ABOR command (without the OOB bit on the TCP connection). 2011-03-20 castaglia <castaglia> * tests/Makefile.in, tests/api/cmd.c, tests/api/stubs.c, tests/api/tests.c, tests/api/tests.h: Adding API tests for the Command API, including the newly added pr_cmd_get_id(), pr_cmd_cmp(), and pr_cmd_strcmp() functions. 2011-03-19 castaglia <castaglia> * NEWS, modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Bug#3574 - Better handling of ALLO command. 2011-03-19 castaglia <castaglia> * modules/mod_auth_unix.c: Slightly less expensive gathering of groups by using strncmp() using the length of the user name calculated only once, rather than once per group member. 2011-03-19 castaglia <castaglia> * src/cmd.c: More defensive programming: if the cmd ID of a given cmd_rec is unknown, try to look it up. If it is known to be unknown, just return. 2011-03-19 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Update mod_sftp to use pr_cmd_cmp() where possible. And fix a segfault when handling RMDIR (appeared on my Mac OSX box due to different libc implementation). 2011-03-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the mod_sftp testsuite so that it issues proper CHANNEL_CLOSE messages for the closing of the SFTP channel. 2011-03-19 castaglia <castaglia> * contrib/mod_rewrite.c: Update the proftpd version required by mod_rewrite. 2011-03-19 castaglia <castaglia> * contrib/mod_exec.c: Updating mod_exec to use the new pr_cmd_cmp() API. 2011-03-19 castaglia <castaglia> * src/dirtree.c: When dir_check()/dir_check_full() are called, make sure the given cmd_rec has a cmd_id. Some modules (e.g. mod_sftp) may pass in a cmd_rec which hasn't yet had it's cmd_id looked up. 2011-03-19 castaglia <castaglia> * src/data.c: Use pr_cmd_cmp() when handling any commands read from the control channel during a data transfer as well. 2011-03-19 castaglia <castaglia> * contrib/mod_rewrite.c: Update mod_rewrite to use pr_cmd_cmp() where possible. 2011-03-19 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#3262 - Allow SQL logging to separate database/server. 2011-03-19 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_tls.c, include/cmd.h, include/dirtree.h, modules/mod_auth.c, modules/mod_log.c, src/cmd.c, src/dirtree.c, src/main.c: Added new Command API functions: pr_cmd_get_id() pr_cmd_cmp() These functions are used to assign an ID to a cmd_rec, identifying the FTP command of that cmd_rec. Code which wants to check which FTP command a cmd_rec is can then use pr_cmd_cmp() and compare using a numeric ID, rather than calling strcmp(3) repeatedly on the same cmd_rec throughout the code. This is done with an eye toward reducing wasteful/unnecessary strcmp(3) calls throughout the proftpd code base. 2011-03-19 castaglia <castaglia> * src/table.c: Minor improvement: compare the first key character before calling strncmp(3). 2011-03-19 castaglia <castaglia> * src/log.c, src/trace.c: Trying to reduce the number of times that we call strlen(3) while logging. 2011-03-19 castaglia <castaglia> * src/event.c: Fix issue with Bug#3619 fix (hooray for unit/regression tests, which caught this issue). 2011-03-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix broken ExtendedLog test due to typo. 2011-03-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix a few minor issues in the mod_sftp testsuite. 2011-03-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding more regression tests for various LogFormat variables in various flows. 2011-03-19 castaglia <castaglia> * contrib/mod_sftp/channel.h: Quell the following compiler warning (seen on Mac OSX, gcc-4.0.1): warning: this decimal constant is unsigned only in ISO C90 when compilign mod_sftp by explicitly marking constants stored in a uint32_t with a "UL" suffix. 2011-03-18 castaglia <castaglia> * modules/mod_ctrls.c, src/ctrls.c: Make the Controls logging messages less pernicious, removing some and moving others from NOTICE to just plain DEBUG. 2011-03-18 castaglia <castaglia> * src/table.c: Avoid an unnecessary strncmp(3) if the key lengths aren't the same. 2011-03-18 castaglia <castaglia> * src/stash.c: Fix the mess of symbol lookups which I committed last night. Much more legible now -- and it works properly, too. 2011-03-17 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/compress.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, contrib/mod_sftp/service.c, contrib/mod_sftp/tap.c: Using strncmp(3) instead of strcmp(3) when fixed-length strings are used. 2011-03-17 castaglia <castaglia> * modules/mod_auth.c: Wrong length argument for strncmp() here. 2011-03-17 castaglia <castaglia> * contrib/mod_sftp/auth.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/tap.c, contrib/mod_sftp/utf8.c: Converting strcasecmp(3) on fixed-length strings to strncasecmp(3) in mod_sftp. 2011-03-17 castaglia <castaglia> * src/dirtree.c, src/encode.c, src/log.c, src/netacl.c, src/netaddr.c, src/str.c: Converting from strcasecmp(3) to strncasecmp(3) where fixed-length strings are being used. 2011-03-17 castaglia <castaglia> * modules/mod_auth.c: More strcmp(3) -> strncmp(3) conversions where fixed-length strings are used. 2011-03-17 castaglia <castaglia> * modules/mod_xfer.c: More strcmp(3) -> strncmp(3) conversions where fixed-length strings are used. 2011-03-17 castaglia <castaglia> * modules/mod_core.c: More strcmp() -> strncmp() conversions where fixed-length strings are used. 2011-03-17 castaglia <castaglia> * modules/mod_facts.c, modules/mod_lang.c: Finding more instances of strcmp(3) on fixed-length strings and changing them to use strncmp(3). 2011-03-17 castaglia <castaglia> * modules/mod_ctrls.c: Starting work on converting modules which use strcmp(3) on fixed-length strings to using strncmp(3) instead. 2011-03-17 castaglia <castaglia> * src/ctrls.c: Missed some spots in ctrls.c where strcmp(3) was being called on fixed-length strings. 2011-03-17 castaglia <castaglia> * src/ctrls.c, src/main.c: Changing more instances of strcmp(3) on fixed strings to use strncmp(3) instead. 2011-03-17 castaglia <castaglia> * src/dirtree.c, src/parser.c: Continuing on my quest to reduce the number of strcmp(3) usages in the code where possible, especially on fixed strings. Using strncmp(3) makes more sense there; saves on an unnecessary strlen(3) call. 2011-03-17 castaglia <castaglia> * src/auth.c, src/dirtree.c, src/encode.c: Here's a few more minor places where we can use strncmp(3) instead of strcmp(3). 2011-03-17 castaglia <castaglia> * src/dirtree.c, src/fsio.c, src/mkhome.c, src/throttle.c: Convert a few more places from using strcmp(3) to strncmp(3). 2011-03-17 castaglia <castaglia> * src/filter.c, src/session.c, src/stash.c, src/xferlog.c: When replacing strcmp(3) with strncmp(3), be sure to include the terminating NUL in the length argument for strncmp(3). Otherwise we could get spurious matches, e.g. strncmp("food", "foo", 3) == 0 vs strncmp("food", "foo", 4) == -1. 2011-03-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Updating the TransferLog regression tests to log to `tests.log', like most of the other testcases. 2011-03-17 castaglia <castaglia> * src/filter.c: Convert unnecessary strcmp(3) on fixed strings to strncmp(3). 2011-03-17 castaglia <castaglia> * src/stash.c: Eliminate one more strcmp(3) during symbol lookups. 2011-03-17 castaglia <castaglia> * src/session.c, src/xferlog.c: Convert a few more places from strcmp(3) to strncmp(3), since we are comparing against fixed strings of known lengths. 2011-03-17 castaglia <castaglia> * src/table.c: Fix another place where strncmp(3) should be used rather than strcmp(3); the former function is slightly more efficient, since the C library doesn't need to call strlen(3) on the arguments itself. 2011-03-17 castaglia <castaglia> * src/stash.c: Make sure we handle the case of zero-length symbol names properly, too. Just to be sure. 2011-03-17 castaglia <castaglia> * src/stash.c: Since we've just added checking of the first two characters for the symbol names being compared, there's no need to check them against by passing in the full symbol names to strncasecmp(3). Instead, make sure that we compare only the remaining bytes in the symbol names, and adjust the looked-up symbol name length accordingly. 2011-03-17 castaglia <castaglia> * src/stash.c: Finally implement something I've been meaning to do for years: reduce the number of strcasecmp(3) calls during symbol lookup. First improvement was to use strncasecmp(3) instead of strcasecmp(3), and thus to calculate the length of the symbol name being looked up only once, rather than per-symbol comparison. Second improvement was to first compare the first two characters of the symbol being looked up against the current symbol, and only then call strncasecmp(3) if the first two characters match in a case-insensitive manner. We can avoid a lot of unnecessary string comparisons by just looking at the first two characters. Time will tell just how much of a performance improvement this is. But it affects configuration parsing time, command dispatching time, authentication time, etc etc. And fewer string comparisons definitely saves on CPU, even if only by small amounts (compared to disk or network IO, or encryption). 2011-03-17 castaglia <castaglia> * doc/modules/mod_log.html: Add docs for the new %H LogFormat variable. 2011-03-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3620 Need LogFormat variable for IP address of server handling session. 2011-03-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding regression test for Bug#3262 a bit early, but I didn't want this test code to be lost inadvertently from the development machine. 2011-03-17 castaglia <castaglia> * RELEASE_NOTES: More added docs. 2011-03-17 castaglia <castaglia> * doc/utils/ftpdctl.html: Add HTML version of the ftpdctl man page. 2011-03-17 castaglia <castaglia> * doc/utils/ftpscrub.html, doc/utils/ftptop.html: Adding HTML versions of the man pages for ftpscrub and ftptop. 2011-03-17 castaglia <castaglia> * Makefile.in, utils/ftpasswd.1, utils/ftpquota.1: Adding/installing man pages for the ftpasswd and ftpquota utilities. 2011-03-17 castaglia <castaglia> * utils/ftpmail.1: Typos, formatting fixes. 2011-03-16 castaglia <castaglia> * Makefile.in, utils/ftpmail.1: Adding/installing a man page for ftpmail. I know that Debian requires man pages for all of the install programs/utilities. 2011-03-16 castaglia <castaglia> * doc/utils/ftpmail.html, doc/utils/index.html: Adding ftpmail docs in utils/ area. 2011-03-16 castaglia <castaglia> * contrib/mod_sftp/disconnect.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/tap.c: When disconnecting, explicitly set a short poll timeout of 5 secs, to make sure that we don't wait for the TimeoutIdle timeout (which might be configured quite high for some sites) and thus tying up a process which is going away unnecessarily. 2011-03-16 castaglia <castaglia> * src/session.c: Ignore EEXIST errors when stashing the disconnect details. 2011-03-16 castaglia <castaglia> * contrib/mod_sftp/packet.c: Adding more trace logging of SSH2 packet IO. 2011-03-16 castaglia <castaglia> * contrib/mod_sql.c: Ignore EEXIST errors about stashing values in the session.notes table. 2011-03-16 castaglia <castaglia> * contrib/Makefile.in: Make sure we set the normal ownership/permissions on the installed Perl scripts. 2011-03-16 castaglia <castaglia> * contrib/Makefile.in: Stop trying to strip symbols from Perl scripts. 2011-03-16 castaglia <castaglia> * doc/contrib/mod_sql.html: Mention mod_sql_passwd in the SQLAuthTypes docs. 2011-03-16 castaglia <castaglia> * doc/howto/SQL.html: Update the SQL howto to mention the mod_sql_passwd module. 2011-03-16 castaglia <castaglia> * doc/howto/Tracing.html, doc/modules/mod_core.html: Adding directive docs for the Trace, TraceLog directives to the mod_core docs. Updating the list of default trace channels in the Tracing howto. 2011-03-16 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_ctrls_admin.c, include/trace.h, modules/mod_core.c, src/trace.c, tests/t/lib/ProFTPD/Tests/Config/Trace.pm: Bug#3617 - Enhance the Trace directive to support range of channel log levels. 2011-03-16 jwm <jwm> * configure: rebuild from configure.in 2011-03-16 jwm <jwm> * configure.in: fix support for libraries lines like '/* $Libraries: -lcurl$ */' - previously, this would leave the trailing '*/' in LIBS, which would expand to all directories in $PWD, breaking the build. - neuter some cat(1)s while we're in there. 2011-03-16 castaglia <castaglia> * configure: Updating configure. 2011-03-16 castaglia <castaglia> * NEWS: Fix typo. 2011-03-15 castaglia <castaglia> * NEWS, src/scoreboard.c: Bug#3618 - ScoreboardFile locking should be more resilient. 2011-03-15 castaglia <castaglia> * NEWS, src/event.c: Bug#3619 - Exiting sessions don't seem to die properly. Make sure that an event, generated by an event listener, does not get sent back to that same listener. This should help cut down on event loops. 2011-03-15 castaglia <castaglia> * Makefile.in, NEWS, RELEASE_NOTES, configure.in, contrib/Makefile.in: Bug#3616 - Install contrib utilities as part of 'make install' target. 2011-03-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Log the errors when closedir(3) returns an error. 2011-03-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Be more consistent about dispatching SFTP cmd_recs to the POST command handlers, if any are registered. The failure to do this properly lead to some logging issues. (Next, I need to make sure that mod_sftp properly dispatches to the PRE command handlers as well.) 2011-03-15 castaglia <castaglia> * configure: Updating configure. 2011-03-15 castaglia <castaglia> * config.h.in, configure.in, src/main.c: If OpenSSL support is enabled, check whether OpenSSL has been built with FIPS support, so that it can be displayed in the `proftpd -V' output. This is primarily done so that the testsuite can have FIPS-specific tests. 2011-03-14 castaglia <castaglia> * doc/modules/mod_log.html: Updated LogFormat description for %w variable. 2011-03-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the logging of ExtendedLog variables for the RNFR/RNTO commands created internally for an SFTP rename command. 2011-03-12 castaglia <castaglia> * contrib/mod_sql.c: Updating mod_sql to use the new pr_session_disconnect() function. 2011-03-12 castaglia <castaglia> * contrib/mod_rewrite.c: As part of investigating Bug#3611, I cleaned up some of the mod_rewrite code around FIFOs. 2011-03-12 castaglia <castaglia> * tests/t/etc/modules/mod_rewrite/reverse.pl, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding reproduction test case for Bug#3611. No bugfix/patch for it yet. 2011-03-10 castaglia <castaglia> * doc/modules/mod_auth_pam.html: Add FAQ/example to mod_auth_pam docs about using AuthOrder to make mod_auth_pam be authoritative. 2011-03-09 castaglia <castaglia> * doc/contrib/mod_sql.html: Warn users who supply custom user/group queries that they also need to supply custom queries for ID-based lookups. 2011-03-09 castaglia <castaglia> * NEWS, src/str.c: Bug#3614 - Malicious module can use sreplace() function to overflow buffer. 2011-03-09 castaglia <castaglia> * tests/api/str.c: Add regression test for sreplace() issue from Bug#3614. 2011-03-09 castaglia <castaglia> * tests/api/regexp.c: Update the Regexp unit tests. 2011-03-07 castaglia <castaglia> * configure: Updated configure. 2011-03-07 castaglia <castaglia> * config.h.in, configure.in: As part of investigating Bug#3614, I thought that having build-time checks for the sizes of char * and void * might be useful additions. 2011-03-06 castaglia <castaglia> * src/regexp.c: Quell compiler warnings about unused functions when PCRE support is not enabled. 2011-03-05 castaglia <castaglia> * src/regexp.c: Typo. 2011-03-05 castaglia <castaglia> * contrib/mod_ratio.c: Clean up the coding style of mod_ratio.c to make it easier for me to read. No functional change. 2011-03-04 castaglia <castaglia> * RELEASE_NOTES: Updating the list of new docs. 2011-03-03 castaglia <castaglia> * doc/utils/ftpasswd.html, doc/utils/ftpquota.html, doc/utils/index.html: Updating links. 2011-03-03 castaglia <castaglia> * doc/utils/ftpasswd.html, doc/utils/ftpcount.html, doc/utils/ftpquota.html, doc/utils/ftpshut.html, doc/utils/ftpwho.html, doc/utils/index.html: Checking in some of the existing HTML docs for utilities. 2011-03-03 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_ifsession.c, contrib/mod_ifversion.c, contrib/mod_quotatab.c, contrib/mod_rewrite.c, contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_site_misc.c, include/conf.h, include/fsio.h, include/regexp.h, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_core.c, modules/mod_facts.c, modules/mod_site.c, src/dirtree.c, src/filter.c, src/fsio.c, src/regexp.c: Bug#3609 - Support full PCRE regular expressions if PCRE support is enabled. 2011-03-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm: Adding unit test proving Bug#3609 functionality (and to record somewhere the example of a case-insensitive PCRE regular expression). 2011-03-03 castaglia <castaglia> * NEWS, src/data.c, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Bug#3612 - APPE/STOU upload flags erroneously preserved across upload commands. 2011-03-02 castaglia <castaglia> * doc/utils/index.html: Start working on an index for docs for the various utilities; these docs also need to be written. 2011-03-01 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support writing <Global> sections in testcase config files. 2011-03-01 castaglia <castaglia> * doc/modules/mod_facts.html: Add FAQ about ListOptions and the MLSD/MLST commands. 2011-03-01 castaglia <castaglia> * src/main.c: Minor reordering of which subsystems are intialized when; logging should be initialized fairly early on, so that other subsystems can log about initialization errors. 2011-03-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Fix the naming and status of the regression test for Bug#3595. 2011-02-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding regression test for Bug#3595. 2011-02-28 castaglia <castaglia> * NEWS, modules/mod_cap.c, tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm: Bug#3576 - Support setting CapabilitiesSet on per-user basis via mod_ifsession's <IfUser> and <IfGroup>. 2011-02-28 castaglia <castaglia> * configure: Updating the configure script. 2011-02-28 castaglia <castaglia> * configure.in: More tweaking of the configure script so that the proper module load order is imposed between mod_cap and mod_ifsession, in order to support Bug#3576. 2011-02-28 castaglia <castaglia> * contrib/mod_ifsession.c, contrib/mod_load/mod_load.c.in, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_shaper.c, contrib/mod_unique_id.c, contrib/mod_wrap2/mod_wrap2.h.in: Updating the contrib modules so that they require proftpd 1.3.4rc2 (which provides the new pr_session_disconnect() API) at compile-time. 2011-02-28 castaglia <castaglia> * contrib/mod_sftp/disconnect.c, contrib/mod_sftp/interop.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c, contrib/mod_tls.c: Updating more contrib modules to use pr_session_disconnect(). 2011-02-28 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_ifsession.c, contrib/mod_load/mod_load.c.in, contrib/mod_shaper.c, contrib/mod_unique_id.c, contrib/mod_wrap2/mod_wrap2.c: Updating some of the contrib modules to use pr_session_disconnect(). 2011-02-28 castaglia <castaglia> * modules/mod_cap.c, modules/mod_lang.c: Updating more core modules to use pr_session_disconnect(). 2011-02-28 castaglia <castaglia> * src/inet.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Spreading the use of pr_session_disconnect() wider. Added regression test for the expansion of %E for SQLNamedQuery configurations. 2011-02-28 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_log.html: Mention the new %E LogFormat variable in the release notes and in the mod_log docs. 2011-02-28 castaglia <castaglia> * contrib/mod_sql.c, include/session.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_xfer.c, src/data.c, src/main.c, src/session.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Start using the new pr_session_disconnect() function, and add support for a new %E LogFormat variable, which contains the end-of-session (EOS) reason string. 2011-02-28 castaglia <castaglia> * include/proftpd.h, include/session.h, modules/mod_core.c, src/main.c, src/session.c: Add a new Session API function which can be used by callers to provide more information about why a client is being disconnected (e.g. QUIT, EOF, banned, etc). This information is useful for modules which want to track all kinds of session data, to see patterns of traffic. 2011-02-27 castaglia <castaglia> * contrib/mod_shaper.c, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_odbc.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c, contrib/mod_tls.c, contrib/mod_unique_id.c, contrib/mod_wrap2/mod_wrap2.c: Updating the rest of the contrib modules to use the pr_session_end() function. 2011-02-27 castaglia <castaglia> * contrib/mod_load/mod_load.c.in: Update mod_load to use the pr_session_end() function. 2011-02-27 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_ifsession.c, contrib/mod_sftp/disconnect.c, contrib/mod_sftp/interop.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c: Updating some of the contrib modules to use the pr_session_end() function. 2011-02-27 castaglia <castaglia> * modules/mod_auth.c, modules/mod_cap.c, modules/mod_core.c, modules/mod_lang.c: Updating the core modules to use the pr_session_end() function. 2011-02-27 castaglia <castaglia> * RELEASE_NOTES, include/compat.h, include/proftpd.h, include/session.h, src/data.c, src/inet.c, src/main.c, src/session.c: Move end_login() and company into the Session API as pr_session_end(). 2011-02-27 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3608 - Make mod_quotatab poll for the QuotaLock file. 2011-02-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add regression test for SQLShowInfo for LIST commands, as some sites are wont to use. 2011-02-27 castaglia <castaglia> * include/options.h: Mention the possible use of the PR_TUNABLE_RCVBUFSZ and PR_TUNABLE_SNDBUFSZ macros in the comments. 2011-02-27 castaglia <castaglia> * src/dirtree.c: Minor additional fix to make sure that using the PR_TUNABLE_RCVBUFSZ macro works properly. 2011-02-27 castaglia <castaglia> * doc/contrib/mod_wrap2.html: Make sure to mention/document the IPv6 netmask rule syntax in the mod_wrap2 docs. 2011-02-27 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Bug#3606 - mod_wrap2 needs to support netmask rules for IPv6 addresses. 2011-02-26 castaglia <castaglia> * src/response.c: Removed unused variable. 2011-02-26 castaglia <castaglia> * tests/t/config/socketoptions.t, tests/t/lib/ProFTPD/Tests/Config/SocketOptions.pm, tests/tests.pl: Adding regression tests for the SocketOptions directive, per Bug#3607. 2011-02-26 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c, include/dirtree.h, modules/mod_facts.c, modules/mod_ls.c, modules/mod_xfer.c, src/data.c, src/dirtree.c, src/inet.c, src/main.c, src/netio.c: Bug#3607 - SocketOptions receive/send buffer size parameters no longer work. 2011-02-25 castaglia <castaglia> * configure: Updated configure script. 2011-02-25 castaglia <castaglia> * NEWS, RELEASE_NOTES, config.h.in, configure.in, contrib/mod_ifsession.c, contrib/mod_ifversion.c, contrib/mod_quotatab.c, contrib/mod_rewrite.c, contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_site_misc.c, include/fsio.h, include/regexp.h, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_core.c, modules/mod_facts.c, modules/mod_site.c, modules/mod_xfer.c, src/dirtree.c, src/filter.c, src/fsio.c, src/main.c, src/regexp.c, tests/api/regexp.c: Bug#3595 - Avoid buggy glibc regcomp(3) for regular expressions. 2011-02-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Add regression test showing that mod_wrap2 handles IPv4-mapped IPv6 addresses, using an IPv4 netmask syntax, properly. 2011-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Add regression test demonstrating netmask syntax for mod_wrap2. 2011-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: More tweaking of the response_msg() function. If a caller doesn't specify an index, don't punish them unnecessarily, and try to Do The Right Thing(tm) if we can. 2011-02-23 castaglia <castaglia> * doc/contrib/index.html, doc/contrib/mod_readme.html: Adding HTML doc for the mod_readme module. 2011-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm: Regression test for matching multiple DisplayReadme files. 2011-02-23 castaglia <castaglia> * NEWS, contrib/mod_readme.c, tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm: Bug#3605 - DisplayReadme output should appear after DisplayLogin for the PASS command. 2011-02-23 castaglia <castaglia> * src/response.c: [no log message] 2011-02-23 castaglia <castaglia> * contrib/mod_readme.c: More cleaning up of the coding style in mod_readme; no functional change, other than not communicating glob(3) errors to clients in response messages. 2011-02-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm: Added regression test for mod_readme's handling of CWD commands. 2011-02-23 castaglia <castaglia> * NEWS, modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm, tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm, tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Bug#3604 - Support DirFakeUser, DirFakeGroup and DirFakeMode for MLSD/MLST commands. 2011-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm: Updating the DirFakeMode test to be like the other DirFake* directive tests. 2011-02-22 castaglia <castaglia> * tests/t/config/dirfakegroup.t, tests/t/config/dirfakeuser.t, tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm, tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm, tests/tests.pl: Start adding regression tests for the DirFakeGroup and DirFakeUser directives. 2011-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Fix regression caused by changing of default index in response_msg() function. 2011-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm, tests/t/modules/mod_readme.t, tests/tests.pl: Adding regression tests for the mod_readme module. 2011-02-22 castaglia <castaglia> * contrib/mod_readme.c: Fix some of the coding style in the mod_readme module; no functional change. 2011-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: If the testsuite code requests an indexed response message and there is no message at that index, return undef rather than defaulting to returning the first response message. 2011-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm: Adding regression test for MaxCommandRate+mod_sftp+mod_ban config. 2011-02-22 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Make sure that when mod_ban bans an SSH2 client, we disconnect the client properly. 2011-02-22 castaglia <castaglia> * contrib/mod_ban.c: Fix mod_ban's handling of the 'core.max-command-rate' event. 2011-02-22 castaglia <castaglia> * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Clear up any session-wide memcache connection on end of session. 2011-02-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm, tests/t/modules/mod_sftp/ban.t, tests/tests.pl: Splitting out the mod_ban-related mod_sftp tests into their own file. 2011-02-21 castaglia <castaglia> * doc/modules/mod_xfer.html: Added docs for TransferRate. 2011-02-21 castaglia <castaglia> * doc/modules/mod_xfer.html: Still working on more mod_xfer documentation. 2011-02-21 castaglia <castaglia> * doc/howto/Sendfile.html: More known issues with sendfile(2). 2011-02-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ratio.pm, tests/t/modules/mod_ratio.t, tests/tests.pl: Start of unit tests for mod_ratio; incidentally includes regression test for Bug#3600. 2011-02-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Remove development/debugging cruft. 2011-02-21 castaglia <castaglia> * NEWS, contrib/mod_sql.c, include/display.h, modules/mod_auth.c, modules/mod_core.c, src/display.c, src/main.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Bug#3538 - WrapAllowMsg directive broken due to Bug#3423. Bug#3600 - pr_response_send() doesn't send responses queued with pr_response_add(). 2011-02-21 castaglia <castaglia> * RELEASE_NOTES, include/response.h, src/response.c: Remove the pr_response_send_ml() et al functions; they are obsolete, unused, and should not be being used. 2011-02-20 castaglia <castaglia> * src/main.c: Minor style cleanup; no functional change. 2011-02-20 castaglia <castaglia> * doc/modules/index.html, doc/modules/mod_site.html: Start on docs for the mod_site module. 2011-02-20 castaglia <castaglia> * doc/modules/mod_log.html: Minor typos. 2011-02-20 castaglia <castaglia> * doc/modules/index.html, doc/modules/mod_log.html: Adding mod_log docs. 2011-02-20 castaglia <castaglia> * doc/modules/mod_auth_unix.html: Fixing up the mod_auth_unix docs. 2011-02-20 castaglia <castaglia> * doc/modules/mod_auth_file.html: Fixing up the mod_auth_file docs. 2011-02-20 castaglia <castaglia> * doc/modules/index.html, doc/modules/mod_auth.html: Start working on mod_auth-specific documentation. 2011-02-20 castaglia <castaglia> * doc/modules/index.html: Add an index page for the core module docs. 2011-02-20 castaglia <castaglia> * doc/modules/mod_memcache.html: Give example of specifying paths to libmemcached headers/libs in the mod_memcache docs. 2011-02-20 castaglia <castaglia> * README.modules: Update the README.modules file. 2011-02-20 castaglia <castaglia> * doc/modules/mod_auth_unix.html: Add FAQ about expired passwords, as per Bug#3582. 2011-02-20 castaglia <castaglia> * configure: Update configure script. 2011-02-20 castaglia <castaglia> * configure.in: configure script changes to support Bug#3576: if mod_ifsession appears anywhere in the --with-modules list, it will automatically appear at the end of the list of static modules. 2011-02-20 castaglia <castaglia> * doc/modules/mod_dso.html: Fix the "Compatibility" versions in the mod_dso doc. 2011-02-20 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_ban.c, doc/contrib/mod_ban.html, tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Adding an 'UnhandledCommand' event to mod_ban's BanOnEvent rules. 2011-02-20 castaglia <castaglia> * doc/modules/mod_core.html: Add documentation for the current Include directive behavior (Bug#3588). 2011-02-20 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/modules.h, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3559 - ExtendedLog should support EXIT command, for logging when a session ends. 2011-02-20 castaglia <castaglia> * contrib/mod_ban.c, doc/contrib/mod_ban.html: Update mod_ban's BanOnEvent to watch for the events triggered when the MaxCommandRate is exceeded. 2011-02-20 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_core.html: Documenting the new MaxCommandRate directive (Bug#3565). 2011-02-20 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3565 - Support a MaxCommandRate, for detecting and throttling clients which are sending commands too quickly. 2011-02-18 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Additional fixes for logging of RMDIR in ExtendedLog, for Bug#3591. 2011-02-17 castaglia <castaglia> * contrib/mod_sftp/display.c: Forgot to add back the format_size_str() function here. 2011-02-17 castaglia <castaglia> * NEWS, modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Bug#3598 - HiddenStores makes the APPE command overwrite files instead of appending them. 2011-02-17 castaglia <castaglia> * RELEASE_NOTES: Update release notes. 2011-02-17 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the new IgnoreSFTPSetPerms SFTPOption. 2011-02-17 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3599 - Support SFTPOptions parameter for ignoring SFTP SETSTAT/FSETSTAT permission changes. 2011-02-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: The mod_rewrite-related mod_sftp tests have been moved out to their own file. 2011-02-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm, tests/t/modules/mod_sftp/rewrite.t, tests/tests.pl: Refactoring the mod_sftp+mod_rewrite tests out to a separate file. 2011-02-16 castaglia <castaglia> * contrib/mod_sftp/display.c, src/display.c, src/fsio.c, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: In investigating Bug#3596, I found that the %F and %f Display variables had been completely broken. Fix this. 2011-02-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Include.pm: Make the Include test for wildcards better; this now ensures that the lexicographical sorting of the matched files happens as expected. 2011-02-16 castaglia <castaglia> * doc/modules/mod_ls.html: Start working on mod_ls-specific documentation. 2011-02-16 castaglia <castaglia> * tests/t/config/include.t, tests/t/lib/ProFTPD/Tests/Config/Include.pm, tests/tests.pl: Add regression tests for the Include directive. 2011-02-16 castaglia <castaglia> * doc/contrib/index.html, doc/contrib/mod_tls_memcache.html: Adding docs for mod_tls_memcache module. 2011-02-16 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls_memcache.c: Adding new mod_tls_memcache module. 2011-02-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls_memcache.pm, tests/t/modules/mod_tls_memcache.t, tests/tests.pl: Checking in tests for the new mod_tls_memcache module. 2011-02-15 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Fix uninitialized pointer warning from Bug#3596. 2011-02-15 castaglia <castaglia> * contrib/mod_shaper.c: Fix printf(3) typecast warning from Bug#3596. 2011-02-15 castaglia <castaglia> * modules/mod_delay.c: Fix off-by-one compiler warnings from Bug#3596. 2011-02-15 castaglia <castaglia> * NEWS, src/prxs.in: Bug#3593 - Using "$shell $libtool" in prxs does not work for all shells. 2011-02-15 castaglia <castaglia> * contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Change the notes stashed by mod_sql to be 'primary-group' (was 'sql.group'), 'home' (was 'sql.home') and 'shell' (was 'sql.shell'), to be more generic. I'll start enhancing other auth modules to stash these values as well. 2011-02-15 castaglia <castaglia> * contrib/mod_sftp/display.c: Remove unused function. 2011-02-15 castaglia <castaglia> * RELEASE_NOTES: Adding release notes for myself, to be fleshed out more fully later. 2011-02-15 castaglia <castaglia> * NEWS, include/filter.h, modules/mod_core.c, src/filter.c, tests/t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Bug#3592 - Support case-insensitivity option for PathAllowFilter/PathDenyFilter directives. 2011-02-14 castaglia <castaglia> * doc/modules/mod_auth_unix.html: Document the magicTokenChroot AuthUnixOption. 2011-02-14 castaglia <castaglia> * modules/mod_auth_unix.c: Add support for a 'magicTokenChroot' AuthUnixOption. This is intended to help sites which are migrating from a wu-ftpd setup (yes, there are some very large sites out there still running wu-ftpd). 2011-02-14 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_tls.c: Use the newer RSA_generate_key_ex() OpenSSL function when OpenSSL 0.9.8 and later is used. The older RSA_generate_key() function is deprecated. 2011-02-14 castaglia <castaglia> * include/timers.h, src/main.c, src/timers.c, tests/api/timers.c: Add a new pr_timer_usleep() function, for pausing for a number of microseconds. Handy for loops which need to do non-blocking polls with short delays in between. 2011-02-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add mod_sftp unit tests for Bug#3591. 2011-02-13 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_log.c: Bug#3591 - %F LogFormat variable should work for MKD/RMD commands. 2011-02-13 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure that we dispatch the internally-created MKD/RMD cmmands to the LOG_CMD phase handlers when handling MKDIR/RMDIR SFTP requests. 2011-02-13 castaglia <castaglia> * contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add support for 'sql.group', 'sql.home', and 'sql.shell' notes in the session.notes table, for use in LogFormat/SQLNamedQuery logging. 2011-02-13 castaglia <castaglia> * modules/mod_memcache.c: The configured MemcacheServers in the "server config" context will be available for use by modules who want memcached servers even before a connection is received (e.g. ftpdctl/mod_ctrls). 2011-02-13 castaglia <castaglia> * src/memcache.c: If pr_memcache_incr() fails because the key is not found, automatically create the key, using the given increment as the value. 2011-02-12 castaglia <castaglia> * contrib/mod_sftp/channel.h: Rather than relying on datatype underflow, explicitly define the max channel window size. 2011-02-12 castaglia <castaglia> * src/display.c: Bug#3589 - src/display.c doesn't compile on hpux since 1.3.3d. 2011-02-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h: Bug#3586 - mod_sftp behaves badly when receiving badly formed SSH messages. 2011-01-26 castaglia <castaglia> * src/memcache.c: Make sure that pr_memcache_set_namespace() with a NULL namespace prefix works as we expect. 2011-01-26 castaglia <castaglia> * src/memcache.c: Since we're supporting a shared/common pr_memcache_t for all modules in a single session, we need a refcount mechanism, so that one module doesn't inadvertently close the connection for all the other modules who might be using that pr_memcache_t. 2011-01-26 castaglia <castaglia> * contrib/mod_ban.c: Make sure we don't leak memory in a few memcache/tpl-related error cases. 2011-01-26 castaglia <castaglia> * contrib/mod_sftp/crypto.c, contrib/mod_tls.c: Use OpenSSL's ERR_remove_thread_state() API when possible, rather than the deprecated ERR_remove_state() function. 2011-01-25 castaglia <castaglia> * doc/contrib/mod_tls.html: Update the mod_tls TLSSessionCache docs with an example of specifying the cache lifetime for OpenSSL's internal session caching (cf Bug#3580). 2011-01-25 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3585 - Allow client-requested SSL session renegotiation when securely supported. 2011-01-25 castaglia <castaglia> * include/memcache.h, src/memcache.c: Adding memcache API functions for incrementing/decrementing a value stored in memcached. 2011-01-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls_shmcache.pm, tests/t/modules/mod_tls_shmcache.t, tests/tests.pl: Finally have a regression test for mod_tls_shmcache and SSL session caching. 2011-01-24 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Update mod_tls_shmcache to use trace logging in more places. 2011-01-24 castaglia <castaglia> * contrib/mod_tls.c: Add logging of when an SSL session is reused/resumed for a control connection. 2011-01-23 castaglia <castaglia> * contrib/mod_sftp/auth.c: The fix for Bug#3482 needs to apply properly to SSH sessions as well; the WtmpLog default value, in light of Bug#3482, should be 'off' for the affected platforms. 2011-01-23 castaglia <castaglia> * modules/mod_auth.c: The fix for Bug#3482 had a minor nit; we need to allocate space for an unsigned char, not an int. 2011-01-23 castaglia <castaglia> * NEWS, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3580 - TLSSessionCache needs to allow configuring OpenSSL's internal session caching expiration, for long-lived sessions. 2011-01-23 castaglia <castaglia> * contrib/mod_ban.c, include/memcache.h, src/memcache.c: Now the Memcache API supports namespace prefixes for keys, setting on a per-module basis. Useful for keeping the keys from various modules separate, and for dumping the keys/values for just a specific namespace. 2011-01-23 castaglia <castaglia> * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Checkpoint of more of my work on memcache support. 2011-01-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Added regression tests for ShowSymlinks and MLST, using relative symlinked paths in chrooted sessions. 2011-01-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Add regression tests for the STAT output when ShowSymlinks is toggled. 2011-01-21 castaglia <castaglia> * src/memcache.c: Use the AUTO_EJECT_HOSTS option, although it doesn't seem to be working as I expect. 2011-01-21 castaglia <castaglia> * src/memcache.c: Add better trace logging of the dead memcached server when we can detect one. 2011-01-21 castaglia <castaglia> * modules/mod_memcache.c: Slightly better logging of the libmemcached version being used. 2011-01-21 castaglia <castaglia> * modules/mod_memcache.c, src/memcache.c: Check the version of the libmemcached headers versus that the library, to warn against possible header/lib mismatch. Fix compiler warnings in src/memcache.c. 2011-01-21 castaglia <castaglia> * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Use randomized replica reads for memcached retrieval by default, and provide an option to disable this. Also provide a way to configure the number of connect failures before a given memcached server is disabled in the pool. 2011-01-21 castaglia <castaglia> * modules/mod_facts.c: Fix issue from Bug#3318 found by the ShowSymlink regression tests, where the MLST command was still returning the symlinked target path, rather than the symlink path itself, even when "ShowSymlinks off" was in effect. 2011-01-21 castaglia <castaglia> * tests/t/config/showsymlinks.t, tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm, tests/tests.pl: Adding unit tests for the ShowSymlinks directive, and its effects on the LIST, NLST, MLSD, and MLST commands, using symlinked files and symlinked directories. There are still more combinations try to here, e.g. using absolute symlink paths (versus relative symlink paths), and the effects of chroot on all of these combinations. 2011-01-21 castaglia <castaglia> * doc/contrib/mod_ban.html: Adding stubs for the new BanCache and BanCacheOptions directives. 2011-01-21 castaglia <castaglia> * doc/modules/mod_memcache.html: More stubs for the mod_memcache documentation. 2011-01-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban/memcache.pm, tests/t/modules/mod_ban/memcache.t, tests/tests.pl: Adding unit tests that I used for testing out mod_ban when configured to use a memcached server. 2011-01-20 castaglia <castaglia> * contrib/mod_ban.c: And now mod_ban can use memcached for storing/retrieving any ban rules! 2011-01-20 castaglia <castaglia> * src/memcache.c: It helps to iterate through the list of stat key names, rather than reusing the same hardcoded name over and over. 2011-01-20 castaglia <castaglia> * src/memcache.c: Require libmemcached-0.37 or later for memcache support. When a new memcache connection is created, get stats from the pool of memcached servers to which it connected. This is useful for logging, and it also ensures that we have connectivity to those servers, i.e. it is better to know, at connect time, that the configured servers are actually up, running, accessible, and responding to our requests. 2011-01-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Pedantic style change; no functional change. 2011-01-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Updated ftpwho unit tests to run properly. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideUser.pm: Fix another of the HideUser tests which does require rootprivs to be run. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm: Fix the HideNoAccess unit test to handle the ScoreboardMutex file. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm: Fix the DirFakeMode unit tests to handle the ScoreboardMutex file. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm: Fix to make the TimeoutLogin tests work on slower machines, and with different versions of Perl. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Quell more Perl warnings. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm: Allow for more idle time, so that the TimeoutIdle tests can pass properly on a slower test machine. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm: Only run the UseFtpUsers tests on a system which has the /etc/ftpusers file. 2011-01-19 castaglia <castaglia> * modules/mod_memcache.c: Fix compilation of mod_memcache. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Update ABOR unit test to handle ScoreboardMutex file. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Allow more than 2 seconds for the STOU unit tests to run. 2011-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Update these unit tests so that they work properly. 2011-01-19 castaglia <castaglia> * src/memcache.c: Fix the compilation for src/memcache.c when --enable-memcache is not used. 2011-01-19 castaglia <castaglia> * doc/modules/mod_memcache.html: Add links to the memcached and libmemcached pages. 2011-01-19 castaglia <castaglia> * doc/modules/mod_memcache.html: Start working on documentation for the mod_memcache module. 2011-01-19 castaglia <castaglia> * doc/modules/mod_ctrls.html: Updated mod_ctrls with description of where to find the latest version. 2011-01-19 castaglia <castaglia> * doc/contrib/mod_sftp_pam.html: Updated the mod_sftp_pam docs to mention the new NoInfoMsgs SFTPPAMOption. 2011-01-19 castaglia <castaglia> * NEWS, contrib/mod_sftp_pam.c: Bug#3578 - Ability to suppress sending messages from PAM to clients. 2011-01-19 castaglia <castaglia> * NEWS, contrib/mod_sftp_pam.c: Bug#3579 - mod_sftp_pam may tell client to disable echoing erroneously. 2011-01-18 castaglia <castaglia> * configure: Updated configure. 2011-01-18 castaglia <castaglia> * configure.in, include/memcache.h, lib/Makefile.in, modules/mod_memcache.c, src/memcache.c: Checking in more of my memcache work from today. 2011-01-18 castaglia <castaglia> * include/tpl.h, lib/README.tpl, lib/tpl.c: Adding libtpl-1.5 sources to the proftpd code; these are for use for packing arbitrary data structures for storage in memcached servers. 2011-01-18 castaglia <castaglia> * include/trace.h, src/trace.c: Add a pr_trace_vmsg() function, a variant of pr_trace_msg() which can accept a va_list. 2011-01-17 castaglia <castaglia> * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Fix the handling of the BLOCKING option. 2011-01-17 castaglia <castaglia> * include/memcache.h, modules/mod_memcache.c, src/memcache.c: More work on memcache support. 2011-01-17 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3544 - mod_sftp closes channel too early after scp download. 2011-01-14 castaglia <castaglia> * modules/mod_facts.c: Make sure to check the supplemental group IDs when fixing the behavior in Bug#3577, not just the primary group ID. 2011-01-14 castaglia <castaglia> * NEWS, modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm: Bug#3577 - MFMT can fail due to utimes(2) peculiarities. 2011-01-13 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#3575 - Process privileges may not handled properly when --enable-autoshadow is used. 2011-01-12 castaglia <castaglia> * modules/mod_site.c: Fix data type warning on Solaris. 2011-01-12 castaglia <castaglia> * configure: Updated configure. 2011-01-12 castaglia <castaglia> * config.h.in, configure.in, contrib/mod_exec.c, contrib/mod_tls.c, include/conf.h, modules/mod_core.c, modules/mod_delay.c, modules/mod_xfer.c, src/child.c, src/data.c, src/ftpdctl.c, src/log.c, src/main.c, src/netio.c, src/scoreboard.c, src/support.c, src/throttle.c, src/timers.c, utils/ftptop.c, utils/scoreboard.c, utils/utils.h: Move the inclusion of <signal.h> into the main conf.h file. 2011-01-12 castaglia <castaglia> * src/main.c: Use better printf(3) style, and always support a format string, even for fixed input strings. 2011-01-11 castaglia <castaglia> * NEWS, contrib/mod_quotatab_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3524 - mod_quotatab_sql does not properly update the file upload count for a DELE. 2011-01-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Removing more unneeded chomp() calls. 2011-01-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Removing unneeded chomp() calls. 2011-01-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AllowOverwrite.pm, tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm, tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm, tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm, tests/t/lib/ProFTPD/Tests/Config/Order.pm, tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm: Remove unnecessary chomp() calls. 2011-01-11 castaglia <castaglia> * tests/t/commands/site/chmod.t, tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm, tests/tests.pl: Start working on regression tests for the various SITE commands. 2011-01-11 castaglia <castaglia> * modules/mod_auth_file.c: Fix build of mod_auth_file on systems which have fgetpwent(3). 2011-01-11 castaglia <castaglia> * src/fsio.c: Style nits; no functional change (other than adding signal handling in a while() loop). 2011-01-10 castaglia <castaglia> * contrib/mod_sftp/display.c, include/fsio.h, src/display.c, src/fsio.c: Add a new function, pr_fs_getsize2(), for retrieving the available space on a filesystem. Unlike pr_fs_getsize(), this new function is a) always present, rather than relying on platform support for various statfs(2) flavors, and b) is capable of indicating when an error occurs. 2011-01-10 castaglia <castaglia> * doc/howto/ConfigurationTricks.html: Mention TransferPriority in the ConfigurationTricks howto. 2011-01-08 castaglia <castaglia> * src/support.c: Since the location of the statfs(2)/statvfs(2) calls moved to the src/fsio.c file, these headers are no longer needed in src/support.c. 2011-01-08 castaglia <castaglia> * modules/mod_auth_file.c: Slightly better fix for the ID filtering bugs I found. Also fixed up some log messages about filtered IDs so that they are better suited to handle large ID values. 2011-01-08 castaglia <castaglia> * modules/mod_auth_file.c: Fix a couple of bugs when using ID filtering in the AuthUserFile and AuthGroupFile directives. 2011-01-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm, tests/t/modules/mod_auth_file.t, tests/tests.pl: Adding regression tests for the ID, home, and name filtering that can be done using AuthUserFile and AuthGroupFile directives. 2011-01-08 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Updating the mod_sql_passwd docs with descriptions of the SQLPasswordOptions and SQLPasswordRounds directives, as well as how to use them in combination to support a wide variety of constructions. 2011-01-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: More Bug#3500-related unit tests, this time for the HashPassword and HashSalt SQLPasswordOptions. 2011-01-08 castaglia <castaglia> * contrib/mod_sql_passwd.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Additional refinement from Bug#3500. 2011-01-07 castaglia <castaglia> * doc/modules/mod_xfer.html: Start working on a mod_xfer doc. 2011-01-07 castaglia <castaglia> * doc/modules/mod_core.html: Typo. 2011-01-06 castaglia <castaglia> * NEWS, contrib/mod_sql_passwd.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Bug#3500 - Support for other combinations of hashed values in mod_sql_passwd. 2011-01-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add regression test for the SQLGroupWhereClause directive. 2011-01-05 castaglia <castaglia> * doc/howto/ConnectionACLs.html: Typo. 2011-01-05 castaglia <castaglia> * doc/howto/ConnectionACLs.html: Typo. 2011-01-05 castaglia <castaglia> * RELEASE_NOTES: Mention the new doc in the release notes. 2011-01-05 castaglia <castaglia> * doc/howto/ConnectionACLs.html, doc/howto/index.html: Adding ConnectionACL howto. 2011-01-05 castaglia <castaglia> * src/parser.c: Make sure that the config parser allows a line to be up to the full PR_TUNABLE_BUFFER_SIZE in length (usually 1024 bytes), rather than PR_TUNABLE_BUFFER_SIZE-1 bytes. 2011-01-04 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3572 - Support use of "notes" variables in SQLNamedQuery. I've also added support to mod_rewrite such that the mod_rewrite module now stores backrefs in the cmd->notes table, such that they can be used in a SQLLog SQLNamedQuery. 2011-01-04 castaglia <castaglia> * src/table.c: Add a default table printing function for pr_table_dump(), so that a caller can simply use: pr_table_dump(NULL, tab); to get the table dumped to the TraceLog under the 'table' channel. 2011-01-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add integration test showing that variables such as %L are properly supported in a SQLUserWhereClause. 2011-01-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/RLimitMemory.pm: Another RLimitMemory test; I need to add more such cases here. 2011-01-03 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3571 - RLimitMemory "max" soft/hard limits don't work. 2011-01-03 castaglia <castaglia> * tests/t/config/rlimitmemory.t, tests/t/lib/ProFTPD/Tests/Config/RLimitMemory.pm, tests/tests.pl: Adding regression tests for the RLimitMemory directive, per Bug#3571. 2010-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix another few Perl warnings. 2010-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm: Silence another Perl warning. 2010-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Quell some Perl compiler warnings. 2010-12-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Remove redundant regression test. 2010-12-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Add regression test for anonymous logins with mod_delay enabled. 2010-12-27 castaglia <castaglia> * tests/Makefile.in: Make sure that 'make clean' works properly for the API tests. 2010-12-27 castaglia <castaglia> * tests/api/timers.c: Typo. 2010-12-27 castaglia <castaglia> * tests/api/netacl.c: More places in the API testsuite where we might need to handle 'localhost.localdomain' as well as just 'localhost'. 2010-12-27 castaglia <castaglia> * tests/api/netaddr.c: Try to handle the case where 'localhost.localdomain' is the returned DNS name for 127.0.0.1, rather than 'localhost'. 2010-12-26 castaglia <castaglia> * tests/api/timers.c: Allow some leeway when dealing with timer-based unit tests. 2010-12-23 jwm <jwm> * README.LDAP: bzr r110: capitalization consistency 2010-12-23 jwm <jwm> * RELEASE_NOTES: forgot to add notice of mod_ldap configuration overhaul to the release notes 2010-12-23 jwm <jwm> * README.LDAP: latest README with populated Changes section 2010-12-23 castaglia <castaglia> * tests/api/pool.c: Fix pool unit test error. 2010-12-22 castaglia <castaglia> * doc/howto/Scoreboard.html: Updating the Scoreboard howto with descriptions of the types of data recorded in the ScoreboardFile. 2010-12-21 castaglia <castaglia> * src/scoreboard.c, tests/api/scoreboard.c, tests/api/stubs.c: Bug#3568 - Build failure trying to run test suite. Fixes linker error due to missing pr_ctrls_unregister() stub, and fixes scoreboard API tests that were broken due to ScoreboardMutex introduction (Bug#3208). 2010-12-21 castaglia <castaglia> * modules/mod_ident.c: Fix an IdentLookups edge case where we were not closing the fd or removing the timer properly. 2010-12-21 castaglia <castaglia> * modules/mod_ident.c: Typo. 2010-12-21 castaglia <castaglia> * src/netio.c: Fix the IO event names for writes to "other" types of streams. 2010-12-21 castaglia <castaglia> * NEWS, modules/mod_ident.c: Bug#3567 - IdentLookups do not work for IPv6 servers. 2010-12-21 castaglia <castaglia> * doc/contrib/mod_tls_shmcache.html: Adding TLSSessionCache FAQ. 2010-12-21 castaglia <castaglia> * doc/modules/mod_core.html: Updating mod_core docs with description of ProcessTitles directive. 2010-12-21 castaglia <castaglia> * NEWS, include/proctitle.h, modules/mod_core.c, src/proctitle.c: Bug#3566 - Ability to turn verbose process titles off. 2010-12-20 castaglia <castaglia> * tests/t/config/maxcommandrate.t, tests/t/lib/ProFTPD/Tests/Config/MaxCommandRate.pm, tests/tests.pl: Adding unit tests for the functionality in Bug#3565. 2010-12-18 jwm <jwm> * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm: forgot to sync with TJ's changes to use the base set_up/tear_down methods 2010-12-18 castaglia <castaglia> * contrib/mod_sql.c: Bug#3563 - Fix compiler warnings about possibly uninitialized variables. 2010-12-18 castaglia <castaglia> * doc/contrib/mod_sftp.html: Bug#3564 - Remove the SFTPServices docs, since the directive was reworked to be the Protocols directive. 2010-12-18 castaglia <castaglia> * include/version.h: Updating version.h for the CVS status once more. 2010-12-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Remove the 50MB file used for mod_deflate regression testing; no need to clutter up the tarball with it. 2010-12-18 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2010-12-18 castaglia <castaglia> * locale/files.txt: Updating the list of files for localization. 2010-12-18 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Getting ready to release 1.3.4rc1 (finally). 2010-12-18 castaglia <castaglia> * modules/mod_xfer.c: Add some portability checks for strtof(3), and make sure that the UseSendfile directive handler checks the macros. 2010-12-18 castaglia <castaglia> * configure: Updating configure script. 2010-12-18 castaglia <castaglia> * config.h.in, configure.in: Adding autoconf checks for the strtod(3) and strtof(3) functions; some platforms (e.g. older Solaris) may not have them. 2010-12-17 castaglia <castaglia> * contrib/mod_qos.c: Make sure that mod_qos can compile properly on non-Linux systems (e.g. FreeBSD) by adding in some portability checks. 2010-12-17 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.h.in: Missed checkin for the fix for Bug#3558. 2010-12-17 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes. 2010-12-17 castaglia <castaglia> * src/netio.c: Limit the memory usage for pr_buffer_ts for the IO events by using a sub-pool for the IO write events, and destroying the pool after the event has been posted. 2010-12-17 castaglia <castaglia> * contrib/mod_sql.c: The mod_sql_sqlite testsuite caught a regression caused by a typo in the fix for Bug#3536. 2010-12-17 castaglia <castaglia> * src/response.c: Wait to clear the cached last response code/msg values until pr_response_clear(). 2010-12-17 castaglia <castaglia> * src/response.c: The last commit broke pr_response_flush(); fix it properly. 2010-12-17 castaglia <castaglia> * include/event.h, src/event.c: Provide a function for checking if there are any registered listeners for a given event. A module might want to use this, for example, to see if anyone is listening for some data which may be expensive to generate. 2010-12-17 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3560 - ExtendedLog shows incorrect byte size for first file downloaded via SFTP in some cases. 2010-12-17 castaglia <castaglia> * src/response.c: The mod_sftp testsuite caught some issues in the Response API. 2010-12-16 castaglia <castaglia> * contrib/mod_sftp/packet.c: Have mod_sftp generate events when it does network IO. 2010-12-16 castaglia <castaglia> * src/netio.c: Generate an event when pr_netio_gets() is used (e.g. by mod_ident) to read data from the network which is not necessarily for the control or data connections. 2010-12-15 castaglia <castaglia> * src/data.c, src/netio.c: Flesh out the rest of the IO events, so that events are generated when data are read from both control and data connection, and when data are written to either control or data connections. 2010-12-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding regression test for %O variable when sendfile(2) support is in effect. Fixing the other broken tests related to Bug#3554. 2010-12-15 castaglia <castaglia> * src/data.c: Make sure that bytes sent to the client via sendfile(2) are properly accounted for in the %O value (Bug#3554). 2010-12-15 castaglia <castaglia> * doc/contrib/mod_wrap2.html: Added documentation for the new CheckAllNames WrapOption. 2010-12-15 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c, include/netaddr.h, src/netaddr.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Bug#3558 - Check all DNS names for a client against DNS names/patterns in access rules. 2010-12-15 castaglia <castaglia> * doc/modules/mod_core.html: Start working a mod_core.html doc, just like we have for the other standard modules. 2010-12-15 castaglia <castaglia> * modules/mod_core.c: Make sure that mod_ifsession won't remove all Protocols config_recs by marking it with the proper CF_MERGEDOWN_MULTI flag. 2010-12-15 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update mod_tls to honor/enforce the "ftps" protocol for the Protocols directive. Update the NEWS and RELEASE_NOTES about the new Protocols directive. 2010-12-15 castaglia <castaglia> * modules/mod_auth.c: Make sure that the disconnecting of a client because of the Protocols config happens at the right time. 2010-12-15 castaglia <castaglia> * modules/mod_auth.c, tests/t/lib/ProFTPD/Tests/Config/Protocols.pm: Be polite, and send a response when we disconnect the session because of the Protocols config, even if that response is not very informative. 2010-12-15 castaglia <castaglia> * modules/mod_auth.c: More work on Bug#3556; we don't want to check for the Protocols config unless the client has been successfully authenticated. 2010-12-15 castaglia <castaglia> * contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Supporting the new Protocols directive (Bug#3556) in mod_sftp. 2010-12-15 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, tests/t/config/protocols.t, tests/t/lib/ProFTPD/Tests/Config/Protocols.pm, tests/tests.pl: Bug#3556 - Disable protocol support on per-user/group/class basis. 2010-12-14 castaglia <castaglia> * doc/contrib/mod_wrap2.html: Add documentation for the new WrapOptions directive, and the option added for Bug#3508. 2010-12-14 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in: Bug#3508 - mod_wrap2 should support checking of WrapTables allow/deny rules at connect time. 2010-12-14 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Add logging in the WrapLog of the DNS names/patterns being compared. Trim a trailing period in the retrieved client DNS name, if present. 2010-12-14 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sftp.html: Mention the new SFTPServices directive in the docs. 2010-12-14 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3556 - Disable SFTP/SCP support on per-user/group/class basis. 2010-12-13 castaglia <castaglia> * tests/t/config/maxclientsperhost.t, tests/t/config/maxconnectionsperhost.t, tests/t/lib/ProFTPD/Tests/Config/MaxClientsPerHost.pm, tests/t/lib/ProFTPD/Tests/Config/MaxConnectionsPerHost.pm, tests/tests.pl: Adding unit tests for the MaxClientsPerHost and MaxConnectionsPerHost directives. 2010-12-13 castaglia <castaglia> * contrib/mod_unique_id.c: Make the unique session ID generated by mod_unique_id available to all modules by stashing the ID in the session.notes table. 2010-12-11 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_deflate.c, contrib/mod_sftp/packet.c, contrib/mod_sql.c, contrib/mod_tls.c, include/proftpd.h, modules/mod_log.c, src/netio.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3554 - Support Apache-style %I, %O LogFormat variables. 2010-12-11 castaglia <castaglia> * contrib/mod_sftp/channel.c: Add comment for myself in the future, about SSH clients which request SCP transfers using an explicit path to the scp executable. 2010-12-11 castaglia <castaglia> * modules/mod_log.c: Catch an edge case where an ExtendedLog configured to log ALL commands was not logging some commands. Specifically, if the module handling the command forgot to provide a proper command class for that command, then the ExtendedLog wouldn't log it, even for the ALL command class. 2010-12-11 castaglia <castaglia> * contrib/mod_deflate.c: Make sure that the commands handled by mod_deflate are tagged with the proper command class, so that ExtendedLog catches/logs them properly. 2010-12-11 castaglia <castaglia> * contrib/mod_deflate.c: The cause of Bug#3550 also occurred in the mod_deflate code; fixing it here. 2010-12-10 jwm <jwm> * contrib/mod_ldap.c: bzr r108: Handle potential NULL return value from crypt(). (Bug #3551) 2010-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression tests for the handling of various timeouts (TimeoutIdle, TimeoutLogin, TimeoutNoTransfer, TimeoutStalled) for SFTP sessions. 2010-12-10 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Make SCP honor/handle the TimeoutNoTransfer and TimeoutStalled timeouts properly. 2010-12-10 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Listing a directory via SFTP should reset the TimeoutNoTransfer timer, as is done for FTP sessions. 2010-12-10 castaglia <castaglia> * modules/mod_xfer.c: The message logged for a TimeoutNoTransfer should be protocol-specific, and not have "FTP" hardcoded. 2010-12-10 castaglia <castaglia> * src/main.c: Generate an event for parsed but unhandled/unrecognized commands as well. 2010-12-10 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/packet.c: Generate events when we receive invalid SSH2 packets, and when we receive invalid SFTP requests. 2010-12-10 castaglia <castaglia> * src/main.c: Generate an event whenever an invalid command (i.e. an unparsable command) is received from the client. 2010-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm: Add tests which show that TimeoutStalled pertains to all data transfers, including LIST, NLST, MLSD, RETR, and STOR. 2010-12-09 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_sftp/scp.c, contrib/mod_tls.c: Updating some macros based on a FreeBSD patch I found online (which wasn't passed on upstream to us). 2010-12-09 castaglia <castaglia> * src/netio.c: Refine the placement/timing of when the event containing FTP control data is generated. This tweak allows the event listeners to possibly modify the data, and to have the changes actually seen/visible to the calling code. 2010-12-09 castaglia <castaglia> * include/netio.h: There's no reason that the number of bytes left in a pr_buffer_t should be negative; use a size_t data type instead of int. 2010-12-09 castaglia <castaglia> * src/netio.c: Generate an event whenever we read data from the network for the control connection, passing as event data the buffer we read in. This event is generated *before* we start examining that data as Telnet/string data. This allows modules to register listeners for this event; the modules can then examine the data for possibly malicious payloads and then do something appropriate (e.g. log the data, notify someone, drop the connection, generate an event for mod_ban, etc etc). 2010-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Don't run the Bug#3536 test by default; it's more for development/debugging than for regression. 2010-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add the reproduction recipe I was using for testing the changes for Bug#3536. 2010-12-09 castaglia <castaglia> * modules/mod_xfer.c: Make a reminder comment to myself to handle short writes to disk better. 2010-12-08 castaglia <castaglia> * NEWS, contrib/mod_sftp/compress.c: Bug#3550 - SFTP compressed uploads can cause corrupted uploaded files. 2010-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add another regression test for Bug#3550, this one using compressed SFTP downloads. 2010-12-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Allocate a larger default buffer for incoming packets, to handle WRITE packets better. 2010-12-08 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/bug3550.php, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding reproduction recipe for Bug#3550. 2010-12-07 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_auth_unix.c: Restore the explicit casts inadvertently removed by the fix for Bug#3551; I believe these were there to quell compiler warnings on some platforms. 2010-12-07 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_auth_unix.c: Bug#3551 - SQLAuthType Crypt implementation needs to handle NULL return value from crypt(3). 2010-12-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3548 - Null pointer segfault in mod_sftp when handling aborted connection. 2010-12-03 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Fix logging of SQL query executing error. 2010-12-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/display.c, contrib/mod_sftp/display.h, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/ssh2.h: Bug#3515 - Support DisplayLogin functionality for SFTP connections. 2010-12-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding reproduction recipe for Bug#3544. 2010-12-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding regression test for Bug#3547. 2010-12-01 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c, modules/mod_core.c: Bug#3547 - Multiple AllowClass directives not handled properly. 2010-11-30 castaglia <castaglia> * contrib/mod_ifsession.c, src/parser.c: Populate the cmd_rec->arg field for the cmd_recs generated during parsing. This is useful for capturing/recording the full original configuration line. Update mod_ifsession's logging to store and use the cmd->arg field, to better be able to determine which specific conditional context was merged in (or not). 2010-11-30 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3536 - mod_sql has insufficient bounds checking in sql_prepare_where() function. 2010-11-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Adding unit tests for mod_wrap2 and the WrapOptions directive from Bug#3508. 2010-11-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add ExtendedLog RETR test for SFTP downloads. 2010-11-22 castaglia <castaglia> * src/log.c: Make very sure that our logging buffer isn't exceeded. 2010-11-19 castaglia <castaglia> * tests/t/config/commandbuffersize.t, tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm, tests/tests.pl: Adding tests for the CommandBufferSize directive. 2010-11-19 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Allow unit tests the possibility of specifying a command timeout, in addition to the existing connection timeout, when instantiating a Net::FTP object. Useful for cases where the server may not actually send a response (e.g. if we send a too-long command). 2010-11-16 castaglia <castaglia> * src/timers.c: Make sure we reset the dynamic_timerno static variable when (re)initializing the Timers API as well. 2010-11-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add some tests for the SFTPRekey directive; fortunately rekeying seems to be supported well in libssh2/Net::SSH2. 2010-11-16 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c: Fix up some of the trace logging around rekeying to be a little clearer. Fixed the handling of rekey-related timers; we were inadvertently removing the rekey interval timer when we wanted to remove the rekey timeout timer. 2010-11-16 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Make sure that mod_facts is listed in the .spec file. 2010-11-16 castaglia <castaglia> * src/scoreboard.c: Don't forget to delete the ScoreboardMutex file as well. 2010-11-15 castaglia <castaglia> * include/scoreboard.h: Additional comments for the scoreboard entry fields. 2010-11-14 castaglia <castaglia> * NEWS: Mention the automatic setting of ScoreboardMutex when ScoreboardFile is used. 2010-11-14 castaglia <castaglia> * src/scoreboard.c: By default, whenever the ScoreboardFile is manually set via config, the ScoreboardMutex should be automatically set as well -- this makes helps preserve the principle of least surprise when upgrading proftpd. 2010-11-14 castaglia <castaglia> * tests/t/config/transferrate.t, tests/t/lib/ProFTPD/Tests/Config/TransferRate.pm, tests/tests.pl: Adding unit tests for the TransferRate directive. 2010-11-14 castaglia <castaglia> * include/scoreboard.h, src/scoreboard.c: Adding trace logging of the pr_scoreboard_entry_update() function, for tracing when specific scoreboard entry fields are updated. 2010-11-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding a few more FTPS regression tests. 2010-11-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm: Quell minor perl compiler warning about redeclared variable. 2010-11-11 castaglia <castaglia> * modules/mod_site.c: Add some trace logging for when SITE CHGRP/CHMOD fail. 2010-11-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm, tests/t/modules/mod_site.t, tests/tests.pl: Start working on regression tests for the mod_site module and its SITE commands. 2010-11-11 castaglia <castaglia> * doc/howto/Scoreboard.html: Add mention of the new ScoreboardMutex directive in the Scoreboard howto. 2010-11-11 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2010-11-11 castaglia <castaglia> * NEWS, include/scoreboard.h, modules/mod_core.c, src/scoreboard.c: Bug#3208 - Improve ScoreboardFile performance under load. 2010-11-10 castaglia <castaglia> * NEWS, src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Bug#3530 - Conflicting interactions among HideUser, HideGroup, and HideNoAccess directives. Make sure that HideNoAccess does not override the results of the HideUser or HideGroup checks. 2010-11-10 castaglia <castaglia> * NEWS: Mention the new "OldProtocolCompat" SFTPOption in the NEWS file. 2010-11-09 castaglia <castaglia> * doc/howto/Limit.html: Add an example of user-specific login denied by a specific IP address. 2010-11-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Add unit test showing how to use mod_ifsession and <Limit LOGIN> to achieve per-user, per-IP address specific ACLs. 2010-11-09 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3531 - mod_quotatab contains duplicate EDQUOT errno code. 2010-11-09 castaglia <castaglia> * contrib/mod_sql_passwd.c: Refactor mod_sql_passwd a little, pulling the encoding logic into a separate function. Hopefully this will make implementing the feature requested in Bug#3500 easier. 2010-11-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Start adding tests for the mod_sql_passwd functionality requested in Bug#3500. 2010-11-09 castaglia <castaglia> * src/netio.c: Stylistic nits; no functional change. 2010-11-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Telnet.pm: Fix the regression test for Bug#3521. We need to use Net::Telnet::TELNET_IAC() instead of $Net::Telnet::TELNET_IAC, since it is a subroutine, not a scalar. 2010-11-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Telnet.pm: Correct the bug number for this unit/regression test. 2010-11-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm: Fix broken mod_copy unit test. 2010-11-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add unit test where mod_sql will retrieve multiple group rows with different names but the same GID. This test can be useful later. 2010-11-08 castaglia <castaglia> * contrib/mod_sql.c: Stylistic nit; no functional change. 2010-11-08 castaglia <castaglia> * contrib/mod_sql.c, include/display.h, src/display.c: Fixing regression in handling of SQLShowInfo, caused by fix for Bug#3423. 2010-11-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add regression test for the fix for Bug#3423 as applied to SQLShowInfo lines. 2010-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Add regression test/reproduction recipe for Bug#3530. 2010-11-07 castaglia <castaglia> * doc/howto/Sendfile.html: Updating the Sendfile howto with description of the changes for Bug#3310, including how to get ftptop/ftpwho to show download rates while still taking advantage of the sendfile(2) optimal data transfer for downloads. 2010-11-06 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_xfer.c: Bug#3310 - UseSendfile should be supported in <Directory> and .ftpaccess sections. 2010-11-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm: More unit tests for the UseSendfile functionality added for Bug#3310. These tests are for the percentage syntax. 2010-11-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm: Adding a bunch of UseSendfile tests for the functionality being added for Bug#3310. 2010-11-05 castaglia <castaglia> * tests/t/config/usesendfile.t, tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm, tests/tests.pl: Adding regression tests for the UseSendfile directive, in preparation for working on Bug#3310. 2010-11-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: Updating multiline DisplayConnect regression test for changes due to Bug#3423. 2010-11-05 castaglia <castaglia> * include/display.h: Typo. 2010-11-05 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3529 - "LIST /*" now lists more than the expected directory. 2010-11-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding reproduction recipes/regression tests for Bug#3529. 2010-11-05 castaglia <castaglia> * src/dirtree.c: Address an issue seen by Thomas Shinnick where multiple config_recs for the same config_rec might be created unnecessarily in merge_down(). Specifically, if a config_rec was marked with the CF_MERGEDOWN_MULTI flag, merge_down() was not checking to see if a config_rec with all of the same values already existed in the destination subset list before merging it in. These duplicate config_recs could lead to extraneous (or even buggy) duplicate processing, depending on how those config_recs were looked up/processed (i.e. did the consuming code simply look up the first occurring config_rec, or would it look up and process all config_recs of that name, including the duplicates?). 2010-11-05 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3526 - CPU usage at 100% when checking HideFiles pattern. The build_dyn_config() function was using different names for the .ftpaccess config_recs it created versus the ones it looked up. This lead to an explosing in the number of config_recs created, which in turn lead to huge amounts of memory and CPU being taken up. Thanks to Thomas Shinnick for diligently tracking down the problem, and for providing a thoroughly- researched fix. 2010-11-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm: Add unit test for reproducing the slow/CPU-eating behavior indicated in Bug#3526. 2010-11-04 castaglia <castaglia> * src/dirtree.c: Cleanup some stylistic nits found in src/dirtree.c, found while investigating Bug#3526. Also add some necessary signal handling. 2010-11-04 castaglia <castaglia> * NEWS, contrib/mod_sql.c, include/response.h, modules/mod_log.c, src/response.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3528 - ExtendedLog %s variable not expanded properly for successful PASS commands. 2010-11-02 castaglia <castaglia> * NEWS, src/log.c: Bug#3525 - Default syslog logging causes logging to the wrong syslog facilities. 2010-11-01 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2010-11-01 castaglia <castaglia> * contrib/mod_quotatab.c: Remove the pr_unregister_fs() call when unloading mod_quotatab. First, the call was wrong: pr_unregister_fs() takes a path, not an FSIO name. Second, the corresponding pr_register_fs() call happens in the session process; unloading the module happens in the daemon process. 2010-10-30 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Set the session.curr_cmd value in mod_sftp, for use by contrib modules. 2010-10-29 castaglia <castaglia> * contrib/mod_sftp/packet.c: Add trace logging of unknown disconnect reason codes. 2010-10-29 castaglia <castaglia> * contrib/mod_sftp/packet.c: Make sure we handle unknown disconnect reason code properly (Bug#3522). 2010-10-29 castaglia <castaglia> * NEWS, contrib/mod_sftp/disconnect.c, contrib/mod_sftp/disconnect.h, contrib/mod_sftp/packet.c: Bug#3522 - Error when handling SSH DISCONNECT messages with no language tag. 2010-10-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Add unit tests showing that mod_site_misc properly honors <Limit> sections on its SITE commands. 2010-10-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Telnet.pm: Fix the Telnet tests to be skipped properly, without compilation error, if the Net::Telnet module isn't installed. 2010-10-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Telnet.pm, tests/t/telnet.t, tests/tests.pl: Add regression test for the Telnet IAC handling bug (Bug#3521). 2010-10-29 castaglia <castaglia> * NEWS, src/netio.c: Bug#3521 - Telnet IAC processing stack overflow. 2010-10-27 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_core.c, src/dirtree.c, src/display.c, src/response.c: Bug#3520 - MultilineRFC2228 directive should be supported in <VirtualHost> and <Global> sections. 2010-10-27 castaglia <castaglia> * tests/t/config/multilinerfc2228.t, tests/t/lib/ProFTPD/Tests/Config/MultilineRFC2228.pm, tests/tests.pl: Adding unit tests for the MultilineRFC2228 directive. 2010-10-24 castaglia <castaglia> * lib/pr_fnmatch_loop.c: Try to avoid more non-gcc compiler unhappiness. 2010-10-24 castaglia <castaglia> * lib/pr_fnmatch.c: Try to make non-gcc compilers happier by providing a __builtin_expect macro definition for them. 2010-10-23 castaglia <castaglia> * include/compat.h: Make sure to have a compatibility macro for the renamed is_fnmatch() function. 2010-10-23 castaglia <castaglia> * tests/api/netacl.c: Updated unit tests for NetACL parsing changes. 2010-10-23 castaglia <castaglia> * include/dirtree.h, include/str.h, src/dirtree.c, src/str.c, tests/api/str.c: Move the is_fnmatch() function into the str.c source file, and rename it to pr_str_is_fnmatch(), making it part of the public API. Added unit tests for its behavior as well. 2010-10-22 castaglia <castaglia> * NEWS, contrib/mod_site_misc.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Bug#3519 - Inappropriate directory traversal allowed by mod_site_misc. 2010-10-21 castaglia <castaglia> * doc/contrib/mod_site_misc.html: Update mod_site_misc docs for new SiteMiscEngine directive. 2010-10-21 castaglia <castaglia> * NEWS, contrib/mod_site_misc.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Bug#3518 - Support SiteMiscEngine directive, for disabling mod_site_misc functionality via proftpd.conf. 2010-10-20 castaglia <castaglia> * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Avoid this compiler warning: warning: shadowing built-in function 'mempcpy' by prefixing our provided mempcpy(3) name with underscores. Whee. 2010-10-20 castaglia <castaglia> * contrib/mod_quotatab.c: Clear the "have update" flag in a few more places, just to be sure. 2010-10-20 castaglia <castaglia> * contrib/mod_quotatab.c: Make sure the "have update" flag is cleared properly for DELEs; related to Bug#3517. 2010-10-20 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3517 - mod_quotatab decrements file tally improperly for failed DELE commands. 2010-10-20 castaglia <castaglia> * doc/contrib/mod_sftp.html: Mention the space-avaiable SFTP extension in the SFTPExtensions doc. 2010-10-20 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/mod_sftp.c: Bug#3516 - Support the "space-available" SFTP extension. 2010-10-20 castaglia <castaglia> * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Fix compilation of the newly-updated fnmatch implementation on non-GNU systems (i.e. systems which may not have the mempcpy(3) function). 2010-10-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm: Updated unit test for Bug#3484. 2010-10-19 castaglia <castaglia> * src/modules.c: When unloading a module, try to remove as many callbacks that the module may have registered as possible. 2010-10-19 castaglia <castaglia> * NEWS, src/netacl.c, src/netaddr.c: Bug#3484 - Support range expressions for IP addresses in Allow/Deny/From rules. 2010-10-19 castaglia <castaglia> * RELEASE_NOTES: Mention the upgrade of the bundled fnmatch implementation in the release notes. 2010-10-19 castaglia <castaglia> * include/libsupp.h, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Updating the bundled fnmatch implementation to that from glibc-2.9. This is needed to properly support range expressions, a la Bug#3484. Strange that this hasn't been noticed before. Hopefully this upgrade doesn't break any existing configs. 2010-10-18 castaglia <castaglia> * NEWS: Updating NEWS for Bug#3514. 2010-10-18 castaglia <castaglia> * tests/tests.pl: More residue from Bug#3514. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Child.pm: Strange that these didn't get checked in, as part of Bug#3514. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Forgot to check this in; it's part of Bug#3514. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AccessDenyMsg.pm, tests/t/lib/ProFTPD/Tests/Config/AccessGrantMsg.pm, tests/t/lib/ProFTPD/Tests/Config/AllowOverwrite.pm, tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm, tests/t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm, tests/t/lib/ProFTPD/Tests/Config/AuthAliasOnly.pm, tests/t/lib/ProFTPD/Tests/Config/AuthGroupFile.pm, tests/t/lib/ProFTPD/Tests/Config/AuthOrder.pm, tests/t/lib/ProFTPD/Tests/Config/AuthUsingAlias.pm, tests/t/lib/ProFTPD/Tests/Config/Classes.pm, tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm, tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm, tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm, tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayQuit.pm, tests/t/lib/ProFTPD/Tests/Config/GroupOwner.pm, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm, tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm, tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm, tests/t/lib/ProFTPD/Tests/Config/HideUser.pm, tests/t/lib/ProFTPD/Tests/Config/MaxClients.pm, tests/t/lib/ProFTPD/Tests/Config/MaxInstances.pm, tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm, tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/Order.pm, tests/t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm, tests/t/lib/ProFTPD/Tests/Config/RequireValidShell.pm, tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm, tests/t/lib/ProFTPD/Tests/Config/ServerAdmin.pm, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm, tests/t/lib/ProFTPD/Tests/Config/StoreUniquePrefix.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutSession.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm, tests/t/lib/ProFTPD/Tests/Config/Trace.pm, tests/t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm, tests/t/lib/ProFTPD/Tests/Config/UseGlobbing.pm, tests/t/lib/ProFTPD/Tests/Config/UserAlias.pm, tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm, tests/t/lib/ProFTPD/Tests/Config/UserPassword.pm: Update tests to use base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/MFMT.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/OPTS.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/RMD.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/XMKD.pm: Updating tests to use base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm, tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm, tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Merging.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Updating tests to use base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm, tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/HELP.pm, tests/t/lib/ProFTPD/Tests/Commands/HOST.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MFF.pm, tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASS.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STAT.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm: Updating tests to use base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_ifversion.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_radius.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_shaper.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_unique_id.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Updating tests to use the base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Updating tests to use base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Updating test to use the base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/ABRT.pm, tests/t/lib/ProFTPD/Tests/Signals/HUP.pm, tests/t/lib/ProFTPD/Tests/Signals/SEGV.pm, tests/t/lib/ProFTPD/Tests/Signals/TERM.pm: Updating tests to use the base set_up() and tear_down() methods. 2010-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3514 - Test suite tmpdir improvements. 2010-10-16 castaglia <castaglia> * modules/mod_delay.c: Use LONG_MAX as the delay ceiling. 2010-10-16 castaglia <castaglia> * contrib/mod_sftp/channel.c: Remove now-unused variable, and avoid a verbose compiler warning. 2010-10-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for an SFTP upload which exceeds a mod_quotatab limit; make sure that mod_sftp sends the proper error code and message. 2010-10-16 castaglia <castaglia> * contrib/mod_quotatab.c: When handling upload errors in mod_quotatab, try not to delete the bytes of files that were being appended to. That is, only account for transfer differences if the number of transfer bytes is greater than zero, lest we penalize users inadvertently. 2010-10-15 castaglia <castaglia> * contrib/mod_sftp/channel.c: Avoid compiler warning about returning a pointer (NULL, specifically) from a function which expects to return an unsigned int. 2010-10-15 jwm <jwm> * README.LDAP: update from latest mod_ldap bzr 2010-10-15 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r106: 2.9.0 looks ready to go mod_ldap bzr r105: - check LDAPSearchScope value at config parse time - support base scope 2010-10-14 jwm <jwm> * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm: round out the parts of mod_ldap we can test without our own slapd instance 2010-10-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Handle quota-related errno values in the OPEN request handler. 2010-10-14 castaglia <castaglia> * contrib/mod_quotatab.c: Make sure that the STOR and APPE handlers set errno appropriately, when the quota are reached. 2010-10-07 castaglia <castaglia> * NEWS, modules/mod_cap.c: Bug#3513 - EPERM error logged unnecessarily for SFTP logins on Linux. 2010-10-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit tests for "TLSOptions dNSNameRequired", and for combining the various cert checks via "TLSOptions iPAddressRequired dNSNameRequired CommonNameRequired". 2010-10-06 castaglia <castaglia> * doc/contrib/mod_tls.html: Document the newly added (Bug#3512) CommonNameRequired TLSOption. 2010-10-06 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3512 - Add ability to check client certificate CommonName (CN) when verifying SSL/TLS clients. 2010-10-06 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES, tests/t/etc/modules/mod_tls/client-cert-localhost.pem: Add a cert with a 'localhost' CN and DNS subjAltName value. Update the notes with how to create this cert. 2010-09-29 castaglia <castaglia> * NEWS, contrib/mod_sql_sqlite.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3511 - SQLAuthType Backend not properly rejected by mod_sql_sqlite. 2010-09-28 jwm <jwm> * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm: honor $allow_auth in ldap_auth() test 2010-09-28 castaglia <castaglia> * RELEASE_NOTES: Make sure to mention the new NoErrorIfAbsent ListOption, from Bug#3506, in the release notes. 2010-09-28 castaglia <castaglia> * NEWS, modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Bug#3506 - Support ListOption for returning 226 response code when listing nonexistent file, instead of 450. 2010-09-24 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the mod_sftp docs to note that all SFTPOptions must appear on the same line. 2010-09-20 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Doc typos (missing line breaks). 2010-09-17 castaglia <castaglia> * doc/contrib/mod_tls.html: Try to make it clear that all TLSOptions used must appear on the same line in the config file, rather than being spread out over multiple TLSOptions. 2010-09-17 castaglia <castaglia> * contrib/mod_tls.c: Minor tweaks to the log message about the NoSessionUseRequired TLSOptions parameter. 2010-09-16 castaglia <castaglia> * modules/mod_delay.c: Make the maximum selected delay be 1 hour. It's long, yes -- but still prevents the multiple days/years selection which one user was seeing. 2010-09-16 castaglia <castaglia> * modules/mod_delay.c: Add some guards to mod_delay, to try to curb overly excessive delays. First, initialize the delay value records to use values of -1, and then make sure that such negative values are skipped when building the list of values from which to select the median. Check that the selected median is greater than or equal to zero before using it. Last, add an absolute limit on the selected delay; currently set to 15 minutes. 2010-09-15 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sftp.html: Add docs for the new SFTPClientAlive directive. 2010-09-15 castaglia <castaglia> * NEWS, contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3505 - Support for SSH2 client "alive" checks, a la OpenSSH's ClientAliveCount/Interval. 2010-09-14 castaglia <castaglia> * modules/mod_delay.c: Adding yet more trace logging to mod_delay. 2010-09-14 castaglia <castaglia> * modules/mod_delay.c: Adding more trace logging to mod_delay. 2010-09-14 castaglia <castaglia> * modules/mod_delay.c: Add a little more trace logging to mod_delay, in order to track down a segfault that I suspect is originating in there. Also fix up the trace logging so that errno is not trampled as often (leads to more accurate log messages). 2010-09-13 castaglia <castaglia> * src/mkhome.c: Add support for trace logging of some of the CreateHome workings. 2010-09-10 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3390 - Add extra %-variable to LogFormat directive to log UID/GID of logged user. 2010-09-08 castaglia <castaglia> * contrib/mod_sftp/kex.c: Fixing marking of DH_GEX_INIT command class to be AUTH. 2010-09-08 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_sftp/scp.c, contrib/mod_tls.c: Fix the getopt() resetting logic for HPUX11. 2010-09-07 castaglia <castaglia> * modules/mod_auth.c: Forgot to allocate space for another pointer in the CreateHome config_rec. 2010-09-07 castaglia <castaglia> * configure: Updated configure. 2010-09-07 castaglia <castaglia> * contrib/mod_sftp/msg.c: Only try to log stacktraces in mod_sftp if we have the backtrace(3) and backtrace_symbols(3) functions available. 2010-09-07 castaglia <castaglia> * config.h.in, configure.in: Add explicitly autoconf checks for the backtrace(3) and backtrace_symbols(3) functions, to better guard against situations where autoconf might find the execinfo.h header, but not the corresponding functions (e.g. on FreeBSD). 2010-09-07 castaglia <castaglia> * configure: Updated configure. 2010-09-07 castaglia <castaglia> * configure.in: When the --enable-devel=stacktrace option is used, check for the libexecinfo library. This library is used on FreeBSD to provide the backtrace(3) function. 2010-09-03 castaglia <castaglia> * doc/howto/CreateHome.html: Updated the CreateHome howto to describe the new 'homegid' parameter. 2010-09-03 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/mkhome.c, tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3503 - Support CreateHome parameter for specifying the group ownership of the home directory. 2010-09-02 castaglia <castaglia> * NEWS, src/parser.c, tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm: Bug#3502 - Support environment variables better in the config file. 2010-09-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add some regression tests showing that SFTP uploads/downloads, with compression enabled, are handled properly. 2010-09-01 castaglia <castaglia> * src/data.c: Given the possible confusion that the fixes for Bug#3135 and Bug#3487 may have, log when the data connection has disappeared in the debug logging, in addition to the trace logging. 2010-08-31 jwm <jwm> * tests/tests.pl: get verbose output from Test::Harness, too 2010-08-31 jwm <jwm> * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm, tests/t/modules/mod_ldap.t: start mod_ldap test suite 2010-08-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Adding more regression tests for the commands involved in Bug#3487. 2010-08-31 castaglia <castaglia> * include/conf.h: When compiling on AIX, if the _NO_PROTO macro is defined, make sure we provide a prototype for lseek(2). We were doing this already for AIX4; we need to provide this prototype for AIX5 in such build situations as well. 2010-08-30 castaglia <castaglia> * NEWS, src/auth.c: Bug#3501 - <Anonymous> logins with "AuthAliasOnly on" still handled as anonymous logins. 2010-08-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AuthAliasOnly.pm: Regression/reproduction tests for Bug#3501. 2010-08-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Missing testcase tag. 2010-08-26 jwm <jwm> * contrib/mod_ldap.c: sync with mod_ldap bzr r104: remove LDAPQuotas in favor of using the LDAPUsers configuration don't see a point in configuring quota lookups separately, since the quota attrs should be on the user entry itself. if ldap quota lookups should be disabled, "ldap:" can be removed QuotaLimitTable. this seems to cut down on duplicate configuration and hopefully continues the trend of making mod_ldap easier to configure. 2010-08-18 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r103: fix handling of LDAPGroups directive 2010-08-17 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r102: - overhaul configuration directives, hopefully yielding a more straightforward, easier way to configure mod_ldap. The on/off booleans on these directives have been removed. Now, if the directive is present, the corresponding functionality will be enabled. LDAPDoAuth, LDAPDoUIDLookups -> LDAPUsers The third argument to LDAPDoUIDLookups (the UID filter template) is now the third argument to LDAPUsers. LDAPDoGIDLookups -> LDAPGroups LDAPDoQuotaLookups -> LDAPQuotas - remove local verification of password hashes with OpenSSL; 'LDAPAuthBinds on' should do exactly the same thing in a more secure and standard way. - remove deprecated LDAPNegativeCache and LDAPUseSSL directives - add group members to debug output - comment, log/debug message sync - minor logic cleanup - style improvements 2010-08-14 castaglia <castaglia> * src/main.c: Generate a 'core.shutdown' event when the daemon is shutting down. Currently, a 'core.exit' event is generated when the daemon shuts down. However, this event is also used to indicate when a session is closing; this forces modules to register two different event handlers for the same event name, depending on the context. It is far cleaner (and less bug-prone) to have two distinct events for the two different types of "end of processing" behavior. Gradually, the generation of the 'core.exit' event at daemon shutdown time will be phased out. 2010-08-14 castaglia <castaglia> * include/ctrls.h, src/ctrls.c: Make sure that pr_ctrls_unregister(&module, NULL) unregisters all of the actions for the given module. Previously, this would return EINVAL. 2010-08-13 castaglia <castaglia> * contrib/mod_sftp/fxp.c, modules/mod_xfer.c: Avoid spurious warnings like: error adding 'mod_xfer.file-modified' note: File exists by ensuring that that note is not in the table before adding it. 2010-08-11 castaglia <castaglia> * include/timers.h, src/timers.c, tests/api/timers.c: Enhance the semantics of pr_timer_remove() such that it can be used to remove all timers registered for a module by providing a timerno argument that is less than zero. 2010-08-10 castaglia <castaglia> * RELEASE_NOTES: Updated release notes. 2010-08-10 castaglia <castaglia> * doc/contrib/ftpmail.html: Update the ftpmail doc with mention of the new --auth command-line option. 2010-08-10 castaglia <castaglia> * NEWS, contrib/ftpmail: Bug#3495 - Support SMTP authentication in the ftpmail Perl script. 2010-08-10 castaglia <castaglia> * doc/modules/mod_lang.html: Start on a FAQ section for the mod_lang docs. 2010-08-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Remove development cruft. 2010-08-09 castaglia <castaglia> * NEWS, src/data.c, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Bug#3496 - Sessions don't end when the control connection is closed during a data transfer. 2010-08-09 castaglia <castaglia> * contrib/mod_rewrite.c: Fix harmless misspelling. 2010-08-06 castaglia <castaglia> * contrib/mod_sftp/packet.c: Explicitly configure the packet sequence number at which to do SSH2 rekeying, rather than relying on platform/compiler to Do The Right Thing(tm). 2010-08-05 castaglia <castaglia> * NEWS, src/netaddr.c: Bug#3494 - Null pointer dereference for IPv6-enabled proftpd when no DefaultServer configured. Fix the pr_netaddr_is_loopback() function to properly handle IPv4-mapped IPv6 addresses. 2010-08-04 castaglia <castaglia> * src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Additional fix, and regression test, for Bug#3491. 2010-08-04 castaglia <castaglia> * tests/t/config/limit/login.t, tests/t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm, tests/tests.pl: Add my regression/unit tests for Bug#3484 to CVS, so that they don't get lost in the shuffle. 2010-08-03 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r101 release 2.8.23 2010-08-03 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/authorized_rsa_subj_keys: Forgot modified RFC4716 formatted key with a Subject header, for the regression tests for Bug#3493. 2010-08-03 castaglia <castaglia> * doc/contrib/mod_sftp.html: Updating SFTPOptions doc to mention new MatchKeySubject value, added for Bug#3493. 2010-08-02 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/rfc4716.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3493 - mod_sftp should only expect Subject key header to match if explicitly configured. 2010-08-01 castaglia <castaglia> * NEWS, src/data.c, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Bug#3492 - NULL pointer dereference during data transfer due to RNFR/RNTO. 2010-07-29 castaglia <castaglia> * NEWS, src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Bug#3491 - Directory pattern not matching as expected. 2010-07-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: More feature tests for mod_wrap2, based on questions from the online forums. 2010-07-27 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3482 - ProFTPD corrupts utmpx log files on FreeBSD 9.0/HEAD. 2010-07-23 castaglia <castaglia> * NEWS: Typo. 2010-07-21 castaglia <castaglia> * contrib/mod_sftp/interop.c: Quell compiler warning about possibly using an uninitialized value. 2010-07-20 castaglia <castaglia> * NEWS, modules/mod_ls.c, src/data.c, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm: Bug#3487 - Null pointer dereference with EPRT/EPSV/PASV/PORT command during data transfer. 2010-07-20 castaglia <castaglia> * locale/bg_BG.po, locale/en_US.po, locale/fr_FR.po, locale/it_IT.po, locale/ja_JP.po, locale/ko_KR.po, locale/proftpd.pot, locale/ru_RU.po, locale/zh_CN.po, locale/zh_TW.po: Fixing 'data tranfer' -> 'data transfer' typo in the localized files. 2010-07-20 castaglia <castaglia> * NEWS: Typo. 2010-07-20 castaglia <castaglia> * src/data.c: Fix typo. 2010-07-16 castaglia <castaglia> * NEWS, src/main.c: Bug#3485 - Disabling IPv6 via -4 or --ipv4 command-line options does not work. 2010-07-15 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3483 - NULL pointer dereference handlig SITE command in mod_quotatab. 2010-07-15 castaglia <castaglia> * src/netacl.c: Correct the name used in a trace message: if we're comparing DNS names, then log the DNS name (rather than the IP address). 2010-07-13 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Document the just-added 'ftpdctl debug level' feature. 2010-07-13 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Make it possible to use 'ftpdctl debug level' to query the currently set DebugLevel of the running daemon. 2010-07-08 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3481 - Problem with SFTP directory listings. 2010-07-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression tests for mod_sftp's scanner/probe checks. 2010-07-05 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the new OldProtocolCompat SFTPOption for Bug#3480. 2010-07-05 castaglia <castaglia> * NEWS, contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in: Bug#3480 - mod_sftp does not interoperate with old ssh.com/Tectia clients. 2010-07-03 castaglia <castaglia> * include/proftpd.h: Try to avoid possible symbol collisions with the enclosing scope when using the PR_DEVEL_CLOCK macro by using less common (but still legible) variable names in the macro. 2010-07-03 castaglia <castaglia> * include/proftpd.h: Avoid datatype overflows by using the various timer macros, particularly timersub(). Tools which want to compare numbers can do the conversion of secs to usecs themselves. 2010-07-03 castaglia <castaglia> * include/proftpd.h, src/main.c, src/scoreboard.c: Start sprinkling the new PR_DEVEL_CLOCK macro throughout the code. Right now, I'm analysing connection times, and what places in the connection acception code path take the most time. Partly this stems from investigations into solutions/approaches for Bug#3208, although the numbers are leading me to read papers of select(2) performance, and thinking about using alternative notification mechanisms e.g. poll(2) or libevent. 2010-07-03 castaglia <castaglia> * configure: Updated configure. 2010-07-03 castaglia <castaglia> * configure.in, include/proftpd.h: Adding a macro that's useful for clocking a function call, in microseconds. I'm using it quite a bit for load/performance tests. To use the macro, use --enable-devel=timing. 2010-07-03 castaglia <castaglia> * modules/mod_core.c, src/main.c: Fix the errno reported for setrlimit(2) errors. Transparently handle better the case where RLimitOpenFiles is used with only a single numeric parameter. 2010-07-03 castaglia <castaglia> * doc/contrib/mod_exec.html: Mention the newly added %A variable in the mod_exec docs. 2010-07-03 castaglia <castaglia> * NEWS, contrib/mod_exec.c, tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Bug#3479 - Support anonymous username variable in mod_exec. 2010-06-30 castaglia <castaglia> * tests/t/config/authorder.t, tests/t/lib/ProFTPD/Tests/Config/AuthOrder.pm, tests/tests.pl: Add some regression tests for the AuthOrder directive. 2010-06-30 castaglia <castaglia> * src/auth.c: Set the module pointer for authoritative responses; previously this would only be set for non-authoritative responses. Add trace logging of when the response from an auth module is treated as authoritative, for faster debugging. 2010-06-30 castaglia <castaglia> * modules/mod_core.c: Stylistic nits; no functional change. 2010-06-29 castaglia <castaglia> * tests/t/etc/modules/mod_tls/ca-cert.pem, tests/t/etc/modules/mod_tls/client-cert.pem, tests/t/etc/modules/mod_tls/server-cert.pem: Adding new SSL certs for the mod_tls regression tests; these certs should be good for 10 years. 2010-06-29 castaglia <castaglia> * tests/t/etc/modules/mod_tls/NOTES: Reminder notes to myself for generating the CRL and PKCS12 files. 2010-06-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update the mod_tls regression tests to deal with changes in a newer Net::FTPSSL module. 2010-06-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifversion.pm, tests/t/modules/mod_ifversion.t, tests/tests.pl: Adding regression tests for mod_ifversion. 2010-06-29 castaglia <castaglia> * NEWS, RELEASE_NOTES, doc/contrib/index.html: Mention the new mod_ifversion module. 2010-06-29 castaglia <castaglia> * contrib/mod_ifversion.c, doc/contrib/mod_ifversion.html: Adding mod_ifversion to the contrib/ modules area. 2010-06-28 castaglia <castaglia> * RELEASE_NOTES: Minor formatting tweaks. 2010-06-28 castaglia <castaglia> * RELEASE_NOTES: Start fleshing out the RELEASE_NOTES and preparing for a release. 2010-06-28 jwm <jwm> * contrib/mod_ldap.c: revert r1.83 in favor of mod_ldap bzr r98 we shouldn't let user lookup failure prevent us from looking up any supplemental groups. this is primarily so mod_ldap can be used to look up group membership even when the user wasn't authenticated with mod_ldap. this feels like a corner use-case, but i don't see a compelling reason we shouldn't support it since the change to prevent the segfault in this case is straightforward. 2010-06-28 jwm <jwm> * contrib/mod_ldap.c: revert r1.82 in favor of mod_ldap bzr r97 decline requests for ssh pubkeys if we're not configured to do auth. since pubkeys are always looked up on user entries under the auth base dn, i don't see a reason to allow a NULL filter template, either. 2010-06-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Adding regression tests showing that logging to a full filesystem doesn't cause undue problems for proftpd's handling of a session. 2010-06-25 castaglia <castaglia> * tests/Makefile.in: Make sure that we actually run the API testsuite after compiling it. Just compiling it, and not running it, is not so useful. 2010-06-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Accidentally overloaded a function name. Oops. 2010-06-24 castaglia <castaglia> * contrib/mod_sftp_sql.c: Make the log messages a little clearer when mod_sftp_sql can't base64-decode the key data. Also, try handling the retrieved key data as being in the RFC4716 format first, then fallback to trying it as raw key data. It is far more likely that the data will be in the RFC4716 format. 2010-06-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Add regression test which shows that even RFC4716 keys with headers that use the line continuation character are handled properly by mod_sftp_sql. 2010-06-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm: Remove yet more debugging cruft. 2010-06-23 castaglia <castaglia> * tests/t/config/anonrejectpasswords.t, tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm, tests/tests.pl: Add regression test for the AnonRejectPasswords directive. 2010-06-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm: Remove debugging cruft. 2010-06-23 castaglia <castaglia> * tests/t/config/anonrequirepassword.t, tests/t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm, tests/tests.pl: Add regression tests for the AnonRequirePassword directive. 2010-06-23 castaglia <castaglia> * NEWS, contrib/mod_sql_sqlite.c: Bug#3474 - Using SQLite database and SQLLog directive can lead to problems under load. To handle contention/synchronization among multiple processes attempting to update the same table, we need to handle SQLITE_BUSY for BEGIN, query, COMMIT statements separately. And to make sure that even SELECTs are enclosed with explicit BEGIN/COMMIT calls. 2010-06-23 castaglia <castaglia> * doc/modules/mod_auth_unix.html: Start on a doc just for mod_auth_unix; we needed a place to document the AuthUnixOptions values. 2010-06-22 castaglia <castaglia> * configure: Updated configure. 2010-06-22 castaglia <castaglia> * modules/mod_auth_unix.c: Forgot to update copyright dates on the modified file. 2010-06-22 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#3475 - Add new 'noGetgrouplist' AuthUnixOption to work around buggy libc code. 2010-06-22 castaglia <castaglia> * configure.in: Back out the added --disable-getgrouplist configure option; Bug#3475 is going to be addressed a different way, with a runtime configuration directive. 2010-06-22 castaglia <castaglia> * src/auth.c: Make sure that if pr_auth_cache_set() is used to enable/disable auth caching, the configured setting is actually honored. Previously this function only enabled/disabled caching _before_ any cache tables had been allocated. 2010-06-22 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3476 - LIST/NLST of path starting with "-" fails. 2010-06-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Adding reproduction recipes/regression tests for Bug#3476. 2010-06-22 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add FAQ about "line too long" authorized key errors. 2010-06-22 castaglia <castaglia> * contrib/mod_wrap2_sql.c: Additional fixes for Bug#3471. 2010-06-22 castaglia <castaglia> * configure: Updated configure. 2010-06-22 castaglia <castaglia> * configure.in: Add a --disable-getgrouplist configure option, to disable use of the getgrouplist(3) function, hopefully working around Bug#3475. 2010-06-21 castaglia <castaglia> * src/main.c: If the RLimitCPU directive (or other CPU resource limit) causes the kernel to send SIGXCPU to us, and proftpd has been compiled with --enable-devel=stacktrace, then log the stacktrace of what the CPU-exceeding process was doing at the time of the signal. This can help to track down badly behaving loops in the code. 2010-06-21 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add SFTP FAQ about using Tectia/ssh.com host keys with mod_sftp. 2010-06-21 castaglia <castaglia> * doc/contrib/mod_sftp.html: Make it clearer in the mod_sftp docs that the modules does not support shell access. 2010-06-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm: Add reproduction recipe for Bug#3398 to the suite. The recipe passes using the current code, but it's good to have the recipe here for regressions. 2010-06-21 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/authorized_rsa16384_keys, tests/t/etc/modules/mod_sftp/test_rsa16384_key, tests/t/etc/modules/mod_sftp/test_rsa16384_key.pub, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add SFTP publickey authentication test using 16384-bit RSA key. 2010-06-20 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Fix the "busy loop" mod_sql_sqlite logging; we were logging the wrong variable for the error message. Oops. 2010-06-20 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Add logging of when mod_sql_sqlite retries a query due to SQLITE_BUSY. Hopefully this will help shed light on why some users are seeing nested transaction errors. 2010-06-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Add regression test for Bug#3283. 2010-06-20 castaglia <castaglia> * NEWS, contrib/mod_sql.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3395 - Provide LogFormat variable %d for non-directory commands. 2010-06-19 castaglia <castaglia> * doc/howto/ListOptions.html: Include the new options (-c, -u) from Bug#3396 in the ListOptions howto. 2010-06-19 castaglia <castaglia> * NEWS, modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Bug#3396 - Support -c and -u LIST options. 2010-06-19 castaglia <castaglia> * contrib/mod_ldap.c: Make the pr_ldap_search() function have file scope, just like the other pr_ldap_*() functions. This quells a compiler warning seen when the --enable-devel configure option is used. 2010-06-19 castaglia <castaglia> * NEWS, contrib/mod_ldap.c: Bug#3424 - Bad LDAP lookup can cause mod_ldap segfault under some conditions. Handle a NULL result from pr_ldap_getpwnam() in the handle_ldap_getgroups() function. 2010-06-19 castaglia <castaglia> * contrib/mod_ldap.c: Quell compiler warning about an uninitialized pointer. 2010-06-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Add regression test (and correct configuration) for Bug#3166. 2010-06-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for hostbased SSH2 authentication. 2010-06-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add mod_sftp regression tests for Bug#3472. 2010-06-17 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/authorized_dsa2048_keys, tests/t/etc/modules/mod_sftp/authorized_dsa4096_keys, tests/t/etc/modules/mod_sftp/authorized_dsa8192_keys, tests/t/etc/modules/mod_sftp/authorized_rsa4096_keys, tests/t/etc/modules/mod_sftp/authorized_rsa8192_keys, tests/t/etc/modules/mod_sftp/test_dsa2048_key, tests/t/etc/modules/mod_sftp/test_dsa2048_key.pub, tests/t/etc/modules/mod_sftp/test_dsa4096_key, tests/t/etc/modules/mod_sftp/test_dsa4096_key.pub, tests/t/etc/modules/mod_sftp/test_dsa8192_key, tests/t/etc/modules/mod_sftp/test_dsa8192_key.pub, tests/t/etc/modules/mod_sftp/test_rsa4096_key, tests/t/etc/modules/mod_sftp/test_rsa4096_key.pub, tests/t/etc/modules/mod_sftp/test_rsa8192_key, tests/t/etc/modules/mod_sftp/test_rsa8192_key.pub: Adding more RSA and DSA keys of increasing sizes, for the mod_sftp regression tests. 2010-06-17 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth-publickey.c: Bug#3472 - mod_sftp publickey authentication fails for large keys. 2010-06-17 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3471 - Null values in allow/deny rules causes mod_wrap2 to segfault. 2010-06-15 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#3467 - mod_ifsession does not merge <Directory> blocks properly. 2010-06-15 castaglia <castaglia> * NEWS, src/support.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3469 - ExtendedLog's %f variable not properly expanded for DELE if path begins with tilde ('~'). 2010-06-15 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Use pr_fs_interpolate() rather than dir_interpolate(); the former is more verbose about its results, and the latter is too easy to misuse (i.e. too easy to not check for a NULL return value). 2010-06-15 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3470 - Deferred resolution <Directory> paths not handled properly by mod_sftp. 2010-06-14 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3465 - SIGSEGV at LIST after CCC. 2010-06-14 castaglia <castaglia> * src/main.c: Do not call table_handle_signal(FALSE) when handling SIGSEGV/SIGBUS in a stacktrace-enabled build; doing so will prevent proftpd from properly logging the stacktrace. 2010-06-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: More regression tests for Bug#3467. 2010-06-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Add regression test for Bug#3467. 2010-06-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add regression test for Bug#3465. 2010-06-11 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#3466 - mod_ifsession does not check for properly closed <IfUser> contexts. 2010-06-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Add an <IfGroup> test. 2010-05-27 castaglia <castaglia> * NEWS, contrib/ftpasswd: Bug#3463 - ftpasswd script's --delete-group option does not work. 2010-05-27 castaglia <castaglia> * NEWS, contrib/ftpasswd: Bug#3462 - ftpasswd script's --delete-user option does not work. 2010-05-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Update mod_sftp .ftpaccess unit test to check for regressions of Bug#3460. 2010-05-25 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3460 - REALPATH SFTP request can cause improperly cached directory configuration. 2010-05-25 castaglia <castaglia> * contrib/mod_sftp/fxp.c: I'm not sure why the path stashed for an OPENDIR request was being deliberately set to the empty string; remove it. If it's an issue, it'll come up again. 2010-05-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm: Add more DefaultChdir tests. 2010-05-25 castaglia <castaglia> * tests/t/config/defaultchdir.t, tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm, tests/tests.pl: Start on regression tests for the DefaultChdir config directive. 2010-05-25 castaglia <castaglia> * NEWS, src/auth.c: Bug#3431 - Ensure that timezone info files are opened prior to chroot. 2010-05-25 castaglia <castaglia> * contrib/mod_tls.c: Switch from using tls_log() to pr_log_debug() in the tls_init_ctx() function; the TLSLog file hasn't been opened when that function is called, which means that the log messages are effectively being lost. 2010-05-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test involving .ftpaccess files for mod_sftp; I'm trying to reproduce an issue that a mod_sftp user is having with this test, but not having much luck at the moment. Still, it's a useful test to have in the repertoire. 2010-05-24 castaglia <castaglia> * contrib/mod_sftp/msg.c: In order to help track down cases where the allocated buffer sizes are not large enough to handle some of the messages that mod_sftp will handle, add logging of stack traces (assuming the platform has the execinfo.h header and the --enable-devel configure option has been used, to prevent stripping of the symbols from the installed executable). 2010-05-24 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3459 - mod_radius segfaults during incorrect login due to stale data. 2010-05-24 castaglia <castaglia> * contrib/mod_radius.c: Quell compiler warnings about unused strtoul(3) return values. 2010-05-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Add unit test for SQL lookups of SSH2 keys using a query that uses the %u variable. 2010-05-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add a couple more SQL-related configuration tests to the mod_sftp suite. 2010-05-18 castaglia <castaglia> * NEWS, contrib/mod_sftp/crypto.c: Bug#3458 - mod_sftp incorrectly performs OpenSSL cleanup. 2010-05-18 castaglia <castaglia> * tests/t/config/maxclients.t, tests/t/lib/ProFTPD/Tests/Config/MaxClients.pm, tests/tests.pl: Start adding regression/feature tests for the MaxClients directive. 2010-05-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression tests for uploading/downloading empty dirs via SCP. 2010-05-06 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3456 - Problem attempting to recursively download a directory via SCP. 2010-05-06 castaglia <castaglia> * contrib/mod_sftp/channel.c: Minor nit about the proper plurality in a trace message. 2010-05-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c, modules/mod_log.c, modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3457 - Support LogFormat variable for indicating whether a file is being modified. 2010-05-05 castaglia <castaglia> * include/support.h, src/support.c: Missed some spots in the exists() functions where the path string should also be constified. 2010-05-05 castaglia <castaglia> * include/support.h, src/support.c: Constify the arguments the *exists() functions. 2010-05-04 castaglia <castaglia> * NEWS, locale/Makefile.in: Bug#3454 - msgfmt(1) options used for generating NLS files are not compatible with Solaris' msgfmt. 2010-05-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make sure that mod_sftp honors AllowStoreRestart and <Limit APPE> configurations properly, when the O_APPEND flag is used in an OPEN request. 2010-05-02 castaglia <castaglia> * modules/mod_xfer.c: Log, at debug level 8, if an APPE command is blocked because of a <Limit> configuration. 2010-05-01 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make a note about better reporting of incomplete uploads, where possible. 2010-04-29 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Undo the 'vendor-id' extension-related changes I made earlier today; it was correct already. I confused myself as to how the 'vendor-id' extension works. This time, I'm leaving comments to my future self about why it's correct the way it is. 2010-04-29 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Minor cleanup of trace logging regarding the 'vendor-id' extension. Guard against a client sending a 'vendor-id' EXTENDED request, even if we didn't advertise support for that extension. 2010-04-29 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3452 - mod_sftp does not advertise its supported SFTP extensions for protocol version 5. I read through the WinSCP source code to find out how it parsed the badly-defined extensions field of the "supported" extension, in the protocol version 5 draft. The "supported2" extension, for protocol version 6, is at least nice enough to have a separate field of the extensions count, where the older "supported" does not. Whee. 2010-04-28 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3451 - WinSCP can't upload files using protocol version 5 with mod_sftp. 2010-04-28 castaglia <castaglia> * src/main.c: Stylistic changes; no functional changes. 2010-04-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression tests for the various O_* flags that can be sent using SFTP protocol version 3 in OPEN requests. Caught one bug a priori. 2010-04-28 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3450 - mod_sftp does not properly handle the O_APPEND flag in a SFTP OPEN request. 2010-04-27 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add trace logging, at trace level 15 and higher, of the OPEN flags as strings. Hopefully this can be used to figure out why WinSCP, when requesting SFTP protocol version 5, doesn't like how mod_sftp handles an OPEN request. 2010-04-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test for Bug#3425. 2010-04-27 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Correct a comment. 2010-04-27 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3449 - mod_sftp does not properly handle the O_TRUNC flag in a SFTP OPEN request. 2010-04-27 castaglia <castaglia> * NEWS: Bug#3448 - Ensure that STAT/LSTAT/FSTAT SFTP requests do not use cached/stale data. 2010-04-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Remove debugging cruft. 2010-04-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test for Bug#3447. I wasn't able to actually reproduce the issue with this unit test, but having the code around is useful. 2010-04-26 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3447 - mod_sftp can become confused during large recursive SCP uploads. 2010-04-25 castaglia <castaglia> * contrib/mod_shaper.c: Add trace logging, using the "lock" trace channel, of mod_shaper's locking of its ShaperTable. 2010-04-25 castaglia <castaglia> * contrib/mod_sftp/scp.c: Leave a note to myself to investigate whether <Limit MKD> should apply to recursive directory uploads via SCP. Probably yes. 2010-04-25 castaglia <castaglia> * contrib/mod_sftp/scp.c: Remove unused strlen(3) call. 2010-04-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Add unit test for CreateHome's skel parameter. 2010-04-23 castaglia <castaglia> * src/dirtree.c: Use updated patch for Bug#3446. 2010-04-23 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3446 - .ftpaccess ignored in some cases. The build_dyn_config() function, if given a non-directory path, was not properly determining the .ftpaccess file to check for, using that path. 2010-04-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Merging.pm: Add regression tests for Bug#3446. The fix for this bug has not yet been committed to CVS, so these tests should fail...but I wanted to add them, so that I could work on more flows that use the same configuration as these tests from home. 2010-04-22 castaglia <castaglia> * doc/howto/Limit.html: Add an example of blocking renames. 2010-04-21 castaglia <castaglia> * doc/contrib/mod_sftp.html: Typo. 2010-04-21 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add a "Known Client Issues" section to the mod_sftp docs. 2010-04-20 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Fix bug in the fix for Bug#3444 that was committed yesterday. 2010-04-20 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3443 - Deprecate the DisplayGoAway directive. 2010-04-20 castaglia <castaglia> * NEWS: Make sure the NEWS file tracks the correct bug title for Bug#3445. 2010-04-20 castaglia <castaglia> * doc/contrib/mod_sftp.html: While I'll keep the 'pessimisticNewkeys' SFTPClientMatch parameter supported in the code, I think I'll leave it out of the docs. I really don't expect there to be many SSH clients that need this config option; at some point, I should be able to remove support for it from mod_sftp. 2010-04-20 castaglia <castaglia> * contrib/mod_sftp/kex.c: Update the copyright date for this file. 2010-04-20 castaglia <castaglia> * NEWS, contrib/mod_sftp/interop.c, contrib/mod_sftp/interop.h, contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c: Bug#3445 - Support SFTPClientMatch option to enable pessimistic NEWKEYS behavior. This changes the default behavior, such that mod_sftp always sends its NEWKEYS message to the client before reading the client's NEWKEYS message; this matches the OpenSSH behavior (and is what many clients want). The SFTPClientMatch option added previously for this bug was changed to 'pessimisticNewkeys', to be used if there are any clients which expect the old mod_sftp behavior. 2010-04-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure the statcache is cleared when handling STAT/FSTAT/LSTAT requests. 2010-04-19 castaglia <castaglia> * NEWS, contrib/mod_sftp/interop.c, contrib/mod_sftp/interop.h, contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c, doc/contrib/mod_sftp.html: Bug#3445 - Need SFTPClientMatch option to enable optimistic NEWKEYS behavior. 2010-04-19 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in: Update copyright date in the header, since we've modified the file this year. 2010-04-19 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, doc/contrib/mod_sftp.html: Bug#3444 - Support SFTPOptions parameter to disable optimistic KEXINIT behavior. 2010-04-19 castaglia <castaglia> * doc/howto/Logging.html: Add Logging FAQ about logging xferlog data to syslog. 2010-04-18 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/encode.c: More notes to myself regarding possible encoding failures and their causes. 2010-04-17 castaglia <castaglia> * tests/t/config/serveradmin.t, tests/t/lib/ProFTPD/Tests/Config/ServerAdmin.pm, tests/tests.pl: Add regression tests for the ServerAdmin directive. 2010-04-17 castaglia <castaglia> * doc/howto/DisplayFiles.html: As pointed out in Bug#3443, the DisplayGoAway directive hasn't worked for quite some time. So remove it from the DisplayFiles howto. 2010-04-17 castaglia <castaglia> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm: When handling a "DisplayChdir <path> true" configuration, a time_t was being stored in the memory space for a void pointer. This is not a safe operation. Instead, allocate proper space for the time_t value and use it. Add a regression test for this DisplayChdir configuration, providing that the time_t storage change still works properly. 2010-04-17 castaglia <castaglia> * tests/t/config/displaychdir.t, tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm, tests/tests.pl: Added regression tests for DisplayChdir, and updated DisplayLogin tests, both as part of Bug#3423. 2010-04-17 castaglia <castaglia> * modules/mod_core.c, src/display.c: Additional fixes for Bug#3423, handling single line DisplayLogin and DisplayChdir files, and multiline DisplayChdir files. 2010-04-17 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3440 - ScanOnLogin QuotaOption not honored properly if tally record has to be created. 2010-04-16 castaglia <castaglia> * contrib/mod_radius.c, contrib/mod_rewrite.c, contrib/mod_sftp/scp.c, contrib/mod_sql.c, modules/mod_log.c, modules/mod_ls.c, src/dirtree.c, src/display.c, src/event.c, src/throttle.c: Sprinkle more calls to pr_signals_handle() in potentially long-running loops. 2010-04-16 castaglia <castaglia> * modules/mod_ls.c: Coding style nits; no functional change. 2010-04-16 castaglia <castaglia> * doc/howto/Logging.html: Mention the configure option for Bug#3436 in the Logging howto's section on FIFOs. 2010-04-14 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c, tests/t/config/limit/opts.t, tests/t/lib/ProFTPD/Tests/Config/Limit/OPTS.pm, tests/tests.pl: Bug#3438 - <Limit> configuration cannot be applied to OPTS command. 2010-04-14 castaglia <castaglia> * NEWS, src/encode.c: Bug#3439 - Encoding fails if an NLS-enabled proftpd starts in a UTF8 locale. 2010-04-14 castaglia <castaglia> * src/main.c: Stylistic nit. 2010-04-14 castaglia <castaglia> * contrib/mod_tls.c: Make sure that the SSL/TLS renegotiation timer gets a dynamic timer ID. This isn't causing any problems, per se, but having a timer ID of zero when it is not intended can lead to confusion and/or issues later. 2010-04-14 castaglia <castaglia> * contrib/mod_sftp/scp.c: Silly typos in comment; no functional change. 2010-04-13 castaglia <castaglia> * NEWS, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3437 - UseImplicitSSL TLSOption causes PBSZ/PROT commands to fail. 2010-04-13 castaglia <castaglia> * configure: Updated configure for Bug#3436. 2010-04-13 castaglia <castaglia> * NEWS, config.h.in, configure.in, src/log.c: Bug#3436 - Support build-time option to disable use of nonblocking open of log files. 2010-04-13 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/encode.c: Remove unused variables, and quell compiler warnings about "incompatible pointer types" on FreeBSD. 2010-04-13 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/encode.c: Notes to myself to double-check (and then rely on) the loop condition for the iconv(3) loop. 2010-04-13 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/encode.c: Additional part of fix for Bug#3435. 2010-04-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/utf8.c, src/encode.c: Bug#3435 - Encoding/decoding conversion can cause CPU spike. 2010-04-12 castaglia <castaglia> * contrib/mod_sftp/utf8.c, src/encode.c: Make sure we reset any state contained in iconv_t before calling iconv(3). 2010-04-12 castaglia <castaglia> * contrib/mod_sftp/display.c: An SFTPDisplayBanner file can only be displayed at the start of session, prior to the transfer of any data. So there's no need to support Display variables such as %o, %K, etc; their values will always be zero. 2010-04-12 castaglia <castaglia> * src/trace.c: Prevent a recurrence of Bug#3434 by treating a trace message level of zero as an invalid parameter. 2010-04-12 castaglia <castaglia> * src/fsio.c: Include the number of bytes being read/written in the trace messages for the read()/write() callbacks. 2010-04-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/Makefile.in, contrib/mod_sftp/auth.c, contrib/mod_sftp/display.c, contrib/mod_sftp/display.h: Bug#3433 - SFTPDisplayBanner does not handle variables in configured file. This isn't the best implementation, since the Display code from the core proftpd engine is basically copied here. It would be better if the core code and this code shared the same code path for looking up and interpolating variables; that's work for later. 2010-04-12 castaglia <castaglia> * NEWS, modules/mod_xfer.c, src/fsio.c: Bug#3434 - TraceLog contains messages even with "Trace DEFAULT:0" configured. 2010-04-12 castaglia <castaglia> * NEWS, contrib/mod_exec.c, tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Bug#3432 - ExecBeforeCommand does not interpolate the %F/%f variables properly. 2010-04-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3427 - mod_sftp does not handle recursive SCP uploads properly. 2010-04-12 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add mod_sftp FAQ about UserOwner/GroupOwner, and the need to use the RootRevoke directive. 2010-04-12 castaglia <castaglia> * NEWS, contrib/mod_sftp/Makefile.in, contrib/mod_sftp/auth.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/misc.c, contrib/mod_sftp/misc.h, contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3429 - mod_sftp should honor the UserOwner and GroupOwner directives. 2010-04-11 castaglia <castaglia> * modules/mod_xfer.c: Minor style nits in stor_chown(); no functional changes. 2010-04-11 castaglia <castaglia> * doc/howto/Tracing.html: Add a FAQ/example to the Tracing howto describing how to use Trace in mod_ifsession sections. 2010-04-11 castaglia <castaglia> * NEWS, modules/mod_core.c, tests/t/config/trace.t, tests/t/lib/ProFTPD/Tests/Config/Trace.pm, tests/tests.pl: Bug#3428 - Honor the Trace directive in mod_ifsession sections. Unit/regression tests for this feature have also been added to the testsuite. 2010-04-09 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3425 - Improperly constructed destination paths for SCP uploads. 2010-04-09 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c: Bug#3426 - mod_sftp does not log to TransferLog by default. 2010-04-09 castaglia <castaglia> * contrib/mod_sftp/scp.c: Cache errno in a few more places, so that the proper error is reported. 2010-04-09 castaglia <castaglia> * src/main.c: Automatically log stacktraces for a SIGBUS signal, just as we do for a SIGSEGV signal, if --enable-devel=stacktrace has been used to configure proftpd. 2010-04-08 castaglia <castaglia> * src/mkhome.c: Stylistic cleanup/changes; no functional changes. 2010-04-08 castaglia <castaglia> * doc/howto/CreateHome.html: Typo. 2010-04-07 castaglia <castaglia> * modules/mod_core.c: With the fix for Bug#3423, the adding a trailing blank line to the DisplayQuit message is no longer necessary. 2010-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm: Update the DisplayLogin regression test to match the current behavior, as per changes for Bug#3423. 2010-04-07 castaglia <castaglia> * NEWS, include/display.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/display.c, src/main.c: Bug#3423 - Last line of multiline DisplayLogin file improperly handled. 2010-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_unique_id.pm: And update the last few places in the testsuite where we should be using a timeout of 30 secs when reading from a data connection. 2010-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Merging.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Use a timeout of 30 secs when reading from data connections, to avoid spurious testsuite errors. 2010-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm, tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm, tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm, tests/t/lib/ProFTPD/Tests/Config/HideUser.pm, tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm, tests/t/lib/ProFTPD/Tests/Config/UseGlobbing.pm: Use a timeout of 30 secs when reading from a data connection; this avoids spurious testsuite errors. 2010-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: When reading from a data connection, use a timeout of 30 secs; this helps prevent/avoid spurious testsuite errors. 2010-04-07 castaglia <castaglia> * src/main.c: Add trace logging of when the response chains are flushed during the command dispatch cycle. 2010-04-05 castaglia <castaglia> * utils/ftpcount.c: Fix a pedantic memory leak spotted by cppcheck. Also fixes the code style in a few places. 2010-04-05 castaglia <castaglia> * contrib/mod_sftp/mac.c: Scrub the key memory area before freeing it. 2010-04-05 castaglia <castaglia> * contrib/mod_sftp/mac.c: Running cppcheck found a memory leak where we aren't freeing up malloc()'d memory on MAC errors. 2010-04-05 castaglia <castaglia> * contrib/mod_sftp_pam.c: Add note about whether mod_sftp_pam should pay closer attention to the list of modules configured via AuthOrder or not. 2010-04-04 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in: Add more explanation about the assumptions involved in registering an 'exec' channel handler. 2010-04-04 castaglia <castaglia> * contrib/mod_sftp/channel.c: Add more trace logging around the searching and invoking of registered 'exec' channel handlers. 2010-04-03 castaglia <castaglia> * src/main.c: Make sure that premature SIGALRMs don't kill us; we want to ignore SIGALRM unless we've registered a timer. 2010-04-02 castaglia <castaglia> * doc/contrib/mod_sftp_pam.html: Update the mod_sftp_pam doc to mention that mod_sftp_pam is enabled by default, not disabled. 2010-04-02 castaglia <castaglia> * modules/mod_lang.c: Log the reason why the LANG command is denied after a client has authenticated. 2010-04-01 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3419 - SSL_shutdown() errors with openssl-0.9.8m. 2010-03-31 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the mod_sftp doc, removing DirFakeUser/DirFakeGroup from the list of unsupported features. 2010-03-31 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3413 - Support DirFakeUser, DirFakeGroup for SFTP connections. 2010-03-31 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3421 - RewriteHome does not work properly for SFTP connections. The mod_sftp authentication code was inadvertently calling pr_auth_get_home() twice, albeit indirectly, which would lead to incorrectly (or more accurately, "unexpectedly") rewritten home directories when the RewriteHome feature is used. 2010-03-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add regression test for Bug#3420. 2010-03-30 castaglia <castaglia> * modules/mod_log.c: The third argument to pr_table_get() is a pointer (i.e. NULL), not a boolean. In this particular case, since we were passing FALSE (i.e. zero, which is effectively the same as null), we're OK. But pedantic compilers might complain about this. 2010-03-30 castaglia <castaglia> * NEWS, src/table.c: Bug#3418 - %U sometimes showing up as "(none)" in ExtendedLog. When removing an entry from the linked list "chain" in a table, the table code was improperly setting the head of the chain to the removed entry's next pointer (e->next) when it shouldn't have been. In this case, the removed entry was the last of two entries in the list; its removal was causing the head of the chain to be set to null. 2010-03-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Removing extraneous mod_deflate test file; updating tests for new location as part of normal testsuite. 2010-03-25 castaglia <castaglia> * NEWS, utils/ftpcount.c, utils/ftpscrub.c, utils/ftptop.c, utils/ftpwho.c, utils/misc.c, utils/utils.h: Bug#3417 - Unsafe use of pointer when scanning config for ScoreboardFile. 2010-03-22 castaglia <castaglia> * src/scoreboard.c: Make sure we don't leak an fd when scrubbing the scoreboard and we fail to lock the entire scoreboard. 2010-03-19 castaglia <castaglia> * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Configure libmemcached to cache DNS lookups, and to always use the binary protocol (unless explicitly configured not to). Make it possible to configure replication, and disable the use of the binary protocol. 2010-03-19 castaglia <castaglia> * doc/howto/DisplayFiles.html: Add a FAQ about Display files whose names contain spaces. 2010-03-19 castaglia <castaglia> * src/memcache.c: Make sure that memcache support compiles with older versions of libmemcached. Specifically, that it will build using libmemcached-0.31, which is the version provided by Debian packages. 2010-03-18 castaglia <castaglia> * NEWS, contrib/mod_dynmasq.c: Bug#3411 - Support ftpdctl action to manually request a mod_dynmasq refresh. 2010-03-17 castaglia <castaglia> * NEWS, modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Bug#3318 - MLSD should indicate symlinks if ShowSymlinks is enabled. 2010-03-15 castaglia <castaglia> * doc/contrib/mod_sftp.html: Another mod_sftp FAQ. 2010-03-14 castaglia <castaglia> * src/wtmp.c: Forgot to update the copyright date on this file. 2010-03-14 castaglia <castaglia> * NEWS, src/wtmp.c: Bug#3409 - Build failure on newer FreeBSD due to utmp/utmpx system changes. 2010-03-14 castaglia <castaglia> * modules/mod_memcache.c: Use cmd_rec->pool, not cmd_rec->tmp_pool, in a configuration handler. The tmp_pool member isn't populated during parsing. 2010-03-14 castaglia <castaglia> * modules/mod_memcache.c: Instead of parsing the MemcacheServers string for every session, do it only during parsing. The downside to this is that we now need to be sure to free up the memory allocated with the structures by libmemcached upon every restart, lest we get a restart-bound memory leak. 2010-03-14 castaglia <castaglia> * include/memcache.h: Fix some pesky compiler warnings about shadowed 'pool' declarations. 2010-03-13 castaglia <castaglia> * contrib/mod_tls.c: If SSL_shutdown() returns WANT_READ/WANT_WRITE, don't handle it as a fatal error. It's new behavior in OpenSSL-0.9.8m, but won't cause problems when older OpenSSL versions are used if we catch and handle these errors as benign. 2010-03-12 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3412 - Include files not included after restart due to permissions. 2010-03-12 castaglia <castaglia> * configure: Updated configure. 2010-03-12 castaglia <castaglia> * Make.rules.in, config.h.in, configure.in, include/conf.h, include/memcache.h, modules/mod_memcache.c, src/main.c, src/memcache.c: Initial work on memcache support. Since this is experiement/new code, you must explicitly request it via the --enable-memcache configure option. 2010-03-11 castaglia <castaglia> * contrib/mod_deflate.c: Missing break statements. 2010-03-10 castaglia <castaglia> * contrib/mod_copy.c: Updated mod_copy to reflect the xferlog_write() changes. 2010-03-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm, tests/t/modules/mod_copy.t, tests/tests.pl: Added unit/regression tests for mod_copy. 2010-03-10 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_copy.c, doc/contrib/mod_copy.html: Added mod_copy to the contrib modules area. 2010-03-10 castaglia <castaglia> * modules/mod_core.c, src/data.c: Fix some of the fallout from Bug#2196: data transfers were failing when the server socket was IPv6 and we converted the client from an IPv4-mapped IPv6 address to a plain IPv4 address -- this caused discrepancies in the families of the sockets opened for data transfers. 2010-03-10 castaglia <castaglia> * include/netaddr.h, src/inet.c, src/netaddr.c: The pr_netaddr_v4tov6() function was named incorrectly: it should be pr_netaddr_v6tov4(). And now it is. 2010-03-10 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3371 - Group limits in <LIMIT LOGIN> blocks won't work with RADIUS-supplied groups. 2010-03-10 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3373 - RadiusGroupInfo should not require that both names and IDs be VSAs. 2010-03-10 castaglia <castaglia> * doc/contrib/mod_ban.html: Update mod_ban docs to include mention of new -s command-line option for ban/permit ftpdctl actions. 2010-03-10 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c, include/xferlog.h, modules/mod_core.c, modules/mod_xfer.c, src/xferlog.c: Change the xferlog_write() function so that it takes an additional argument: the "special action flags" string to write into the TransferLog entry. This will make it possible to set 'C' and/or 'T' where appropriate (e.g. when mod_deflate and/or mod_tar are in effect). Updated the relevant callers as needed. 2010-03-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm, tests/t/modules/mod_deflate.t, tests/tests.pl: Adding unit/regression tests for mod_deflate. 2010-03-10 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_deflate.c, doc/contrib/mod_deflate.html: Adding mod_deflate to the contrib module area. 2010-03-10 castaglia <castaglia> * contrib/mod_sql.c: There's no reason for the caches used by mod_sql to be visible outside of that file. 2010-03-10 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3374 - TLSVerifyClient and TLSOptions NoCertRequest are incompatible. 2010-03-10 castaglia <castaglia> * modules/mod_core.c, src/data.c: Make sure that the setting of socket options on a passive data connection socket occur before the call to listen(2), not after. 2010-03-10 castaglia <castaglia> * src/inet.c: Removed development/debug logging. 2010-03-09 castaglia <castaglia> * configure: Updated configure. 2010-03-09 castaglia <castaglia> * configure.in: Bug33410: Fix build regression caused by changes for Bug#2768. Specifically, the $libdir autoconf variable was inadvertently reused for the mysql_config checking; this variable is later used for determining the installation location of the proftpd.pc file. 2010-03-09 castaglia <castaglia> * contrib/mod_ctrls_admin.c, contrib/mod_qos.c, include/bindings.h, include/compat.h, include/dirtree.h, include/inet.h, modules/mod_core.c, modules/mod_ident.c, src/bindings.c, src/data.c, src/dirtree.c, src/inet.c, src/main.c: Removed the unused server_list argument from pr_inet_create_conn() and friends. This also obseleted the backward-compatibilty macros for these functions. Made the get_listening_conn() function in src/bindings.c public, so that the mod_ctrls_admin module could properly use it when enabling/disabling vhosts. Added generation of events whenever proftpd opens sockets; the socket fd and its associated pr_netaddr_t and server_rec are provided as event data. With this, the mod_qos module is now properly able to set QoS options on a socket _before_ any listen(2) or connect(2) call on that socket, i.e. before any TCP handshakes occur on that socket. This should hopefully make the setting of QoS values (cf Bug#3353) work properly. 2010-03-09 castaglia <castaglia> * src/inet.c: Use the proper socket option level consistently when setting the TCP_NODELAY option. 2010-03-08 castaglia <castaglia> * configure: Updated configure. 2010-03-08 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/conf.h: Bug#3408 - Use <termios.h> instead of <sys/termios.h> where possible. 2010-03-08 castaglia <castaglia> * configure: Updated configure. 2010-03-08 castaglia <castaglia> * NEWS, configure.in: Bug#2768 - Provide --with-mysql-config/--with-postgres-config build options. 2010-03-08 castaglia <castaglia> * NEWS, modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Bug#3407 - Use glob characters as literal characters if no glob match found for LIST/NLST. 2010-03-08 castaglia <castaglia> * NEWS, include/netaddr.h, src/inet.c, src/netaddr.c: Bug#2196 - Handle IPv4-mapped IPv6 addresses as IPv4 addresses. 2010-03-06 castaglia <castaglia> * src/fsio.c: Minor tweak needed so that FSIO modules work properly (i.e. have their callbacks used properly) on CWD commands with paths which do not contain a '/' character. 2010-03-06 castaglia <castaglia> * src/stash.c: Remove some development/testing cruft. 2010-03-06 castaglia <castaglia> * tests/Makefile.in, tests/api/modules.c, tests/api/stash.c, tests/api/tests.c, tests/api/tests.h: Updated API tests to reflect changed location of stash code. 2010-03-06 castaglia <castaglia> * Make.rules.in, include/conf.h, include/modules.h, include/stash.h, src/modules.c, src/stash.c: Separate out the symbol table lookup code from the modules.c file and place it in its own stash.c file. This will make it easier to tweak the symbol table lookups without unnecessary code churn in the module-handling code. 2010-03-06 castaglia <castaglia> * src/modules.c: Removed unused/dead callback typedef. 2010-03-05 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3393 - Specify the <VirtualHost> when using 'ban' or 'permit' ftpdctl actions. 2010-03-05 castaglia <castaglia> * src/parser.c: The default "server config" server_rec gets SID 1 in init_config(); this means that the SIDs assigned to vhosts in the parser need to start after 1, not after 0. This was causing the "server config" and the first <VirtualHost> server_recs to both have a SID of 1. 2010-03-04 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3392 - Display <VirtualHost> information in 'ban info' ftpdctl action response. 2010-03-04 castaglia <castaglia> * contrib/mod_sftp/channel.c: Add a little more trace logging to the handling of SSH2 channel data. 2010-03-04 castaglia <castaglia> * contrib/mod_sftp/msg.c: Initialize these variables pedantically. 2010-03-04 castaglia <castaglia> * contrib/mod_sftp/msg.c: Log data lengths as unsigned longs for size_t, not unsigned ints. 2010-03-04 castaglia <castaglia> * doc/contrib/mod_qos.html: Adding documentation for mod_qos (Bug#3353). 2010-03-04 castaglia <castaglia> * README.modules, RELEASE_NOTES: Update docs with mention of mod_qos. 2010-03-04 castaglia <castaglia> * NEWS, contrib/mod_qos.c, include/dirtree.h, include/inet.h, src/data.c, src/dirtree.c, src/inet.c, src/main.c: Bug#3353 - Support setting IPTOS/DSCP markings on data and control streams. 2010-03-04 castaglia <castaglia> * tests/api/scoreboard.c, tests/api/str.c: Update failing scoreboard API test. Add new sreplace API test. 2010-03-04 castaglia <castaglia> * src/str.c: Make sure that sreplace() never returns a pointer to a buffer on the stack. This would rarely have happened anyway, but not it's not possible. This involved setting a maximum limit (8K) on the size of the buffer that sreplace() would return. Anything that needs a larger buffer than that can handle its own replacement/interpolation. 2010-03-04 castaglia <castaglia> * include/netaddr.h, src/netaddr.c: Fix the pr_netaddr_get_addrno() function (infrequently used) to return an explicit uint32_t, and fix up the error return values. Not that the one caller (in mod_radius) actually checks for these. 2010-03-04 castaglia <castaglia> * src/dirtree.c: Avoid compiler warning about uninitialized variable. 2010-03-04 castaglia <castaglia> * modules/mod_core.c: Avoid compiler warning about unitialized variable. 2010-03-04 castaglia <castaglia> * src/throttle.c: Remove an unused variable. 2010-03-03 castaglia <castaglia> * contrib/mod_quotatab_file.c, contrib/mod_sftp/rfc4716.c, contrib/mod_shaper.c, modules/mod_delay.c, src/scoreboard.c, utils/scoreboard.c: Check the lseek(2) return value in more places. 2010-03-03 castaglia <castaglia> * include/options.h: 4K for an environ variable value might be a bit excessive; let's use 2K. 2010-03-03 castaglia <castaglia> * include/options.h, src/env.c, src/proctitle.c: Set a limit on the maximum length of environment variable values. 2010-03-03 castaglia <castaglia> * NEWS, src/fsio.c, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Bug#3354 - Renaming a file across mount points to a full disk does not fail as expected. 2010-03-03 castaglia <castaglia> * NEWS, src/log.c: Bug#3404 - SyslogLevel not applied to SystemLog. 2010-03-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#3405 - Multiple SFTPAuthorizedUserKeys stores causes segfault on 64-bit platforms. 2010-03-03 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Fix the handling of errno such that the proper error is logged when we fail to open a file-based authorized keys file. 2010-03-02 castaglia <castaglia> * doc/contrib/mod_sftp_sql.html: Update the mod_sftp_sql doc to mention where to find the latest version. 2010-03-02 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3339 - Support ban rule for clients which login too frequently. 2010-03-02 castaglia <castaglia> * NEWS, locale/Makefile.in, locale/ja_JP.po: Bug#3400 - Add Japanese translation. 2010-03-02 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3403 - File upload followed by MLSD leads to wrong file size entries in TransferLog. 2010-03-02 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3402 - mod_tls does not compile with pre-0.9.7 OpenSSL due to Bug#3349. 2010-03-02 castaglia <castaglia> * NEWS, contrib/mod_sftp/crypto.c: Bug#3401 - mod_sftp does not compile with pre-0.9.7 OpenSSL. 2010-02-28 jwm <jwm> * contrib/mod_ldap.c: revno: 96 message: emit quota parsing debugging output before parsing, since strsep() modifies the passed string ------------------------------------------------------------ revno: 94 message: - ssh pubkey support was broken, since nothing was setting ldap_ssh_pubkey_{basedn,filter}. use ldap_auth_{basedn,filter} instead, since it seems reasonable to keep pubkeys on the account that's authenticating. - add support for multiple pubkeys for a user - always initialize cached_ssh_pubkeys in pr_ldap_ssh_pubkey_lookup(), since we're only called if we don't have any pubkeys cached or need ot explicitly fetch pubkeys for a different user 2010-02-25 castaglia <castaglia> * contrib/mod_tls.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_facts.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c: Mark HELP strings for translation/localisation. 2010-02-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/MFMT.pm: Remove development cruft. 2010-02-25 castaglia <castaglia> * doc/howto/Versioning.html: Fix typo, update example. 2010-02-24 castaglia <castaglia> * NEWS, modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Bug#3302 - MLST response should include full path name. 2010-02-24 castaglia <castaglia> * contrib/mod_site_misc.c, modules/mod_facts.c: Forgot to update the copyright years on the files that I modified. It's a bit pedantic, but it's a habit I try to keep. 2010-02-24 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3365 - First certificate in TLSCertificateChainFile is skipped. 2010-02-24 castaglia <castaglia> * NEWS, contrib/mod_site_misc.c, modules/mod_facts.c, tests/t/config/limit/mfmt.t, tests/t/lib/ProFTPD/Tests/Config/Limit/MFMT.pm, tests/tests.pl: Bug#3399 - <Limit> statement does not restore access to MFMT commands. 2010-02-24 castaglia <castaglia> * doc/contrib/index.html: Updated index of contrib module docs. 2010-02-24 castaglia <castaglia> * include/version.h: Updated for CVS. 2010-02-24 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2010-02-24 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.3.3-stable. 2010-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Quell Perl interpreter warnings about redeclared variables. 2010-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Quell some Perl interpreter warnings about redeclared variables. 2010-02-24 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Quell Perl interpreter warning about "useless use of private variable in void context". 2010-02-23 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Bug#3397 - HideFiles none does not work properly on a per-user basis. 2010-02-23 castaglia <castaglia> * modules/mod_ls.c: Make sure that the pluralization of "paths" matches the count displayed in the log message. 2010-02-22 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3389 - Cannot create mod_ban whitelists using <Class> and <IfClass> sections. 2010-02-22 castaglia <castaglia> * src/bindings.c: If "SocketBindTight on" is in effect, then the fix for Bug#3306 would cause problems for non-IPv6-enabled builds. The fix for Bug#3306 was not making a proper deep copy of the pr_netaddr_t object for its linked list; the shallow copy (just a pointer) would later point to memory whose contents had changed. This lead to a getnameinfo(3) failure (EAI_FAMILY, specifically), the attempt to create a new listening socket, and a collision with an existing socket. The solution to this is simple: make a deep copy. 2010-02-21 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Support use of FIFOs as SFTPAuthorized{Host,User}Keys files. 2010-02-21 castaglia <castaglia> * src/inet.c: Log if getsockname(2) returns an error. 2010-02-21 castaglia <castaglia> * src/dirtree.c: Handle an edge case/regression from Bug#3337. 2010-02-19 castaglia <castaglia> * contrib/mod_tls.c: Slightly better logging of SSL session reuse for data connections. 2010-02-19 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Fix another compiler warning (this one specific to the pedantically stupid idiosyncrasis of gcc-4.4) in mod_sftp, per Bug#3394. 2010-02-19 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix some of the compiler warnings mentioned in Bug#3394. 2010-02-17 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Rather than log (and ignore) any badly formatted version exchange strings from clients, log the client-sent string and then disconnect the client. This is what OpenSSH does, and it's a more draconian and more efficient way of dealing with such ill-behaved clients. 2010-02-17 castaglia <castaglia> * doc/howto/Limit.html: Add blocking of STAT to "blind directory" example, per Bug#3391. 2010-02-15 castaglia <castaglia> * doc/howto/SQL.html: Add SQL FAQ about encrypting the connections between mod_sql and the backend database server. 2010-02-15 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make sure that mod_sftp can handle clients which don't send properly formatted protocol version strings, as well as clients which do not send the proper protocol version string within a configured TimeoutLogin period. 2010-02-15 castaglia <castaglia> * configure: Updated configure. 2010-02-15 castaglia <castaglia> * configure.in: The various library directories need to be included in the `proftpd -V' output as well. 2010-02-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add regression test for using %S in SQLNamedQuery statements in combination with a SQLLog ERR_* configuration. 2010-02-14 castaglia <castaglia> * src/table.c, tests/api/table.c: When using a pr_table_t allocated with the USE_CACHE flag (none are, currently), the pr_table_get()/pr_table_kget() functions would incorrectly return the previously looked up entry, every time, instead of iterating properly to the next entry in the linked list. 2010-02-14 castaglia <castaglia> * src/modules.c: Comment corrections. 2010-02-13 castaglia <castaglia> * include/version.h: Updated version for CVS. 2010-02-13 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2010-02-13 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Updates for the 1.3.3rc4 release. 2010-02-13 castaglia <castaglia> * RELEASE_NOTES: Preparing release notes for another RC. 2010-02-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm: Add unit test for an <Anonymous> login which uses a <Limit LOGIN> rule based on a DSN name (hint: "UseReverseDNS on" is required for the rule to work as expected). 2010-02-11 castaglia <castaglia> * src/dirtree.c: Minor code style cleanup, no functional change. 2010-02-11 castaglia <castaglia> * src/netacl.c: More trace logging of comparison of netacls. 2010-02-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression tests for uploading and downloading zero-length files via SFTP and SCP. 2010-02-10 castaglia <castaglia> * contrib/mod_sftp/keys.c: Fix an issue in mod_sftp where, similar to in mod_tls, a file descriptor on a key file can be opened during SIGHUP where the fd is 0, 1, or 2. This causes problems because the prompt-related fd fiddling changes these fds to deal with input from the admin. The fix, as in mod_tls, is to use pr_fsio_get_usable_fd() to get an fd value that isn't one of the big three for that key file. 2010-02-10 castaglia <castaglia> * modules/mod_xfer.c: If "UseSendfile off" appears in the config but some other condition prevents the use of sendfile(), it's a little odd to see some other "declining use of sendfile" message in the logs. 2010-02-10 castaglia <castaglia> * include/trace.h, modules/mod_core.c, src/trace.c: Make the default trace channel name of "DEFAULT" a macro, to keep it in sync in the various files which use that string. 2010-02-10 castaglia <castaglia> * modules/mod_core.c: The mod_core module had not been updated to use the "DEFAULT" trace keyword rather than the "ALL" keyword. This keyword should be made into a public macro. 2010-02-10 castaglia <castaglia> * doc/howto/Compiling.html: Slightly better/fuller example. 2010-02-10 castaglia <castaglia> * configure: Updated configure. 2010-02-10 castaglia <castaglia> * configure.in: Expand the list of modules which cannot be built as shared modules; allow some of the core modules to be built as shared modules (e.g. mod_delay, mod_auth_file, mod_ident, mod_auth_pam, etc). 2010-02-10 castaglia <castaglia> * modules/mod_delay.c: Quell compiler warning about unreachable code. Prepare mod_delay for acting properly when compiled as a DSO module. 2010-02-10 castaglia <castaglia> * modules/mod_facl.c: Remove duplicate registration of module unload listener in mod_facl. 2010-02-10 castaglia <castaglia> * doc/howto/Compiling.html: Add FAQ about the "source file './modules/d_auth_pam.c' cannot be found" configure error that is sometimes reported. 2010-02-10 castaglia <castaglia> * contrib/mod_sftp/interop.c, contrib/mod_sftp/interop.h, contrib/mod_sftp/keystore.c, contrib/mod_sftp/keystore.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/rfc4716.c, contrib/mod_sftp/rfc4716.h: Make sure that mod_sftp unregisters callbacks on module unload properly, as well as freeing up any allocated regular expressions on module unload. 2010-02-10 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in, contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c: Provide a wrap2_unregister() API, so that wrap2 submodules can unregister their backends on e.g. module unload. Update the wrap2 submodules to use this new API. 2010-02-10 castaglia <castaglia> * contrib/mod_tls.c: Quell some compiler warnings about unreachable code. 2010-02-10 castaglia <castaglia> * contrib/mod_sql.c: Unregister the registered authtype handlers upon module unload. 2010-02-10 castaglia <castaglia> * contrib/mod_quotatab.c: Set the prev pointer properly when registering a quotatab backend. 2010-02-10 castaglia <castaglia> * contrib/mod_rewrite.c: When mod_rewrite is a DSO module and is being unloaded (as during a restart), free any allocated regexes and prevent a memory leak. 2010-02-10 castaglia <castaglia> * src/bindings.c: When getting a listening connection, handle cases where an IP address string can't be returned for some reason. 2010-02-10 castaglia <castaglia> * NEWS, contrib/mod_ban.c, contrib/mod_dynmasq.c, contrib/mod_shaper.c: Bug#3387 - SIGHUP will eventually cause certain modules (as DSO modules) to segfault. Register timers in the daemon process via a 'core.postparse' listener rather than a 'core.startup' listenver, and remove the registered timers in a 'core.restart' listener. Otherwise, the previous registered timer can point to invalid memory if the registering module is a DSO module; SIGHUPs cause DSO modules to be unloaded/reloaded. 2010-02-09 castaglia <castaglia> * src/timers.c: Paranoid checking for NULL parameters for a trace message in the Timers API. 2010-02-09 castaglia <castaglia> * include/bindings.h, src/bindings.c: Pass the port number to use as an argument to pr_ipbind_create(), rather than assuming that the port in the given server_rec should be used. There are cases where this may not be true (e.g. in mod_autohost's uses). 2010-02-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Handle another case where we weren't checking for a NULL result from calling dir_canonical_vpath() when handling REALPATH requests. 2010-02-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: If there are troubles in resolving the paths given in a SYMLINK request (e.g. because of ENAMETOOLONG), handle the error gracefully rather than segfaulting. 2010-02-08 castaglia <castaglia> * src/fsio.c: More defensive programming: check for cases where lookup_fs_file() returns NULL, and Do The Right Thing(tm). 2010-02-08 castaglia <castaglia> * src/fsio.c: Check for cases where we fail to lookup the FSIO object for a path because of an error like ENAMETOOLONG. Without this, segfaults because of null pointer dereferences would occur. 2010-02-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Handle the case where dir_canonical_path() returns NULL (e.g. for ENAMETOOLONG) in the REMOVE handler in order to prevent null pointer dereference segfault. 2010-02-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Handle cases where dir_canonical_vpath() might return NULL (such as when the input name is too long); without this, a segfault due to null pointer dereference ensues. 2010-02-08 castaglia <castaglia> * src/trace.c: Prevent long trace log lines from trampling each other by truncating and adding a terminating newline properly. 2010-02-08 castaglia <castaglia> * contrib/mod_sftp/packet.c: Make sure we don't try to read in more data than can fit in our packet buffer. 2010-02-07 castaglia <castaglia> * configure: Updated configure. 2010-02-07 castaglia <castaglia> * configure.in: Make sure that compiler optimizations are disabled when --enable-devel is used. 2010-02-07 castaglia <castaglia> * include/support.h, src/support.c: Add a pr_strtime2() function, which allows callers the choice of whether the returned timestamp string is in GMT or in local time; the existing pr_strtime() function is hardcoded to always use local time. 2010-02-06 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Make sure that config_write() can handle Anonymous sections which contain nested Directory or Limit sections. 2010-02-05 castaglia <castaglia> * src/event.c: Include the memory address of the event callback being invoked in the trace message about event handling. 2010-02-04 castaglia <castaglia> * doc/contrib/mod_sftp_sql.html: Update the schema examples for storing SSH keys; include indices in the example schema. 2010-02-04 castaglia <castaglia> * src/pool.c: Make the name of the oom pool walking function be 'oom_printf', just to be very clear. 2010-02-04 castaglia <castaglia> * include/pool.h, src/main.c, src/pool.c: Checking in some handy code I used yesterday to track down a memory leak in mod_sftp. If proftpd is compiled using --enable-devel, AND if it is started using the -n/--nodaemon command-line option, then if an out-of-memory condition is encountered, proftpd will try to dump the memory pool statistics to stderr. This is what showed me where all of the memory was being used in the mod_sftp case. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/channel.c: Undo the previous change regarding the calling of destroy_channel() and the setting of the recvd_close flag. Turns out that the previous arrangement was the way it was for a good reason. Left myself a comment to this effect, so that I'm not tempted to make the same mistake again in the future. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/scp.c: Only handle aborted SCP transfers if there is actually a non-zero count of open file handles when the session is closed. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/channel.c: No need to call destroy_channel() twice. Also be sure to set the recvd_close flag *before* calling send_channel_done(), so that the channel will be properly closed when destroy_channel() is called on it. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/channel.c: Guard against sending CHANNEL_EOF and/or CHANNEL_CLOSE twice. Some clients rightfully treat this as a protocol error. I noticed this when testing scp downloads using OpenSSH, and saw "protocol error: close rcvd twice". 2010-02-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c: Bug#3386 - Downloading via SCP can stall due to rekeying. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/scp.c: Typo. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/scp.c: Add some minor logging of the progress being made on the sending of data for a file via SCP. Fix some cases where even though a file may have been downloaded successfully, the SCP may still have been handled as a failure by mod_sftp because of bad logic. 2010-02-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/channel.c: Bug#3385 - Memory leak during SCP download. 2010-02-04 castaglia <castaglia> * contrib/mod_sftp/scp.c: When we've sent the last chunk of data when downloading via SCP, don't require the client to send one more SSH message. Not sure why that was there. Also, when writing SCP download data, spin on a zero window size *after* the channel data has been written, not before. With these two changes, downloading via SCP a largish (700 MB) file finally worked, without hanging the scp(1) OpenSSH client. 2010-02-03 castaglia <castaglia> * contrib/mod_sftp/tap.c: Make "SFTPTrafficPolicy none" work; it was hanging if that setting had been explicitly configured in the proftpd.conf. Also make "SFTPTrafficPolicy none" override the automatic use of the 'rogaway' policy. This makes it possible to test transfers of data without having the IGNORE messages bloat the data transferred. 2010-02-03 castaglia <castaglia> * src/child.c: If sending a signal to the child/session process fails, log the reason via trace logging. 2010-02-03 castaglia <castaglia> * contrib/mod_sftp/channel.c: When freeing an unclosed channel, log the number of pending bytes that that channel might have. 2010-02-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: We don't want a bare '.' character in these regexes, just the '.' regex pattern meaning "match any character". 2010-02-03 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Quell compiler warnings about unused return values. 2010-02-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Add unit tests where PathDenyFilter is used to prevent names with a single leading (or trailing) space character (or both). 2010-02-03 castaglia <castaglia> * contrib/mod_sftp/keys.c: Quell compiler warnings about unreachable code; no functional change. 2010-02-02 jwm <jwm> * contrib/mod_ldap.c: revno: 93 message: add ssh public key support (for mod_sftp_ldap) from TJ Saunders <tj@castaglia.org> 2010-02-02 jwm <jwm> * contrib/mod_ldap.c: v2.8.22 * Disable the LDAPUseSSL directive, instead logging a warning so existing configurations do not cause ProFTPD startup failure. Previous versions enabled TLS when this directive was enabled. This behavior was incorrect, since the intended behavior was to enable LDAPS/LDAP over SSL. To use LDAPS, specify the ldaps:// protocol in the LDAPServerURL URL(s). If you wish to continue using TLS, you must modify your configuration to specify the ldap:// scheme in the LDAPServerURL URL and add the directive 'LDAPUseTLS on' to your configuration. * Add support for quota profiles. If a user entry doesn't have an ftpQuota attribute, search for the DN contained in the user's ftpQuotaProfileDN attribute (if present) and use the ftpQuota attribute present on that DN. (Bug #2617) * Fix segfaults in debug logging on platforms whose printf() does not gracefully handle NULL string pointers. (Bug #3346) * Escape LDAP filter metacharacters in inserted values when interpolating filter templates. * Emit a debug warning when an LDAP URL is specified without an explicit search scope. * Bug 2922 locks authentication for an account to the same module that fetched the original account information. Remove the kludge wherein "*" is passed to pr_auth_check() if we're doing auth binds to prevent other modules from processing authentication. This has the convenient side effect of making the UserPassword directive work with LDAP-sourced accounts. Bump the required ProFTPD version to 1.3.1rc3. * Emit correct LDAP timeout in debug message, accounting for the default if none was specified. Reported by Nikos Voutsinas <nvoutsin@noc.uoa.gr>. ------------------------------------------------------------ revno: 92 message: nuke unused variable ------------------------------------------------------------ revno: 91 message: release 2.8.22 ------------------------------------------------------------ revno: 90 message: * Add support for quota profiles. If a user entry doesn't have an ftpQuota attribute, search for the DN contained in the user's ftpQuotaProfileDN attribute (if present) and use the ftpQuota attribute present on that DN. (Bug #2617) ------------------------------------------------------------ revno: 89 message: * Fix segfaults in debug logging on platforms whose printf() does not gracefully handle NULL string pointers. (Bug #3346) ------------------------------------------------------------ revno: 88 message: cast ldap_querytimeout_tp.tv_sec to quell a compiler warning ------------------------------------------------------------ revno: 87 message: * Emit correct LDAP timeout in debug message, accounting for the default if none was specified. Reported by Nikos Voutsinas <nvoutsin@noc.uoa.gr>. ------------------------------------------------------------ revno: 86 message: thanks to Bug 2922 (Auth API allows one auth module to authenticate user data provided by a different auth module), we don't need to worry about passing a locked crypted password ("*") to pr_auth_check(), since our authz handler will only be called if we supplied the original user information. as a result, if the UserPassword directive is in effect, we need to avoid doing auth binds and fall through to verifying the crypted password ourselves instead of declining the authz request and letting mod_auth_unix handle it. bump the required proftpd version to 1.3.1rc3, since #2922 was resolved in that version. this seems reasonable, since nobody ought to be running 1.2.10rc2 any more and 1.3.1rc3 has been available for almost 2.5y now. ------------------------------------------------------------ revno: 85 message: add intermediary #ifdefs instead of littering the code with ldap api version- and openldap-specific preprocessor directives ------------------------------------------------------------ revno: 84 message: use a common pr_ldap_search() to avoid duplicate code in *_lookup() ------------------------------------------------------------ revno: 82 message: - cached_quota should be declared static - return PR_HANDLED() in stub LDAPUseSSL config directive handler ------------------------------------------------------------ revno: 81 message: emit a debug warning if the search scope is 'base'. ldap urls default to this scope, and specifying: LDAPServer ldap://127.0.0.1/ has bitten me several times when I forget that the search scope is 'base', not 'sub'. ------------------------------------------------------------ revno: 80 message: re-add a stub for LDAPUseSSL that only logs a notice that it's been removed, so older configurations don't fail to start. [followon to r75] ------------------------------------------------------------ revno: 79 message: quell a discarded-const compiler warning ------------------------------------------------------------ revno: 76 message: only allow ldaps:// url schemes if we have ldap_initialize() ------------------------------------------------------------ revno: 75 message: remove the LDAPUseSSL directive, as it wasn't having the intended effect (enable LDAP over SSL, aka LDAPS). LDAP_OPT_X_TLS_HARD is for having the connection fail hard on TLS errors. afaict, the only way to specify LDAPS connections is by passing a URL with the ldaps:// scheme to ldap_initialize(). ------------------------------------------------------------ revno: 74 message: better debug message when no entries are found for a search ------------------------------------------------------------ revno: 73 message: dunno what i was thinking with the last round of filter interpolation changes, but it was completely wrong. use proftpd's sreplace() instead of doing the string manipulation ourselves, and check pr_ldap_interpolate_filter()'s return value for NULL. ------------------------------------------------------------ revno: 72 escape filter characters mentioned in RFC 2254 2010-02-01 castaglia <castaglia> * doc/contrib/mod_sql.html: In the SQLShowInfo description, mention which section in RFC959 defines the list of acceptable response codes for each FTP command. 2010-02-01 castaglia <castaglia> * RELEASE_NOTES: Update the release notes; it's almost time for release. 2010-02-01 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Updating mod_sql_passwd docs with description of new SQLPasswordUserSalt directive. 2010-02-01 castaglia <castaglia> * NEWS, contrib/mod_sql_passwd.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Bug#3380 - Support user-specific salts in encoded passwords. 2010-02-01 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3381 - RADIUS authentication broken on 64-bit platforms. 2010-01-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit test for downloading an empty file over FTPS, to go with the just-added test for uploading an empty file over FTPS. 2010-01-31 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit test for uploading an empty file via FTPS. Saw a bug report for an FTPS client for such an issue; the reporter wasn't sure whether it was a client or a server issue. This test shows that it isn't an issue with mod_tls. 2010-01-31 castaglia <castaglia> * contrib/mod_sftp/crypto.c, contrib/mod_tls.c: Be paranoid and meticulous, and clean up the state of the OpenSSL RNG when we're the daemon process and we're shutting down. 2010-01-29 castaglia <castaglia> * NEWS, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3383 - ExtendedLog variables for protocol and version not handled properly. 2010-01-29 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add a function for getting the version of the current proftpd (using `proftpd -V'). 2010-01-26 castaglia <castaglia> * src/support.c: Add a counter for signal blocking/unblocking, to handle nested calls. Also added trace logging for signal blocking/unblocking. 2010-01-26 castaglia <castaglia> * src/timers.c: Use proper pluralization in the timer trace messages. 2010-01-26 castaglia <castaglia> * contrib/mod_sql.c: Remove a lot of code duplication in mod_sql's handling of SQLLog directives by refactoring all of that code into a single new process_sqllog() function. 2010-01-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add unit test for a "SQLLog EXIT" configuration. 2010-01-23 castaglia <castaglia> * configure: Update configure. 2010-01-23 castaglia <castaglia> * configure.in, src/main.c: Define a PR_DEVEL_PROFILE macro if the --enable-devel=profile configure option is used. This macro is needed to tell proftpd whether it should use _exit(2) or exit(2) when exiting a session process. The gmon.out profile data file is only written when exit(2) is used; proftpd by default wants to use _exit(2). 2010-01-23 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Make sure that mod_wrap2 honors suffix patterns, as per hosts_access(5), in the table entries as well. 2010-01-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Adding more regression tests for mod_wrap2/mod_wrap2_file. 2010-01-23 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Fix bug where mod_wrap2 would attempt to resolve a table entry like "127.0." as a DNS name. According to the hosts_access(5) man page, an entry which ends in a '.' should be treated as an IP address prefix, and matched as such. 2010-01-23 castaglia <castaglia> * src/netaddr.c: When resolving names to addresses via getaddrinfo(3), give getaddrinfo() the hint that we're only interested in TCP, not UDP. 2010-01-22 castaglia <castaglia> * src/netaddr.c: Make sure that the errno value is preserved in failure cases in pr_netaddr_get_addr(). 2010-01-21 castaglia <castaglia> * doc/howto/Upgrade.html: Update the Upgrade howto to use -d10 rather than -d9; more information is better when testing a version for upgrading. 2010-01-20 castaglia <castaglia> * contrib/mod_ban.c: Removed some unnecessary logging. 2010-01-19 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Bug#3377 - mod_wrap2 attempts to resolve 'ALL' keyword as an IP address. 2010-01-19 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3375 - Minor SIGHUP-based memory leak in mod_tls. 2010-01-19 castaglia <castaglia> * doc/contrib/mod_sftp_sql.html: The mod_sftp_sql module should now be much easier to use; getting your SSH keys into the SQL tables no longer requires the Perl script for extracting just the base64 key data (although the module still supports that, too). 2010-01-19 castaglia <castaglia> * NEWS, contrib/mod_sftp_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Bug#3376 - Handle the full RFC4716 formatted keys in SQL values. 2010-01-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm, tests/t/modules/mod_sftp_sql.t, tests/tests.pl: Add unit tests for mod_sftp_sql. 2010-01-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Fix the mod_wrap2_sql unit tests so that the SQLNamedQuery directives are resolved as expected. Also increase the default TimeoutIdle, to handle running the testsuite on a machine which may take a little longer to resolve DNS names. 2010-01-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Adding unit tests for the mod_wrap2 modules which show that both the file- and sql-based modules can handle multiple rows, each with multiple entries, and with entries that are separated by commas, commas and whitespace, or just whitespace. 2010-01-15 castaglia <castaglia> * contrib/mod_radius.c: Update the copyright dates in mod_radius.c, since the code has changed. 2010-01-15 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#3372 - ProFTPD crashes when retrying a failed login with mod_radius being used. 2010-01-11 castaglia <castaglia> * doc/contrib/mod_sftp_sql.html: Use HTML entity encoding for angle brackets; more browsers like this. 2010-01-11 castaglia <castaglia> * src/scoreboard.c: Minor optimization to the fix for Bug#3370: when scrubbing the ScoreboardFile, call getpgrp() to get the current process group only once, rather than potentially once per entry. The current process group does not change during the lifetime of the scrub. 2010-01-10 castaglia <castaglia> * src/scoreboard.c: Whitespace/coding style change, no functional change. Update the copyright date. 2010-01-10 castaglia <castaglia> * src/scoreboard.c: Use a variable name of 'curr_pgrp', as it is more accurate; we are checking that the process group of the scoreboard entry matches our own process group, not the process group of the daemon. While these should all be the same process group, the value returned by getpgrp(2) is not the parent process group, but the current process group. All part of Bug#3370. 2010-01-10 castaglia <castaglia> * configure: Updated configure. 2010-01-10 castaglia <castaglia> * NEWS, config.h.in, configure.in, contrib/mod_ban.c, contrib/mod_ctrls_admin.c, include/scoreboard.h, src/scoreboard.c: Bug#3370 - Lack of PID protection in ScoreboardFile. 2010-01-08 castaglia <castaglia> * contrib/mod_ban.c: Changed my mind; having the SID reported in the BanLog isn't helpful without knowing which SID maps to which vhost -- and that's more information than can easily fit in a small BanLog log message. 2010-01-08 castaglia <castaglia> * modules/mod_delay.c: Fix a small bug in mod_delay where the POST_CMD_ERR handler for the PASS command was closing the DelayTable. This meant that any future USER/PASS commands sent by the client (say, if the password was entered wrong) would not be tracked in the DelayTable. The same handler is used for both the POST_CMD and POST_CMD_ERR phases of the PASS command; the handler simply needed to close the DelayTable only for the POST_CMD phase. 2010-01-08 castaglia <castaglia> * contrib/mod_ban.c: Report the server ID for a ban entry in the BanLog; it helps differentiate what would otherwise look like duplicates. 2010-01-07 castaglia <castaglia> * contrib/mod_tls.c: When reading in key files, make sure that the fd used is not one of the big three (stdin, stdout, stderr). Under some conditions, the fopen(3) call that was used would return an fd of 2, which would then be overwritten by the fd games played by set_prompt_fds(). OpenSSL, though, used the FILE * returned by fopen(), which still had the old fd -- and the loading of the key would fail "mysteriously", giving an error like "unable to read passphrase: (unknown)". 2010-01-07 castaglia <castaglia> * src/dirtree.c: Fix a rather subtle and nasty bug in proftpd's config directive lookup code. The short version of the bug is that find_config() could possibly return the wrong config_rec. The cause is related to Bug#2535, and the assigning and lookup of the config IDs. When looking up an ID, the string used was not dup'd from the input, which means that the lookup key could change unexpectedly. The rest of this change simply alters the coding style to make future debugging in that section of code easier. 2010-01-06 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Add example of using new 'ftpdctl restart count' functionality. 2010-01-06 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Use 'ftpdctl restart count' now to ask the server, via ftpdctl, how many times it has been restarted (via SIGHUP) since the server was started. 2010-01-06 castaglia <castaglia> * contrib/mod_sql.c: Clean up the coding style around handling SQLLog and SQLShowInfo directives; hopefully no functional changes. Also explicitly initialized some pointers which are used for pointer arithmetic, just to be safe. 2010-01-06 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add SFTP FAQ about <Limit SITE_CHMOD> and SFTP uploads. 2010-01-05 castaglia <castaglia> * NEWS, modules/mod_auth.c, tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm: Bug#3362 - Regression in handling of MaxLoginAttempts in 1.3.3rc1. 2010-01-04 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Fix broken checks added yesterday. Also quell compiler warnings about unreachable code. 2010-01-04 castaglia <castaglia> * doc/howto/Authentication.html: Updated Authentication howto, removing mention of deprecated AuthPAMAuthoritative directive and updating URLs to point to the www.proftpd.org docs. 2010-01-03 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Cleanup of some of the coding style in mod_wrap2 to be more legible. 2010-01-03 castaglia <castaglia> * contrib/mod_wrap2_file.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Fix bug in mod_wrap2_file where the module was not correctly parsing the "options" portion of a table. This was leading to allowing of connections which should have been denied. 2009-12-28 castaglia <castaglia> * doc/contrib/mod_tls.html: Add cert chain caveat that using the NoCertRequest means that mod_tls won't bother to use the cert chain file. 2009-12-28 castaglia <castaglia> * doc/howto/TLS.html: Fix typos. 2009-12-23 castaglia <castaglia> * doc/contrib/mod_wrap.html: The libnsl library isn't needed for mod_wrap on Mac OSX, either. 2009-12-20 castaglia <castaglia> * src/fsio.c: Rather than testing for CYGWIN to use the O_BINARY flag, just test for the O_BINARY flag directly. 2009-12-18 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Fix compiler warning. Rename the 'core.exit' event listener to be more accurate (it's a shutdown listener in some cases, not a session-exit listener). 2009-12-18 castaglia <castaglia> * NEWS, contrib/mod_tls_shmcache.c: Bug#3359 - mod_tls_shmcache segfaults during syntax check. 2009-12-15 castaglia <castaglia> * Makefile.in, NEWS: Bug#3356 - Build timestamp using date(1) can fail depending on environment. 2009-12-15 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3357 - mod_sftp fails to compile on AIX. 2009-12-15 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3358 - mod_tls doesn't compile with pre-0.9.7 openssl. 2009-12-15 castaglia <castaglia> * modules/mod_xfer.c: Typo. 2009-12-15 castaglia <castaglia> * contrib/mod_shaper.c, tests/t/lib/ProFTPD/Tests/Modules/mod_shaper.pm: Fix a problem in mod_shaper, noted in this forums post: http://forums.proftpd.org/smf/index.php/topic,1628.0.html where the queue used by mod_shaper could become "clogged", full of old stale messages. The fix, as noted as well, is to clear the queue of any messages for the destination process before sending a new message to that process. Added a regression test to reproduce the behavior; it required a manual change to the mod_shaper code in order to fill up the queue in the time of the test. Good enough for now. 2009-12-15 castaglia <castaglia> * contrib/mod_shaper.c: Fix compiler warnings about unreachable code, and rename an event listener to be more appropriately named. 2009-12-14 castaglia <castaglia> * doc/contrib/mod_wrap.html: Adding more examples of paranoid libwrap log messages. 2009-12-14 castaglia <castaglia> * doc/howto/TLS.html: Another SSL/TLS FAQ. 2009-12-14 castaglia <castaglia> * contrib/mod_tls.c: Log a warning if mod_tls has been configured with no server certs (via TLSRSACertificateFile, TLSDSACertificateFile, or TLSPKCS12File) for a given session. Without a server cert, mod_tls cannot support SSL/TLS sessions. 2009-12-14 castaglia <castaglia> * contrib/mod_tls.c: Clear up compiler warnings about unreachable code in mod_tls. No functional change. 2009-12-14 castaglia <castaglia> * doc/howto/Stopping.html: Fixing up the Stopping howto, and adding an example Mac OSX launchd plist config. 2009-12-13 castaglia <castaglia> * utils/ftptop.c: Quell compiler warnings about unreachable code. 2009-12-12 castaglia <castaglia> * contrib/mod_sftp/auth.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Subtle tweaks to mod_sftp's handling and enforcement of the MaxLoginAttempts directive; it should now work more as users would expect. Added a unit test to catch regressions on this, as well as a unit test showing the mod_sftp's handling of MaxLoginAttempts, in combination with a mod_ban rule for MaxLoginAttempts, works properly. 2009-12-11 castaglia <castaglia> * src/table.c: Clean up some "code will never be executed" warnings. 2009-12-11 castaglia <castaglia> * NEWS, contrib/mod_ban.c, tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Bug#3355 - mod_ban should support BanEngine in <VirtualHost> config sections. 2009-12-11 castaglia <castaglia> * doc/howto/Versioning.html, doc/howto/index.html: Finally got around to writing up the version naming conventions that are currently used for ProFTPD releases. 2009-12-11 castaglia <castaglia> * contrib/mod_tls.c: Be a little more verbose in the error messages logged for SSL_accept() failures. 2009-12-11 castaglia <castaglia> * doc/modules/mod_lang.html: Typo. 2009-12-10 castaglia <castaglia> * include/version.h: Update the CVS version. 2009-12-10 castaglia <castaglia> * doc/contrib/mod_sql.html: Typo. 2009-12-10 castaglia <castaglia> * ChangeLog: Update the ChangeLog. 2009-12-10 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing to release 1.3.3rc3 today. 2009-12-10 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3352 - mod_sftp does not reject/close connections that have been rejected by mod_wrap. 2009-12-10 castaglia <castaglia> * contrib/mod_wrap.c: Specify the module version data in the module structure for mod_wrap. 2009-12-10 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3351 - Nonchrooted logins on HPUX do not get proper UID/GID. 2009-12-10 castaglia <castaglia> * NEWS, modules/mod_auth_file.c, tests/t/config/authgroupfile.t, tests/t/lib/ProFTPD/Tests/Config/AuthGroupFile.pm, tests/tests.pl: Bug#3347 - mod_auth_file handles 'getgroups' request incorrectly. 2009-12-10 castaglia <castaglia> * src/support.c: Updated fix for Bug#3350. 2009-12-10 castaglia <castaglia> * NEWS, src/support.c: Bug#3350 - Segfault caused by scrubbing zero-length portion of memory. 2009-12-09 castaglia <castaglia> * src/expr.c: Fix the logic for iterating over the session.groups list, and handling NULL names, in the pr_expr_eval_group_or() function as well. 2009-12-09 castaglia <castaglia> * src/expr.c, tests/api/expr.c: Fix segfault uncovered by Michael, where the pr_expr_eval_group_and() function would not handling NULL names in the session.groups list. This also makes the code which iterates over the session.groups list look much saner. 2009-12-09 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3349 - SSL_SESSION_cmp not available in OpenSSL 1.0.0 betas. 2009-12-09 castaglia <castaglia> * contrib/mod_tls.c: Found another place where we want to do the "is this a renegotiation" check only for control connections, not for data connections. Also quell a compiler warning using a typecast; OpenSSL-1.0.0-betaN uses more const'd types than previously. 2009-12-09 castaglia <castaglia> * contrib/mod_tls.c: Make sure that mod_tls can be compiled using OpenSSL-1.0.0-betaN; the UNSAFE_LEGACY_RENEGOTIATONS flag was changed after OpenSSL-0.9.8l. 2009-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test using a combined mod_sftp+mod_wrap2 configuration, for use in preventing regressions in the interactions between these modules. 2009-12-08 castaglia <castaglia> * doc/contrib/mod_ban.html: Add a FAQ about creating whitelists for mod_ban. 2009-12-07 castaglia <castaglia> * modules/mod_xfer.c: Additional change necessary for fixing Bug#3345. Use of trace logging (or not) affects the errno value, and we need to make sure that the original errno value is preserved. 2009-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASS.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm, tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm: Updating more testsuite tests to use the consistent `tests.log' log file. 2009-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/AllowOverwrite.pm, tests/t/lib/ProFTPD/Tests/Config/GroupOwner.pm, tests/t/lib/ProFTPD/Tests/Config/MaxInstances.pm, tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/Order.pm, tests/t/lib/ProFTPD/Tests/Config/RequireValidShell.pm, tests/t/lib/ProFTPD/Tests/Config/StoreUniquePrefix.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutSession.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm, tests/t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm, tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm, tests/t/lib/ProFTPD/Tests/Signals/ABRT.pm, tests/t/lib/ProFTPD/Tests/Signals/HUP.pm, tests/t/lib/ProFTPD/Tests/Signals/SEGV.pm, tests/t/lib/ProFTPD/Tests/Signals/TERM.pm: Updating more of the testsuite tests to use `tests.log' as their output logging file, for consistency. 2009-12-07 castaglia <castaglia> * RELEASE_NOTES: Work on preparing the release notes for 1.3.3rc3. 2009-12-07 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Correct the %description sections in proftpd.spec. 2009-12-06 castaglia <castaglia> * src/auth.c: When resolving '~' paths, the lookup is done via getpwnam(), not by using getpwuid(). Thus there is little gain (and there is a cost in terms of performance, since getpwuid() is used when listing directories) in calling pr_auth_get_home() from pr_auth_getpwuid(). 2009-12-06 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/auth.c, tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm: Bug#3348 - Rewriting of home directories via RewriteHome does not work for chrooted sessions. 2009-12-05 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Updated the mod_sql_passwd doc to mention support of SHA256 and SHA512 passwords. 2009-12-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql_passwd.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Bug#3344 - Support SHA256, SHA512 passwords in databases. 2009-12-03 castaglia <castaglia> * utils/scoreboard.c: Fix an "unreachable code" compiler warning, and clean up the code stylistically. 2009-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit tests showing that even when using SSL/TLS, resuming downloads of >2GB/4GB files via REST works properly. 2009-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Add a test for resuming downloads of >4GB files as well. 2009-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Add unit test for FileZilla's REST behavior over 2GB. Modify all tests to output to the 'tests.log' file. 2009-12-02 castaglia <castaglia> * modules/mod_xfer.c: Typos. 2009-12-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Fix broken mod_ban+mod_ifsession test. 2009-12-02 castaglia <castaglia> * src/display.c: The displaying of multiline Display files was leaving off the last line in the file; now fixed. 2009-12-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Fix the DELE unit tests to handle different strerror(3) strings. 2009-12-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Fix broken RMD test. Rename the output log file to the 'tests.log' that is being used elsewhere in the testsuite. 2009-12-01 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Make the TestSuite::FTP client default to using passive data transfers, not active data transfers. Fix up some warnings in the testsuite. 2009-11-30 castaglia <castaglia> * contrib/mod_sftp/channel.c, doc/contrib/mod_sftp.html: Handle multiple SFTPAcceptEnv directives if configured. Add docs for the SFTPAcceptEnv directive. 2009-11-26 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Include EINVAL in the list of errno values we expect to see from PRE_CMD handlers. 2009-11-26 castaglia <castaglia> * modules/mod_xfer.c: Make sure that the PRE_CMD handlers for RETR, APPE, and STOR set appropriate errno values. Remove some code that would never be executed. 2009-11-26 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3345 - mod_sftp returns EACCES rather than ENOENT for an OPEN request for a nonexistent file. 2009-11-24 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/mod_sftp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added SFTPAcceptEnv directive, for configuring which environment variables can be set by the client. 2009-11-23 castaglia <castaglia> * src/dirtree.c: Added note for myself for the future, about why <Directory> patterns aren't matching as I had assumed they would. 2009-11-22 castaglia <castaglia> * contrib/mod_sftp/compress.c: Rejigger the zlib inflate() code so that it doesn't use a switch statement inside of a while loop; the 'break' statement is used in both, and it can be confusing from which block you are trying to escape. This also fixes a warning about unreachable code, and adds a preemptive guard against trying to call memcpy(2) with a zero length. 2009-11-22 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c: Close the SFTPLog descriptor at session exit. Initialize some buffers (keeps Valgrind from whining about them). 2009-11-22 castaglia <castaglia> * modules/mod_auth.c: Close the scoreboard descriptor at session exit. 2009-11-22 castaglia <castaglia> * contrib/mod_sftp/kex.c: Forgot the return statement. 2009-11-22 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_sftp/kex.h, contrib/mod_sftp/mod_sftp.c: Fix another file descriptor leak in mod_sftp: the SFTPDHParamsFile is opened for the session (and has to remain open for the duration of the session, in order to be available for rekeying), but is not closed. Now it is closed at session exit. 2009-11-22 castaglia <castaglia> * modules/mod_delay.c: While running mod_sftp through Valgrind, I found that mod_delay leaks an fd: it never closes the fd to the DelayTable, even after the table has been unloaded from memory. Fix this. 2009-11-21 castaglia <castaglia> * contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Fix up some issues found in mod_tls when running its test cases. First, as per Bug#3325, make the TLSRequired/AllowPerUser check a little smarter, so that the published AllowPerUser example in the TLS howto works properly, but the check still retains its validity. When checking for client-initiated renegotiations, make sure we don't punish the client for *new* sessions for *data* connections. Make sure that "TLSRequired auth" is enforced properly if the client is NOT using SSL/TLS. Include MLSD in the list of commands which can trigger data transfers, and thus fall under the "TLSRequired data" checks. 2009-11-20 jwm <jwm> * contrib/mod_ldap.c: release 2.8.21, with backports from bzr trunk: CHANGES: * Implement an internal failover mechanism instead of relying on the LDAP SDK's built-in failover (if any). Fixes failover regression introduced in v2.8.19 when ldap_initialize() was first used. * Multiple LDAP URL arguments may now be passed to LDAPServer: LDAPServer ldap://127.0.0.1/??sub ldap://172.16.0.1/??sub * When setting whether to dereference LDAP aliases after connecting to the LDAP server, treat failure as a hard failure and refuse to continue with that LDAP server. Previously, failure when specifying whether to dereference aliases would be logged but the connection to that server would continue. bzr r71: - only log that we've successfully unbound if we've successfully unbound - pr_ldap_connect() should always unbind on failure - treat dereference option set failure in pr_ldap_connect() as a - connection failure; don't warn and keep plowing on bzr r77, r78: Bug 3301 - LDAP server failover does not work when ldap_initialize() is available fix LDAP server failover by implementing our own failover mechanism instead of relying on the LDAP SDK's. ldap server failover (space-separated list of hostnames in the argument to LDAPServer) has been broken since 2.8.19 when ldap_init() was replaced with ldap_initialize(), if available. as of that commit, a LDAP URL is constructed if simple hostname(s) are passed to LDAPServer, so: 'LDAPServer "127.0.0.1 172.16.0.5" was passed to ldap_initailize() as: ldap://127.0.0.1 172.16.0.5/ Unfortunately, ldap_url_parse() treats this as a valid URL, but ldap_intiailize() will not fail over to subsequent LDAP servers should the first be unreachable. ldap_initialize() *will* take a whitespace-separated list of LDAP URLs and will fail over successfully, just not when whitespace-separated hostname are passed to a *single* url (even if the whitespace in the hostname portion of the URL is urlencoded as %20). forget all of this SDK-based failover and implement our own failover support, since afaict Sun's ancient LDAP SDK doesn't implement failover and it's nice to be able to control it ourselves. for that matter, we *need* to control it ourselves since we need to use the search scope indicated by the URL at hand. chances are, the search scope will be the same for all URLs passed to LDAPServer, but to be completely correct, we should use the scope corresponding to the current URL and ldap_initialize() provides no way to tell what URL it wound up connecting to. 2009-11-20 castaglia <castaglia> * modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Revisit the fix put in place for Bug#2367. First, add the test case to the LIST testsuite, for regressions. Then look at a different fix, a simpler one: remove the GLOB_PERIOD flag from the flags used when globbing. This causes the test case to pass. This is done in order to make possible another case: list a directory whose name legitimately contains a glob character ('[' in the case of one of the users in the online forums). The previous fix for Bug#2367 prevented the proper listing of such a directory. The newer, simpler fix handles this legitimate directory name properly, while still preserving behavior which matches that of the shell. 2009-11-20 castaglia <castaglia> * modules/mod_ls.c: Fix up some of the code style in mod_ls. Add handling of signals in the while() loops which iterate over globbed paths. Removed the '{' character from the glob character checks; it is not a glob(3) character. 2009-11-19 castaglia <castaglia> * doc/contrib/mod_sftp.html: Try to make the requirement of using ssh-keygen to convert public keys to RFC4716 format clearer. 2009-11-19 castaglia <castaglia> * NEWS, src/bindings.c: Bug#3306 - ECONNREFUSED while handling SIGHUP. 2009-11-19 castaglia <castaglia> * lib/libltdl/.cvsignore: More auto-generated files to ignore. 2009-11-19 castaglia <castaglia> * configure: Updated configure. 2009-11-19 castaglia <castaglia> * configure.in: Handle empty CONFIG_SHELL values. 2009-11-19 castaglia <castaglia> * configure: Updated configure. 2009-11-19 castaglia <castaglia> * configure.in: Although it looks like LTDL_INIT(convenience) and LTDL_CONVENIENCE are the same, they are not. So we need to use both. 2009-11-19 castaglia <castaglia> * Makefile.in: Comment out the target that might cause the machine to re-run autoconf. 2009-11-19 castaglia <castaglia> * configure: Updated configure. 2009-11-19 castaglia <castaglia> * configure.in: More libtool-2.2.4 tweaking fun. 2009-11-19 castaglia <castaglia> * configure: Updated configure. 2009-11-19 castaglia <castaglia> * lib/libltdl/m4/ltdl.m4: In order to avoid the very, very annoying error of: configure: error: conditional "INSTALL_LTDL" was never defined. Usually this means that the macro was only invoked conditionally. I am manually removing the whole m4 support of _LT_ENABLE_INSTALL in the bundled libltdl. ProFTPD is never going to make/provide an installable libltdl library. 2009-11-18 castaglia <castaglia> * configure: Updated configure. 2009-11-18 castaglia <castaglia> * Make.rules.in, configure.in: More libtool-2.2.4 tweaks, with help from Bob Friesenhahn. 2009-11-18 castaglia <castaglia> * aclocal.m4: Re-create our aclocal.m4 using the aclocal tool. 2009-11-18 castaglia <castaglia> * configure: Updated configure. 2009-11-18 castaglia <castaglia> * configure.in, modules/Makefile.in: Export the LTDLINCL variable from the configure script, so that we are no longer hardcoding the path to the directory containing the ltdl.h header. 2009-11-18 castaglia <castaglia> * Makefile.in, configure.in: More wrestling with libtool-2.2.4. I am *really* not liking this 2.2.x release series. 2009-11-18 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Quelling compiler warnings. 2009-11-18 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3342 - FEAT response contains LF without preceding CR. 2009-11-18 castaglia <castaglia> * tests/t/config/limit/rmd.t, tests/t/lib/ProFTPD/Tests/Config/Limit/RMD.pm, tests/tests.pl: Add regression test demonstrating how to make an undeletable directory using the <Limit> + Filter approach. 2009-11-18 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update mod_sftp doc so that it's hopefully less confusing. 2009-11-17 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Bug#3341 - mod_wrap2 segfaults when a valid user retries the USER command. 2009-11-17 castaglia <castaglia> * NEWS: Bug#3331 - Update bundled libtool to 2.2.4. 2009-11-17 castaglia <castaglia> * configure: Updated configure. 2009-11-17 castaglia <castaglia> * Makefile.in, configure.in, modules/Makefile.in: More tweaks to the build files to make sure that mod_dso builds properly with the new version of libltdl/libtool. 2009-11-17 castaglia <castaglia> * lib/libltdl/.cvsignore: One more libtool file to ignore. 2009-11-17 castaglia <castaglia> * lib/libltdl/.cvsignore: More files to ignore with this new version of libtool. 2009-11-17 castaglia <castaglia> * lib/libltdl/ltdl.c: Backport the patch for the bugs found in libtool-2.2.6 to this 2.2.4 version. 2009-11-17 castaglia <castaglia> * lib/libltdl/Makefile.in, lib/libltdl/argz.c: Bug#3331 - Update bundled libtool to 2.2.4. 2009-11-17 castaglia <castaglia> * configure: Updated configure. 2009-11-17 castaglia <castaglia> * aclocal.m4, configure.in, lib/libltdl/Makefile.am, lib/libltdl/Makefile.in, lib/libltdl/README, lib/libltdl/aclocal.m4, lib/libltdl/argz_.h, lib/libltdl/config-h.in, lib/libltdl/config/compile, lib/libltdl/config/config.guess, lib/libltdl/config/config.sub, lib/libltdl/config/depcomp, lib/libltdl/config/install-sh, lib/libltdl/config/ltmain.sh, lib/libltdl/config/missing, lib/libltdl/configure, lib/libltdl/configure.ac, lib/libltdl/libltdl/lt__alloc.h, lib/libltdl/libltdl/lt__dirent.h, lib/libltdl/libltdl/lt__glibc.h, lib/libltdl/libltdl/lt__private.h, lib/libltdl/libltdl/lt__strl.h, lib/libltdl/libltdl/lt_dlloader.h, lib/libltdl/libltdl/lt_error.h, lib/libltdl/libltdl/lt_system.h, lib/libltdl/libltdl/slist.h, lib/libltdl/loaders/dld_link.c, lib/libltdl/loaders/dlopen.c, lib/libltdl/loaders/dyld.c, lib/libltdl/loaders/load_add_on.c, lib/libltdl/loaders/loadlibrary.c, lib/libltdl/loaders/preopen.c, lib/libltdl/loaders/shl_load.c, lib/libltdl/lt__alloc.c, lib/libltdl/lt__dirent.c, lib/libltdl/lt__strl.c, lib/libltdl/lt_dlloader.c, lib/libltdl/lt_error.c, lib/libltdl/ltdl.c, lib/libltdl/ltdl.h, lib/libltdl/m4/argz.m4, lib/libltdl/m4/libtool.m4, lib/libltdl/m4/ltdl.m4, lib/libltdl/m4/ltoptions.m4, lib/libltdl/m4/ltsugar.m4, lib/libltdl/m4/ltversion.m4, lib/libltdl/m4/lt~obsolete.m4, lib/libltdl/slist.c, ltmain.sh, modules/mod_dso.c: Bug#3331 - Update bundled libtool to 2.2.4. 2009-11-17 castaglia <castaglia> * config.guess, config.sub: Updating the config.guess and config.sub helper scripts. 2009-11-17 castaglia <castaglia> * install-sh: Updated the install-sh script. 2009-11-17 castaglia <castaglia> * doc/howto/Timestamps.html: Mention MFMT in the Timestamps howto. 2009-11-17 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add the SFTP Extensions Draft to the list. 2009-11-16 castaglia <castaglia> * contrib/mod_sftp/channel.c: Locking down more environment variables from SSH2 client tweaking. 2009-11-16 castaglia <castaglia> * contrib/mod_sftp/channel.c: Add more barred environment variables to the list. 2009-11-16 castaglia <castaglia> * contrib/mod_sftp/channel.c: Don't allow SSH2 clients to change the TZ environment variable, either. 2009-11-16 castaglia <castaglia> * contrib/mod_sftp/channel.c: Add a few more environment variables that SSH2 clients are barred from sending/overriding in their session. 2009-11-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Adding some notes for my future self. 2009-11-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure to advertise that the client can use the 'vendor-id' extension in the supported2 extension to the VERSION response. 2009-11-16 castaglia <castaglia> * src/dirtree.c: Simpler fix for Bug#3337. 2009-11-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: If the client sends the 'check-file' extension, do not disconnect the session if the requested checksum algorithm is not supported; simply send the failure STATUS message back. 2009-11-15 castaglia <castaglia> * contrib/mod_sftp/scp.c: Include the sticky bit when sending/receiving files/directories. 2009-11-15 castaglia <castaglia> * NEWS, src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Bug#3337 - <Directory> sections with a trailing directory name of one character have <Limit> problems. This is a regression caused by Bug#3146. 2009-11-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Check for READ/WRITE <Limit> sections pertaining to files being read/written for the 'check-file' and 'copy-file' SFTP extensions. 2009-11-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Slightly nicer way of dealing with using O_NONBLOCK for open(3) when handling OPEN requests. This way, we don't have to clear the O_NONBLOCK flag later. 2009-11-14 castaglia <castaglia> * configure: Updated configure script. 2009-11-14 castaglia <castaglia> * configure.in: Add use of the -Wunreachable-code compiler flag, where supported, when --enable-devel is used. Make the use of the AC_DEFINE macro more consistent by providing the optional message in more places. 2009-11-14 castaglia <castaglia> * m4/proftpd.m4: Try to make the use of the AC_DEFINE macro more consistent with other occurrences by supplying a message. 2009-11-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix regression where SFTP downloads were not being logged via TransferLog; caused by the addition of the O_NONBLOCK to the fh_flags per Bug#3314. Reported by Bernd Lommerzheim. 2009-11-14 castaglia <castaglia> * modules/mod_core.c: Add trace logging of the pr_netacl_t objects created via other config directives. 2009-11-14 castaglia <castaglia> * m4/proftpd.m4: Separate out the proftpd-specific autoconf macros from aclocal.m4 into this file. Makes it easier to recreate a new aclocal.m4 file, containing macros from many different sources. 2009-11-13 castaglia <castaglia> * doc/contrib/mod_sql.html: Fix typo in mod_sql docs. Add description of the interaction between the useNormalizedGroupSchema SQLOption and custom SQLGroupInfo queries. 2009-11-13 castaglia <castaglia> * contrib/mod_sql_mysql.c: Typo. 2009-11-13 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#3333 - mod_sql_mysql should support calling stored procedures better. 2009-11-13 castaglia <castaglia> * NEWS, contrib/mod_wrap.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap.pm: Bug#3332 - Segfault in mod_wrap when TCPAccessFiles do not exist and client sends USER for account which does not exist. 2009-11-13 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Use defined constants rather than "magic" numbers. Log any client-sent vendor information in the SFTPLog, rather than the TraceLog. 2009-11-13 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure that we only send defined flag values in the statvfs@openssh.com extension response. 2009-11-13 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/mod_sftp.c, doc/contrib/mod_sftp.html: Bug#3329 - Support the "vendor-id" SFTP extension. 2009-11-12 castaglia <castaglia> * doc/contrib/mod_ban.html: Adding a mod_ban FAQ, cleaning up a minor nit. 2009-11-11 castaglia <castaglia> * doc/contrib/mod_sql.html: Make a note in the description of the Crypt SQLAuthType that crypt(3) only uses the first 8 characters of a password; this can have some surprising (depressing?) consequences for the unwary. 2009-11-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm: Add more tests for the fix for Bug#3077. 2009-11-10 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3307 - Transparently handle the X-variant commands when checking <Limit> permissions. The fix for this issue has been reimplemented to be more transparent; some existing configurations were broken by the previous implementation. 2009-11-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: For completeness, add a mod_quotatab unit test for RETR and the files_out limit. 2009-11-10 castaglia <castaglia> * contrib/mod_site_misc.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Make sure that SITE SYMLINK fails if the source path does not exist on the filesystem. I thought that the symlink(2) system call would handle this for us, but apparently not (at least it doesn't on Mac OSX 10.4, and thus potentially other platforms). 2009-11-10 castaglia <castaglia> * contrib/mod_quotatab.c: Add comment for my future self about why the have_quota_update flag is cleared before writing to the tally table, instead of after. 2009-11-10 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3328 - Failed database transaction can cause mod_quotatab to loop endlessly. 2009-11-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add mod_quotatab test for RETR byte limits. 2009-11-09 castaglia <castaglia> * src/main.c: Make sure that the LC_NUMERIC locale category is always "C", regardless of what's in the environment when proftpd starts. 2009-11-09 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix some compiler warnings about signedness mismatches, and avoid an explicit cast, by redefining the buffer to use char, not unsigned char. 2009-11-09 castaglia <castaglia> * contrib/mod_quotatab.c: Before a copy, apply any QuotaExcludeFilter to the source path; the destination may not exist. After a copy, apply any QuotaExcludeFilter to the destination path. It's a little odd, but I think it makes sense this way. 2009-11-09 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_sftp/fxp.c: Give mod_quotatab the ability to track (and enforce) quota changes due to the copying of files now possible via mod_sftp's copy-file SFTP extension. For testing this, I had to use a SITE COPY implementation. 2009-11-09 castaglia <castaglia> * contrib/mod_site_misc.c, tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Advertise the supported SITE commands provided by mod_site_misc in the FEAT response. 2009-11-09 castaglia <castaglia> * contrib/mod_quotatab.c: In the pre-APPE handler, make sure to exclude files which match any configured QuotaExcludeFilter before checking the quota limits/tallies; if a file is excluded by the filter, it shouldn't run afoul of those limits/tallies. 2009-11-09 castaglia <castaglia> * contrib/mod_quotatab.c: Add checking of the path against a QuotaExcludeFilter in a few more places. Add the setting of HAVE_WRITE_UPDATE in the pre-APPE handler, just as is done in the pre-STOR handler. 2009-11-09 castaglia <castaglia> * contrib/mod_tls.c: Remove the daemon-exit listener for the 'core.exit' event in the session process; when the session process exits, it shouldn't send a 'core.exit' event to the daemon-exit listener. 2009-11-09 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sftp.html: Mention the new SFTP extensions, and the SFTPExtensions directive, in the release notes. Update the mod_sftp doc to cover the SFTPExtensions directive. 2009-11-09 castaglia <castaglia> * modules/mod_core.c: Fix minor issue where DELE on a symlink would cause the wrong size to be logged (the size of the target file, not the symlink, would be logged). 2009-11-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Add unit test for DELEs on symlinks. 2009-11-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/mod_sftp.c: With the addition of various SFTP extensions to mod_sftp, it's a good idea to have a mechanism for disabling support for individual extensions as desired. This will also come in handy later, for extensions which might be useful, but which need to be selectively enabled. Thus this patch introduces a new SFTPExtensions directive. 2009-11-08 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the list of SFTP extensions supported by mod_sftp. 2009-11-08 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3320 - Support the "copy-file" SFTP extension. 2009-11-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Use a better errno value (EACCES) and remove redundant logging when Path{Allow,Deny}Filter settings apply to paths sent by the SFTP client. 2009-11-08 castaglia <castaglia> * src/fsio.c: Fix some issues found in pr_fs_copy_file(): - return an error if closing the destination file returned an error - use nonblocking opens, in case the source/destination paths are FIFOs Also some stylistic changes. 2009-11-08 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3321 - Support the "check-file-name" and "check-file-handle" SFTP extensions. 2009-11-08 castaglia <castaglia> * contrib/mod_sftp/configure: Updated mod_sftp's configure script. 2009-11-08 castaglia <castaglia> * contrib/mod_sftp/configure.in, contrib/mod_sftp/mod_sftp.h.in: Add checks for support for SHA256 and SHA512 in OpenSSL to mod_sftp's configure script. 2009-11-07 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Skip adding version 1 to the 'versions' list; it's not allowed by Section 4.6 of the SFTP Draft. 2009-11-07 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Minor refinement to the version-select SFTP extension implementation. 2009-11-07 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3322 - Support the "version-select" SFTP extension. 2009-11-07 castaglia <castaglia> * NEWS, contrib/mod_tls_shmcache.c: Bug#3326 - Shared memory segment used for session cache should be protected via mlock(2). 2009-11-07 castaglia <castaglia> * NEWS, contrib/mod_tls_shmcache.c: Bug#3327 - Clear external SSL session caches on server restart/shutdown. 2009-11-07 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Ignore any size attribute that the SFTP client may send in an OPEN request; attempting to honor the suggested size by truncating the file during the OPEN can cause problems. Size attributes sent in SETSTAT/FSETSTAT requests are still honored. 2009-11-07 castaglia <castaglia> * RELEASE_NOTES: Typo. 2009-11-07 castaglia <castaglia> * doc/contrib/mod_tls.html: Mention that server-initiated SSL session renegotiations are still honored when possible. 2009-11-07 castaglia <castaglia> * configure: Updated configure for Bug#3311. Also added automatic detection of build requests for mod_sql_passwd, so that the USE_OPENSSL flag can be automatically set when that module is requested, just as is done for mod_tls and mod_sftp. 2009-11-07 castaglia <castaglia> * NEWS, configure.in: Bug#3311 - configure script should automatically detect when -ldl is needed by OpenSSL. 2009-11-07 castaglia <castaglia> * contrib/mod_tls.c: Add the changes from Bug#3324 to deal with server-initiated session renegotiations when using OpenSSL 0.9.8l or later. 2009-11-07 castaglia <castaglia> * contrib/mod_tls.c: Handle signals in the diagnostic callback. 2009-11-07 castaglia <castaglia> * contrib/mod_tls.c: More work towards Bug#3324 - allow server-initiated session renegotiations whilst rejecting client-initiated session renegotiations. 2009-11-07 castaglia <castaglia> * doc/contrib/mod_tls.html: Document the new AllowClientRenegotiations TLSOption. 2009-11-07 castaglia <castaglia> * RELEASE_NOTES: Update the release notes. 2009-11-07 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3324 - Vulnerability in SSL/TLS protocol during renegotiation (CVE-2009-3555). 2009-11-07 castaglia <castaglia> * doc/howto/TLS.html: Add a TLS FAQ, inspired by Bug#3247 (and its ensuing duplicates). 2009-11-06 castaglia <castaglia> * contrib/mod_tls.c, doc/howto/TLS.html: Remove the "TLSRenegotiate off" synonym; I had simply confused myself with the bad example config I'd written in the TLS howto (now fixed as well). 2009-11-06 castaglia <castaglia> * contrib/mod_tls.c: Allow "TLSRenegotiate off" as a synonym for "TLSRenegotiate none". 2009-11-06 castaglia <castaglia> * contrib/mod_tls.c: Include in the end-of-session EnableDiags-enabled stats the number of times a session was removed from the cache because the cache size was exceeded. 2009-11-06 castaglia <castaglia> * contrib/mod_tls.c: Ignore EAGAIN errors when the EnableDiags TLSOption is used; they just clutter up the TLSLog. 2009-11-06 castaglia <castaglia> * contrib/mod_tls.c: Remove spurious ""SSL_shutdown error: ZERO_RETURN" logging; it is not actually an error to encounter an SSL_ERROR_ZERO_RETURN value when shutting down the SSL/TLS session. 2009-11-06 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add empty stubs of functions which will add the "standard" SFTP extensions to mod_sftp's VERSION response to SFTP clients. 2009-11-06 castaglia <castaglia> * contrib/mod_tls.c: Minor reordering of the logged SSL/TLS end-of-connection stats; this way the cache-related stats appear together. 2009-11-05 castaglia <castaglia> * modules/mod_ls.c: Make sure that we can handle symlinks whose target paths are long (e.g. longer than 1K). 2009-11-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/scp.c, contrib/mod_sql_passwd.c, include/fsio.h, modules/mod_auth.c, modules/mod_log.c, src/fsio.c, src/log.c, src/xferlog.c: Switch to using nonblocking open(2) calls in many places, especially when handling log files. This is to deal with the case where the log files configured are actually FIFOs; if the other end of the FIFO is not running, then a blocking open(2) would block indefinitely. For example, configuring a FIFO for TransferLog, and not having the FIFO reader running, would hang the client session. Now by using nonblocking open(2), we can detect such cases and handle them. The opened fds are returned to blocking mode, assuming a successful open. 2009-11-05 castaglia <castaglia> * contrib/mod_sftp/auth.h, contrib/mod_sftp/keystore.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp_pam.c: Clean up a few warts and warnings. 2009-11-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding unit test for LIST output of a symlink when ShowSymlinks is enabled. 2009-11-05 castaglia <castaglia> * modules/mod_core.c, src/class.c, src/netacl.c: Add more trace logging about how <Class> rules are parsed and compared. Fix some rule parsing cases which were not being handled properly. 2009-11-05 castaglia <castaglia> * tests/t/config/classes.t, tests/t/lib/ProFTPD/Tests/Config/Classes.pm, tests/tests.pl: Adding unit tests for various <Class> configurations and rules. 2009-11-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/UserPassword.pm: Add regression test for using UserPassword in an <Anonymous> section to create an effectively virtual user account. 2009-11-04 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_cap.html, modules/mod_cap.c: Support adding the CAP_FOWNER capability. 2009-11-04 castaglia <castaglia> * RELEASE_NOTES: Mention support for the OpenSSH extensions in the release notes. 2009-11-04 castaglia <castaglia> * contrib/mod_sftp/fxp.c, doc/contrib/mod_sftp.html: Added support for the posix-rename@openssh.com OpenSSH SFTP extension. 2009-11-04 castaglia <castaglia> * contrib/mod_sftp/fxp.c: When handling RENAME SFTP requests, make sure to update the scoreboard with the name of "RENAME", not "REALPATH". Sheesh. 2009-11-04 castaglia <castaglia> * doc/howto/Chroot.html: Add an example of constructing symlinks using relative paths; these types of symlinks stand a better chance of working properly within chrooted sessions. 2009-11-04 castaglia <castaglia> * NEWS, contrib/mod_wrap.c, include/log.h, src/log.c: Bug#3317 - mod_wrap/libwrap should honor SyslogFacility setting. 2009-11-04 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the mod_sftp doc to mention that the most up-to-date version is distributed with the ProFTPD source code. Mention the support for OpenSSH's "statvfs@openssh.com" and "fstatvfs@openssh.com" SFTP extensions. 2009-11-04 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the use of the SSH_CONNECTION environment variable. 2009-11-04 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Set the SSH_CONNECTION environment variable, using the same format as OpenSSH. 2009-11-04 castaglia <castaglia> * contrib/mod_sftp/auth.c: Make sure that callers can't use the new sftp_auth_send_banner() function to send USERAUTH_BANNER messages to the client after it has authenticated; this is not allowed by RFC4252. 2009-11-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp_pam.c: Bug#3316 - Messages from PAM modules are ignored when authenticating SSH clients via 'keyboard-interactive'. 2009-11-03 castaglia <castaglia> * doc/contrib/mod_sftp.html: Mention the %u variable in the SFTPAuthorizedUserKeys directive description. 2009-11-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/keystore.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3315 - Support the %u variable in SFTPAuthorizedUserKeys paths. 2009-11-03 castaglia <castaglia> * configure: Updated configure. 2009-11-03 castaglia <castaglia> * configure.in: Add some more gcc warning flags to the list when --enable-devel is used, specifically -Wformat-security, -Wstack-protector, and -fstack-protector-all. 2009-11-03 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h: Added support for the statvfs@openss.com and fstatvfs@openssh.com OpenSSH SFTP extensions. 2009-11-03 castaglia <castaglia> * NEWS: Pedantic correction: lseek(2), not lseek(3). 2009-11-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/scp.c, modules/mod_xfer.c: Bug#3314 - Downloading from FIFOs via SFTP/SCP fails. 2009-11-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c: Bug#3313 - Uploading via SFTP to FIFOs fails due to illegal lseek(3), truncate(2) calls. 2009-11-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Bug#3312 - Uploading via SFTP/SCP to FIFO whose reader is closed causes session to hang. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: On some platforms, ENXIO has a string representation of "Device not configured". 2009-11-03 castaglia <castaglia> * contrib/mod_sftp/packet.c: Adding reminder notes/comments for my future self. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Remove duplicate unit test entry from the list. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test proving that setting a mode which contains S{G,U}ID bits is properly supported via SFTP. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding unit tests for Bug#3314. These tests rely on having a FIFO-writing program open at /tmp/test.fifo, and thus do not run automatically as part of the testsuite. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding unit tests for Bug#3313. These particular tests are a little odd in that they will have to be run manually; they require a FIFO-reading process to be running at /tmp/test.fifo (and I didn't feel like wrestling with Perl in order to fork off more processes in these tests). 2009-11-03 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix a segfault where a reason string was not being returned for an errno value which we were not expecting/handling. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression tests for Bug#3312. Note that I still need to run these tests on other platforms (Solaris, FreeBSD, Mac OSX), as I suspect that the errno value returned from a failed open(2) of a FIFO will vary quite a bit across the platforms. 2009-11-03 castaglia <castaglia> * modules/mod_xfer.c: Allow uploading to /dev/full on Linux; this is useful for testing how clients handle out-of-disk situations/errors. 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for uploading to /dev/full (Linux only), to simulate an out-of-disk situation. (Turns out that Net::SSH2 does not propagate the WRITE/CLOSE error to the calling code; I need to file a bug with the module maintainer about this.) 2009-11-03 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add support for os_* tags to tests, so that certain tests can be targeted for specific OS/platforms (as determined by Perl's $^O variable). 2009-10-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap.pm: Adding unit tests for more of mod_wrap's directives. 2009-10-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap.pm, tests/t/modules/mod_wrap.t, tests/tests.pl: Start of unit tests for the mod_wrap module. 2009-10-30 castaglia <castaglia> * locale/fr_FR.po: Bug#3309 - Fix whitespace in MLST response when using the fr_FR locale. 2009-10-29 castaglia <castaglia> * RELEASE_NOTES, locale/Makefile.in, locale/zh_TW.po: Wei-Lun Chao contributed a Taiwan translation for proftpd. 2009-10-29 castaglia <castaglia> * contrib/mod_sftp/cipher.c: Quell compiler warnings about mismatched data types. 2009-10-28 castaglia <castaglia> * src/auth.c: Fixing another part of Bug#3307. 2009-10-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Adding more regression tests (and improving existing tests) for Bug#3307. 2009-10-27 castaglia <castaglia> * NEWS, src/auth.c, tests/t/lib/ProFTPD/Tests/Logins.pm: Bug#3307 - All FTP logins treated as anonymous logins. 2009-10-26 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Increasing the size of a couple more buffers in order to avoid inadvertently truncating file names. 2009-10-26 castaglia <castaglia> * modules/mod_log.c: Add some additional room for other ExtendedLog data. 2009-10-26 castaglia <castaglia> * modules/mod_log.c, src/log.c, src/main.c: Make the buffers used for logging and for reading client data depend on PR_TUNABLE_PATH_MAX, which in turn depends on MAXPATHLEN (if defined by the OS). This makes sure that the buffers are at least large enough to deal with the longest path supported by the OS (e.g. 4K on a Linux 2.6 kernel). 2009-10-26 castaglia <castaglia> * doc/howto/Nonroot.html, doc/howto/index.html: Add the nonroot howto to the collection. 2009-10-23 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#3305 - Emulate Solaris 10 syslog "header" on Solaris 10 servers. 2009-10-23 castaglia <castaglia> * src/main.c: Initialize the xerrno variable, to quell a compiler warning. 2009-10-22 castaglia <castaglia> * src/inet.c: Pedantic comment typo correction. 2009-10-21 castaglia <castaglia> * tests/t/config/hidenoaccess.t, tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm, tests/tests.pl: Add unit test for the HideNoAccess directive. 2009-10-21 castaglia <castaglia> * doc/howto/Scoreboard.html: Add scoreboard FAQ about "bad version (too old)" errors. 2009-10-21 castaglia <castaglia> * doc/contrib/mod_sftp.html: Added mod_sftp FAQ about ListOptions. 2009-10-21 castaglia <castaglia> * contrib/mod_tls.c: Cleanly shutdown the SSL/TLS session (if there is one) for TimeoutLogin as well. 2009-10-21 castaglia <castaglia> * src/main.c: Stash the errno value if select(), in the main loop, returns -1; this makes for better errno logging/reporting. Also avoid trying to accept(2) a connection if the select() return value is -1. 2009-10-21 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3303 - FileZilla reports "Server did not properly shut down TLS connection" after TimeoutIdle triggered.. 2009-10-20 castaglia <castaglia> * doc/contrib/mod_tls.html: Markup error. 2009-10-20 castaglia <castaglia> * include/version.h: Bumped version to what will become 1.3.3rc3. 2009-10-20 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Getting versions ready for 1.3.3rc2 release. 2009-10-20 castaglia <castaglia> * NEWS: Mention the release date for 1.3.3rc2. 2009-10-20 castaglia <castaglia> * RELEASE_NOTES: Typos, corrections. 2009-10-20 castaglia <castaglia> * ChangeLog: Updated the ChangeLog. 2009-10-20 castaglia <castaglia> * RELEASE_NOTES: Adding more to the release notes, getting them ready for the release of RC2. 2009-10-20 castaglia <castaglia> * contrib/mod_sql_postgres.c: Minor tweaks to the Postgres NLS/encoding code. 2009-10-20 castaglia <castaglia> * RELEASE_NOTES: Point out a potential hazard with the delayed-open database connection policy and logging-only database configs. 2009-10-19 castaglia <castaglia> * contrib/mod_sql_postgres.c: The get_postgres_encoding() function is specific to mod_sql_postgres; no need to have its symbol be exported/visible outside of this file. 2009-10-19 castaglia <castaglia> * contrib/mod_sql_postgres.c: Quell minor compiler warning about the get_postgres_encoding() function when --enable-nls is used by providing a function prototype. 2009-10-19 castaglia <castaglia> * doc/howto/NAT.html: Fixed URL to IP Masquerade howto doc. 2009-10-14 castaglia <castaglia> * modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Make sure that mod_facts uses 'cdir' or 'pdir' as the type in a MLSD response, rather than just 'dir', where appropriate. 2009-10-14 castaglia <castaglia> * modules/mod_auth_unix.c: Helps if we provide the data type for variables. 2009-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Add a test for when a session is chrooted, and fix the regexes used throughout these tests. 2009-10-14 castaglia <castaglia> * modules/mod_facts.c: Do a little resolution on the given MLSD path, trying to find a fuller, better path. (This is particularly important for mod_vroot to function properly.) 2009-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Fixing quietly broken MLSD unit tests; they were using the wrong regex. 2009-10-13 castaglia <castaglia> * modules/mod_core.c, modules/mod_xfer.c: Found a few more cases where errno could be trampled by pr_trace_msg(), and thus requires brief caching. 2009-10-12 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r70: 2.8.20 release 2009-10-12 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r68: ldap_server and ldap_port should be defined in the !(openldap LDAP_VENDOR_VERSION >= 192) case mod_ldap bzr r67: bump version date mod_ldap bzr r66: fix reversed logic when keeping server/port settings for non-ldap_initialize() SDKs. mod_ldap bzr r65: looks like ldap_{initialize,unbind_ext_s} are openldap-specific. spleunk in the openldap cvs repo and only use these functions when building against openldap and the vendor version is at least that in which each of these functions was introduced. mod_ldap bzr r64: id tag doesn't make much sense with bazaar, but we'll keep it there for when mod_ldap is committed to proftpd cvs 2009-10-12 castaglia <castaglia> * modules/mod_lang.c: When a locale is set, make sure to set it for the LC_COLLATE, LC_CTYPE, and LC_MONETARY categories as well. 2009-10-07 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#3300 - Support disabling use of S_RLOGIN when calling AIX loginrestrictions(). 2009-10-07 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add a little more description of the sftpUTF8ProtocolVersion config setting. 2009-10-06 castaglia <castaglia> * doc/howto/ServerType.html: Add a FAQ about another cause of slow/timed out logins. 2009-10-05 castaglia <castaglia> * contrib/mod_sql.c: Add more info to the mod_sql logs when handling (and looking up) named queries. 2009-10-05 castaglia <castaglia> * contrib/mod_sql.c: When processing named queries, log the named query being processed. 2009-10-05 castaglia <castaglia> * contrib/mod_rewrite.c, contrib/mod_shaper.c: Quell compiler warnings. 2009-10-05 castaglia <castaglia> * modules/mod_lang.c: Prevent segfault on second SIGHUP because the lang_aliases table was allocated out of a pool which no longer exists. The fix is simple: when the memory pool is cleared, make sure to reset the lang_aliases pointer as well. 2009-10-05 castaglia <castaglia> * modules/mod_core.c: Just to be defensive, make sure that the EISDIR errno value exists before using it. 2009-10-05 castaglia <castaglia> * modules/mod_core.c, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: If a client tries to use DELE to remove a directory, return a better error message than "Opermation not permitted", i.e. use EISDIR. 2009-10-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Uncomment line to delete log file. 2009-10-05 castaglia <castaglia> * src/main.c: Fix the settings displayed so that we show either ncurses or ncursesw, but not both (related to Bug#3213). 2009-10-05 castaglia <castaglia> * contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: If the %T variable is used in a SQLLog query, AND the command in question uses session.xfer.p BUT does not involve a data transfer (e.g. RNFR), then a bad time value would be used. Fix this. 2009-10-05 castaglia <castaglia> * modules/mod_facts.c: The recent change to using pr_response_add() for the MLST response lines means that we no longer need to explicitly add a leading space; that is handled automatically in the Response API. 2009-10-04 castaglia <castaglia> * NEWS, src/scoreboard.c, utils/ftptop.c: Bug#3214 - ftpwho/ftptop truncate UTF8 strings due to byte, versus character, lengths. 2009-10-04 castaglia <castaglia> * configure: Updated configure (for Bug#3213). 2009-10-04 castaglia <castaglia> * NEWS, config.h.in, configure.in, src/main.c: Bug#3213 - Use locale-sensitive libncursesw library for ftptop where available. 2009-10-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit test for the iPAddressRequired TLSOption. 2009-10-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add a unit test demonstrating that when an FTPS client offers a cert, and the StdEnvVars TLSOption is used, the expected TLS_CLIENT_ environment variables are populated. 2009-10-04 castaglia <castaglia> * modules/mod_log.c: When parsing any potential log class names in an ExtendedLog directive, parse the names at parse time, rather than at connection time. This way if there are unknown names configured, we can flag it as a configuration error, rather than (relatively) silently logging and ignoring the misconfiguration. 2009-10-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add a unit test for the StdEnvVars TLSOption. 2009-10-03 castaglia <castaglia> * modules/mod_log.c: Fix a minor bug where mod_log would skip a character if the LogFormat looked like a variable, but was in fact not one. (I tried using "%{env:FOO}" instead of "%{FOO}e", and noticed that a character was being skipped in the handling of that "%{env:FOO}".) 2009-10-03 castaglia <castaglia> * modules/mod_log.c: Found a potential NULL pointer dereference when handling the ExtendedLog directive; added some signal handling and clarified the code while I was there. 2009-10-03 castaglia <castaglia> * contrib/mod_sql_passwd.c: Quell compiler warnings, too. 2009-10-03 castaglia <castaglia> * contrib/mod_sql_passwd.c: Typo. 2009-10-02 castaglia <castaglia> * NEWS, contrib/mod_ban.c, modules/mod_auth.c, src/main.c, src/scoreboard.c, tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Bug#3281 - TimeoutLogin not handled properly by mod_ban. 2009-10-02 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sql.html: Update docs to reflect Bug#3290. 2009-10-02 castaglia <castaglia> * NEWS, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_odbc.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c: Bug#3290 - Change default mod_sql connection policy to open database connection on first use. 2009-10-01 castaglia <castaglia> * doc/contrib/mod_ban.html: Forgot to mention MaxLoginAttempts as one of the events handled by BanOnEvent. 2009-10-01 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Clarify the string to which a configured QuotaExcludeFilter is applied. 2009-10-01 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3298 - QuotaExcludeFilter directive ignored by mod_quotatab. 2009-10-01 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Typo. 2009-10-01 castaglia <castaglia> * contrib/mod_sql_passwd.c, doc/contrib/mod_sql_passwd.html, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: While thinking about the salt last night, I decided that using "prepend" vs "append" as the config parameter names are a little clearer than "prefix" vs "suffix". Time and users will tell how wise/clueless this was. 2009-10-01 castaglia <castaglia> * locale/files.txt: Remove a few duplicates (caused by symlinks and a working copy) from the list. 2009-10-01 castaglia <castaglia> * locale/Makefile.in, locale/files.txt: Updated locale/files.txt. 2009-10-01 castaglia <castaglia> * contrib/mod_rewrite.c: Quell compiler warning. 2009-09-30 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Provide an example config using a salt file in the Usage section. 2009-09-30 castaglia <castaglia> * contrib/mod_sql_passwd.c: Fix bad grammar in a comment. 2009-09-30 castaglia <castaglia> * contrib/mod_sql_passwd.c, doc/contrib/mod_sql_passwd.html, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Make the use of a salt configurable in terms of whether the salt is used as a prefix or a suffix of the data to be hashed. 2009-09-30 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Document the SQLPasswordSaltFile directive. 2009-09-30 castaglia <castaglia> * contrib/mod_sql_passwd.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Add a SQLPasswordSaltFile directive to the new mod_sql_passwd module; it is used to configure salts for the hashed passwords that mod_sql_passwd handles. Doc update coming next. 2009-09-30 castaglia <castaglia> * contrib/mod_tls.c: Make sure that mod_tls does not cleanup OpenSSL if mod_sql_passwd is in use. 2009-09-29 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3296 - mod_quotatab should reject an upload via APPE if the quota is already exceeded. 2009-09-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Update regression test function names to match the names listed. 2009-09-29 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3297 - Symlinks to directories which end in trailing slashes may not be handled properly. 2009-09-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Regression tests for Bug#3297. 2009-09-29 castaglia <castaglia> * doc/howto/Timestamps.html: Attempt to highlight that unexpected timestamps in directory listings are affected by the TimesGMT directive, not by chrooted processes. 2009-09-28 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3295 - proftpd segfaults when STAT is used with ListOptions "-1". 2009-09-28 castaglia <castaglia> * tests/t/commands/stat.t, tests/t/lib/ProFTPD/Tests/Commands/STAT.pm, tests/tests.pl: Adding unit tests for the STAT command. 2009-09-28 castaglia <castaglia> * modules/mod_auth.c: If we have trouble resolving the chroot path, make sure we log the reason why. 2009-09-28 castaglia <castaglia> * contrib/mod_sftp/scp.c: Some SCP clients will quote the paths they send in their scp command, on the assumption that the handling server will use a shell for the scp command, and that shell will Do The Right Thing(tm) with regard to quoting. This is not the case for mod_sftp, so we have to try to detect and remove such quotations ourselves. 2009-09-28 castaglia <castaglia> * contrib/mod_sftp/fxp.c: When handling an OPEN SFTP request, mod_sftp was not getting the "best" path for the requested path. This meant that mod_sftp was using the relative path provided by the client as-is -- and the FSIO API assumes that the requested paths will be absolute paths. (This change is needed for mod_md5 to work properly when SFTP is used.) 2009-09-28 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Update the 3des-ctr implementation to use OpenSSL's DES_encrypt3() function, which does the encrypt-decrypt-encrypt cycle in a single function. 2009-09-26 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Make the 3des-ctr cipher work properly on big-endian machines. Turns out that OpenSSL's DES_encrypt1() function (which seems to be the one necessary to use in order to be interoperable with PuTTy's 3des-ctr cipher implementation) expects to operate on *little-endian data*. On a little-endian machine, this happens automatically. But on big-endian machines, we need to swap the bytes of the data -- and the usual ntohl() functions don't work on big-endian machines (they're no-ops). So I had to use my own byte-swapping function, and add a test for the machine endian-ness. 2009-09-25 castaglia <castaglia> * doc/contrib/mod_sftp.html: Mention the 3des-ctr cipher in the SFTPCiphers doc. 2009-09-25 castaglia <castaglia> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/mod_sftp.h.in: Add support for the 3des-ctr cipher; tested using PuTTy-0.60. 2009-09-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Add unit test for the MLST command using an example of Greek letters, from one of the online forums threads. 2009-09-23 castaglia <castaglia> * RELEASE_NOTES: Mention custom HiddenStores prefixes in the release notes. 2009-09-23 castaglia <castaglia> * NEWS, modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Bug#3294 - Support configurable HiddenStores prefixes. 2009-09-22 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Fixed the Blowfish CTR code to handle endianness issues; now I can use the "blowfish-ctr" cipher using PuTTy-0.60 on my Intel machine. 2009-09-21 castaglia <castaglia> * src/inet.c: Pre-emptively update the code for Mac OSX 10.6 machines. 2009-09-21 castaglia <castaglia> * modules/mod_facts.c: Use pr_response_add() instead of pr_response_send_raw(), and let the Response API handle the multi-line formatting of the response, rather than having to do it ourselves in mod_facts. 2009-09-21 castaglia <castaglia> * src/main.c: In the `proftpd -V' output, use two different strings to differentiate between the cases where uname(2) is not available on the platform, and where uname(2) returns an error for some reason (e.g. EPERM on virtualized servers). 2009-09-18 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Cut-n-pasto. 2009-09-17 castaglia <castaglia> * tests/t/config/limit/anonymous.t, tests/t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm, tests/tests.pl: Add some unit tests for an <Anonymous> configuration using <Limit WRITE>; a forums post suggested that the limit might not be being applied as expected. 2009-09-17 castaglia <castaglia> * doc/howto/Chroot.html: Add FAQ about using multiple DefaultRoot directives at the same time. 2009-09-17 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Disable the blowfish-ctr cipher for now. It appeared to work properly last night on my PPC Mac OSX 10.4 box, but this morning on my Ubuntu 9.04 Intel machine, it doesn't. I suspect endian-ness issues. 2009-09-17 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in: Forgot to include the blowfish header. 2009-09-17 castaglia <castaglia> * doc/contrib/mod_sftp.html: Make sure that blowfish-ctr is listed in the docs. 2009-09-17 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Add support for the blowfish-ctr cipher from RFC4344. 2009-09-17 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add support for issuing the HOST command in the testsuite client. 2009-09-16 castaglia <castaglia> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/mac.c: Clean up some minor compiler warnings. 2009-09-16 castaglia <castaglia> * contrib/mod_sftp/cipher.c: Some ciphers do not have IVs (e.g. RC4); make sure to handle this case properly. (Without this, I was seeing strange memory corruption/errors.) 2009-09-16 castaglia <castaglia> * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/crypto.c, contrib/mod_sftp/crypto.h, contrib/mod_sftp/mod_sftp.c: Bug#3293 - SFTPCipher arcfour256 does not work properly. 2009-09-16 castaglia <castaglia> * src/privs.c: Make the "SETUP PRIVS" log message be at DEBUG9, like the other debug log messages generated when manipulating privs. 2009-09-16 castaglia <castaglia> * NEWS, contrib/mod_sftp/crypto.c: Fix bug in mod_sftp's handling of AES CTR ciphers when an OpenSSL version between 0.9.7a and 0.9.7d is used; those versions of OpenSSL had buggy handling of the IV for the AES CTR (i.e. the IV was not handled in a big-endian fashion). 2009-09-16 castaglia <castaglia> * contrib/mod_sftp/crypto.c: Pedantic comment typo correction. 2009-09-16 castaglia <castaglia> * configure: Updated configure. 2009-09-16 castaglia <castaglia> * Make.rules.in, configure.in, contrib/mod_sftp/Makefile.in: Create an ADDL_CPPFLAGS variable in Make.rules, specifically so that contrib modules' Makefiles (for those contrib modules which have their own Makefile) can use any CPPFLAGS that may have been specified via environment variable. Without this new variable, a contrib module Makefile would end up having duplicated/redundant CPPFLAGS values, or wouldn't have those CPPFLAGS propagated properly for the contrib module code. 2009-09-16 castaglia <castaglia> * contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c: Minor adjustment to the debug logging of packet dumps, so that they are easier to pick out of the SFTPLog file. 2009-09-15 castaglia <castaglia> * modules/mod_core.c, src/dirtree.c, src/modules.c: Various stylistic cleanups generated while pursuing strange segfault. 2009-09-15 castaglia <castaglia> * src/auth.c: The previous change to populate the pool and tmp_pool fields for the cmd_rec that's dispatched to Auth callbacks had subtle and bad side effects. Instead of using the given pool as that pool, create a subpool. 2009-09-15 castaglia <castaglia> * src/auth.c: Make sure that cmd->pool and cmd->tmp_pool are not NULL for the cmd_rec that is dispatched for the Auth callbacks. 2009-09-15 castaglia <castaglia> * tests/t/commands/host.t, tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Start working on unit tests for the HOST command, as part of Bug#3289. 2009-09-14 castaglia <castaglia> * src/session.c: When marking a session as idle, make sure that session.user is non-NULL; if not, using "(authenticating)". 2009-09-14 castaglia <castaglia> * src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm: Set the errno appropriately for implicit denies. 2009-09-14 castaglia <castaglia> * doc/howto/Filters.html: Add example config for using AllowFilter to only allow specific filename extensions in a directory. 2009-09-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm: Fix the broken AllowFilter unit test. To make this particular config work, the Order directive is needed. 2009-09-12 castaglia <castaglia> * modules/mod_dso.c: Add more trace logging to help debug failed loading of DSO modules where the module symbol does not match the expected symbol name. 2009-09-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm: Add a unit test for the AllowFilter functionality that is <Limit>-section specific. This unit test tests the STOR command, and a <Limit> section within a <Directory> section -- and the test fails. So I still need to fix this before releasing 1.3.3rc2. 2009-09-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Looks like newer libssh2 versions have addressed some issues, though not all. 2009-09-09 castaglia <castaglia> * doc/contrib/mod_sql_passwd.html: Be sure to list the additional SQLAuthTypes provided by mod_sql_passwd. 2009-09-09 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sql_passwd.html: Adding documentation for mod_sql_passwd. 2009-09-09 castaglia <castaglia> * doc/contrib/mod_sql.html: Adding the required notice for using OpenSSL. 2009-09-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm, tests/t/modules/mod_sql_passwd.t, tests/tests.pl: Added unit tests for the mod_sql_passwd module. 2009-09-09 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_passwd.c: Bug#2368 - Allow contrib modules to extend mod_sql's SQLAuthTypes. This also includes a new mod_sql_passwd contrib module which can handle hex- and base64-encoded MD5 and SHA1 passwords, without the leading "{digest}" prefix required by the mod_sql OpenSSL SQLAuthType. 2009-09-08 castaglia <castaglia> * contrib/mod_sftp/auth.c: Add trace logging of the list of SSH2 authentication methods that are offered to the client. 2009-09-08 castaglia <castaglia> * contrib/mod_sftp_pam.c: Remove the mod_auth_pam module from the auth-only module list before we add mod_sftp_pam to that list, to ensure that mod_sftp_pam is the module that is used. 2009-09-08 castaglia <castaglia> * modules/mod_auth.c: Clear the auth-only module list after authentication has succeeded. 2009-09-08 castaglia <castaglia> * include/auth.h, src/auth.c: Add functions for removing a module from the auth-only module list, and for clearing the entire auth-only module list. 2009-09-08 castaglia <castaglia> * src/bindings.c: The fix for Bug#2680 checks for DefaultServer too early; we want to check for any INADDR_ANY vhosts first, before resorting to using the DefaultServer (if configured). 2009-09-08 castaglia <castaglia> * contrib/mod_sftp/utf8.c: Simply mod_sftp's UTF8 handling code, bringing it in sync with the recent changes to the core Encode API. Specifically, do NOT call setlocale(), as it is already done elsewhere. Also, use the new pr_encode_get_local_charset() instead of duplicating code from the Encode API. 2009-09-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Add unit tests to ensure than the use of ".UTF-8" aliases work properly for the LangDefault directive (and thus, by extension, for the LANG command). 2009-09-08 castaglia <castaglia> * modules/mod_lang.c: Skip the "." and ".." directory entries when scanning the LangPath directory. 2009-09-07 castaglia <castaglia> * NEWS: Forgot to update the NEWS file. 2009-09-07 castaglia <castaglia> * src/inet.c: Don't re-declare a variable that's already in scope. Be paranoid, and only avoid ENOPROTOOPT errors if that errno is actually defined on the system. 2009-09-07 castaglia <castaglia> * src/inet.c: Needed to revert the fix for Bug#3237, as it was causing a regression on FreeBSD. Instead, I opted to ignore the ENOPROTOOPT error, which was the original cause of the reporting of Bug#3237. 2009-09-07 castaglia <castaglia> * contrib/mod_quotatab.c: Quell a few compiler printf warnings by using explicit typecasts. 2009-09-07 castaglia <castaglia> * include/encode.h, modules/mod_lang.c, src/encode.c, src/main.c: Bug#3229 - LangDefault does not accept any setting on FreeBSD. There were multiple issues involved in this one. First, mod_lang needed to handle setlocale(3) where the translated files shipped with proftpd (which do not have ".UTF-8" in their names) did not match the languages accepted by setlocale() on the platform (e.g. where setlocale() expected names which *did* end in ".UTF-8"); this is handled by populating a table of language aliases. Second, the initial setlocale(LC_ALL, "") call, to pick up/honor the various environment variables as one would expect from a Unix program, was happening in quite a few places in mod_lang. Not good. So this was moved into the main() function, as part of the initial startup. And yes, it does check that the setlocale() function call succeeds, and warns about badly configured environment variables if not. Last, we had to always set the LANG environment variable, in order to ensure that gettext used the translated files of the language to which we had switched. While the old code would work on Linux (and on Solaris...I think), it would NOT work on FreeBSD (and possibly other BSD-related platforms). It was a long arduous slog to finding that using LANG was required. Ugh. 2009-09-07 castaglia <castaglia> * contrib/mod_sql_mysql.c: In the midst of investigating/fixing Bug#3229, I found out why MySQL never seemed to use anything other than 'latin1' as its character set name. Mostly it was due to bugs in the proftpd Encode API, but it was also partly caused by an API impedance mismatch in mod_sql_mysql. This change fixes that (and yes, I've tested it using a UTF-8 language setting, and saw that MySQL reported using a 'utf8' character set). 2009-09-05 castaglia <castaglia> * src/encode.c: Need to set the LC_NUMERIC locale back to "C" after calling setlocale() using LC_ALL. 2009-09-05 castaglia <castaglia> * src/encode.c: Make sure we do an explicit setlocale() call before calling nl_langinfo(). This needs to happen in the parent/daemon process (i.e. when encode_init() is first called), since the child processes will inherit the pointers in memory to the retrieved nl_langinfo string. 2009-09-04 castaglia <castaglia> * doc/howto/ConfigFile.html: Specifically mention that proftpd switches to the UID/GID of the logged-in user. 2009-09-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Add unit test proving that the FEAT output does not include UTF8 if the LangEngine directive is set to 'off'. 2009-09-04 castaglia <castaglia> * src/encode.c: Fix segfault found by the mod_lang unit tests. 2009-09-04 castaglia <castaglia> * RELEASE_NOTES: Update release notes with note about scoreboard format change; need to expand on this at release time, of course. 2009-09-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, include/scoreboard.h, modules/mod_auth.c, src/scoreboard.c, src/session.c, utils/ftptop.1.in, utils/ftptop.c, utils/ftpwho.c, utils/utils.h: Bug#2013 - Track RFC2228 sessions in scoreboard. The scoreboard entry format now has a 'protocol' field, for tracking 'ftp' and 'ftps'. Bug#3286 - Client command field in scoreboard entry too short for SSH2/SFTP commands. These changes are combined in one change, in order to rev the scoreboard format version only once for these format changes. 2009-09-02 castaglia <castaglia> * contrib/mod_sftp/scp.c: When handling SCP uploads/downloads, be sure to update the scorboard entry appropriately. Since SCP doesn't have "commands" or "requests" (unlike FTP and SFTP), the scoreboard entry is updated with the quasi-commands "SCP_RETR" and "SCP_STOR". 2009-09-02 castaglia <castaglia> * contrib/mod_sftp/packet.c: Fix the logic for determining the random length of data to read, after a packet has been determined to be malformed. 2009-09-02 castaglia <castaglia> * contrib/mod_sftp/auth.c, contrib/mod_sftp/packet.c, include/proftpd.h, include/session.h, modules/mod_auth.c, src/data.c, src/main.c, src/session.c: Move the session_set_idle() into the session.c file, and make it a pr_ function. This also updates mod_sftp to automatically mark the session as "idle" whenever it is waiting to read the next SSH2 message. 2009-09-01 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3287 - MaxTransfersPerHost, MaxTransfersPerUser directives not supported properly. 2009-09-01 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add SFTP FAQ about CBC cipher mode attacks. 2009-09-01 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/packet.c, contrib/mod_sftp/ssh2.h: Implement the recommended countermeasure for mitigating the SSH2 plaintext recovery attack against CBC mode ciphers described in CPNI-957037: http://www.cpni.gov.uk/Docs/Vulnerability_Advisory_SSH.txt This also fixes a redeclaration of the SFTP_MAX_PACKET_LEN macro (it was being defined in both mod_sftp.h and ssh2.h). 2009-08-31 castaglia <castaglia> * doc/howto/Controls.html: Updating URLs and such in Controls howto. 2009-08-31 castaglia <castaglia> * contrib/mod_sftp/packet.c: Handle ESHUTDOWN, and add a comment about why we disconnect the client for these errors, rather than sending a DISCONNECT message first. 2009-08-31 castaglia <castaglia> * contrib/mod_sftp/packet.c: Handle a few more types of errors that we might encounter while reading from a socket. 2009-08-30 castaglia <castaglia> * src/session.c: Getting ready to support the "publickey" SSH2 subsystem (RFC4819). 2009-08-28 castaglia <castaglia> * NEWS, RELEASE_NOTES, src/dirtree.c: Bug#3279 - .ftpaccess configurations not merged properly with existing configuration. 2009-08-28 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Be a little clearer in the TOO_MANY_CONNECTIONS disconnect message (but do NOT necessarily specify exactly whether it is too many connections for the user, or the host...we don't want to leak too much information). 2009-08-28 castaglia <castaglia> * contrib/mod_sftp/disconnect.c, contrib/mod_sftp/disconnect.h, contrib/mod_sftp/mod_sftp.c, modules/mod_auth.c: Make sure that mod_sftp registers event listeners for the various MaxClients and MaxConnections directive. That way, just before mod_auth breaks the TCP connection, mod_sftp can send an SSH2 message to the client about the reason for the disconnection. 2009-08-28 castaglia <castaglia> * doc/contrib/mod_sftp.html: Typos, updating wording about channel window sizes (I now know why SSH2 has its own built-in flow control mechanisms, in addition to TCP's flow control). 2009-08-27 castaglia <castaglia> * NEWS, src/inet.c: Bug#3284 - Slower transfers of multiple small file transfers after upgrade from 1.3.0a to 1.3.2a. 2009-08-26 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h: Make sure that we do NOT increase the window size above the max possible window size of 2^32-1 bytes, as per RFC4254 Section 5.2. 2009-08-26 castaglia <castaglia> * contrib/mod_sftp/packet.c, contrib/mod_sftp/tap.c, contrib/mod_sftp/tap.h: Make sure that if a TAP packet is sent, it appears in the same TCP packet as the following "real" packet when possible. I.e. make sure that the data for both the TAP packet and the real packet appear in the same writev(2) call, rather than having separate writev(2) calls (which ends up being separate TCP packets, which negates the whole purpose of trying to mitigate TCP traffic analysis via TAP packets). 2009-08-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Add unit test showing that using STOR to upload a file whose name contains multiple consecutive periods does indeed work as expected. A user in the online forums is having an issue with this scenario; I suspect it is due to something in the proftpd.conf. 2009-08-25 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_sftp/tap.c, contrib/mod_sftp/tap.h: Rename the 'cbc-mode' TAP policy to 'rogaway', to be more clear (and interesting). 2009-08-25 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/tap.c, contrib/mod_sftp/tap.h: Protect against the Rogaway CBC mode attack (see RFC4251, Section 9.3.1) by sending IGNORE messages before every outgoing message if a CBC mode cipher is chosen for server-to-client messages. 2009-08-25 castaglia <castaglia> * contrib/mod_sftp/scp.c: Adding comment/note to myself for future tweaking. 2009-08-24 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/scp.c: Fix a rather egregious bug in the SCP download code. We were reading the entire file being downloaded into memory, and sending (or buffering) the data for it BEFORE returning back to handling any messages which may have been sent by the client while we were reading. If the file is larger than the default/initial window size, then we end up buffering. We only drain that buffered data once the file had been read in its entirety, and we go back and handle any WINDOW_ADJUST messages, which then open the window again and we can drain our data. Now imagine if that file is large, say, >4GB. The client sends its WINDOW_ADJUST messages, but mod_sftp never gets around to listening to them for quite a while. Not good. The fix, then, is to have the SCP download code check the window size periodically. If the window closes, then handle enough messages from the client until the window opens again. 2009-08-23 castaglia <castaglia> * src/pidfile.c: In the mod_sftp unit test for handling SIGTERM, I noticed that one of the configured SFTPHostKey files kept disappearing (as in, being deleted) once the server was shut down. Another mod_sftp user has reported seeing the same symptoms, only intermittently. I was finally able to track down the cause. Turns that the PidFile handling code was not being very careful about making sure that the static pidfile_path pointer kept pointing to the same memory. The pointer used for looking up the PidFile directive was the same pointer; and if the lookup failed/changed, the pointer could change. And, say, point at some other file. Then, when the server shut down and deleted its PidFile, well, that other file might be deleted. Not desirable behavior. 2009-08-22 castaglia <castaglia> * contrib/mod_sftp/channel.c: When mod_sftp is calculating the amount of data it can send in CHANNEL_DATA messages, it was taking the 9 bytes of header data (packet type, channel ID, payload len) into account when it should not. For very large data transfers, it means that mod_sftp's idea of the open channel window size could get out of sync with the client. And if the client didn't send a WINDOW_ADJUST message in time, it could lead to deadlock. Let's hope this fixes that deadlock situation. 2009-08-19 castaglia <castaglia> * contrib/mod_sftp/auth.c: The mod_sftp module was looking up any DefaultChdir config directive, but was not honoring it properly. 2009-08-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for DefaultChdir config in mod_sftp. 2009-08-19 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3282 - With "SQLNegativeCache on", mod_sql will look up wrong cached user value for subsequent USER commands. 2009-08-15 castaglia <castaglia> * tests/t/config/ftpaccess/merging.t, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Merging.pm, tests/tests.pl: Adding unit tests derived from investigations into Bug#3279. 2009-08-15 castaglia <castaglia> * src/dirtree.c: Sigh; fix the spacing in these HideFiles log messages again. 2009-08-15 castaglia <castaglia> * modules/mod_ls.c: The tweaks to mod_ls' option parsing code for Bug#3268 were not quite sufficient; they would cause erroneous errors (e.g. on PPC machines) in some cases. 2009-08-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Add another unit test related to Bug#3276, this one demonstrating that "HideFiles none" works as expected. 2009-08-14 castaglia <castaglia> * src/dirtree.c: Fix the spacing of the log messages about negated (or not) HideFiles directives. 2009-08-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Add another unit test for Bug#3276, this one using DefaultRoot and a LIST command which doesn't specify the target directory (i.e. list the current directory). 2009-08-13 castaglia <castaglia> * NEWS, contrib/mod_radius.c, modules/mod_xfer.c, src/data.c: Bug#3278 - Aborted data transfers not reflected in RADIUS accounting. 2009-08-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_radius.pm, tests/t/modules/mod_radius.t: Add unit tests for mod_radius. I won't add these to the default testsuite (i.e. when mod_radius is enabled in the built proftpd), since they currently require that you're running a RADIUS server (e.g. FreeRADIUS). But these help for when I need to work on mod_radius. 2009-08-13 castaglia <castaglia> * contrib/mod_radius.c: Fix compiler warnings about signedness mismatches. 2009-08-12 castaglia <castaglia> * modules/mod_core.c, src/dirtree.c: Add some additional debug logging of handling of HideFiles directive, and include the negation flag in the logging. (Switched to using 'negated' rather than 'inverted'; the former is more applicable, I think.) 2009-08-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Add HideFiles test using negation; used this test when investigating a HideFiles issue reported on forums.proftpd.org which is quite similar to Bug#3276. 2009-08-12 castaglia <castaglia> * doc/contrib/mod_sftp.html: Remove mention of the GB/MB suffixes for channelPacketSize; this size cannot exceed the protocol maximum of 35000 bytes. 2009-08-11 castaglia <castaglia> * doc/howto/Authentication.html: Orthographic correction. 2009-08-10 castaglia <castaglia> * NEWS: Had the bug number wrong; should be Bug#3252, not Bug#3272. 2009-08-10 castaglia <castaglia> * NEWS, src/fsio.c: Bug#3272 - %F/%f Display variables can report wrong size on 64-bit systems. 2009-08-06 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Quibble, quibble. 2009-08-06 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Thinko. 2009-08-06 castaglia <castaglia> * contrib/mod_tls.c: Add a function to get a printable version of a suspicious dNSName value; related to Bug#3275. 2009-08-06 castaglia <castaglia> * NEWS, contrib/mod_tls.c, tests/t/etc/modules/mod_tls/ca-nul-subjaltname.pem, tests/t/etc/modules/mod_tls/cert-nul-subjaltname.pem, tests/t/etc/modules/mod_tls/key-nul-subjaltname.pem, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3275 - Improper SSL/TLS certificate subjectAltName verification. 2009-08-05 castaglia <castaglia> * src/encode.c: When comparing the local and remote charsets, in some cases we don't need to check for null pointers (already checked earlier in the function in those cases), and in other cases we *do* need to check for null pointers. 2009-08-05 castaglia <castaglia> * src/encode.c: [no log message] 2009-08-05 castaglia <castaglia> * modules/mod_lang.c: Try to make for better, more informative error messages if we fail to set the locale. 2009-08-05 castaglia <castaglia> * src/data.c: We handle signals in pr_data_xfer() when writiing; we should do the same when reading. 2009-08-05 castaglia <castaglia> * modules/mod_lang.c: Declaring the curr_locale variable in the right scope helps to make the code actually compile properly. 2009-08-05 castaglia <castaglia> * modules/mod_lang.c: When scanning the LangPath directory, we don't need to save/restore the current locale on each file found in the directory. Just do the save/restore once for the entire scan loop. 2009-08-04 castaglia <castaglia> * doc/contrib/mod_sql.html: Document the new "noReconnect" SQLOption added as part of Bug#3270. 2009-08-04 castaglia <castaglia> * NEWS, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#3270 - Lost connections to databases not correctly handled. 2009-08-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/utf8.c, src/encode.c: Bug#3272 - Avoid encoding if to/from charsets are the same. 2009-08-04 castaglia <castaglia> * NEWS, src/support.c: Bug#3274 - Timestamp formatting in TransferLog needs padded day-of-month. 2009-08-02 castaglia <castaglia> * contrib/mod_sql_postgres.c: Log the Postgres client version to the SQLLogFile, and log it at the same time as we log the server version. This will make finding/reporting these versions easier. 2009-08-02 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Report on the database client and server versions, when known. 2009-07-30 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix compilation error on AIX5. 2009-07-29 castaglia <castaglia> * NEWS, modules/mod_ls.c, src/fsio.c, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Bug#3254 - NLST/LIST and symbolic link problem. 2009-07-29 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Add unit test for LIST command for Bug#3254. 2009-07-28 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Some errno values are defined to be the same on AIX, which is causing mod_sftp not to compile properly: http://forums.proftpd.org/smf/index.php/topic,3971.0.html Hopefully this change works around the issue and still preserves the desired functionality. 2009-07-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix unit test which broke due to changes in mod_sftp's SCP support for the %F variable. (The test code was broken, not the source code.) 2009-07-27 castaglia <castaglia> * contrib/mod_sftp/channel.c: Missed one change from the weekend's mod_sftp hacking. 2009-07-27 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/scp.c, contrib/mod_sftp/scp.h: Added an API by which a module, outside of mod_sftp, can register handlers for an 'exec' command. This allows other modules to use SSH2 as the transport, and to implement whatever logic they wish outside of mod_sftp. (There is an issue of code load order and link-time symbol resolution; for now, I'm punting on this issue.) 2009-07-26 castaglia <castaglia> * contrib/mod_sftp/channel.c: It's possible for an SSH2 client to open a channel, and then send an 'exec' request which mod_sftp does not support. We send a failure message in such cases, but the channel remains open. So if the client ignores our error message and then sends channel data to the exec'd command, well...the process might wander off into the weeds. Not desirable behavior. To catch this case, we simply need to make sure that a channel data handler has been registered. If not, reject the packet. 2009-07-24 castaglia <castaglia> * contrib/mod_sql.c: To help find out why configurations may not work as expected, log when we search for a SQLNamedQuery and don't find it. I just saw a config which had mismatched names between the configured SQLNamedQuery, and the name used in a SQLShowInfo parameter. 2009-07-23 castaglia <castaglia> * modules/mod_delay.c: Add a long explanatory comment about the DELAY_NPROTO value. Also, the value of 4 was too high; we currently only support three protocols in the DelayTable: ftp, ftps, and ssh2. No need to allocate empty rows in the table. 2009-07-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Fix the broken test for Bug#3164 by adding a slight delay, to give our out-of-band update to the SQLite database time to be applied. 2009-07-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add unit test for handling of DELE in mod_quotatab. 2009-07-23 castaglia <castaglia> * doc/howto/Quotas.html: Add another quota FAQ. 2009-07-23 castaglia <castaglia> * contrib/mod_rewrite.c, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Clean up dead code in mod_rewrite.c. Check for bad/unknown RewriteCondition flags, and handle them as a configuration error. Add unit test for the "[NC]" RewriteCondition flags. 2009-07-23 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Bug#3269 - RewriteCondition OR/ornext flag does not work. 2009-07-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Add a unit test showing that mod_rewrite's handling of RewriteConditions's OR flag is broken. 2009-07-22 castaglia <castaglia> * src/display.c: Fix a regression in the 1.3.3rc1 code, where a DisplayConnect file would be sent to the client -- and then an extra line with a 220 response code would be sent. This, in addition to the 220 line with the normal banner. The extra 220 response line was confusing some clients (and rightly so). 2009-07-22 castaglia <castaglia> * modules/mod_delay.c: Add paranoid check that an array pointer is non-null before we use it. 2009-07-21 castaglia <castaglia> * contrib/mod_sql.c: Add handling of signals in the loops which process the various info directives (e.g. SQLShowInfo, SQLLog, etc). Also use check_response() more throughout the code; this function checks for unrecoverable backend errors and -- depending on the config -- will disconnect the session if such an error occurs. 2009-07-21 castaglia <castaglia> * contrib/mod_sql.c: Make sure that mod_sql logs the corresponding "leaving func" message in some cases; it wasn't doing so. 2009-07-21 castaglia <castaglia> * contrib/mod_sftp/scp.c: Update the session.xfer.path field, when handling uploads via SCP, when we have received enough information from the client to know the full path. 2009-07-21 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: If mod_sftp is built using the RPM .spec file, then we need to take into account some of the config files that mod_sftp includes (e.g. blacklist.dat and dhparams.pem). 2009-07-21 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.h.in: Bump the mod_sftp version in CVS, to differentiate it from the version of mod_sftp available on castaglia.org. The CVS version is vastly improved. 2009-07-21 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Attempt to add support for mod_sftp to the .spec file. 2009-07-21 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#1908 - ExtendedLog to work properly in <Anonymous> context. 2009-07-21 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add a unit test for the %f/%F LogFormat variables when used for an SCP upload; I'm trying to reproduce a reported issue when using these variables and uploading via SCP, but to no avail as yet. 2009-07-21 castaglia <castaglia> * NEWS, modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Bug#3268 - Files whose names start with whitespace are not listed properly. 2009-07-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: More explanatory comments, for my future reference. 2009-07-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add comment describing the implementation of the RENAME handler, and how it is technically nonconformant in particular cases. 2009-07-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Still trying to properly map the V5 OPEN flags/bitmasks to open(2) flags. 2009-07-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c, doc/contrib/mod_sftp.html: The STAT, FSTAT, and LSTAT SFTP requests are no longer limited when using <Limit READ>. Instead, each of these requests can be limited by using the request name directly. 2009-07-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add a unit test using the %s LogFormat variable for write requests in an SFTP session; this complements the existing %s LogFormat variable test for SFTP read requests. 2009-07-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Clear the response lists before dispatching the STOR cmd_rec when handling aborted upload file handles in an SFTP session. 2009-07-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c: If the SFTP client left a directory handle open, then we need to handle it as a *directory*, not as a file, in the aborted-handles code. Otherwise, segfaults will happen. 2009-07-20 castaglia <castaglia> * doc/contrib/mod_sftp.html: Removed duplicated text. 2009-07-20 castaglia <castaglia> * contrib/mod_sftp/keys.c: Update the handling of the SFTPPassPhraseProvider config with tweaks found from working on mod_exec. 2009-07-20 castaglia <castaglia> * tests/tests.pl: Add support for a --verbose command-line option to the tests.pl testsuite driver. Using --verbose will set the TEST_VERBOSE environment variable. This is particularly useful when running the testsuite (or individual test files) as root using sudo; sudo (depending on the version) prevents environment variables from being communicated to the executed program. 2009-07-20 castaglia <castaglia> * NEWS, src/auth.c: Bug#2070 - AuthAliasOnly off in <Global> section kills anonymous logins. 2009-07-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Fix up minor issues in the test code found by the Perl interpreter in strict mode. 2009-07-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix variable redeclarations, and soothe the savage Perl interpreter beast. 2009-07-19 castaglia <castaglia> * tests/t/config/authaliasonly.t, tests/t/lib/ProFTPD/Tests/Config/AuthAliasOnly.pm, tests/tests.pl: Add unit tests for the AuthAliasOnly directive, including a test which reproduces Bug#2070. 2009-07-19 castaglia <castaglia> * tests/t/config/authusingalias.t, tests/t/lib/ProFTPD/Tests/Config/AuthUsingAlias.pm, tests/tests.pl: Add unit tests for the AuthUsingAlias directive. 2009-07-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm, tests/t/utils/ftpwho.t, tests/tests.pl: Start adding unit tests for the ftpwho utility. 2009-07-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Utils/ftpcount.pm, tests/t/utils/ftpcount.t, tests/tests.pl: Start of unit tests for the ftpcount utility. 2009-07-19 castaglia <castaglia> * contrib/mod_exec.c: When executing the command and the 'useStdin' ExecOption has been used, we should at least provide the first command-line argument, which, by convention, is the name of the file being executed. 2009-07-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit test for the ExecOnRestart directive. 2009-07-19 castaglia <castaglia> * contrib/mod_exec.c: Add handling of signals to some while() loops. 2009-07-18 castaglia <castaglia> * contrib/mod_exec.c, tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Added unit tests for the various ExecOptions values. Along the way, I found (and fixed) several bugs in mod_exec. Three cheers for testing! 2009-07-18 castaglia <castaglia> * doc/contrib/mod_exec.html: Fix typos, update mod_exec doc to point to local copy of Logging howto. 2009-07-18 castaglia <castaglia> * tests/t/config/useglobbing.t, tests/t/lib/ProFTPD/Tests/Config/UseGlobbing.pm, tests/tests.pl: Add unit test for the UseGlobbing directive. 2009-07-18 castaglia <castaglia> * tests/t/config/userpassword.t, tests/t/lib/ProFTPD/Tests/Config/UserPassword.pm, tests/tests.pl: Add unit test for the UserPassword directive. 2009-07-18 castaglia <castaglia> * doc/howto/TLS.html: Update the TLS howto FAQ regarding implicit FTPS to reflect the addition of implicit FTPS support (in Bug#3266). 2009-07-18 castaglia <castaglia> * NEWS, contrib/mod_tls.c, doc/contrib/mod_tls.html, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3266 - Support "implicit" FTPS. 2009-07-17 castaglia <castaglia> * modules/mod_dso.c: If mod_dso can't load a module because the module doesn't exist in the expected ModulePath, it emits a warn. Log that at the INFO level, rather than at a DEBUG level. 2009-07-17 castaglia <castaglia> * modules/mod_ctrls.c: If ControlsEngine is set to 'off', then we should not try to listen on the ControlsSocket. 2009-07-17 castaglia <castaglia> * modules/mod_dso.c: Improve on the errors reported by mod_dso when a module can't be loaded. The cause of the infamous "error loading ...: Permission denied" error is actually most likely to be a ModulePath that is an empty directory, but you would have no way of knowing/guessing that from the emitted error. 2009-07-16 castaglia <castaglia> * configure: Forgot to check in the updated configure script. 2009-07-16 castaglia <castaglia> * doc/howto/Umask.html: Add a FAQ to the Umask howto explaining why proftpd does not allow uploading of files with execute permissions. 2009-07-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_shaper.pm, tests/t/modules/mod_shaper.t, tests/tests.pl: Start adding unit/regression tests for the mod_shaper module. 2009-07-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Add unit test for CreateHome's 'dirmode' parameter. 2009-07-15 castaglia <castaglia> * config.h.in, configure.in, src/main.c: Add an autoconf check for the uname() function, in case the platform does not actually provide one. (Handy for older and/or more esoteric platforms). 2009-07-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Use the SFTP session's pool, rather than the Response API pool, for adding our status codes. 2009-07-15 castaglia <castaglia> * src/main.c: Use uname(2) to get more platform details (OS and version, machine/CPU type) for the -V settings. Easier than asking people about the platform they're running proftpd on; just ask for the -V output. 2009-07-15 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Simplify the obtaining of proper open(2) flags when handling version 5 (and higher) SFTP OPEN requests. 2009-07-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit test demonstrating, via mod_exec, a use of the new %{bytes_xfer} variable. 2009-07-15 castaglia <castaglia> * modules/mod_core.c: Add support for a %{bytes_xfer} variable. Similar to the existing %{total_bytes_xfer} variable, only this new variable only shows the number of bytes in the recent data transfer (if any), rather than the cumulated count of bytes transferred during the lifetime of the session. 2009-07-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for the %s LogFormat variable in ExtendedLogs for SFTP requests. 2009-07-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Dispatch to the correct POST_CMD/LOG_CMD (or POST_CMD_ERR/LOG_CMD_ERR) handlers. Specifically, do NOT dispatch EOF errors (when reading) to _ERR handlers; the way that SFTP reads work, this is normal. 2009-07-14 castaglia <castaglia> * contrib/mod_exec.c: Handle signals/interruptions in the potentially long/time-consuming loop as we close any open file descriptors before exec'ing the configured command. 2009-07-14 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add a quote() method to the TestSuite::FTP class, for quoting raw/arbitrary commands to send to the server. 2009-07-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit tests for ExecOnError. 2009-07-09 castaglia <castaglia> * contrib/mod_exec.c: Guard against having getrlimit(2) return an obscenely high number of maximum open file descriptions (e.g. RLIMIT_INFINITY); this was causing mod_exec to not work as expected on Mac OSX 10.4. 2009-07-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit test for ExecOnExit. 2009-07-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Adding more mod_exec unit tests, including one for the "%{...}" variable support. 2009-07-09 castaglia <castaglia> * contrib/mod_exec.c: Add support for the Variables API-style "%{...}" variables to mod_exec's variable interpolation. For example, you could now do: ExecOnExit /bin/bash -c "echo %{total_bytes_out} >> bytes-downloaded.txt" and it would work properly. 2009-07-09 castaglia <castaglia> * contrib/mod_exec.c: Fix off-by-one error which caused mod_exec to log all but the last parameter when calling exec. 2009-07-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm, tests/t/modules/mod_exec.t, tests/tests.pl: Start working on unit tests for the mod_exec module. 2009-07-08 castaglia <castaglia> * lib/sstrncpy.c: Catch a possible null pointer exception in sstrncpy(), if the src pointer provided by the caller is null. 2009-07-08 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow the Port that appears in the testsuite proftpd.conf files to be settable directly by the unit test. 2009-07-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Oops. We only want to set the O_RDONLY flag, not to obliterate any other bits/flags set to only have O_RDONLY. 2009-07-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Attempt to work around bugs in SFTP clients using protocol version 5 or higher whose OPEN requests do not include the proper bits set for indicating whether O_RDONLY, O_RDWR, or O_WRONLY should be used. The workaround is to attempt to infer which of the O_ flags to use from the other bits the client might have provided. 2009-07-06 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2758 - ProFTPD doesn't always pay attention to AccessDenyMsg. 2009-07-06 castaglia <castaglia> * tests/t/config/accessdenymsg.t, tests/t/lib/ProFTPD/Tests/Config/AccessDenyMsg.pm, tests/tests.pl: Add unit tests for the AccessDenyMsg config directive. 2009-07-06 castaglia <castaglia> * tests/t/config/accessgrantmsg.t, tests/t/lib/ProFTPD/Tests/Config/AccessGrantMsg.pm, tests/tests.pl: Add unit tests for the AccessGrantMsg config directive. 2009-07-06 castaglia <castaglia> * tests/t/config/useralias.t, tests/t/lib/ProFTPD/Tests/Config/UserAlias.pm, tests/tests.pl: Add unit tests for the UserAlias config directive. 2009-07-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Handle the NAMED_ATTRS read and write flags in a SFTP open request, protocol version 5 or later. Also be sure to handle the case where the client may send desired access flags which seem to be read-only, but also send open flags which indicate append. 2009-07-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure to dispatch {POST,LOG}_CMD_ERR commands for aborted SFTP files, so that modules like mod_exec's ExecOnError can work properly. 2009-07-05 castaglia <castaglia> * contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: The mod_sftp module was not honoring a configuration like: <Limit WRITE> DenyAll </Limit> <Directory ~/*/*> <Limit STOR> AllowAll </Limit> </Directory> the same way between SFTP and SCP uploads. SFTP uploads were allowed properly, but SCP uploads were not. Turned out to be a problem with the path that was being used in the dir_check() calls in the SCP code; the full path was not being used as it should. Also fixed a problem where an SCP client might send duplicate filename info (once in the channel request, once in the fileinfo control message). 2009-07-04 castaglia <castaglia> * src/main.c: Install our signal handlers earlier in the startup process. The driving force behind this change is to get our SIGSEGV handler installed prior to parsing the config file; this way if a segfault occurs AND --enable-devel=stacktrace has been used, we can get the stack trace for a parsing segfault. By the time the signal handlers were being installed (i.e. after parsing) this would not have been possible. 2009-07-04 castaglia <castaglia> * doc/howto/Filters.html: When compiling POSIX regular expressions using patterns which include character classes like 'blank' et al, you DO need to use two square brackets, not just one. 2009-07-04 castaglia <castaglia> * NEWS, contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/service.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3265 - SFTP requests are logged to ExtendedLog without regard to classes. The cmd_rec.class field needed to be set on the SSH2 and SFTP cmd_recs used. 2009-07-03 castaglia <castaglia> * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#3263 - Supplying optional SFTPRekey timeout parameter causes segmentation fault. 2009-07-01 castaglia <castaglia> * doc/contrib/mod_sql.html: Mention that --enable-openssl can be used to enable the OpenSSL SQLAuthType. 2009-07-01 castaglia <castaglia> * include/version.h: Update the version.h file for the next RC release. 2009-07-01 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2009-07-01 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec, include/version.h: Updating the files for the release of 1.3.3rc1. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update mod_tls unit tests to reflect behavior of newer Net::FTPSSL Perl module. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Quell Perl interpreter warnings about redeclared variables. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: More handling of spelling differences across systems. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm: Cleanup of these older tests. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Account for spelling differences among different systems. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Fix the use of regexes in the unit tests; I was comparing the two operands in the wrong order. 2009-07-01 castaglia <castaglia> * modules/mod_auth.c, tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm: Setting "MaxLoginAttempts 1" would cause even the first login to fail, which is not the desired behavior. (The auth_tries variable was incremented using a prefix operator, rather than postfix operator.) The code was also not properly honoring the seldom-used "MaxLoginAttempts none". Adjust MaxLoginAttempts unit tests accordingly. 2009-07-01 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Modify ABOR tests to handle different response codes/messages depending on the particular timing of the handling of the ABOR by proftpd. 2009-07-01 castaglia <castaglia> * modules/mod_xfer.c: Fix possible segfault (picked up by a unit test) when a data transfer is aborted. 2009-06-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Typo. 2009-06-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/HELP.pm: Update the HELP unit test to work properly in the case where mod_tls is present. 2009-06-30 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Typo. 2009-06-30 castaglia <castaglia> * src/help.c: Actually make the code do what the comment (correctly) says it does. 2009-06-30 castaglia <castaglia> * RELEASE_NOTES: Mention the support for TimeoutLogin for the BanOnEvent directive. 2009-06-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Correct the unit test which defines custom SQLGroupInfo queries; the group lookup by member query was incorrect. 2009-06-30 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sql.html: Working on documentation for new/changed features for the upcoming 1.3.3rc1 release. 2009-06-30 castaglia <castaglia> * NEWS, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c: Bug#3243 - Broken support for AllowOverride per user/group/class conditionals. 2009-06-30 castaglia <castaglia> * modules/mod_cap.c: Use pr_module_exists() consistently; it more accurately describes the check that is being made. 2009-06-30 castaglia <castaglia> * NEWS, doc/modules/mod_cap.html, modules/mod_cap.c: Bug#3257 - CAP_AUDIT_WRITE capability needed for some PAM modules. 2009-06-30 castaglia <castaglia> * contrib/mod_sql_odbc.c: Fix some compiler warnings about shadowed variables in mod_sql_odbc. 2009-06-30 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_odbc.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c: Bug#3259 - Adding second database connection causes segfault. The array_header containing the conn_entry_t objects was allocated using the incorrect data size. 2009-06-30 castaglia <castaglia> * tests/t/config/limit/subdirs.t, tests/t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm, tests/tests.pl: Add unit test demonstrating how Bug#3077 can cause some unexpected <Limit> configurations, due to need to handle the X-variant commands. 2009-06-30 castaglia <castaglia> * contrib/mod_tls.c: Fix a bug in mod_tls' parsing of the TLSRenegotiate directive, as per: https://bugzilla.redhat.com/show_bug.cgi?id=476847 No one was nice enough to report that bug in the ProFTPD Bugzilla, though. 2009-06-29 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql_postgres.c: Bug#3251 - mod_sql_postgres should be more verbose when failing the "Backend" SQLAuthType check. 2009-06-29 castaglia <castaglia> * contrib/mod_sql_mysql.c: Stylistic nits; no functional change. 2009-06-29 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3258 - Log cluttered with "using sendfile capability" messages. 2009-06-29 castaglia <castaglia> * doc/contrib/mod_sql_sqlite.html: Mention that SQLite-3.6.5 or later is required for mod_sql_sqlite to properly support SQLLog directives for chrooted processes. 2009-06-29 castaglia <castaglia> * contrib/mod_sql_sqlite.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix mod_sql_sqlite to work properly, with regard to SQLLog updates, in a chrooted process. Note that this only works for SQLite-3.6.5 and later. Also add slightly more information if the database file for mod_sql_sqlite cannot be opened, or when the SQLLog query fails because the file cannot be opened. Add an accompanying unit test for the chrooted behavior of mod_sql_sqlite. 2009-06-25 castaglia <castaglia> * doc/howto/SQL.html: Replace the URLs to castaglia.org with URLs to proftpd.org. 2009-06-24 castaglia <castaglia> * src/main.c: If --enable-devel=stacktrace is used, then an asynchronous handler for SIGSEGV is installed. That handler doesn't go through pr_signals_handle(), so we need to make sure that the table code knows that it's still in a signal-handling state for this SIGSEGV handler. 2009-06-23 castaglia <castaglia> * RELEASE_NOTES: Update the release notes; I still need to flesh out the descriptions more before doing the 1.3.3rc1 release. 2009-06-22 castaglia <castaglia> * NEWS, src/main.c: Bug#3256 - "SO_OOBINLINE" error occuring again. This is a regression of Bug#2332, caused by code movement in 1.3.2. 2009-06-22 castaglia <castaglia> * src/fsio.c: The bug in pr_fsio_futimes(), where we were not calling the proper futimes() handler, occurred in pr_fsio_faccess() as well; it would result in another segfault, if the registered FS did not provide a faccess() handler. 2009-06-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: If no DeleteAbortedStores appears in the proftpd.conf, then the callback which closes any open filehandles could segfault, trying to deference a null pointer. Check for this, and handle it appropriately. 2009-06-22 castaglia <castaglia> * src/fsio.c: If pr_fsio_utimes() or pr_fsio_futimes() succeeds, clear the statcache; the file metadata is now stale, and needs to be refreshed. In pr_fsio_futimes(), we were calling the wrong futimes() handler. Use the right one, i.e. the one found by the while() loop. 2009-06-22 castaglia <castaglia> * src/fsio.c: Include utimes(2), futimes(3) in the debug output for a registered FS object. 2009-06-22 castaglia <castaglia> * doc/howto/Limit.html: Mention that the parsing rules for AllowUser pertain to DenyUser as well. 2009-06-21 castaglia <castaglia> * NEWS, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3247 - "TLSRequired auth" and "TLSOptions AllowPerUser" are incompatible. 2009-06-21 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Turns out that using the exit code from the `proftpd' binary for determining successful/failure of server startup is not that reliably, sadly. So now the PidFile is used for sending a signal to the server; if that succeeds, then the server has started successfully. 2009-06-21 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: If the server fails to start, throw an exception, rather than letting the caller assume that the server started successfully. 2009-06-21 castaglia <castaglia> * tests/t/config/ftpaccess/empty.t, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm, tests/tests.pl: Add unit test for an empty .ftpaccess file, for investigating/regressing Bug#3240. 2009-06-21 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3253 - Support for %S variable in SQL queries. 2009-06-20 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow unit tests to specify the User, Group names to use in the generated config file, if needs be. 2009-06-20 castaglia <castaglia> * src/fsio.c: Check for an ENOSYS errno when using futimes(2), in case the platform provides a stub which does not actually do anything. Fallback to using utimes(2) if this happens. 2009-06-20 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: When mod_sftp handles a restart, it needs to clear any passphrases held in memory. 2009-06-20 castaglia <castaglia> * contrib/mod_sql.c: Adjust the ordering of the custom SQLNamedQuery optional queries which can be used for customizing SQLUserInfo. In particular, we need to add the ability to specify the query to look up a user given a UID; this is useful for modules like mod_quotatab, which may need to find the owner user/group for a file based on that file's owner UID/GID. 2009-06-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix format warning about data type mismatches; this warning only occurs on 64-bit machines. An explicit cast to the supported off_t type (or its nearest equivalent) is all that's needed here. 2009-06-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm, tests/t/modules/mod_cap.t, tests/tests.pl: Start on unit tests for the mod_cap module. 2009-06-19 castaglia <castaglia> * tests/t/config/allowoverwrite.t, tests/t/lib/ProFTPD/Tests/Config/AllowOverwrite.pm, tests/tests.pl: Add unit tests for the AllowOverwrite directive. 2009-06-19 castaglia <castaglia> * contrib/mod_sftp/fxp.c: When setting attributes on a file, make sure that we check the client-sent attribute flags in the same way as when we parse those attribute values (i.e. be sure to be protocol version-specific when necessary). Otherwise we might do the wrong thing if the client sends a badly flagged request. 2009-06-10 castaglia <castaglia> * configure: Updated configure. 2009-06-10 castaglia <castaglia> * configure.in: Trying to compile proftpd using "--enable-nls --with-shared=mod_lang", in order to build mod_lang as a shared module, was causing the configure script to complain of duplicate build requests. Fix this. 2009-06-10 castaglia <castaglia> * NEWS, contrib/mod_ban.c, doc/contrib/mod_ban.html: Bug#3249 - mod_ban support for TimeoutLogin. 2009-06-09 castaglia <castaglia> * modules/mod_core.c: If the SITE CHGRP/CHMOD commands are denied by <Limit> sections, set errno to EACCES, so that hopefully the user's client can receive a more helpful error response code. 2009-06-09 castaglia <castaglia> * modules/mod_core.c: Add debug logging when the SITE CHMOD/CHGRP commands are denied because of <Limit> sections in the configuration. 2009-06-03 castaglia <castaglia> * contrib/mod_sftp/auth.c: Make sure that any configured SFTPDisplayBanner is only sent once to the connecting client. 2009-06-03 castaglia <castaglia> * contrib/mod_sftp/keys.c: Add a missing PRIVS_RELINQUISH call. Adjust spacing in that same area, so that the formatting is consistent. 2009-05-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add test case to make sure that RootLogin works properly in mod_sftp. 2009-05-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Fix typo in mod_rewrite PORT rewriting config. 2009-05-27 castaglia <castaglia> * doc/howto/Rewrite.html: Fix typo/omission in Rewrite howto. 2009-05-27 castaglia <castaglia> * contrib/mod_sftp/auth.c: Properly honor RootLogin (and its absence) in mod_sftp. This includes generating the 'mod_auth.root-login' event, just as mod_auth does. 2009-05-27 castaglia <castaglia> * contrib/dist/rpm/proftpd.logrotate: Bug#3245 - proftpd.logrotate assumes location of `kill' command. Simply rely on PATH to find the appropriate location. 2009-05-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Add test showing that a file with leading whitespace in its name can be downloaded. 2009-05-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Yet more redundant variables removed. 2009-05-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: More redundant variables removed. 2009-05-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm: Remove another redundant variable declaration. 2009-05-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Remove redundant variable declaration. 2009-05-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Add unit test demonstrating that upload a file whose name begins with whitespace is possible. Update all tests to use 'tests.log' as the logfile name. 2009-05-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm, tests/t/modules/mod_ifsession.t: Start working on unit tests for mod_ifsession's functionality. This first test is inspired/used for verifying Bug#3243. 2009-05-19 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow tests to request to NOT have default configs used. This is handy when dealing with mod_ifsession tests, for example. 2009-05-19 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Had a request to use the %{dist} variable in the RPM Release tag as well. Makes no never mind to me. 2009-05-18 castaglia <castaglia> * Make.rules.in, Makefile.in, utils/ftpcount.1.in, utils/ftpscrub.8.in, utils/ftptop.1.in, utils/ftpwho.1.in: Fix Bug#3242, which is a follow-up to Bug#2613. Modify the utility man pages to reflect the changed path to the default scoreboard file, and remove the now-redundant $(rundir) Make variable. 2009-05-18 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Martin Edlman contributed RPM .spec patch to handle empty static_modules variable when the mod_facl module is not requested. 2009-05-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logins.pm: Add regression test showing that multiple attempts to send USER (i.e. after the first attempt fails) will succeed as expected. 2009-05-15 castaglia <castaglia> * contrib/mod_sftp/scp.c: I have no clue how this code was compiling/working for my tests earlier today, but it certainly needs to be fixed. Weird. 2009-05-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Fix the DeleteAbortedStores support. I did have it such that only HiddenStores files would be deleted if DeleteAbortedStores was enabled. Then, for aborted sessions, deleted _all_ open filehandles. Which is not correct either (we don't want to delete files that were being downloaded, for example). This changes the DeleteAbortedStores so that we only delete aborted _uploaded_ files. Hopefully. 2009-05-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: [no log message] 2009-05-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for HiddenStores directive using SCP. The test is not as thorough as I would like; the Net::SSH2 SCP interface is not as flexible. Still, it does the trick. 2009-05-14 castaglia <castaglia> * contrib/mod_sftp/scp.c: This adds support for HiddenStores, DeleteAbortedStores, and 'incomplete' TransferLog entries to SCP. 2009-05-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Cut-n-paste error. 2009-05-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Add a trace message for renaming of a HiddenStores file. 2009-05-14 castaglia <castaglia> * doc/contrib/mod_sftp.html: HiddenStores is now supported by mod_sftp. 2009-05-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added unit tests for 'incomplete' TransferLog entries via SFTP. 2009-05-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Write 'incomplete' TransferLog entries for downloads/uploads that have been aborted (i.e. not closed by the client before the channel was closed/session ended). Also fixes a bug introduced yesterday with the DeleteAbortedStores support, where a config which did not have DeleteAbortedStores would segfault (or the process would wander off into the memory weeds, depending on your arch). 2009-05-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression tests for HiddenStores and DeleteAbortedStores via SFTP uploads. 2009-05-13 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c: Added support for the HiddenStores and DeleteAbortedStores directives for SFTP. 2009-05-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add tests for TransferLog entries generated from downloading/uploading via SCP. 2009-05-13 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure that the TransferLog entry for a file deleted via SFTP in a chrooted session is still the absolute path of the file, regardless of the chroot. 2009-05-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add test for the TransferLog entry generated when deleting a file via SFTP in a chrooted session. 2009-05-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Add regression test for the 14-digit version of the SITE UTIME command. 2009-05-11 castaglia <castaglia> * RELEASE_NOTES: Warn of the change to the values in the service-name field of the TransferLog. 2009-05-11 castaglia <castaglia> * tests/api/scoreboard.c: If the API testsuite is run with root privs, then one of the scoreboard tests will fail with a different errno value; check for this, and handle it as appropriate. 2009-05-11 castaglia <castaglia> * tests/Makefile.in: Make sure the privs.o code is linked into the API tests. 2009-05-11 castaglia <castaglia> * tests/Makefile.in: Separate the API and the running tests into two separate make targets. 2009-05-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test for the TransferLog delete file entries for SFTP. 2009-05-11 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure that deleting a file via SFTP generates the proper TransferLog entry. 2009-05-09 castaglia <castaglia> * contrib/mod_sftp/scp.c: Wolfgang Breyha correctly pointed out that these path-trimming loops should have a "pathlen > 1" check, not "pathlen > 0". This was causing problems when trying to use scp to upload to '/'; eventually a segfault would ensue. 2009-05-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added unit test for the TransferLog generated by downloading a file via sftp. 2009-05-08 castaglia <castaglia> * contrib/mod_sftp/auth.c, src/xferlog.c: Support TransferLogs in mod_sftp. This required a tweak to the TransferLog code so that it wrote the proper service name (e.g. "ftp", "sftp", etc); it had been hardcoded to "ftp". 2009-05-06 castaglia <castaglia> * contrib/mod_sftp/packet.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make sure that mod_sftp sends a disconnect message when it does not handle the client request. For example, if a client requests an SSH2 channel before it has authenticated, mod_sftp considers it an "unsupported protocol sequence". But it was not sending the disconnect message to the client when this happened; this has been fixed. Added a unit test to prevent regressions. 2009-05-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Add regression test demonstrating that downloading a file from a directory whose name contains a space works as expected. 2009-05-03 castaglia <castaglia> * contrib/mod_sftp/scp.c: Fix the handling of recursive uploads of directories via SCP; it was completely broken. 2009-05-03 castaglia <castaglia> * contrib/mod_sftp/auth.c: Be sure to dispatch the USER cmd_rec to the POST_CMD/LOG_CMD handlers *before* calling the PASS PRE_CMD handler. Otherwise, mod_delay might see longer delays for both USER and PASS commands when handling SSH2 connections when it isn't necessary. 2009-05-02 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: If we receive an EOF while reading the banner, don't try to use strerror(), as it will result in a misleading log message. 2009-05-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Added unit tests for the 'OpenSSL' SQLAuthType. 2009-05-01 castaglia <castaglia> * doc/howto/ListOptions.html: Mention the new -B ListOption. 2009-05-01 castaglia <castaglia> * modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Modify the fix for Bug#3032 even more. Instead of replacing non-printable characters with '?' in the non-NLS case, add support for a -B ListOption (defaults to off). Some users noted that the previous fix broke things for them, as they _assumed_ that proftpd would not alter a UTF8 path (even for the non-NLS case). By supporting a -B ListOption, sites which do want to see the non-printable characters can request that behavior. The -B ListOption is not supported if NLS support is enabled. 2009-04-30 castaglia <castaglia> * src/main.c: Add trace logging for when the 'requires_auth' check fails. 2009-04-30 castaglia <castaglia> * modules/mod_cap.c, src/main.c: Make mod_cap's POST_CMD PASS handler be like every other modules, and NOT require that the client be authenticated. That particular check is handled earlier in the session lifecycle. 2009-04-30 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: A proftpd user in the forums mentioned encountering the "Cannot assign requested address" error when attempting active data transfers. Add a unit test which demonstrates how this error can occur (usually because of badly behaved FTP clients which do not cleanly close the data connection once done with it). 2009-04-30 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: If we need to explicitly specify the PORT argument, then make sure that we open an appropriate listening socket based on that argument; Net::FTP does not do this for us. Sigh. 2009-04-29 castaglia <castaglia> * contrib/mod_tls.c: OpenSSL-0.9.8j enables TLS extensions by default. This includes, among other things, SSL/TLS tickets. However, some older clients do not interoperate well with TLS extensions like this enabled. So to preserve the principle of least surprise, disable the use of SSL/TLS tickets. 2009-04-29 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: After a restart, mod_sftp needs to re-allocate and re-compile the regexes for known client versions with bugs; the compiled regex memory pool is cleared during a restart. Failure to do this can result in a segfault after the restart. Add an accompanying unit test. 2009-04-29 castaglia <castaglia> * modules/mod_ls.c: Quell compiler warnings about unused variables when --enable-nls is used. 2009-04-28 castaglia <castaglia> * doc/contrib/mod_exec.html: Include the %w variable in the mentioned list of supported variables. 2009-04-28 castaglia <castaglia> * doc/contrib/mod_exec.html, doc/contrib/mod_shaper.html: Update the mod_exec and mod_shaper docs. 2009-04-28 castaglia <castaglia> * contrib/mod_exec.c: The mod_exec module was not registering for the proper event name for handling the unloading of the module. 2009-04-28 castaglia <castaglia> * NEWS, README.modules, RELEASE_NOTES, contrib/mod_exec.c, doc/contrib/mod_exec.html: Added mod_exec to contrib modules. 2009-04-28 castaglia <castaglia> * doc/howto/TLS.html: Add TLS FAQ about whether FTPS protects both control and data connections (it does). 2009-04-28 castaglia <castaglia> * doc/contrib/mod_sftp.html: Added SFTP FAQ about having an SFTP-only proftpd. 2009-04-28 castaglia <castaglia> * tests/tests.pl: Run the DisplayQuit tests as part of the testsuite. 2009-04-28 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DisplayQuit.pm: Adding tests for the DisplayQuit directive. 2009-04-27 castaglia <castaglia> * NEWS, README.modules, RELEASE_NOTES, contrib/mod_shaper.c, doc/contrib/mod_shaper.html: Add mod_shaper to the contrib/ modules. 2009-04-25 castaglia <castaglia> * contrib/mod_rewrite.c: Fix rewrite_log() so that it uses pr_log_vwritefile(). Make rewrite_openlog() handle the WRITABLE_DIR and SYMLINK return values from pr_log_openfile(). 2009-04-25 castaglia <castaglia> * modules/mod_xfer.c, src/display.c, tests/t/config/displayquit.t, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm: Fix handling of multiline Display files. Update the handling of DisplayFileTransfer files such that they replace the 226 response message, rather than prepending to it. 2009-04-24 castaglia <castaglia> * modules/mod_core.c: Fix another unsafe use of sizeof() on a pointer. 2009-04-24 castaglia <castaglia> * src/dirtree.c: Fix unsafe sizeof(); it was being used on a pointer, not on a static buffer. 2009-04-24 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Increase the allocated buffer size for a READDIR response, and try to be smarter about the buffer size. 2009-04-24 castaglia <castaglia> * modules/mod_cap.c: Refine the criteria for using CAP_SETUID/CAP_SETGID. In addition to checking for the mod_sftp and mod_exec modules, make sure that those modules are enabled via their respective Engine directives. This is to handle cases where the modules might be present in the executable but not enabled via config. 2009-04-24 castaglia <castaglia> * contrib/mod_sftp/utf8.c: If UTF8 encoding/decoding of a string fails, log the error and return the original string (instead of returning NULL). 2009-04-24 castaglia <castaglia> * contrib/mod_sftp/auth.c: No need to acquire root privs explicitly before dropping them. 2009-04-24 castaglia <castaglia> * modules/mod_cap.c: On Linux, the mod_cap module will interfere with modules/code that wishes to drop root privs completely, e.g. mod_exec (when executing scripts), mod_sftp (after authenticating), or when the RootRevoke directive is used. The problem is that the CAP_SETUID and CAP_SETGID capabilties, needed for dropping root privs, are not enabled by mod_cap. This change adds the CAP_SETUID and CAP_SETGID capabilities if mod_exec or mod_sftp is present, or if "RootRevoke on" is found in the config. Minor stylistic cleanup is also part of this change. 2009-04-24 castaglia <castaglia> * modules/mod_ls.c: When generating directory listings, set the ASCII flag after the data connection has been successfully opened consistently. Some places were setting the flag before the data connection open, some after. 2009-04-24 castaglia <castaglia> * configure: Updated configure. 2009-04-24 castaglia <castaglia> * configure.in: Automatically set the PR_USE_OPENSSL define if mod_sftp is requested, just as we do when mod_tls is requested. 2009-04-23 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Quell a compiler warning about a declared but not used variable. 2009-04-23 castaglia <castaglia> * contrib/mod_quotatab.c: The mod_quotatab module really should report when it fails to open the configured QuotaLog for any reason. 2009-04-23 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Fix minor case in the handling of the 'sftpUTF8ProtocolVersion' SFTPClientMatch attribute where the path description for a READDIR request may need to be encoded, depending on the chosen SFTP UTF8 protocol version. 2009-04-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Update the unit tests for Bug#3032 to only run if NLS support is not enabled. 2009-04-23 castaglia <castaglia> * modules/mod_ls.c: Forgot to add the NLS conditional to the handling of NLST as well. 2009-04-23 castaglia <castaglia> * modules/mod_ls.c: Modify the fix for Bug#3032 so that it is only used of NLS support is not being used; the encoding can cause problems for the isprint(3) function. 2009-04-23 castaglia <castaglia> * NEWS, src/inet.c: Bug#3237 - "error setting IPV6_V6ONLY: Protocol not available" message filling up log file. The change was to not try to set the IPV6_V6ONLY socket option on an IPv4-mapped IPv6 address. 2009-04-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Quell more compiler warnings about possbily using variables before they have been initialized. 2009-04-21 castaglia <castaglia> * contrib/mod_quotatab.c: Make sure that the trace message is based on the actual lock type, not on the type as passed in by the caller. 2009-04-21 castaglia <castaglia> * contrib/mod_quotatab.c: Actually use the lock type given by the caller. Ouch. 2009-04-21 castaglia <castaglia> * contrib/mod_sftp/kex.c: Handle "SFTPCompression off" properly. 2009-04-21 castaglia <castaglia> * contrib/mod_quotatab.c: More changes to the QuotaLock lock operation handling, trying to avoid spinning in a loop too tightly. 2009-04-21 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Make sure that the variables are initialised, when handling REALPATH requests, before a permissions check. 2009-04-21 castaglia <castaglia> * contrib/mod_quotatab.c: Retry the lock operation on the QuotaLock for EAGAIN as well. 2009-04-21 castaglia <castaglia> * tests/t/config/displayfiletransfer.t, tests/t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm, tests/tests.pl: Add unit tests for the DisplayFileTransfer directive. 2009-04-20 castaglia <castaglia> * src/dirtree.c: Make sure that we ONLY use the PR_TUNABLE_XFER_BUFFER_SIZE (which IS set in include/options.h) in the case where we cannot determine the best sizes automatically from the kernel. 2009-04-20 castaglia <castaglia> * doc/contrib/mod_sftp.html: Document the sftpUTF8ProtocolVersion SFTPClientMatch attribute. 2009-04-20 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.c: Added support for a 'sftpUTF8ProtcolVersion' SFTPClientMatch attribute. This attribute can be used to switch the SFTP protocol version at which mod_sftp uses UTF8 encoding; the normal protocol version at which this happens is 4 (and above). Some clients may need the UTF8 encoding when using protocol version 3, however. 2009-04-17 castaglia <castaglia> * doc/contrib/mod_sftp.html: Clarify when the various SSH2 authentication methods are offered. Fix a typo. 2009-04-17 castaglia <castaglia> * contrib/mod_sftp/channel.c: Update the trace log message about the size of the CHANNEL_DATA sent to use just the payload size, not the packet size. 2009-04-17 castaglia <castaglia> * contrib/mod_sftp/channel.c: Fix the calculation of the remote channel window size by NOT including the length of the "header" fields (9 bytes) in the amount to decrement for the remote window size. This was causing mod_sftp to see the remote window "close" prematurely (depending on the amount of data transferred and the initial client window size). 2009-04-15 castaglia <castaglia> * doc/howto/Filters.html: Add the example PathAllowFilter that only allows printable characters. 2009-04-15 castaglia <castaglia> * doc/howto/Filters.html, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Update the doc, and unit test, to reflect the proper pattern to use. 2009-04-15 castaglia <castaglia> * doc/howto/Filters.html: Give an example of using PathDenyFilter to prevent filenames which contain non-printable characters. 2009-04-15 castaglia <castaglia> * NEWS, modules/mod_ls.c, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Bug#3032 - CR character allowed in filename but not shown. 2009-04-14 castaglia <castaglia> * doc/howto/Tracing.html, src/trace.c: Remove the 'privs' channel from the default channels; it is not as productive to see the privs messages as the other channels in the default group. 2009-04-14 castaglia <castaglia> * modules/mod_delay.c: Make sure a pointer is initialized to NULL, so that if a matching protocol row is not found, a segfault will occur. (It's better than reading off into some random stack memory address.) 2009-04-14 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#3230 - Differentiate among protocol connections in DelayTable. 2009-04-14 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the list of config directives that are not supported by mod_sftp. 2009-04-14 castaglia <castaglia> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add SFTP unit tests to ensure that mod_sftp honors the AllowOverwrite, HideFiles, and Path*Filter directives. Note that similar tests are needed for the SCP code paths as well. 2009-04-13 castaglia <castaglia> * configure: Updated configure. 2009-04-13 castaglia <castaglia> * configure.in: Add a check for --with-modules=mod_dso, and warn the admin to use --enable-dso instead. 2009-04-10 castaglia <castaglia> * configure: Updated configure. 2009-04-10 castaglia <castaglia> * configure.in: Typo. 2009-04-09 castaglia <castaglia> * modules/mod_facts.c: Use cmd->arg, rather than concatenating cmd->argv[] ourselves, in order to deal with paths with spaces. This is a better approach, given that NLS encoding of paths might cause the concatenation we were doing to do the wrong thing. 2009-04-09 castaglia <castaglia> * modules/mod_facts.c: Clean up some of the logging when opendir(3) fails when handling MLSD. 2009-04-09 castaglia <castaglia> * src/timers.c: Add trace logging when timers are reset. 2009-04-09 castaglia <castaglia> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: mod_sftp now honors DirFakeMode. 2009-04-09 castaglia <castaglia> * tests/t/config/dirfakemode.t, tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm, tests/tests.pl: Add unit test for the DirFakeMode directive. 2009-04-09 castaglia <castaglia> * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Set the session.xfer.direction variable when using SFTP or SCP. 2009-04-08 castaglia <castaglia> * contrib/mod_sftp/fxp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make mod_sftp honor HideNoAccess (and other <Directory> config directives). 2009-04-08 castaglia <castaglia> * contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add the checking for valid paths, handling of open() failures, PRE_CMD errors, etc when uploading via SCP into the recv_finfo() function. The problem was that those checks were happening *after* recv_finfo() had sent the "OK" message back to the SCP client; the client would then commence uploading. Any errors of these sorts need to send a "NOT OK" message to the SCP client before the upload occurs. 2009-04-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm, tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Fix more unit tests to run properly as root. 2009-04-07 castaglia <castaglia> * contrib/mod_tls.c: Typo/bug. 2009-04-07 castaglia <castaglia> * src/ftpdctl.c: Include the privs.h header so as to avoid compiler warnings about the pr_privs* functions not being previously declared. 2009-04-07 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Use the proper number of arguments for pr_ctrls_log(), and avoid pedantic compiler warnings/errors. 2009-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Another set of tests to clean up so that they run properly when root. 2009-04-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/XMKD.pm: More cleanup of unit tests that don't work properly when run as root. 2009-04-07 castaglia <castaglia> * modules/mod_core.c: Fix bug introduced by the patch for Bug#2067. Style cleanup there, too. 2009-04-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Order.pm, tests/t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm: Fixup more test cases so run properly when run as root. 2009-04-06 castaglia <castaglia> * src/privs.c: The testsuite found that the privs.c code was blocking signals, and then not unblocking them in certain cases. This is a Bad Thing. Fix the bug. 2009-04-06 castaglia <castaglia> * contrib/mod_sftp/channel.c: Make sure that the max data payload we can send is larger than the header length. Otherwise, we would have bombed out due to bad logic on my part. 2009-04-06 castaglia <castaglia> * doc/howto/Tracing.html, src/trace.c: Add the "privs" logging channel to the default list of channels. 2009-04-06 castaglia <castaglia> * Make.rules.in, include/privs.h, modules/mod_ctrls.c, modules/mod_delay.c, modules/mod_log.c, src/ftpdctl.c, src/privs.c: Do what should have been done long ago, and move the PRIVS macros into functions, and into their own .c file. The main driving reason for this is that the PRIVS macros need to be nestable, to avoid recurrences of bugs like Bug#2242. The privs.c file adds nestable PRIVS invocations, and so far everything looks like it's still working properly. 2009-04-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm: Fix a few more tests which fail when run with root privs. 2009-04-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm, tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm: Add some unit tests for the MFF and MFMT commands, proving that using relative paths in the commands in a chrooted session work as expected. 2009-04-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/HELP.pm, tests/t/lib/ProFTPD/Tests/Commands/MFF.pm, tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm, tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Fix some of the unit tests which fail when run with root privs. Update some that simply needed to be updated to match the current code. Quell Perl warnings about redeclared variables in some cases. 2009-04-05 castaglia <castaglia> * contrib/mod_sftp/auth.c: Update mod_sftp to use session.notes for the original user name sent by the client, just as the mod_auth module does. 2009-04-05 castaglia <castaglia> * RELEASE_NOTES, contrib/mod_ban.c, contrib/mod_radius.c, contrib/mod_rewrite.c, contrib/mod_sql.c, contrib/mod_wrap.c, contrib/mod_wrap2/mod_wrap2.c, modules/mod_auth.c, modules/mod_log.c, src/display.c, src/main.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Finish Bug#2715, and have the original USER value stashed in, and retrieved from, the session.notes table. Make note of this change in the release notes as well, as it could impact module developers. 2009-04-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_rewrite.c, contrib/mod_sql.c, modules/mod_core.c, modules/mod_log.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3029 - Support a RewriteCondition variable for renames. Add a %w variable for the source path of a rename (mnemonic: "whence" the rename came); this variable is only valid for the RNTO command. Support for the %w variable is also in LogFormat and the SQLLog directives; the mod_exec module will support it as well. 2009-04-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added a mod_quotatab_sql unit test for Bug#3086. The generated log file shows that the use of QuotaLock does indeed protect the calls to quotatab_lookup() and quotatab_create(). In fact, this use of QuotaLock perfectly exercises the fixed quotatab locking in terms of lock nesting, as the quotatab_create() function itself uses write-locks (and, in the case of mod_quotatab_sql, uses the same fd for locking). 2009-04-04 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, contrib/mod_quotatab.h, contrib/mod_quotatab_sql.c: Bug#3086 - mod_quotatab write locking is ineffective. 2009-04-03 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_sftp/scp.c, contrib/mod_tls.c: If we are calling getopt(3) again in a proftpd process (i.e. after the initial call to getopt(3) when the daemon starts up), then we need make sure that the POSIXLY_CORRECT environment variable is set. A segfault in mod_sftp was occurring because of getopt(3) rearranging the array of strings; on a 64-bit machine whose pointer sizes are different than what is expected, strange things happen. Setting POSIXLY_CORRECT tells getopt(3) not to rearrange the array of strings. 2009-04-03 castaglia <castaglia> * doc/howto/Compiling.html: Mention the --with-lastlog configure option, and use an unordered list for the main/popular configure options. 2009-04-03 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Stupid Solaris prints "Not owner", instead of "Operation not permitted", for the EPERM errno. Grr. So instead of using EPERM, switch to using EACCES. 2009-04-03 castaglia <castaglia> * contrib/mod_sftp/scp.c: Catch a few places in the SCP upload code where confirmation errors were not being properly written back to the client at the right times. 2009-04-03 castaglia <castaglia> * modules/mod_auth_unix.c: Fix compilation errors when HAVE_LOGINRESTRICTIONS (AIX platform, mostly) is defined. 2009-04-01 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3233 - Dynamic config causes many copies of static configs to be merged. 2009-04-01 castaglia <castaglia> * contrib/mod_tls.c: Actually match the code to the comment, and return the connection to blocking mode if it had been so prior to the SSL_accept() call. 2009-04-01 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3234 - SSL connections can cause 100% CPU usage. In a nonblocking loop around SSL_accept(), make sure we delay a bit (using select()) before retrying the SSL_accept() call. Without the delay, the loop spins too quickly, consuming CPU. 2009-03-31 castaglia <castaglia> * contrib/mod_sftp/scp.c: Make the SCP uploading code use dir_canonical_vpath(), just as the SFTP code does (specifically the REALPATH SFTP request handler), to be consistent. (And, hopefully, to fix some reported segfaults seen when uploading via SCP.) 2009-03-31 castaglia <castaglia> * Make.rules.in: Fix a link ordering problem on Mac OSX; if the GNU gettext library is used (e.g. using --enable-nls), then libc is linked before libsupp. This causes a problem for proftpd, since libsupp contains, among other things, our own particular glob(3) implementation. If we use our glibc-glob.h header, but use the system glob(3) implementation, strange things happen. So make sure that our libraries are linked before the other libraries. Hopefully this does not cause other strange library/link order-related issues. 2009-03-31 castaglia <castaglia> * modules/mod_lang.c: Missed a dir_check() call which needs to pass the cmd_rec pointer, not just the command name. 2009-03-30 castaglia <castaglia> * src/log.c: Add some sane errno values if pr_log_openfile() fails in some cases. 2009-03-30 castaglia <castaglia> * NEWS, include/fsio.h, modules/mod_ctrls.c, src/fsio.c, src/ftpdctl.c, src/log.c, src/trace.c: Bug#3225 - Opening of files during restart can inappropriately use stdin/stdout/stderr descriptors, leading to bad behavior. This patch adds a new pr_fsio_get_usable_fd() function, for obtaining an fd (via dup(2)) which is NOT stdin/stdout/stderr. It is to be used by functions which can be called in the daemon process during startup/restart to ensure that the obtained descriptor will not cause other issues (i.e. with other code which assumes the use of stdin/stdout/stderr). I suspect that this has been the underlying cause of several inexplicable crashes/ log messages during restarts. 2009-03-30 castaglia <castaglia> * doc/howto/Rewrite.html: Another good mod_rewrite example. 2009-03-29 castaglia <castaglia> * NEWS, contrib/mod_wrap.c, contrib/mod_wrap2/mod_wrap2.c: Bug#3209 - mod_wrap2 should support the 'spawn' feature (or equivalent) of tcpwrappers. Add event generation to the mod_wrap and mod_wrap2 modules when a connection is refused. The mod_exec module can register listeners for this event, and execute a command (e.g. blockhosts/denyhosts/fail2ban) in response. 2009-03-29 castaglia <castaglia> * doc/contrib/mod_wrap.html: Add mod_wrap FAQ about Bugs #2629, #2787, #3209. 2009-03-28 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#2178 - Extend TLSRequired for <Directory> and .ftpaccess contexts. 2009-03-27 castaglia <castaglia> * contrib/mod_sftp/scp.c: More futzing with the path resolution for SCP uploading. 2009-03-27 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3043 - SQLGroupInfo should allow custom queries. 2009-03-27 castaglia <castaglia> * configure: Updated configure. 2009-03-27 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#3231 - Use getgrset(3) on AIX to emulate getgrouplist(3). 2009-03-26 castaglia <castaglia> * NEWS, modules/mod_ls.c, src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Bug#3226 - HideFiles directive not working properly in <Anonymous> sections. 2009-03-26 castaglia <castaglia> * doc/contrib/mod_sftp.html: Typo. 2009-03-26 castaglia <castaglia> * RELEASE_NOTES: Another note about use of the %{protocol} variable. 2009-03-26 castaglia <castaglia> * contrib/mod_sftp/scp.c: Fix SCP uploading to handle an OpenSSH scp client invocations like: scp <file> <addr>: scp <file> <addr>:. These were being blocked on the STOR PRE_CMD handler because mod_xfer only saw '.' as the file being uploaded, and would complain about "not a regular file". 2009-03-25 castaglia <castaglia> * doc/howto/SQL.html: Mention that the discussion about userset/usersetfast holds true for groupset/groupsetfast as well. 2009-03-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update the mod_tls unit tests to reflect changes in the recently released Net::FTPSSL-0.08. Still can't reuse the SSL session from the control connection on a data connection, though. (It's a limitation in the fact that Net::FTPSSL uses Net::SSLeay::Handle for the data connections, and Net::SSLeay::Handle does not have a way to pass in a SSL_CTX to use. Sigh.) 2009-03-25 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix the test case for Bug#3149 slightly, to avoid any DNS issues. 2009-03-25 castaglia <castaglia> * src/bindings.c: Modify the fix for Bug#2680 slightly, to avoid breaking configurations which rely on the current behavior regarding "DefaultServer on". Now, if there is a vhost with "DefaultServer on", that will be used in favor of a vhost listening on the wildcard address. 2009-03-25 castaglia <castaglia> * doc/howto/SQL.html: Add a SQL FAQ about the 'userset' and 'usersetfast' SQLAuthenticate options. 2009-03-25 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_sql.html: Update the SQLUserInfo docs to mention the fix for Bug#2434. Mention this in the release notes as well. 2009-03-25 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#2434 - Buggy interaction between custom SQLUserInfo and 'userset' SQLAuthenticate parameter. Fixing this required supporting a couple of other SQLNamedQuery names, optional, to handle the 'userset' and 'usersetfast' cases. 2009-03-24 castaglia <castaglia> * RELEASE_NOTES: Don't forget to mention the new %{protocol} variable in the release notes. 2009-03-24 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, contrib/mod_ratio.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c, contrib/mod_site_misc.c, contrib/mod_tls.c, include/dirtree.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_facts.c, modules/mod_ls.c, modules/mod_xfer.c, src/dirtree.c, tests/t/config/limit/filters.t, tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm, tests/tests.pl: Bug#2067 - Allow/Deny Filters should be supported in the <Limit> context. 2009-03-23 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c, contrib/mod_quotatab.h, contrib/mod_quotatab_file.c, contrib/mod_quotatab_ldap.c, contrib/mod_quotatab_radius.c, contrib/mod_quotatab_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3161 - Updating tallies for deleted files should occur based on file ownership. Fixing this bug required changing the mod_quotatab API such that the limit and tally objects into which data is read/written (from the backend modules) are part of the API calls, rather than using globals. That's why there's so much code churn for this particular fix. But it's a Good Thing; these changes make fixing other types of quota bugs much easier now. 2009-03-23 castaglia <castaglia> * doc/contrib/mod_rewrite.html: Update the mod_rewrite docs to mention the Bug#3028 fix. 2009-03-23 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Bug#3028 - Unable to escape special characters in RewriteRule substitution string. 2009-03-23 castaglia <castaglia> * modules/mod_ls.c: When handling the LIST output, the outputfiles() function used to do 4 sorts, linearly scanning the list of files built up using addfile(). Ostensibly this list is used for sorting 1) a la -t or -S, and 2) for supporting -C. These 4 sorts are needed only for -C, which is not used that often. Thus it is now conditional. In the future, the entire use of the struct filename structure (and the allocations out of the fpool pool which need to be freed after all of the sorting) can be avoided for every case _except_ when -C, -S, or -t is used. This too can add some performance gains to the perceived LIST response time. 2009-03-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Add a unit test for Bug#2821 for the LIST command as well. It is/can be useful for diagnosing/tuning the performance of the time needed to free all of the struct filename structures allocated for LIST entries (needed for the potential -C sorting). Further gains can be done by *only allocating* these structures if the -C option is used. Add a unit test using LIST -C, also for such tests. 2009-03-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm: More work on the <Directory>-related performance tests. 2009-03-22 castaglia <castaglia> * src/cmd.c, src/main.c: Fix the code in pr_cmd_get_displayable_str() to be a little easier to follow in my head. (Also easier to debug.) If we are going to be truncating an incoming FTP command because of the CommandBufferSize, log about this. Silent truncations are annoying to track down. 2009-03-22 castaglia <castaglia> * modules/mod_core.c: There is no reason to mark absolute paths in <Directory> sections for deferred resolution; it only adds to the login time (due to the running time of the resolve_deferred_dirs() function) needlessly. 2009-03-22 castaglia <castaglia> * src/main.c: Quell compiler warning. 2009-03-22 castaglia <castaglia> * doc/howto/Globbing.html: Updating the Globbing howto to mention the tunable name changes/additions. 2009-03-22 castaglia <castaglia> * include/options.h, lib/glibc-glob.c, src/main.c: Add new PR_TUNABLE_GLOBBING_MAX_MATCHES tunable, as part of Bug#2821. 2009-03-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/tests.pl: Add a test case used for tracking down part of Bug#2821. It's a slow test, so make sure that it is not run as part of the default testsuite. 2009-03-22 castaglia <castaglia> * modules/mod_ls.c: Set the GLOB_NOSORT flag, by default, for NLST globs. This can help to speed up the glob(3) call by not requiring that the results be sorted. This can be changed via NLST options (and the ListOptions directive). Add some debug logging on the number of matched paths found by glob(3), to aid in debugging cases where glibc's glob limits are encountered, e.g. Bug#2821. 2009-03-21 castaglia <castaglia> * modules/mod_ls.c: Improve NLST performance by NOT telling sendline() to flush _after each NLST line added_. That defeats the whole purpose of having a buffer for sending lines in batches. 2009-03-21 castaglia <castaglia> * src/pool.c: Optimize for the most common case; this is frequently called function. 2009-03-20 castaglia <castaglia> * contrib/mod_sftp/scp.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make sure that scp uploading a file into a nonexistent subdir a) fails, and b) does NOT cause a disconnect. 2009-03-20 castaglia <castaglia> * contrib/mod_sftp/disconnect.c, contrib/mod_sftp/disconnect.h: Clean up the disconnect trace log message a little when the __FUNC__ (or equivalent) macro is not supported by the compiler. 2009-03-20 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c, src/main.c: Bug#3221 - Command line defines (-D/--define) are lost on SIGHUP. 2009-03-20 castaglia <castaglia> * doc/howto/ASCII.html: Add a FAQ about why the ASCII mode restriction was placed on the SIZE command. 2009-03-20 castaglia <castaglia> * modules/mod_core.c: Make sure that any stat cache is cleared when answering a SIZE command. 2009-03-19 castaglia <castaglia> * contrib/mod_sftp/configure: Updated mod_sftp's configure. 2009-03-19 castaglia <castaglia> * contrib/mod_sftp/configure.in, contrib/mod_sftp/crypto.c, contrib/mod_sftp/mod_sftp.h.in: Add an autoconf check for the EVP_aes_{192,256}_cbc() symbols in OpenSSL. Solaris 10 shipped a crippled OpenSSL for a while, where AES support for bit lengths greater than 128 were removed. 2009-03-19 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h: Rewriting the user name in SSH2 authentication is a little bit trickier, since we need to track both the original user name sent by the client (for signature verification and such) as well as the (possibly rewritten) user name, for authentication/authorization. 2009-03-19 castaglia <castaglia> * contrib/mod_sftp/auth.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Make sure that mod_rewrite can be used to rewrite the user names given during SSH2 authentication as well. 2009-03-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit tests for the SCP+mod_rewrite cases. 2009-03-19 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Make sure that mod_rewrite can be applied to SCP commands as well. 2009-03-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Unit tests validating the use of mod_rewrite to rewrite SFTP requests. 2009-03-19 castaglia <castaglia> * contrib/mod_rewrite.c: Add a comment about why there's a test for a SYMLINK command in mod_rewrite. 2009-03-19 castaglia <castaglia> * contrib/mod_rewrite.c, contrib/mod_sftp/fxp.c: The handling of SFTP requests now honors PRE_CMD handlers such as mod_rewrite; this means you can use mod_rewrite on SFTP requests, just like you would on FTP commands. 2009-03-19 castaglia <castaglia> * doc/howto/Compiling.html: Match the example configure options to their surrounding text. 2009-03-18 castaglia <castaglia> * doc/contrib/mod_rewrite.html: Updated mod_rewrite docs to cover the %{ENV:var} syntax. 2009-03-18 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_rewrite.c, tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Bug#3219 - Support environment variable substitutions in mod_rewrite rules. 2009-03-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Add unit test for globbing <Directory> with Umask, trying unsuccessfully to reproduce an issue reported on the users mailing list. 2009-03-18 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3187 - Inconsistent mod_ban logging and display when using "BanEngine off" in an <IfClass> configuration. 2009-03-18 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: Add a reminder comment for admins, should there be trouble parsing an AuthorizedKeys file, to make sure that the file is in the correct format. 2009-03-18 castaglia <castaglia> * src/bindings.c: Enhance the patch for Bug#2680 even further, to properly handle connections to an IPv6 socket, and still looking for vhosts configured for the IPv4 wildcard address before finally falling back to DefaultServer. 2009-03-18 castaglia <castaglia> * doc/howto/Limit.html: Should include the EPRT and EPSV commands in the example for specifying only one kind of data transfer (active or passive). 2009-03-17 castaglia <castaglia> * doc/howto/Limit.html: Update the Limit docs to mention MLSD and MLST. 2009-03-17 castaglia <castaglia> * contrib/mod_sftp/fxp.c: The reading of ATTRS for SFTP protocol versions greater than 3 was using the old file attribute flag values. 2009-03-17 castaglia <castaglia> * src/dirtree.c: Fix another possible cause of Bug#3184: rewind to the start of the /etc/protocols file via a call to setprotoent(3), if available. 2009-03-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, src/bindings.c: Bug#2680 - Add support for <VirtualHost 0.0.0.0>. 2009-03-16 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Make sure that %V gets resolved to the DNS name of the IP address to which the client connected. This can differ from what is expected, e.g. when DefaultServer marks a vhost (which is for a different IP address) that handles the connection. 2009-03-16 castaglia <castaglia> * modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: The MLSD command, as per RFC, does not support glob characters. However, this does not mean that we should error out on an MLSD command which does contain glob characters; there could be a valid directory with such characters in the path. 2009-03-14 castaglia <castaglia> * contrib/mod_sftp/rfc4716.c: When parsing RFC4716 formatted keys, make sure the input buffer is large enough to handle the longest allowable line: 72 bytes + CRLF + NUL = 75 bytes. And if the line is "too long", log that length. 2009-03-13 castaglia <castaglia> * doc/howto/Quotas.html: Another common cause of quota tallies not being updated. 2009-03-13 castaglia <castaglia> * src/inet.c: Jesús Alastruey pointed out there was an off-by-one bug in the handling of the PassivePorts port selection code. The highest port number was not being properly shuffled. 2009-03-12 castaglia <castaglia> * configure: Updated configure. 2009-03-12 castaglia <castaglia> * configure.in: Guard against empty --with-FOO arguments; these lead to strange build failures such as: configure: error: source file './modules/d_ident.c' cannot be found -- aborting 2009-03-12 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Return the %preun RPM build state to its previous implementation; no need to futz with it for Bug#2613. 2009-03-12 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Updating the proftpd.spec to match Bug#2613. 2009-03-12 castaglia <castaglia> * configure: Updated configure. 2009-03-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, configure.in: Bug#2613 - Configure script should not append '/proftpd' to the --localstatedir. 2009-03-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit tests for the SSL session reuse requirement for data transfers, and that using the NoSessionReuseRequired TLSOption does in fact relax this requirement properly. 2009-03-12 castaglia <castaglia> * modules/mod_xfer.c: If pr_data_sendfile() fails because of EOVERFLOW, fall back to transmitting the data normally. Less distracting for admins this way. 2009-03-12 castaglia <castaglia> * contrib/mod_tls.c: Fix stale pointer segfault caused when an FTPS client fails to reuse the SSL session from the control connection for a data transfer, and the SSL session has to be shut down. 2009-03-11 castaglia <castaglia> * contrib/mod_tls.c: Stylistic cleanups in tls_verify_crl(). 2009-03-11 castaglia <castaglia> * tests/t/etc/modules/mod_tls/ca-crl.pem, tests/t/etc/modules/mod_tls/client-cert.pem, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add a unit test for TLSCARevocationFile. Note that this currently requires a hacked version of Net::FTPSSL; I am contributing the patch to the upstream author. (The patch is necessary to configure the client cert that a Net::FTPSSL client will present when talking to an FTPS server.) 2009-03-11 castaglia <castaglia> * doc/howto/Compiling.html: Note the additional behavior when --enable-devel=coredump is used (and emphasis why this is a Bad Idea unless you really know what you're doing). 2009-03-11 castaglia <castaglia> * doc/contrib/mod_wrap2_sql.html: Fix the mod_wrap2_sql documentation, thanks to Szymon Juraszczyk. 2009-03-11 castaglia <castaglia> * contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Further improvements to the fix for Bug#3048 and Bug#3215 from Szymon Juraszczyk. 2009-03-10 castaglia <castaglia> * NEWS, contrib/mod_wrap2_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Bug#3215 - mod_wrap2_sql should support comma-delimited lists of clients. 2009-03-10 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_ctrls_admin.c, contrib/mod_tls.c, include/compat.h, include/ctrls.h, include/mod_ctrls.h, modules/mod_ctrls.c, modules/mod_delay.c, modules/mod_dso.c, src/ctrls.c, src/ftpdctl.c: Bug#3211 - Compile error when using --enable-ctrls --with-shared=mod_ctrls. 2009-03-10 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_tls_shmcache.html: Added docs for mod_tls_shmcache.html. 2009-03-10 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Forgot to include the $Libraries$ hint for mod_tls_shmcache.c. Useful for when it is compiled as a shared modulel via prxs. 2009-03-10 castaglia <castaglia> * doc/contrib/mod_tls.html: Typo. 2009-03-10 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_tls.html: Add docs for the NoSessionReuseRequired TLSOption added in Bug#3210. 2009-03-10 castaglia <castaglia> * contrib/mod_tls.c: Typo. 2009-03-10 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3210 - Data transfers protected by SSL/TLS should reuse the control connection SSL session. 2009-03-10 castaglia <castaglia> * RELEASE_NOTES: Mention the new directives and module. Fuller descriptions will be added later. 2009-03-10 castaglia <castaglia> * doc/contrib/mod_tls.html: Update the mod_tls docs to include TLSControlsACLs, TLSSessionCache, and the new mod_tls ftpdctl actions. 2009-03-10 castaglia <castaglia> * contrib/mod_tls.c: Include the name of the external session cache in the 'clear' and 'remove' action outputs. 2009-03-10 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Add some identifying information about the module itself in the status output. 2009-03-10 castaglia <castaglia> * contrib/mod_tls.c: Make the default external SSL session cache timeout 30 minutes. FTPS sessions are longer than HTTPS requests, hence why our default session timeout is longer than OpenSSL's default (which is 5 minutes). 2009-03-10 castaglia <castaglia> * contrib/mod_tls_shmcache.c: Add new contrib module, mod_tls_shmcache, which provides a shared-memory (SysV IPC shared memory) implementation for SSL session caching among multiple processes. Need at least one implementation of an external SSL session cache for Bug#3207. 2009-03-10 castaglia <castaglia> * NEWS, contrib/mod_tls.c, contrib/mod_tls.h: Bug#3207 - Support for SSL/TLS session caching across processes/machines. 2009-03-10 castaglia <castaglia> * contrib/mod_tls.c: Once we know the vhost handling the connection, use that vhost pointer as the "session ID context" for SSL/TLS sessions. This ensures that SSL sessions to different vhosts (which may have different SSL security policies configured) end up in different groups (i.e. no chance of session ID collision between sessions to two different vhosts). 2009-03-10 castaglia <castaglia> * doc/howto/Limit.html: Add another example <Limit> config, for a read-only account. 2009-03-09 castaglia <castaglia> * contrib/mod_ban.c: Pedantic ANSI C compilers might complain about the trailing comma. 2009-03-09 castaglia <castaglia> * contrib/mod_tls.c: If TLSCACertificatePath is configured, properly skip the "." and ".." directories. The code was there, but it was not doing this properly (it was trying to read "." and ".." as filenames in that directory, and thus littering the TLSLog with ugly, unnecessary messages). 2009-03-09 castaglia <castaglia> * doc/howto/Limit.html: Example <Limit> config of making a directory undeletable, but allowing its subdirectories to be deletable. 2009-03-09 castaglia <castaglia> * src/proftpd.8.in, utils/ftpcount.1.in, utils/ftpscrub.8.in, utils/ftptop.1.in, utils/ftpwho.1.in: Bug#3212 - Duplicate '/run/' in manpages. 2009-03-09 castaglia <castaglia> * contrib/mod_tls.c: Typo. 2009-03-09 castaglia <castaglia> * contrib/mod_tls.c: If the EnableDiags TLSOption is enabled, log some SSL session stats when the session ends. 2009-03-08 castaglia <castaglia> * contrib/mod_ban.c: Typo. 2009-03-07 castaglia <castaglia> * contrib/mod_sftp/kbdint.c: Need to return -1, not zero, if we fail to unregister a 'keyboard-interactive' driver for some reason. 2009-03-07 castaglia <castaglia> * contrib/mod_sftp_pam.c: Add the same macro for const-ness (or not) for the pam_conv function prototype as done in mod_auth_pam to mod_sftp_pam. 2009-03-07 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Bug#2652 - Installing standard RPM fails when /home mounted from NFS filesystem on root_squashed host. Add support for `rpmbuild --define 'nohome 1' ...' in the provided proftpd.spec. 2009-03-07 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec: Bug#2985 - Newest .spec file requires relatively current version of RPM. 2009-03-06 castaglia <castaglia> * contrib/mod_tls.c: If we get to the point that we need to generate our own random seed data for OpenSSL's PRNG, then allocate some uninitialized memory off the heap and use that for the seed. This complements the existing use of uninitialized stack data as part of the generated seed. 2009-03-05 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added a unit test for the case where mod_sftp and mod_vroot are used, and the SFTP client sends an OPENDIR request to a path which happens to be a symlink to a path which lies outside of the vroot area. What a mess. 2009-03-05 castaglia <castaglia> * doc/contrib/mod_sftp.html: The mod_sftp modules DOES support UseLastlog now. 2009-03-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c: When handling an OPENDIR request, resolve the given path to the best local path before calling pr_fsio_opendir(). In most cases, this is not important. But when using mod_vroot and the path being opened is a symlink to another directory, it IS important. Also log to the "fileperms" log channel if pr_fsio_readlink() fails when handling a READLINK request. 2009-03-05 castaglia <castaglia> * src/dirtree.c: Minor stylistic cleanups. 2009-03-05 castaglia <castaglia> * contrib/mod_sftp/auth.c, modules/mod_auth.c: Update mod_sftp to use the new pr_auth_get_home() function (for honoring any RewriteHome configuration). Change the timing of the call to pr_auth_get_home() in mod_auth, so that it happens *before* any substitution of variables (e.g. '%u') in the home dir. This allows the rewritten home directory to contain variables like '%u'. 2009-03-05 castaglia <castaglia> * RELEASE_NOTES: Updated release notes with info about RewriteHome. 2009-03-05 castaglia <castaglia> * tests/t/config/rewritehome.t, tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm, tests/tests.pl: Added unit test for the new RewriteHome configuration directive. 2009-03-05 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c, include/auth.h, modules/mod_auth.c, src/auth.c: Bug#3167 - Support rewriting of home directories. 2009-03-05 castaglia <castaglia> * modules/mod_core.c: Tell the admin to allocate a larger PassivePorts range, when we encounter the case where a port in the defined PassivePorts range cannot be used because all PassivePorts ports are in use. 2009-03-05 castaglia <castaglia> * contrib/mod_rewrite.c, contrib/mod_sftp/rfc4716.c, contrib/mod_wrap2_file.c, include/fsio.h, modules/mod_facts.c, modules/mod_ls.c, src/display.c, src/fsio.c, src/netio.c, src/parser.c: Replace the use of static buffers of size PR_TUNABLE_BUFFER_SIZE in many placese with dynamically allocated buffers of more optimal sizes. See Bug#3206 for more details. 2009-03-05 castaglia <castaglia> * modules/mod_auth_pam.c: Make extra sure that our PAM_CONST macro doesn't collide with any system macro of the same name by calling it PR_PAM_CONST. 2009-03-05 castaglia <castaglia> * modules/mod_auth_pam.c: I finally got tired of seeing this compiler warning: mod_auth_pam.c:88: warning: function declaration isn't a prototype because mod_auth_pam used K&R style (for some reason) in one place. So fix it up to be ANSI style, and deal with the platform-specific const-ness of one of the arguments. 2009-03-05 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Clients using later SFTP protocol versions can include attribute flags in the stat (STAT, FSTAT, LSTAT) requests to indicate the specific attributes in which the client is interested. Even though mod_sftp does not honor these hints, it now logs the text version of those flags; previously it was simply logging the raw value. As a bitmask, this logged number was not especially enlightening. Also added logging of the textified flags which are unsupported, in the case of an OPEN request which is rejected because of unsupported flags in the request. 2009-03-04 castaglia <castaglia> * src/dirtree.c: Corrected stale/misleading comment. 2009-03-04 castaglia <castaglia> * modules/mod_auth_unix.c, src/auth.c: Fix the implementation of pr_auth_authorize(). Now, mod_auth_unix (the only known 'authorize' handler at present) will explicitly return ERROR to the 'authorize' call if the user is not authorized. This way, an 'authorize' dispatch which gets a result of HANDLED or DECLINED treats the user as "authorized". The DECLINED case means that a user can be authenticated via e.g. mod_sql (which does NOT provide an 'authorize' handler), and be successfully authorized as well. 2009-03-04 castaglia <castaglia> * contrib/mod_sftp/interop.c: Include the SSH2 client version info in the TraceLog. 2009-03-04 castaglia <castaglia> * contrib/mod_sftp/keys.c: Add trace logging for channel "ssh2", level 17, of reasons why key mismatches occur. 2009-03-04 castaglia <castaglia> * contrib/mod_sftp_sql.c: Be a little more clear when logging why a key comparison failed (i.e. differentiate between "comparison failure" and "key mismatch"). 2009-03-04 castaglia <castaglia> * contrib/mod_sftp/crypto.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/mac.c: Make mod_sftp compile properly when dealing with older versions of OpenSSL (e.g. OpenSSL versions older than 0.9.7). 2009-03-04 castaglia <castaglia> * NEWS, src/prxs.in: Bug#3204 - Better support for installation and libs in prxs. 2009-03-04 castaglia <castaglia> * contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c: Include more info in the dispatched cmd_recs, e.g. channel IDs. 2009-03-04 castaglia <castaglia> * doc/howto/ServerType.html: Add a real xinetd config example to the ServerType howto, rather than having the broken UserGuide link. 2009-03-04 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_auth.c, modules/mod_log.c: More work towards Bug#2715. This moves the storage of the anonymous password to the session.notes table, and out of the config tree. 2009-03-04 castaglia <castaglia> * doc/modules/mod_delay.html: Add some mod_delay FAQs. 2009-03-03 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3203 - Missing SQL backend modules can lead to null pointer segfault in mod_sql. 2009-03-03 castaglia <castaglia> * src/Makefile.in, utils/Makefile.in: Turns out that deleting files (via 'make clean) generated at configure time, rather than at compile time, is a bad idea. You can do several 'make clean && make install' invocations with one configure invocation; the install step complains about missing files (i.e. the generated ones) after they've been deleted unnecessarily. 2009-03-03 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: String formatting fixed, as per Bug#3197. 2009-03-03 castaglia <castaglia> * contrib/mod_quotatab_file.c: Remove the log messages about EOF; they proved to be too annoying and not as helpful as one would like. 2009-03-03 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3196 - mod_quotatab does not honor last group in supplemental group list. 2009-03-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm, tests/t/modules/mod_quotatab_file.t, tests/tests.pl: Add a unit test for mod_quotatab_file. 2009-03-02 castaglia <castaglia> * modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Make sure that the MLST and MLSD command handlers can handle paths with spaces in them. This is essentially the same bug as Bug#3142; the fix for that bug was not properly extended to the MLST and MLSD commands. 2009-03-02 castaglia <castaglia> * include/support.h: Remove the declaration of the now-obsolete set_protocol_name() function. 2009-03-02 castaglia <castaglia> * RELEASE_NOTES: Mention the Korean translation. 2009-03-02 castaglia <castaglia> * locale/Makefile.in, locale/ko_KR.po: Bug#3194 - Add Korean translation. 2009-02-27 castaglia <castaglia> * contrib/mod_sftp/kex.c: Copy the client-sent language lists out of the kex pool, not out of the packet pool. 2009-02-27 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit tests for the one-hostkey-only mod_sftp configurations. 2009-02-27 castaglia <castaglia> * doc/contrib/mod_sftp.html: Update the mod_sftp docs to mention that only one SFTPHostKey is now required. 2009-02-27 castaglia <castaglia> * contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h, contrib/mod_sftp/mod_sftp.c: Fix bug when handling language lists; I forgot to initialize the server's language list, even if it is to the empty string. Also make mod_sftp more lenient with regard to host keys. It will now function if only one host key, be it RSA or DSA, is configured. 2009-02-26 castaglia <castaglia> * contrib/mod_sftp/kex.c: Start implementing support for negotiated languages in the key exchange. For now, actually read (and log) the list of languages sent by the client. 2009-02-26 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the permissions on the test hostkey files so that mod_sftp won't complain about them. 2009-02-26 castaglia <castaglia> * locale/fr_FR.po: Updated French translation from the translator. 2009-02-26 castaglia <castaglia> * contrib/mod_sftp/channel.c: When sending WINDOW_ADJUST messages to the client, mod_sftp needs to use the (possibly) SFTPClientMatch adjusted window size, not the default window size. 2009-02-26 castaglia <castaglia> * modules/mod_facts.c: The response to MLST was sending the info, and terminating the line with an extra LF, e.g. "dataLFCRLF", rather than just a normal CRLF. 2009-02-22 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Update mod_sftp so that it too uses the new pr_filter_allow_path() function. 2009-02-22 castaglia <castaglia> * contrib/mod_sftp/utf8.c: Fix the compilation of mod_sftp when --enable-nls is NOT used. 2009-02-22 castaglia <castaglia> * modules/mod_core.c, modules/mod_xfer.c, tests/t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Updated mod_core so that it uses pr_filter_allow_path(), rather than looking up and comparing against the PathAllowFilter/PathDenyFilter directives directly. Provide accompanying tests to show that no functionality has been broken in this refactoring. 2009-02-22 castaglia <castaglia> * Make.rules.in, include/conf.h, include/filter.h, modules/mod_xfer.c, src/filter.c: Consolidate the checking of a path against the PathAllowFilter and PathDenyFilter directives into a common pr_filter_allow_path() function, rather than having the checking of those directives repeatedly done throughout the code. Right now, only the STOR handler in mod_xfer has been updated to use this new pr_filter_allow_path() function; more updates for the rest of the core code will be coming. 2009-02-22 castaglia <castaglia> * utils/.cvsignore: Ignore the generated ftpscrub.8 man page in CVS commands. 2009-02-22 castaglia <castaglia> * src/log.c: Implement pr_log_writefile() so that it calls pr_log_vwritefile(), just like the other module logging functions do. 2009-02-22 castaglia <castaglia> * tests/t/config/pathallowfilter.t, tests/t/config/pathdenyfilter.t, tests/t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm, tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm, tests/tests.pl: Added unit tests for the PathAllowFilter and PathDenyFilter directives. Will be adding more tests for this directives, involving other FTP commands, soon. 2009-02-21 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_quotatab.h, contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in, include/log.h, include/mod_ctrls.h, modules/mod_ctrls.c, src/log.c: The changes to the logging functions made earlier today pointed out to me the fact that many of the contrib modules -- and even mod_ctrls -- had functionally duplicative logging functions as the core pr_log_writefile() function. And why have duplicated code when it isn't necessary? To address this, a new pr_log_vwritefile() function has been added. This function, rather than be a varargs-style function like pr_log_writefile(), takes a va_list parameter. This makes it suitable for calling by the contrib modules' own logging functions, which themselves are varargs-style functions. While I was at it, I made sure that these logging functions are checked via gcc's __attribute__ pragma (where it wasn't already being done), and cleaned up the resulting compiler warnings. 2009-02-21 castaglia <castaglia> * contrib/mod_sql.c: Fix a stylistic nit in sql_addgroup. The cnt variable had an unnecessarily large scope, and the gr_mem array of strings should be terminated with a NULL, not a '\0' (NUL character). 2009-02-21 castaglia <castaglia> * .cvsignore: Add the new ftpscrub utility to the cvs ignore list. 2009-02-21 castaglia <castaglia> * contrib/mod_tls.c: Be a little paranoid, and keep X509_NAME_oneline() from using the entire buffer; reserve one character for NUL. 2009-02-20 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c, modules/mod_ctrls.c, src/log.c: Fix the logging functions to handle long log messages properly. 2009-02-20 castaglia <castaglia> * NEWS, modules/mod_facts.c, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Bug#3190 - MLSD/MLST do not honor <Limit> configurations. 2009-02-19 castaglia <castaglia> * utils/ftpscrub.c: Forgot to move the ftpscrub.c source from from src/ to utils/, along with the its man pages and build rules. 2009-02-19 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/utf8.c, contrib/mod_sftp/utf8.h: Make mod_sftp honor the UseEncoding directive iff it has been used in the two-argument form. In this particular case, the client encoding is dictated by the IETF Draft for SFTP to be UTF8, but the admin can now use UseEncoding to set the local charset that mod_sftp should use. 2009-02-18 castaglia <castaglia> * RELEASE_NOTES, doc/howto/Scoreboard.html: Mention the ScoreboardScrub directive in the release notes, and update the Scoreboard howto to mention this new directive. 2009-02-18 castaglia <castaglia> * configure: Updated configure. 2009-02-18 castaglia <castaglia> * src/Makefile.in, utils/Makefile.in, utils/ftpscrub.8.in: Put the ftpscrub.8.in man page template in the wrong directory; should have been in utils/, not in src/. 2009-02-18 castaglia <castaglia> * Make.rules.in, Makefile.in, NEWS, configure.in, modules/mod_core.c, src/Makefile.in, src/ftpscrub.c, utils/Makefile.in, utils/scoreboard.c, utils/utils.h: Bug#3129 - Support configurable scoreboard scrubbing. 2009-02-18 castaglia <castaglia> * contrib/mod_sql_postgres.c: Minor OCD reordering. 2009-02-18 castaglia <castaglia> * contrib/mod_sftp/disconnect.h: Helps if the comment matches the code. 2009-02-18 castaglia <castaglia> * contrib/mod_sftp/disconnect.h: Handle the lack of __FUNCTION__ (a gcc extension) better. Try to use __func__ if present (Sun compilers use this), and have a fallback of "(unknown)" for other cases. 2009-02-18 castaglia <castaglia> * src/wtmp.c: Finally get rid of these compiler warnings: wtmp.c:38: warning: unused variable `ut' wtmp.c:39: warning: unused variable `fd' on Solaris systems. 2009-02-18 castaglia <castaglia> * NEWS, contrib/mod_sql_postgres.c: Bug#3176 - Postgres chokes on standard charset names. 2009-02-17 castaglia <castaglia> * Makefile.in, NEWS: Bug#3189 - Linker errors occur when using "make -j" parallel builds. 2009-02-17 castaglia <castaglia> * lib/libltdl/Makefile.in: Forgot to re-apply the libltdl modifications to disable the actions that try to use autoheader and automake. These aren't installed on every system, and we don't really use them. 2009-02-17 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_tls.html: Update the docs for the new PKCS#12 file support in mod_tls. 2009-02-17 castaglia <castaglia> * NEWS, contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3111 - Support SSL/TLS server certificates stored in PKCS#12 files. 2009-02-17 castaglia <castaglia> * NEWS, configure: Bug#3154 - Update bundled libtool version. The bundled libltdl version has been updated to libtool-1.5.26. 2009-02-17 castaglia <castaglia> * aclocal.m4, ltmain.sh: More towards Bug#3154. 2009-02-17 castaglia <castaglia> * lib/libltdl/configure: Update configure, so that make doesn't think it needs to regenerate the configure file. (The configure file needs a newer timestamp than the configure.ac file, otherwise the Makefile will try to make a new configure.) 2009-02-17 castaglia <castaglia> * lib/libltdl/COPYING.LIB, lib/libltdl/Makefile.am, lib/libltdl/Makefile.in, lib/libltdl/acinclude.m4, lib/libltdl/aclocal.m4, lib/libltdl/config.guess, lib/libltdl/config.sub, lib/libltdl/configure, lib/libltdl/configure.ac, lib/libltdl/install-sh, lib/libltdl/ltdl.c, lib/libltdl/ltdl.h, lib/libltdl/ltmain.sh, lib/libltdl/missing: Bug#3154 - Update bundled libtool version. 2009-02-17 castaglia <castaglia> * src/Makefile.in: Clean up the other generated files from the src directory (i.e. the man pages). 2009-02-17 castaglia <castaglia> * src/Makefile.in: Clean up the generated prxs script. 2009-02-17 castaglia <castaglia> * doc/contrib/mod_sftp.html: Add hrefs to the individual SFTP FAQs. Added FAQ about using mod_sftp as an OpenSSH subsystem. 2009-02-16 castaglia <castaglia> * src/prxs.in: Give the prxs tool a --help option. 2009-02-16 castaglia <castaglia> * NEWS, src/prxs.in: Bug#3188 - prxs broken due to typo. 2009-02-16 castaglia <castaglia> * contrib/mod_load/.cvsignore, contrib/mod_sftp/.cvsignore, contrib/mod_wrap2/.cvsignore: Ignore libtool object files (*.lo) in CVS commands. 2009-02-16 castaglia <castaglia> * contrib/mod_sftp/auth.c, contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c, contrib/mod_sftp/kex.c, contrib/mod_sftp/packet.c, contrib/mod_sftp/scp.c, contrib/mod_sftp/service.c, include/cmd.h, src/main.c: Work towards supporting the %S/%s LogFormat variables for SFTP responses. Doing so required changing the pr_cmd_dispatch_phase() function so that it takes a flag argument, rather than just a Boolean, and updating all of the callers (most of which are in mod_sftp). 2009-02-16 castaglia <castaglia> * include/support.h: Forgot to remove the old make_arg_str() declaration. 2009-02-16 castaglia <castaglia> * contrib/mod_sftp/fxp.c: Support use of the TEXT mode flag in SFTP OPEN requests from clients using SFTP protocol version 4 and later. Since we send the 'newline' extension telling the client that the "canonical" newline sequence is a simple LF, supporting TEXT mode for files is the same as non-TEXT mode for Unix. However, against the recommendations of the SFTP Draft, mod_sftp will NOT support a "text-seek" request; the computational cost of supporting such a thing is not worth it. 2009-02-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Add regression tests for the BanEngine behavior added in Bug#3186. 2009-02-15 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3186 - Support use of <IfClass> directive with mod_ban. 2009-02-15 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3185 - mod_wrap2 does not honour partial DNS name in access files. 2009-02-15 castaglia <castaglia> * Make.rules.in, contrib/mod_rewrite.c, include/cmd.h, include/conf.h, include/dirtree.h, include/inet.h, include/modules.h, src/cmd.c, src/dirtree.c, src/main.c, src/support.c: Try consolidating some of the pr_cmd_* functions into their own file (and give them their own header). Replaced make_arg_str() with pr_cmd_get_displayable_str(), which caches the resulting string of decoded arguments (to avoid needless re-decoding on every command dispatch). 2009-02-14 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-publickey.c, include/auth.h, modules/mod_auth_unix.c, src/auth.c: Add a new pr_auth_authorize() API, for checking that a user is authorized to login. This is different from pr_auth_authenticate(), which authenticates the user using the given password. The authorization checks do not need a password. This function is particularly needed by mod_sftp, which can authenticate a client via non-password means (e.g. hostbased, keyboard-interactive, and publickey authentication); the authorization of the logging-in user still needs to occur in those cases. 2009-02-14 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c: When unloading modules which can have their own logs, make sure that those log descriptors are closed. 2009-02-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Add separate mod_wrap2 deny table tests for IP addresses and DNS names. 2009-02-14 castaglia <castaglia> * src/session.c: Use a plain unadorned "ssh" as the TTY name in case of SSH sessions. 2009-02-14 castaglia <castaglia> * Make.rules.in, contrib/mod_sftp/auth.c, include/log.h, src/log.c, src/wtmp.c: Separate out log_wtmp() into its own source file. Update mod_sftp to honor WtmpLog and UseLastlog. 2009-02-14 castaglia <castaglia> * contrib/mod_sql.c: Constify one of the functions, and deal with the consequences. 2009-02-14 castaglia <castaglia> * Make.rules.in, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/scp.c, contrib/mod_sql.c, contrib/mod_tls.c, include/conf.h, include/log.h, include/session.h, modules/mod_auth.c, modules/mod_log.c, src/log.c, src/main.c, src/session.c, tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Added new Session API. The data for the session are stashed in the session.notes table, but these accessors can perform some intelligent transformation on the stashed value. Bug#3183 proved that the construction of the pseudo-ttyname, used in WtmpLog and PAM authentication, should be consolidated, and this has been done. Also used the Session API to implement a %{protocol} LogFormat (and SQLNamedQuery) variable. This will resolve to "ftp", "ftps", "ssh2", "sftp", or "scp" as appropriate. A unit test for regressions of this feature is included. 2009-02-13 castaglia <castaglia> * contrib/mod_sftp_pam.c, contrib/mod_sftp_sql.c: Update the copyright dates for these modules. 2009-02-13 castaglia <castaglia> * contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/blacklist.c, contrib/mod_sftp/blacklist.h, contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/cipher.c, contrib/mod_sftp/cipher.h, contrib/mod_sftp/compress.c, contrib/mod_sftp/compress.h, contrib/mod_sftp/crypto.c, contrib/mod_sftp/crypto.h, contrib/mod_sftp/disconnect.c, contrib/mod_sftp/disconnect.h, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/interop.c, contrib/mod_sftp/interop.h, contrib/mod_sftp/kbdint.c, contrib/mod_sftp/kbdint.h, contrib/mod_sftp/kex.c, contrib/mod_sftp/kex.h, contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h, contrib/mod_sftp/keystore.c, contrib/mod_sftp/keystore.h, contrib/mod_sftp/mac.c, contrib/mod_sftp/mac.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h, contrib/mod_sftp/rfc4716.c, contrib/mod_sftp/rfc4716.h, contrib/mod_sftp/scp.c, contrib/mod_sftp/scp.h, contrib/mod_sftp/service.c, contrib/mod_sftp/service.h, contrib/mod_sftp/session.c, contrib/mod_sftp/session.h, contrib/mod_sftp/ssh2.h, contrib/mod_sftp/tap.c, contrib/mod_sftp/tap.h, contrib/mod_sftp/utf8.c, contrib/mod_sftp/utf8.h: Add the Id keyword to the source files. 2009-02-13 castaglia <castaglia> * src/netaddr.c: Quell a compiler warning about const-ness. 2009-02-13 castaglia <castaglia> * contrib/mod_sftp/keys.c, contrib/mod_sftp/keys.h: Forgot the keys.[ch] files for mod_sftp. 2009-02-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm, tests/t/modules/mod_sftp.t, tests/tests.pl: Adding the mod_sftp testsuite. 2009-02-13 castaglia <castaglia> * tests/t/etc/modules/mod_sftp/authorized_dsa_keys, tests/t/etc/modules/mod_sftp/authorized_rsa_keys, tests/t/etc/modules/mod_sftp/ssh_host_dsa_key, tests/t/etc/modules/mod_sftp/ssh_host_dsa_key.pub, tests/t/etc/modules/mod_sftp/ssh_host_rsa_key, tests/t/etc/modules/mod_sftp/ssh_host_rsa_key.pub, tests/t/etc/modules/mod_sftp/test_dsa_key, tests/t/etc/modules/mod_sftp/test_dsa_key.pub, tests/t/etc/modules/mod_sftp/test_rsa_key, tests/t/etc/modules/mod_sftp/test_rsa_key.pub: Adding some of the files used by the mod_sftp unit tests. 2009-02-13 castaglia <castaglia> * contrib/mod_sftp/mod_sftp.c: Make sure that, when unloaded, mod_sftp unregisters all event handlers, and scrubs any keys from memory. 2009-02-13 castaglia <castaglia> * NEWS, README.modules, RELEASE_NOTES: Add mention of the added mod_sftp et al modules. 2009-02-13 castaglia <castaglia> * contrib/mod_sftp_pam.c, contrib/mod_sftp_sql.c, doc/contrib/mod_sftp.html, doc/contrib/mod_sftp_pam.html, doc/contrib/mod_sftp_sql.html: Adding mod_sftp_pam, mod_sftp_sql to the contrib modules. Adding docs for mod_sftp, mod_sftp_pam, and mod_sftp_sql. 2009-02-13 castaglia <castaglia> * contrib/mod_sftp/.cvsignore, contrib/mod_sftp/Makefile.in, contrib/mod_sftp/auth-hostbased.c, contrib/mod_sftp/auth-kbdint.c, contrib/mod_sftp/auth-password.c, contrib/mod_sftp/auth-publickey.c, contrib/mod_sftp/auth.c, contrib/mod_sftp/auth.h, contrib/mod_sftp/blacklist.c, contrib/mod_sftp/blacklist.h, contrib/mod_sftp/channel.c, contrib/mod_sftp/channel.h, contrib/mod_sftp/cipher.c, contrib/mod_sftp/cipher.h, contrib/mod_sftp/compress.c, contrib/mod_sftp/compress.h, contrib/mod_sftp/config.guess, contrib/mod_sftp/config.sub, contrib/mod_sftp/configure, contrib/mod_sftp/configure.in, contrib/mod_sftp/crypto.c, contrib/mod_sftp/crypto.h, contrib/mod_sftp/dhparams.pem, contrib/mod_sftp/disconnect.c, contrib/mod_sftp/disconnect.h, contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h, contrib/mod_sftp/install-sh, contrib/mod_sftp/interop.c, contrib/mod_sftp/interop.h, contrib/mod_sftp/kbdint.c, contrib/mod_sftp/kbdint.h, contrib/mod_sftp/kex.c, contrib/mod_sftp/kex.h, contrib/mod_sftp/keystore.c, contrib/mod_sftp/keystore.h, contrib/mod_sftp/mac.c, contrib/mod_sftp/mac.h, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/mod_sftp.h.in, contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h, contrib/mod_sftp/packet.c, contrib/mod_sftp/packet.h, contrib/mod_sftp/rfc4716.c, contrib/mod_sftp/rfc4716.h, contrib/mod_sftp/scp.c, contrib/mod_sftp/scp.h, contrib/mod_sftp/service.c, contrib/mod_sftp/service.h, contrib/mod_sftp/session.c, contrib/mod_sftp/session.h, contrib/mod_sftp/ssh2.h, contrib/mod_sftp/tap.c, contrib/mod_sftp/tap.h, contrib/mod_sftp/utf8.c, contrib/mod_sftp/utf8.h: Adding mod_sftp to the contrib modules. 2009-02-13 castaglia <castaglia> * contrib/mod_tls.c: Move the installation of the control channel NetIO handler from the startup event handler to the postparse event handler, and make the NetIO handler installer be smarter. We only want to install a NetIO handler for the control channel if we have not already done so. We want to do this at postparse time, so that if mod_tls is a DSO module and is unloaded (as during a restart), then the NetIO handler will be installed again properly. Previously, the NetIO handler was only installed on startup. If mod_tls is a DSO module, and proftpd is restarted, then the unload event handler in mod_tls unregisters the control channel NetIO handler, and that handler is never reinstalled. A segfault later occurs because of a null pointer dereference. 2009-02-13 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3184 - When started in a chroot, proftpd fails to set transfer buffer size. 2009-02-12 castaglia <castaglia> * doc/howto/DNS.html: Mention the new -S command-line option in the DNS howto's FAQ section. 2009-02-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/netaddr.h, modules/mod_core.c, src/main.c, src/netaddr.c, src/proftpd.8.in: Bug#2608 - DNS should not be used for "server config" address discovery. 2009-02-12 castaglia <castaglia> * contrib/mod_quotatab_file.c: Handle possible interruptions of readv(2) and writev(2) in mod_quotatab_file. 2009-02-12 castaglia <castaglia> * contrib/mod_ctrls_admin.c, include/compat.h, include/inet.h, modules/mod_core.c, modules/mod_ident.c, src/bindings.c, src/data.c, src/dirtree.c, src/inet.c, src/main.c, src/netaddr.c: Renamed the Inet "connection" functions to "conn"; no need to have function names that are that verbose. Updated the attendant callers, and added compatibility macros in compat.h. Removed older compatibility macros for the log functions from compat.h. Added handling of the case where fixup_servers() can return -1 after a restart. One user was somehow encountering a case where proftpd could resolve the hostname on startup, but failed to resolve the hostname after a restart. This lead to a segfault because the main_server pointer, after this failure, pointed to old/stale memory. 2009-02-12 castaglia <castaglia> * .cvsignore, contrib/.cvsignore, contrib/mod_load/.cvsignore, contrib/mod_wrap2/.cvsignore: Minor refinement of the .libs exclusion. 2009-02-12 castaglia <castaglia> * .cvsignore, contrib/.cvsignore, contrib/mod_load/.cvsignore, contrib/mod_wrap2/.cvsignore: Ignore .la files and the .libs/ directory. 2009-02-12 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/main.c: Bug#3183 - Incorrect logging to wtmp. 2009-02-12 castaglia <castaglia> * tests/t/config/hidegroup.t, tests/t/config/hideuser.t, tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm, tests/t/lib/ProFTPD/Tests/Config/HideUser.pm, tests/tests.pl: Adding testcases for the HideUser and HideGroup directives. 2009-02-12 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c: Bug#2720 - HideUser/HideGroup should be more flexible. 2009-02-12 castaglia <castaglia> * NEWS, src/ctrls.c, src/event.c: Bug#3179 - Restarted proftpd using mod_shaper will segfault. 2009-02-12 castaglia <castaglia> * src/auth.c: The first id2name lookup was always returning the numeric ID, even if the lookup succeed. Fix this so that the looked-up name is properly returned even for the first lookup. 2009-02-11 castaglia <castaglia> * contrib/mod_ban.c: Avoid unsightly error messages like this when shutting down a proftpd using mod_ban: mod_ban/0.5.3: error removing shmid -1: No such file or directory by actually checking that the shmid is greater than -1 before attempting to remove it. 2009-02-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add a testcase for the SQLLog directive and the handling of the %{time} variable. 2009-02-11 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3178 - mod_wrap2 does not handle IPv4-mapped IPv6 addresses. 2009-02-11 castaglia <castaglia> * modules/mod_auth.c, src/display.c, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: Work towards Bug#2715. With this change, the config tree is no longer used for storing client count and class client count using the "CURRENT-CLIENTS" and "CURRENT-CLIENTS-CLASS" config_rec names. These values are now stored (and retrieved) using the session.notes table. 2009-02-11 castaglia <castaglia> * NEWS, src/main.c, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm: Bug#2728 - Support for variables in ServerIdent directive. 2009-02-10 castaglia <castaglia> * RELEASE_NOTES, sample-configurations/PFTEST.conf.in, sample-configurations/complex-virtual.conf: Update the release notes to mention that the IdentLookups directive is handled by the mod_ident module, and thus should be appropriately guarded in the proftpd.conf using <IfModule>. Update the distributed sample configs to use <IfModule> guards around IdentLookups. 2009-02-10 castaglia <castaglia> * contrib/mod_tls.c: If we can't set the certificate-related environment variables, log the reason why. 2009-02-10 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3170 - RewriteMap unescape URL encoding broken by RewriteCondition backreference handling. 2009-02-10 castaglia <castaglia> * src/main.c: Fix a few cases where the signal-presence bit was not cleared in pr_signals_handle(), prior to calling some other function. Failure to do so can lead to endless loops, for that called function can itself call pr_signals_handle(), which sees the signal-presence bit, which then calls the function, etc. Such a loop results in a segfault, when the stack has been exhausted. 2009-02-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Add regression test for Bug#3156. 2009-02-09 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3156 - Allow resumed downloads when HiddenStore is in effect. 2009-02-09 castaglia <castaglia> * modules/mod_auth.c: In the scoreboard entry for a session, record the IP address/port to which the client connected. In some cases, this can be different from the IP address/port on which the server config, which handles the connection, is listening. In the DefaultServer case, for example. 2009-02-09 castaglia <castaglia> * RELEASE_NOTES, locale/Makefile.in, locale/bg_BG.po: Added Bulgarian translation, courtesy of Georgi D. Sotirov. 2009-02-09 castaglia <castaglia> * contrib/mod_sql_postgres.c: Fix compile error. 2009-02-05 castaglia <castaglia> * locale/en_US.po: Updated English translation. 2009-02-05 castaglia <castaglia> * doc/modules/mod_cap.html: Another mod_cap-related FAQ. 2009-02-05 castaglia <castaglia> * modules/mod_core.c: Remove vestigal IdentLookups handling left by mistake in mod_core. 2009-02-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_ident.c: Bug#3155 - Change the IdentLookups default to 'off'. 2009-02-05 castaglia <castaglia> * NEWS, contrib/mod_sql_sqlite.c, doc/contrib/mod_sql_sqlite.html: Bug#3128 - mod_sql_sqlite should use transactions for INSERT/UPDATE statements. 2009-02-05 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3133 - mod_facts should advertise TVFS support in the FEAT response. 2009-02-05 castaglia <castaglia> * NEWS, contrib/mod_sql_postgres.c: Bug#3123 - Use PQescapeStringConn() rather than PQescapeString(). 2009-02-05 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_auth.c, src/auth.c: Bug#2894 - Deprecate the AnonymousGroup directive. 2009-02-05 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_odbc.c, contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c: Bug#1801 - Faulty SQLConnectInfo PERCALL policy - connections not closed after each call. 2009-02-05 castaglia <castaglia> * locale/Makefile.in, locale/proftpd.pot: Updated the `find' command used to create the files.txt input for creating a new .pot. Updated the current proftpd.pot. 2009-02-05 castaglia <castaglia> * locale/Makefile.in, locale/fr_FR.po: Added French translation. 2009-02-05 castaglia <castaglia> * include/version.h: On to the 1.3.3 release cycle! 2009-02-05 castaglia <castaglia> * ChangeLog: Updating ChangeLog for 1.3.2. 2009-02-05 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Updating versions for the 1.3.2 release. 2009-02-05 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2009-02-05 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#3173 - Encoding-dependent SQL injection vulnerability. 2009-02-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Added testcase for Bug#3171. 2009-02-03 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#3171 - ExtendedLog should log full SITE command using %m. 2009-02-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Added testcase for Bug#3170. 2009-02-02 castaglia <castaglia> * doc/howto/Rewrite.html: Give examples for handling non-ASCII characters in RewriteRule expressions. 2009-02-02 castaglia <castaglia> * doc/contrib/mod_rewrite.html: Clarify exactly what type of encoding is unescaped by mod_rewrite's unescape RewriteMap. 2009-02-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Added testcase for Bug#3169. 2009-02-02 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3169 - Multiple RewriteRules for the same RewriteCondition not processed properly. 2009-01-30 castaglia <castaglia> * contrib/mod_sql.c: Used the wrong pool when retrieving environment variables; when handling %{env} tags in a SQLUserWhereClause, this would cause the environment variable to not be retrieved properly. 2009-01-30 castaglia <castaglia> * tests/api/pool.c: Fix a test that was failing due to a thinko. 2009-01-29 castaglia <castaglia> * include/options.h: The changes for Bug#2874 erroneously removed the PR_TUNABLE_XFER_BUFFER_SIZE macro. The transfer buffer sizes are now determined at runtime, but we still need a fallback (and some contrib modules still use this macro). 2009-01-28 castaglia <castaglia> * modules/mod_auth.c: Missed a few places in need of translation. 2009-01-28 castaglia <castaglia> * src/encode.c: If the conversion handles are invalid for some reason, don't cause segfaults by returning null; just return a dup of the input string, and log the error. 2009-01-27 castaglia <castaglia> * src/scoreboard.c: Missed a spot. 2009-01-27 castaglia <castaglia> * src/scoreboard.c: Cache the errno value when using pr_trace_msg(), since that function can change the errno value. 2009-01-26 castaglia <castaglia> * modules/mod_lang.c: When "UseEncoding off" is configured, *really* disable encoding. 2009-01-26 castaglia <castaglia> * doc/howto/TLS.html: Finally got around to adding more substance to the "TLS Debugging" section, including examples using openssl s_client and ssldump. Very useful tools. Added a FAQ about TLSCertificateChainFile, mostly for my own reference; it's a bit confusing as to when such a thing is useful. 2009-01-26 castaglia <castaglia> * contrib/mod_tls.c: Fix two minor issues in mod_tls: 1. The TLSCACertificateFile can contain multiple certificates to use when verifying client certs. However, when requesting the client's cert and sending the list of acceptable client CAs, mod_tls was only using the *first* cert contained in the TLSCACertificateFile, rather than using *all* certs which might be in this file. (Usually there is only one cert anyway, so this is not a huge problem.) 2. The list of acceptable client CAs, sent to the client when requesting the client's cert, is built up from TLSCACertificateFile and all of the certs in TLSCACertificatePath. However, for some strange reason, if a TLSCertificateChainFile was configured, mod_tls was NOT sending the certs in TLSCACertificatePath. (I suspect it was a misunderstanding on my part about the role that the certificate chain file plays in SSL/TLS; now I understand it.) 2009-01-25 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r62: * Retrieve all LDAP attributes when calling pr_ldap_user_lookup() since it will need various attributes (to perform home directory generation, for one). Thanks to Nikos Voutsinas <nvoutsin@noc.uoa.gr>. http://forums.proftpd.org/smf/index.php/topic,3562.0.html 2009-01-23 castaglia <castaglia> * include/version.h: Back to a CVS version. 2009-01-23 castaglia <castaglia> * ChangeLog: Updating ChangeLog for 1.3.2rc4. 2009-01-23 castaglia <castaglia> * NEWS, RELEASE_NOTES: Updating NEWS, release notes for 1.3.2rc4. 2009-01-23 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.3.2rc4. 2009-01-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Fixup some tests which were failing because the default config changed the value of AllowOverride. 2009-01-22 castaglia <castaglia> * doc/contrib/mod_sql.html: Add some links for easier cross-referencing. 2009-01-22 castaglia <castaglia> * src/support.c: Make pr_gmtime() behave like pr_localtime() with regard to the use of the given memory pool. Increase the buffer size used in pr_strtime(), just to be certain that we have enough room. 2009-01-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add a test case for reproducing Bug#3164. I think, however, that it is not really a bug -- as long as the admin configures mod_quotatab_sql properly. Hmm. 2009-01-16 castaglia <castaglia> * RELEASE_NOTES: Mention the Compiling howto. 2009-01-16 castaglia <castaglia> * doc/howto/Compiling.html, doc/howto/index.html: Finally finished a howto on compiling proftpd. 2009-01-16 castaglia <castaglia> * INSTALL: Typos. 2009-01-14 castaglia <castaglia> * doc/contrib/mod_tls.html: Typo. 2009-01-14 castaglia <castaglia> * src/main.c: Use "microsecs", as it is less confusing to admins. 2009-01-13 castaglia <castaglia> * src/main.c: Copy the signo of a terminating signal a little earlierin the handler. 2009-01-12 castaglia <castaglia> * doc/howto/Vhost.html: Add another vhost FAQ. 2009-01-12 castaglia <castaglia> * src/fsio.c: Add trace logging of any statvfs()/statfs() errors. 2009-01-09 castaglia <castaglia> * src/main.c: Log segfaults in the TraceLog using the 'signal' channel. 2009-01-08 castaglia <castaglia> * src/dirtree.c: Don't forget to append the "*" glob character after the path when that path is just "/". This was an edge case we weren't handling. 2009-01-08 castaglia <castaglia> * contrib/mod_sql.c: Typo. 2009-01-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm: Add testcase showing that AuthOrder does not affect mod_ctrl's ability to honor/use system user names in controls ACLs. 2009-01-07 castaglia <castaglia> * src/auth.c: Rather than showing "(?)" whenever the uid2name or gid2name lookup for an ID fails, show the stringified numeric ID value instead. This makes proftpd behave more like ls(1) et al. 2009-01-06 castaglia <castaglia> * src/auth.c: Typo. 2009-01-06 castaglia <castaglia> * contrib/mod_tls.c, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Do not allow FTPS clients to send AUTH after they have already sent AUTH. If clients wish to change the SSL/TLS session parameters, they need to either use the session renegotiation facilities within SSL/TLS, or disconnect and start a new session. This is an allowable server behavior according to RFC2228. 2009-01-06 castaglia <castaglia> * doc/howto/Vhost.html: I realized that the Vhost howto didn't mention the "already in use" warning message, and should. 2009-01-05 castaglia <castaglia> * contrib/mod_ldap.c, contrib/mod_sql.c: Initialize the buffer that will be used to store the base64-encoded hash value, so that the ensuing strcmp(3) will work as expected (just making sure of this). 2009-01-04 castaglia <castaglia> * contrib/mod_ldap.c, contrib/mod_sql.c: The RATS code analysis tool correctly pointed out that the output buffer for OpenSSL's EVP_EncodeBlock() function needs to account for base64-encoding expansion. Specifically, the output buffer should be 4/3 the size of the input buffer. I played it safe, and made the output buffers twice the size of the input buffers. 2009-01-04 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_sql.c, contrib/mod_tls.c, modules/mod_delay.c, modules/mod_xfer.c, src/ctrls.c, src/proctitle.c: I ran proftpd through David Wheeler's flawfinder(1) script. Based on that, I replaced the occurrences of sprintf(3) with snprintf(3), strcpy(3) with sstrncpy(), and strcat(3) with sstrcat(). 2009-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: While investigating Bug#3160, I wrote a mod_rewrite unit test which turned out to be the regression test for Bug#3027 (as Bug#3160 turned out to be a duplicate of Bug#3027). As such, that test should be added to the collection. 2009-01-02 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Added two MKD tests, one for directories with spaces in the name, and one for a UTF8-encoded directory name. 2008-12-31 castaglia <castaglia> * contrib/mod_tls.c: Remove unnecessary character. 2008-12-31 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3159 - mod_rewrite build fails due to missing mode argument in open(2) call. 2008-12-31 castaglia <castaglia> * modules/mod_xfer.c: Prevent a segfault due to aborted downloads in some cases by checking for a non-null session.d value before attempting to use it. Aborting a download can cause that session.d value to become null in the middle of the download call stack. 2008-12-30 castaglia <castaglia> * doc/howto/NAT.html: Update NAT howto with ipf example. 2008-12-30 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Since the mem_printf() function is only called when --enable-devel is used, guard the mem_printf() definition with the same macros (and avoid compiler warnings about the unused function). 2008-12-24 castaglia <castaglia> * modules/mod_lang.c, src/encode.c: When mod_lang uses the environment variables in a setlocale(3) call, it needs to reset the Encode API to use the possibly-changed encoding. 2008-12-23 castaglia <castaglia> * contrib/mod_tls.c: ERR_get_error() returns a long, not an int. Update tls_fatal_error() to take a long error code as a result. Also filter out ENOSYS errors on SSL_shutdown(); there's not much we can do about them anyway. 2008-12-23 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Add test verifying that mod_lang picks up and handles the LANG environment variable properly. 2008-12-23 castaglia <castaglia> * modules/mod_lang.c: The ANSI C standard says that every process starts out in the C locale, regardless of LANG and other environment variables. To switch the process to using the locales specified by those environment variables, you need an explicit: setlocale(LC_ALL, ""); call. Make sure that mod_lang does this, prior to any other setlocale(3) calls. Also, when using setlocale(3) to query for a locale, make a copy of the returned string, instead of just stashing the pointer. The library may return a pointer whose value changes later, i.e. by subsequent setlocale(3) calls. 2008-12-23 castaglia <castaglia> * contrib/mod_tls.c: Actually mod_sftp_sql can't be used without mod_sftp, so having it on the list of OpenSSL-using modules is not really useful. 2008-12-23 castaglia <castaglia> * contrib/mod_tls.c: Add mod_sftp_sql to the list of OpenSSL-using modules. Also log the OpenSSL error stack to the logs for a shutdown issue; it can help shed more light on a particular issue one user is seeing. 2008-12-22 castaglia <castaglia> * contrib/mod_tls.c: Explicit cast to quell compiler warnings about signedness differences. 2008-12-21 castaglia <castaglia> * src/encode.c: Try to reduce confusion when we didn't detect iconv() (no HAVE_ICONV), but we did detect <iconv.h>. 2008-12-21 castaglia <castaglia> * doc/howto/Quotas.html: Add FAQ about how mod_quotatab handles file overwrites/appends. 2008-12-21 castaglia <castaglia> * src/auth.c: The key comparators for the UID/GID cache tables need to return zero if the keys match, not 1. Oops. 2008-12-21 castaglia <castaglia> * src/auth.c: Fixed the caching of UIDs and GIDs in tables in the Auth API; the keys were not being copied before stashing in the respective tables, which meant that the key comparisons were being done on stale pointers, and thus the cached values were never found. Also fixed the key comparators to be even more efficient (i.e. no need to use memcmp(3) for comparing values like uid_t, gid_t). 2008-12-21 castaglia <castaglia> * src/table.c: Fix some edge cases that could lead to segfaults. 2008-12-18 castaglia <castaglia> * src/dirtree.c: Make sure that the cmd_rec returned by pr_cmd_alloc() has an instantiated cmd->notes table. 2008-12-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix typos. 2008-12-17 castaglia <castaglia> * src/encode.c: Workaround buggy nl_langinfo(3) implementations which return "646" as a way of indicating "US-ASCII". The former is not acceptable to iconv_open(3), but the latter is. Go figure. 2008-12-17 castaglia <castaglia> * contrib/mod_quotatab.c: It's not necessarily safe to use equality comparisons with floats; better to use less-than/greater-than instead. 2008-12-17 castaglia <castaglia> * doc/howto/TLS.html: Add a FAQ about the OpenSSL header/library version mismatch warning. 2008-12-17 castaglia <castaglia> * NEWS, modules/mod_facl.c: Bug#3150 - mod_facl erroneously assumes no permissions, rather than all permissions, in some cases. 2008-12-17 castaglia <castaglia> * src/encode.c: Guard the set_supports_telnet_iac() function in HAVE_ICONV macros, as that is the only time when the function is called. On systems which have the iconv.h header but NOT the iconv function() (though I think this is an autoconf issue), the compiler will warn about this function being declared but not used. 2008-12-17 castaglia <castaglia> * doc/contrib/mod_wrap2_file.html: Clean up the example mod_wrap2_file configs a little. 2008-12-16 castaglia <castaglia> * locale/Makefile.in: Use -f instead of -e when checking for .po/.mo files. It's more exact and, better, it works properly in Solaris' sh(1). (I'm still not sure why -e did not work as expected in Solaris' sh(1), though.) 2008-12-16 castaglia <castaglia> * src/log.c, src/trace.c: Quell some compiler warnings on Solaris by using explicit casts, and by explicitly encompassing the tertiary expressions for those casts. 2008-12-16 castaglia <castaglia> * src/dirtree.c: Forgot to handle the case, in build_dyn_config(), where the path was just "/". 2008-12-16 castaglia <castaglia> * src/dirtree.c: A better fix for build_dyn_config()'s sending of empty strings to dir_match_path(); the previous solution could easily lead to segfaults. 2008-12-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm: Add unit test for the handling of decimal point (i.e. unsupported precision) in an MFMT command. 2008-12-16 castaglia <castaglia> * modules/mod_facts.c: Make sure that we restore the original timestamp argument of an MFMT command if we have changed it. This is necessary for any POST_CMD/LOG_CMD handlers which may want to log the full argument sent by the client. 2008-12-14 castaglia <castaglia> * doc/howto/Tracing.html: Mention the trick of disabling some of the default trace channels. 2008-12-14 castaglia <castaglia> * modules/mod_facts.c: Fix the response strings in some cases such that the original input parameter is reflected in the response message. Make sure that if we change the value of a character in a string (say from ';' to '\0'), we change it back before returning. 2008-12-14 castaglia <castaglia> * doc/howto/Sendfile.html: Correct the grammar. 2008-12-13 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm: Add another test, one for a creating deep directory layout (with corresponding <Directory> sections). Like the wide layout, this test fails, timing out during the login process. But I wanted to get this checked in, for future research. 2008-12-13 castaglia <castaglia> * src/auth.c: Make a note for my future self, when researching slow logins with configs with many <Directory> sections, where the slowness occurs (and why). 2008-12-13 castaglia <castaglia> * src/dirtree.c: Add handling of signals in a potentially long-running while loop (especially if recursion is requested). 2008-12-13 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#3149 - Bad handling of %p, %V, and %v variables in mod_sql. 2008-12-12 castaglia <castaglia> * doc/contrib/mod_sql.html: Fix the text for better legibility. 2008-12-12 castaglia <castaglia> * doc/contrib/mod_sql.html: Mention that the SQL{Group,User}WhereClause directives support the same variables as SQLNamedQuery. 2008-12-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Added test for the SQLUserWhereClause directive. 2008-12-12 castaglia <castaglia> * contrib/mod_tls.c: The SSL_library_init() function registers SSL algorithms, but we might want to deal with other algorithms (as when dealing with PKCS#12 files). Thus we need to OpenSSL_add_all_algorithms() to get the remaining algorithms registered. 2008-12-12 castaglia <castaglia> * tests/t/config/directory/lookups.t, tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm: Renamed the <Directory> lookups test code to Directory::Lookups. 2008-12-12 castaglia <castaglia> * tests/t/config/directory.t, tests/t/lib/ProFTPD/Tests/Config/Directory.pm: Starting a collection of cases that I'll be using for testing proftpd's <Directory> lookup code, particularly in the case of many (i.e. hundreds) of <Directory> sections and wide and/or deep directory layouts. (I suspect there's quite a bit of lookup speed performance to be gained in this part of the code.) 2008-12-11 castaglia <castaglia> * src/dirtree.c: Add more commentary to build_dyn_config(), and add a paranoia check, in case we should be dealing with a path with absolutely no path separators. 2008-12-11 castaglia <castaglia> * src/dirtree.c: When build_dyn_config() is walking up the components of the given path (assuming the recurse flag is 'true'), it has a problem when it gets to "/". Specifically, it will send the empty string to dir_match_path(), rather than "/". Fix this case. 2008-12-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Fix Perl warnings about redeclared variables. 2008-12-11 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Disable handling of .ftpaccess files by default in the testsuite; those tests which handle .ftpaccess files need to use "AllowOverride on" explicitly in their configs. 2008-12-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Update the code here. (By the way, it looks like Bug#2677 may still be present in the code, and fixing it involves a fair amount of code change.) 2008-12-11 castaglia <castaglia> * modules/mod_core.c: Style cleanups in the <Directory> config handler. 2008-12-11 castaglia <castaglia> * modules/mod_lang.c: Correct a few more LANG issues (mostly dealing with transformations of hyphens to underscores, population of the current and default languages everywhere, etc). 2008-12-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Quell some Perl warnings about redeclared variables. 2008-12-11 castaglia <castaglia> * modules/mod_lang.c: Stupid thinko: If "OPTS UTF8 on" is sent, do not disable encoding by the FS functions. 2008-12-11 castaglia <castaglia> * modules/mod_lang.c: Fix some of the problems found in mod_lang using the testsuite. 2008-12-11 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm, tests/t/modules/mod_lang.t, tests/tests.pl: Added tests for the commands provided by mod_lang. This involved adding the lang() and opts() methods to the testsuite FTP class, and in fixing up the FEAT tests. 2008-12-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm: Make sure that the FEAT test can handle subtle differences in the underlying iconv/setlocale implementations. 2008-12-11 castaglia <castaglia> * modules/mod_core.c: Stylistic nit cleanup. 2008-12-11 castaglia <castaglia> * modules/mod_delay.c: Clean up some stylistic nits in mod_delay. 2008-12-11 castaglia <castaglia> * modules/mod_core.c, src/main.c: Fixed a bug with the handling of RLimitMemory: any 'hard' memory limits were not actually being set. Set session resource limits _before_ module session init, not after. This means that session resource limits will apply to the modules during session init (as they should). Favor RLIMIT_DATA over RLIMIT_AS. 2008-12-10 castaglia <castaglia> * doc/howto/Directory.html: Add another FAQ for the Directory howto, covering preventing a directory from being renamed. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Some cases where directory/file renaming works (as expected) or is denied (as expected). 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Add a couple of test cases for HideFiles, using the per-user parameters. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_unique_id.pm, tests/t/modules/mod_unique_id.t, tests/tests.pl: Added test for the mod_unique_id module. 2008-12-10 castaglia <castaglia> * doc/howto/Chroot.html: Add FAQ about DefaultRoot and NFS mounts. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/GroupOwner.pm, tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm: Switch these tests to use the new 'norootprivs' test class, rather than having the tests do that check themselves. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add a 'norootprivs' test class, similar to the 'rootprivs' test class: any test marked as a 'norootprivs' class will be skipped if the testsuite is being run with root privs. 2008-12-10 castaglia <castaglia> * tests/t/config/order.t, tests/t/lib/ProFTPD/Tests/Config/Order.pm, tests/tests.pl: Added tests for the Order directive. 2008-12-10 castaglia <castaglia> * tests/t/config/storeuniqueprefix.t, tests/t/lib/ProFTPD/Tests/Config/StoreUniquePrefix.pm, tests/tests.pl: Added test for the StoreUniquePrefix directive. 2008-12-10 castaglia <castaglia> * doc/howto/Scoreboard.html: Mention the "ScoreboardFile /dev/null" trick. 2008-12-10 castaglia <castaglia> * tests/t/config/deleteabortedstores.t, tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm, tests/tests.pl: Added test for the DeleteAbortedStores directive. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Remove debugging cruft. 2008-12-10 castaglia <castaglia> * tests/t/config/hiddenstores.t, tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm, tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm, tests/tests.pl: Added unit test for the HiddenStores functionality. Added more <Limit> cases. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm, tests/t/modules/mod_ctrls.t, tests/tests.pl: Start on tests for mod_ctrls. 2008-12-10 castaglia <castaglia> * contrib/mod_site_misc.c: Avoid descriptor leak by closing the directory descriptor before returning from site_misc_delete_dir(). 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm, tests/t/modules/mod_site_misc.t, tests/tests.pl: Added basic tests for the various SITE commands offered by mod_site_misc. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Pass along any other arguments for custom SITE commands. 2008-12-10 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/tests.pl: With these changes, it is now possible to use this tests.pl script, and the ProFTPD testsuite library of Perl modules, to run tests for a third-party module. For example: # cd /path/to/mod_sftp/tests # perl ~/path/to/proftpd/tests.pl t/modules/mod_sftp.t This will help (me, anyway) when developing new modules, without having to write the new module test code in the proftpd source tree. 2008-12-09 castaglia <castaglia> * modules/mod_core.c: Remove redundant "<Directory>:" in error message displayed when proftpd detects a duplicate <Directory> configuration. 2008-12-09 castaglia <castaglia> * doc/howto/Directory.html: Add FAQ about matching multiple <Directory> sections to the same path, and which section wins. 2008-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Regression tests for Bug#3147. 2008-12-09 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c: Bug#3147 - Comma-delimited commands in <Limit> sections not handled properly. 2008-12-09 castaglia <castaglia> * doc/howto/Tracing.html: Mention the "directory" log channel, added as part of the fix for Bug#3146. 2008-12-09 castaglia <castaglia> * tests/t/config/directory/limits.t, tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm, tests/tests.pl: Added regression tests for Bug#3146. 2008-12-09 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3146 - <Directory> paths using glob characters may not match as expected. 2008-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add checks of the tally values for more of the upload quotatab tests. 2008-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add function for checking on the current tally; need to use this in more of the existing tests, for ensuring the mod_quotatab is updating the tallies properly. 2008-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added mod_quotatab_sql tests for uploads and the 'all' limit. 2008-12-09 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added mod_quotatab_sql tests for uploads and class quota. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added mod_quotatab_sql tests for uploads and group quota. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm, tests/t/modules/mod_quotatab_sql.t, tests/tests.pl: Start of some tests for mod_quotatab_sql; there are *many* more tests for this module to come. 2008-12-08 castaglia <castaglia> * tests/t/config/groupowner.t, tests/t/lib/ProFTPD/Tests/Config/GroupOwner.pm, tests/tests.pl: Added tests for the GroupOwner directive. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow zero IDs in the AuthUserFile and AuthGroupFile files. 2008-12-08 castaglia <castaglia> * tests/t/config/userowner.t, tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm, tests/tests.pl: Added tests for the UserOwner directive. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: When writing out AuthUserFiles and AuthGroupFiles, append to any file which may already be present. This allows for the writing of multiple entries in those files. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Handle arrayrefs within hashrefs properly when writing out the config. 2008-12-08 castaglia <castaglia> * src/main.c: When handling SIGABRT, shut down properly. Also include the signal number (as it can vary across platforms) for each signal in the trace logging. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/ABRT.pm, tests/t/lib/ProFTPD/Tests/Signals/SEGV.pm, tests/t/signals/abrt.t, tests/t/signals/segv.t, tests/tests.pl: Added unit tests for the handling of SIGABRT and SIGSEGV in the daemon process. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Permit empty usernames, passwords (useful for certain tests). 2008-12-08 castaglia <castaglia> * doc/howto/TLS.html: Update the TLSProtocol example in light of Bug#3107. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Cleaning up some test cases so that all pass when run as root, and that there are no Perl compiler warnings. 2008-12-08 castaglia <castaglia> * src/dirtree.c: Loosen the paranoid parameter sanity check in dir_hide_file() a little. 2008-12-08 castaglia <castaglia> * NEWS, modules/mod_ls.c, src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Bug#2020 - HideFiles sometimes fails. The accompanying unit tests prove that the fix works as intended. 2008-12-08 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Adding regression test for Bug#2461. 2008-12-08 castaglia <castaglia> * NEWS, locale/Makefile.in, locale/ru_RU.po: Bug#3065 - Russian translation for proftpd. 2008-12-08 castaglia <castaglia> * tests/t/config/directory/umask.t, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm, tests/tests.pl: Add regression tests/reproduction cases for Bug#2677. This involved updating the config_write() function so that it can properly handled nested <Directory> and <Limit> sections. 2008-12-07 castaglia <castaglia> * doc/howto/Directory.html: Update the Directory howto to mention that <Directory> sections apply recursively (see Bug#2677). 2008-12-07 castaglia <castaglia> * tests/t/config/ftpaccess/dele.t, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm, tests/tests.pl: Add regression tests for Bug#2321. 2008-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: More refinements to the Bug#2038 regression tests, proving that the .ftpaccess file is being honored as intended. 2008-12-07 castaglia <castaglia> * tests/t/config/ftpaccess/retr.t, tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm, tests/tests.pl: Added regression tests for Bug#2038, which doesn't seem to happen anymore. 2008-12-07 castaglia <castaglia> * contrib/mod_tls.c: Use a better context identifier for cached session IDs; the module name and version is much better than a simple "1" string. 2008-12-07 castaglia <castaglia> * tests/tests.pl: Add the mod_tls testcase to the testsuite. 2008-12-07 castaglia <castaglia> * tests/t/etc/modules/mod_tls/ca-cert.pem, tests/t/etc/modules/mod_tls/server-cert.pem, tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add the required CA and server certs for the mod_tls tests. These certs are good for 5 years. 2008-12-07 castaglia <castaglia> * doc/howto/TLS.html: Fix typos in TLS howto. 2008-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm, tests/t/modules/mod_tls.t: Start a collection of mod_tls tests. This doesn't really work just yet; I need to generate a proper cert for use by the testsuite. 2008-12-07 castaglia <castaglia> * doc/howto/CreateHome.html: Update the CreateHome howto with an example of the feature added by Bug#3040. 2008-12-07 castaglia <castaglia> * tests/t/config/createhome.t, tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm, tests/tests.pl: Add tests verifying the fix for Bug#3040; more CreateHome tests are needed. 2008-12-07 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/mkhome.c: Bug#3040 - Support for CreateHome parent directories owned by user. 2008-12-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql.pm: Update the set_up(), tear_down() methods in this file. Even though it's currently empty, I use it as a template for new module testcase files. 2008-12-07 castaglia <castaglia> * RELEASE_NOTES: Mention the Sendfile, Rewrite howtos in the release notes. 2008-12-07 castaglia <castaglia> * doc/howto/Rewrite.html: Remove extraneous header. 2008-12-07 castaglia <castaglia> * doc/howto/Rewrite.html: Make the URLs in the doc be relative to the rest of the docs. 2008-12-07 castaglia <castaglia> * doc/howto/Rewrite.html, doc/howto/index.html: Adding a rewrite howto to the collection. 2008-12-06 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm, tests/t/logging/transferlog.t, tests/tests.pl: Added unit tests for the TransferLog format. 2008-12-04 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/Limit/XMKD.pm: Added more test cases to try to reproduce Bug#3138, to no avail. Still useful to have these use cases in the testsuite. 2008-12-04 castaglia <castaglia> * NEWS, contrib/mod_dynmasq.c: Bug#3144 - mod_dynmasq returns same IP address, even though actual IP address has changed. 2008-12-04 castaglia <castaglia> * src/inet.c: After closing a connection, make sure the various fields are reset to NULL/-1 as appropriate. 2008-12-04 castaglia <castaglia> * modules/mod_core.c: Add a little bit of logging for the MKD/XMKD command, when it is denied because of a <Limit> config. Also cache an errno value, so that the actual error reason is properly logged. 2008-12-04 castaglia <castaglia> * doc/howto/Directory.html: Update the Directory howto with the tip about using a <Directory> section to refer to a specific file, rather than just to a directory (Bug#3140). 2008-12-04 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Config/Limit/XMKD.pm: Add more <Limit> test cases from the Bug#3138 investigation. This involved adding support for <Class> sections in the testcase config files. 2008-12-03 castaglia <castaglia> * modules/mod_xfer.c: Cache the errno value for an aborted download, so that it can be reported properly. This came out of investigating the cause for Bug#3143. 2008-12-03 castaglia <castaglia> * tests/t/commands/mff.t, tests/t/commands/mfmt.t, tests/t/lib/ProFTPD/Tests/Commands/MFF.pm, tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm, tests/tests.pl: Add some tests (not exhaustive) for the MFMT and MFF commands. 2008-12-03 castaglia <castaglia> * NEWS, modules/mod_facts.c: Bug#3142 - "Invalid number of arguments MFMT" due to spaces in path argument. 2008-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support use of <Limit> sections in the testcase config files. 2008-12-03 castaglia <castaglia> * tests/t/config/limit/xmkd.t, tests/t/lib/ProFTPD/Tests/Config/Limit/XMKD.pm, tests/tests.pl: Begin the collection of unit tests for various <Limit> configurations. 2008-12-03 castaglia <castaglia> * doc/modules/mod_facts.html: Updated URL to Draft for MFF/MFMT commands. 2008-12-03 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm, tests/t/logging/extendedlog.t, tests/tests.pl: Add regression tests for Bug#3137. 2008-12-03 castaglia <castaglia> * NEWS, modules/mod_xfer.c, src/data.c: Bug#3137 - ProFTPD does not log filename %f for uploaded files. 2008-11-26 castaglia <castaglia> * tests/t/commands/mlsd.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm, tests/tests.pl: Adding tests for the MLSD command. 2008-11-26 castaglia <castaglia> * modules/mod_facts.c: Be able to distinguish failure responses for MLSD for using globs, versus something to do with the file itself (e.g. permissions, existence, etc). 2008-11-25 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add the methods for the MLSD, MLST, MFF, MFMT commands. 2008-11-25 castaglia <castaglia> * tests/t/commands/mlst.t, tests/t/lib/ProFTPD/Tests/Commands/MLST.pm, tests/tests.pl: Adding tests for the MLST command. 2008-11-24 castaglia <castaglia> * tests/t/config/maxinstances.t, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Config/MaxInstances.pm, tests/tests.pl: Added test for the MaxInstances directive. 2008-11-22 castaglia <castaglia> * modules/mod_lang.c: Make sure that, if no languages are explicitly configured, at least the default one (obtained via environment variables) is listed properly in the FEAT response. 2008-11-22 castaglia <castaglia> * src/fsio.c: Add signal handling in the potentially long-running while loops of the filesystem path resolution functions. 2008-11-22 castaglia <castaglia> * NEWS, contrib/mod_ratio.c: Bug#1636 - GroupRatio does not check user's supplemental group membership. 2008-11-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm, tests/t/modules/mod_rewrite.t, tests/tests.pl: Added some unit tests for the mod_rewrite module. There will be many more to come for this module. 2008-11-22 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#2915 - mod_rewrite does not work well for SITE commands. 2008-11-22 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add a site() method, for sending arbitrary SITE commands. 2008-11-22 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add some nice features to the testsuite. First, configs can be defined using arrayrefs, in addition to hashrefs, so that the ordering of config directives in the test config file can be detected (important in some cases). Second, the location of the `proftpd' being tested can be defined using the PROFTPD_TEST_BIN environment variable; useful (though not necessarily recommended) if you want to run the testsuite using an existing proftpd. 2008-11-22 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm, tests/t/lib/ProFTPD/Tests/Signals/TERM.pm, tests/t/signals/hup.t, tests/tests.pl: Add unit tests for the HUP signal, at least for the daemon process. 2008-11-22 castaglia <castaglia> * doc/howto/Sendfile.html, doc/howto/index.html: Adding doc covering sendfile and its issues. 2008-11-21 castaglia <castaglia> * NEWS, contrib/mod_sql.c, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Bug#2045 - SQLShowInfo should not be displayed when query returns no data. 2008-11-20 castaglia <castaglia> * include/version.h: Updating version for CVS. 2008-11-20 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2008-11-20 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for RC3 release. 2008-11-20 castaglia <castaglia> * RELEASE_NOTES: Updating release notes, preparing for release. 2008-11-20 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Use the two-argument form of the Net::FTP constructor -- it works better with older Perls. 2008-11-20 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm, tests/t/lib/ProFTPD/Tests/Signals/TERM.pm: Get rid of a few places where we needed to use sleep() to delay between server shutdown and server startup, in order to make sure that the new server's PidFile and ScoreboardFile weren't deleted by the previous server while it was shutting down. Instead, the server_stop() function will not return until it sees that the PidFile has been deleted. 2008-11-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm, tests/tests.pl: Retrofit the module-specific unit tests to use test-specific scratch directories. That should be all of the existing tests. 2008-11-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Quell Perl warnings about redeclared variables. 2008-11-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm, tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm, tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/RequireValidShell.pm, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutSession.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm, tests/t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm, tests/t/lib/ProFTPD/Tests/Logins.pm, tests/t/lib/ProFTPD/Tests/Signals/TERM.pm: Retrofitted more of the testsuite to use more individualized per-test scratch directories. 2008-11-20 castaglia <castaglia> * contrib/mod_ban.c: Minor nits and improvements to mod_ban; no real functional changes. 2008-11-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/HELP.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASS.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Update some (but not all, yet) of the tests to use the new scratch directory function. Will need to finish the rest later tonight. 2008-11-19 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: By fixing the daemon shutdown bug, I introduced some race conditions into the unit tests. Each unit test would use the same 'tmp/' directory; and sometimes the next test would have started (and used the same path for PidFile, ScoreboardFile) before the server may have removed those files. To address this, each unit test will get its own unique scratch directory whose name will include the PID and a counter. This will require retrofitting most of the existing tests, but is cleaner in the long run. 2008-11-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/TERM.pm: Slight tweak to the shutdown test, to ensure that the server has enough time between startup and shutdown to write out the appropriate files. 2008-11-19 castaglia <castaglia> * NEWS, src/data.c: Bug#3135 - Aborting a download can lead to segfault in some cases. 2008-11-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm, tests/t/modules/mod_ban.t, tests/tests.pl: Added start of unit tests for the mod_ban module. 2008-11-19 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Provide a function for obtaining the reason, given by the server, why the initial connection might be denied. 2008-11-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Signals/TERM.pm, tests/t/signals/term.t, tests/tests.pl: Add a test for the SIGTERM signal handling of the daemon process, to ensure that the shutdown procedures (PidFile removal, ScoreboardFile removal) are indeed happening properly. 2008-11-19 castaglia <castaglia> * src/main.c: While working on unit tests for mod_ban, I noticed that mod_ban's shared memory segments were not being cleaned up. I tracked it down to the fact that the check to see if you're the "master" process (assuming a ServerType of 'standalone') was failing, because the cached "master PID" value was for the process _prior to daemonizing_. I suspect that many shutdown cleanups, such as PidFile removal and such, have not been happening for a while. 2008-11-19 castaglia <castaglia> * configure: Updated configure. 2008-11-19 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in, locale/Makefile.in: Properly honor the --localedir configure option. 2008-11-19 castaglia <castaglia> * src/encode.c: Comment typo. 2008-11-18 castaglia <castaglia> * src/encode.c: Check in some of the fixes found while investigating Bug#3134, particularly ones which can cause segfaults (e.g. on FreeBSD) when an iconv_t handle is closed multiple times erroneously. 2008-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Be sure to clean up the generated log file. 2008-11-17 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm, tests/tests.pl: After all the work done on Bug#3131, these ABOR unit tests should definitely be checked in and added to the testsuite. 2008-11-17 castaglia <castaglia> * NEWS: Remove duplicate bug entry. 2008-11-17 castaglia <castaglia> * tests/tests.pl: Don't add the 'testsuite_empty_test' to the list of files, if that is what is returned by filtering for feature-based test files. 2008-11-17 castaglia <castaglia> * src/netio.c: Fix uploads; it had been inadvertently broken when trace logging of EOF was added. The testsuite caught this regression; the testsuite is coming in handy! 2008-11-16 castaglia <castaglia> * NEWS, src/main.c: Bug#3073 - Command arguments not decoded properly in some places. 2008-11-15 castaglia <castaglia> * configure: Updated configure. 2008-11-15 castaglia <castaglia> * RELEASE_NOTES: Mention the change in TimeoutLinger default value in the release notes. 2008-11-15 castaglia <castaglia> * configure.in, include/options.h: Change the default linger timeout from 1.5 minutes (180 secs) to 30 secs. Many command-line FTP clients have a timeout of 60 secs, after which they think the server has timed out, and will close the control connection. We want to make sure that proftpd's lingering closes do not linger past that 60 secs mark. 2008-11-15 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm: Make sure the EPRT tests are sensitive to whether the built proftpd supports IPv6. Did the same for the EPSV tests, and added more tests for the optional EPSV arguments. 2008-11-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Allow the epsv() method to take an optional protocol number, as allowed in the EPSV command. 2008-11-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Apply the same Net::FTP internals muck to the epsv() and eprt() methods as used in the pasv() and port() methods. 2008-11-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Quell Perl warning about redeclared variable. 2008-11-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Make the pasv() and port() methods actually cause the client to use passive and active data transfers, respectively, rather than having to rely on a constructor-time setting. Yuck. 2008-11-15 castaglia <castaglia> * NEWS, src/data.c, src/netio.c: Bug#3131 - Session process uses 100% CPU after aborted transfer. 2008-11-14 castaglia <castaglia> * tests/Makefile.in: Fix typo. 2008-11-14 castaglia <castaglia> * modules/mod_lang.c: When calling setlocale(3) to get the LANG to advertise in the FEAT response, use LC_MESSAGES rather than LC_ALL; the latter can result in a string which includes the locales for every category when we just want the LC_MESSAGES category. 2008-11-14 castaglia <castaglia> * NEWS, src/main.c: Bug#3132 - Handling of SIGABRT signal leads to endless loop. 2008-11-14 castaglia <castaglia> * src/main.c, src/netio.c: Add trace logging of the handling of EOF, i.e. when a client closes (or shuts down) its control connection, causing proftpd to close that connection. Also make the implementation of the poll callback a little nicer; rather than calling select(2) on an empty fd_set, pass NULL if that fd_set is empty. 2008-11-13 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Fix the feature-checking code so that tests using a "feature_X" class are properly handled. 2008-11-13 castaglia <castaglia> * tests/t/commands/abor.t, tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Check in some of the in-progress unit tests on the ABOR command (being driven by investigations for Bug#3131). The tests are not part of the full testsuite yet. 2008-11-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm, tests/t/modules/mod_wrap2_sql.t, tests/tests.pl: Added unit tests for mod_wrap2_sql. 2008-11-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm, tests/t/modules/mod_wrap2_file.t, tests/tests.pl: Add unit tests for mod_wrap2_file. 2008-11-11 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add routine for checking the enabled features in the proftpd build. Use this for disabling IPv6 support in the unit tests, if IPv6 support is enabled, unless explicitly requested otherwise in the test. 2008-11-11 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/HELP.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASS.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm, tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Remove unnecessary import of module-related functions. 2008-11-11 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Fix bug, found by unit tests, with evaluation of conditions for applying WrapGroupTables directive. The logic was incorrectly inverted. 2008-11-10 castaglia <castaglia> * tests/tests.pl: If there are no additional feature/module-specific test files to add, then don't add them, not even the 'testsuite_empty_test' stub test. 2008-11-10 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Quell Perl compiler warnings about re-declared variables. 2008-11-08 castaglia <castaglia> * tests/t/config/maxretrievefilesize.t, tests/t/config/maxstorefilesize.t, tests/t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm, tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm, tests/tests.pl: Added unit tests for the MaxRetrieveFileSize and MaxStoreFileSize directives. 2008-11-08 castaglia <castaglia> * tests/t/config/requirevalidshell.t, tests/t/config/useftpusers.t, tests/t/lib/ProFTPD/Tests/Config/RequireValidShell.pm, tests/t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm, tests/tests.pl: Added unit tests for the RequireValidShell and UseFtpUsers directives. 2008-11-08 castaglia <castaglia> * tests/t/config/timeoutidle.t, tests/t/config/timeoutlogin.t, tests/t/config/timeoutnotransfer.t, tests/t/config/timeoutsession.t, tests/t/config/timeoutstalled.t, tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutSession.pm, tests/t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm, tests/tests.pl: Added unit tests for the various Timeout directives. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Minor adjustment to make a RETR test pass; the File::Spec::rel2abs() Perl function can take *a lot* longer to run, than expected, in some cases. Not sure why yet. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: The STOU tests now pass when run both as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Update the STOR tests to pass when run as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Make sure the RNTO tests pass when run as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Adjust the RMD tests to pass when run as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Make the RETR tests pass when run as both root and non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Update the NLST tests to pass when run as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Adjust the MKD tests so that using root and non-root users work, and the tests pass. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adjust the LIST tests so that they pass when run both as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Rework the DELE unit tests so that they pass when run both as root and as non-root. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Rework the APPE tests so that they always pass, whether run as root or not. 2008-11-07 castaglia <castaglia> * doc/howto/Testing.html: Mention that some integration tests are skipped if not run with root privs. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add a regression test for Bug#2922. 2008-11-07 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm, tests/t/modules/mod_sql_sqlite.t: Adding some regressions tests for Bugs #3116, #3124, and #3126. 2008-11-06 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#3130 - HideFiles can cause segfault. 2008-11-06 castaglia <castaglia> * tests/t/config/hidefiles.t, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm, tests/tests.pl: Added unit test for reproducing Bug#3130 (and preventing regressions). 2008-11-06 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql.pm, tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm, tests/t/modules/mod_sql.t, tests/t/modules/mod_sql_sqlite.t, tests/tests.pl: Make the tests.pl script "interrogate" the compiled proftpd, and start adding tests based on the compiled features (e.g. modules included, features enabled, etc). Add stub module files for mod_sql and mod_sql_sqlite; these will be the first module-specific test files; they will be demonstrations/examples for creating test files for other modules. 2008-11-06 castaglia <castaglia> * doc/howto/Testing.html: Update the Testing howto to reflect changes made to the 'make check' target. 2008-11-06 castaglia <castaglia> * tests/.cvsignore, tests/Makefile.in, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Run the integration tests after the API tests, as part of the 'make check' target. Fix some Perl warnings in the STOU tests. Make sure that the cvs commands ignore all generated log files (e.g. cvs diff won't complain about unknown .log files). 2008-11-06 castaglia <castaglia> * doc/howto/index.html: Add a link to the Testing howto in the howto index. 2008-11-06 castaglia <castaglia> * doc/howto/Testing.html: The Testing howto is now in a mostly usable form. 2008-11-06 castaglia <castaglia> * modules/mod_xfer.c, src/data.c: Fix a problem with the handling of STOU. This problem was detected by the testsuite, as it should. 2008-11-06 castaglia <castaglia> * tests/api/tests.c: Make sure that the testsuite log name is kept in sync with what is displayed in the error message. 2008-11-03 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Explain why sqlite3_shutdown() is not called when the mod_sql_sqlite module is being unloaded. 2008-11-03 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Stylistic nits; no functional change. 2008-11-03 castaglia <castaglia> * NEWS, contrib/mod_sql_sqlite.c: Bug#3126 - Segfault in mod_sql_sqlite when user belongs to multiple groups. 2008-10-31 castaglia <castaglia> * NEWS, contrib/mod_ldap.c, contrib/mod_sql.c, src/log.c: Bug#2767 - gcc 4.0/amd64 warnings. 2008-10-31 castaglia <castaglia> * NEWS, include/fsio.h, src/fsio.c: Bug#3092 - FSIO API needs mechanism for allowing registered FS handlers to permit atomic renames. 2008-10-30 castaglia <castaglia> * modules/mod_xfer.c, src/data.c: Turns out that not _all_ data connections are allocated from session.xfer.p; some are allocated from session.pool. The previous changes had inadvertently broken passive data transfers. For passive data transfers, then, use session.pool for allocating the connection object (session.d), rather than session.xfer.p; thus making consistent the pool that is used for allocating session.d. Also clean up some of the error responses for failed uploads; they might have referenced NULL pointers, which would subsequently cause segfaults/crashes on platforms whose printf(3) functions don't handle the case well. 2008-10-29 castaglia <castaglia> * RELEASE_NOTES: Start prepping the RC3 release notes. 2008-10-28 castaglia <castaglia> * contrib/mod_sql.c: Add a comment about why the nested sql_prepare_where() function calls are the way they are (to prevent future developers from regressing Bug#3124). 2008-10-28 castaglia <castaglia> * include/data.h, modules/mod_xfer.c, src/data.c: Improve on the fix for Bug#3089 by creating a new function specifically to clear the session.xfer.p pool and any associated structures; this function refactors all of the associated code into a single location. 2008-10-28 castaglia <castaglia> * doc/howto/Testing.html: Adding slightly more substance to the Testing howto; hopefully I can muster the motivation to finish it later tonight. 2008-10-28 castaglia <castaglia> * NEWS, modules/mod_xfer.c, src/data.c, src/inet.c: Bug#3089 - Memory pool double-free on session exit after aborted data transfer. 2008-10-28 castaglia <castaglia> * include/inet.h, src/inet.c: Remove the pr_inet_associate() function; nothing was using it. 2008-10-27 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3124 - mod_sql improperly substitutes variables in user/group names. 2008-10-21 castaglia <castaglia> * configure: Updated configure. 2008-10-21 castaglia <castaglia> * NEWS, config.h.in, configure.in, src/encode.c: Bug#3122: iconv() not detected properly on FreeBSD when --enable-nls is used. 2008-10-20 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Make sure that the PASS unit tests expected the proper response message. 2008-10-20 castaglia <castaglia> * include/glibc-glob.h: Fix compiler detection to deal with other compilers. 2008-10-20 castaglia <castaglia> * tests/t/config/maxloginattempts.t, tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm, tests/tests.pl: Added unit tests for the MaxLoginAttempts directive. 2008-10-20 castaglia <castaglia> * locale/en_US.po, locale/it_IT.po, locale/proftpd.pot, locale/zh_CN.po: Removing redundant (and now absent) entry for "Login incorrect"; there is already a "Login incorrect." (note the period) entry. 2008-10-20 castaglia <castaglia> * contrib/mod_ban.c: Make mod_ban use the same "Login incorrect." string, including period, like the rest of mod_auth. Inconsistencies in responses constitute information leaks, albeit minor. 2008-10-19 castaglia <castaglia> * modules/mod_auth.c: Fixed failed login message to be consistent with other instances of the "Login incorrect" string. 2008-10-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm: Make the regexes tigher for checking the expected EPSV and PASV responses. 2008-10-19 castaglia <castaglia> * tests/t/commands/eprt.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm, tests/tests.pl: Added tests for the EPRT command. 2008-10-19 castaglia <castaglia> * tests/t/commands/epsv.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm, tests/tests.pl: Added tests for the EPSV command. 2008-10-19 castaglia <castaglia> * tests/t/commands/feat.t, tests/t/commands/help.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/FEAT.pm, tests/t/lib/ProFTPD/Tests/Commands/HELP.pm, tests/tests.pl: Added tests for the FEAT and HELP commands. 2008-10-19 castaglia <castaglia> * tests/t/commands/pass.t, tests/t/commands/user.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASS.pm, tests/t/lib/ProFTPD/Tests/Commands/USER.pm, tests/tests.pl: Added tests for the USER and PASS commands. 2008-10-19 castaglia <castaglia> * tests/t/config/displaylogin.t, tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm, tests/tests.pl: Added tests for the DisplayLogin directive. 2008-10-19 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: Forgot to clean up a test file that's outside of the tmp/ directory. 2008-10-19 castaglia <castaglia> * tests/t/config/displayconnect.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm, tests/tests.pl: Added tests for the DisplayConnect directive. 2008-10-19 castaglia <castaglia> * tests/t/config/serverident.t, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm, tests/tests.pl: Added first unit tests for config directives; we're starting with ServerIdent. 2008-10-18 castaglia <castaglia> * tests/t/commands/appe.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm, tests/tests.pl: Added tests for the APPE command. 2008-10-18 castaglia <castaglia> * tests/t/commands/stou.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/t/lib/ProFTPD/Tests/Commands/STOU.pm, tests/tests.pl: Added tests for the STOU command. Cleaned up handling of FTP response messages. 2008-10-18 castaglia <castaglia> * tests/t/commands/stor.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/STOR.pm, tests/tests.pl: Added some tests for the STOR command. 2008-10-18 castaglia <castaglia> * modules/mod_xfer.c: Preserve the error code for a failing to open the file to be uploaded; errno was being overwritten by subsequent function calls before being reported back to the client. 2008-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Remove copy-n-pasted code from the RETR tests, and make them work more reliably. 2008-10-18 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Quell some annoying Perl warnings (coming from Net::Cmd and Net::FTP) by providing an initialized default value. Makes running the testsuite using tests.pl much prettier. 2008-10-18 castaglia <castaglia> * tests/t/commands/retr.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/RETR.pm, tests/tests.pl: Add some basic tests of the RETR command. 2008-10-17 castaglia <castaglia> * tests/t/commands/list.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Commands/LIST.pm, tests/tests.pl: Start of tests for the LIST command; expect more in the future. 2008-10-17 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Fix Bug#3120 for the WrapGroupTables and WrapUserTables directives as well. 2008-10-17 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3120 - WrapTables not allowed in <Anonymous> context. 2008-10-16 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Updated tests to use server_wait(). 2008-10-15 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Retrofit some of the test classes to use server_wait(). Fixed up some of the NLST tests (due to the vagaries of the Perl Net::FTP class). 2008-10-15 castaglia <castaglia> * configure: Updated configure. 2008-10-15 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#3119 - Search for libcap2 in addition to libcap for mod_cap support. 2008-10-15 castaglia <castaglia> * doc/modules/mod_cap.html: Mention the fact that some Linux distros use a package name of "libcap2-dev" as well as (or instead of) "libcap2". 2008-10-14 castaglia <castaglia> * modules/mod_dso.c: Log, at debug level 7, when we are loading a module. This message is symmetric with the similar message when a module is unloaded. 2008-10-14 castaglia <castaglia> * contrib/mod_ifsession.c: Fix compilation error. 2008-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Revert the response message check changes made earlier; the discrepancy was caused by stale source code, not by platform/version differences. 2008-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: As per the Net::FTP documentation, the use of PASV vs PORT is done at instantiation time, oddly enough. Make sure this feature is exposed in the testsuite. 2008-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add a function that encapsulates the server-wait part of the tests, including a timeout. 2008-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Looks like some of the errno strings differ across platforms and versions. 2008-10-14 castaglia <castaglia> * tests/t/commands/nlst.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/NLST.pm, tests/tests.pl: Added tests for NLST; still more tests to be added. 2008-10-14 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Make sure that lingering processes, if not killed properly, are timed out quickly. 2008-10-13 castaglia <castaglia> * tests/t/commands/rest.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/REST.pm, tests/tests.pl: Added tests for the REST command. 2008-10-13 castaglia <castaglia> * tests/t/commands/quit.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/QUIT.pm, tests/tests.pl: Added test for the QUIT command. 2008-10-13 castaglia <castaglia> * tests/t/commands/rnfr.t, tests/t/commands/rnto.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm, tests/tests.pl: Added tests for the RNFR, RNTO commands. 2008-10-13 castaglia <castaglia> * modules/mod_core.c: Preserve the actual errno value if the renaming fails; it was getting trounced in subsequent function calls. 2008-10-13 castaglia <castaglia> * tests/t/commands/noop.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/NOOP.pm, tests/tests.pl: Added test for the NOOP command. 2008-10-13 castaglia <castaglia> * tests/t/commands/port.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/PORT.pm, tests/tests.pl: Add tests for the PORT command. 2008-10-13 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Fixed regex matching of ALLO response code leading digit. 2008-10-13 castaglia <castaglia> * tests/t/commands/allo.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm, tests/tests.pl: Added test for the ALLO command. 2008-10-13 castaglia <castaglia> * tests/t/commands/stru.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/STRU.pm, tests/tests.pl: Added tests for the STRU command. 2008-10-13 castaglia <castaglia> * tests/t/commands/mode.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/MODE.pm, tests/tests.pl: Add tests for the MODE command. 2008-10-13 castaglia <castaglia> * tests/t/commands/pasv.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands/PASV.pm, tests/tests.pl: Added tests for the PASV command. 2008-10-13 castaglia <castaglia> * tests/t/commands/cdup.t, tests/t/commands/cwd.t, tests/t/commands/dele.t, tests/t/commands/mdtm.t, tests/t/commands/mkd.t, tests/t/commands/pwd.t, tests/t/commands/rmd.t, tests/t/commands/size.t, tests/t/commands/syst.t, tests/t/commands/type.t, tests/t/lib/ProFTPD/Tests/Commands/CDUP.pm, tests/t/lib/ProFTPD/Tests/Commands/CWD.pm, tests/t/lib/ProFTPD/Tests/Commands/DELE.pm, tests/t/lib/ProFTPD/Tests/Commands/MDTM.pm, tests/t/lib/ProFTPD/Tests/Commands/MKD.pm, tests/t/lib/ProFTPD/Tests/Commands/PWD.pm, tests/t/lib/ProFTPD/Tests/Commands/RMD.pm, tests/t/lib/ProFTPD/Tests/Commands/SIZE.pm, tests/t/lib/ProFTPD/Tests/Commands/SYST.pm, tests/t/lib/ProFTPD/Tests/Commands/TYPE.pm, tests/tests.pl: Split the unit tests for FTP commands into separate files, one file per set of tests of a command. The previous files were getting too large and unwieldy. 2008-10-13 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands.pm: Added tests for the TYPE, MDTM, and SIZE commands. 2008-10-13 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands.pm: Added tests for the DELE command. 2008-10-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Added command test cases where failures (for different reasons) are expected. 2008-10-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands.pm: Added tests for the MKD, XMKD, RMD, and XRMD commands. 2008-10-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Commands.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Added tests for CDUP, XCUP, and SYST commands. Added better error messages (with location now) for failed assertions. Fixed cases where failed login tests might allow the server to continue running. 2008-10-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/Tests/Commands.pm: Fixed use of assertions when checking response codes and messages. Added tests for the XPWD, CWD, and XCWD commands. 2008-10-12 castaglia <castaglia> * tests/t/lib/ProFTPD/Tests/Commands.pm: Fix the PWD test so that it actually checks that the FTP response code and message are as expected, not just that they exist. 2008-10-12 castaglia <castaglia> * tests/t/commands.t, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Commands.pm, tests/tests.pl: Start of test cases for the various FTP commands; PWD is simple, so it was first. Also add support for writing AuthUserFiles and AuthGroupFiles; this makes it easier to log into the running proftpd without requiring root privs. 2008-10-12 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm: Fix the anonymous login unit test such that it passes (requires root privs). Fix the FTP client wrapper so that it properly retrieves the FTP response code and message. Update Utils so that the server identity (User/Group) retrieved are always non-root accounts. 2008-10-11 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Logins.pm: Fix the anonymous login test (it should fail, unless run with root privs). Have defaults for the common config directives. Exclude tests which require root privs unless we are being run with root privs. 2008-10-11 castaglia <castaglia> * tests/t/lib/ProFTPD/TestSuite/Child.pm, tests/t/lib/ProFTPD/TestSuite/FTP.pm, tests/t/lib/ProFTPD/TestSuite/Utils.pm, tests/t/lib/ProFTPD/Tests/Logins.pm, tests/t/logins.t, tests/tests.pl: Start of a collection of unit tests against a running proftpd server, using Perl. 2008-10-11 castaglia <castaglia> * modules/mod_facts.c: Fixed bug handling the MFMT command; found by a user in the online forums. 2008-10-08 castaglia <castaglia> * doc/howto/Translations.html, doc/howto/index.html: Adding a Translation mini-howto. 2008-10-07 castaglia <castaglia> * doc/modules/mod_lang.html: Typo. 2008-10-07 castaglia <castaglia> * tests/.cvsignore, tests/Makefile.in, tests/api/.cvsignore, tests/api/tests.c: Rename the executable used for testing the API (and the log file that executable generates) to be "api-tests", to differentiate it from the other tests I am working on. 2008-10-07 castaglia <castaglia> * tests/api/.cvsignore: Add .cvsignore file for the new tests/api/ directory. 2008-10-07 castaglia <castaglia> * src/main.c: Need to use exit(), rather than end_login(). Something about the latter makes it impossible to read stdout programmatically when using -vv. 2008-10-06 castaglia <castaglia> * modules/mod_auth_pam.c: Make mod_auth_pam reject the connection if it is unable to register itself as an auth-only module with the Auth API. This check would have caught the Bug#2922 regression much earlier. Ah, hindsight. 2008-10-06 castaglia <castaglia> * tests/Makefile.in, tests/api/array.c, tests/api/class.c, tests/api/env.c, tests/api/event.c, tests/api/expr.c, tests/api/feat.c, tests/api/modules.c, tests/api/netacl.c, tests/api/netaddr.c, tests/api/pool.c, tests/api/regexp.c, tests/api/scoreboard.c, tests/api/sets.c, tests/api/str.c, tests/api/stubs.c, tests/api/table.c, tests/api/tests.c, tests/api/tests.h, tests/api/timers.c, tests/api/var.c, tests/api/version.c: Moving the current API unit test source files into an api/ directory, to make room for a directory for integration unit tests (i.e. login tests, command tests, configuration tests, etc) which require an FTP client and a running proftpd. 2008-10-06 castaglia <castaglia> * NEWS, src/auth.c: Bug#3117 - Authentication improperly allowed (Bug#2922 regression). 2008-10-06 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Add a header-vs-lib version check to mod_sql_sqlite, similar to the one that is in mod_tls. Hopefully any discrepancies will get sysadmins to correct the software installations on their system. 2008-10-06 castaglia <castaglia> * contrib/mod_ldap.c: When mod_ldap is initialized, print out the LDAP vendor and LDAP API version. 2008-10-06 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r58: typo 2008-10-06 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r57: * Prevent the use of LDAPSearchScope or LDAPUseSSL when LDAPServer specifies a URL. Instead, the desired search scope and SSL setting should be specified by the URL. mod_ldap bzr r56: - remove extraneous includes - free the LDAPURLDesc in ldap_getconf(), since we don't attach it to the configuration directive any more 2008-10-06 castaglia <castaglia> * src/dirtree.c: Reduce the size of the pool allocated for config_recs; should reduce the memory footprint more without (hopefully) any adverse side effects. 2008-10-05 castaglia <castaglia> * modules/mod_auth_pam.c: Correct some of the terms in the trace messages from the PAM conversation callback. 2008-10-04 castaglia <castaglia> * modules/mod_auth_pam.c: Be less strict about AuthPAMOptions, and use case-insensitive checks. 2008-10-04 castaglia <castaglia> * modules/mod_core.c: Fix typo which made for a rather confusing comment. 2008-10-04 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3116 - SQLNegativeCache with no group info can cause segfault. 2008-10-04 castaglia <castaglia> * src/main.c, src/netio.c: Apply a tag to the one unnamed subpool of permanent_pool. Add comments about why that subpool (which isn't needed in the daemon process) is allocated. 2008-10-04 castaglia <castaglia> * src/class.c: Tag any pools allocated for class definitions. 2008-10-04 castaglia <castaglia> * src/pool.c: Fix the mechanism used to count the number of sub-pools in a pool; it was not recursing properly. 2008-10-04 castaglia <castaglia> * src/timers.c: It's high time the Timers API had its own memory pool, rather than using permanent_pool directly. 2008-10-04 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Check in the control action which helps me to find pool use misbehaviors. If proftpd is compiled using --enable-devel, and the mod_ctrs_admin module is used (which itself requires --enable-ctrls), then a 'debug memory' control action (via ftpdctl) is supported. 2008-10-04 castaglia <castaglia> * src/pool.c: Prettify, and update, the messages emitted when debugging pool usage. 2008-10-04 castaglia <castaglia> * src/main.c: Fix an egregious memory leak in the daemon process (but not in session processes). On startup, proftpd would allocate a memory pool for the Netaddr API. This pool was used, but never cleared. And every restart would cause more allocations (for the netaddr objects used in the bindings) from this pool. Thus a long-running proftpd, restarted occasionally (as is done for log rolling) would gradually leak quite a bit. Slowly, to be sure, but noticeable for long-lived daemons. 2008-10-04 castaglia <castaglia> * src/modules.c: Reduce the size of the sub-pool used for symbols in the stash. This reduces the memory footprint of the proftpd daemon process (and session processes) by quite a bit, given that there are quite a few symbols allocated. Hopefully this won't cause any issues. 2008-10-04 castaglia <castaglia> * src/help.c: Minor label nit. 2008-10-04 castaglia <castaglia> * contrib/mod_sql.c: Allow the SQLEngine directive to be processed even if, for some reason, the user name config_rec can't be found. 2008-10-03 castaglia <castaglia> * doc/modules/mod_lang.html: Add a Usage section containing, for now, a description of the Cyrillic/Telnet issue, and how to use mod_lang to work around it. 2008-10-02 castaglia <castaglia> * modules/mod_auth.c: Minor change to test SourceForge's commit mail. 2008-10-02 castaglia <castaglia> * modules/mod_auth.c: Generate a few new events: one for when a root login is attempted, and one containing the authentication code value. These events are added first for the use by mod_audit, a third-party module for auditing certain application events. 2008-10-01 castaglia <castaglia> * contrib/mod_tls.c: Minor tweaks to allow TLSPassPhraseProvider to work properly on Mac OSX. Shouldn't harm anything. 2008-10-01 castaglia <castaglia> * contrib/mod_tls.c: When handling the exit event in the daemon process, the TLSLog is not open. Thus use pr_log_pri() and pr_log_debug() rather than tls_log() there. 2008-09-30 castaglia <castaglia> * src/main.c, src/trace.c: Add trace logging of when the various signals are handled. When handling a restart, be sure to close any open trace log fd. Also, to prevent issues with Solaris' stupid stdio fd limit of 256, make sure that the fallback fd used for the TraceLog is 255. 2008-09-30 castaglia <castaglia> * contrib/mod_dynmasq.c: Reduce the log verbosity of mod_dynmasq more, as per user request. 2008-09-29 castaglia <castaglia> * src/support.c: [no log message] 2008-09-29 castaglia <castaglia> * contrib/mod_dynmasq.c: Change the logging of mod_dynmasq slightly, so that it does not spam the system log with messages. 2008-09-26 castaglia <castaglia> * src/response.c: Add trace logging of the responses that are added, not just when the responses are flushed to the client. 2008-09-25 castaglia <castaglia> * src/main.c: Include the version status (e.g. "CVS", "devel", "stable") in the -V output, as well as the build timestamp. 2008-09-23 castaglia <castaglia> * INSTALL: Update the mailing list info in the INSTALL file. 2008-09-23 castaglia <castaglia> * tests/array.c: Add unit test for the clear_array() function added in 1.3.2rc2. 2008-09-20 castaglia <castaglia> * NEWS, src/main.c, src/netio.c: Bug#3115 - Cross-site request forgery. 2008-09-19 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3114 - Bad handling of uid/gid parameters for CreateHome. 2008-09-17 castaglia <castaglia> * contrib/mod_sql.c: Quell a few more compiler warnings about signedness. 2008-09-17 castaglia <castaglia> * include/version.h: Bump to RC3 in CVS. 2008-09-17 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2008-09-17 castaglia <castaglia> * NEWS: Update release date in NEWS. 2008-09-17 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for the release of 1.3.2rc2. 2008-09-17 castaglia <castaglia> * RELEASE_NOTES: Update the release notes with the highlights of the upcoming RC2 release. 2008-09-12 castaglia <castaglia> * modules/mod_auth.c: Minor formatting nit; I prefer to have strings from clients (e.g. user names) enclosed in quotes. 2008-09-12 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3112 - Uploaded files are not removed if close() fails. 2008-09-11 castaglia <castaglia> * contrib/mod_tls.c: Stir in some additional entropy, using the secret passphrases of certs as sources. 2008-09-11 castaglia <castaglia> * src/mkhome.c: When scanning a skel directory, there's no need to build up the full paths (and using memory from the pool) if we're going to skip those paths. 2008-09-11 castaglia <castaglia> * contrib/mod_ban.c: Turns out that Mac OSX has the same semantics, with regard to reuse of getopt(3), as FreeBSD. 2008-09-09 castaglia <castaglia> * modules/Makefile.in: Cycle through a single combined list of subdirectories in which to invoke the `install' target, rather than two separate lists. 2008-09-09 castaglia <castaglia> * doc/howto/DSO.html: Update the example Makefile in the DSO howto, since the `install' target may be called even if the module is built as a static module (i.e. no .la file produced). 2008-09-08 castaglia <castaglia> * src/data.c: With the fix for Bug#2920 comes the possibility that clients can send NOOP commands on the control connection, while a data transfer is occurring. This would cause the data transfer initiating command recorded in the scoreboard to be overwritten with the NOOP command. While technically correct, this is probably not what the admins want. So make proftpd handle such commands politely, responding 200 to them, without actually dispatching the command through the handlers. 2008-09-08 castaglia <castaglia> * Makefile.in, contrib/mod_load/Makefile.in, contrib/mod_wrap2/Makefile.in, modules/Makefile.in: Make sure that the `install' target is called for static modules that are built in their own directories, just as is done for shared modules. 2008-09-08 castaglia <castaglia> * contrib/mod_tls.c: Avoid cleaning up OpenSSL state if mod_sftp is present as well. 2008-09-08 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r55: high time for a 2.8.19 release 2008-09-08 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r54: log message wording fix 2008-09-08 jwm <jwm> * contrib/mod_ldap.c: mod_ldap bzr r53: * Fixed missing ldap_init() -> ldap_initialize() when updating for latest LDAP C API. Fixes segfaults on (some?) 64-bit systems. (Bug #3046) 2008-09-08 castaglia <castaglia> * include/pool.h, src/pool.c: Add a clear_array() function, for clearing/resetting an array_header. 2008-09-08 castaglia <castaglia> * src/main.c: Try to give different sessions more different random seeds by multiplying the system time (was being used) with the PID. Bonus points for having the unsigned int value wrap around. 2008-09-07 castaglia <castaglia> * contrib/mod_tls.c: Refresh the builtin 2048-bit DH group. 2008-09-07 castaglia <castaglia> * contrib/mod_tls.c: Refresh the builtin DH groups in mod_tls. Note that the 2048-bit DH group still needs to be updated. 2008-09-07 castaglia <castaglia> * src/main.c: Quell some compiler complaints about formatting. 2008-09-04 castaglia <castaglia> * src/encode.c: If the selected locale does not support the Telnet IAC character, be sure that the toggled setting is not overwritten. 2008-09-04 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3109 - Errors with file uploads logged but not reported to clients. 2008-09-04 castaglia <castaglia> * src/parser.c: Get rid of small function that is only used in one place; simply move the code into the calling function. 2008-09-04 castaglia <castaglia> * src/inet.c, src/log.c, src/main.c, src/scoreboard.c, src/trace.c: Change a few more places to using the cached session.pid, if available. 2008-09-03 castaglia <castaglia> * include/fsio.h, src/fsio.c: Remove the pr_find_fs() function; it was a bad idea. Even if a caller could retrieve a registered FS object by name, that caller would not be able to do much with the FS. The various callbacks are usually declared as static to the file defining them, which means that the caller probably won't have access to the memory addresses of the callbacks. 2008-09-03 castaglia <castaglia> * include/fsio.h, src/fsio.c: Add a pr_find_fs() function, for retrieving a registered FS object by name. 2008-09-02 castaglia <castaglia> * configure: Updated configure. 2008-09-02 castaglia <castaglia> * config.h.in, configure.in, modules/mod_ls.c: If the dirfd() function is available, use that instead of poking around the internals of a DIR structure. 2008-09-01 castaglia <castaglia> * include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/data.c, src/main.c, src/throttle.c: Make fewer getpid() system calls by caching the values (it's not going to change), and using the cached value for the pr_scoreboard_entry_update() calls. 2008-09-01 castaglia <castaglia> * doc/howto/DSO.html: Updated DSO howto with mention of prxs. 2008-09-01 castaglia <castaglia> * NEWS, doc/modules/mod_facts.html, modules/mod_facts.c: Bug#3108 - Support removing MLST from FEAT list. 2008-08-30 castaglia <castaglia> * contrib/mod_tls.c: Prettify some of the error messages emitted if the configuration is not correct. 2008-08-30 castaglia <castaglia> * contrib/mod_tls.c: Fix typos in fix for Bug#3107. 2008-08-30 castaglia <castaglia> * NEWS, contrib/mod_tls.c, doc/contrib/mod_tls.html: Bug#3107 - TLSProtocol supports misleading "SSLv23" parameter. 2008-08-29 castaglia <castaglia> * Makefile.in: When installing prxs, do not ever attempt to strip it. It is a Perl script, not a compiled binary, and strip(1) will complain about the file type. 2008-08-28 castaglia <castaglia> * configure: Updated configure. 2008-08-28 castaglia <castaglia> * include/data.h: Update copyright dates in just-modified header. 2008-08-28 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/data.h, src/data.c: Bug#3106 - Add support for Mac OSX 10.5 sendfile. 2008-08-27 castaglia <castaglia> * locale/Makefile.in: Do not remove the .po files when cleaning the locale/ directory. 2008-08-27 jwm <jwm> * contrib/mod_ldap.c: having to hand-edit mod_ldap.c to enable tls support is silly; switch based on LDAP_OPT_X_TLS, which is the best thing i've found given that i can't find an ldap sdk that support tls other than openldap (sun's doesn't; are there any other major players around?) 2008-08-27 jwm <jwm> * contrib/mod_ldap.c: fix LDAPServer url handling by re-parsing the ldap url in each session rather than trying to keep track of the LDAPURLDesc struct proftpd bug 3097 2008-08-27 jwm <jwm> * contrib/mod_ldap.c: use the configured ldap_port in "connected..." debug message, not LDAP_PORT 2008-08-27 jwm <jwm> * contrib/mod_ldap.c: * Define LDAP_SCOPE_DEFAULT if not defined by the SDK, fixing compilation with (recent?) Sun LDAP headers. 2008-08-27 jwm <jwm> * contrib/mod_ldap.c: * Fix compilation with old LDAP SDKs (LDAP_API_VERSION < 2000). Thanks to Saju Paul <saju.paul@messageway.com>. 2008-08-26 castaglia <castaglia> * src/prxs.in: Add license to prxs. Support use of LIBTOOL environment variable to direct prxs to use a different libtool, if necessary. 2008-08-25 castaglia <castaglia> * src/inet.c: Extend the hack used for active ports to Mac OS 10.5 as well. 2008-08-25 castaglia <castaglia> * configure: Updated configure. 2008-08-25 castaglia <castaglia> * Makefile.in, NEWS, configure.in, src/.cvsignore, src/prxs.in: Bug#2991 - Need a `prxs' (ProFTPD Extensions) command-line tool for building shared modules without proftpd source. 2008-08-25 castaglia <castaglia> * lib/pr-syslog.c: Extend the fix for Bug#3104 to Mac OS 10.5 (i.e. DARWIN9) as well. 2008-08-24 castaglia <castaglia> * lib/Makefile.in: Turns out that the libsupp library does NOT need to be installed, as part of a proftpd installation, in order to support DSO modules built outside of proftpd's source tree. All of the symbols of the libsupp library are statically linked into the proftpd binary, thus a dynamically loaded module which uses those symbols should have the symbols resolved successfuly at load time, without need to explicitly link against libsupp. The installation of libsupp was added as part of Bug #2991. 2008-08-24 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#3104 - Syslog logging does not work on Mac OS X. 2008-08-24 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2564 - Improper logging of "max connections per host". 2008-08-23 castaglia <castaglia> * NEWS, contrib/mod_sql.c, doc/contrib/mod_sql.html: Bug#2537 - mod_sql does not support %{...}t variable. 2008-08-23 castaglia <castaglia> * NEWS, doc/howto/DisplayFiles.html, src/display.c: Bug#3055 - Support Display variable for specifying the timestamp format. See doc/howto/DisplayFiles.html for more details. 2008-08-23 castaglia <castaglia> * lib/libcap/libcap.h: Fix typo (missing backslash). 2008-08-23 castaglia <castaglia> * src/display.c: A temporary pool was being allocated from session.pool for each Display file, and was not being cleaned up. Tsk. 2008-08-22 castaglia <castaglia> * lib/libcap/libcap.h: Try to handle the change in Linux capability version macro names for older kernels (which don't define/use the new names). 2008-08-21 castaglia <castaglia> * NEWS, src/log.c: Bug#3098 - Socket descriptor leak when using syslog logging, especially at SyslogLevel 'notice' or higher. 2008-08-20 castaglia <castaglia> * contrib/mod_site_misc.c: Add signal handling to a while() loop. 2008-08-20 castaglia <castaglia> * contrib/mod_load/Makefile.in: Make the mod_load Makefile consistent with other contrib module Makefiles. 2008-08-20 castaglia <castaglia> * NEWS, contrib/mod_load/Makefile.in, contrib/mod_wrap2/Makefile.in: Bug#3101 - mod_wrap2 does not compile on FreeBSD with custom includes. The fix was also needed in the mod_load Makefile. 2008-08-18 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_xfer.c: Bug#3030 - GroupOwner should work for all groups. 2008-08-18 castaglia <castaglia> * contrib/ftpmail: Forgot to add descriptions of the --ignore-users/--watch-users command-line options to the --help output, as part of the fix for Bug#3100. 2008-08-18 castaglia <castaglia> * NEWS, contrib/ftpmail, doc/contrib/ftpmail.html: Bug#3100 - Support ftpmail options for sending emails only for specific users. 2008-08-18 castaglia <castaglia> * doc/howto/Tracing.html: Mention the new "fileperms" trace log channel in the Trace logging howto. 2008-08-18 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_xfer.c: Bug#3099 - Add trace logging of filesystem permission errors. 2008-08-18 castaglia <castaglia> * contrib/mod_wrap2/.cvsignore: Ignore autoconf-generated cache file. 2008-08-16 castaglia <castaglia> * src/fsio.c: If we are out of memory, then we should exit as soon as possible, and skip any sending of events on the topic. 2008-08-16 castaglia <castaglia> * modules/mod_xfer.c: If we decline to use sendfile() for any reason, log this only once per RETR command. Otherwise, the debug logs get spammed. 2008-08-15 castaglia <castaglia> * src/throttle.c: Include signal.h, for the signal-masking function declarations. 2008-08-15 castaglia <castaglia> * doc/contrib/index.html, doc/contrib/mod_ldap.html: Start a doc covering the mod_ldap directives. 2008-08-15 castaglia <castaglia> * configure: Updated configure. 2008-08-15 castaglia <castaglia> * configure.in: Be sure to include all of the libraries that the proftpd executable is linked against in the `proftpd -V' output. 2008-08-15 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Log if there was an error closing the SQLite database as well. 2008-08-15 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Log the error, if there is one, when opening the SQLite database file. 2008-08-15 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Be sure to log the error string returned from SQLite when a query fails. Otherwise, debugging issues is a lot harder. 2008-08-14 castaglia <castaglia> * contrib/mod_tls.c: Turns out that prompting for passphrases for protected SSL key files MUST happen during the 'core.postparse' event, and NOT during the 'core.startup' event. The passphrase prompting requires use of the TTY, and by the time the 'core.startup' event occurs, the process may have daemonized itself away from the TTY. 2008-08-13 castaglia <castaglia> * contrib/mod_tls.c: The change of timing of initializing the OpenSSL library, in order to better handle FIPS mode, broke the TLSPassphraseProvider functionality. The problem is that using the OpenSSL library for loading certs/keys using passphrases, before the OpenSSL library has been initialized, does not work so well. With this change, the loading of passphrase-protected certs/keys now happens in the 'core.startup' event handler, after OpenSSL has been initialized; this means there is no more need for a 'core.postparse' event handler. 2008-08-12 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3095 - TLSPassphraseProvider port number truncated. Fixed by using 'sizeof(nbuf)', not 'sizeof(buf)', in the snprintf() call. 2008-08-12 castaglia <castaglia> * Makefile.in: If using the pkgconfig info to compile and link modules, it is not necessary to link against the libsupp library. This library is statically linked into the proftpd executable, which means that DSO modules that use any libsupp symbols will have those symbols successfully resolved at module load time. 2008-08-11 castaglia <castaglia> * src/pool.c: Change the "Attempt to free already freed" message, when clearing a pool, so that it logs the name of the pool being cleared; this will aid in debugging such occurrences. 2008-08-11 castaglia <castaglia> * configure: Updated configure. 2008-08-11 castaglia <castaglia> * Make.rules.in, Makefile.in, NEWS, configure.in: Bug#3074 - Support configure option for pkgconfig .pc file install location. 2008-08-10 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Use root privs when opening the file configured for SQLite use. 2008-08-10 castaglia <castaglia> * configure: Updated configure. 2008-08-10 castaglia <castaglia> * configure.in: The use of the -Wno-long-double compiler flag is only needed on Mac machines; and using that flag on non-Mac, newer gcc versions causes problems. The configure script thus will only check to see if that flag should be used if the compiling platform is a Mac. 2008-08-06 castaglia <castaglia> * contrib/mod_tls.c: Quell a compiler warning about signedness with an explicit cast. 2008-08-06 castaglia <castaglia> * NEWS, lib/libcap/cap_alloc.c, lib/libcap/cap_proc.c, lib/libcap/libcap.h: Bug#3096 - libcap version errors on newer Linux kernel. Newer Linux kernels have a _LINUX_CAPABILITY_VERSION_2 macro, and redefine the old _LINUX_CAPABILITY_VERSION macro. To play better with such kernels, redefine the bundled libcap to use _LINUX_CAPABILITY_VERSION_1. 2008-08-06 castaglia <castaglia> * configure: Updated configure. 2008-08-06 castaglia <castaglia> * config.h.in, configure.in: Fix issue where configure script was detecting the presence of a linux/capability.h header, but was not defining the HAVE_LINUX_CAPABILITY_H macro in the config.h file. (It's a matter of using AC_CHECK_HEADERS vs AC_CHECK_HEADER; easy to miss, and insidious.) 2008-07-30 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3094 - Perform unidirectional SSL/TLS shutdown on data connections. 2008-07-17 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3036 - Quota information not persisted if session ends abruptly. 2008-07-17 castaglia <castaglia> * contrib/mod_quotatab.h: Remove stale and misleading comment; confstreams were an interesting idea, but will not be added. 2008-07-16 castaglia <castaglia> * doc/modules/mod_cap.html: Add a FAQ about the libcap1 warning (regarding 32-bit capabilities), and how to address the warning. 2008-06-19 castaglia <castaglia> * modules/mod_auth.c: Replace the specific "FTP login timed out" with the more generic "Session timed out". 2008-06-18 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3077 - Transparently handle the X-variant commands when checking <Limit> permissions. 2008-06-17 castaglia <castaglia> * include/compat.h: Minor formatting change, no functional change. 2008-06-16 castaglia <castaglia> * src/main.c: If PR_DEVEL_COREDUMP support is enabled, then call abort() in the SIGABRT handler, rather than in the synchronously-handled handle_abort(). It works much better this way. 2008-06-16 castaglia <castaglia> * src/main.c: Always remove the scoreboard entry when handling a termination signal, not just when we receive SIGSEGV. 2008-06-16 castaglia <castaglia> * include/compat.h: Add comments noting when compat macros were added; these will be used for determining when the compat macros should be dropped. 2008-06-16 castaglia <castaglia> * contrib/mod_ban.c: Update to use newer PR_LOG_ macros. 2008-06-14 castaglia <castaglia> * contrib/mod_ctrls_admin.c, include/dirtree.h, include/str.h, src/dirtree.c, src/str.c, tests/str.c: Refactor the pr_is_boolean() function into pr_str_is_boolean(), and place it in str.c with the other pr_str_*() functions. Add an accompanying unit test. 2008-06-14 castaglia <castaglia> * tests/str.c: Add unit test for the pr_str_get_word() function. 2008-06-14 castaglia <castaglia> * include/dirtree.h, include/str.h, src/dirtree.c, src/str.c: Refactor the pr_str_get_word() function from dirtree.c to str.c, along with the other pr_str_*() functions. 2008-06-14 castaglia <castaglia> * tests/modules.c, tests/tests.h: Fill in unit tests for the Module API functions. 2008-06-14 castaglia <castaglia> * src/modules.c: Clean up a few more style nits, and guard against bad arguments, in the Module API. 2008-06-13 castaglia <castaglia> * tests/modules.c: Add unit tests for the Stash API. 2008-06-13 castaglia <castaglia> * src/modules.c: Fix a few minor bugs and nits in the Stash API, discovered while writing unit tests for those functions. 2008-06-13 castaglia <castaglia> * tests/.cvsignore, tests/Makefile.in: Fix the dependency on the core proftpd object files in the Makefile. Change the name of the testsuite executable to 'tests', as it is more accurate. 2008-06-13 castaglia <castaglia> * tests/tests.c: Add support for running check in nonforking mode, using the PR_TEST_NOFORK environment variable. This makes tracking down of segfaults tickled by unit tests easier (I can use gdb now when they happen). 2008-06-13 castaglia <castaglia> * tests/Makefile.in, tests/modules.c, tests/stubs.c, tests/tests.c, tests/tests.h: Add stubs for units tests for the APIs (stash, module) in the modules.c source file. 2008-06-12 castaglia <castaglia> * contrib/mod_quotatab_ldap.c, contrib/mod_quotatab_radius.c, contrib/mod_quotatab_sql.c, contrib/mod_ratio.c, contrib/mod_wrap2_sql.c, include/compat.h, include/modules.h, modules/mod_core.c, modules/mod_site.c, src/auth.c, src/main.c, src/modules.c, src/parser.c: Since the call_module() function is used by contrib modules, it should be placed in the public API namespace. Thus call_module() is now pr_module_call(). A macro redefining old code to use the new function has been added to compat.h. 2008-06-12 castaglia <castaglia> * tests/scoreboard.c: Fill in the remaining unit tests for the Scoreboard API. 2008-06-12 castaglia <castaglia> * src/scoreboard.c: Prevent errors in the scoreboard by preventing multiple entries from being added via pr_scoreboard_entry_add(); only one entry at a time. At the same time, make sure that pr_scoreboard_entry_del() only removes the active entry (if present). 2008-06-12 castaglia <castaglia> * contrib/mod_load/.cvsignore, contrib/mod_load/mod_load.c.in: Fix function definition. Add more entries of autogenerated files, to be ignored by CVS. 2008-06-11 castaglia <castaglia> * tests/.cvsignore: More files to be ignored by CVS in the tests/ directory. 2008-06-11 castaglia <castaglia> * tests/scoreboard.c: Fill in more of the unit tests for the Scoreboard API. 2008-06-11 castaglia <castaglia> * src/scoreboard.c: Fix some minor bugs found in the Scoreboard API while working on unit tests. 2008-06-10 castaglia <castaglia> * NEWS, doc/howto/Classes.html: Update the Classes howto to mention that "Satisfy all" is needed for Class definitions with multiple "not" rules. Add Bug#3083 to NEWS. 2008-06-06 castaglia <castaglia> * src/scoreboard.c: Add better argument checking in pr_set_scoreboard(). 2008-06-06 castaglia <castaglia> * tests/Makefile.in, tests/scoreboard.c, tests/stubs.c, tests/tests.c, tests/tests.h: Start writing unit tests for the Scoreboard API. 2008-06-06 castaglia <castaglia> * tests/sets.c: Avoid a compiler warning about a shadowed variable in the testsuite. 2008-06-05 castaglia <castaglia> * include/expr.h, src/expr.c, tests/expr.c: Fill in the Expression API unit tests, and fix the minor bugs in the API that were uncovered during the writing of the tests. 2008-06-05 castaglia <castaglia> * tests/stubs.c: Forgot to include these variables for unit tests. 2008-06-05 castaglia <castaglia> * tests/str.c: Add unit tests for the newly added functions to the String API. 2008-06-05 castaglia <castaglia> * Make.rules.in, contrib/mod_ifsession.c, include/conf.h, include/dirtree.h, include/expr.h, include/str.h, include/support.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ident.c, modules/mod_xfer.c, src/auth.c, src/dirtree.c, src/expr.c, src/str.c, src/support.c: Refactoring work. First, move the pr_expr_* functions into their own expr.c file. Second, move some of the string-related functions from support.c into the str.c file. 2008-06-05 castaglia <castaglia> * src/throttle.c: Make sure to explicit require a TRUE return value from the pr_expr_* calls. 2008-06-05 castaglia <castaglia> * tests/Makefile.in, tests/expr.c, tests/regexp.c, tests/tests.c, tests/tests.h: Add unit tests for the Regexp API, and unit test stubs for the Expression API. 2008-06-05 castaglia <castaglia> * src/class.c, src/netacl.c: Bug#3083 - Multiple issues with handling of <Class> definitions. 2008-06-05 castaglia <castaglia> * tests/Makefile.in, tests/class.c, tests/netacl.c, tests/tests.c, tests/tests.h: Added unit tests for the NetACL and Class APIs. 2008-06-05 castaglia <castaglia> * doc/howto/Classes.html: Add more material to the Classes howto, covering the Satisfy directive and giving some examples. 2008-06-05 castaglia <castaglia> * tests/Makefile.in: Have different targets for creating the testsuite executable, versus running the testsuite executable. It was getting tedious, having the testsuite executable re-linked every time I wanted to run a particular suite of tests. 2008-06-05 castaglia <castaglia> * src/netacl.c: When destroying the temporary pool in pr_netacl_match(), make sure we do it only when we're about to return from the function (and not before then). 2008-06-04 castaglia <castaglia> * src/netacl.c: Correct several nits in the NetACL API: free up the temporary pool that's allocated in pr_netacl_match(), make sure that pr_netacl_get_str() returns the same string for ALL/NONE ACLs, regardess of the casing of the ALL/NONE strings, clean up some of the string representations, etc. 2008-06-02 castaglia <castaglia> * NEWS, doc/howto/Tracing.html, src/trace.c: Bug#3082 - Use "DEFAULT" keyword instead of "ALL" for Trace directive. 2008-05-20 castaglia <castaglia> * contrib/mod_tls.c: Update mod_tls to properly enable FIPS mode (see Bug #3050) for both inetd and standalone modes. The timing of when to call FIPS_mode_set() is a little tricky. 2008-05-17 castaglia <castaglia> * src/throttle.c: Make sure that the signal-handling functions (e.g. sigemptyset()) can be properly found on some platforms (e.g. Solaris). 2008-05-15 castaglia <castaglia> * modules/mod_core.c: Make sure that we honor the TimeoutIdle directive *before* authentication, as well as after. 2008-05-14 castaglia <castaglia> * include/auth.h, modules/mod_auth.c, src/auth.c: Move the functions which check /etc/ftpusers and /etc/shells out of the mod_auth module, and into the Auth API layer. This makes it possible for other modules to use these checks when deciding to let users in. 2008-05-13 castaglia <castaglia> * include/table.h, src/main.c, src/table.c: Fix bug where proftpd could enter a recursive loop and eventually run out of stack memory. Turns out that if errno is EINTR when pr_signals_handle() was called, then pr_signals_handle() would call pr_trace_msg(), which would lead to a call to pr_signals_handle(), which would call pr_trace_msg(), etc etc. To deal with this, the Table API now has an internal-use-only functionn, used by pr_signals_handle(), to indicate whether a signal is currently being handled or not. If a signal is being handled, then the Table API code will not call pr_signals_handle(). 2008-05-12 castaglia <castaglia> * modules/mod_dso.c: Work around compiler warnings about "nested extern declaration of lt_preloaded_symbols". This was caused by the use of the LTDL_SET_PRELOADED_SYBMOLS libtool macro. Instead, use the code to which the macro expands, and separate the code so that the declaration of the lt_preloaded_symbols is in the proper scope. 2008-05-12 castaglia <castaglia> * configure: Updated configure. 2008-05-12 castaglia <castaglia> * configure.in, modules/mod_dso.c: Make sure we use the libltdl shipped with proftpd, not the system libltdl. 2008-05-12 castaglia <castaglia> * modules/mod_xfer.c: Found more while loops without signal handling. Tsk tsk. 2008-05-11 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/main.c: Move the setting of the TimeoutIdle timer from src/main.c into mod_core. The issue was that any vhost-specific TimeoutIdle timer was not being honored properly. Another cause of this issue was that the handling of the PASS POST_CMD dispatch was faulty; the mod_auth and mod_xfer modules were both returning HANDLED for those POST_CMD handlers, which prevented other modules from receiving the dispatch. Oops. 2008-05-11 castaglia <castaglia> * src/main.c: Make a lowercased version of the protocol name, in set_protocol_name(), for use in the WtmpLog entry. 2008-05-08 castaglia <castaglia> * modules/mod_core.c: As it turns out, the <Limit> section can handles commands for more than just FTP. 2008-05-08 castaglia <castaglia> * contrib/mod_load/mod_load.c.in: Mark a string used by mod_load as localisable. 2008-05-08 castaglia <castaglia> * include/support.h, src/main.c: Make it possible to change the protocol name used in some logging messages via a set_protocol_name() function. 2008-05-08 castaglia <castaglia> * src/main.c: Stylistic nits, no functional change. 2008-05-08 castaglia <castaglia> * src/main.c: Always have signal handling in while loops. 2008-05-07 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec: Bug#3076 - RPM build failing on 64 bit OS due to incomplete .spec. 2008-05-06 castaglia <castaglia> * include/response.h, src/response.c: Add new pr_response_block() API, for blocking the normal response chains from being sent to the client. For use by modules which want to send their own data, as is, to clients. 2008-05-06 castaglia <castaglia> * doc/howto/Authentication.html: Typo. 2008-05-06 castaglia <castaglia> * configure: Updated configure. 2008-05-06 castaglia <castaglia> * config.h.in, configure.in, contrib/mod_site_misc.c, include/fsio.h, modules/mod_facts.c, src/fsio.c: Add two new FSIO API functions: pr_fsio_utimes() and pr_fsio_futimes(). These functions use the utimes(2) system call, which supercedes the old utime(2) system call. Plus, this allows FSIO modules to provide their own implementations of these calls. Update the mod_facts and mod_site_misc modules, which used utime(2) directly, to call these new FSIO APIs. 2008-05-06 castaglia <castaglia> * include/fsio.h, src/fsio.c: Add pr_fsio_fchmod() and pr_fsio_fchown() functions, for acting on already opened pr_fh_t objects rather than always requiring paths. 2008-05-06 castaglia <castaglia> * include/response.h, src/response.c: Add a new pr_response_clear() function, for clearing a response chain without having to flush that chain out to the client first. 2008-05-06 castaglia <castaglia> * src/main.c: If sending responses in pr_cmd_dispatch_phase(), be sure to flush the correct response chain. 2008-05-06 castaglia <castaglia> * Make.rules.in, include/conf.h, include/throttle.h, modules/mod_xfer.c, src/throttle.c: More refactoring. This time, move the TransferRate handling out of mod_xfer and into a Throttle API. Again, this is to expose this same functionality to other modules that may want throttling capabilities. 2008-05-06 castaglia <castaglia> * include/modules.h, src/main.c: Add a new function, pr_cmd_dispatch_phase(). This is very similar to pr_cmd_dispatch(), except that it allows callers to dispatch a cmd_rec to a specific phase of command handlers (e.g. LOG_CMD). It also supports a flag for indicating whether the caller wishes the response chains to be flushed to the client. This API allows modules to dispatch commands to specific handlers as needed. Wondering about the utility? Well, I have need for such a thing in my soon-to-be-released mod_sftp module for proftpd. 2008-05-06 castaglia <castaglia> * include/auth.h, modules/mod_auth.c, src/auth.c: Refactor the lockdown() function from mod_auth into the pr_auth_chroot() function, in the Auth API. This makes it possible to reuse the same code from other modules. 2008-04-28 castaglia <castaglia> * NEWS, modules/mod_auth.c, modules/mod_log.c, src/dirtree.c, src/support.c: Bug#3073 - Command arguments not decoded properly in some places. 2008-04-26 castaglia <castaglia> * src/data.c: Apply the fix for Bug#3001 to a similar area of the code, this time in a non-Linux code path. 2008-04-25 castaglia <castaglia> * NEWS, locale/Makefile.in, locale/zh_CN.po: Adding Chinese translation. 2008-04-18 castaglia <castaglia> * configure: Updated configure. 2008-04-18 castaglia <castaglia> * configure.in: If the PR_USE_OPENSSL macro is defined, then the proftpd build would fail when linking the `proftpd' executable, due to an unresolved 'OPENSSL_cleanse' symbol. There was a spot in the configure script which was not properly adding the OpenSSL libs to the library list. 2008-04-17 castaglia <castaglia> * NEWS: Had wrong bug number for IPv6-by-default change. 2008-04-17 castaglia <castaglia> * configure: Updating configure. 2008-04-17 castaglia <castaglia> * configure.in: Really fix Bug#2755 by making sure that IPv6 support is enabled by default. Previously, it was only enabled *if* the --disable-ipv6 configure option was used -- not so helpful as a default. 2008-04-16 castaglia <castaglia> * NEWS: Forgot to mention the release date for 1.3.2rc1 in the NEWS file. 2008-04-16 castaglia <castaglia> * include/version.h: Update version for CVS. 2008-04-16 castaglia <castaglia> * Makefile.in: Clean up the locale/Makefile when handling the 'distclean' target. 2008-04-16 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2008-04-16 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing to release 1.3.2rc1. 2008-04-16 castaglia <castaglia> * doc/howto/Tracing.html, src/main.c, src/trace.c: Remove the unused "l10n" trace channel, and add a "signal" trace channel. Update the Tracing howto with these channel changes. Use the "signal" channel, rather than debug logging, when logging about EINTR delaying. 2008-04-15 castaglia <castaglia> * contrib/ftpmail: Fix issue with handling of binary files as attachments. Such attachments need to be base64-encoded, to protect them from CRLF translation/handling by Mail::Sendmail. 2008-04-15 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2008-04-12 castaglia <castaglia> * modules/mod_lang.c: When scanning the LangPath for suitable languages, make sure that the languages are acceptable to setlocale(3), in addition to having a proftpd.mo file. 2008-04-10 castaglia <castaglia> * doc/howto/Limit.html: Mention that within <Limit> sections, limits are applied only based on names, not on IDs. 2008-04-09 castaglia <castaglia> * include/options.h: Make the default PR_TUNABLE_EINTR_RETRY_INTERVAL value be 0.2 secs, rather than 0, in order to prevent tightly-spinning EINTR retry loops. 2008-04-08 castaglia <castaglia> * locale/it_IT.po: Updated Italian translation. 2008-04-05 castaglia <castaglia> * locale/proftpd.pot: Fill in some descriptive details in the .pot file header. 2008-04-05 castaglia <castaglia> * configure: Updated configure. 2008-04-05 castaglia <castaglia> * configure.in: Yet another attempt to fix the writing of the PR_LOCALE_DIR string into config.h by the configure script (Bug #3066). 2008-04-05 castaglia <castaglia> * modules/mod_core.c: Don't set the UTF8 feature in mod_core; it's already handled by mod_lang. Addresses Bug#3070. 2008-04-05 castaglia <castaglia> * modules/mod_lang.c: Missed one spot where the language needed to specified as "en_US" (to satiate setlocale(3)) instead of just "en". While I was at it, I made the fallback "en_US" string be a macro. 2008-04-05 castaglia <castaglia> * locale/Makefile.in: Add a `make check' target for the locale/ directory, to run msgcmp on our .po files to see how out-of-date they might become. 2008-04-05 castaglia <castaglia> * locale/Makefile.in: Make sure that all .po files pass the msgfmt format check. 2008-04-05 castaglia <castaglia> * doc/modules/mod_lang.html, modules/mod_lang.c: Mention the requirement that the LangDefault language be listed in `locale -a' in the docs. Change the default language from "en" to "en_US", as per the `locale -a' requirement. 2008-04-05 castaglia <castaglia> * locale/Makefile.in, locale/en_US.po, locale/it_IT.po: Turns out that setlocale(3) prefers the language tag to include the country code as well, hence "en_US" instead of just "en", "it_IT" instead of just "it", etc. Picky, picky. 2008-04-05 castaglia <castaglia> * locale/proftpd.pot: Updated proftpd.pot to reflect changed line numbers. 2008-04-05 castaglia <castaglia> * modules/mod_lang.c: Add proper provisioning of the LANG FEAT, and handling of the LANG command. Also addresses Bug#3067 with some explicit calls to bind_textdomain_codeset(). 2008-04-04 castaglia <castaglia> * locale/proftpd.pot: Update proftpd.pot with the strings to be translated from mod_quotatab. 2008-04-04 castaglia <castaglia> * contrib/mod_quotatab.c: Tag a few more strings that need to be translated, when displaying quota limit/tallies to clients. 2008-04-04 castaglia <castaglia> * locale/Makefile.in: Add it.po (courtesy of Frankie) and en.po for default translations. 2008-04-04 castaglia <castaglia> * locale/Makefile.in, locale/files.txt, locale/proftpd.pot: Update the list of files to include contrib modules, and updated the .pot file accordingly. 2008-04-04 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_readme.c, contrib/mod_site_misc.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c: Add tags for the response strings which need to be localised/translated in the contrib modules. 2008-04-04 castaglia <castaglia> * contrib/mod_wrap2/.cvsignore: More files to be ignored by CVS. 2008-04-04 castaglia <castaglia> * modules/mod_lang.c: Delay the call to setlocale() until the postparse event, after we have called bindtextdomain(). 2008-04-04 castaglia <castaglia> * include/conf.h: Use dgettext() instead of gettext() when retrieving localised strings, so that we can explicitly specify the domain ("proftpd") to use. 2008-04-04 castaglia <castaglia> * locale/Makefile.in: When installing locale .mo files, actually do the installation into the proper directory structure. 2008-04-04 castaglia <castaglia> * modules/mod_lang.c: When requesting a locale change, it helps to actually use the locale provided by the caller. Sheesh. 2008-04-04 castaglia <castaglia> * modules/mod_lang.c: Hook up handling of LangPath and LangDefault, and start trying to actually use the configured locale message catalogs. 2008-04-03 castaglia <castaglia> * configure: Updated configure. 2008-04-03 castaglia <castaglia> * configure.in: Fix the handling of the PR_LOCALE_DIR macro, so that it properly substitutes the variables. 2008-04-03 castaglia <castaglia> * locale/Makefile.in, locale/proftpd.pot: Provide a .pot file as a starting point for translators. 2008-04-03 castaglia <castaglia> * locale/Makefile.in: Older msginit versions do not support the --sort-by-file option. Also, do not run msgfmt if msginit fails. 2008-04-03 castaglia <castaglia> * locale/.cvsignore: Ignore a few other generated files in the locale/ directory. 2008-04-03 castaglia <castaglia> * locale/files.txt: Update the list of files from which to extract strings via xgettext. 2008-04-03 castaglia <castaglia> * src/encode.c: Fix typo which breaks the solution for Bug#3064. 2008-04-03 castaglia <castaglia> * src/encode.c: Add a few more character sets to the list of those which override the value of the Telnet IAC value. 2008-04-03 castaglia <castaglia> * NEWS, include/encode.h, src/encode.c, src/netio.c: Bug#3064 - Better handling of 0xFF character for Cyrillic, non-UTF8 charsets. 2008-04-03 castaglia <castaglia> * modules/mod_lang.c: Bug#3063 - proftpd fails to start if LC_ALL environment variable is wrong. 2008-04-03 castaglia <castaglia> * NEWS: Bug#3056 - Support non-UTF8 encoding and character sets. 2008-04-03 castaglia <castaglia> * doc/howto/Tracing.html: The log channel name changed from "utf8" to "encode". 2008-04-03 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_lang.html: Mention the new UseEncoding directive in the release notes, and add docs for UseEncoding to the mod_lang docs. 2008-04-03 castaglia <castaglia> * Make.rules.in, include/conf.h, include/encode.h, include/fsio.h, modules/mod_core.c, modules/mod_lang.c, src/encode.c, src/fsio.c, src/main.c, src/trace.c: Bug#3056 - Support non-UTF8 encoding and character sets. 2008-04-01 castaglia <castaglia> * doc/contrib/mod_quotatab.html, doc/howto/Quotas.html: Add more description of how mod_quotatab determines which group quota to use, when there are multiple applicable group quota to choose from (see Bug #3053). 2008-03-27 castaglia <castaglia> * src/scoreboard.c: In addition to logging the PID of the blocking lock owner, log the type of blocking lock (read/write). 2008-03-27 castaglia <castaglia> * src/scoreboard.c: If we're unable to get a read or write lock on the ScoreboardFile because some other process (e.g. ftptop) has a lock on it, look up the PID of that blocking lock owner, and log it. 2008-03-27 castaglia <castaglia> * contrib/mod_wrap2_sql.c: Replace some "magic numbers" with macros, and increase legibility. 2008-03-27 castaglia <castaglia> * contrib/mod_wrap2_sql.c: Make sure to allocate enough room for the SQL query names in the tab_data; the fact that this was working was highly dependent on the architecture and just dumb luck. 2008-03-27 castaglia <castaglia> * contrib/mod_wrap2_sql.c: Clear up a temporary pool before exiting early. 2008-03-27 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Quell compiler warning about partially-declared callback function signature. 2008-03-27 castaglia <castaglia> * NEWS, contrib/mod_quotatab_sql.c: Bug#3061 - Segfault in mod_quotatab_sql if the SQL query returns NULL bytes/files values. 2008-03-27 castaglia <castaglia> * src/scoreboard.c: Further reduce possible race conditions when reading the scoreboard by NOT blocking signals while reading the scoreboard header. If signals are blocked while entering a potentially endless loop, it's a very bad thing. 2008-03-26 castaglia <castaglia> * src/scoreboard.c: Add trace logging of scoreboard locking. 2008-03-26 castaglia <castaglia> * src/scoreboard.c, utils/scoreboard.c: Bug#3057 - ftptop can lock scoreboard, blocking proftpd. Try not to lock as aggressively in ftptop. 2008-03-25 castaglia <castaglia> * NEWS, src/utf8.c: Bug#3059 - Wrong handling of UTF8 conversions. 2008-03-25 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#3058 - Handling of OPTS command results in badly set values in code. 2008-03-21 castaglia <castaglia> * tests/tests.c: Clarify that the tests.log file can be found in the tests/ directory. 2008-03-20 castaglia <castaglia> * src/netaddr.c: Unit tests caught regression where a NULL buffer was not being checked properly. Yay unit testing! 2008-03-20 castaglia <castaglia> * .cvsignore: Ignore the generated proftpd.pc file. 2008-03-19 castaglia <castaglia> * contrib/mod_sql.c: When there is an unrecoverable SQL backend error, make sure to log this in the regular proftpd debug logs, along with a note prompting the admin to look in the SQLLogFile as well, as a reminder. 2008-03-19 castaglia <castaglia> * configure: Updated configure. 2008-03-19 castaglia <castaglia> * config.h.in, configure.in, modules/mod_auth_unix.c: Add autoconf support for checking for login.h and usersec.h; these headers are required for the AIX loginrestrictions() support in the mod_auth_unix module. 2008-03-17 castaglia <castaglia> * contrib/mod_tls.c: Protect some OCSP-specific code with checks against the OpenSSL version. 2008-03-17 castaglia <castaglia> * contrib/mod_tls.c: Make checking of the verification mechanism names (CRL, OCSP) case-insensitive. 2008-03-17 castaglia <castaglia> * RELEASE_NOTES: Be sure to mention TLSVerifyOrder in the release notes. 2008-03-17 castaglia <castaglia> * doc/contrib/mod_tls.html: Add docs for the new TLSVerifyOrder directive. 2008-03-17 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2840 - Online Certificate Status Protocol (OCSP) support. 2008-03-17 castaglia <castaglia> * contrib/mod_sql_odbc.c: Use the TOP clause when the driver name is "FreeTDS", or when the driver name contains "SQL Server". 2008-03-15 castaglia <castaglia> * include/inet.h, modules/mod_core.c, src/main.c: Add an API that allows a module to take full control of the command handling, including IO. I'm working on a module which requires this ability. 2008-03-14 castaglia <castaglia> * contrib/mod_sql_odbc.c: Check for the FreeTDS driver; if so, use TOP instead of LIMIT. 2008-03-13 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Use pcalloc() rather than palloc() in the database backend modules. Fix some inconsistent style while there. 2008-03-13 castaglia <castaglia> * contrib/mod_sql_odbc.c: Improve the error logging in mod_sql_odbc by calling the SQLGetDiagRec() function repeatedly, retrieving (and logging) all of the errors in the diag stack, not just the first error. 2008-03-13 castaglia <castaglia> * doc/contrib/mod_sql_odbc.html: Update instructions for configuring proftpd for using ODBC libraries. 2008-03-13 castaglia <castaglia> * contrib/mod_sql_odbc.c: When allocating the conn_t struct in mod_sql_odbc, be sure to use pcalloc(), so that the allocated memory is zeroed. Also, add an sqlodbc_strerror() function, for displaying the string version of the SQLRETURN value returned by many of the ODBC functions. Makes for slightly more legible logging. 2008-03-11 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3051 - mod_quotatab incorrectly reduces file count on rename. 2008-03-11 castaglia <castaglia> * configure: Updated configure. 2008-03-11 castaglia <castaglia> * RELEASE_NOTES: Mention the pkgconfig file. 2008-03-11 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in, lib/Makefile.in: When installing proftpd, be sure to install the libsupp library as well. Also, supply a pkgconfig file (see http://pkgconfig.freedesktop.org/) for proftpd. The generated proftpd.pc file is created during the `make install' step, and is installed into lib/pkgconfig/proftpd.pc. These changes are for Bug #2991. 2008-03-08 castaglia <castaglia> * src/support.c: If we are linking with OpenSSL, and that OpenSSL is new enough, use its memory-cleansing function rather than our own. 2008-03-08 castaglia <castaglia> * contrib/mod_tls.c: If FIPS mode is requested, and the OpenSSL installation doesn't support FIPS, log a warning. 2008-03-08 castaglia <castaglia> * Makefile.in, NEWS, RELEASE_NOTES, contrib/mod_load/Makefile.in, contrib/mod_tls.c, contrib/mod_wrap2/Makefile.in, doc/howto/TLS.html, modules/Makefile.in, tests/Makefile.in: Bug#3050 - Support use of OpenSSL in FIPS mode. 2008-03-06 castaglia <castaglia> * NEWS, RELEASE_NOTES: Add mention of ftpmail in the NEWS and in the release notes. 2008-03-06 castaglia <castaglia> * contrib/ftpmail, doc/contrib/ftpmail.html: Added ftpmail, a Perl script which reads a TransferLog FIFO and sends automatic email notifications for uploads. 2008-03-04 castaglia <castaglia> * doc/contrib/mod_ban.html: Update docs for the BanOnEvent directive. 2008-03-04 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#3047 - BanOnEvent should support optional ban message. 2008-03-03 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3045 - "QuotaOptions ScanOnLogin" does not work for 'class' or 'all' limits. 2008-03-03 castaglia <castaglia> * NEWS, contrib/mod_wrap2_file.c: Bug#3048 - mod_wrap2_file should support comma-delimited lists of clients. 2008-03-03 castaglia <castaglia> * modules/mod_core.c: Make the message about an AuthOrder module with no auth handlers a little more explicit. 2008-02-25 castaglia <castaglia> * src/inet.c: Forgot to remove the old pr_inet_validate() function from inet.c. 2008-02-24 castaglia <castaglia> * tests/Makefile.in, tests/netaddr.c, tests/stubs.c, tests/tests.c, tests/tests.h: Adding unit tests for the Netaddr API. Note that some of the tests still need to be filled in. 2008-02-24 castaglia <castaglia> * src/netaddr.c: Fix minor bugs in the Netaddr API. 2008-02-24 castaglia <castaglia> * include/compat.h, include/inet.h, include/netaddr.h, src/ftpdctl.c, src/log.c, src/netaddr.c: Move the function for validating DNS strings from inet.c (pr_inet_validate) to netaddr.c (pr_netaddr_validate_dns_str). Also remove the never-defined pr_inet_fqdn() function while I'm at it. 2008-02-24 castaglia <castaglia> * src/log.c: Set errno when appropriate, and catch a corner case where the caller might provide a null format string. 2008-02-20 castaglia <castaglia> * src/log.c: Log if ftruncate(3) fails. 2008-02-20 castaglia <castaglia> * modules/mod_delay.c: Add logging of when write() fails for the DelayTable, even for a single byte. Also fix up some of the log messages where "warning" would be redundant (the message was already logged at the LOG_WARN level). 2008-02-20 castaglia <castaglia> * contrib/mod_ban.c: Make sure we provide a printf-like format string when necessary, rather than simply sending the intended string. In this case, there is no way for a user to inject their own data into the message, but it's better to be paranoid. 2008-02-20 castaglia <castaglia> * src/fsio.c: Rather than relying on simple path comparison in pr_fs_copy_file(), for detecting when the source and destination files are the same, check for same path, same device, same inode, same size, and same mtime. 2008-02-20 castaglia <castaglia> * src/fsio.c: Make sure the pr_fs_copy_file() function properly handles NULL arguments, and detects when the source and destination paths are the same. 2008-02-19 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#3044 - Segfault if mod_delay fails to load DelayTable. 2008-02-19 castaglia <castaglia> * tests/Makefile.in, tests/tests.c, tests/tests.h, tests/version.c: Add unit tests for the new Version API functions. 2008-02-19 castaglia <castaglia> * Make.rules.in, include/version.h, src/version.c: Make it possible to get versions (number, string) at runtime, for runtime comparisons (e.g. by shared modules at load time). These functions complement the existing buildtime version macros. 2008-02-18 castaglia <castaglia> * include/log.h: Use gcc's varargs checking for printf-like statements for the pr_log_auth() function. 2008-02-18 castaglia <castaglia> * tests/Makefile.in, tests/event.c, tests/tests.c, tests/tests.h: Added unit tests for the Event API. 2008-02-18 castaglia <castaglia> * src/event.c: Event API bugfixes: Check for duplicate event handlers in pr_event_register(). Return ENOENT if the requested event was never registered, in pr_event_unregister(). Make sure the caller provides a dump function in pr_event_dump(). 2008-02-18 castaglia <castaglia> * tests/Makefile.in, tests/feat.c, tests/tests.c, tests/tests.h: Add unit tests for the Feat API. 2008-02-18 castaglia <castaglia> * src/feat.c: Minor fixes, so that EPERM is returned (before EINVAL), if there are not features registered. Also fix a bug where pr_feat_remove() would return ENOENT, even when the feature being removed had been registered; it was actually removed, but pr_feat_remove() was not doing the right thing. 2008-02-18 castaglia <castaglia> * tests/Makefile.in, tests/tests.c, tests/tests.h, tests/var.c: Add unit tests for the Var API. 2008-02-18 castaglia <castaglia> * include/var.h, src/var.c: Removed the duplicate pr_var_remove() function (pr_var_delete() did the same thing). Fixed some cases where the functions would not behave properly if the Var API has not been initialized first, specifically pr_var_set(). Handle some bad arguments better. 2008-02-17 castaglia <castaglia> * tests/tests.c: Slightly more elegant way of iterating over all of the testsuites, without needing to use strcmp(). 2008-02-17 castaglia <castaglia> * tests/Makefile.in, tests/table.c, tests/tests.c, tests/tests.h: Add unit tests for the Table API. 2008-02-17 castaglia <castaglia> * src/table.c: Fix a few minor bugs related to checking for improper arguments. 2008-02-17 castaglia <castaglia> * doc/howto/Testing.html: Start of a doc that will describe ProFTPD's burgeoning testsuite, and how to use it. 2008-02-17 castaglia <castaglia> * tests/tests.c: Make it possible to specify the name of a single testsuite to run using the PR_TEST_SUITE environment variable. Makes it much easier when writing new testcases; now I don't have to run all previous testcases to get to the one I'm working on. 2008-02-17 castaglia <castaglia> * tests/tests.c: Emit a message to the user, asking them to send their tests.log and their configure info, whenever the testsuite fails for them. 2008-02-17 castaglia <castaglia> * tests/Makefile.in, tests/stubs.c, tests/tests.c, tests/tests.h, tests/timers.c: Adding unit tests for the Timers API. 2008-02-17 castaglia <castaglia> * src/timers.c: Fixing some issues found in the Timers API by unit testing. Handle some null arguments better, and handle the case where there may be no registered timers when pr_timer_reset() is called. Fixed up style in a few places. 2008-02-17 castaglia <castaglia> * tests/Makefile.in, tests/sets.c, tests/tests.c, tests/tests.h: Adding unit tests for the Sets API. 2008-02-17 castaglia <castaglia> * include/sets.h, src/sets.c: Cleanup of the Sets API. Removed the unused xaset_union() and xaset_subtract() functions. Clean up the style/formatting of the sets.c file. Make sure that the functions can properly handle NULL/bad arguments. Have them return -1 on error, not zero on error. 2008-02-16 castaglia <castaglia> * Makefile.in: If --enable-tests has not been used, the tests/Makefile will not have been created. Thus do not try to use this Makefile for the 'make clean' target unless --enable-tests has been used. 2008-02-16 castaglia <castaglia> * tests/str.c: Fill in the unit test for the sstrncpy() function. 2008-02-16 castaglia <castaglia> * tests/.cvsignore, tests/array.c, tests/env.c, tests/str.c, tests/tests.c: Capture testsuite output in `tests.log' file. Make sure this file is ignored by CVS. Use fixtures for the very common task of allocating and destroying the pool used by tests. 2008-02-16 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Properly close the line item. 2008-02-16 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Mention that mod_quotatab's ScanOnLogin behavior only kicks in if the quota limit for the user includes non-zero bytes-in or files-in. 2008-02-15 castaglia <castaglia> * doc/howto/CreateHome.html: Start a FAQ for CreateHome questions. 2008-02-14 castaglia <castaglia> * doc/howto/CreateHome.html: List the uid and gid parameters of CreateHome, and talk about them a little. 2008-02-14 castaglia <castaglia> * doc/howto/TLS.html: Add TLS FAQ on removing cert key passphrases. 2008-02-14 castaglia <castaglia> * contrib/mod_sql.c: Add logging of when mod_sql decides to use the SQLDefaultUID and/or SQLDefaultGID because the uid/gid falls below the SQLMinUserUID and/or SQLMinUserGID. 2008-02-13 castaglia <castaglia> * tests/.cvsignore: Ignore generated files. 2008-02-13 castaglia <castaglia> * configure: Updated configure. 2008-02-13 castaglia <castaglia> * config.h.in, configure.in: Update the autoconf support to define a PR_USE_TESTS macro, when testsuite support is enabled. Some of the proftpd macro definitions will change when PR_USE_TESTS is true, to better support unit testing. 2008-02-13 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_cap.c: Bug#2000 - mod_cap should not use bundled libcap. Updated autoconf to check for a system libcap, and to make proftpd NOT build and use the bundled libcap if a system libcap is present. 2008-02-13 castaglia <castaglia> * tests/str.c: Fill in the unit tests for more of the string manipulation functions. 2008-02-13 castaglia <castaglia> * src/str.c: Fix up the indentation/style in sreplace(). Guard against null/bad arguments. 2008-02-13 castaglia <castaglia> * tests/Makefile.in, tests/env.c, tests/tests.c, tests/tests.h: Add unit tests for the Env API. 2008-02-13 castaglia <castaglia> * include/pool.h, src/pool.c: Guard against bad/null inputs in the Array API, and change the signature to prevent negative counts and sizes (which would make no sense). 2008-02-13 castaglia <castaglia> * tests/Makefile.in, tests/array.c, tests/tests.c, tests/tests.h: Adding unit tests for the Array API. 2008-02-13 castaglia <castaglia> * src/str.c: Guard against NULL arguments in sreplace(). 2008-02-12 castaglia <castaglia> * configure: Updated configure. 2008-02-12 castaglia <castaglia> * configure.in: Try to describe the --enable-devel option such that packagers won't use it. 2008-02-11 castaglia <castaglia> * configure: Updated configure. 2008-02-11 castaglia <castaglia> * Make.rules.in, Makefile.in, config.h.in, configure.in: Added support for the --enable-tests configure option, autoconf checking for the `check' package, and support for a `make check' option. 2008-02-11 castaglia <castaglia> * tests/Makefile.in, tests/pool.c, tests/str.c, tests/stubs.c, tests/tests.c, tests/tests.h: Start of a testsuite for proftpd. Uses the 'check' package; see http://check.sourceforge.net/ To enable, compile proftpd using --enable-tests. Then run `make check' before installing. Expect to see a lot of activity here, as proftpd gets the testsuite its desperately needed for years. 2008-02-11 castaglia <castaglia> * Make.rules.in, include/conf.h, include/pool.h, include/str.h, include/support.h, src/ftpdctl.c, src/pool.c, src/str.c, src/support.c: Moving some functions out of pool.c and support.c into a new str.c object. This is some necessary refactoring. "Why is it necessary?" you ask. Good question. Because I'm about to add some testsuite support to proftpd, and writing those unit tests required some basic, long-overdue code refactoring. 2008-02-10 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_ctrls_admin.c: Updated mod_ban and mod_ctrls_admin to use the re-named scoreboard entry reading function. 2008-02-10 castaglia <castaglia> * include/compat.h, include/scoreboard.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/data.c, src/main.c, src/scoreboard.c, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c, utils/scoreboard.c, utils/utils.h: Added a new pr_scoreboard_entry_get() function, and renamed some of the other scoreboard entry functions to match the naming convention. This also meant adding some compatibility macros in compat.h for other modules, for now. Also updated ftpwho and ftptop to properly display uploading, downloading, and listing commands (including handling the MLST and MLSD commands properly). This work fell out of handling the case where dispatched commands on the control channel, while a data transfer is occurring, can change the scoreboard fields and thus cause erroneous/confusing output in ftpwho and ftptop. 2008-02-10 castaglia <castaglia> * include/proctitle.h, src/data.c, src/proctitle.c: Be sure to restore the previous process title after handling a command from the control channel whilst handling a data transfer. 2008-01-30 castaglia <castaglia> * include/response.h, src/data.c, src/main.c, src/response.c: Now that proftpd can handle commands on the control channel whilst doing a data transfer, it needs to be more careful of the memory pool used by the Response API. Specifically, we don't want to lose the memory pool from the data-transferring command while handling the command from the the control channel. Also, make sure that proftpd rejects any data transfer command from the control channel if we're already doing a data transfer. The amount of re-plumbing that would be needed to support kicking off multiple simultaneous data transfers is quite a lot; FTP clients already work around this by establishing multiple simultaneous separate sessions. 2008-01-28 castaglia <castaglia> * contrib/mod_ifsession.c: Use the session.pool, rather than main_server->pool, for merging in configurations in mod_ifsession. The session.pool is assigned as part of setting up a connection; the latter memory pool is not. 2008-01-25 castaglia <castaglia> * contrib/mod_wrap.c: Quell some compiler warnings in mod_wrap. 2008-01-25 castaglia <castaglia> * src/proctitle.c: Silence a compiler warning about unused variables when PR_DEVEL_STACK_TRACE is defined. 2008-01-24 castaglia <castaglia> * src/netacl.c: Fix issue when trying to stringify an IP mask ACL; pstrcat() was being called with a number, not a string, as an argument. 2008-01-23 castaglia <castaglia> * src/netio.c: Hmm. Maybe some of the lingering close changes I made yesterday weren't the best. So, for now, pare it back to logging about any read data received during a lingering close. 2008-01-23 castaglia <castaglia> * src/netio.c: When performing a lingering close, the select() call actually return because there was data to be read on the socket being closed. If that is the case, log the presence of that data using Tracing, and continue the lingering. (Otherwise, such data will cause a premature lingering, which is not really what we want either.) 2008-01-21 castaglia <castaglia> * src/main.c: Remove some tabs; no functional change. 2008-01-21 castaglia <castaglia> * RELEASE_NOTES: Mention the inclusion of IPv6 support in the default build. 2008-01-21 castaglia <castaglia> * README.IPv6: Updated the IPv6 README. 2008-01-21 castaglia <castaglia> * configure: Updated configure. 2008-01-21 castaglia <castaglia> * NEWS, configure.in, sample-configurations/basic.conf: Bug#2577 - IPv6 support should be enabled by default. 2008-01-18 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3034 - Rewritten command parameters need to be set in multiple places. 2008-01-18 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Silence compiler warning about unused variable. 2008-01-18 castaglia <castaglia> * NEWS, include/netacl.h, src/class.c, src/netacl.c: Bug#3033 - Class rules not honoring '!' negation character. 2008-01-18 castaglia <castaglia> * src/main.c: Make sure that the handling of any <Limit LOGIN> sections happens after the class of the session has been determined. Otherwise, any AllowClass/DenyClass directives within the <Limit> section will not be handled properly. 2008-01-17 castaglia <castaglia> * modules/mod_facts.c: Fix some issues with the formatting of entries for the MLST and MLSD responses. MLST entries require a leading space, as per RFC -- but MLSD entries do not. (Also add a missing newline character in the entries.) The data connection cleanup handler appeared not to be necessary; the MLSD command handler appears to be closing the connection itself, so no need for a cleanup POST_CMD/POST_CMD_ERR handler for that. 2008-01-17 castaglia <castaglia> * NEWS, src/netaddr.c: Bug#3031 - IPv4-mapped IPv6 connections not matched properly against IPv4 glob ACLs. 2008-01-16 castaglia <castaglia> * modules/mod_facts.c: The mod_facts module was not properly returning a type of "cdir" if the listed path was indeed the current directory. 2008-01-16 castaglia <castaglia> * src/main.c: Handle the case where the admin might define the tunable EINTR retry interval to be less than a second, e.g.: ./configure CFLAGS=-DPR_TUNABLE_EINTR_RETRY_INTERVAL=0.5 ... In the code which handles that value, break the defined value into usecs, and Do The Right Thing(tm). The previous code simply assumed that the defined value would be in seconds. The issue would only be noticed if compiler warnings were enabled and scanned; for example: main.c:1527: warning: unsigned int format, double arg (arg 3) 2008-01-15 castaglia <castaglia> * doc/howto/Logging.html: Add more substance to the note about not logging to world-writable directories (i.e. mention that proftpd will NOT do this). 2008-01-15 castaglia <castaglia> * NEWS, include/modules.h, include/netio.h, src/data.c, src/main.c, src/netio.c: Bug#2999 - Data transfer not aborted when control connection is closed. This patch adds polling of the control connection while transferring data on the data connection. Commands sent on the control connection will be dispatched (thus delaying the data transfer); this allows handling of commands like ABOR during data transfer. If the control connection closes during the data transfer, the data transfer is aborted. Hopefully this will address quite a few issues related to aborting data transfers. 2008-01-15 castaglia <castaglia> * contrib/mod_ratio.c: Silence some compiler warnings about uninitialized variables. 2008-01-15 castaglia <castaglia> * src/data.c: Found a few more places where text needs to be marked for localisation. 2008-01-14 castaglia <castaglia> * doc/contrib/mod_tls.html: Update TLSLog description to note requirement about parent directory permissions. 2008-01-14 castaglia <castaglia> * include/ftp.h, modules/mod_facts.c: Add definitions of the MLSD, MLST commands to ftp.h. 2008-01-12 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3027 - Unmatched backreferences are not handled properly in RewriteRules. 2008-01-12 castaglia <castaglia> * contrib/mod_rewrite.c: Additional changes needed for the full fix for Bug #3026. 2008-01-12 castaglia <castaglia> * configure: Updated configure. 2008-01-12 castaglia <castaglia> * configure.in: Copy-n-paste error in configure.in added erroneous line break. 2008-01-12 castaglia <castaglia> * modules/mod_xfer.c: The PRIO_MIN and PRIO_MAX macros may not be defined on some platforms (e.g. Solaris 9), so define suitable values in such cases. 2008-01-12 castaglia <castaglia> * configure: Updated configure. 2008-01-12 castaglia <castaglia> * configure.in: Avoid an autoconf warning when checking for <security/pam_modules.h> by including <security/pam_appl.h>, if detected. Without this, the configure script would throw an ugly warning (e.g. on Solaris 9) about not being able to compile <security/pam_modules.h>. 2008-01-11 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#3026 - RewriteCondition does not negate -d -f -s tests. 2008-01-11 castaglia <castaglia> * contrib/mod_sql.c: Fix off-by-one error in mod_sql, which only cropped up in the case where a) a custom SQLUserInfo query was used, and b) that query neglected to provide a shell value. This would lead to a segfault. 2008-01-10 castaglia <castaglia> * contrib/mod_ifsession.c: Add signal handling to mod_ifsession's while loops, as proper. Some style cleanup. Bump the mod_ifsession version number to 1.0; there have been few bugs reported with this module, showing that it's stable. 2008-01-10 castaglia <castaglia> * contrib/mod_sql.c: Remove the mod_sql code which used to support the (deprecated and removed) SQLHomedirOnDemand feature. 2008-01-10 castaglia <castaglia> * configure: Updated configure. 2008-01-10 castaglia <castaglia> * configure.in: Remove $0 from the PR_BUILD_OPTS; the $ac_configure_args variable already contains the string "configure", thus using $0 is redundant. 2008-01-09 castaglia <castaglia> * modules/mod_log.c: Copy the improvements in mod_sql for handling of certain SQLNamedQuery variables (Bug#2889, Bug#3025) into mod_log, so that ExtendedLogs benefit from the improvements as well. 2008-01-09 castaglia <castaglia> * contrib/mod_sql.c: Expand %F in SQLNamedQuery, for DELE, using dir_best_path(), rather than simply logging the name of the file as sent by the client. (Do the same for %F and RNTO as well.) 2008-01-09 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#3025 - Using %b in a SQLNamedQuery does not properly log the file size for DELE. 2008-01-09 castaglia <castaglia> * contrib/mod_sql_odbc.c: Removed "IMHO" from comment describing Oracle library bug; it's been confirmed by Oracle. 2008-01-09 castaglia <castaglia> * contrib/mod_quotatab.c: If the DELE command fails, make sure to still clear the cached file size by registerting a POST_CMD_ERR handler. And in the PRE_CMD handler for DELE, be sure to a) UTF8 decode any path the client might be sending, and b) be sure to cache the size of the symlink file, not the pointed-to file, if the file being deleted is indeed a symlink. 2008-01-09 castaglia <castaglia> * modules/mod_core.c: Explicit cast to avoid compiler warning. 2008-01-08 castaglia <castaglia> * modules/mod_core.c: If multiple addresses are given using the DefaultAddress directive, make sure the log message emitted reflects this, otherwise it can be confusing (see Bug#3024). 2008-01-08 castaglia <castaglia> * contrib/mod_sql_odbc.c: Work around an Oracle library bug in mod_sql_odbc, rather than in the core proftpd code, by using square brackets instead of parentheses in the process title. More details on the issue can be found as comments in the mod_sql_odbc code. 2008-01-08 castaglia <castaglia> * src/main.c: Revert back to using parentheses in the process title; the Oracle bug workaround can be done, I think, from mod_sql_odbc rather than from the core code. 2008-01-08 castaglia <castaglia> * src/main.c: Change the name to which the process title is set when the daemon process is waiting to accept connections. It's a hack, a workaround of an Oracle library bug. Yuck. 2008-01-08 castaglia <castaglia> * README.modules, RELEASE_NOTES: Mention the new database backend modules: mod_sql_odbc and mod_sql_sqlite. 2008-01-08 castaglia <castaglia> * doc/contrib/mod_sql_odbc.html: Update the installation instructions for mod_sql_odbc; they are slightly different, and no longer require the use of an extra configure script. 2008-01-08 castaglia <castaglia> * contrib/mod_sql_sqlite.c: Turns out there's no need to guard the definition and registration of an event handler for the 'core.module-unload' event; none of the other mod_sql backend modules have guards for their module-unload event handlers. 2008-01-08 castaglia <castaglia> * NEWS, contrib/mod_sql_odbc.c, doc/contrib/mod_sql_odbc.html: Add the mod_sql_odbc module to the contrib area. 2008-01-08 castaglia <castaglia> * configure: Updated configure. 2008-01-08 castaglia <castaglia> * configure.in: When checking for module-specific header files (and then creating symlinks to those header files into the include/ area), test for existence of a file, rather than requiring both that the path exist AND be a regular file. The difference is that a simple existence check allows for the header files to themselves be symlinks (for whatever reason). 2008-01-08 castaglia <castaglia> * contrib/mod_sql_sqlite.c, doc/contrib/mod_sql_sqlite.html: Make sure that mod_sql_sqlite acts properly when built as a shared module. Update docs to mention the SQLBackend name provided by mod_sql_sqlite. 2008-01-08 castaglia <castaglia> * NEWS, contrib/mod_sql_sqlite.c, doc/contrib/mod_sql_sqlite.html: Add the mod_sql_sqlite module to the contrib area. 2008-01-08 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Typo. 2008-01-08 castaglia <castaglia> * configure: Updated configure. 2008-01-08 castaglia <castaglia> * configure.in: Decided I do not need the leading '$' character in the configure invocation string, for I am capricious that way. 2008-01-08 castaglia <castaglia> * configure.in: I don't know why, but on this Ubuntu box, the configure arguments were not being properly written out to the generated config.h file. I had to poke around a bit with the autoconf variables, but finally found a magic incantation to make it work. Of course, this means it will probably stop working on some other platform; will check once this change propagates to the anon CVS server. 2008-01-07 castaglia <castaglia> * configure: Update configure. 2008-01-07 castaglia <castaglia> * doc/contrib/mod_sql.html: Make clearer the distinction between Unix domain sockets and TCP sockets when discussing chroot() and its effects on database connection re-opening. Remove any mention of long-deprecated directives; they will only serve to confuse people at this point in time. 2008-01-07 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#3022 - Timed SQL connections don't reconnect to database. 2008-01-05 castaglia <castaglia> * README.modules: Update README.modules to mention the new modules. 2008-01-05 castaglia <castaglia> * configure.in: Fix issue with configure script where the command-line options were not being properly captured (before being processed to find the system name), and thus not being preserved for -V output. Also remove any occurrence of "your" in the configure output. 2008-01-05 castaglia <castaglia> * modules/mod_auth.c: There is no longer a need to stash the current class name in the config tree using the "CURRENT-CLASS" key; the current class information is available via the session.class pointer. 2008-01-05 castaglia <castaglia> * contrib/mod_sql.c: Remove the unused add_virtualbool() function. 2008-01-05 castaglia <castaglia> * Make.rules.in: Yet another place where we need to teach proftpd not to build the ident code as part of the core engine anymore. 2008-01-05 castaglia <castaglia> * include/conf.h: Delete the now unused core ident lookup code; this functionality has been moved to the mod_ident module, as per Bug#2453. 2008-01-05 castaglia <castaglia> * src/xferlog.c: Forgot to check in the changes for this file, relating to Bug#2453. Without these, the build fails. 2008-01-05 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_wrap.c, modules/mod_auth.c: Fix a few more places where text needs to be localised. 2008-01-05 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3023 - Allow uploading to /dev/null. 2008-01-05 castaglia <castaglia> * configure: Updated configure. 2008-01-05 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_ident.html: Update documentation for the new mod_ident module. 2008-01-05 castaglia <castaglia> * NEWS, configure.in, contrib/mod_sql.c, contrib/mod_wrap2/mod_wrap2.c, include/proftpd.h, modules/mod_ident.c, modules/mod_log.c, src/display.c, src/main.c: Bug#2453 - Separate RFC1413 code into mod_ident module. 2008-01-05 castaglia <castaglia> * src/table.c: Calling pr_table_add_dup() and supplying a zero-length value data size should Do The Right Thing(tm) by treating the value as a string, and automatically calculating the string length, just as pr_table_add() does. 2008-01-04 castaglia <castaglia> * configure: Updated configure. (Upgraded to autoconf-2.61 as well.) 2008-01-04 castaglia <castaglia> * Make.rules.in, config.h.in, configure.in, contrib/mod_tls.c, include/conf.h, modules/mod_core.c, src/main.c: Add an autoconf check for the sys/resource.h header file; this is the file which, on BSD, defines the getpriority(2) and setpriority(2) functions. This should help the current proftpd sources in CVS to compile properly on FreeBSD. 2008-01-04 castaglia <castaglia> * modules/mod_auth_unix.c: Fix compiler warning about using the wrong datatype when calling getgrouplist(2). 2008-01-04 castaglia <castaglia> * src/dirtree.c: Use socklen_t, not int, for getsockopt(2) calls. 2008-01-03 castaglia <castaglia> * configure: Updated configure. 2008-01-03 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#1896 - Check AIX account status. 2008-01-03 castaglia <castaglia> * NEWS, contrib/mod_ratio.c: Bug#1973 - mod_ratio uses the too-small int datatype for tracking bytes. 2008-01-03 castaglia <castaglia> * NEWS, contrib/mod_ratio.c: Bug#1771 - mod_ratio compile warnings. Add better formatting, error checking, function definition, etc. 2008-01-03 castaglia <castaglia> * utils/ftpcount.c, utils/ftpwho.c, utils/misc.c, utils/scoreboard.c, utils/utils.h: Clean up some unused function prototypes in the utils code, and consolidate all of the utils to use the same sstrncpy() implementation. 2008-01-03 castaglia <castaglia> * modules/mod_facts.c: Fix printf(3) format warning in mod_facts. 2008-01-03 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#3020 - Server replies to NLST with 450 at the wrong time. Only open a data connection, when handling NLST, when we know that we will most likely be sending some data. 2008-01-02 castaglia <castaglia> * RELEASE_NOTES: Mention the new TransferPriority directive. 2008-01-02 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2731 - Add ability to set process priority for file transfers. 2008-01-02 castaglia <castaglia> * modules/mod_xfer.c: Need to add the name of the timer added, as per the changed Timer API. 2008-01-02 castaglia <castaglia> * configure: Updated configure. 2008-01-02 castaglia <castaglia> * configure.in: Missing quotation mark broke the configure script. 2008-01-02 castaglia <castaglia> * contrib/mod_tls.c: Pay attention to the TLSRandomSeed file, if configured, and log whenever mod_tls does not have sufficient PRNG seed data (as per the RAND_status() OpenSSL API). 2008-01-02 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2889 - Update SQLLog so that RNTO stores the path when using the %F variable. 2008-01-02 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/auth.c: Bug#2997 - Uploading files with "~" causes harmless but annoying log message. 2008-01-01 jwm <jwm> * contrib/mod_ldap.c: happy new year 2008-01-01 jwm <jwm> * contrib/mod_ldap.c: release v2.8.18: * Remove all local caching code in favor of the recently added caching in the ProFTPD Auth layer. * Silence some compiler warnings. 2007-12-31 castaglia <castaglia> * include/proftpd.h, modules/mod_auth.c, modules/mod_xfer.c, src/data.c, src/main.c: Move the TIMER_ macros into the PR_ namespace, for cleanliness. 2007-12-31 castaglia <castaglia> * NEWS, include/data.h, include/dirtree.h, modules/mod_core.c, modules/mod_xfer.c, src/data.c, src/dirtree.c, src/main.c: Bug#2741 - Apply TimeoutNoTransfer, TimeoutStalled, TimeoutIdle to <Anonymous> section. 2007-12-31 castaglia <castaglia> * RELEASE_NOTES, doc/modules/mod_auth_pam.html: Updated documentation. 2007-12-31 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#3014 - Optionally set PAM_TTY item when using PAM. 2007-12-31 castaglia <castaglia> * doc/rfc/rfc2640.txt: Add RFC2640 to the docs collection. 2007-12-31 castaglia <castaglia> * configure: Updated configure. 2007-12-31 castaglia <castaglia> * modules/mod_facts.c: No need to include the URLs to the RFC and Draft implemented by this module; they are in the mod_facts module documentation now. 2007-12-31 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/dirtree.h, include/options.h, modules/mod_xfer.c, src/data.c, src/dirtree.c, src/main.c: Bug#2874 - Data transfer buffers should be allocated at startup, not at compile time. 2007-12-31 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#3003 - Fallback to normal transmission in case of sendfile EOVERFLOW error missing. 2007-12-31 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes. 2007-12-31 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2894 - Mark the AnonymousGroup directive as deprecated, to be removed in a future release. 2007-12-31 castaglia <castaglia> * doc/modules/mod_facts.html: Adding documentation (though brief) for the new mod_facts module. 2007-12-31 castaglia <castaglia> * doc/rfc/draft-somers-ftp-mfxx-03.txt, doc/rfc/rfc3659.txt: Adding RFC3659 (which supercedes an Internet Draft on MLST), and adding an Internet Draft defining the MFF and MFMT commands. 2007-12-31 castaglia <castaglia> * configure: Updated configure. 2007-12-31 castaglia <castaglia> * NEWS, configure.in, modules/mod_facts.c: Bug#3015 - Support for RFC3659. The mod_facts module is now part of the default proftpd build, providing the MLSD, MLST commands from RFC3659 as well as the MFF and MFMT commands from an Internet Draft. 2007-12-31 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#3019 - DisplayLogin in <Anonymous> section not displayed properly. 2007-12-22 castaglia <castaglia> * modules/mod_lang.c: Pedantic correction of indentation, so that it is consistent with the style of the rest of the file. 2007-12-22 castaglia <castaglia> * src/inet.c: Enable the SO_KEEPALIVE option on sockets used by proftpd. This will enable the TCP keepalive messages which help to determine if the peer host (as opposed to the peer program) have crashed. 2007-12-18 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#3013 - "TLSOptions AllowPerUser" not working as expected. 2007-12-18 castaglia <castaglia> * modules/mod_site.c: Typo. 2007-12-18 castaglia <castaglia> * modules/mod_auth.c: Make sure to localise strings sent via pr_response_send(). 2007-12-15 castaglia <castaglia> * modules/mod_core.c: Update the comments for the MDTM handler, noting that it is an official command as per RFC3659. Also make sure to initialize the entire buffer used to construct the response timestamp. 2007-12-12 castaglia <castaglia> * NEWS, contrib/mod_site_misc.c, doc/contrib/mod_site_misc.html: Bug#3012 - SITE UTIME should support YYYYMMDDhhmmss format. 2007-12-10 castaglia <castaglia> * contrib/mod_tls.c: Bug#3011: "TLSRequired !data" configuration does not allow PROT C. If the TLSRequired directive policy does not explicitly require SSL/TLS protection on the data channel, then allow any PROT C requests from clients. 2007-11-16 castaglia <castaglia> * NEWS, src/data.c: Bug#3001 - Incomplete downloads not logged properly in TransferLog if sendfile is used. 2007-11-16 castaglia <castaglia> * contrib/mod_site_misc.c: Thomas L. Shinnick rightly pointed out the bugs involved here, when using <Limit> configurations for the SITE commands provided by the mod_site_misc module. 2007-11-15 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3006 - 'ScanOnLogin' QuotaOption may try to update a nonexistent tally record. 2007-11-15 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#3004 - 'ScanOnLogin' QuotaOption does not honor QuotaDirectoryTally directive. 2007-11-15 castaglia <castaglia> * src/main.c: Use REG_RIP for 64-bit machines, rather than REG_EIP, if the 'stacktrace' --enable-devel configure option is used. 2007-11-15 castaglia <castaglia> * NEWS, src/data.c, src/netio.c: Bug#3005 - OOB abort closes the control connection. 2007-10-26 castaglia <castaglia> * doc/modules/mod_lang.html: Update the LangEngine docs to mention that that is the directive which governs the appearance of "UTF8" in response to a FEAT command -- not the UseUTF8 directive. 2007-10-25 castaglia <castaglia> * modules/Makefile.in: Be sure to clean up any .a archive files around as well. 2007-10-22 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_dynmasq.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, contrib/mod_tls.c, include/timers.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_xfer.c, src/data.c, src/ident.c, src/main.c, src/timers.c: Changed the pr_timer_add() function to take a 'desc' string, for describing the timer being added. This description is logged in the trace logging of timers. 2007-10-18 castaglia <castaglia> * NEWS: Typo. 2007-10-17 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2996 - Requirement for same OpenSSL header, library version in mod_tls too restrictive. 2007-10-16 castaglia <castaglia> * RELEASE_NOTES: Add more release notes fragments, to be filled in more detail later. 2007-10-16 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2995 - The %f LogFormat variable expanded to same file for RNFR and RNTO. 2007-10-16 castaglia <castaglia> * src/main.c: Add some missing (albeit sometimes unnecessary) 'break' statements. 2007-10-16 castaglia <castaglia> * src/main.c: Remove crufty unused ElectricFence code. 2007-10-15 castaglia <castaglia> * configure: Updated configure. 2007-10-15 castaglia <castaglia> * config.h.in, configure.in, src/main.c: Enhance the proftpd -V output to include the directory where the proftpd header files are installed, for DSO-enabled proftpds. This will be used by the prxs tool (see Bug#2991). 2007-10-15 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#2992 - The %f LogFormat variable expanded improperly to "-" for SITE CHMOD. 2007-10-15 castaglia <castaglia> * configure: Updated configure. 2007-10-15 castaglia <castaglia> * NEWS, acconfig.h, config.h.in, configure.in: Bug#2993 - Unable to compile 1.3.1 on Debian unstable/amd64. 2007-10-15 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/modules.h, src/main.c, src/modules.c: Bug#2937 - Should list modules (with versions) for modules loaded as DSOs. 2007-10-15 castaglia <castaglia> * doc/howto/DSO.html: Update the DSO doc with better instructions, after having run through them myself. 2007-10-14 castaglia <castaglia> * Make.rules.in, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c, utils/misc.c, utils/utils.h: Factor out the function used to scan the config file for the ScoreboardFile directive from three of the utilities into a single common location. This is groundwork for making it possible to scan the config file for other directives as well. 2007-10-14 castaglia <castaglia> * contrib/mod_tls.c: Explicitly cast one of the tls_log() arguments to an unsigned int, to silence compilers warning of mismatched printf arguments. 2007-10-14 castaglia <castaglia> * src/auth.c: Refactor the code for creating and adding to the idcache tables into separate functions. This makes it easier to add to those caches in the auth_getpwnam() and auth_getgrnam() functions. 2007-10-13 castaglia <castaglia> * contrib/mod_tls.c: If the TLSCryptoDevice handling code is in the session initialization code path, then the directive can once again be vhost-specific. 2007-10-13 castaglia <castaglia> * configure: Update configure. 2007-10-13 castaglia <castaglia> * config.h.in, configure.in, modules/mod_ctrls.c, src/ctrls.c: More work towards Bug #2386. In this, I found that Solaris 10 has a getpeerucred(3) function, which can be used for obtaining kernel-enforced credentials for the peer on the other end of a Unix domain socket. 2007-10-13 castaglia <castaglia> * contrib/mod_radius.c, include/auth.h, modules/mod_auth_pam.c, src/auth.c: More work towards Bug #2989. Adds a new pr_auth_add_auth_only_module() function, to be used by modules that are auth-only "yes/no" style of modules (e.g. mod_auth_pam). This presents a better solution for the issue. 2007-10-12 castaglia <castaglia> * NEWS, contrib/mod_radius.c, include/auth.h, src/auth.c: Bug#2989 - Unable to authenticate users if RadiusUserInfo is not configured. 2007-10-12 castaglia <castaglia> * contrib/mod_tls.c: Style cleanup; no functional changes. 2007-10-12 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2990 - TLSCryptoDevice does not work. 2007-10-11 castaglia <castaglia> * doc/howto/ConfigurationTricks.html: Add note about how different PassivePorts are not needed for different proftpd instances. 2007-10-11 castaglia <castaglia> * RELEASE_NOTES: Mention mod_unique_id in the release notes. 2007-10-11 castaglia <castaglia> * doc/contrib/mod_unique_id.html: Update the mod_unique_id for its new home, and add an example of using the UNIQUE_ID environment variable in a SQL table. 2007-10-11 castaglia <castaglia> * NEWS, contrib/mod_unique_id.c, doc/contrib/index.html, doc/contrib/mod_unique_id.html: Added the mod_unique_id contrib module. 2007-10-11 castaglia <castaglia> * contrib/mod_dynmasq.c: Use the PR_ macro namespace. 2007-10-11 castaglia <castaglia> * contrib/mod_tls.c: Had checking for <Limit> on PROT command in the wrong place. Oops. 2007-10-11 castaglia <castaglia> * RELEASE_NOTES, doc/contrib/mod_tls.html: Document the new TLSRequired policy configurations. 2007-10-11 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2968 - Ability to allow protection on control channel, but reject protection on data channel. 2007-10-11 castaglia <castaglia> * RELEASE_NOTES: Start of a new release notes doc for the 1.3.2 series. 2007-10-11 castaglia <castaglia> * doc/contrib/index.html: The mod_ban module was not in the contrib index list. Oops. 2007-10-11 castaglia <castaglia> * doc/contrib/mod_dynmasq.html: Updating the mod_dynmasq docs for their new home. 2007-10-11 castaglia <castaglia> * NEWS, contrib/mod_dynmasq.c, doc/contrib/index.html, doc/contrib/mod_dynmasq.html: Adding the mod_dynmasq module to the source distribution. 2007-10-11 castaglia <castaglia> * doc/howto/ConfigurationTricks.html, doc/howto/index.html: Adding ConfigurationTricks doc to source distribution. 2007-10-11 castaglia <castaglia> * src/ctrls.c: Use "credentials" consistently, not the lazy "creds", in log messages. 2007-10-11 castaglia <castaglia> * configure: Updating configure. 2007-10-11 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/ctrls.h, modules/mod_ctrls.c, src/ctrls.c: Bug#2386 - Controls should use kernel-enforced credentials where possible. 2007-10-10 castaglia <castaglia> * src/ctrls.c: Revert back to using debug logging, rather than trace logging, for the Unix socket detection tests. Trace logging will not have been initialized when Controls are initialized, so any trace logging done in init_ctrls() was being ignored/lost. 2007-10-10 castaglia <castaglia> * contrib/mod_ban.c: Turns out that testing for the _POSIX_SOURCE macro is a better way of knowing which typecast to use for shmdt(2). 2007-10-10 castaglia <castaglia> * contrib/mod_ban.c: Solaris' shmdt(2) wants a char *, not a const void * -- and the compiler complains every time mod_ban is compiled. Easy enough to fix that with a proper cast, but just for Solaris. 2007-10-10 castaglia <castaglia> * contrib/mod_ban.c: Seems that Solaris' getopt implementation prefers resetting the optind variable to 1, rather than zero, in order to reset the getopt(3) function. 2007-10-10 castaglia <castaglia> * modules/mod_auth_unix.c: Remove the caching that mod_auth_unix did, for the ID-to-name lookups. This caching is now being handled at a higher layer, in the Auth API. 2007-10-09 castaglia <castaglia> * src/netaddr.c: Make sure that trace logging is done *before* the temporary pool (from which one of the netaddr objects may have been allocated) is freed. Otherwise we might log garbage day, or trigger a segfault. 2007-10-09 castaglia <castaglia> * src/netaddr.c: Add trace logging for when comparing netaddrs yields no match, for completeness. 2007-10-09 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2982 - Support limit on number of simultaneous file transfers from one client. 2007-10-09 castaglia <castaglia> * NEWS, contrib/mod_wrap2_file.c: Bug#2988 - mod_wrap2_file ignores "ALL" keyword. 2007-10-08 castaglia <castaglia> * NEWS, src/auth.c: Bug#2986 - Authoritative PAM is not honored. 2007-10-08 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#2987 - Verbose ban information (i.e. 'ftpdctl ban info -v') not working on FreeBSD. 2007-10-05 castaglia <castaglia> * doc/contrib/mod_ban.html: Document the new ClientConnectRate BanOnEvent rule. 2007-10-05 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#2979 - Ability to ban clients which connect too often. 2007-10-05 castaglia <castaglia> * modules/mod_core.c: Removing support for the deprecated DisplayFirstChdir directive; it has been replaced with the DisplayChdir directive. 2007-10-05 castaglia <castaglia> * contrib/mod_sql.c: Removing deprecated SQLHomedirOnDemand directive; it has been superceded by the CreateHome directive. 2007-10-05 castaglia <castaglia> * modules/mod_xfer.c: Removing support for the deprecated HiddenStor directive; it has been superceded by the HiddenStores directive. 2007-10-05 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Document the new 'dns clear cache' ftpdctl command. 2007-10-05 castaglia <castaglia> * NEWS, contrib/mod_ctrls_admin.c, include/netaddr.h, src/ftpdctl.c, src/main.c, src/netaddr.c: Bug#2925 - Add caching of IP address and DNS name lookups. 2007-10-05 castaglia <castaglia> * src/auth.c: Forgot semicolon. 2007-10-05 castaglia <castaglia> * NEWS, include/auth.h, src/auth.c, src/table.c: Bug#2984 - mod_auth_file uid2name() does not cache results causing slow LIST response. 2007-10-05 castaglia <castaglia> * configure: Updating configure. 2007-10-05 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#2983 - Use getgrouplist(3) for group lookup, if available. 2007-10-05 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2969 - Allow APPE after REST. 2007-10-05 castaglia <castaglia> * doc/contrib/mod_tls.html: Document the new EnableDiags TLSOption. 2007-10-05 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2978 - Support more verbose OpenSSL diagnostic logging. 2007-10-05 castaglia <castaglia> * include/version.h: Start of a new release cycle (1.3.2). 2007-10-05 castaglia <castaglia> * NEWS: Forgot to update NEWS with the release time. 2007-10-05 castaglia <castaglia> * ChangeLog: Updating the ChangeLog. 2007-10-05 castaglia <castaglia> * doc/Configuration.html: Updating the HTML page with the configuration directives. Also added a PDF copy of the same information (thanks Sven!). 2007-10-05 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Updating version for 1.3.1-stable. 2007-10-04 castaglia <castaglia> * contrib/mod_tls.c: Log a PID as an explicit unsigned int, not an implicit int. Quells a compiler warning about mismatched printf arguments. 2007-10-04 castaglia <castaglia> * src/env.c: Quell a compiler warning about casting away the const qualifier, on systems which support the putenv(3) function. 2007-10-04 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes, preparing for a release. 2007-10-04 castaglia <castaglia> * NEWS, contrib/dist/rpm/ftp.pamd, contrib/dist/rpm/proftpd.spec: Bug#2795 - Improvements to RPM .spec file to build more of the modules, plus better optional packaging organization. 2007-10-04 castaglia <castaglia> * include/table.h: Correct comment in table.h. 2007-10-02 castaglia <castaglia> * doc/howto/TLS.html: Add mention of RFC 2228, and URL, to TLS doc. 2007-10-01 castaglia <castaglia> * modules/mod_delay.c: Update the trace message for the other location in mod_delay where the DelayTable is mapped into memory. 2007-10-01 castaglia <castaglia> * modules/mod_delay.c: Log the table size, and the table fd, when attempting to map a DelayTable into memory. 2007-10-01 castaglia <castaglia> * doc/modules/mod_delay.html: Change to using relative URLs, so that the documentation can be used outside of a network connection. 2007-10-01 castaglia <castaglia> * doc/modules/mod_delay.html: Add notes about mod_delay usage to the mod_delay documentation. 2007-09-30 castaglia <castaglia> * src/timers.c: Catch edge case where the timers list may be empty/null. 2007-09-30 castaglia <castaglia> * NEWS, src/main.c: Bug#2981 - Command-line long options --ipv4 and --ipv6 do not work. 2007-09-28 castaglia <castaglia> * modules/mod_ls.c: If an FTP client aborted the data transfer during a directory listing, then a 226 response would be sent *twice*, e.g.: 226 Transfer complete 226 Abort successful would be seen, using the ftp(1) client. The problem was that mod_ls, when closing its data connection, did not check to see if the transfer had been aborted. Aborted transfers should cause the data connection to be closed "quietly", i.e. no sending of the "Transfer complete" message. With this change, mod_ls now checks for an aborted transfer, and will close the data connection "quietly" when appropriate, thus eliminating the duplicate 226 responses. 2007-09-28 castaglia <castaglia> * modules/mod_ls.c: Cut down on logging an error if errno indicates "success"; usually this happens when the client aborted the directory listing. 2007-09-27 castaglia <castaglia> * modules/mod_xfer.c: Add some tracing to aborted transfers. 2007-09-27 castaglia <castaglia> * src/trace.c: Add the 'xfer' channel to the list of default trace channels. 2007-09-25 castaglia <castaglia> * contrib/mod_tls.c: No need to report on system call errors of "Success". 2007-09-25 castaglia <castaglia> * contrib/mod_tls.c: Allow handling of the PROT command after the CCC command has been used. One particular FTPS client (lftp) is known to send PROT (again) after CCC. 2007-09-19 castaglia <castaglia> * doc/howto/TLS.html: Minor formatting tweak. 2007-09-19 castaglia <castaglia> * doc/howto/TLS.html: Add FAQ about a commonly-seen error in the TLSLog, and how using the NoCertRequest TLSOption may help. 2007-09-17 castaglia <castaglia> * NEWS, modules/Makefile.in: Bug#2974 - Install error if multiple modules, using their own build script, are built as shared modules. 2007-09-14 castaglia <castaglia> * modules/mod_core.c: When handling an EPSV command, close any existing data connection first. Related to Bug #2900. 2007-09-13 castaglia <castaglia> * contrib/mod_tls.c: Just as we don't want to call EVP_cleanup(3) at session initialization time if there are other OpenSSL-using modules around, we don't want to unload the human-readable OpenSSL error strings, either. 2007-09-13 castaglia <castaglia> * contrib/mod_tls.c: Alter the conditions under which mod_tls calls EVP_cleanup(3). Call the function when mod_tls is being unloaded, or when the session is exiting, without reservation. If however the FTP session is being initialized, and mod_tls has been compiled but not enabled (i.e. the TLSEngine is off or not present), *and* any other known OpenSSL using modules (i.e. mod_ldap and mod_sql) are present, do NOT call EVP_cleanup(). Doing so might deprive those other modules of OpenSSL functionality unnecessarily. Patch suggested by Nigel Kukard a while ago. 2007-09-13 castaglia <castaglia> * contrib/mod_sql.c: Adding some logging about various error cases when using OpenSSL digests for authentication; these were contributed by Nigel Kukard a while ago. 2007-09-13 castaglia <castaglia> * modules/mod_dso.c: Fix compiler warning about redeclaring a variable if Controls support is enabled. 2007-09-12 castaglia <castaglia> * doc/howto/Vhost.html: Remove mention of the now-deprecated Bind directive. 2007-09-12 castaglia <castaglia> * contrib/mod_tls.c: When initializing mod_tls, check the version of the OpenSSL headers used against the version of the OpenSSL library used. Refuse to load the module unless the versions match properly. (This will help catch systems where mismatched versions of headers and libraries are used inadvertently.) 2007-09-11 castaglia <castaglia> * modules/mod_dso.c: Add trace logging of the succesful loading of modules/files. 2007-09-11 castaglia <castaglia> * modules/mod_core.c: If the admin has specified "UseUTF8 off" in the proftpd.conf file, be sure to remove the UTF8 listing from the FEAT output. Otherwise, clients might be a little confused. 2007-09-11 castaglia <castaglia> * contrib/mod_sql.c: Cast the off_t value of total_xfer_bytes properly, and quell warnings from picky compilers. 2007-09-11 castaglia <castaglia> * src/log.c: When writing to utmp/wtmp logs, we're really not concerned if we fail to truncate the file as requested. 2007-09-11 castaglia <castaglia> * modules/mod_log.c: If there was a problem writing to the ExtendedLog fd, be sure to log it using proftpd's logging (and hope that that write() succeeds). 2007-09-11 castaglia <castaglia> * modules/mod_delay.c: Inform picky compilers that we will be ignoring the return value from write(2). This may not be the best behavior, but it is what we are doing. 2007-09-11 castaglia <castaglia> * modules/mod_xfer.c: Make sure to cast the restart_pos value (an off_t), in order to satisfy picky compilers. 2007-09-10 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Fix syntax of RPM options for some modules. 2007-09-08 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Update the RPM spec file to include the mod_wrap2 modules, mod_ban, mod_ctrls_admin, mod_site_misc, and the NLS capability. 2007-09-07 jwm <jwm> * contrib/mod_ldap.c: Fix anonymous binds when draft-ietf-ldapext-ldap-c-api-04 functions are used. Submitted by: Quentin Garnier <cube@cubidou.net> 2007-09-04 castaglia <castaglia> * contrib/mod_tls.c: The implementation of the fix for Bug #2686 missed a few places where we need to lookup one of the TLSRequired settings. 2007-08-30 castaglia <castaglia> * modules/mod_xfer.c: Clean up the code style in the xfer_stor() function. Also add logging of the case where an lseek() fails for some reason. 2007-08-29 castaglia <castaglia> * doc/howto/SQL.html: Added SQL FAQ about shared library loader errors. 2007-08-24 castaglia <castaglia> * doc/howto/Debugging.html: Mention using `proftpd -V' in the Debugging howto. 2007-08-22 castaglia <castaglia> * src/fsio.c, src/netio.c: Surround the invocation of function pointers with parentheses, to help some (broken, IMHO) code introspection tools to be able to read the code better. 2007-08-22 jwm <jwm> * contrib/mod_ldap.c: missed version number 2007-08-21 castaglia <castaglia> * NEWS, lib/sstrncpy.c: Bug#2964 - Building RPM fails because of *snprintf trying to be redefined. 2007-08-17 jwm <jwm> * contrib/mod_ldap.c: release 2.8.17 2007-08-09 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2963 - Use of -A option for LIST/NLST commands not cleared for subsequent commands. 2007-08-09 castaglia <castaglia> * README.facl: Remove extraneous whitespace. 2007-08-03 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in, contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c: Bug#2958 - mod_wrap2 does not handle multiple rules in access files. 2007-07-31 castaglia <castaglia> * modules/mod_auth.c: Coding style changes; no functional change. 2007-07-31 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2955 - Undeclared identifier MAP_FAILED for mod_delay on AIX. 2007-07-24 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#2950 - Hostname with multiple IP addresses might cause "ai_family not supported" error if IPv6 support enabled. 2007-07-19 castaglia <castaglia> * NEWS, src/proctitle.c: Bug#2947 - SIGBUS on Mac OS X when dynamically loading shared libs. The solution is to set argv elements to the empty string, rather than NULL, so that stupid libraries which grovel around in argv without checking for NULL pointers don't crash. Silly libraries. 2007-07-18 castaglia <castaglia> * NEWS, modules/mod_facl.c: Bug#2946 - Anonymous logins fail if the mod_facl module is enabled. 2007-07-07 jwm <jwm> * contrib/mod_ldap.c: mod_ldap 2.8.17-20070707: fix LDAPServer handling; config_rec argv arrays don't contain the directive name in index 0. 2007-07-06 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Correct misspellings. 2007-07-06 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#2944 - mod_sql_mysql fails to compile due to missing quotation. 2007-07-05 castaglia <castaglia> * NEWS, include/version.h: Reset files for 1.3.1rc4. 2007-07-04 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2007-07-04 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.3.1rc3 release. 2007-07-04 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes, getting ready for a release. 2007-07-04 castaglia <castaglia> * contrib/mod_wrap2_file.c: A recent innocuous change to mod_wrap2_file turned out to be not so innocuous; a static buffer was made non-static, and terror and madness ensued. To fix this (and avoid the distasteful static buffer), mod_wrap2_file now makes duplicates of the parsed buffers using the table pool (for just such purposes). This patch also cleans up the handling of the service and client lists in the file. 2007-07-02 jwm <jwm> * contrib/mod_ldap.c: 2.8.17-20070701: don't use a separate directive (LDAPURL) to specify LDAP URLs; support them in LDAPServer instead - add ldap url support, via the LDAPURL directive - add ldaps (ldap over ssl) support, via the LDAPUseSSL directive and ldaps:// scheme to LDAPURL - refine tls debugging statement 2007-07-02 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2007-07-02 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: Make sure that mod_wrap2 honors the runtime UseIPv6 configuration directive. 2007-06-28 castaglia <castaglia> * doc/howto/Timestamps.html: Add a little more substance to the Timestamps howto, to remind readers that they need to think for themselves a little, and read their system docs. 2007-06-28 castaglia <castaglia> * modules/mod_auth.c: The clearing of any cached directory config pointers, as a fix for Bug #2939, was a little too aggressive. We only need to clear those pointers once, prior to calling setup_env(). 2007-06-25 castaglia <castaglia> * contrib/mod_wrap2_file.c: Attempt to log a more informative message if a too-long multiline is found. Also add support for allocating a larger buffer for such lines at compile time. 2007-06-25 castaglia <castaglia> * NEWS, contrib/mod_ban.c: Bug#2942 - BanLog directive does not accept "none" parameter. 2007-06-25 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2939 - Anonymous restrictions apply after a failed anonymous login followed by a successful normal user login. 2007-06-19 castaglia <castaglia> * NEWS: Fix typos. 2007-06-18 castaglia <castaglia> * doc/howto/Quotas.html: Add a FAQ about group quota determination. 2007-06-12 castaglia <castaglia> * src/auth.c: Yet another patch, working on the PAM-related fallout from Bug #2922. 2007-06-12 castaglia <castaglia> * modules/mod_auth_file.c: Remove some debug logging which inadvertently crept into mod_auth_file. 2007-06-12 castaglia <castaglia> * contrib/mod_sql.c: For symmetry, log a message in the SQLLogFile when a particular SQLAuthType handler fails. This complements the log message already written when the handler indicates success. 2007-06-11 castaglia <castaglia> * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#2938 - mod_wrap2 does not honor WrapTables for <Anonymous> logins. 2007-06-07 castaglia <castaglia> * contrib/mod_ifsession.c, contrib/mod_rewrite.c: Add reporting of the module version for the mod_ifsession and mod_rewrite modules. 2007-06-04 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2935 - DELE command doesn't check file stat result before logging. 2007-06-04 jwm <jwm> * contrib/mod_ldap.c: 2.8.17-20070603: * Use non-deprecated LDAP API functions if the LDAP SDK is new enough to comply with draft-ietf-ldapext-ldap-c-api-04. 2007-05-30 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2900 - Some kernels incorrectly reuse IPv6 ports for EPSV command. Rather than relying on untrusted kernel behavior (i.e. assigning a random _unused_ port if port zero is used in a bind() call), proftpd now explicitly chooses a random port (using the same technique as used for PassivePorts) when handling the EPSV command. Note that the PassivePorts directive still works properly for this port selection. 2007-05-26 castaglia <castaglia> * doc/howto/Quotas.html: Add a FAQ about the QuotaExcludeFilter directive. 2007-05-24 castaglia <castaglia> * doc/howto/Tracing.html: No need for the quotations -- they're a bit much. 2007-05-24 castaglia <castaglia> * RELEASE_NOTES, doc/howto/Tracing.html, doc/howto/index.html: Adding tracing howto. 2007-05-24 castaglia <castaglia> * src/help.c: The list of commands displayed for the HELP command was being truncated. Fix suggested by Richard Gray. 2007-05-23 castaglia <castaglia> * README.PAM: Update the PAM readme with notes for Linux, per Bug#2907. 2007-05-22 castaglia <castaglia> * NEWS, utils/ftptop.1.in, utils/ftptop.c: Bug#2923 - ftptop display flickers if delay is greater than 25 seconds. Simply accept only delay values between zero and 15 seconds. 2007-05-22 castaglia <castaglia> * configure: Updating configure. 2007-05-22 castaglia <castaglia> * NEWS, config.h.in, configure.in, src/fsio.c: Bug#2934 - Function perm_copy_fd() not in older Linux libacl versions. Test for that function, and use acl_get_fd(3) and acl_set_fd(3) if not present. 2007-05-22 castaglia <castaglia> * include/options.h: Minor style nit. No functional change. 2007-05-21 castaglia <castaglia> * src/inet.c: Use tracing to log if there was a problem using getsockopt() to get the IPV6_V6ONLY option. 2007-05-21 castaglia <castaglia> * NEWS, src/inet.c: Bug#2932 - Syslog contains "error setting IPV6_V6ONLY: Protocol not available". 2007-05-21 castaglia <castaglia> * doc/howto/Directory.html: Include RNTO in the list of FTP commands affected by trailing "/*" suffixes in <Directory> lines. 2007-05-21 castaglia <castaglia> * src/auth.c: Additional patch for Bug#2922, to check for and use mod_auth_pam for authentication, if present (and usable). 2007-05-21 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2890 - SystemLog permission errors on SIGHUP when mod_tls is enabled. 2007-05-19 castaglia <castaglia> * modules/mod_facl.c: Use the event handler defined for the "core.module-unload" event, when compiled as a DSO module. 2007-05-16 castaglia <castaglia> * modules/mod_facl.c: Declare the facl_module variable before using it. This isn't a problem for most builds, but for proftpds built with DSO support and with a DSO mod_facl, it's a compilation error. 2007-05-15 castaglia <castaglia> * src/netio.c: More work towards Bug#2920. Hopefully this will be the last of that particular issue. 2007-05-15 castaglia <castaglia> * modules/mod_xfer.c: Short-circuit out of xfer_rate_throttle() early, if the transfer has already been aborted. 2007-05-15 castaglia <castaglia> * doc/howto/Timestamps.html: Adjust link to mod_site_misc docs to use the local copy. 2007-05-15 castaglia <castaglia> * doc/howto/Timestamps.html: Start adding a FAQ section about timezones and timestamps. 2007-05-15 castaglia <castaglia> * modules/mod_xfer.c, src/data.c: More checks of XFER_ABORTED, in pursuit of a solution for Bug#2920. 2007-05-14 castaglia <castaglia> * modules/mod_xfer.c: Attempt to handle aborted transfers that were in the midst of being throttled. 2007-05-14 castaglia <castaglia> * modules/mod_xfer.c: Do not block SIGURG (used to abort transfers) when handling throttled transfers. 2007-05-10 castaglia <castaglia> * NEWS, modules/mod_xfer.c, src/data.c, src/inet.c, src/netio.c: Bug#2920 - ABOR command not handled during data transfer. Bug#2924 - DeleteAbortedStores doesn't work when the ABOR command is used. 2007-05-10 castaglia <castaglia> * src/inet.c, src/netio.c: Add tracing of aborted connections. Also corrects an issue where a lingering close was happening *twice*, once per stream (input and output), whereas only one lingering close (or lingering abort) is needed. Came out of investigating Bug#2920. 2007-05-10 castaglia <castaglia> * src/main.c: Add tracing of received FTP commands. 2007-05-09 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Check to see if the SQL backend module (either MySQL or Postgres) has been properly initialized, prior to attempting to use the connection pool. Failure to do so, in inadvertently misconfigured proftpds, was leading to NULL pointer dereference segfaults. 2007-05-07 castaglia <castaglia> * NEWS, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c: Bug#2864 - DisplayLogin should work regardless of chroot. This feature includes DisplayQuit and DisplayTransferFiles as well. To make this work, the configured Display files must use absolute paths. ProFTPD will then open an fd on those files, prior to chroot(2), such that the fds, on paths outside of the chroot(), are accessible once the process has been chrooted. 2007-05-04 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2921 - NLST fails if using POSIX ACLs. 2007-05-04 castaglia <castaglia> * modules/mod_facl.c: Add more tracing of POSIX ACL functions, particularly on BSD and Linux, in order to get better views of errors. Fix some stupid printf format thinkos. Add function to convert between a mode_t, used for access(2), to an acl_perm_t, used for acl_get_perm(2) on BSD and Linux. Hopefully this clears up some of the issues for Bug #2661. 2007-04-30 castaglia <castaglia> * modules/mod_facl.c: Fix the initialization of mod_facl's configuration directives. Oops. 2007-04-24 castaglia <castaglia> * src/netio.c: Guard against using negative numbers when calling FD_SET. The FD_SET macro expects an fd, and if that fd is less than zero, the results are unpredictable (crashes, silent failures, just works, hangs, etc). 2007-04-18 castaglia <castaglia> * modules/mod_facl.c: More tracing of POSIX ACLs on Solaris. Looks like the implementation changed on Solaris 10 for certain filesystems (ZFS, NFSv4). 2007-04-17 castaglia <castaglia> * NEWS, include/auth.h, modules/mod_core.c, src/auth.c: Bug#2922 - Auth API allows one auth module to authenticate user data provided by a different auth module. 2007-04-17 castaglia <castaglia> * src/fsio.c: Include the paths in the trace messages about which FS is used for a given filesystem access call. This will be useful in developing and debugging FSIO modules, e.g. mod_facl. 2007-04-16 castaglia <castaglia> * sample-configurations/mod_sql.conf: Do not use 'Plaintext' as a example SQLAuthTypes parameter, since too many people blindly copy examples as-is, then blame you for the consequences. 2007-04-02 castaglia <castaglia> * src/inet.c: Allow data transfers on low-numbered sockets to work on SCO Unix. 2007-04-02 castaglia <castaglia> * NEWS, modules/mod_ls.c, src/data.c: Bug#2911 - NLST on a nonexistent path, followed by an NLST on an existing file, causes segfault. 2007-03-28 castaglia <castaglia> * src/parser.c: Cleanup pr_parser_cleanup(). First, return EPERM if the parser stack is not in a state when it can be properly cleaned up. Second, reset stack pointers to NULL even when there is no parser pool provided. 2007-03-28 castaglia <castaglia> * src/parser.c: Tag the temporary pool right after its creation, not after it has been used. 2007-03-28 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2913 - TYPE command does not clear ASCII flag from LIST/NLST commands. 2007-03-28 castaglia <castaglia> * contrib/mod_rewrite.c: Updating coding style in a few places. No functional change. 2007-03-27 castaglia <castaglia> * config.guess, config.sub, contrib/mod_load/config.guess, contrib/mod_load/config.sub, lib/libltdl/config.guess: Updated the config.guess and config.sub scripts, used by the configure script for platform detection, to the versions shipped with autoconf-2.61. 2007-03-22 castaglia <castaglia> * src/dirtree.c: Formatting tweaks, no functional change. 2007-03-09 castaglia <castaglia> * sample-configurations/anonymous.conf, sample-configurations/basic.conf, sample-configurations/complex-virtual.conf, sample-configurations/mod_sql.conf: Update the example config files to use DisplayChdir, rather than the deprecated DisplayFirstChdir directive. 2007-03-09 castaglia <castaglia> * modules/mod_core.c: Bar configurations like: PassivePorts 2222 2222 where the max and min port numbers are the same; it's a useless configuration. 2007-03-06 castaglia <castaglia> * doc/contrib/mod_ban.html: Add a FAQ about using a delay, rather than session termination, for banned clients, and why that is a bad idea. 2007-03-06 castaglia <castaglia> * README.PAM: Typo. 2007-03-01 castaglia <castaglia> * NEWS: Fix typo noted by Sven. 2007-02-21 jwm <jwm> * contrib/mod_ldap.c: - bump version - previous commit wrt LDAPAttr fetching was submitted by TJ Saunders <tj@castaglia.org>; got a little fresh with my editor and missed the paste 2007-02-21 jwm <jwm> * contrib/mod_ldap.c: fetch attribute redefinitions (LDAPAttr) before using any attribute names, such as when generating the default search filters 2007-02-21 jwm <jwm> * contrib/mod_ldap.c: wordwrap, error message tweak 2007-02-20 castaglia <castaglia> * doc/contrib/mod_quotatab_radius.html, doc/contrib/mod_radius.html: Fix the documentation for the RadiusQuotaInfo. 2007-02-20 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#2906 - RewriteCondition backreferences not properly substituted. 2007-02-20 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2902 - Stack read overrun in mod_xfer on 32bit platform. Use an explicit compiler cast to ensure that the proper data type size is used in the arguments for a variadic function. 2007-02-20 castaglia <castaglia> * contrib/mod_quotatab_radius.c: Need to include mod_quotatab.h, which includes the ProFTPD headers, before doing the ProFTPD version check. 2007-02-16 castaglia <castaglia> * doc/howto/TLS.html: Add FAQ about SSL/TLS renegotiations, and how some FTPS clients do not handle them well. 2007-02-15 castaglia <castaglia> * RELEASE_NOTES: Note new doc for 1.3.1rc3 release, whenever that is. 2007-02-15 castaglia <castaglia> * doc/howto/Timestamps.html, doc/howto/index.html: Add a document talking about timestamps and chroots (see Bug #2717, Bug #2896). 2007-02-15 castaglia <castaglia> * configure: Updated configure. 2007-02-15 castaglia <castaglia> * lib/pr-syslog.c, src/support.c: Use the feature macro to determine if tzname is actually present to be guarded. 2007-02-15 castaglia <castaglia> * config.h.in, configure.in: We're really only concerned with the tzname global variable, not with the timezone and daylight global variables. For now, anyway. 2007-02-15 castaglia <castaglia> * config.h.in, configure.in: Be defensive, and add autoconf detection for the tzname, timezone, and daylight global variables. 2007-02-15 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_rewrite.c, contrib/mod_sql.c, contrib/mod_tls.c, contrib/mod_wrap2/mod_wrap2.c, modules/mod_ctrls.c, src/support.c, src/trace.c: Replace calls to localtime(3) throughout the proftpd code with calls to pr_localtime(). 2007-02-15 castaglia <castaglia> * src/log.c: Missed a call to localtime(3) that needs to replaced with pr_localtime(). 2007-02-15 castaglia <castaglia> * modules/mod_log.c, src/ftpdctl.c, src/log.c: Update mod_log and the core logging to use pr_localtime(), which guards against localtime(3) resetting the tzname global variable to an unexpected/wrong timezone (i.e. GMT) in a chrooted process. 2007-02-15 castaglia <castaglia> * src/support.c: Update pr_localtime() so that it no longer requires a pool. If a pool is provided, it will be used, otherwise, the struct tm * from localtime(3) will be returned as is. 2007-02-15 castaglia <castaglia> * src/support.c: For functions which use pr_localtime() (and there should be more of them), protect the tzname global variable values, to guard against localtime(3) twiddling with the tzname variable. This twiddling causes weird values once the process is chrooted. 2007-02-15 castaglia <castaglia> * modules/mod_log.c: Remove a section of code which relies on a macro, HAVE_GMTOFF, which has not be defined by proftpd's configure script in who knows how long. This investigation was prompted by looking into Bug #2896. 2007-02-15 castaglia <castaglia> * src/ftpdctl.c, src/log.c: When writing to the log fd, check for errors, and specifically try the write(2) call again if the call was interrupted. 2007-02-13 castaglia <castaglia> * modules/mod_xfer.c: Forgot to log one of the reasons for not using sendfile(): UseSendfile set to 'off'. 2007-02-13 castaglia <castaglia> * modules/mod_xfer.c: Add debug logging, level 10, showing when sendfile is used, or isn't used. And if sendfile isn't used, log the reason. 2007-02-13 castaglia <castaglia> * src/dirtree.c: Fix typo. 2007-02-12 castaglia <castaglia> * src/dirtree.c: A further optimization, suggested by Glenn Nielsen. In the find_best_dir() function, the paths being compared always come from c->name, which means that it's actually OK to do direct pointer comparison, rather than using strcmp(). Only time will tell whether this is a too-clever optimization. 2007-02-12 castaglia <castaglia> * src/dirtree.c: Make some minor optimizations to the dir_match_path() function. Specifically, call strlen() only once when necessary (rather than multiple times), and reorder checks such that strcmp() checks, the most expensive of the checks, are done *last*, rather than first. The goal is to scan the directory path string as few times as possible; given many such directory path strings, each scan adds up. 2007-02-12 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#2897 - mod_quotatab subtracts size of deleted file from bytes-transferred tally. 2007-02-08 castaglia <castaglia> * modules/mod_auth.c: Add explanatory comment about checks for session.gids, session.groups. 2007-02-08 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2893 - ProFTPD can use the wrong group data if the user name changes. 2007-01-19 castaglia <castaglia> * NEWS, modules/mod_lang.c: Bug#2883 - Problem with locale and SQL database queries. 2007-01-19 castaglia <castaglia> * locale/files.txt: Update the list of source files in locale/files.txt. 2007-01-19 castaglia <castaglia> * locale/Makefile.in: Fixed typos in command used to generate files.txt. 2007-01-19 castaglia <castaglia> * NEWS, include/modules.h, modules/mod_core.c, modules/mod_lang.c, src/main.c, src/modules.c: Bug#2881 - ProFTPD does not support OPTS UTF8 command when --enable-nls is used. 2007-01-18 castaglia <castaglia> * src/trace.c: The list of channel names should be named 'trace_channels', not 'trace_levels'. What was I thinking? 2007-01-18 castaglia <castaglia> * NEWS, include/conf.h, include/log.h: Bug#2878 - Error compiling proftpd on Solaris 2.9 using --with-lastlog. 2007-01-18 castaglia <castaglia> * contrib/mod_tls.c: Update mod_tls to use the pr_env_* functions. This also eliminates a lot of #ifdef PR_USE_DEVEL checks in the mod_tls code -- hooray! 2007-01-18 castaglia <castaglia> * include/env.h, src/env.c: Add some documentation to the pr_env_* functions in the header. Also beef up the code in env.c, such that it is prepared for memory checker programs (e.g. Valgrind) in cases where --enable-devel is used. This makes it possible to clean up some ugly #ifdef checks elsewhere (e.g. mod_tls). 2007-01-17 castaglia <castaglia> * contrib/mod_sql.c: Update mod_sql.c to use pr_env_get() rather than getenv(3). 2007-01-17 castaglia <castaglia> * configure: Updated configure. 2007-01-17 castaglia <castaglia> * configure.in, contrib/mod_tls.c, src/main.c, src/proctitle.c: The proper macro to use is PR_USE_DEVEL, not PR_DEVEL. 2007-01-17 castaglia <castaglia> * configure: Updated configure. 2007-01-17 castaglia <castaglia> * configure.in: Add printing of "checking for" messages when scanning for the list of usual suspects of lastlog locations. Related to Bug #2878. 2007-01-17 castaglia <castaglia> * configure: Updated configure. 2007-01-17 castaglia <castaglia> * configure.in: Fix the configure script to properly use the pr_lastlog_path variable (it was using spaces around the '=' operator, which the shell may not like). Part of Bug #2878. 2007-01-17 castaglia <castaglia> * NEWS, src/inet.c: Bug#2877 - ServerType 'inetd' results in "getnameinfo error: ai_family not supported" errors in log. 2007-01-17 castaglia <castaglia> * src/main.c: Remove the redundant is_standalone variable; it can be replaced with checks against the global variable ServerType. 2007-01-16 castaglia <castaglia> * Makefile.in: The -lsupp LIBS flag is now populated in the UTILS_LIBS variable, so there is no need for the hardcoded flag as well. 2007-01-16 castaglia <castaglia> * src/main.c: A bad patch mixed up the ordering of settings displayed via show_settings(). 2007-01-16 castaglia <castaglia> * src/env.c: Fix bug in pr_env_set() on systems that have putenv(3) rather than setenv(3). 2007-01-15 castaglia <castaglia> * configure: Updated configure. 2007-01-15 castaglia <castaglia> * configure.in: Do not scan a mod_foo.h.in file, assuming a module-specific subdirectory, for build system hints. A .in file needs to be processed (as via the module's own configure script), and should not be scanned until after that processing. 2007-01-15 castaglia <castaglia> * NEWS: Forgot to list Bug #2875 in the NEWS file. 2007-01-15 castaglia <castaglia> * modules/mod_ctrls.c: Use a socklen_t, rather than a size_t, for accept(2). 2007-01-15 castaglia <castaglia> * configure: Updated configure. 2007-01-15 castaglia <castaglia> * configure.in: Bug#2875 - Malformed getopt checks cause compilation errors in getopt.c. 2007-01-14 castaglia <castaglia> * configure: Updated configure. 2007-01-14 castaglia <castaglia> * configure.in: There's no need to define PR_USE_SENDFILE as zero. 2007-01-13 castaglia <castaglia> * include/proctitle.h, src/main.c, src/proctitle.c: Move the proctitle functions into the 'pr_' namespace, just to be safe (and consistent). 2007-01-13 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Specify what I mean when I say "groups" and "classes". 2007-01-13 castaglia <castaglia> * include/pidfile.h, src/main.c, src/pidfile.c: Move the pidfile functions into the 'pr_' namespace, so that they don't collide with functions of the same names on systems whose <libutil.h> system header defines them (with conflicting prototypes). Yay portability. 2007-01-13 castaglia <castaglia> * locale/.cvsignore: Another .cvsignore file for locale/. 2007-01-12 castaglia <castaglia> * contrib/mod_load/.cvsignore, contrib/mod_wrap2/.cvsignore: Add .cvsignore files for the mod_load/ and mod_wrap2/ directories. 2007-01-12 castaglia <castaglia> * include/version.h: Back to CVS status, for the next RC release. 2007-01-12 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2007-01-12 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.3.1rc2 release. 2007-01-12 castaglia <castaglia> * RELEASE_NOTES: Adding release notes for 1.3.1rc2. 2007-01-12 castaglia <castaglia> * doc/howto/TLS.html: Add a mod_tls FAQ about the "no shared cipher" error. 2007-01-12 castaglia <castaglia> * src/fsio.c: In the case of successful chown() and chmod() calls, clear the statcache, as the cached data may now be stale. 2007-01-12 castaglia <castaglia> * src/env.c, src/pidfile.c, src/proctitle.c: Correct the license wording to mention The ProFTPD Project as primary copyright holder. 2007-01-12 castaglia <castaglia> * Make.rules.in, include/conf.h, include/env.h, include/support.h, src/env.c, src/support.c: Refactored the pr_env_* routines into their own source and header files. 2007-01-11 castaglia <castaglia> * src/ftpdctl.c: Since src/ftpdctl.c has its own copy of sstrcat() and sstrncpy() (itself a bad sign), it needs to have the same paranoid checks added to those functions as were added to the core implementations. 2007-01-11 castaglia <castaglia> * contrib/mod_ctrls_admin.c: When 'ftpdctl shutdown' is used, include the number of sessions being summarily terminated (after a grace period) in the ControlsLog message. 2007-01-11 castaglia <castaglia> * Make.rules.in, include/conf.h, include/pidfile.h, src/main.c, src/pidfile.c: More refactoring of src/main.c. Now the PID file routines (writing and removing the pidfile) are separated out. 2007-01-11 castaglia <castaglia> * Make.rules.in, include/conf.h, include/proctitle.h, src/main.c, src/proctitle.c: The src/main.c file is a bit hairy mess, and in desperate need of refactoring. This moves the process title functions into their own proctitle.c file, with accompanying header. 2007-01-11 castaglia <castaglia> * contrib/mod_sql.c: Another in the series of patches for Bug#2869, this one makes sure that sites which use the 'fast' parameter in SQLAuthenticate still operate properly. 2007-01-11 castaglia <castaglia> * src/pool.c: The bytes_in_block_list() function should be #ifdef'd as well behind PR_USE_DEVEL. 2007-01-11 castaglia <castaglia> * include/compat.h, include/dirtree.h, include/fsio.h, include/pool.h, src/dirtree.c, src/fsio.c, src/main.c, src/pool.c: Move a lot of functions, either existing or new, behind PR_USE_DEVEL checks, since a lot of functions are meant only for the debugging purposes of proftpd developers. (Hopefully this will make the resulting proftpd executable slightly smaller.) There will be more such debugging functions added; they are meant as hooks utilized by a mod_debug module (again, only for developer use). The only user-visible change in this is that the SIGUSR2 signal, when sent to a proftpd process, would cause that process to print out a trace of its memory pool usage. Now, a SIGUSR2 signal will cause an event to be generated -- but the printing of the memory pool usage is gone. I may add that back at some point, if/when there is a hue and cry raised. 2007-01-10 castaglia <castaglia> * configure: Updated configure. 2007-01-10 castaglia <castaglia> * configure.in: Thinko. 2007-01-10 castaglia <castaglia> * Make.rules.in, lib/Makefile.in: Put the declarations for ar and ranlib in a place that's visible to contrib modules (namely, Make.rules). Update the lib/Makefile to use that location; while I'm at it, remove the stale dependency listings from lib/Makefile. 2007-01-10 castaglia <castaglia> * configure: Updated configure. 2007-01-10 castaglia <castaglia> * contrib/mod_load/config.guess, contrib/mod_load/config.sub: The configure script for the mod_load module requires the config.sub and config.guess helper scripts. 2007-01-10 castaglia <castaglia> * configure.in: Check for the existence of the file before trying to cat it. 2007-01-10 castaglia <castaglia> * configure: Updated configure. 2007-01-10 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in: Even more build system magic. With this change, we add support for a new "hint" tag: $Archive$. This particular tag is *only* honored in a very particular situation: the contrib module uses its own subdirectory (e.g. contrib/mod_foo/) *and* that module is being built as a static module. Contrib modules built as shared modules fall into different linking rules. The purpose of this $Archive$ tag is to allow the Makefile for that mod_foo module to be built from multiple source files, which would result in multiple object files. All of those object files would need to be part of the command to link the final `proftpd' executable. (A shared module would not need to present for this link step.) Rather than have multiple object files from contrib modules, it involves less files (though at the cost of more complexity) to use a single archive file, e.g. mod_foo.a. The Makefile for the contrib module, for its "static" target, will thus need to assemble a mod_foo.a archive from the various .o files. When this happens, the contrib module uses the $Archive$ hint (similar to the $Libraries$ hint) to let proftpd's module build system know to expect that archive file. 2007-01-09 castaglia <castaglia> * configure: Updating configure. 2007-01-09 castaglia <castaglia> * configure.in: More build system magic. This allows contrib module developers, who use their own module-specific subdirectory e.g. contrib/mod_foo/, to have the $Libraries$ tags in their mod_foo.c, mod_foo.h, or mod_foo.h.in files be properly picked up by proftpd's build system, just as happens for a module in contrib/mod_foo.c. 2007-01-09 castaglia <castaglia> * configure: Updating configure. 2007-01-09 castaglia <castaglia> * contrib/mod_load/Makefile.in, contrib/mod_wrap2/Makefile.in: There's no need to redefine LIBS, then use it in the link command. Just use SHARED_MODULE_LIBS directly, and don't obfuscate the matter. 2007-01-09 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Add DSO and lastlog support to the RPM spec. 2007-01-09 castaglia <castaglia> * Make.rules.in, configure.in, contrib/mod_load/Makefile.in, contrib/mod_wrap2/Makefile.in: Tweak the build system so that any LIBS specified on the command-line are picked up when building shared modules whose sources are in their own directory (e.g. mod_load, mod_wrap2). This may sound like a bit of an edge case, but I suspect that it will become a necessity once proftpd supports having contrib modules that come with their own message catalogs (i.e. NLS support), and thus may need to be linked against the libintl library (which provides gettext() support). 2007-01-09 castaglia <castaglia> * src/modules.c: Set errno to EINVAL, when appropriate, in a few places. 2007-01-09 castaglia <castaglia> * src/parser.c: Paranoid checking of signals within a while loop, in case the loop should decide to continue endlessly. 2007-01-08 castaglia <castaglia> * src/auth.c: Make sure that dispatch_auth() does not loop endlessly, if there are never any ERROR or HANDLED returns from the auth module handlers. Simply keep track of the starting table, and watch the iterator table; when the two match, we have looped through the auth handlers, and will assume that the entire auth command has been DECLINED. 2007-01-08 castaglia <castaglia> * modules/Makefile.in, src/Makefile.in, utils/Makefile.in: Remove crufty, outdated, and unnecessary dependency listings. 2007-01-08 castaglia <castaglia> * configure: Updated configure. 2007-01-08 castaglia <castaglia> * config.h.in, configure.in, include/support.h, lib/getopt.h: I discovered last night that proftpd's build system was not doing as advertised. Specifically, it continued to build the bundled getopt implementation regardless of whether the host system had its own getopt support. (I discovered this on Mac OS X, whose linker is apparently more picky that the one on my Linux machine, and which was complaining of multiply defined _opt* symbols.) This changes updates the build system so that it does as stated: if the host system does not have getopt support, we use our own. 2007-01-08 castaglia <castaglia> * src/auth.c: Yet another while loop in need of signal handling. 2007-01-07 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Add controls support to the RPM spec. 2007-01-07 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Include the installed header files in the RPM spec. Add ability for specifying mod_quotatab_file. 2007-01-06 castaglia <castaglia> * doc/howto/TLS.html: Add documentation mentioning the CCC command, and how to configure mod_tls such that command is allowed for FTPS clients. 2007-01-06 castaglia <castaglia> * contrib/mod_tls.c: If the TLSRequired setting is such that the control connection *cannot* be unprotected, then be sure to deny any CCC commands. 2007-01-04 castaglia <castaglia> * src/support.c: Fix dir_abs_path() such that it does not tack on redundant directories to the end of a relative path. 2007-01-03 castaglia <castaglia> * modules/mod_auth_file.c: Remember to use PR_DECLINED rather than DECLINED. 2007-01-03 castaglia <castaglia> * modules/mod_auth_file.c: Paranoid checking for a NULL return value from crypt(3), just in case. One user's debug logs suggest a segfault in mod_auth_file's "check" routine. Might end up be a red herring, but this code is still useful. 2007-01-03 castaglia <castaglia> * contrib/mod_sql.c: Make sure that "SQLAuthenticate groupset" works properly. 2007-01-03 castaglia <castaglia> * Make.rules.in: Make sure the LIBS environment variable is honored when linking the utility programs (i.e. ftptop, ftpwho). 2007-01-02 castaglia <castaglia> * doc/contrib/mod_quotatab_ldap.html: Minor clarification. 2006-12-28 castaglia <castaglia> * NEWS, src/mkhome.c: Bug#2872 - CreateHome doesn't recreate symlinks from skeleton properly. 2006-12-27 castaglia <castaglia> * src/parser.c: Fix a nasty bug where a <Directory> section which contained a <Limit> section, but no other directives, e.g.: <Directory /path> <Limit LIST> DenyAll </Limit> </Directory> was handled as being "empty", and thus ignored; the <Limit> would not take effect. 2006-12-22 castaglia <castaglia> * contrib/mod_sql.c: Paranoid NULL termination of vararg lists to the sql_prepare_where() variadic function. 2006-12-22 castaglia <castaglia> * contrib/mod_sql.c: Additional work toward Bug #2869, trying to preserve the functionality added for Bug #2828. (That is, make sure that variables within the user-defined SQLGroupWhereClause are still processed/resolved properly.) 2006-12-22 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2869 - mod_sql botches WHERE clauses. 2006-12-21 castaglia <castaglia> * contrib/mod_ratio.c, include/dirtree.h, src/dirtree.c: It's past time to get rid of get_param_int(). This function was very naught, and used the size of a void * for storing int values. The rest of the proftpd code has been cleansed of its use (replaced with get_param_ptr()); mod_ratio was the last holdout. 2006-12-21 castaglia <castaglia> * src/dirtree.c: "Temporary" fix has been in place for years; remove the misleading comment and commented-out code, since it's proven itself to not be needed. 2006-12-20 castaglia <castaglia> * contrib/mod_load/install-sh, contrib/mod_wrap2/install-sh, include/install-sh, locale/install-sh, modules/install-sh: For platforms which don't have a standard `install' program, we provide the install-sh script. On those platforms, though, this script needs to be in the same directories as the Makefiles which use install, rather than just in the top-level directory. 2006-12-20 castaglia <castaglia> * modules/mod_core.c, src/trace.c: Fixing two issues with this change: 1) Once set in a config file, the Trace/TraceLog directives were always being honored, even after those directives had been removed from the config file and proftpd restarted. 2) After a restart, the TraceLog fd would often be the same as used for connected clients, with the result that the clients would receive some of the trace log messages. To address this, we need to ensure that the TraceLog fd is never one of the major three (stdin, stdout, or stderr). 2006-12-19 castaglia <castaglia> * src/parser.c, src/trace.c: Adding tracing of the parser, using the 'config' trace channel. 2006-12-19 castaglia <castaglia> * src/netaddr.c: More tracing of netaddr functions, particularly in the reverse DNS resolution code. 2006-12-19 castaglia <castaglia> * modules/mod_auth_pam.c: Adding tracing of PAM. 2006-12-19 castaglia <castaglia> * src/netaddr.c: Adding tracing of netaddr functions, using the trace channel name 'dns'. 2006-12-19 castaglia <castaglia> * modules/mod_facl.c, src/trace.c: Adding tracing of POSIX ACLs. 2006-12-19 castaglia <castaglia> * contrib/mod_quotatab.c: Make sure we remove mod_quotatab's custom FS, if registered, when the module is being unloaded (as a shared module). 2006-12-19 castaglia <castaglia> * NEWS, src/event.c: Bug#2857 - Failure to properly unregister event handlers leads to segfault after restarts. When scanning the lists of event handlers to find the handlers to remove, we need to make sure we cover all lists, not short-circuit out when we don't find any matching handlers on the first list examined. 2006-12-18 castaglia <castaglia> * src/netacl.c: Adding tracing of NetACLs. 2006-12-18 castaglia <castaglia> * src/ident.c: Add tracing of ident lookups. 2006-12-18 castaglia <castaglia> * contrib/mod_ban.c: Get in the habit of setting pools to NULL after destroying them. Update to use newer Timer API. 2006-12-18 castaglia <castaglia> * modules/mod_core.c: The handling of TraceLog was done well; after a restart, the TraceLog might very well have opened on a low-numbered fd, one assumed to be used for a connecting client. This means that after a restart, connecting clients might inadvertently receive TraceLog messages on their client, as if they were FTP response messages from proftpd. Oops. 2006-12-18 castaglia <castaglia> * src/inet.c: FreeBSD 7 on its way. 2006-12-18 castaglia <castaglia> * src/support.c: The pickier compiler on my Linux laptop caught this thinko. 2006-12-17 castaglia <castaglia> * modules/mod_auth.c, modules/mod_log.c, src/parser.c: Use pr_env_get() rather than getenv(3). 2006-12-17 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c, modules/mod_auth.c, modules/mod_core.c: Update modules to use pr_env_set() rather than setenv(). This is mostly for the benefit of systems which may provide putenv() rather than setenv(). 2006-12-17 castaglia <castaglia> * configure: Updated configure. 2006-12-17 castaglia <castaglia> * config.h.in, configure.in, include/support.h, src/support.c: Rather than using setenv(3) and unsetenv(3) directly, provide pr_env() wrappers. This is particularly useful for Solaris systems, which may not provide setenv(3) but *do* provide putenv(3); pr_env_set() handles this transparently. (If present, setenv(3) is used, otherwise if putenv(3) is present, that is used, otherwise ENOSYS.) 2006-12-16 castaglia <castaglia> * modules/mod_ctrls.c, src/ctrls.c: Add tracing of controls. 2006-12-15 castaglia <castaglia> * modules/mod_dso.c: Adding tracing of DSO modules. 2006-12-15 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Documentation for the 'trace info' ftpctl action. 2006-12-15 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Fix the handling of a 'trace info' control action, so that the list of trace channels and their respective log levels is comprehensibly displayed. 2006-12-15 castaglia <castaglia> * src/fsio.c: Add more handling of possible signals within while() loops. 2006-12-15 castaglia <castaglia> * modules/mod_ls.c: Style changes, and some additional pr_signals_handle() calls in while() loops. 2006-12-15 castaglia <castaglia> * src/event.c: Use tracing for logging of events, rather than debug logging. 2006-12-15 castaglia <castaglia> * src/fsio.c: Add tracing of the FSIO API, no longer using pr_log_debug(). 2006-12-15 castaglia <castaglia> * src/auth.c: Moving more logging out of the main error log, and into the TraceLog. A lot of this level detail isn't always necessary. 2006-12-15 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Add docs for the 'trace' control action. 2006-12-15 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2849 - Error msg "Not owner" returned by "SIZE in ASCII mode" is misleading. 2006-12-15 castaglia <castaglia> * src/utf8.c: Make sure that utf8_init() and utf8_free() are present for use by the linker, even if they return ENOSYS. 2006-12-15 castaglia <castaglia> * lib/getopt.c: Make sure to reference the gettext() function only when NLS support has been requested. Otherwise, confusing linker errors result. 2006-12-15 castaglia <castaglia> * src/timers.c: Add timer tracing. 2006-12-15 castaglia <castaglia> * include/compat.h, include/timers.h: Compatibility macros should all be collected in compat.h. 2006-12-14 castaglia <castaglia> * locale/Makefile.in: Using the --sort-by-file option when generating message catalogs. 2006-12-14 castaglia <castaglia> * modules/mod_delay.c: Move a lot of the debug logging in mod_delay out of proftpd's main error log into the TraceLog using tracing. 2006-12-14 castaglia <castaglia> * src/inet.c: Use tracing to log when we have successfully bound an address/port to a socket. 2006-12-14 castaglia <castaglia> * configure: Updated configure. 2006-12-14 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in: The utilities (ftptop, ftpwho, etc) also need to be linked with libintl, if NLS support is enabled and libintl is present. 2006-12-13 castaglia <castaglia> * NEWS, contrib/mod_radius.c, doc/contrib/mod_radius.html: Bug#2856 - Support for RADIUS NAS-Identifier attribute. 2006-12-13 castaglia <castaglia> * configure: Updated configure. 2006-12-13 castaglia <castaglia> * configure.in: Better checking for the required libintl support when --enable-nls is selected. If the requisite functions (e.g. bindtextdomain(), gettext()) aren't found in libintl, then libc is checked. If not there either, then configure will abort. 2006-12-13 castaglia <castaglia> * modules/mod_ls.c: Use strcoll(3) both when NLS is enabled and when strcoll(3) is actually present. 2006-12-13 castaglia <castaglia> * modules/mod_lang.c: Make sure that mod_lang can compile if libintl support is absent. 2006-12-13 castaglia <castaglia> * src/utf8.c: Make sure utf8.c can compile and run, even when iconv support is lacking. 2006-12-12 castaglia <castaglia> * doc/modules/mod_delay.html: Typo. 2006-12-12 castaglia <castaglia> * include/version.h: Back to CVS mode, for the next RC release. 2006-12-12 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2006-12-12 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.3.1rc1 release. 2006-12-12 castaglia <castaglia> * RELEASE_NOTES: Finish polishing up these release notes. 2006-12-12 castaglia <castaglia> * NEWS, src/ctrls.c: Bug#2867 - Local authorized user buffer overflow in Controls request handling. 2006-12-11 castaglia <castaglia> * src/var.c: Handle the case where the retrieved variable is NULL. 2006-12-11 castaglia <castaglia> * modules/mod_ls.c: More pedantic checks for NULL pointers. 2006-12-11 castaglia <castaglia> * contrib/mod_sql.c: Use pr_log_debug() to handle cases where the database-specific SQL backend module is chosen, as a SQLLogFile may not have been opened at the time of backend selection. 2006-12-11 castaglia <castaglia> * doc/howto/TLS.html: Add a mod_tls FAQ about linker errors related to libdl. 2006-12-11 castaglia <castaglia> * modules/mod_core.c: More safety checking of possibly NULL return values. 2006-12-11 castaglia <castaglia> * modules/mod_core.c: Move the check for a NULL path earlier, before we actually try to use path by calling pr_fsio_fstat() on it. 2006-12-11 castaglia <castaglia> * src/log.c: Handle a possible return value of NULL from localtime(3). 2006-12-11 castaglia <castaglia> * src/fsio.c: Check for NULL return values from strdup(3). 2006-12-11 castaglia <castaglia> * src/dirtree.c: Paranoid checks for NULL pointers, to ensure we don't accidentally pass them to library functions (e.g. strstr(3) or substr(3)). 2006-12-11 castaglia <castaglia> * modules/mod_ls.c, modules/mod_site.c, src/fsio.c, src/trace.c: Off by one. 2006-12-11 castaglia <castaglia> * lib/glibc-glob.c: Paranoid null pointer check. Useful, since we do use the ALTDIRFUNC flag. 2006-12-11 castaglia <castaglia> * src/fsio.c: Make sure pr_fs_dircat() doesn't attempt to operate on NULL pointers. 2006-12-11 castaglia <castaglia> * modules/mod_log.c: More insurance that a possible NULL value isn't passed to a library call, e.g. strftime(3). 2006-12-11 castaglia <castaglia> * modules/mod_log.c: Ensure we don't inadvertently attempt to lookup a NULL environment variable name, or copy a NULL environment variable value. 2006-12-11 castaglia <castaglia> * src/trace.c: Paranoid check for improper indices into the allocated buffer. 2006-12-11 castaglia <castaglia> * src/support.c: Ensure that we don't accidentally go past the end of the allocated array. 2006-12-11 castaglia <castaglia> * modules/mod_site.c: Another possible negative array index catch. 2006-12-11 castaglia <castaglia> * modules/mod_ls.c: Catch another possible situation where the index used may inadvertently be -1. 2006-12-11 castaglia <castaglia> * src/fsio.c: Pedantically fix some edge cases where an index of -1 might accidentally be used. 2006-12-07 castaglia <castaglia> * src/main.c: I think that the majority of sites don't use Classes so much, so move the log message about connections from unknown classes up a few debug log levels. 2006-12-07 castaglia <castaglia> * modules/mod_ls.c: If sorting of directory listings by file name is requested, and NLS support is enabled, be sure to use the locale-sensitive strcoll(3) function for comparison, rather than strcmp(3). 2006-12-06 castaglia <castaglia> * configure: Updated configure. 2006-12-06 castaglia <castaglia> * config.h.in, configure.in, include/conf.h: NLS support requires checking for the locale.h header, and including it if necessary. 2006-12-06 castaglia <castaglia> * doc/howto/DisplayFiles.html: Renamed DisplayFirstChdir to DisplayChdir, and added mention of the new DisplayFileTransfer. 2006-12-06 castaglia <castaglia> * include/display.h, src/display.c: Add the ability to display files via filehandles, using pr_display_fh(), in addition to displaying files via paths using pr_display_file(). Why would we want pr_display_fh()? Many sites, especially those with lots of users, like DisplayLogin, but they also want to chroot their users. The handling of DisplayLogin could be changed to open a filehandle prior to the chroot, if necessary, and thus continue to display a file whilst allowing chrooted users. That's the goal, anyway. 2006-12-06 castaglia <castaglia> * src/display.c: Use tracing, rather than debug level 10, for logging about unresolved variables in Display files. 2006-12-06 castaglia <castaglia> * src/trace.c: Add a default trace channel for logging from the Variables API layer. 2006-12-06 castaglia <castaglia> * lib/sstrncpy.c: Include the library support header libsupp.h, at least, since that is what its purpose is. 2006-12-06 castaglia <castaglia> * lib/sstrncpy.c: No need to pull in all of proftpd's configuration for sstrncpy(). 2006-12-05 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c: More updates to the current APIs. 2006-12-05 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_wrap2/mod_wrap2.c: Updating mod_ban, mod_wrap2 to use newer module API names and macros. 2006-12-05 castaglia <castaglia> * include/log.h: Use GCC pragmas for checking callers of pr_log_writefile() as well. 2006-12-05 castaglia <castaglia> * modules/mod_ls.c: Since the sendline() arguments were giving us such trouble, I decided to make use of GCC's attribute pragma to warn about printf-like functions, as is done in other places in the proftpd code (e.g. the Response API header). 2006-12-05 castaglia <castaglia> * src/support.c: Typo. 2006-12-05 castaglia <castaglia> * src/trace.c: Add 'data' as one of the built-in trace channel names. 2006-12-05 castaglia <castaglia> * contrib/mod_tls.c: Add some comments reminding me why I see gibberish in the debug logging, depending on the mod_tls configuration. 2006-12-04 castaglia <castaglia> * contrib/mod_tls.c: Rather than logging when CRLs have not been configured, log when CRLs *are* present and being used. 2006-12-04 castaglia <castaglia> * contrib/mod_tls.c: More paranoia. Also some minor style changes. 2006-12-04 castaglia <castaglia> * contrib/mod_tls.c: Increase the size of the buffer used to log X509 names from the client cert to 1KB If the client certificate cannot be verified because of an invalid purpose, log the purposes of the client certificate. 2006-12-04 castaglia <castaglia> * contrib/mod_tls.c: X509_STORE_CTX_init() did not return a value in versions of OpenSSL prior to 0.9.7. Also conditionalize the use of the tls_crypto_device variable as per supporting OpenSSL version. 2006-12-04 castaglia <castaglia> * modules/mod_ls.c: Correct one case where sendline() was being called with two format parameters but only one argument (led to garbage being sent to client in directory listing). Also, make sure that all callers of sendline() use NULL as the last argument, as is proper for any variadic function. 2006-12-04 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2862 - NLST / returns a listing of the current directory. 2006-12-04 castaglia <castaglia> * modules/mod_ls.c: More paranoia. Make sure that the length returned from readlink() isn't too large for our buffers. 2006-12-04 castaglia <castaglia> * src/support.c: More defensive checking of input arguments, in pr_memscrub() and sstrcat(). 2006-12-04 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2863 - LIST of nonexistent file causes RST on data channel. As with a similar issue with the NLST command, make sure the data channel is opened before closing it, lest the client receive a RST on their end of the data channel. 2006-12-04 castaglia <castaglia> * locale/Makefile.in: Be more specific about the language support right now: en_US instead of en. 2006-12-02 castaglia <castaglia> * RELEASE_NOTES: More release notes. 2006-12-02 castaglia <castaglia> * doc/contrib/mod_sql.html: Document the SQLOptions directive. 2006-12-02 castaglia <castaglia> * locale/Makefile.in: Don't forget to include the step that actually compiles a .po into a machine-readable .mo file. The .mo file is what will be installed into the locale/ directory, and used by the gettext library. 2006-12-02 castaglia <castaglia> * modules/mod_lang.c: Call bindtextdomain(3), using the configured LangPath (or PR_LOCALE_DIR if not configured), in order to use the translated message catalogs for proftpd there. 2006-12-02 castaglia <castaglia> * RELEASE_NOTES: More documentation for the release notes. 2006-12-02 castaglia <castaglia> * configure: Updating configure. 2006-12-01 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in: Only try to build the locale-related message catalogs etc if the --enable-nls configure option is used. 2006-12-01 castaglia <castaglia> * RELEASE_NOTES: Start adding more substance to the release notes, in preparation for a release. 2006-12-01 castaglia <castaglia> * locale/Makefile.in: Make errors with creating translation catalogs non-fatal during the build process. 2006-12-01 castaglia <castaglia> * locale/Makefile.in, locale/files.txt: More work on the Makefile for generating the template message catalog for translation. 2006-11-30 castaglia <castaglia> * contrib/ftpquota: If opening a quota table for displaying records only, open the table in read-only mode, rather than read-append mode. 2006-11-30 castaglia <castaglia> * src/ftpdctl.c: Return a value, since the function definition requires it. 2006-11-29 castaglia <castaglia> * contrib/mod_radius.c: Make sure that the attribute length for UIDs and GIDs does not exceed the size of the variable used for holding the UID and GID. 2006-11-29 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2860 - Failure to check for data length in mod_tls could lead to remote buffer overwriting. (Also add entry for Bug #2858.) 2006-11-29 castaglia <castaglia> * contrib/mod_tls.c: Prevent some possible NULL pointer dereferences by checking for tls_pkey before using it. Use root privileges when checking for the existence of certificate and key files, during the config handler runs. These files are opened with root privs later in the module, so the checks for the existence should also use root privs. 2006-11-29 castaglia <castaglia> * contrib/mod_radius.c: Fix typo in declaration of static MD5_Update() function. Also add paranoid check for size of attribute length, in RADIUS packet, which exceeds the maximum size of the data type. 2006-11-28 jwm <jwm> * src/support.c: use the version that was released as part of 1.3.0a; these integer "overflows" aren't exploitable, so there is no prophylactic difference 2006-11-27 jwm <jwm> * src/support.c: Bug #2858 - CVE-2006-5815: remote code execution in ProFTPD 2006-11-17 jwm <jwm> * src/main.c: - avoid passing a NULL pointer to pr_log_pri() as it can causes segfaults on some platforms. - make the 'invalid CommandBufSize' error message a litle clearer 2006-11-01 castaglia <castaglia> * lib/glibc-glob.c: Catch a few cases, from code borrowed from glibc, where the return value from realloc(3) was not being checked to see if it's NULL before using it. 2006-11-01 castaglia <castaglia> * lib/sstrncpy.c, src/support.c, utils/misc.c: Prevent sstrcat() and sstrncpy() from working on buffers if the length argument is zero. 2006-11-01 castaglia <castaglia> * modules/mod_ls.c: Since readlink(2) is not guaranteed to NUL-terminate the provided buffer, we need to save space for the NUL terminator. 2006-11-01 castaglia <castaglia> * src/netio.c: Require that callers of pr_netio_gets() and pr_netio_telnet_gets() specify a non-zero buffer length. 2006-11-01 castaglia <castaglia> * lib/pwgrent.c, modules/mod_auth_file.c: Check if realloc(3) returned NULL or not before blindly assigning the return value to our pointer. 2006-10-31 castaglia <castaglia> * src/main.c: Fix an issue where the cmd_buf_size variable, for the size of the buffer used for reading FTP commands sent by clients, was not being properly set to the size configured via the CommandBufferSize directive. 2006-10-30 castaglia <castaglia> * doc/howto/SQL.html: Add an example of using Python to generate an OpenSSL-encoded mod_sql password string. 2006-10-25 castaglia <castaglia> * src/ftpdctl.c: Add stub for pr_trace_msg(), so that linking ftpdctl does not fail. 2006-10-24 castaglia <castaglia> * src/event.c: Allocate a larger event pool (ref Bug #2850). 2006-10-24 castaglia <castaglia> * NEWS, src/pool.c: Bug#2850 - Small event pool allocation on 64-bit machine leads to segfault on startup. See the bug report for an excellent analysis of the issue. 2006-10-24 castaglia <castaglia> * src/ctrls.c, src/event.c: Add tracing of when control action handlers and event handlers are registered and unregistered. 2006-10-24 castaglia <castaglia> * contrib/mod_ban.c: Update the mod_ban module to be better behaved as a shared module. 2006-10-24 castaglia <castaglia> * src/trace.c: Be sure to set the trace table pointer to NULL after clearing the pool from which it was allocated. 2006-10-24 castaglia <castaglia> * contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in: Updated mod_wrap2 to be better behaved when compiled as a shared module. 2006-10-20 jwm <jwm> * contrib/mod_ldap.c: add much more extensive debugging output 2006-10-13 castaglia <castaglia> * src/parser.c: Treat a trailing LF as the eol marker; no need to treat any CRs before that LF as eol markers. 2006-10-13 castaglia <castaglia> * src/parser.c: Typo. 2006-10-13 castaglia <castaglia> * src/parser.c: If we don't find an end-of-line marker (LF or CRLF) in the line of configuration data read in, issue a warning, so that the admin knows that any configuration error may be caused by data truncation. 2006-10-11 castaglia <castaglia> * doc/modules/mod_facl.html: Add small doc for the mod_facl module. 2006-10-11 castaglia <castaglia> * RELEASE_NOTES, modules/mod_facl.c: Add a runtime directive for disabling mod_facl, if needed. 2006-10-05 castaglia <castaglia> * src/parser.c: Style cleanup. Sprinkle more "pr_signals_handle()" around within the while loops, too. 2006-10-05 castaglia <castaglia> * NEWS, src/parser.c: Bug#2848 - Unable to properly parse config files using Windows-style line endings. 2006-10-04 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2847 - HiddenStores files not properly removed if data transfer times out. 2006-09-29 castaglia <castaglia> * RELEASE_NOTES: A little more about UseIPv6, and the command-line options. 2006-09-29 castaglia <castaglia> * NEWS, RELEASE_NOTES, include/netaddr.h, modules/mod_core.c, src/bindings.c, src/dirtree.c, src/inet.c, src/main.c, src/netacl.c, src/netaddr.c, src/proftpd.8.in: Bug#2817 - Ability to disable IPv6 support at runtime. 2006-09-27 castaglia <castaglia> * src/main.c: Reset the handler for the SIGUSR2 signal (and NOT the SIGHUP signal) in the sig_evnt() handler. 2006-09-18 castaglia <castaglia> * configure: Updating configure. 2006-09-18 castaglia <castaglia> * Makefile.in, configure.in, locale/Makefile.in: Renaming the po/ directory to locale/. 2006-09-14 castaglia <castaglia> * NEWS, src/fsio.c: Bug#2842 - Filesystem statcache is not correctly caching return value of stat(). 2006-09-13 castaglia <castaglia> * configure: Updated configure. 2006-09-13 castaglia <castaglia> * Makefile.in, configure.in, po/Makefile.in: Start of a po/Makefile, for building .po files (localised message strings). Part of the support for RFC2640. 2006-09-12 castaglia <castaglia> * modules/mod_auth.c: If MaxLoginAttempts is exceeded, mention in the generated log message that we are refusing the client's connection. 2006-09-12 castaglia <castaglia> * doc/contrib/mod_sql.html: Remove mention of SQLHomedirOnDemand, as that directive is now deprecated. 2006-09-12 castaglia <castaglia> * NEWS, RELEASE_NOTES: There is no 'SQLWhereClause' directive. Oops. 2006-09-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2828 - Support variables in SQL Where directives. 2006-09-11 castaglia <castaglia> * doc/contrib/mod_sql.html: Document the syntax for refering to environment variables in a SQLNamedQuery. 2006-09-11 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2799 - SQLNamedQuery should support environment variables. 2006-09-11 castaglia <castaglia> * doc/contrib/mod_tls.html: Add documentation for the new TLSPassPhraseProvider directive. 2006-09-11 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#2756 - Support for TLSPassPhraseProvider. 2006-09-11 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2839 - ProFTPD seems to re-read the file two times in RETR command. 2006-09-11 castaglia <castaglia> * configure: Updating configure. 2006-09-11 castaglia <castaglia> * Make.rules.in, Makefile.in, config.h.in, configure.in: Add support for a PR_LOCALE_DIR, which will contain the localised string files for different locales. The location of this directory can be set, at compile-time, using the --datadir configure option. Run-time configuration of this path is done using mod_lang's LangPath directive. 2006-09-09 castaglia <castaglia> * README.modules, doc/modules/mod_lang.html: Add mostly-done documentation for mod_lang module, and mention mod_lang in the README.modules file. (Note that I still need to write README.NLS.) 2006-09-09 castaglia <castaglia> * configure: Updated configure. 2006-09-09 castaglia <castaglia> * RELEASE_NOTES, configure.in, modules/mod_lang.c: Adding mod_lang to the mix, for supporting the LANG command, as part of implementing RFC2640. 2006-09-08 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c, src/main.c: Bug#2837 - Defines improperly persist across daemon restarts. 2006-09-08 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#2835 - Group quotas not honored for supplemental group membership. 2006-09-07 castaglia <castaglia> * RELEASE_NOTES: Typo. 2006-09-07 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2825 - SSL/TLS CRLs are not working properly. 2006-09-07 castaglia <castaglia> * contrib/mod_ldap.c: Check for PR_USE_OPENSSL as well as HAVE_OPENSSL. 2006-09-07 castaglia <castaglia> * contrib/mod_sql.c: Correct the checks for HAVE_OPENSSL and PR_USE_OPENSSL in mod_sql. 2006-09-07 castaglia <castaglia> * contrib/mod_radius.c: Make the ordering of OpenSSL header inclusion a little more legible. 2006-09-07 castaglia <castaglia> * contrib/mod_radius.c: When proftpd has been compiled to use OpenSSL, then mod_radius has no need for using it's own MD5 routines; we can use those from OpenSSL instead. 2006-09-07 castaglia <castaglia> * configure: Updated configure. 2006-09-07 castaglia <castaglia> * configure.in: Make sure the USE_OPENSSL macro is set if mod_tls is compiled in. 2006-09-07 castaglia <castaglia> * src/bindings.c: Style changes; no functional change. 2006-09-07 castaglia <castaglia> * NEWS: Added mod_wrap2 to the distro. 2006-09-07 castaglia <castaglia> * README.modules, RELEASE_NOTES: Updating docs for mention of mod_wrap2. Needs to fleshed out more. 2006-09-07 castaglia <castaglia> * contrib/mod_wrap2/configure: Adding configure script for mod_wrap2. 2006-09-07 castaglia <castaglia> * contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c: Adding mod_wrap2 submodules. 2006-09-06 castaglia <castaglia> * contrib/mod_wrap2/Makefile.in, contrib/mod_wrap2/configure.in, contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in: Adding mod_wrap2 to the contrib/ area. 2006-09-06 castaglia <castaglia> * doc/contrib/index.html, doc/contrib/mod_wrap2.html, doc/contrib/mod_wrap2_file.html, doc/contrib/mod_wrap2_sql.html: Adding documentation for the mod_wrap2 et al modules. 2006-09-05 castaglia <castaglia> * include/modules.h: The privdata structure is no longer used. 2006-08-24 castaglia <castaglia> * contrib/mod_sql.c: When determining the backend database module to use, mod_sql was using the *first* entry in the list of backends, rather than the *last*, as is documented. Updated the default behavior to properly use the last entry (which is the first module loaded). 2006-08-17 castaglia <castaglia> * modules/mod_ls.c: Fix an issue noticed by Daniel, using lftp (but not ftp). When handling an NLST command on an empty directory, lftp would receive a TCP RST from proftpd, rather than the more polite FIN. This would happen because proftpd did a lazy opening of the data connection; the connection would be opened only when proftpd, when listing the contents of the directory, encountered something to list. In the case of an empty directory, there would be nothing to list. Hence no accept(2) for the client's data connection, followed by a close() on the socket. In the TCP world, this is "slamming the connection closed", and hence the client would receive a RST -- the initial handshake was not completed before the socket was closed. The fix, then, is trivial: always open the data connection, regardless of whether there is data to be sent, when handling NLST commands. (For some reason this issue does not seem to affect the LIST command.) 2006-08-16 jwm <jwm> * contrib/mod_ldap.c: fix debug message format (thanks to mathew <meta@pobox.com>) 2006-08-09 castaglia <castaglia> * modules/mod_core.c: Prevent users from misconfiguring their servers silently by trying to use something like "<Global ~user>" in their proftpd.conf. 2006-08-04 castaglia <castaglia> * doc/howto/Limit.html: Mention that <Limit LOGIN> does not work as expected within <Directory> sections. 2006-08-02 castaglia <castaglia> * NEWS, include/options.h, src/main.c: Bug#2774 - Idle clients exhibit excessive usage of system resources. 2006-07-20 castaglia <castaglia> * RELEASE_NOTES, include/fsio.h, modules/mod_core.c, src/fsio.c: At Michael's suggestion, add a UseUTF8 directive, for run-time disabling of UTF8 support. 2006-06-29 castaglia <castaglia> * modules/mod_auth_unix.c: Not only was the persistent_passwdf variable never used, neither was the _get_ppw_info() function. 2006-06-29 castaglia <castaglia> * Makefile.in: Fix missing dependency of the `install-proftpd' target on the $(includedir). There was a dependency already on $(includedir)/proftpd -- but that is not the same. 2006-06-28 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#2809 - conf.h should be included before mysql.h in mod_sql_mysql.c. The mod_sql_postgres module was similarly updated. 2006-06-28 castaglia <castaglia> * NEWS, modules/mod_auth_file.c: Bug#2803 - mod_auth_file does not properly iterate through AuthUserFile entries. The issue was one of rewinding an already open AuthUserFile, every time pr_auth_getpwent() was called. The mod_auth_file module has been restructured to avoid this. The code was also substantially changed, removing a lot of dead code for a never-used feature (that of supporting multiple AuthUserFiles within the same server context). 2006-06-28 castaglia <castaglia> * NEWS, contrib/mod_wrap.c: Bug#2810 - Incorrect use of assignment instead of comparison in mod_wrap. 2006-06-22 castaglia <castaglia> * include/lastlog.h, src/lastlog.c: Oops. Forgot to check these files in. They're for Bug #2610. 2006-06-22 jwm <jwm> * modules/mod_ctrls.c: auth_(uid|gid)2name have become pr_auth_(uid|gid)2name 2006-06-22 castaglia <castaglia> * include/proftpd.h, modules/mod_auth_unix.c: There's absolutely no reason for the pwdfname and grpfname variables to be visible outside of mod_auth_unix. 2006-06-22 castaglia <castaglia> * modules/mod_auth_pam.c: Explicitly set the size of the authtable array. Some picky compilers apparently don't like array declarations without the size. 2006-06-20 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2807 - mod_sql processes SQLLog QUIT query twice. 2006-06-16 castaglia <castaglia> * modules/mod_auth_unix.c: Remove unused variables and simplify the code. 2006-06-16 castaglia <castaglia> * contrib/mod_ldap.c: auth_check() -> pr_auth_check() 2006-06-16 castaglia <castaglia> * contrib/mod_sql.c: Style cleanup. 2006-06-16 castaglia <castaglia> * configure: Updating configure. 2006-06-16 castaglia <castaglia> * config.h.in, configure.in, src/main.c: Enhance the -V output to include the CFLAGS, LDFLAGS, and LIBS used to compile proftpd. 2006-06-16 castaglia <castaglia> * contrib/mod_site_misc.c: Updating mod_site_misc to handle UTF8-encoded paths. 2006-06-16 castaglia <castaglia> * NEWS: Bug#2626 - "ERROR" macro collision can cause compiler errors on HP-UX. 2006-06-16 castaglia <castaglia> * Makefile.in: There is no real need to clean the include/ directory. 2006-06-16 castaglia <castaglia> * contrib/mod_ban.c, contrib/mod_ctrls_admin.c, contrib/mod_ifsession.c, contrib/mod_ldap.c, contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_ratio.c, contrib/mod_readme.c, contrib/mod_rewrite.c, contrib/mod_site_misc.c, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, contrib/mod_tls.c, contrib/mod_wrap.c: Updating contrib modules to use PR_ERROR, PR_DECLINED, and PR_HANDLED. 2006-06-16 castaglia <castaglia> * contrib/mod_load/mod_load.c.in: Update mod_load to use PR_HANDLED. 2006-06-16 castaglia <castaglia> * modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_pam.c, modules/mod_auth_unix.c, modules/mod_cap.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_delay.c, modules/mod_dso.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c: Updating the core modules to use the PR_ERROR, PR_DECLINED, and PR_HANDLED macros. Also includes style changes. 2006-06-16 castaglia <castaglia> * doc/mod_sample.c: Updating the sample module to reflect ongoing changes in the core code. 2006-06-16 castaglia <castaglia> * modules/mod_auth.c: To enable lastlog support requires --with-lastlog, not --enable-lastlog. 2006-06-16 castaglia <castaglia> * include/compat.h, include/dirtree.h, include/modules.h: Start work towards Bug #2626 -- renaming the ERROR macro to PR_ERROR, to avoid namespace collisions on some platforms (i.e. HP-UX). The DECLINED and HANDLED macros will be similarly renamed to PR_DECLINED and PR_HANDLED. Compatibility redefines in compat.h will help to make the transition transparent (hopefully). 2006-06-16 castaglia <castaglia> * src/main.c: Forgot a few places where SIG_REHASH was renamed to SIG_RESTART. 2006-06-16 castaglia <castaglia> * configure: Updating configure. 2006-06-16 castaglia <castaglia> * include/proftpd.h, src/main.c: Remove all the old "struct rehash" callback stuff. Replace mention of "rehash" with "restart". 2006-06-16 castaglia <castaglia> * include/proftpd.h, src/main.c: Remove the deprecated pr_rehash_register_handler() function. This functionality is now available via the Events API, by registering an event handler for the 'core.restart' event. 2006-06-16 castaglia <castaglia> * Make.rules.in, Makefile.in, NEWS, configure.in, include/Makefile.in: Bug#2719 - ProFTPD should install its header files into the installation location. 2006-06-15 castaglia <castaglia> * include/.cvsignore: Preparing to ignore the generated Makefile that will appear in the include/ directory. 2006-06-15 castaglia <castaglia> * configure: Updating configure. 2006-06-15 castaglia <castaglia> * Make.rules.in, NEWS, RELEASE_NOTES, config.h.in, configure.in, include/conf.h, modules/mod_auth.c, src/main.c: Bug#2610 - Support for logging to /var/log/lastlog. 2006-06-15 castaglia <castaglia> * src/dirtree.c: Change fixup_globals() so that it operates on the same list as given to fixup_servers(), rather than using the global server_list variable. (There are cases where the two lists may not be the same.) 2006-06-15 castaglia <castaglia> * include/pool.h, src/pool.c: Removing unused pool code. 2006-06-15 castaglia <castaglia> * doc/contrib/mod_sql.html: Update the mod_sql docs, as per changes for Bug #2784. Remove the list of deprecated directives from ancient mod_sql versions. 2006-06-15 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql_mysql.c: Bug#2784 - Ability to specify MySQL Unix domain socket path. 2006-06-15 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_core.c: Bug#2798 - MDTM should return time in GMT. 2006-06-14 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2687 - Support for more efficient group table schema. 2006-06-14 castaglia <castaglia> * src/utf8.c: Use "C" as a default local character set, if we cannot determine a better one. 2006-06-14 castaglia <castaglia> * src/utf8.c: Add a trace message of the character set to which UTF8 conversion will be done. 2006-06-14 castaglia <castaglia> * src/netaddr.c: Use separate log messages for the cases where getaddrinfo(3) and getnameinfo(3) fail, to differentiate between syscall errors (in which case, log errno) and errors with the functions themselves (in which case, use gai_strerror(3)). 2006-06-14 castaglia <castaglia> * NEWS, src/log.c: Bug#2801 - Error compiling proftpd on NetBSD 3.0/sparc64. 2006-06-14 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2800 - free_proc_title() in developer build tries to free strings from pool allocated by mod_tls. 2006-06-13 castaglia <castaglia> * src/scoreboard.c: Silence compiler warning (seen under --enable-devel) by renaming variable. 2006-06-12 castaglia <castaglia> * doc/howto/DSO.html: Update example Makefile to include DESTDIR. 2006-06-12 castaglia <castaglia> * contrib/mod_load/Makefile.in: Make sure that mod_load's Makefile honors DESTDIR. Thanks to Ken Zalewski for pointing this out. 2006-06-09 castaglia <castaglia> * doc/contrib/mod_sql.html: Typo. 2006-06-09 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes. 2006-06-09 castaglia <castaglia> * NEWS, contrib/mod_ctrls_admin.c, doc/contrib/mod_ctrls_admin.html, include/scoreboard.h, modules/mod_core.c, src/scoreboard.c: Bug#2797 - Add ability to force cleaning the scoreboard. 2006-06-08 castaglia <castaglia> * contrib/mod_sql.c: Restore the use of CF_MERGEDOWN_MULTI on SQLLog and SQLShowInfo directives, but only when mod_ifsession is in use. 2006-06-08 castaglia <castaglia> * contrib/mod_sql.c: No need to set CF_MERGEDOWN_MULTI on directives that cannot appear in <Directory> sections, i.e. SQLLog and SQLShowInfo. 2006-06-08 castaglia <castaglia> * configure: Updating configure. 2006-06-08 castaglia <castaglia> * configure.in: Fixing typo in handling of --enable-devel=profile configure option. 2006-06-07 castaglia <castaglia> * doc/howto/Chroot.html: Bug#1323: DefaultRoot not working with nfs root squash + protected directories. 2006-05-26 castaglia <castaglia> * configure: Updated configure script. 2006-05-26 castaglia <castaglia> * modules/mod_core.c: Modify mod_core for handling UTF8 paths, and mark it for i18n. 2006-05-26 castaglia <castaglia> * config.h.in, configure.in, include/fsio.h, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/fsio.c, src/main.c, src/netio.c: Marking more places in the source for gettext manipulation. Added two new functions, pr_fs_decode_path() and pr_fs_encode_path(), which are to be used for encoding to/from UTF8 paths (or not). 2006-05-26 castaglia <castaglia> * src/trace.c: Change the format of the TraceLog: The log entry does not need to contain any server information. 2006-05-26 castaglia <castaglia> * src/table.c, src/trace.c: Miscellaneous improvements: when dumping a table, include the length of the value data (for cases where the value is binary, and not a string); when adding new trace channels, make a copy of the channel name, as callers will not do so. 2006-05-26 castaglia <castaglia> * NEWS: Correct a bug number. 2006-05-25 castaglia <castaglia> * configure: Updating configure. 2006-05-25 castaglia <castaglia> * Make.rules.in, config.h.in, configure.in, include/conf.h, include/dirtree.h, include/utf8.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/data.c, src/help.c, src/main.c, src/utf8.c: Adding UTF8 encoding/decoding functions. Marking source, preparing it for use with the gettext utilities. Part of the work towards making the proftpd source i18n/l10n ready. 2006-05-25 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_log.c: Bug#2793 - LogFormat variable for the ProFTPD version. 2006-05-25 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_xfer.c: Bug#2775 - Support for DisplayFileTransfer directive. 2006-05-24 castaglia <castaglia> * README.AIX: Updating the AIX notes with remarks about gcc versions which do and don't work. 2006-05-23 castaglia <castaglia> * NEWS, modules/mod_ctrls.c: Bug#2792 - ProFTPD fails after SIGHUP signal when Controls support is enabled. 2006-05-23 castaglia <castaglia> * src/dirtree.c: Style tweaks. Add handling of signals to a while() loop. 2006-05-23 castaglia <castaglia> * configure: Updating configure script. 2006-05-23 castaglia <castaglia> * configure.in: Fix the --without-getopt configure option so that it properly disables checks for the getopt_long() function and getopt.h header, in addition to disabling the check for the getopt() function. This was causing a problem on FreeBSD 4.x builds, where the libgnugetopt package would install a getopt.h header (picked up by proftpd's configure script) that had a conflicting redefinition of the getopt struct. 2006-05-23 castaglia <castaglia> * configure.in: Fix a bug, reported via the Debian bug system, where the paths from which proftpd would look for shared libraries included the --sbindir. The issue was the use of the -rpath linker parameter when linking the proftpd executable; it is not necessary. Loading of DSO modules does not seem to be affected by the removal of that -rpath. 2006-05-22 castaglia <castaglia> * contrib/mod_tls.c: Remove Perlism causing a broken module. Add handling of signals to a potentially long-running while loop. 2006-05-22 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2514 - Trouble with mod_tls and DSA certificates. 2006-05-19 castaglia <castaglia> * src/netaddr.c: Fix some compiler warnings, and a syntax error. 2006-05-18 castaglia <castaglia> * src/trace.c: If pr_trace_msg() is used with an unknown channel, return -1 rather than 0. 2006-05-18 castaglia <castaglia> * configure: Updating configure script. 2006-05-18 castaglia <castaglia> * Make.rules.in, NEWS, RELEASE_NOTES, config.h.in, configure.in, contrib/mod_ctrls_admin.c, include/conf.h, include/trace.h, modules/mod_core.c, src/main.c, src/response.c, src/trace.c: Bug#2506 - Better ability to configure what sort of debug output to generate. 2006-05-18 castaglia <castaglia> * src/netaddr.c: Add debug logging (level 10) of when the ACL comparison functions pr_netaddr_cmp() and pr_netaddr_ncmp() are comparing an IPv4 address against an IPv4-mapped IPv6 address. 2006-05-17 castaglia <castaglia> * NEWS, README.IPv6, src/netacl.c, src/netaddr.c: More work on Bug#2785. 2006-05-15 castaglia <castaglia> * doc/howto/DSO.html: Make note of some of the errors you might encounter when using DSO modules. 2006-05-15 castaglia <castaglia> * NEWS, README.IPv6, README.PAM, README.classes, RELEASE_NOTES, modules/mod_core.c, modules/mod_xfer.c, src/netacl.c: Getting the restored SourceForge devel CVS repository back up to sync, after their hard disk failure. Joy. 2006-05-12 castaglia <castaglia> * README.AIX: Document that some versions of AIX have sendfile issues. 2006-05-05 castaglia <castaglia> * contrib/mod_tls.c: Clean up the handling of the TLSCACertificatePath directive. 2006-04-21 castaglia <castaglia> * contrib/mod_quotatab.c, doc/contrib/mod_quotatab.html: Forgot to add the description for the QuotaExcludeFilter directive. 2006-04-21 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_quotatab.c, contrib/mod_quotatab.h, doc/contrib/mod_quotatab.html, doc/howto/Quotas.html: Bug#2713 - Ability to check a user's existing disk bytes/files usage and update tally accordingly. 2006-04-21 castaglia <castaglia> * contrib/mod_sql.h: Update the mod_sql header. Crufty information, and a typo. 2006-04-21 castaglia <castaglia> * include/feat.h, src/feat.c: Change the way the Feat API stores features to be listed, from using an array to using a table. This makes it much easier to remove features from the listing. 2006-04-21 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Expanding the HOOKs exposed by mod_sql, so that other contrib modules can run their own SQL statements without having to reinvent mod_sql's wheel. 2006-04-21 castaglia <castaglia> * NEWS, README.modules, RELEASE_NOTES, contrib/mod_ban.c, doc/contrib/mod_ban.html: Adding mod_ban. 2006-04-20 castaglia <castaglia> * NEWS, src/inet.c: Bug#2733 - IP TOS not being set for data transfers. 2006-04-20 castaglia <castaglia> * src/parser.c: Adding some sanity checks for NULL pointers, pointed out by Coverity scans. Also remove some unnecessary conditionals. 2006-04-20 castaglia <castaglia> * modules/mod_log.c: "writeable" -> "writable". 2006-04-20 castaglia <castaglia> * modules/mod_xfer.c: Clean up dead code spotted by Coverity scan. 2006-04-20 castaglia <castaglia> * modules/mod_auth.c: Clean up dead code spotted by Coverity scan. Also fixup some formatting issues while I'm here. 2006-04-20 castaglia <castaglia> * modules/mod_auth_file.c, src/data.c: Clean up dead code spotted by Coverity scan. 2006-04-20 castaglia <castaglia> * contrib/mod_sql.c: Clean up dead code spotted by Coverity. 2006-04-19 castaglia <castaglia> * RELEASE_NOTES, modules/mod_xfer.c: Get the ball rolling on deprecating HiddenStor, in favor of HiddenStores. 2006-04-19 castaglia <castaglia> * configure: Updating configure. 2006-04-19 castaglia <castaglia> * NEWS, configure.in: As part of addressing Bug #2447, make use of the --enable-openssl autoconf option automatically add libssl and libcrypto to the library list. 2006-04-19 castaglia <castaglia> * NEWS, config.h.in, configure.in, contrib/mod_ldap.c, contrib/mod_sql.c, src/main.c: Bug#2447 - HAVE_OPENSSL should be managed in configure. 2006-04-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, modules/mod_log.c: Bug#2651 - LogFormat should support variable for logging the response message. 2006-04-17 castaglia <castaglia> * doc/contrib/mod_quotatab.html, doc/contrib/mod_quotatab_radius.html: Update mod_quotatab docs with links to RADIUS submodule. 2006-04-17 castaglia <castaglia> * NEWS, README.modules, RELEASE_NOTES, contrib/mod_quotatab_radius.c, contrib/mod_radius.c, doc/contrib/mod_quotatab_radius.html: Bug#2627 - Support for RADIUS quotatab module. 2006-04-17 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Mention in NEWS that CreateHome should be used instead of SQLHomedirOnDemand. Mark the SQLHomedirOnDemand config handler as deprecated in the mod_sql source. 2006-04-17 castaglia <castaglia> * modules/mod_core.c: As per the warnings in the 1.3.0 release cycle, the Bind directive was deprecated, and is now removed. 2006-04-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2628 - SQLHomedirOnDemand should be deprecated. 2006-04-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html: Bug#2686 - Allow CCC command but still require SSL/TLS protection during authentication. 2006-04-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, doc/howto/CreateHome.html, doc/howto/index.html, modules/mod_auth.c, src/mkhome.c: Bug#2611 - CreateHome should allow non-root-owned parent directories. 2006-04-17 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html: Bug#2599 - Support for using OpenSSL "engines". 2006-04-17 castaglia <castaglia> * configure: Updating configure. 2006-04-17 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_auth_pam.c: Bug#2769 - mod_auth_pam needs a patch to allow pam_group to work. 2006-04-17 castaglia <castaglia> * NEWS, doc/modules/mod_delay.html, modules/mod_delay.c: Bug#2664 - Add 'delay info' ftpdctl action for showing DelayTable values. 2006-04-17 castaglia <castaglia> * NEWS, src/inet.c: Bug#2777 - ProFTPD does handle data sockets properly on FreeBSD 6. 2006-04-16 castaglia <castaglia> * modules/mod_xfer.c: At some point in the future, proftpd will support the MODE Z command. When that happens, mod_xfer will need to not use sendfile() if MODE Z has been requested. 2006-04-16 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2740 - TYPE command not allowed before USER/PASS, causes problem for `ftp -n'. 2006-04-16 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2654 - FEAT command should be subject to <Limit>. 2006-04-16 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2753 - CCC not closing SSL/TLS connection correctly. 2006-04-16 castaglia <castaglia> * NEWS, include/dirtree.h, include/table.h, src/dirtree.c, src/table.c: Bug#2535 - Compare directives using integer comparisons when possible to improve performance. 2006-04-16 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#2721 - mod_auth_unix does not behave properly when first in AuthOrder. 2006-04-16 castaglia <castaglia> * NEWS, modules/mod_auth_file.c, modules/mod_auth_unix.c: Bug#2714 - mod_auth_file munges AuthUserFile, AuthGroupFile records. 2006-04-16 castaglia <castaglia> * doc/howto/Debugging.html: Adding mention of the stack trace logging to the Debugging howto. 2006-04-16 castaglia <castaglia> * configure: Updating configure. 2006-04-16 castaglia <castaglia> * NEWS, RELEASE_NOTES, config.h.in, configure.in, include/options.h, src/main.c: Bug#2766 - Support for automatic stack trace if SIGSEGV is received. 2006-04-16 castaglia <castaglia> * include/version.h: Now that 1.3.0 is out, we can start on 1.3.1. 2006-04-16 castaglia <castaglia> * ChangeLog: Updating the ChangeLog. 2006-04-16 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.3.0-final. 2006-04-10 castaglia <castaglia> * lib/glibc-mkstemp.c: Fix typo in mkstemp() implementation, noted by Charles Seeger. 2006-04-08 castaglia <castaglia> * doc/howto/ConfigFile.html: Update the description of the User/Group directives to mention effective versus real privs, and how some programs report on real instead of effective privs. 2006-03-22 castaglia <castaglia> * NEWS, lib/glibc-glob.c, lib/pwgrent.c, src/fsio.c: Quell several compiler warnings: Bug#2770 - FreeBSD compiler warning that "__GLIBC__" is not defined. Bug#2771 - FreeBSD compiler warning about undeclared fgetpwent/fgetgrent functions. Bug#2772 - FreeBSD compiler warning that "_FILE_OFFSET_BITS" is not defined. 2006-03-22 castaglia <castaglia> * Make.rules.in, NEWS: Bug#2733 - libtool requires sh/bash. 2006-03-22 castaglia <castaglia> * utils/ftptop.c, utils/scoreboard.c: Minor fixes to ftptop: use snprintf(3) rather than sprintf(3), and make sure that any scoreboard path set via the -f command-line option actually exists. 2006-03-18 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2006-03-18 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec, include/version.h: Rolling up RC5 release. 2006-03-17 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2723 - mod_delay causes process to hang on OS X when proftpd exits. 2006-03-17 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes for the RC5 release. 2006-03-16 castaglia <castaglia> * README.controls, doc/howto/Controls.html: Make notes about how Controls are affected by ServerType. 2006-03-15 castaglia <castaglia> * src/main.c: We need to copy the session addresses into memory after any reverse DNS resolution is performed, not before. 2006-03-15 castaglia <castaglia> * NEWS, modules/mod_log.c, modules/mod_xfer.c, src/main.c: Bug#2765 - Child process segfaults while handling a SIGTERM. A field from a structure whose memory had been freed by the time the field was referenced was tickling the segfault. 2006-03-15 castaglia <castaglia> * modules/mod_auth.c: Remove slightly misleading (and outdated) comment. 2006-03-15 castaglia <castaglia> * NEWS, modules/mod_auth.c: Make the workaround for Bug#2717 be specific to glibc-2.3 or greater, not to Linux in general. 2006-03-15 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2717 - Wrong timestamp in logs for chrooted processes. 2006-03-14 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2764 - REST command does not return an error for negative numbers. 2006-03-12 castaglia <castaglia> * include/privs.h: Remove some duplicating logging in the PRIVS_RELINQUISH macro definition. 2006-03-11 castaglia <castaglia> * include/version.h: Forgot to change the status back to "CVS", for now. 2006-03-09 castaglia <castaglia> * doc/contrib/mod_sql.html: Add description of the SQLBackend directive. 2006-03-09 castaglia <castaglia> * configure: Updating configure. 2006-03-09 castaglia <castaglia> * configure.in: Updating changes made for fixing Bug#2759 so that the libsupp library can be found. 2006-03-08 castaglia <castaglia> * configure: Updating configure. 2006-03-08 castaglia <castaglia> * NEWS, configure.in: Bug#2759 - Adding --with-includes to configure can cause problems when building with other packages. 2006-03-06 castaglia <castaglia> * doc/howto/NAT.html: Add a description of what can happen if the configured PassivePorts range is too small. 2006-03-06 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec: Bug#2757 - Add support for quota modules to RPM spec. 2006-03-01 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2006-03-01 castaglia <castaglia> * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.3.0rc4. 2006-02-23 castaglia <castaglia> * doc/rfc/rfc4217.txt: The old IETF Draft which defined FTPS was finally upgraded to a full-fledged RFC in Nov 2005, as RFC4217. 2006-02-23 castaglia <castaglia> * doc/howto/SQL.html: Added FAQ about libz linker errors to SQL howto. 2006-02-21 castaglia <castaglia> * modules/mod_delay.c: Add more debug logging, level 10, for when mod_delay mmaps or munmaps. This is for tracking down Bug #2723. Also handle the case where munmap(2) fails. 2006-02-21 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2752 - FEAT reply not RFC 2389 compliant. 2006-02-08 castaglia <castaglia> * NEWS, src/data.c: Bug#2746 - Data transfer function does not return error condition in case of read errors. Now the pr_data_xfer() loop will error out if there is an error returned by pr_netio_read(), just as is already done if there is an error returned by pr_netio_write(). 2006-01-11 castaglia <castaglia> * doc/howto/AuthFiles.html, doc/howto/index.html: Added the AuthFiles howto (it was referenced by the ConfigFile howto). 2006-01-04 castaglia <castaglia> * modules/mod_xfer.c: Fix a warning about an unused variable. The tcp_level variable is really only used if TCP_CORK is defined; thus it should be declared within an #ifdef TCP_CORK block. 2005-12-27 castaglia <castaglia> * RELEASE_NOTES: Mention the OSX tweaks in the Release Notes. 2005-12-27 castaglia <castaglia> * src/main.c: Initialise the session.proc_prefix string upon client connection. There was a strange edge case, involving mod_wrap-2.0.x, where proftpd was calling set_proc_title() using a NULL session.proc_prefix. GNU libc handles printfs of NULLs gracefully, but other libc implementations (e.g. Solaris) are not as forgiving; this edge case was leading to segfaults on those platforms. 2005-12-19 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2735 - Allow REST 0 in ASCII mode. 2005-12-13 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2709 - mod_sql improperly strips spaces from names, allowing for confusing authentication. 2005-12-07 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#2729 - Authorative PAM authentication doesn't work. 2005-12-05 castaglia <castaglia> * RELEASE_NOTES, doc/howto/Quotas.html, doc/howto/index.html: Adding Quotas howto to doc/ area. 2005-12-02 jwm <jwm> * contrib/mod_ldap.c: some overdue cleanup: - use braces everywhere. honestly, i don't know why i wrote code this way. - now that we're using strtoul() sanity checking on default [UG]IDs, we don't need the isdigit() checking - use get_param_ptr for single-argument directives instead of find_config() - if a directive is present (get_param_ptr() returns non-NULL), assign its value to the config variable; we don't want to assume default values in the variable initialization as well as the getconf handler. 2005-12-02 jwm <jwm> * contrib/mod_ldap.c: - complain about invalid default [UG]IDs - only allocate enough arguments in the config_rec for LDAPDoAuth and LDAPDoUIDLookups to cover the arguments specified 2005-12-02 jwm <jwm> * contrib/mod_ldap.c: - remove get_param_int() usage; store values in an allocated pointer intsead - config handlers now take their directive name from c->argv[0], saving a few bytes of static strings 2005-11-29 castaglia <castaglia> * doc/contrib/mod_tls.html: Adding more specific instructions for what a TLSCertificateChainFile should contain. 2005-11-29 castaglia <castaglia> * NEWS, src/inet.c: Bug#2374 revisited, for the sake of updated Mac OSX releases. When is a regression not a regression? When it's the fault of the host system, not the application code. Sigh. 2005-11-19 castaglia <castaglia> * doc/howto/DSO.html: Adding more comments to the DSO howto, based on user feedback/questions. 2005-11-16 jwm <jwm> * contrib/mod_ldap.c: release 2.8.16 2005-11-15 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Formatting changes. 2005-11-15 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Improve the mod_quotatab doc, emphasizing the definitions of limit and tally tables. Also add HTML anchors, for easier referencing from the upcoming Quotas howto. 2005-11-14 castaglia <castaglia> * doc/contrib/mod_tls.html: Update description of AllowDotLogin TLSOption, as proftpd now will not prompt for a password if none is required. 2005-11-14 castaglia <castaglia> * NEWS, include/pr-syslog.h, lib/pr-syslog.c, src/log.c: Bug#2705 - proftpd fails to log anything to syslog after dropping privs on Solaris. Since proftpd has custom syslog routines, we can simply add an accessor function for setting the static log_facility variable. libc-based syslogging cannot do this; proftpd used libc syslog routines in the past, hence the need to call openlog() again if the facility changed. Thanks to Kostantinos Koukopoulos for the patch. 2005-11-12 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2712 - DisplayFirstChdir directive does not work. 2005-11-11 castaglia <castaglia> * NEWS, include/ctrls.h, modules/mod_ctrls.c, src/ctrls.c: Bug#2711 - Controls socket detection broken. 2005-11-10 castaglia <castaglia> * src/ctrls.c: Copy the full length of the socket path, including the terminating NUL. 2005-11-08 castaglia <castaglia> * contrib/mod_tls.c: Make the log messages generated during certificate verification a little cleaner. Also add explicit handling of the INVALID_PURPOSE error case. 2005-11-08 castaglia <castaglia> * configure: Updating configure. 2005-11-08 castaglia <castaglia> * NEWS, configure.in: Bug#2708 - configure cannot detect some headers. 2005-11-04 castaglia <castaglia> * NEWS, src/log.c: Bug#2706 - utmp/wtmp logging on NetBSD needs some tweaks. 2005-11-04 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2703 - Disk quota exceeded for small files not being triggered. 2005-10-31 castaglia <castaglia> * include/version.h: Bump version to 1.3.0rc4 (hopefully will turn out to be 1.3.0-stable). 2005-10-31 castaglia <castaglia> * ChangeLog: One more update. 2005-10-31 castaglia <castaglia> * src/fsio.c: Correct usage of pr_fsio_readlink(). 2005-10-31 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.3.0rc3 roll. 2005-10-31 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2005-10-28 castaglia <castaglia> * RELEASE_NOTES: Updating release notes. 2005-10-26 castaglia <castaglia> * src/fsio.c: Drat. Forgot to replace all occurrences of ->readlink() with pr_fsio_readlink(). 2005-10-26 castaglia <castaglia> * modules/mod_facl.c: Use direct pointer assignment rather than acl_copy_entry(); the latter is not needed. Patch supplied by Patrick McHardy. 2005-10-26 castaglia <castaglia> * src/fsio.c: When cleaning the path in pr_insert_fs(), only add a trailing path separator if the original path had one _and_ the current cleaned path does _not_ have one. Thanks to Patrick McHardy for pointing this out. 2005-10-26 castaglia <castaglia> * src/fsio.c: Patrick McHardy pointed out that in a couple of places, the FSIO API uses the readlink function pointer, registered for an fs_t, directly. However, it is not required for registered fs_ts to provide any particular FSIO function. Thus pr_fsio_readlink(), which iterates through the fs layers in order to find the first that does provide a readlink function, should be used. 2005-10-23 castaglia <castaglia> * contrib/mod_sql.c: Fix a segfault expanding the '%h' sequence for an SQLLog EXIT command by using the proper API. Related to Bug #2695. 2005-10-20 castaglia <castaglia> * doc/contrib/mod_tls.html: Fixed example installation instructions for mod_tls. 2005-10-19 castaglia <castaglia> * configure: Updating configure. 2005-10-19 castaglia <castaglia> * config.h.in, configure.in, include/ctrls.h, modules/mod_ctrls.c, src/ctrls.c: Change the location of the logic used to determine whether the platform prefers S_ISFIFO or S_ISSOCK for detecting Unix domain sockets. Rather than using a test program as part of the configure script, move the check into the init_ctrls() code, so that it can be done at run-time. 2005-10-18 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Fix handling of the %f log variable for the RNTO command. Both mod_log and mod_sql were using session.xfer.path for %f, when in the case of RNTO, the %f that is desired is actually the argument of the command, cmd->arg, not session.xfer.path. 2005-10-18 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: When expanding the %J log variable (for command arguments), be sure to hide the arguments for the PASS command. 2005-10-10 castaglia <castaglia> * README.IPv6, src/netacl.c: Only use the full range of characters which appear in an IPv6 (and IPv4) address when IPv6 support is enabled. Also, document the case where, when IPv6 support *is* enabled, certain DNS names are not handled as one would expect, due to the heuristics used by the ACL parser. 2005-10-08 castaglia <castaglia> * RELEASE_NOTES, doc/howto/Filters.html, doc/howto/Regex.html, doc/howto/index.html: Add the regular expression tutorial to the doc/howto/ area. 2005-10-08 castaglia <castaglia> * RELEASE_NOTES: Add some notes to the RELEASE_NOTES file for the upcoming 1.3.0rc3 release. 2005-10-08 castaglia <castaglia> * configure: Updating configure. 2005-10-08 castaglia <castaglia> * config.h.in, configure.in, modules/mod_ctrls.c: Add an autoconf check to see if the platform prefers S_ISFIFO or S_ISSOCK for Unix domain sockets. It seems that some systems (e.g. UnixWare) prefer S_ISFIFO, even though the file is created/bound using socket(2)/bind(2) rather than mknod(2). Isn't portability grand. The added test defines a PR_ISSOCK_UNIX macro, defined to the appropriate S_IS* macro, for use in proftpd code. 2005-09-28 castaglia <castaglia> * doc/howto/Limit.html: Style. 2005-09-28 castaglia <castaglia> * src/dirtree.c, src/support.c: Style. 2005-09-27 castaglia <castaglia> * src/response.c: Style. 2005-09-27 castaglia <castaglia> * NEWS, src/response.c: Bug#2692 - R_DUP response messages can break the FTP protocol responses. 2005-09-27 castaglia <castaglia> * NEWS, include/privs.h: Bug#2682 - Signals can interrupt privilege switching. To guard against this, the PRIVS macros now all contain pr_signals_block()/pr_signals_unblock() guards. 2005-09-26 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2697 - Improper SSL session shutdown sequence used for some FTPS clients. 2005-09-21 castaglia <castaglia> * modules/mod_core.c: Clean up the debug logging done when handling config directive regexes. No need to report on the memory location for the allocated regex. 2005-09-21 castaglia <castaglia> * doc/contrib/mod_tls.html: Typo. 2005-09-21 castaglia <castaglia> * doc/contrib/mod_tls.html: Use of the StdEnvVars TLSOption does not necessarily increase the process memory footprint; it depends on the various memory allocator caching strategies involved. 2005-09-20 castaglia <castaglia> * doc/contrib/mod_tls.html: Enhancing the explanations of the TLSCACertificateFile and TLSRandomSeed directives. 2005-09-20 castaglia <castaglia> * doc/contrib/mod_tls.html: Minor updates to mod_tls doc. 2005-09-19 castaglia <castaglia> * NEWS, contrib/mod_radius.c, contrib/mod_sql.c, include/netaddr.h, src/log.c, src/main.c, src/netaddr.c: Bug#2695 - Client IP/host is not logged when client exits. 2005-09-19 castaglia <castaglia> * modules/mod_xfer.c: Style. 2005-09-08 castaglia <castaglia> * README.modules: Minor corrections to the location of contrib module documentation, thanks to Sven Hoexter. 2005-09-08 castaglia <castaglia> * contrib/mod_tls.c: Log in the TLSLog when mod_tls denies FTP commands because of the configured security policy. 2005-09-05 castaglia <castaglia> * src/netaddr.c: When reporting DNS resolution errors, report the type of address requested, i.e. IPv4 or IPv6. 2005-09-04 castaglia <castaglia> * NEWS, include/parser.h, src/main.c, src/parser.c: Bug#2689 - Parser does not complain about unclosed configuration sections. 2005-08-30 castaglia <castaglia> * RELEASE_NOTES: Fix typo. 2005-08-28 castaglia <castaglia> * src/fsio.c: After cleaning the path given to pr_insert_fs(), we make sure it has a trailing '/' path separator character. However, this is only necessary if the path being inserted is not '/' itself. Check for that case, and make sure to not add the trailing '/' if it is not needed. 2005-08-25 castaglia <castaglia> * contrib/mod_tls.c: The mod_tls version information was missing from a couple of log messages. 2005-08-24 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2685 - ListOptions' max parameters cannot be set higher than 255. 2005-08-23 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, src/main.c: Log, at debug level 6, if there was an error displaying a Display file. 2005-08-23 castaglia <castaglia> * src/dirtree.c: Add explanatory comment. When researching a problem earlier, I was a bit confused by the reuse of a pool variable; the comment is a reminder of what is going on. 2005-08-16 castaglia <castaglia> * INSTALL: Update the section of the INSTALL doc that talks about xinetd configuration; as of xinetd-2.3.11, the 'RECORD' logging option has been deprecated. 2005-08-10 jwm <jwm> * README.LDAP: update README.LDAP; oops, i've been forgetting about this 2005-08-07 castaglia <castaglia> * modules/mod_core.c: When reporting on use or nonuse of <IfModule> and <IfDefine> sections, correctly report the "!" character. Otherwise, the reporting is confusing. 2005-08-07 castaglia <castaglia> * contrib/mod_tls.c: When handling any error returned by SSL_shutdown(3) (after it has been called the second time), and the error is not explicitly handled by the switch statement, log the error code. This will help in debugging certain cases where tls_get_error() returns "(unknown)", which possibly indicates no error occurred. 2005-08-07 castaglia <castaglia> * configure: Updating configure. 2005-08-07 castaglia <castaglia> * NEWS, configure.in: Bug#2676 - configure option --disable-ipv6 enables IPv6. 2005-08-04 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2674 - mod_sql string escape problem during group lookups. 2005-08-03 castaglia <castaglia> * contrib/mod_radius.c: Pad the size of the radius_packet_t structure. 2005-08-03 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#2669 - mod_radius segfaults if PASS command sent with no USER command. 2005-08-02 castaglia <castaglia> * doc/howto/ListOptions.html: Fix documentation for "-a" ListOption. 2005-08-02 castaglia <castaglia> * NEWS, modules/mod_ctrls.c: Bug#2668 - mod_ctrls fails to open socket during SIGHUP. 2005-08-02 castaglia <castaglia> * modules/mod_facl.c: Add debugging output, level 6, showing when mod_facl has successfully registered its FS handler. 2005-08-01 castaglia <castaglia> * modules/mod_ctrls.c: Display the mod_ctrls version when using `proftpd -vv'. 2005-08-01 castaglia <castaglia> * src/ftpdctl.c: Display the name of the socket path being contacted when `ftpdctl -v' is used. 2005-08-01 castaglia <castaglia> * NEWS: Bug#2667 - mod_tls handles SIGHUP badly. Stop registering the handler for the "core.postparse" event in the "core.restart" event handler; such multiple registrations cause the "core.postparse" event handler to be invoked multiple times. 2005-07-31 castaglia <castaglia> * contrib/mod_tls.c: The "core.restart" event handler for mod_tls was registering a handler for the "core.postparse" event; however, one was already being registered. The duplicate "core.postparse" registrations would cause the handler to be called repeatedly, leading to locking of key passphrases into memory multiple times and other unintended funniness. 2005-07-27 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2662 - OpenSolaris/Solaris 11 has TCP_CORK but not SOL_TCP. 2005-07-27 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec: Bug#2660 - Add mod_facl in rpm spec file. 2005-07-27 castaglia <castaglia> * contrib/mod_tls.c: Explicitly mention that $SSL_CERT_DIR is an environment variable. 2005-07-24 castaglia <castaglia> * include/version.h: Updating version. 2005-07-24 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2005-07-24 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.3.0rc2. 2005-07-24 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#2658 - Segfault in mod_radius when using long password. 2005-07-21 castaglia <castaglia> * RELEASE_NOTES: Fix typo. 2005-07-21 castaglia <castaglia> * contrib/mod_tls.c: Slight paranoia about calling BIO_free() on possibly NULL pointer. 2005-07-21 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2657 - Segfault in tls_get_error() function in mod_tls. 2005-07-19 castaglia <castaglia> * doc/howto/Classes.html, doc/howto/SQL.html: Updating Class and SQL howtos. 2005-07-15 castaglia <castaglia> * NEWS: Minor rewording of NEWS, with respect to POSIX ACLs. 2005-07-08 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes. 2005-07-08 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2653 - When MaxStoreFileSize is reached, error should be EDQUOT rather than EPERM. 2005-07-07 castaglia <castaglia> * NEWS, src/data.c: Bug#2560 - Reporting errors when user filesystem quota is exceeded. 2005-07-07 castaglia <castaglia> * modules/mod_log.c: With the fixing of Bug #1965, the mod_log module no longer needs a PRE_CMD handler in order to properly log the QUIT command; the POST_CMD C_ANY handler suffices. In fact, the PRE_CMD C_QUIT handler currently in place means that the QUIT command would be logged twice in an ExtendedLog. 2005-07-05 castaglia <castaglia> * doc/howto/DNS.html, doc/howto/VirtualUsers.html, doc/howto/index.html: Adding DNS, VirtualUsers howtos. 2005-07-05 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2645 - SQLShowInfo format string vulnerability. 2005-07-05 castaglia <castaglia> * NEWS, src/response.c: Bug#2646 - ftpshut format string vulnerability. 2005-07-03 castaglia <castaglia> * contrib/mod_ldap.c, contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_tls.c, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_pam.c, modules/mod_auth_unix.c: Update the auth modules to set the session.auth_mech member with the name of the module which successfully authenticates a user. 2005-07-03 castaglia <castaglia> * NEWS: Bug#2375 - Slow directory listing with several blank .ftpaccess files. 2005-07-03 castaglia <castaglia> * src/dirtree.c: When parsing .ftpaccess files, check that the size of the .ftpaccess file is non-zero before handling it. This is related to Bug #2375, if not _the_ culprit. I suspect that there are more improvements to be made with regards to .ftpaccess file processing, though. 2005-07-02 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Fix segfault where using SQLLog to execute a SQLNamedQuery (which uses %L or %a) for the EXIT command would attempt to use freed memory. 2005-07-02 castaglia <castaglia> * modules/mod_xfer.c: Set the current working directory, in the FSIO layer, before an open() call. This may be the cause of some strange behaviors seen with some of my FSIO modules (i.e. mod_md5). 2005-07-02 castaglia <castaglia> * modules/mod_delay.c: More bounds checking in mod_delay, as part of an investigation into Bug #2621 using valgrind. 2005-06-30 castaglia <castaglia> * NEWS, include/conf.h: Bug#2647 - Improper "socklen_t" redefine for HP-UX when using X/Open. 2005-06-29 castaglia <castaglia> * doc/modules/mod_delay.html: This document covers mod_delay, not mod_dso. Fix typo. 2005-06-27 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#2644 - mod_sql_mysql should handle old MySQL password format more gracefully. 2005-06-27 castaglia <castaglia> * configure: Updating configure. 2005-06-27 castaglia <castaglia> * config.h.in, configure.in: Check for the size of a time_t. We do not need this immediately, but we will soon. 2005-06-23 castaglia <castaglia> * contrib/mod_quotatab_sql.c: Fix a rather broken assignment. Newer versions of gcc, being less lenient, choke on this assignment whereas older versions of gcc let it pass. 2005-06-22 castaglia <castaglia> * contrib/mod_tls.c: Always set the tls_pkey_list pointer to NULL after scrubbing the list. Also, be sure to scrub that list at session initialization time if TLSEngine is not on for the session. 2005-06-22 castaglia <castaglia> * src/fsio.c: The changes in the FSIO API to support chained FS objects changed some things; the lookup_file_fs() function made assumptions which were broken by those changes. Update lookup_file_fs() to properly deal with FS objects whose stat or lstat function pointers may be NULL. 2005-06-22 castaglia <castaglia> * src/fsio.c: Off by one in my calculation; PR_TUNABLE_PATH_MAX-1 is the last usable index in the buffer. Of course, I may still be wrong here, but I'd rather be wrong by too large of a difference, rather than too small. 2005-06-21 castaglia <castaglia> * src/fsio.c: Tracking down a bug in my crufty mod_md5fs module revealed the cause to be a subtle bug in pr_insert_fs(). The path provided by the caller was being cleaned via pr_fs_clean_path(), which would remove any trailing path separators. However, in the case of FSIO FS objects, that trailing separator is important. Re-add it if it was there. 2005-06-21 castaglia <castaglia> * configure: Update configure. 2005-06-21 castaglia <castaglia> * src/bindings.c: The ipv6_supported variable need only be defined if --enable-ipv6 is used. 2005-06-21 castaglia <castaglia> * configure.in: If the --enable-ctrls configure option is used, mod_ctrls will be built as a static module. To get mod_ctrls to be built as a shared module, use --enable-ctrls and list mod_ctrls in the --with-shared list. However, I have not tested how well mod_ctrls behaves as a shared module... 2005-06-21 castaglia <castaglia> * src/main.c: Display the default libexec/ directory for the -V option, if DSO support is enabled. 2005-06-21 castaglia <castaglia> * configure: Updating configure. 2005-06-21 castaglia <castaglia> * configure.in, src/bindings.c: Undo yesterday's autoconf change for IPv6 support detection. Instead, move that detection into init_bindings(), although I suspect that it will be needed in other places of the code as well. At least this way, though, a proftpd compiled using --enable-ipv6 on an IPv4 box will still start up properly and accept connections. 2005-06-21 castaglia <castaglia> * NEWS: Update the description of Bug #2573, making note of the changed behavior and how to address it (as per Bug #2640). 2005-06-20 castaglia <castaglia> * configure: Updating configure. 2005-06-20 castaglia <castaglia> * configure.in: Have autoconf check for IPv6 support when the --enable-ipv6 configure option is used. It is completely possible for an IPv4-only box to be used to compile a proftpd configured using --enable-ipv6. When that proftpd is started on the IPv4-only box, it would choke inexplicably. This is due to changes made for Bug #2758. 2005-06-20 castaglia <castaglia> * src/netaddr.c: Log when we are looking for IPv4 addresses via DNS, and when we're looking for IPv6 addresses. 2005-06-20 castaglia <castaglia> * src/mkhome.c: Make sure to reset the umask in the case where mkdir() could fail. Otherwise, the umask of the process will be left in the wrong state. 2005-06-20 castaglia <castaglia> * doc/contrib/mod_ifsession.html: Updating mod_ifsession docs. 2005-06-18 castaglia <castaglia> * contrib/mod_tls.c: OpenSSL 0.9.8 changed some macro names (and did not document it *sigh*). Update mod_tls to use the new names as necessary. 2005-06-18 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2630 - Use of mmap in mod_delay may be problematic on HP-UX. 2005-06-16 castaglia <castaglia> * include/table.h, src/table.c: Add a new table flag, PR_TABLE_FL_USE_CACHE. By default, this flag is off. The caching behavior of previously-looked up keys in the table accessors was a bit confusing (which itself indicates the need for better table documentation). Make use of that lookup cache disabled by default, so that the behavior is least surprising to developers. Callers that require higher performance tables can enable the flag as needed. 2005-06-16 castaglia <castaglia> * src/table.c: Added some missing pr_signals_handle() calls in while loops. 2005-06-15 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2639 - HiddenStores does not work. 2005-06-15 castaglia <castaglia> * src/dirtree.c: Set a valid errno for pr_is_boolean(). 2005-06-14 castaglia <castaglia> * src/auth.c: Add debugging, level 10, of retrieved user/group names and UIDs/GIDs, similar to what is done during in pr_auth_getgroups(). 2005-06-14 castaglia <castaglia> * contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_tls.c, include/compat.h, include/log.h, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_log.c, src/log.c, src/xferlog.c: Move the LOG_* macros (for indicating writable dirs, symlinks, and permission modes) into the PR_ namespace. Provide compatibility macros for source compatibility for other modules, for now. 2005-06-13 castaglia <castaglia> * include/log.h, modules/mod_core.c, modules/mod_log.c, src/log.c: Move the log_str2sysloglevel() function into the 'pr_' namespace. 2005-06-13 castaglia <castaglia> * NEWS, modules/mod_xfer.c, src/data.c: Bug#2636 - Data connection failure when handling STOR does not trigger error response. 2005-06-12 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2637 - <Limit STAT> does not work. 2005-06-12 castaglia <castaglia> * include/compat.h, include/dirtree.h: Moving some macro (name redefinitions) into the more appropiate compat.h header. 2005-06-11 castaglia <castaglia> * contrib/mod_tls.c: Style consistency and cleanup. 2005-06-11 castaglia <castaglia> * contrib/mod_tls.c: Comment typo. 2005-06-10 castaglia <castaglia> * contrib/mod_tls.c, include/auth.h, modules/mod_auth.c, src/auth.c: Removing the overloaded use of pr_auth_authenticate() in mod_auth for allowing RFC2228 modules to authenticate a user using non-PASS means. Instead, there is a new Auth API function, pr_auth_requires_pass(). All modules have a chance to provide handlers for this auth command; if any module can successfully authenticate the client without requiring the PASS command, then pr_auth_requires_pass() will return FALSE. If and only if pr_auth_requires_pass() returns FALSE will mod_auth send the 232 response code to the client, indicating that no PASS command is required. 2005-06-10 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#2632 - Invalid application of `sizeof' to an incomplete type on AIX. 2005-06-10 castaglia <castaglia> * doc/howto/NAT.html: Provide an example configuration for the LAN/WAN MasqueradeAddress issue. 2005-06-09 castaglia <castaglia> * doc/howto/SQL.html: Fix typo. 2005-06-08 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#2631 - Segfault when using RadiusAcctServer. 2005-06-08 castaglia <castaglia> * doc/howto/SQL.html: Grégoire COLBERT contributed a snippet of PHP code that can be used to generate base64-encoded MD5-digested password strings, suitable for use by mod_sql. 2005-06-07 castaglia <castaglia> * contrib/mod_radius.c: Minor style cleanup. 2005-06-06 castaglia <castaglia> * doc/contrib/mod_rewrite.html: No need for the trailing /, as the closing } serves as the delimiter. 2005-06-06 castaglia <castaglia> * doc/contrib/mod_rewrite.html: The example RewriteRule directive provided had a problem. One of its parameters contained an embedded whitespace, and the example did not enclose that parameter in quotations, which meant that the config parser would split that parameter incorrectly. 2005-06-05 castaglia <castaglia> * NEWS, README.FreeBSD: Bug#2250 - Add ports, compiling info to FreeBSD README. 2005-06-05 castaglia <castaglia> * README: Updated README to use "1.3.x" as ProFTPD version, rather than "1.2.x". 2005-06-03 castaglia <castaglia> * NEWS, include/fsio.h: Bug#2624 - "fh_data" macro collision causes compiler error on Tru64 V5.1A. 2005-06-02 castaglia <castaglia> * contrib/mod_radius.c: Since mod_radius is distributed with the proftpd source, it should not have an "RC" version. It will now be officially version 0.8. 2005-06-02 castaglia <castaglia> * modules/mod_delay.c: Bug#2622 - Segfault seen randomly in mod_delay. This patch changes the bounds check for the j variable, which is decrementing, to be as necessary. 2005-06-01 castaglia <castaglia> * modules/mod_core.c: Add better logging of when PORT, PASV, EPRT, and EPSV are denied because of <Limit> configurations. Minor code style changes. 2005-06-01 castaglia <castaglia> * doc/contrib/mod_radius.html: Remove extraneous space. 2005-06-01 castaglia <castaglia> * doc/contrib/mod_radius.html: Updating mod_radius documentation. 2005-06-01 castaglia <castaglia> * README.Solaris2.5x: Use "ProFTPD", not "ProFTP". 2005-06-01 castaglia <castaglia> * contrib/mod_radius.c: More strict checking of the number of parameters for the RadiusLog directive. In general, this a problem with the CHECK_ARGS macro. It allows >= n parameters, where it should check strictly for == n. 2005-06-01 castaglia <castaglia> * NEWS, src/bindings.c, src/netaddr.c: Bug#2578 - ProFTPD does not listen on IPv6 addresses on FreeBSD. 2005-05-31 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2622 - Segfault seen randomly in mod_delay. 2005-05-31 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2601 - mod_delay sometimes delays for a long time. 2005-05-21 castaglia <castaglia> * modules/mod_auth.c: If we are unable to resolve a user's home directory, try to interpolate it (as when the home dir is "~"), in order to provide a more informative log message to the admin. This will greatly help in debugging. 2005-05-10 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#2585 - Proftpd does not write RFC 3164 compliant messages into /dev/log. 2005-05-08 castaglia <castaglia> * configure: Updated configure. 2005-05-08 castaglia <castaglia> * NEWS, configure.in: Bug#2598 - Build system should check for duplicate module requests. 2005-05-07 castaglia <castaglia> * Makefile.in, modules/Makefile.in: Make the use of `test' in the Makefiles non-silent, to aid in debugging build issues. 2005-05-07 castaglia <castaglia> * contrib/mod_load/Makefile.in: Make mod_load's Makefile portable. Related to Bug#2589. 2005-05-07 castaglia <castaglia> * NEWS: Wrong bug number. 2005-05-07 castaglia <castaglia> * NEWS, modules/Makefile.in: Bug#2589 - Makefile in modules/ directory is not portable. 2005-05-07 castaglia <castaglia> * src/netaddr.c: Typo; we were checking the wrong variable, which causes the wrong error message to (possibly) be displayed if there were resolver errors. 2005-05-06 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_ctrls.c, src/table.c: Bug#2605 - Compiler warnings/errors about missing typecasts on HP-UX. 2005-05-06 castaglia <castaglia> * contrib/mod_tls.c: Bug#2607 - Compiler warnings about missing typecasts in mod_tls on HP-UX. 2005-05-06 castaglia <castaglia> * contrib/mod_rewrite.c: Bug#2606 - Compiler warnings about missing typecasts in mod_rewrite on HP-UX. 2005-05-01 castaglia <castaglia> * src/netaddr.c: Log, at debug level 10, if we're returning an IP address when a DNS name was requested because of the UseReverseDNS setting. 2005-04-30 castaglia <castaglia> * configure: Updating configure. 2005-04-30 castaglia <castaglia> * configure.in: Removed --disable-auth-unix configure option. It isn't very useful; trying to actually use a proftpd compiled with that option would not work well. Perhaps it will come back later, in a better/more usable fashion. 2005-04-30 castaglia <castaglia> * NEWS, contrib/mod_ctrls_admin.c, doc/contrib/mod_ctrls_admin.html: Add new 'dns' control action to mod_ctrls_admin, for setting UseReverseDNS at runtime. 2005-04-30 castaglia <castaglia> * src/bindings.c: Add debugging denoting when there is no exactly matching vhost configured for an incoming connection and we end up using the DefaultServer. 2005-04-30 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#2582 - ProFTPD on Tru64 with SIA does not call sia_ses_estab(). 2005-04-29 castaglia <castaglia> * configure: Updating configure. 2005-04-29 castaglia <castaglia> * config.h.in, configure.in, modules/mod_auth_unix.c: Systems with shadow library support (e.g. Solaris) may require that the setspent(3) function be called prior to calling getspent(3) et al. 2005-04-27 castaglia <castaglia> * configure: Updating configure. 2005-04-27 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#2588 - AIX requires _USE_IRS #define to use hstrerror(). 2005-04-25 castaglia <castaglia> * src/bindings.c: It's possible for pr_ipbind_listen() to be called without any calls to pr_ipbind_create(). The ipbind_pool was being initialized in pr_ipbind_create() if it didn't already exist. pr_ipbind_listen() tries to use ipbind_pool, but did not check to see if ipbind_pool was initialized. So when pr_ipbind_listen() was called without any prior calls to pr_ipbind_create(), proftpd would segfault. Oops. 2005-04-24 castaglia <castaglia> * config.h.in: Typo. 2005-04-23 castaglia <castaglia> * modules/mod_delay.c: Have mod_delay log the random value it adds to the delay factor, at debug level 10. Is this where the extra-long delays are coming from? Perhaps... 2005-04-23 castaglia <castaglia> * contrib/mod_quotatab.c: More formatting tweaks for mod_quotatab's display in response to a SITE QUOTA command. 2005-04-23 castaglia <castaglia> * contrib/mod_quotatab.c: Fix minor formatting/spacing issue seen when QuotaDisplayUnits is set to something other than 'b' and the number of units to be displayed is not "unlimited". 2005-04-23 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2596 - STAT command can cause segfault. 2005-04-22 castaglia <castaglia> * contrib/mod_sql.c: Be consistent in the style/formatting of the "cache hit for" messages by quoting the group name, too. 2005-04-21 castaglia <castaglia> * NEWS, modules/Makefile.in: Bug#2593 - `make install-modules' does not honour DESTDIR enviroment variable. 2005-04-21 jwm <jwm> * .cvsignore, lib/libltdl/.cvsignore: update for libtool 2005-04-21 jwm <jwm> * modules/.cvsignore: - ignore libtool-generated files - mod_linuxprivs is gone 2005-04-17 castaglia <castaglia> * NEWS, modules/mod_delay.c, modules/mod_xfer.c: Bug#2590 - AIX uses unsigned int for ULONG_MAX, causing printf format warning Bug#2591 - wrong argument type in call to pr_log_debug in mod_delay.c on AIX 2005-04-15 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#2587 - HideNoAccess does not work for DefaultRoot/<Anonymous> logins. 2005-04-15 castaglia <castaglia> * include/auth.h, include/compat.h, include/conf.h, include/log.h: Add a header whose role is to hold preprocessor directives for backward compatibility. Function renames, macro changes, etc, that sort of thing. 2005-04-11 castaglia <castaglia> * NEWS, contrib/mod_sql_postgres.c: Bug#2584 - mod_sql_postgres missing end-of-comment character. 2005-04-11 castaglia <castaglia> * include/version.h: Update version. 2005-04-10 castaglia <castaglia> * NEWS: Updating release date for 1.3.0rc1. 2005-04-10 castaglia <castaglia> * src/data.c: As per comments in Bug #2509, it seems that Linux x86_64 environments do not support sendfile() for more than 2^31 bytes. I don't know if Solaris suffers from the same design. Have I ever mentioned how much I find the sendfile API to be broken? 2005-04-10 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2554 - mod_delay gets segfault-signal on several logins. 2005-04-04 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#2580 - ProFTPD on Tru64 with SIA allows login with blank password. 2005-03-26 castaglia <castaglia> * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.3.0rc1. 2005-03-26 jwm <jwm> * RELEASE_NOTES: mod_ldap is now 2.8.15 2005-03-26 castaglia <castaglia> * RELEASE_NOTES: Updating release notes, preparing for release of 1.3.0rc1. 2005-03-25 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2493 - mod_tls should support CCC command. 2005-03-18 castaglia <castaglia> * NEWS, src/support.c: Bug#2576 - PWD command does not handle " character properly. 2005-03-17 castaglia <castaglia> * modules/mod_auth.c: Call PRIVS_ROOT before PRIVS_REVOKE, to make absolutely sure that the real and effective UIDs are as needed in order for privs revocation to work. 2005-03-16 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2551 - Recursive LIST with symlinked directories gives duplicate results. 2005-03-16 castaglia <castaglia> * modules/mod_ls.c: Cruft removal. 2005-03-12 castaglia <castaglia> * modules/mod_ls.c: Fix an unreported bug where attempting to use the -t directory listing option would trigger a segfault. 2005-03-11 jwm <jwm> * contrib/mod_ldap.c: [no log message] 2005-03-08 castaglia <castaglia> * NEWS, src/pool.c: Bug#2567 - Segmentation fault with 64-bit binary due to structure layout difference. 2005-03-06 castaglia <castaglia> * contrib/mod_quotatab.c: More consistent log messages. 2005-03-05 castaglia <castaglia> * contrib/mod_quotatab.c: Fixed quotatab_fsio_write() to check the xfer limit as well as the upload limit. 2005-03-05 castaglia <castaglia> * NEWS, contrib/mod_quotatab.c: Bug#2515 - mod_quotatab should enforce hard limits at the filesystem level. 2005-03-05 castaglia <castaglia> * NEWS, contrib/mod_tls.c, modules/mod_auth.c, src/auth.c: Bug#2164 - Support non-PASS response codes. 2005-03-05 castaglia <castaglia> * NEWS, src/inet.c: Bug#2559 - IPv6 socket option should be set for ServerType inetd. 2005-03-04 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug #2573 - TLSProtocol directive in proftpd.conf is ignored. 2005-03-02 castaglia <castaglia> * modules/mod_delay.c: Allow for <IfClass>-based tweaks of the DelayEngine directive. 2005-02-28 castaglia <castaglia> * README.DSO: Mention the DSO howto. 2005-02-27 castaglia <castaglia> * README.modules: List mod_facl in the modules README. 2005-02-27 castaglia <castaglia> * README.facl: Fleshing out the POSIX ACL doc. 2005-02-27 castaglia <castaglia> * README.DSO: Update the DSO doc with information on where to find more documentation for the mod_dso module. 2005-02-27 castaglia <castaglia> * README.DSO: Adding more substance to the DSO doc. 2005-02-26 castaglia <castaglia> * RELEASE_NOTES: Mention the new --enable-facl configure option, mod_facl module in the release notes. 2005-02-26 castaglia <castaglia> * src/fsio.c: Fix missing variable declaration. 2005-02-26 castaglia <castaglia> * configure: Updating configure. 2005-02-26 castaglia <castaglia> * NEWS, README.facl, config.h.in, configure.in, include/conf.h, include/dirtree.h, include/fsio.h, include/privs.h, include/proftpd.h, include/support.h, modules/mod_auth.c, modules/mod_facl.c, modules/mod_ls.c, src/dirtree.c, src/fsio.c, src/main.c, src/support.c: Bug #2331: Proftpd does not honor POSIX ACLs. 2005-02-25 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug #2563: Linking fails on Solaris with libz and libmysqlclient. 2005-02-25 castaglia <castaglia> * ChangeLog: Updated ChangeLog. 2005-02-15 jwm <jwm> * contrib/dist/rpm/proftpd.spec: i don't have access to red hat machines anymore, so i'm no longer maintaining this 2005-02-07 castaglia <castaglia> * include/inet.h, src/inet.c: Use "const char *" where appropriate. 2005-02-04 castaglia <castaglia> * NEWS, src/fsio.c: Bug#2556: Rename of directory across devices fails. 2005-01-25 castaglia <castaglia> * NEWS, lib/libcap/cap_sys.c: Bug#2503 - Bundled libcap library does not compile on IA64 machine. 2005-01-13 castaglia <castaglia> * modules/mod_ls.c: The fix for Bug #2229 (rev 1.119 of modules/mod_ls.c) inadvertently broke globbing; it was calling globfree(3) on a struct whose members had been allocated from memory that was not obtained via glob(3). This is a bad combination. 2005-01-06 castaglia <castaglia> * contrib/mod_load/mod_load.c.in, contrib/mod_radius.c, modules/mod_delay.c: Fix compiler warnings (generated by gcc-3.4.2 on an AMD64 machine running Linux 2.6.9). 2005-01-06 castaglia <castaglia> * src/bindings.c: Fix segfault caused by a NULL listener_list. 2005-01-03 castaglia <castaglia> * doc/howto/Stopping.html: Updating FAQ URL. 2005-01-03 castaglia <castaglia> * INSTALL: Apparently configure scripts don't pass env vars very well to sub-configure scripts. 2005-01-02 jwm <jwm> * lib/glibc-hstrerror.c: silence ranlib's 'object contains no symbols' warning if the host OS already has hstrerror() 2005-01-02 castaglia <castaglia> * RELEASE_NOTES: Make a note to describe the addition of mod_delay to the module list. 2005-01-01 castaglia <castaglia> * doc/contrib/mod_load.html: Updating the mod_load docs to mention the provided Display variables. 2005-01-01 castaglia <castaglia> * doc/howto/DisplayFiles.html: Mention that other modules can add their own Display variables. 2005-01-01 castaglia <castaglia> * contrib/mod_load/mod_load.c.in: Enhance mod_load to use the Variables API. 2005-01-01 castaglia <castaglia> * contrib/mod_load/configure: Updating configure. 2005-01-01 castaglia <castaglia> * doc/contrib/mod_load.html: Eliminated the need for Solaris users to do anything special when building mod_load; its configure script handles everything. 2005-01-01 castaglia <castaglia> * contrib/mod_load/configure.in, contrib/mod_load/getloadavg.c, contrib/mod_load/mod_load.c, contrib/mod_load/mod_load.c.in: Modified the configure script to detect when additional libraries are needed, and to generate mod_load.c from mod_load.c.in, with the $Libraries$ tag properly populated. Note that newer autoconf treatment of the AC_FUNC_GETLOADAVG macro requires that a getloadavg.c file be present, even if empty. How annoying. 2005-01-01 castaglia <castaglia> * contrib/mod_load/mod_load.c: No need for mod_load's getloadavg() function to be visible outside of the source file. 2005-01-01 castaglia <castaglia> * contrib/mod_load/mod_load.c: Fix some compiler warnings about formats. Add an empty $Libraries$ tag. Soon, mod_load's configure script will process the mod_load source, and substitute in a list of libraries that mod_load conditionally requires (e.g. libkstat on Solaris). 2005-01-01 castaglia <castaglia> * contrib/mod_load/mod_load.c: Slightly prettier code organization. 2005-01-01 castaglia <castaglia> * contrib/mod_load/mod_load.c: Updating mod_load source style. 2005-01-01 castaglia <castaglia> * doc/contrib/index.html: Update doc/contrib index to include mod_load reference. 2005-01-01 castaglia <castaglia> * README.modules, RELEASE_NOTES: Add mod_load to the list of modules. 2005-01-01 castaglia <castaglia> * NEWS, contrib/mod_load/Makefile.in, contrib/mod_load/configure, contrib/mod_load/configure.in, contrib/mod_load/mod_load.c, contrib/mod_load/mod_load.h.in, doc/contrib/mod_load.html: Bug#1651 - Add contrib module to limit connection acceptance based on system load. 2005-01-01 castaglia <castaglia> * configure: Updating configure. 2005-01-01 castaglia <castaglia> * modules/Makefile.in: Fix the install target when handling only shared modules that install themselves. 2005-01-01 castaglia <castaglia> * .autom4te.cfg, Make.rules.in, Makefile.in, NEWS, configure.in, modules/Makefile.in: Bug#2549 - Allow contrib modules to be built from multiple source files. 2004-12-31 castaglia <castaglia> * doc/howto/FTP.html: Updating the list of SITE commands supported by ProFTPD. 2004-12-31 castaglia <castaglia> * doc/howto/FTP.html: Updating the list of FTP commands supported by ProFTPD. 2004-12-30 castaglia <castaglia> * contrib/mod_sql_mysql.c: Log if mod_sql_mysql fails to authenticate a password using the 'backend' SQLAuthType because of a password mismatch. 2004-12-30 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2541 - <Directory ~user> path resolved at startup time, rather than at session time. 2004-12-30 castaglia <castaglia> * NEWS, modules/mod_delay.c: Bug#2540 - Fails to disable mod_delay if no DelayTable file exists. 2004-12-23 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c: More prettification of error messages. 2004-12-23 castaglia <castaglia> * contrib/mod_sql.c: Makes for nicer error messages. 2004-12-23 castaglia <castaglia> * INSTALL: Updating the installation notes. 2004-12-17 castaglia <castaglia> * modules/Makefile.in: Make the Makefile for the modules/ directory nicer, so that when developing shared modules within the source directory, make picks up on the updated source file and does The Right Thing. 2004-12-17 castaglia <castaglia> * modules/mod_dso.c: Avoid compiler warning about unused function. 2004-12-17 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#2536 - mod_ifsession does not properly merge in all directives. 2004-12-17 castaglia <castaglia> * src/sets.c: Update xaset_insert_end() so that it updates the 'next' field of the previous member in the set. 2004-12-17 castaglia <castaglia> * contrib/mod_ifsession.c: Hide some of the label strings used by mod_ifsession by prefacing their names with an underscore. Such names are not displayed by pr_config_dump(). 2004-12-17 castaglia <castaglia> * contrib/mod_ldap.c: Typo. 2004-12-16 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Support being unloaded as a shared module. 2004-12-16 castaglia <castaglia> * contrib/mod_rewrite.c: Support being unloaded as a shared module. 2004-12-16 castaglia <castaglia> * contrib/mod_radius.c: Add code to support being unloaded as a shared module. 2004-12-16 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_quotatab.h, contrib/mod_quotatab_file.c, contrib/mod_quotatab_ldap.c, contrib/mod_quotatab_sql.c: Add a new quotatab_unregister_backend() function to the mod_quotatab API, and rename quotatab_register() to quotatab_register_backend(). This makes it consistent with mod_sql's backend API, and also makes it possible to unregister a quotatab backend module. Adds support for graceful unloading of mod_quotatab et al as shared modules. 2004-12-16 castaglia <castaglia> * contrib/mod_tls.c: Add code to mod_tls to support being unloaded as a shared module. 2004-12-16 castaglia <castaglia> * modules/mod_dso.c, src/main.c: Rather than having the core engine unload modules during a restart, have them unloaded by mod_dso. That's only fair, since a) mod_dso was responsible for loading the modules in the first place, and b) mod_dso also handles the unloaded of the handles from libltdl, about which the core engine knows nothing. 2004-12-16 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Tweak the SQL modules to better handle being built as shared modules. 2004-12-16 castaglia <castaglia> * src/main.c: During a restart (e.g. SIGHUP), unload all non-static modules, i.e. all shared modules that have been dynamically loaded. This is to handle the case where an admin removes a LoadModule directive from proftpd.conf, then issues a SIGHUP. Note that this requires changes to shared modules, to make sure they unload themselves properly. Such changes for the contrib/ modules will follow shortly. 2004-12-16 castaglia <castaglia> * include/event.h, src/event.c: Tweak the Event API to allow blanket unregistration of all a module's event listeners in one pr_event_unregister() call. Gracefully avoid a possible segfault during pr_event_register(). 2004-12-16 castaglia <castaglia> * src/auth.c: 'login' is a global variable somewhere, so compiling under --enable-devel kicks up compiler warnings. 2004-12-16 castaglia <castaglia> * Makefile.in: The shell's test function prefers to operate on single strings, so enclose the expanded $SHARED_MODULE_OBJS list within quotations. 2004-12-16 castaglia <castaglia> * doc/howto/DisplayFiles.html: Updating the DisplayFiles doc with the newly added Display variables. 2004-12-16 castaglia <castaglia> * doc/howto/DisplayFiles.html, doc/howto/index.html: Adding a doc covering the Display directives. 2004-12-12 castaglia <castaglia> * doc/howto/DSO.html: Grammatical nicety. 2004-12-12 castaglia <castaglia> * doc/howto/ListOptions.html: Updating URL for current location under doc/howto/. 2004-12-12 castaglia <castaglia> * doc/howto/ListOptions.html, doc/howto/index.html: Adding the ListOptions howto to the source distribution. 2004-12-12 castaglia <castaglia> * RELEASE_NOTES: Update the release notes. 2004-12-12 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2534 - Add suport for -S ListOption, for sorting files by file size. 2004-12-12 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2229 - NLST and LIST behave differently e.g. when listing an empty directory. Make the behavior between LIST and LIST consistent with respect to empty directories, and when listing nonexistent directories. 2004-12-12 castaglia <castaglia> * doc/howto/DSO.html, doc/howto/index.html: Adding DSO howto to source distribution. 2004-12-12 castaglia <castaglia> * doc/contrib/mod_sql.html: Add documentation for the SQLEngine directive. 2004-12-12 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2406 - Add a SQLEngine directive. 2004-12-12 castaglia <castaglia> * modules/mod_ctrls.c, modules/mod_site.c: Use the Auth API functions in the 'pr_' namespace. 2004-12-12 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2027 - Add log message for timed out passive transfers. 2004-12-08 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Explicitly mention that only one type of limit is in effect at a time, and that applicable limits for a given user are not combined. 2004-12-05 castaglia <castaglia> * src/main.c: Yet another place where main_server needs to be set to NULL before calling free_pools(). Only affects servers built using the --enable-devel=nodaemon option. 2004-12-05 castaglia <castaglia> * src/main.c: If main_server is not set to NULL before freeing all of the pools (from which main_server is allocated), segfaults can occur if something tries to log a message. Note that this only happens if the --enable-devel configure option is used, so it doesn't affect most users. 2004-12-05 castaglia <castaglia> * src/main.c: Properly set session.c and session.d to NULL once we've closed them. 2004-12-05 castaglia <castaglia> * doc/howto/Authentication.html: Correct the RequireValidShell FAQ URL. 2004-12-05 castaglia <castaglia> * include/auth.h, modules/mod_auth.c, src/auth.c: Move that code responsible for looking up the anonymous configuration for a given user name, if applicable, out of mod_auth.c and into the Auth API. The main reason for this is to allow contrib modules that may need to determine whether a given login is to be handled anonymously (e.g. mod_wrap, mod_sql) the ability to use the same code as mod_auth, rather than having to duplicate it themselves. A nice side benefit as that the Auth API function added, pr_auth_get_anon_config(), more legibly describes what the function does. This will help to make the mod_auth code slightly easier to understand (for some value of "easier"). 2004-12-05 castaglia <castaglia> * doc/howto/Limit.html: Add examples of blocking PORT or PASV commands. 2004-12-04 castaglia <castaglia> * doc/howto/Upgrade.html, doc/howto/index.html: Add an Upgrade mini-HOWTO to doc/howto/. 2004-12-04 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Fix up the links to the quotatab submodule docs. 2004-12-04 castaglia <castaglia> * doc/contrib/mod_quotatab.html: Update the mod_quotatab installation instructions. 2004-12-04 castaglia <castaglia> * contrib/mod_quotatab.c, contrib/mod_quotatab.h, doc/contrib/mod_quotatab.html: Add some Display variables for mod_quotatab: %{mod_quotatab.limit.bytes_in} %{mod_quotatab.limit.bytes_out} %{mod_quotatab.limit.bytes_xfer} %{mod_quotatab.limit.files_in} %{mod_quotatab.limit.files_out} %{mod_quotatab.limit.files_xfer} %{mod_quotatab.tally.bytes_in} %{mod_quotatab.tally.bytes_out} %{mod_quotatab.tally.bytes_xfer} %{mod_quotatab.tally.files_in} %{mod_quotatab.tally.files_out} %{mod_quotatab.tally.files_xfer} These are documented in the mod_quotatab documentation under doc/contrib/. 2004-12-04 castaglia <castaglia> * src/var.c: Pass the exact pointers provided by callers of pr_var_set(), rather than copies of the pointed-to data. 2004-12-04 castaglia <castaglia> * modules/mod_core.c: Reduce complexity of code needed for displaying byte/file Variables by reducing the number of callbacks to two (as opposed to six). 2004-12-04 castaglia <castaglia> * src/display.c: Fix displaying of variables. 2004-12-04 castaglia <castaglia> * RELEASE_NOTES: Mention the new Display variables in the release notes. 2004-12-04 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c, src/display.c: Bug#2170 - Add byte count variables, similar to the file count Display variables. 2004-12-04 castaglia <castaglia> * modules/mod_core.c: Handle the case where there's only one name provided in the Allow/Deny rule. 2004-12-02 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2528 - Incorrect username 'and' parsing in AllowUser. 2004-12-02 castaglia <castaglia> * src/main.c: Close the control and data connections before running any registered 'core.exit' event handlers. 2004-12-02 castaglia <castaglia> * contrib/mod_tls.c: Unregister the NetIO streams registered by mod_tls during its 'core.exit' handler. This prevents segfaults that can happen when a session is exiting (as when ABORting an in-progress data transfer). 2004-12-01 castaglia <castaglia> * contrib/mod_rewrite.c, modules/mod_core.c, modules/mod_xfer.c: Correct a few lingering cases where pr_log_pri() was being called with a log level that wasn't in the PR_ namespace. 2004-11-29 castaglia <castaglia> * src/dirtree.c: Style cleanup. 2004-11-29 castaglia <castaglia> * doc/howto/Debugging.html: Updating URL. 2004-11-25 jwm <jwm> * modules/mod_delay.c: include signal.h to fix the build under Solaris 8 2004-11-24 castaglia <castaglia> * src/support.c: More old-style exit handler cruft. 2004-11-23 castaglia <castaglia> * src/display.c: Extraneous #include (and at the bottom of a file). 2004-11-23 castaglia <castaglia> * modules/mod_core.c: We were calling pr_display_file() on DisplayQuit files with the arguments in the wrong order. 2004-11-22 castaglia <castaglia> * doc/contrib/mod_ctrls_admin.html: Fix the mod_ctrls_admin documentation. First, there was a duplicate entry for the 'down' control action. Second, the 'shutdown' entry had gone completely missing. 2004-11-22 castaglia <castaglia> * NEWS: Bug#2510 - Use of ExportCertData TLSOption leads to segfault. 2004-11-22 castaglia <castaglia> * contrib/mod_tls.c: Since we stuff an SSL * in the strm_data slot for each NetIO stream, and there are two streams for a connection, when closing a connection, we want to call tls_end_session() (which ends up freeing that SSL *) only once per connection. I chose to do this always for the write stream of a connection. Should help with some of the OpenSSL reference counter issues we've been seeing. This patch is also part of the solution for Bug #2313. 2004-11-22 castaglia <castaglia> * contrib/mod_tls.c: Adding some missing logic; pointers that have been free()'d should always be set to NULL afterwards. 2004-11-22 castaglia <castaglia> * Makefile.in: As per Michael's suggestion, remove the .libs/ directory, and libtool, during the 'distclean' target. 2004-11-22 castaglia <castaglia> * src/support.c: More old-style exit handler cruft. 2004-11-22 castaglia <castaglia> * src/main.c: Straggler run_exit_handlers() call. Be gone with ye! 2004-11-22 castaglia <castaglia> * include/support.h, src/main.c, src/support.c: No more support for the old-style exit handlers. 2004-11-21 castaglia <castaglia> * modules/mod_delay.c: Allow SIGTERM to interrupt mod_delay. 2004-11-21 castaglia <castaglia> * modules/mod_delay.c: Since mod_delay uses mmap(), any updates it makes to the DelayTable won't be reflected in the mtime field of the file's metadata. To help alleviate this perception, add a 'core.exit' event handler that explicitly writes out the DelayTable to disk. Fix up some memory problems spotted under valgrind. Also, if the expected DelayTable is smaller than the current table, make sure we truncate the file. 2004-11-21 castaglia <castaglia> * doc/contrib/mod_ifsession.html: Forgot to list MaxInstances as not being alterable by mod_ifsession. 2004-11-21 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2520 - Turning on AuthAliasOnly disables MaxClientsPerHost. ProFTPD was not using the TOPLEVEL_CONF macro, as it should have been. 2004-11-20 castaglia <castaglia> * NEWS, include/timers.h, src/main.c, src/timers.c: Bug#2516 - Getting "421 Login Timeout" immediately upon connect. The child processes were inheriting the values of static Timer API variables, including the parent's timer list. This causes problems when, in the parent process, one of those static variables stops being properly updated. I'm not convinced that the root cause of this bug has been found, but this patch addresses the problematic behavior, so that at least session processes aren't affected so badly. 2004-11-20 castaglia <castaglia> * src/timers.c: Be a little more paranoid: don't set the indispatch flag until after alarms have been blocked. 2004-11-20 castaglia <castaglia> * README.IPv6: Remove mention of the Bind directive. We want it gone. 2004-11-20 castaglia <castaglia> * NEWS, README.IPv6, RELEASE_NOTES, include/bindings.h, modules/mod_core.c, src/bindings.c, src/dirtree.c: Bug#2454 - Extend <VirtualHost> to honor multiple addresses. 2004-11-20 castaglia <castaglia> * RELEASE_NOTES: Adding a comment about how use of sendfile() causes download transfer speeds not to be displayable. 2004-11-17 castaglia <castaglia> * doc/howto/Controls.html: Mention that only primary groups, not supplemental groups, are used. 2004-11-17 castaglia <castaglia> * configure: Updating configure. 2004-11-17 castaglia <castaglia> * configure.in: Tweak the configure script to always use our bundled version of getaddrinfo() on HP-UX 11.x, since HP-UX's getaddrinfo() (among many other things) is busted. 2004-11-15 castaglia <castaglia> * README.modules: Updating README.modules. 2004-11-15 castaglia <castaglia> * modules/mod_core.c, modules/mod_xfer.c: Deny the SIZE command if we're in ASCII mode, as we do for REST. Be sure to add debug logging for both of these cases. 2004-11-14 castaglia <castaglia> * modules/mod_core.c: Check that a scoreboard entry's PID is non-zero before sending the zero signal to that PID. 2004-11-14 castaglia <castaglia> * NEWS, doc/howto/ASCII.html, doc/howto/index.html, modules/mod_xfer.c: Bug#2471 - Restart command (REST) is not working correctly for text files. 2004-11-14 castaglia <castaglia> * doc/howto/Scoreboard.html, doc/howto/index.html: Adding a ScoreboardFile mini-HOWTO. 2004-11-13 castaglia <castaglia> * ltmain.sh: Increase the max allowed command line length in the libtool script to be 4K. I'd rather we encounter the system limit before an arbitrarily imposed one. 2004-11-13 castaglia <castaglia> * include/fsio.h, src/fsio.c: Beginnings of support for stackable FSIO layers. Rather than allowing only a one-to-one mapping between paths and FS objects, this patch allows for one-to-many mappings, linking FS objects together in a linked list for the same path. At present, only the top layer on the stack, for a given FSIO operation, will be used. I anticipate that it will be the responsibility of the called FSIO handler to decide whether it wants to act as a filter handler, and pass the parameters farther down the stack, or whether it wants to act as a source/sink handler and handle the parameters entirely by itself. This behavior allows for backward compatibility with existing FSIO modules. 2004-11-13 castaglia <castaglia> * modules/mod_delay.c: Use proper grammar. 2004-11-11 castaglia <castaglia> * RELEASE_NOTES, modules/mod_log.c: Make "SECURE" an alias for "SEC" when configuring ExtendedLog logging classes. 2004-11-11 castaglia <castaglia> * include/table.h, src/main.c, src/table.c: Add a function, pr_table_nalloc(), to the Table API which allows for allocating a table with the given number of chains. Previously, callers would need to call pr_table_alloc(), then pr_table_ctl() to resize the number of chains, and in doing so there would be a slight memory leak. Now such callers can allocate the number of chains (usually smaller than the default of 32) as they need. 2004-11-10 castaglia <castaglia> * configure: Updating configure. 2004-11-10 castaglia <castaglia> * RELEASE_NOTES: Mention the new UseSendfile directive. 2004-11-10 castaglia <castaglia> * NEWS, configure.in, modules/mod_xfer.c: Bug#2507 - Enable use of sendfile by default. 2004-11-10 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_tls.c, include/modules.h, modules/mod_log.c: Bug#2518 - Ability to log SSL/TLS commands in an ExtendedLog. 2004-11-10 castaglia <castaglia> * src/timers.c: Prevent callers from providing a negative number of seconds when adding a timer. 2004-11-09 castaglia <castaglia> * NEWS: Add a header to the NEWS file indicating the Bugzilla URL to use for looking up the mentioned bug reports. 2004-11-09 castaglia <castaglia> * modules/mod_delay.c: Use PR_RUN_DIR, not RUN_DIR. 2004-11-09 castaglia <castaglia> * configure: Updating configure. 2004-11-09 castaglia <castaglia> * NEWS: Bug#2480 - Remote users discovery. 2004-11-09 castaglia <castaglia> * configure.in: Make mod_delay one of the default modules. 2004-11-09 castaglia <castaglia> * doc/modules/mod_delay.html, modules/mod_delay.c: Adding mod_delay to the distribution. Part of Bug #2480. 2004-11-08 castaglia <castaglia> * modules/Makefile.in: Found a case where make(1) was not providing $(RM). How annoying. 2004-11-06 castaglia <castaglia> * configure: Updating configure. 2004-11-06 castaglia <castaglia> * configure.in: I prefer, if possible, to see the functions checked in alphabetical order. 2004-11-05 castaglia <castaglia> * README.DSO: Adding reminder note. 2004-11-05 castaglia <castaglia> * configure: Updated configure. 2004-11-05 castaglia <castaglia> * config.h.in, configure.in: Check for the fdatasync(2) function. 2004-11-04 castaglia <castaglia> * NEWS, include/data.h, modules/mod_xfer.c, src/data.c: Bug#2509 - sendfile() usage fails with > 2GB files. 2004-11-04 castaglia <castaglia> * configure: Updating configure. 2004-11-04 castaglia <castaglia> * config.h.in, configure.in: Add checks for iconv() and nl_langinfo(), which will be needed for i18n support. 2004-11-03 castaglia <castaglia> * doc/contrib/index.html: Adding an index to the doc/contrib/ directory. 2004-11-03 castaglia <castaglia> * doc/contrib/ftpasswd.html, doc/contrib/ftpquota.html, doc/contrib/mod_ctrls_admin.html, doc/contrib/mod_ifsession.html, doc/contrib/mod_quotatab.html, doc/contrib/mod_quotatab_file.html, doc/contrib/mod_quotatab_ldap.html, doc/contrib/mod_quotatab_sql.html, doc/contrib/mod_radius.html, doc/contrib/mod_rewrite.html, doc/contrib/mod_site_misc.html, doc/contrib/mod_sql.html, doc/contrib/mod_tls.html, doc/contrib/mod_wrap.html: Moving the HTML documentation from contrib/ to doc/contrib/. 2004-11-03 castaglia <castaglia> * modules/mod_auth_pam.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c: Removing deprecated directives. 2004-11-03 castaglia <castaglia> * contrib/mod_sql.c: Cleaning up the style of code in mod_sql. It still needs work, as it's inconsistent and thus harder to read and maintain. 2004-11-03 castaglia <castaglia> * config.h.in, configure.in: Check for, and record, the size of a size_t. 2004-11-03 castaglia <castaglia> * include/table.h, src/table.c: When removing keys and entries from the table, rather than destroying their pools, add them to free lists, associated with the table itself. Check these free lists when adding new keys and entries. Thus the total memory for a table is proportional to the total number of entries ever used at one time, and we don't have as much memory churn from the destroying of pools. The pool members of the key and entry structs have thus been removed. Also handle signals while iterating through the table chains in pr_table_empty(). 2004-11-03 castaglia <castaglia> * include/default_paths.h: Remove an unused macro, and its accompanying crufty comment. 2004-11-02 castaglia <castaglia> * config.h.in, configure.in, contrib/mod_ctrls_admin.c, contrib/mod_radius.c, include/conf.h, include/default_paths.h, include/mod_ctrls.h, include/netaddr.h, include/scoreboard.h, modules/mod_auth.c, modules/mod_auth_unix.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_dso.c, src/ctrls.c, src/dirtree.c, src/ftpdctl.c, src/inet.c, src/log.c, src/main.c, src/netacl.c, src/netaddr.c, src/scoreboard.c, src/support.c, utils/ftpcount.c, utils/ftpshut.c, utils/ftptop.c, utils/ftpwho.c, utils/scoreboard.c, utils/utils.h: Moving many of the macros defining default paths into the 'PR_' namespace. This isn't an issue now, but will become one when proftpd installs its header files into the production location, which will allow DSO modules to be built outside of the proftpd source tree. When that happens, the likelihood of symbol collisions between ProFTPD macros/names and other files increases. 2004-11-02 castaglia <castaglia> * Makefile.in: No need to invoke modules/Makefile's 'shared-modules' target if there are no shared module to build. 2004-11-02 castaglia <castaglia> * Makefile.in, lib/Makefile.in, modules/Makefile.in: More tweaks to get builds using just --with-modules to work again. 2004-11-02 castaglia <castaglia> * configure: Updating configure. 2004-11-02 castaglia <castaglia> * Makefile.in, configure.in, lib/Makefile.in, modules/Makefile.in: Need to properly handle the case where the user might specify --with-modules, and no --with-shared. In this case, the $(SHARED_MODULE_OBJS) variable will be empty, which was not being handled. 2004-11-01 castaglia <castaglia> * NEWS, README.DSO: Mention the addition of DSO support in NEWS, and start on an accompanying README.DSO. There will eventually appear a DSO mini-HOWTO as well. 2004-11-01 castaglia <castaglia> * configure: Updating configure. 2004-11-01 castaglia <castaglia> * Make.rules.in, Makefile.in, configure.in, modules/Makefile.in: Adding support for a --with-shared configure option, for building DSO (aka shared) modules. 2004-11-01 castaglia <castaglia> * modules/mod_dso.c: Calling lt_dlexit() in a 'core.exit' event handler caused proftpd to segfault when shutting down. All of the stashed module *m pointers for dynamically loaded modules become invalid after a call to lt_dlexit(), and those pointers can be used after mod_dso's exit handler. The solution (though not clean) is to not call lt_dlexit(). 2004-11-01 castaglia <castaglia> * src/display.c: Bad reuse of variable name. 2004-11-01 castaglia <castaglia> * include/var.h: Forgot to declare the pr_var_delete() function. 2004-10-31 castaglia <castaglia> * modules/mod_dso.c: The dso_unload_module() function is only used if the 'rmmod' control action is used, which means that it requires Controls support. Otherwise, we don't need it. 2004-10-31 castaglia <castaglia> * modules/mod_dso.c: Remove an unnecessary function. 2004-10-31 castaglia <castaglia> * modules/mod_core.c: Report the line number of the <IfDefine>, <IfModule> sections used or skipped. 2004-10-31 castaglia <castaglia> * include/parser.h, src/parser.c: Add a function to the Parser API for getting the current line number. This is useful for better reporting. 2004-10-31 castaglia <castaglia> * modules/mod_dso.c: Some of the loop variables are only used if Controls support is enabled. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * aclocal.m4: Update our local autoconf macros, specifically those dealing with libtool. This should fix the warning: libtool: link: warning: `AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support. that I was seeing. 2004-10-31 castaglia <castaglia> * src/table.c: Quell a compiler warning about "use of cast expressions as lvalues" by being explicit. 2004-10-31 castaglia <castaglia> * config.h.in, include/conf.h: The configure script was checking for <inttypes.h>, but we were not recording whether it was present or not, or including the header if it was present. Shame on us. 2004-10-31 castaglia <castaglia> * modules/Makefile.in: The building of modules should require the libltdl header or library. Just libtool to handle the linking. 2004-10-31 castaglia <castaglia> * src/main.c: Add the display of PR_TUNABLE_RCVBUFSZ, PR_TUNABLE_SNDBUFSZ to the -V output. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * Makefile.in, configure.in: Attempting to get a DSO-enabled proftpd to link properly on platforms other than Linux by linking with libltdl as an object file, rather than linking against it as a library. 2004-10-31 castaglia <castaglia> * modules/mod_log.c: Since we're using %ld as a format, explicitly cast the value as a long int, rather than as a time_t. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * Make.rules.in, configure.in: Let's move the definition of HAVE_CONFIG_H into Make.rules. The ordering of HAVE_CONFIG_H in the flags is therefore nicer. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * configure.in: Define HAVE_CONFIG_H when compiling proftpd. Some of the files under lib/ require this, in order to pull in <config.h>, and subsequently some of the system headers needed. 2004-10-31 castaglia <castaglia> * lib/Makefile.in: If LIB_DEPS happens to be the empty string (as needed for Solaris), provide a target for it which does nothing. Otherwise make will be cranky. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * src/var.c: Quell a compiler warning about a label with no expressions. 2004-10-31 castaglia <castaglia> * config.h.in, configure.in: Check for the <string.h> header. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * configure.in: Initialize the socket buffer sizes, just to be safe. 2004-10-31 castaglia <castaglia> * RELEASE_NOTES, include/version.h: As Daniel noted, it should be "1.3.0", not just "1.3". 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * configure.in: Bourne shell tests on Solaris don't like testing empty values; they prefer the empty string if nothing else. 2004-10-31 castaglia <castaglia> * configure: Updating configure. 2004-10-31 castaglia <castaglia> * config.h.in, configure.in, include/options.h, src/data.c, src/dirtree.c: First, fix a bug where session.xfer.buf was allocated as PR_TUNABLE_BUFFER_SIZE, rather than PR_TUNABLE_XFER_BUFFER_SIZE. Next, try to be smarter about the default value for PR_TUNABLE_XFER_BUFFER_SIZE. The configure script now runs a small test program that uses getsockopt(2) to determine the sizes of a TCP socket's send and receive buffers. The smaller of the two buffer sizes is used as the default value for PR_TUNABLE_XFER_BUFFER_SIZE; the --enable-transfer-buffer-size option will override this test. The test program also records those send/receive buffer sizes in PR_TUNABLE_RCVBUFSZ and PR_TUNABLE_SNDBUFSZ, which were previously hardcoded to be 8K. 2004-10-31 castaglia <castaglia> * modules/mod_xfer.c, src/data.c: Style nits: struct stat variables should be named 'st', and the 'xlate' name for the ASCII handling routines is not appropriate in light of the i18n translation we will be needing. It's more of a transformation, really. 2004-10-31 castaglia <castaglia> * NEWS: Updating NEWS. 2004-10-31 castaglia <castaglia> * Make.rules.in, include/conf.h, include/display.h, include/modules.h, include/var.h, modules/mod_auth.c, modules/mod_core.c, src/display.c, src/main.c, src/var.c: Bug#2701 - Add Variables API. This also separates the code used for handling Display* files into its own file; src/main.c was calling into modules/mod_core.c for that function, which is bad design. Core code should not be using functions implemented in modules. 2004-10-31 castaglia <castaglia> * config.h.in, configure.in, src/main.c: Make sure that if --enable-dso is used, it shows up when the -V command-line option is used. 2004-10-31 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes. These still need some work. 2004-10-31 castaglia <castaglia> * src/inet.c: Typo. 2004-10-31 castaglia <castaglia> * src/parser.c: Update the license to reflect the proper original copyright holder(s). 2004-10-31 castaglia <castaglia> * Make.rules.in, contrib/mod_ifsession.c, include/conf.h, include/dirtree.h, include/parser.h, modules/mod_core.c, src/dirtree.c, src/main.c, src/parser.c: Separating the parser code out from src/dirtree.c into its own file, src/parser.c, with a proper header file documenting the API (include/parser.h). Update the rest of the core code to use the new API as needed. 2004-10-31 castaglia <castaglia> * contrib/mod_ifsession.c: There is not enough information to call resolve_deferred_dirs() at session init time. This function is usually for expanding the tilde in path names, and at session init time, we don't know the user name for expansion. 2004-10-30 castaglia <castaglia> * src/main.c: Use pr_auth_getgroups(), not auth_getgroups(). 2004-10-30 castaglia <castaglia> * contrib/mod_tls.c, contrib/mod_wrap.c, src/dirtree.c, src/fsio.c, src/support.c: Use the Auth API functions in the 'pr_' namespace. 2004-10-30 castaglia <castaglia> * modules/mod_core.c: Use the Auth API functions in the 'pr_' namespace rather than relying on the compatibility macros. 2004-10-30 castaglia <castaglia> * configure: Updating configure. 2004-10-30 castaglia <castaglia> * configure.in: Tweaking the configure script a bit, providing more complete path information in flags, etc. Not really needed for the default build process which we all know and love, but will become necessary when building DSO modules. 2004-10-30 castaglia <castaglia> * src/timers.c: This struct is no longer typedef'd. 2004-10-30 castaglia <castaglia> * include/timers.h: Include some redefines for supporting legacy modules that may not have been updated to use the 'pr_' namespace Timer API. 2004-10-30 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, contrib/mod_tls.c, modules/mod_ctrls.c: Update the contrib/ modules to use the Timer API in the 'pr_' namespace (and mod_ctrls, too). 2004-10-30 castaglia <castaglia> * include/timers.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/data.c, src/ident.c, src/inet.c, src/main.c, src/timers.c: Moving the Timer API into the 'pr_' namespace. 2004-10-30 castaglia <castaglia> * include/ftp.h: In the near future, a module will implement support for RFC2640's LANG command. 2004-10-30 castaglia <castaglia> * include/version.h: With the addition of DSO support, ProFTPD is now moving into the 1.3.x series. Whee! 2004-10-29 castaglia <castaglia> * ltmain.sh: Yet another bug in GNU's ltmain.sh script -- yet another undeclared variable. 2004-10-29 castaglia <castaglia> * doc/modules/mod_dso.html: Typo (spotted by Michael). 2004-10-29 castaglia <castaglia> * doc/modules/mod_dso.html: Adding documentation for mod_dso. 2004-10-29 castaglia <castaglia> * src/event.c: As a comment to myself indicated, it is necessary to pstrdup() the name of the event for which a listener is being registered, rather than stashing a pointer to the given name directly. This was causing a segfault when the pointer to the name given was part of a dynamically loaded module. 2004-10-29 castaglia <castaglia> * modules/mod_core.c: The DebugLevel configuration handler was not recognizing 10 as a valid debug level. 2004-10-29 castaglia <castaglia> * doc/modules/mod_ctrls.html: Grammar fix. 2004-10-29 castaglia <castaglia> * modules/mod_dso.c: Removing debugging cruft. 2004-10-29 castaglia <castaglia> * configure: Updating configure. 2004-10-29 castaglia <castaglia> * lib/libltdl/Makefile.in: Disable the actions that try to use autoheader and automake. These aren't installed on every system, and we don't really use them. 2004-10-29 castaglia <castaglia> * configure.in, lib/Makefile.in: Only configure, build, and clean the libltdl/ directory if --enable-dso is selected. Otherwise, let the build proceed as usual, and let the normal 'clean' target work without throwing an error. 2004-10-29 castaglia <castaglia> * configure: Updating configure. 2004-10-29 castaglia <castaglia> * Make.rules.in, Makefile.in, config.h.in, configure.in, include/default_paths.h, lib/Makefile.in, modules/Makefile.in: More DSO support changes. 2004-10-29 castaglia <castaglia> * ltmain.sh, modules/mod_dso.c: Adding a (slightly modified) copy of ltmain.sh, which is responsible for creating the libtool executable. Also adding mod_dso.c. All part of the preparations for adding DSO support to ProFTPD. 2004-10-29 castaglia <castaglia> * aclocal.m4: Adding GNU libtool M4 definitions to our aclocal.m4. 2004-10-29 castaglia <castaglia> * lib/libltdl/COPYING.LIB, lib/libltdl/Makefile.am, lib/libltdl/Makefile.in, lib/libltdl/README, lib/libltdl/acinclude.m4, lib/libltdl/aclocal.m4, lib/libltdl/config-h.in, lib/libltdl/config.guess, lib/libltdl/config.sub, lib/libltdl/configure, lib/libltdl/configure.ac, lib/libltdl/install-sh, lib/libltdl/ltdl.c, lib/libltdl/ltdl.h, lib/libltdl/ltmain.sh, lib/libltdl/missing: Adding GNU libtool's libltdl files to ProFTPD. 2004-10-29 castaglia <castaglia> * modules/mod_core.c: The checks for <IfDefine>, </IfDefine>, <IfModule>, and </IfModule>, within the respective directive handlers, need to be case-insensitive. 2004-10-28 castaglia <castaglia> * NEWS, utils/ftptop.c: Bug#2484 - Better ftptop formatting. 2004-10-27 castaglia <castaglia> * modules/mod_xfer.c: Typo. 2004-10-26 castaglia <castaglia> * include/dirtree.h, include/modules.h, include/proftpd.h, modules/mod_site.c, modules/mod_xfer.c, src/main.c, src/modules.c: Removing old privdata_t structures in favor of table entries, using the new Table API. 2004-10-26 castaglia <castaglia> * configure: Updating configure. 2004-10-26 castaglia <castaglia> * config.h.in, configure.in: Define CONFIG_DIR to point to the hardcoded directory containing the proftpd.conf file. 2004-10-26 castaglia <castaglia> * Make.rules.in, include/conf.h, include/table.h, src/table.c: Adding the Table API source. 2004-10-20 castaglia <castaglia> * contrib/mod_tls.c: It is possible for SSL_read() to return SSL_ERROR_WANT_WRITE as well, so handle that case the same way as handling SSL_ERROR_WANT_READ: select() on the socket until it is available for writing, then call SSL_read() again. Note that this happens (ideally) only when a renegotiation is occuring on the underlying SSL session. So set the SSL_MODE_AUTO_RETRY mode too (if the OpenSSL version supports it), which will hopefully keep renegotiations from causing SSL_read() to return SSL_ERROR_WANT_WRITE. 2004-10-18 castaglia <castaglia> * modules/mod_xfer.c: A few cases where log_pri() was being used, rather than pr_log_pri(). 2004-10-17 castaglia <castaglia> * doc/howto/Directory.html: Mention using quotations to enclose directory paths that contain spaces. 2004-10-17 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1965 - Change timing of handling of QUIT command. 2004-10-17 castaglia <castaglia> * contrib/mod_sql.c: Extraneous redeclaration of a variable. 2004-10-17 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Fixing bad reuse of variable name from outer scope. 2004-10-17 castaglia <castaglia> * RELEASE_NOTES: Mention the new MaxConnectionsPerHost directive in the release notes. 2004-10-17 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2273 - Ability to limit number of unauthenticated clients from a single host. 2004-10-16 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#2497 - Users can login without password if pam_start() fails. 2004-10-15 castaglia <castaglia> * NEWS, src/auth.c, src/dirtree.c: Bug#2499 - make_cmd() does not NULL-terminate cmd->argv[]. 2004-10-15 castaglia <castaglia> * modules/mod_auth.c: Move the handling of the AccessGrantMsg and DisplayLogin directives into the POST_CMD handler for PASS, rather than in the CMD handler. This is aesthetically where such handling should occur, and it makes it possible for future enhancements where contrib modules can add their own variables to be interpolated into the DisplayLogin file. 2004-10-12 castaglia <castaglia> * src/inet.c: Nicer error message. 2004-10-11 castaglia <castaglia> * src/bindings.c: Avoid an infinite loop problem with Bind is used by stashing pointers to the bindings to use, when accepting a client connection, in an array_header, rather than overloading the 'next' field in the conn_t struct. 2004-10-11 castaglia <castaglia> * src/dirtree.c: Fix case where the config tree was not dumped if the server_rec had an empty set of config_recs. The name of the server_rec should still be dumped in such cases. 2004-10-09 castaglia <castaglia> * doc/howto/TLS.html: Update link to FTPS Draft. 2004-10-09 castaglia <castaglia> * src/dirtree.c: The parser internals are crufty, and are in need of rewriting and prettification. Until then, make the code a little more legible (to me, at least). 2004-10-09 castaglia <castaglia> * NEWS, include/inet.h, include/netio.h, src/data.c, src/inet.c, src/netio.c: Bug#2494 - ABOR problem with Cisco routers copy ftp flash. 2004-10-09 castaglia <castaglia> * src/main.c: Generate a 'core.connect' event after a client has connected and we've forked, but before we lookup the server_rec for the session. 2004-10-09 jwm <jwm> * contrib/mod_ldap.c: release 2.8.14 2004-10-07 castaglia <castaglia> * contrib/ftpasswd: Explicitly mention "RequireValidShell off" if the given shell is not in /etc/shells. 2004-10-07 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2496 - NLST off-by-one bug when handling relative paths in a chrooted session. 2004-10-07 castaglia <castaglia> * modules/mod_ls.c: Use the Auth API in the 'pr_' namespace. 2004-10-02 castaglia <castaglia> * contrib/mod_tls.c: Handle signals when in potentially infinite gotos, so that the process can be interrupted. Expand the TLSLog entry for refused PROT commands a little more, to explain why the PROT command was refused (e.g. 'PROT C' was sent, but TLSRequired setting requires data protection). 2004-10-02 castaglia <castaglia> * doc/howto/TLS.html: Adding two more FAQs to the TLS howto. 2004-10-02 castaglia <castaglia> * contrib/mod_tls.c: Fix the logic when reporting on syscall errors, so that the errors are properly reported. 2004-10-02 castaglia <castaglia> * modules/mod_auth.c: Stop sending 232 as a response code to the PASS command; it is valid only in response to a USER command. Part of Bug #2164. 2004-10-02 castaglia <castaglia> * contrib/mod_tls.c: Remove code that is never compiled. 2004-10-01 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#2492 - Off-by-one error in FreeBSD PAM username length check. 2004-09-29 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#2490 - <Limit ALL> affects PORT command. The EPRT, EPSV, PORT, and PASV commands are now explicitly excluded from the ALL command group. 2004-09-28 jwm <jwm> * NEWS, contrib/mod_ldap.c: new mod_ldap 2.8.13 2004-09-27 castaglia <castaglia> * contrib/mod_quotatab_ldap.c: mod_ldap now looks for a HOOK, rather than a CMD, for the mod_quotatab_ldap lookup symbol, as per John's request. 2004-09-26 castaglia <castaglia> * modules/mod_auth_file.c, modules/mod_auth_unix.c: Use the 'pr_' namespace of the Auth API. 2004-09-26 castaglia <castaglia> * modules/mod_auth.c: Removing code that should not have been committed. Oops. 2004-09-26 castaglia <castaglia> * include/auth.h, include/conf.h, include/modules.h, modules/mod_auth.c, src/auth.c: Moving the Auth API into the 'pr_' namespace, and creating a separate header file defining the pr_auth function prototypes. 2004-09-26 castaglia <castaglia> * NEWS, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#2485 - SQL backend modules close all open connections too early. 2004-09-26 castaglia <castaglia> * NEWS: Mention the new init.d script for SuSE. 2004-09-26 castaglia <castaglia> * NEWS, RELEASE_NOTES, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#2392 - mod_sql needs better handling of its backend modules. 2004-09-26 castaglia <castaglia> * src/mkhome.c: Generate a 'core.create-home' event when creating a home directory; the event_data is currently the name of the user whose home is being created. And correct a typo. 2004-09-25 jwm <jwm> * contrib/dist/rpm/proftpd.init.d.suse: suse init script Submitted by: Daniel Weuthen <dw@megabit.net> 2004-09-23 castaglia <castaglia> * NEWS, include/privs.h: Bug#2488 - Wrong order of privs calls on HP generates "unable to setregid()" error. 2004-09-18 castaglia <castaglia> * contrib/mod_quotatab.c: When handling the 'core.restart' event, do not bounce the log file descriptor. Restarts are processed by the daemon process, and mod_quotatab only logs in session processes; bouncing the log descriptor in the daemon process was causing mod_quotatab to open a descriptor onto stdout, which then wreaked havoc with the rest of the system. 2004-09-18 castaglia <castaglia> * src/proftpd.8.in: Document the new -N option in the proftpd(8) man page. 2004-09-18 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_core.c, src/main.c: Bug#2468 - Ability to disable address/port collision checking. 2004-09-17 castaglia <castaglia> * contrib/mod_quotatab.c: Explicitly use the more modern 'pr_log_openfile' symbol. 2004-09-15 castaglia <castaglia> * include/conf.h: Typo (log -> long). 2004-09-14 castaglia <castaglia> * NEWS, contrib/mod_ldap.c, contrib/mod_radius.c, contrib/mod_sql.c, include/conf.h, include/modules.h, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_unix.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/auth.c, src/data.c, src/xferlog.c: Bug#2389 - 64-bit compilation warnings. 2004-09-13 castaglia <castaglia> * src/support.c: Add an explicit typecast to quell warnings on 64-bit platforms. 2004-09-13 castaglia <castaglia> * modules/mod_auth_pam.c: Quell a compiler warning on Solaris with an explicit typecast. 2004-09-13 castaglia <castaglia> * doc/howto/Limit.html: Add example of using <Class> and mod_ifsession to configure a user so that they can only login from a certain IP range. 2004-09-12 castaglia <castaglia> * doc/howto/FXP.html: Add text noting the ISPs may filter FTP ports, blocking FXP. 2004-09-11 castaglia <castaglia> * src/main.c: Typo. 2004-09-08 castaglia <castaglia> * contrib/mod_quotatab.c: Add logging of the non-ENOENT cases when the uploaded file has disappeared. 2004-09-07 castaglia <castaglia> * src/main.c: Settings display format tweak. 2004-09-07 castaglia <castaglia> * src/main.c: Add --settings option to the long getopt() list. 2004-09-07 castaglia <castaglia> * src/main.c: Update the long descriptions for the -n, -d command-line parameters. 2004-09-07 castaglia <castaglia> * include/proftpd.h: Removing cruft. 2004-09-07 castaglia <castaglia> * contrib/mod_quotatab.c: Handle the case where, after an upload, the file to which bytes have been added has disappeared (as when MaxStoreFileSize and DeleteAbortedStores are in effect). 2004-09-07 castaglia <castaglia> * src/proftpd.8.in: Mention debug level 10 in the proftpd(8) man page. 2004-09-05 castaglia <castaglia> * src/event.c: More graceful handling of NULL evh->module pointers. 2004-09-05 castaglia <castaglia> * doc/mod_sample.c: Update the sample module to include registering the module version. 2004-09-05 castaglia <castaglia> * configure: Updating configure script. 2004-09-05 castaglia <castaglia> * src/main.c: Display the --enable-scoreboard-updates setting in the -V output. 2004-09-05 castaglia <castaglia> * NEWS, config.h.in, configure.in: Add autoconf support for a --enable-scoreboard-updates option. 2004-09-05 castaglia <castaglia> * NEWS, include/options.h, modules/mod_xfer.c: Bug#2455 - Allow fine-tuning of how often mod_xfer updates the scoreboard. 2004-09-05 castaglia <castaglia> * RELEASE_NOTES: Update release notes for 1.2.11 release cycle. 2004-09-05 castaglia <castaglia> * src/proftpd.8.in: Remove extra space. 2004-09-05 castaglia <castaglia> * src/proftpd.8.in: Document the new -V command-line option in the proftpd(8) man page. 2004-09-05 castaglia <castaglia> * configure: Updating configure script. 2004-09-05 castaglia <castaglia> * NEWS, config.h.in, configure.in, src/main.c: Add support for a -V command-line option, which displays various compile-time settings, a la Apache. 2004-09-05 castaglia <castaglia> * config.h.in, include/conf.h: Move the HPUX socklen_t bug fix to include/conf.h, a header file that is not preprocessed by autoconf. The autoconf preprocessing was causing the #undef in the generated config.h header file to be commented out, which would result in complaints from stringent compilers. 2004-09-05 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Remove the _MOD_VERSION #define from mod_sql, as it was not doing as was intended, I think. Much better, cleaner, and more explicit to have each module #define its own VERSION string, and to use that version string consistently within the module. 2004-09-05 castaglia <castaglia> * modules/mod_log.c: Convert mod_log to use the Events API. 2004-09-05 castaglia <castaglia> * contrib/mod_rewrite.c: Convert mod_rewrite to use the Events API. 2004-09-05 castaglia <castaglia> * src/regexp.c: The Regexp API need not use the core_module pointer for registering its callbacks; registered events can have a NULL module pointer. 2004-09-05 castaglia <castaglia> * src/regexp.c: Convert the Regexp API to use the Events API for cleanup. 2004-09-05 castaglia <castaglia> * modules/mod_xfer.c: Update mod_xfer to use the Events API a little more. 2004-09-05 castaglia <castaglia> * modules/mod_auth_unix.c: Convert mod_auth_unix to use the Events API. 2004-09-05 castaglia <castaglia> * modules/mod_auth_pam.c: Convert mod_auth_pam to use the Events API. 2004-09-05 castaglia <castaglia> * contrib/mod_sql.c: Convert mod_sql to use the Events API. 2004-09-05 castaglia <castaglia> * contrib/mod_radius.c: Convert mod_radius to use the Events API. 2004-09-05 castaglia <castaglia> * contrib/mod_quotatab.c: Convert mod_quotatab to using the Events API. 2004-09-04 castaglia <castaglia> * NEWS, src/fsio.c: Bug#2476 - Incorrect detection of symbolic link loop across devices. The algorithm used for loop detection relied solely on the inode number, which does not account for the possibility that different devices may reuse inode numbers. This patch adds the device number to the detection algorithm. 2004-09-04 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2463 - mod_xfer doesn't check how many bytes it has written to disk. 2004-09-04 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2458 - Bad handling of CreateHome parameters. 2004-09-04 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2457 - Directory listing provides bad info when path ends with /. 2004-09-04 castaglia <castaglia> * NEWS, src/main.c: Bug#2449 - ProFTPD silently ignores extra command-line parameters. 2004-09-04 castaglia <castaglia> * include/version.h: Update version, indicating CVS status once more. 2004-09-04 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2004-09-04 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing to release 1.2.10-final. 2004-08-25 castaglia <castaglia> * src/data.c: When using sendfile(), only reset the transmission timers if bytes have actually been written out. sendfile() can return zero, indicating that it wrote zero bytes -- we do not want to reset the timers in this case, for it could indicate other issues with the file descriptor from which data are being read. This fixes an endless loop seen at a particular site involving use of sendfile() and NFS/SAN-shared files. 2004-08-24 castaglia <castaglia> * modules/mod_xfer.c: Reset the 'have_prot' flag to false when a successful PROT C command is processed. 2004-08-12 castaglia <castaglia> * modules/mod_xfer.c: Update to patch to mod_xfer for Bug #2444: the PROT command is allowed before authentication. The patch was required authentication first, causing issutes for FTPS clients that sent PROT before USER. 2004-08-07 castaglia <castaglia> * NEWS, src/log.c, src/main.c: Bug#2427 - proftpd gets a memory fault when run from ssh batch mode. 2004-08-07 castaglia <castaglia> * src/main.c: Two more cases where the IP address contacted by the client should be used, if present, rather than the ServerAddress field of the relevant server_rec. 2004-08-07 castaglia <castaglia> * src/main.c: Fix a minor bug in the reporting of ServerIdent, where the wrong IP address may be displayed. For example, with the following configuration: <VirtualHost 127.0.0.1> Bind 1.2.3.4 ... </VirtualHost> a client connecting to 1.2.3.4 should see "[127.0.0.1]" at the tail end of the default ServerIdent displayed, rather than the more appropriate "[1.2.3.4]". The fix is to use the IP address to which the client connected, rather than the ServerAddress field of the server_rec to which the client connected. As the case with Bind shows, multiple IP addresses may be associated with the same server_rec, and the IP address displayed to the connecting client should not "leak" this fact. 2004-08-06 castaglia <castaglia> * src/main.c: Reorder the timing of calling pr_ident_lookup(), making it occur after modules have been initialized. This makes it possible for mod_ifsession, for example, to alter if ident lookups will be enabled, e.g.: <IfClass foo> IdentLookups off </IfClass> so that ident lookups can be enabled/disabled selectively. 2004-08-06 castaglia <castaglia> * doc/howto/Limit.html: Add description of applying <Limit> sections to SITE commands. 2004-08-05 castaglia <castaglia> * RELEASE_NOTES: Updating the release notes. 2004-08-04 castaglia <castaglia> * NEWS, modules/mod_core.c: Add support for automatically scrubbing the scoreboard for stale sessions on session init time, for inetd proftpds. Scrubbing is already done periodically for standalone proftpds. 2004-08-03 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2444 - Use of sendfile() does not interoperate well with RFC2228 security mechanisms. 2004-08-03 castaglia <castaglia> * contrib/mod_sql.c: Convert mod_sql to using ProFTPD's sstrcat() function, rather than strcat(3). 2004-08-01 castaglia <castaglia> * NEWS, modules/mod_auth_file.c: Bug#2445 - AuthUserFile in <Global> context overrides <VirtualHost> setting. Note that this bug will be revisited in the next release cycle, and fixed The Right Way(tm). 2004-07-31 castaglia <castaglia> * modules/mod_core.c: Store the original name configured by a MasqueradeAddress directive in the config_rec, along with the resolved netaddr object. This will make it possible to re-resolve the original name at a later date. 2004-07-31 castaglia <castaglia> * doc/howto/Limit.html: Add example <Limit LOGIN> configuration that allows only anonymous logins. 2004-07-30 castaglia <castaglia> * modules/mod_core.c: Make certain that all occurrences of an environment variable are removed when handling the UnsetEnv directive; a environment variable can appear multiple times in the environ array. 2004-07-28 castaglia <castaglia> * doc/howto/Authentication.html: Updating the section on "Resolving ~", fixing mention of mod_auth_pam. 2004-07-22 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#2442 - Segfault in FreeBSD PAM library with long login names. 2004-07-22 castaglia <castaglia> * README.PAM: Update the PAM docs about AuthPAMAuthoritative, and add an Issues section. 2004-07-22 castaglia <castaglia> * contrib/mod_ldap.c, contrib/mod_sql.c: Apply the same criteria for including <crypt.h> to mod_ldap and mod_sql as are used for mod_auth_unix and mod_auth_file. 2004-07-21 castaglia <castaglia> * NEWS, modules/mod_auth_file.c, modules/mod_auth_unix.c: Bug #2411 - AIX5 portability bug with mod_auth_unix, mod_auth_file. Using gcc on AIX5, these files compile without complaint. However, using the IBM compiler and following the instructions in README.AIX, they will fail on AIX5. The fix is to extend for AIX5 the portability hack that is done for AIX4. 2004-07-20 castaglia <castaglia> * NEWS, include/modules.h, modules/mod_core.c, src/auth.c: Bug #2440 - Unable to use PAM authentication properly. As explained in the bug report, the deprecation of all *Authoritative directives causes an issue with modules like mod_auth_pam. This patch makes use of an unused flag variable in the authtable structure in order to implement the setting of auth module authoritativeness via the AuthOrder directive. 2004-07-15 castaglia <castaglia> * modules/mod_ctrls.c: We were forgetting to remove our previous timer before adding a new one. 2004-07-15 castaglia <castaglia> * src/timers.c: Prevent add_timer() from adding multiple timers that use the same timerno. 2004-07-14 castaglia <castaglia> * modules/mod_ctrls.c: We don't want child processes handling these events for mod_ctrls. 2004-07-14 castaglia <castaglia> * include/version.h: Let's try this again. 2004-07-13 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2004-07-13 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: How embarassing. A typo broke 1.2.10rc2, necessitating a release of rc3. 2004-07-13 castaglia <castaglia> * modules/mod_core.c: Typo. 2004-07-13 castaglia <castaglia> * include/version.h: Bump version for CVS checkouts. 2004-07-13 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2004-07-13 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.2.10rc2. 2004-07-13 castaglia <castaglia> * modules/mod_core.c: Variable name collision from different scopes; fix to quell a compiler warning. 2004-07-13 castaglia <castaglia> * src/support.c: Quell a warning about reusing a global symbol name 'dup'. 2004-07-13 castaglia <castaglia> * modules/mod_core.c: Rest of patch for Bug#2439. 2004-07-11 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2439 - <Limit CWD> doesn't work. 2004-07-09 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2438 - Display variable %z not expanded properly. 2004-07-08 castaglia <castaglia> * contrib/mod_ifsession.c: Only perform <Limit LOGIN> checks if we've actually merged something in. Also, when performing this check, use the TOPLEVEL_CONF macro (which correctly handles <Anonymous> contexts) to avoid inadvertently checking the wrong <Limit LOGIN> block. 2004-07-06 castaglia <castaglia> * doc/howto/TLS.html: Update the link to the most current FTPS Draft. 2004-07-01 castaglia <castaglia> * src/dirtree.c: Fix pr_expr_eval_class_and() and pr_expr_eval_class_or() to properly handle the case where session.class may be NULL (as when there is no <Class> definition that matches the connecting client). Previously, if there was no matching <Class> for a client, a rule such as: <IfClass !name> would evaluate to false. It _should_ evaluate to true; this change makes it so. This fixes a problem Michael was encountering with mod_ifsession and Classes. 2004-07-01 castaglia <castaglia> * src/dirtree.c: When handling <Global> contexts in fixup_globals(), only handle contexts that have both the right config_type (CONF_GLOBAL) _and_ the right name ("<Global>"). Contrib modules (e.g. mod_ifsession) might create their own contexts that use the CONF_GLOBAL flag; in the case of mod_ifsession, the fact that fixup_globals() was handling the mod_ifsession-created context config_recs was causing a bug when <If*> sections were used within <Global> contexts. This change also includes some style cleanup. 2004-07-01 castaglia <castaglia> * src/dirtree.c: Style. 2004-07-01 castaglia <castaglia> * contrib/mod_tls.c: Improve mod_tls' error reporting by displaying the paths that are given in the configuration data for various files, in the cases where mod_tls determines that those paths do not exist. 2004-06-30 castaglia <castaglia> * doc/howto/TLS.html: Updating the mod_tls docs, and the TLS howto, to mention the new AllowPerUser TLSOption, and the risks involved in its use. 2004-06-30 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2419 - Ability to disable TLSRequired on per-user basis (e.g. for anonymous logins). 2004-06-30 castaglia <castaglia> * NEWS, src/class.c, src/netacl.c, src/netaddr.c: Bug#2303 - Problem evaluating multiple <Class> rules. 2004-06-23 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2431 - mod_sql does not use UID/GID properly in cache lookups. For the most part this is an issue only if you define a user account with UID of zero, or a group account with GID of zero, in your SQL user tables. 2004-06-17 castaglia <castaglia> * NEWS, include/dirtree.h, src/dirtree.c, src/main.c: Bug#2418 - chmod returns 550 with filename containing multiple spaces. 2004-06-17 castaglia <castaglia> * NEWS: Typo. 2004-06-15 castaglia <castaglia> * src/netio.c: Style. 2004-06-12 castaglia <castaglia> * src/modules.c: Removal of symbols (e.g. AuthOrder) was not working properly without this change. 2004-06-11 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2422 - %v not working in SQLNamedQuery. 2004-06-10 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2411 - Caching effects cause RNTO to fail if AllowOverwrite is off and target path does not exist. 2004-06-10 castaglia <castaglia> * contrib/mod_sql.c: Remove debugging cruft. 2004-06-10 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2424 - SQLDefaultHomedir overrides column value. 2004-06-08 castaglia <castaglia> * doc/howto/ServerType.html: ProFTPD is now IPv6-capable; it simply needs the proper configure option. Update the ServerType howto to reflect this (relevant for Solaris users). 2004-06-07 castaglia <castaglia> * contrib/mod_quotatab.h, contrib/mod_sql.c: Increment versions of mod_quotatab, mod_sql. 2004-06-07 castaglia <castaglia> * NEWS, contrib/mod_quotatab_sql.c, contrib/mod_sql.c, include/support.h, src/support.c: Bug#2420 - Name field is not escaped before querying database. This patch fixes mod_quotatab_sql to escape the name string used. To do this, several changes were made: the _sql_strip_spaces() function of mod_sql.c was made a public ProFTPD API string function (pr_str_strip), so that that code need not be duplicated in both mod_sql.c and mod_quotatab_sql.c, a new HOOK to mod_sql's sql_escapestring function was added, under the symbol 'sql_escapestr', to avoid further code duplication, and mod_quotatab_sql was updated to make use of the new API. 2004-06-06 castaglia <castaglia> * contrib/mod_tls.c: Fix scrubbing of passphrases when a session process exits. 2004-05-31 castaglia <castaglia> * include/dirtree.h, include/event.h, src/dirtree.c, src/event.c: Add a pr_event_dump() function, for dumping internal Events info. Adjust config-dumping function names to match (i.e. pr_config_dump()). 2004-05-31 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Removing the 'dump' control action from mod_ctrls_admin. A new module, mod_dumper, will implement this control action. I anticipate the audience for mod_dumper to be much smaller than for mod_ctrls_admin. 2004-05-31 castaglia <castaglia> * src/modules.c: Slightly cleaner structure. 2004-05-31 castaglia <castaglia> * src/dirtree.c: Attempting to dump the config for a minimally configured server_rec (i.e. server_rec->conf is NULL) would segfault. 2004-05-31 castaglia <castaglia> * src/modules.c: When iterating through the stash for removing symbols, be sure to pass in the previously-found entry, not NULL. Otherwise, symbols can inadvertently be skipped. 2004-05-31 castaglia <castaglia> * src/modules.c: Fix removal of a module from the loaded_modules list. 2004-05-31 castaglia <castaglia> * src/modules.c: Fix a bug introduced in the handling of HOOK vs CMD symbols. Fix handling of loaded_modules pointer when unloading a module. Add signal handling where appropriate. 2004-05-31 castaglia <castaglia> * src/modules.c: Missed a case where the PR_SYM_CONF hashing needed to be handled differently. 2004-05-31 castaglia <castaglia> * src/modules.c: The changes made earlier, to have processing of configuration directives use the stash directly, caused a problem. The prior structure allowed for case-insensitive comparisons between the directive name in the config file and the name defined by the processing module. By switching to doing lookups from the stash directly, such case-insensitive comparisons became difficult. So, for now, whenever a PR_SYM_CONF symbol is added or requested from the stash, its hash value is calculated not from the symbol name directly, but from a lowercased version of the name (and only for PR_SYM_CONF symbols). In order to make this work, there is now special-case handling of PR_SYM_CONF, and the stash_lookup() functions use strcasecmp() rather than strcmp(). I hope this doesn't cause any problems with other symbols. In the future, when the proposed Tables API is complete, I'd like to have completely separate tables for the different symbol types. This will (hopefully) make lookups faster (smaller namespace to search) and allow customized hashing/comparison functions (PR_SYM_CONF symbols needing different treatment from other symbols in this case) on a per-table basis. 2004-05-30 castaglia <castaglia> * contrib/mod_ctrls_admin.c, include/modules.h, modules/mod_core.c, src/modules.c: Add pr_module_load() and pr_module_unload() functions, for loading and unloading modules (and their symbols) from the stash. Rework the rest of the code to work with the changes (i.e. removed crufty globals). 2004-05-30 castaglia <castaglia> * NEWS: Bug#2125 - -vv command line switch should list versions of modules. 2004-05-30 castaglia <castaglia> * modules/mod_cap.c, src/main.c: Minor formatting tweak. Update mod_cap to report its version. Other modules will follow. 2004-05-30 castaglia <castaglia> * src/main.c: Typo. 2004-05-30 castaglia <castaglia> * src/main.c: Bug#2125 - -vv command line switch should list versions of modules. With this change, modules _can_ report their version (or other short descriptor)in such a way that it will be listed if the -vv command line option is used. It is not required for modules to do so; if they do not, just the module name is displayed. 2004-05-30 castaglia <castaglia> * include/modules.h: Extend the module structure to include fields for module version, and an opage handle for the module (for libltdl pointers). This extension do not break the currently-defined module structures in module files. 2004-05-30 castaglia <castaglia> * contrib/mod_ctrls_admin.c, src/dirtree.c, src/modules.c, src/sets.c: More prep work for loadable modules. This change removes use of the m_conftable global variable, shifting the users of that variable to using the stash directly, via pr_stash_get_symbol(). For example, mod_ctrls_admin was using m_conftable for supporting the 'get directives' control action. Now that handler iterates through the stash directly for PR_SYM_CONF symbols (which required some adjusting of the stash internals to allow for such interating). 2004-05-29 castaglia <castaglia> * src/event.c: Make pr_event_unregister() function as documented if given a NULL callback argument. 2004-05-29 castaglia <castaglia> * include/modules.h, modules/glue.sh, modules/mod_core.c, src/modules.c: More fun with the loaded_modules list. Initially, the loaded_modules linked list will be NULL; it is the job of modules_init() to initialize the modules in the static_modules list, and add a pointer to the loaded module to the loaded_modules list. More work needs to be done on abstracting the process of loading of a module. 2004-05-29 castaglia <castaglia> * modules/mod_ctrls.c: Clean up the ControlsLog entries when encountering a stale connection: we don't need to know the full timestamps, just the difference as compared to the ControlsAuthFreshness. 2004-05-29 castaglia <castaglia> * include/modules.h, src/main.c, src/modules.c: Use "modules", plural, to indicate that the function acts on multiple modules, not just one. 2004-05-29 castaglia <castaglia> * src/modules.c: Add sane errno values. 2004-05-29 castaglia <castaglia> * include/modules.h, modules/glue.sh, modules/mod_core.c, modules/mod_ctrls.c, src/main.c, src/modules.c: Beginning work on supporting loadable modules. The modules/glue.sh file autogenerates a file that defines the static_modules array, which contains the module structure pointers from all the statically compiled modules. This list cannot be modified. For loadable modules, we need a modifiable list, which I've added to the script: loaded_modules. Initially, loaded_modules is identical to static_modules. A pr_module_get() function has been added, to lookup a module pointer given its name. 2004-05-29 castaglia <castaglia> * modules/mod_ctrls.c: Add more info to the ControlsLog when the ControlsAuthFreshness is exceeded, to help in debugging why this happens. 2004-05-29 castaglia <castaglia> * contrib/mod_tls.c: Typo (thanks John!). 2004-05-29 castaglia <castaglia> * doc/howto/Directory.html: Wording update. 2004-05-29 castaglia <castaglia> * contrib/mod_tls.c: Fix handling of memory passed to mlock(2). It seems that mlock(2) is very picky, and wants a page-aligned address only. malloc(3)/calloc(3) do not return page-aligned addresses by default (although FreeBSD's man page suggests that for a sufficient size request, they will), so we help them along by adding some page-alignment code. We still want to stash the pointer returned by malloc(), not the aligned address, so that we can properly free the allocated memory later. Also use pr_log_debug(), rather than logging to the TLSLog, when locking passphrases into memory, for at that point in the server lifecycle, the TLSLog has not yet been opened. 2004-05-29 castaglia <castaglia> * contrib/mod_tls.c: Silence a compiler warning by providing a default value. 2004-05-29 castaglia <castaglia> * contrib/mod_tls.c: Typo. 2004-05-29 castaglia <castaglia> * src/scoreboard.c: Unblock signals properly. 2004-05-28 castaglia <castaglia> * README.modules: Update this README. 2004-05-27 castaglia <castaglia> * contrib/mod_tls.c: Registering for the wrong event: we want 'core.postparse', not 'core.restart'. Close the TLSLog during a restart, so that it can be rolled. The TLSLog will be reopened by the next session. 2004-05-26 castaglia <castaglia> * src/ctrls.c: Make sure that the destination ctrl object has a valid temporary pool from which to copy arguments. 2004-05-26 castaglia <castaglia> * src/dirtree.c: Reset the sid (server ID) counter when preparing to parse a configuration. 2004-05-26 castaglia <castaglia> * configure: Updating configure script. 2004-05-26 castaglia <castaglia> * config.h.in, configure.in: Check if intptr_t is defined. 2004-05-25 castaglia <castaglia> * modules/mod_ctrls.c: When closing fds, set them to -1, to make sure that a cached fd value is not inadvertently used somewhere it shouldn't be. Also, block alarms when handling the 'core.restart' event. 2004-05-25 castaglia <castaglia> * contrib/mod_tls.c: Check the return value of SSL_CTX_set_default_verify_locations(), and log the error (if any). 2004-05-25 castaglia <castaglia> * doc/howto/BCP.html: Wording. 2004-05-25 castaglia <castaglia> * src/main.c: Make sure that fixup_servers() happens before generating the 'core.postparse' event (mod_tls' 'core.postparse' handler was tickling a segfault because one of the server_recs had a NULL ServerName field; fixup_servers() sets all of the server_rec fields appropriately). 2004-05-24 castaglia <castaglia> * modules/mod_ctrls.c: Fix a problem when restarting a proftpd with mod_ctrls. Some variables were allocated from the module pool, and then being used after that pool had been destroyed/reallocated. This meant that different configurations and interactions might (or might not) work. 2004-05-24 castaglia <castaglia> * lib/pr-syslog.c: Mention the Sun bug number that caused the /dev/log kernel memory leak. 2004-05-23 castaglia <castaglia> * contrib/mod_quotatab_sql.c: Typo. 2004-05-22 castaglia <castaglia> * contrib/mod_quotatab_sql.c: Don't complain about being unable to delete a nonexistent QuotaLock. 2004-05-21 castaglia <castaglia> * RELEASE_NOTES: Style. 2004-05-21 castaglia <castaglia> * RELEASE_NOTES: Update the release notes with mention of TimeoutLinger. 2004-05-21 castaglia <castaglia> * NEWS, include/data.h, modules/mod_core.c, src/data.c: Add a TimeoutLinger option. It's just simpler to change this value via the config file, for those sites that encounter troubles with lingering closes, rather than requiring a reconfigure and recompile. 2004-05-20 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Check for signals while waiting for all kids to end when handling a graceful shutdown. 2004-05-20 castaglia <castaglia> * doc/howto/Controls.html, doc/howto/index.html: Add a Controls howto. 2004-05-19 castaglia <castaglia> * modules/mod_auth.c: Make sure a Class has been assigned before attempting to use it. 2004-05-19 castaglia <castaglia> * NEWS, lib/pr-syslog.c, src/main.c: Bug#2336 - Use of /dev/log on Solaris leads to kernel memory leak. 2004-05-19 castaglia <castaglia> * src/dirtree.c: Style. 2004-05-17 castaglia <castaglia> * modules/mod_auth.c, modules/mod_xfer.c, src/data.c, src/main.c: Generate events when the Timeout* callbacks cause the session to time out. 2004-05-15 castaglia <castaglia> * src/data.c: Fix an edge case when handling ASCII translation: if this buffer ends in a CR, and the next buffer starts with an LF, we need not add a CR in front of the LF. Prior to this change, though, proftpd would forget about that dangling CR in the previous buffer, treat the LF as a bare LF, and add a CR, resulting in a CR-CR-LF sequence in the output stream rather than the proper CR-LF. 2004-05-13 castaglia <castaglia> * contrib/mod_tls.c, include/modules.h, src/main.c, src/modules.c: Remove the explicit postparse callback registration code in favor of the new Events API. 2004-05-13 castaglia <castaglia> * contrib/mod_tls.c: Use more future-proof APIs to access the X509v3 subjectAltNames in the client cert. Properly NUL-terminate strings obtained from memory BIOs. 2004-05-13 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/mkhome.c: Bug#2410 - CreateHome always copies skel directory. 2004-05-12 castaglia <castaglia> * src/main.c: I don't think this is valid anymore, if it ever was. The IPV6_ADDRFORM socket option is not supported on FreeBSD or Solaris, and looks to be deprecated (if not removed entirely) in later Linux kernels. 2004-05-11 castaglia <castaglia> * NEWS, modules/mod_auth_file.c, modules/mod_auth_unix.c: Bug#2407 - mod_auth_file does not allow for proper cascading of "end" and "set" auth requests 2004-05-11 castaglia <castaglia> * include/modules.h, src/main.c, src/modules.c: Removing the daemon startup registration handlers; these have been superceded by Events (e.g. the "core.startup" event). 2004-05-10 castaglia <castaglia> * NEWS, src/main.c: Bug#2332 - SO_OOBINLINE error after upgrading proftpd from 1.2.6 to 1.2.9. Attempt to fix by moving the setting of these socket options to happen earlier in the session. 2004-05-09 castaglia <castaglia> * src/data.c: When opening a data connection, check for the ESPV ALL mode as well. 2004-05-09 castaglia <castaglia> * src/fsio.c: When looking up the FS to use for a path, always start with the root FS ("/") as the best FS to handle the path. This fixes a bug where the FS handlers registered by modules like mod_md5fs or mod_gzipfs were being used for paths other than those for which they were registered. Also fix a bug where an FS that did not start with a '/', such as one used by mod_conf_sql, would cause the FSIO API to prepend the current location when it shouldn't have; the FSIO API simply needed to use the proper check for whether the given path was an absolute path or not. 2004-05-08 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Style cleanup of the SQL backend modules. Also updating them to use an event handler for the "core.exit" event. Fixed their session initialization routines to always allocate a new conn_pool and a new conn_cache. Eventually the mod_sql API will be revamped to handle these structures a little better. 2004-05-07 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2366 - Add support for -h list option. 2004-05-07 castaglia <castaglia> * modules/mod_ls.c: Redeclaring a variable isn't a good thing to do. 2004-05-07 castaglia <castaglia> * src/child.c: Include <signal.h> so that the kill(2) function prototype is visible. 2004-05-06 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2405 - "LIST *" should not list dotfiles. 2004-05-05 castaglia <castaglia> * src/child.c: Fix the logic determining when to create a new child list. Also, when creating that list, use a subpool of the child_pool, rather than passing child_pool itself; the list allocator assigns the given pool into the list's 'pool' member, rather than creating a subpool from the given pool and allocating the list from what (which is how I would expect it to be done). 2004-05-04 castaglia <castaglia> * lib/glibc-glob.c: The buffer length should be PR_TUNABLE_LOGIN_MAX + 1. 2004-05-04 castaglia <castaglia> * lib/glibc-glob.c: Patch the bundled glob implementation to use PR_TUNABLE_LOGIN_MAX when the _SC_LOGIN_MAX sysconf variable is not available. This brings the implementation more in line with the rest of proftpd. 2004-05-03 castaglia <castaglia> * NEWS, include/class.h, src/class.c, src/main.c: Bug#2403 - Sending SIGHUP to proftpd stops it when using Classes. 2004-05-02 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#2082 - Add mod_rewrite "replaceall" builtin function. 2004-05-02 castaglia <castaglia> * NEWS, contrib/mod_ctrls_admin.c: Bug#2399 - Rename start/stop control actions to up/down. 2004-05-02 castaglia <castaglia> * include/glibc-glob.h: Quell some warnings seen on FreeBSD by checking that a preprocessor symbol (_FILE_OFFSET_BITS) is defined before using its value in a comparison. 2004-05-01 castaglia <castaglia> * contrib/mod_tls.c: Only report the version of OpenSSL being used at debug level 2 or higher. 2004-05-01 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2401 - MaxClientsPerClass only checks first directive in config file. 2004-05-01 castaglia <castaglia> * NEWS, src/class.c: Bug#2400 - <Class> search order is wrong. 2004-04-30 castaglia <castaglia> * NEWS, contrib/mod_ctrls_admin.c, include/child.h, src/child.c, src/main.c: Bug#2034 - Add support for a "graceful shutdown" signal. Includes adding a convenience function to the Child API, child_signal(), for sending a given signal to all child processes. 2004-04-29 castaglia <castaglia> * Make.rules.in, include/child.h, include/conf.h, src/child.c, src/main.c: Move the handling of child objects into their own file. This will help by letting modules be able to know how many existing sessions there are. However, the child list routines will not be in the public "pr_" namespace, as they are not currently suitable for general consumption. 2004-04-29 castaglia <castaglia> * contrib/mod_ldap.c, include/sets.h, modules/mod_auth_unix.c, src/dirtree.c, src/main.c, src/sets.c, src/support.c: Rename crufty 'mempool' symbol to be 'pool', which is more consistent with the pool members of other proftpd structures. 2004-04-29 castaglia <castaglia> * README.IPv6: Note the sysctl names that affect handling of wildcard sockets and IPv6 binds. The current code should override these sysctl settings, but it is still good to have the sysctl names noted for reference. 2004-04-29 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2396 - NLST command doesn't understand options. 2004-04-28 castaglia <castaglia> * modules/mod_core.c: When using pr_fs_copy_file() to handle RNFR/RNTO across device mounts, make sure to unlink the source path. 2004-04-28 castaglia <castaglia> * include/version.h: Set version back to CVS status for rc2. 2004-04-28 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2004-04-28 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing to roll 1.2.10rc1 tarball. 2004-04-28 castaglia <castaglia> * README, RELEASE_NOTES: Add a RELEASE_NOTES file (name may change in the future) that will track the sort of comments usually mentioned in the release announcement email, including new and deprecated configuration directives, new and deprecated modules, upgrade notes, etc. Add a note about RELEASE_NOTES to the README. 2004-04-27 castaglia <castaglia> * modules/mod_xfer.c: Make the error message returned here consistent with the other occurrences of 500 responses in mod_xfer. 2004-04-26 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Split the Boolean checking code into a public function, so that it can be used for checking strings from sources other than cmd_recs. 2004-04-24 castaglia <castaglia> * modules/mod_auth.c: Do not warn about a successful root login until after root has indeed successfully logged in. 2004-04-24 castaglia <castaglia> * doc/modules/mod_auth_pam.html: Add HTML docs for mod_auth_pam. 2004-04-23 castaglia <castaglia> * modules/mod_ls.c: The prior fix for Bug#2367 has some unintended (i.e. _bad_) consequence, spotted by Michael. This fixes it up properly (hopefully for good). 2004-04-23 castaglia <castaglia> * src/netacl.c: The '{' character is also used in globs. 2004-04-23 castaglia <castaglia> * modules/mod_ls.c: Write a debug message, level 1, when NLST commands with options (as from ncftp) are received. 2004-04-23 castaglia <castaglia> * contrib/mod_sql.c: Protect against a possible segfault that occurs when mod_sql assumes that a query has data, by checking for a valid data pointed in the returned modret_t object. 2004-04-22 castaglia <castaglia> * src/inet.c: Only set the TOS (Type Of Service) flags on IPv4 sockets; IPv6 sockets don't support TOS flags, as far as I know. This should fix the error setting write fd IP_TOS: Option not supported by protocol errors seen on some platforms (e.g. Solaris). 2004-04-21 castaglia <castaglia> * doc/howto/Classes.html, doc/howto/index.html: Add a howto for the new <Class> format. 2004-04-21 castaglia <castaglia> * src/main.c: Style cleanup. 2004-04-21 castaglia <castaglia> * src/main.c: Capture the actual errno value, rather than assuming that intervening functions will not change errno. 2004-04-20 castaglia <castaglia> * doc/howto/Limit.html: Consistency of style is a Good Thing. 2004-04-20 castaglia <castaglia> * contrib/mod_ctrls_admin.c: If the 'dump classes' control action is requested, make sure that the Class dump output includes the Satisfy setting. 2004-04-20 castaglia <castaglia> * src/log.c: Fix the logging of IP addresses in the utmp/wtmp log on Linux. Formatting cleanup. 2004-04-19 castaglia <castaglia> * include/class.h, modules/mod_core.c, src/class.c: Add a Satisfy directive. Note that this directive does NOT function like Apache's Satisfy directive. This current implementation is to be used when defining a class, to specify how to evaluate all of the rules of the class: any, or all. Future work will overload this directive to work as users would like (see Bug#1898) for the <Limit> context. 2004-04-19 castaglia <castaglia> * src/dirtree.c: Report line numbers when parsing .ftpaccess files, too. 2004-04-18 castaglia <castaglia> * src/dirtree.c: Have the fatal messages reported during configuration parsing report the line number and configuration file, for easier fixing of broken configs. 2004-04-16 castaglia <castaglia> * NEWS, include/privs.h: Bug#2317 - Wrong order of privs calls on HP generates "unable to setregid()". error. The problem turned out to be a call to setregid() before a call to setreuid(), but only in the HP privs code (non-seteuid() case). The fix was trivial: call setreuid() first, to make sure the proper UIDs are set, then call setregid(). 2004-04-16 castaglia <castaglia> * NEWS: Mention in NEWS the new doc/modules/ directory. 2004-04-16 castaglia <castaglia> * doc/modules/mod_ctrls.html: Updating mod_ctrls' installation instructions. 2004-04-16 castaglia <castaglia> * doc/modules/mod_auth_file.html, doc/modules/mod_cap.html, doc/modules/mod_ctrls.html: Add a 'doc/modules/' directory, for core module documentation. Add the docs for mod_auth_file, mod_cap, and mod_ctrls. 2004-04-15 castaglia <castaglia> * include/ctrls.h: These changes should've been part of an earlier commit. 2004-04-15 castaglia <castaglia> * contrib/mod_tls.c: Much improved handling of OpenSSL's error queue, so that the TLSLog can properly show all of the errors in the queue (rather than just the top error, which is usually not too helpful in pinpointing the actual problem). 2004-04-15 castaglia <castaglia> * sample-configurations/basic.conf: The default configuration file should not allow use of SITE CHMOD. 2004-04-15 castaglia <castaglia> * src/main.c: Cleanup the error reported if the PidFile cannot be opened. 2004-04-14 castaglia <castaglia> * modules/mod_core.c: Michael suggested that this log message be at the INFO level. 2004-04-14 castaglia <castaglia> * contrib/mod_ctrls_admin.c, modules/mod_ctrls.c, src/ctrls.c: Remove the unused 'set' control action from mod_ctrls_admin. Make the 'lsctrl' control action list only enabled control actions. Initialize the ControlsSocketACL such that access to the socket is allowed to everyone by default; access to individual control actions still defaults to "deny" unless access is explicitly granted via configuration. 2004-04-13 castaglia <castaglia> * doc/howto/Filters.html: Emphasize _not_ using both an Allow and a Deny Filter at the same time. 2004-04-13 castaglia <castaglia> * include/privs.h: Revert part of my previous update to privs.h; it included a possible fix for Bug#2317, but that fix is not ready to be committed just yet. 2004-04-13 castaglia <castaglia> * NEWS, include/privs.h: Bug#2387 - PRIVS_USER macro should set effective GID to user's primary GID. 2004-04-13 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Add a SID (Server ID) to every server_rec. This SID is a unique ID that is automatically assigned to each generated server_rec when proftpd parses its configuration. SIDs are useful for tracking purposes, particularly for contrib modules that want to track which vhost caused something to happen. Format/style cleanups, removed unused CLASS_USER #define. 2004-04-13 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Update the proftpd version required by mod_ctrls_admin. 2004-04-12 castaglia <castaglia> * modules/mod_auth.c: Have AnonRejectPasswords generate an event. 2004-04-12 castaglia <castaglia> * modules/mod_ctrls.c: Consistent use of strcmp(). Use ANY_MODULE where appropriate, rather than NULL. 2004-04-12 castaglia <castaglia> * src/fsio.c: Fix pr_fsio_getline() to handle the case where a config line, broken across several lines in the config file using line continuations, has one of the lines commented out, e.g.: SomeDirective \ foo \ # bar \ baz Without this patch, pr_fsio_getline() would return the '#' character, which is not what most people would think would happen. 2004-04-12 castaglia <castaglia> * src/dirtree.c: Be a little more strict when checking for "${env:...}" strings in the config file. Format/style cleanup. 2004-04-11 castaglia <castaglia> * doc/howto/BCP.html, doc/howto/Globbing.html, doc/howto/index.html: Add the Globbing and BCP howtos. 2004-04-11 castaglia <castaglia> * include/options.h: Updating outdated comments. 2004-04-11 castaglia <castaglia> * modules/mod_xfer.c: Typo. 2004-04-11 castaglia <castaglia> * modules/mod_xfer.c: Make the 'core.signal.USR2' event handler check for new TransferRates when involved in any of the file data transfer commands (APPE, RETR, STOR, STOU), not just RETR. Update comments as well. 2004-04-11 castaglia <castaglia> * NEWS, modules/mod_ctrls.c, src/ctrls.c: Bug#2383 - mod_ctrls.c: ctrls_listen(): Invalid size in bind() argument. 2004-04-11 castaglia <castaglia> * modules/mod_xfer.c: Add a handler for the event 'core.signal.USR2' to mod_xfer. The handler causes mod_xfer, if and only if the RETR command is currently being handled, to rescan the config tree for TransferRate entries. The 'core.signal.USR2' event is only generated when Controls have been enabled, so in most cases this won't change anything. Its purpose is mainly to help the mod_shaper module be able to change the TransferRate for a session in mid-transfer. 2004-04-11 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Add a new merge flag, CF_SILENT. Unlike the rest of the CF_ flags, this flag is handled by fixup_dirs(); the other CF_ flags are handled by the internal _reorder_dirs() function. When fixup_dirs() sees CF_SILENT, it will not print a debug configuration dump, which is its default behavior. 2004-04-11 castaglia <castaglia> * src/event.c: Make sure that the order of event registration matches module load order. This helps when the same event may be handled by multiple modules, and the order of handling is important. 2004-04-11 castaglia <castaglia> * modules/mod_core.c: This copy of copy_file() is no longer needed. 2004-04-10 castaglia <castaglia> * doc/howto/FXP.html, doc/howto/index.html: Add FXP howto. 2004-04-10 castaglia <castaglia> * doc/howto/NAT.html, doc/howto/index.html: Add NAT howto. 2004-04-10 castaglia <castaglia> * doc/howto/SQL.html: Update the SQL howto to mention using SQLLogFile. 2004-04-10 castaglia <castaglia> * doc/howto/index.html: Add an index page for these howtos. 2004-04-10 castaglia <castaglia> * doc/howto/Directory.html: Typo. 2004-04-10 castaglia <castaglia> * doc/howto/Directory.html: Add paragraph describing how the * glob within a path is matched (i.e. only for single directory level, not multiple directory levels). 2004-04-10 castaglia <castaglia> * doc/howto/Authentication.html, doc/howto/Chroot.html, doc/howto/ConfigFile.html, doc/howto/Debugging.html, doc/howto/Directory.html, doc/howto/FTP.html, doc/howto/Filters.html, doc/howto/Limit.html, doc/howto/SQL.html, doc/howto/ServerType.html, doc/howto/Stopping.html, doc/howto/TLS.html, doc/howto/Umask.html, doc/howto/Vhost.html: Standardize on "Last Updated" in the footer. 2004-04-10 castaglia <castaglia> * doc/howto/Logging.html: Add Logging doc. 2004-04-10 castaglia <castaglia> * doc/howto/Authentication.html, doc/howto/ConfigFile.html, doc/howto/Filters.html, doc/howto/Limit.html, doc/howto/ServerType.html, doc/howto/Stopping.html, doc/howto/Vhost.html: Modifying links in docs to reference other docs in this area, rather than the pages on www.castaglia.org. 2004-04-10 castaglia <castaglia> * doc/howto/Stopping.html: Add doc for starting/stopping proftpd. 2004-04-10 castaglia <castaglia> * doc/howto/FTP.html: Add doc covering FTP commands supported by proftpd. 2004-04-10 castaglia <castaglia> * doc/howto/ServerType.html: Adding ServerType doc. 2004-04-10 castaglia <castaglia> * modules/mod_auth_unix.c: When compiling on a HP-UX box which supports bigcrypt(), the following warning is seen: passing arg 1 of `bigcrypt' discards qualifiers from pointer target type Quell this warning by explicitly casting the arguments to bigcrypt() to be char *. 2004-04-10 castaglia <castaglia> * doc/howto/SSH.html: Add FTP-over-SSH mini-HOWTO. 2004-04-10 castaglia <castaglia> * doc/howto/Authentication.html, doc/howto/Chroot.html, doc/howto/ConfigFile.html, doc/howto/Debugging.html, doc/howto/Directory.html, doc/howto/Filters.html, doc/howto/Limit.html, doc/howto/SQL.html, doc/howto/TLS.html, doc/howto/Umask.html, doc/howto/Vhost.html: Adjusting footers for consistency. 2004-04-10 castaglia <castaglia> * doc/howto/Umask.html: Add the Umask mini-HOWTO. 2004-04-09 castaglia <castaglia> * doc/howto/Filters.html: Add the Filters mini-HOWTO to the source distro. 2004-04-09 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Add ability to kick entire Classes via the 'kick' action. 2004-04-09 castaglia <castaglia> * include/fsio.h, modules/mod_core.c, src/fsio.c, src/mkhome.c: The CreateHome code also included a static copy_file() function. This change refactors the code so that both CreateHome and the rename-across-mount-points code both use the same function, added to the FSIO code as pr_fs_copy_file(). Code reuse good. 2004-04-09 castaglia <castaglia> * contrib/mod_ifsession.c: Removing this HOOK, as it won't work as intended. May re-add in the future. 2004-04-09 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2385 - Renames fail with error "Invalid cross-device link". In the case of EXDEV from rename(2), mod_core now manually copies the file from the source to the destination location. Any content existing at the destination location is lost. 2004-04-08 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Add the 'kick' action to mod_ctrls_admin, for disconnecting clients by user or host names. 2004-04-07 castaglia <castaglia> * doc/howto/Authentication.html: Add note about avoiding use of mod_auth.c and mod_auth_pam.c in AuthOrder directives. 2004-04-07 castaglia <castaglia> * contrib/mod_quotatab.c: Add a QuotaLog message warning that when per_session is true, the QuotaTallyTable will not be updated. 2004-04-06 castaglia <castaglia> * NEWS, config.h.in: Bug#2221 - proftpd on hp-ux 11.22. Override the default socklen_t detection on HP-UX 11 to be an int. APR suffers from this same problem (the bug is ultimately an HP-UX problem). 2004-04-06 castaglia <castaglia> * src/ctrls.c: Fix a format warning on Solaris. 2004-04-05 castaglia <castaglia> * contrib/mod_tls.c: Make sure and clear the relevant bits in tls_flags when the control and data channels are closed. 2004-04-05 castaglia <castaglia> * src/ctrls.c: Remove a hardcoded maximum limit on the size of request strings that can be sent using the Controls API. Uncovered when trying to send messages larger than 8 Kb via SysV message queues. 2004-04-05 castaglia <castaglia> * modules/mod_auth.c, src/scoreboard.c: Check for an error return value from pr_rewind_scoreboard(). Keep track of the process which opened the cached scoreboard fd. It's possible to have the daemon process open the fd, and then fork, which means the child will have that same fd. However, the child may fdopen() another file onto that fd (e.g. if the fd is 0), thus losing the scoreboard fd. This patch also prevents the possibility of a file descriptor leak by having the same process open the scoreboard multiple times (e.g. when multiple modules call pr_open_scoreboard()). 2004-04-05 castaglia <castaglia> * NEWS: Mention the adding of mini-HOWTOs in NEWS. 2004-03-25 castaglia <castaglia> * configure: Updating configure. 2004-03-25 castaglia <castaglia> * configure.in: Remove checks for README.mod_sql from configure. 2004-03-25 castaglia <castaglia> * contrib/mod_tls.c: Report the version of OpenSSL used in server debugging output. 2004-03-24 castaglia <castaglia> * NEWS, contrib/ftpasswd: Bug#2371 - ftpasswd should have option to compare password against value in passwd file. 2004-03-23 castaglia <castaglia> * contrib/mod_tls.c: Be more explicit about the expected return value from SSL_CTX_load_verify_locations(3). Handle the cases where the pointers to the CA file or CA path may be NULL, as some libcs do not handling printing of NULL pointers gracefully, unlike glibc. 2004-03-23 castaglia <castaglia> * modules/mod_ls.c: Add a comment explaining the fix for Bug#2367. 2004-03-23 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2367 - LIST *.* strange behaviour. 2004-03-22 castaglia <castaglia> * doc/howto/Authentication.html, doc/howto/Chroot.html, doc/howto/ConfigFile.html, doc/howto/Debugging.html, doc/howto/Directory.html, doc/howto/Limit.html, doc/howto/TLS.html, doc/howto/Vhost.html: Adding more howtos. 2004-03-22 castaglia <castaglia> * doc/howto/SQL.html: Adding an HTML SQL howto to the doc/ area, to replace the README.mod_sql (which is now terribly outdated). 2004-03-19 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2369 - EPSV should not send network address when MasqueradeAddress is used. RFC 2428 is not very clear on this point, for it introduces a discrepancy in the possible responses to PASV versus EPSV. Until this can be cleared up, do not honor MasqueradeAddress when EPSV is used by the client. 2004-03-16 castaglia <castaglia> * contrib/mod_sql.c: Mark the SQLLog and SQLShowInfo config_recs as CF_MERGEDOWN_MULTI. This doesn't affect how mod_sql processes these directives, but it does make them work properly within mod_ifsession blocks. 2004-03-11 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2363 - ABOR response RFC 959 compliance. 2004-03-11 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2361 - Second USER command causes problems with chrooted session. The PRE_CMD handler for C_USER should check to see if a user is already logged in before doing any processing. 2004-03-11 castaglia <castaglia> * NEWS: Typos. 2004-03-10 castaglia <castaglia> * include/privs.h: Typo. 2004-03-09 castaglia <castaglia> * src/netaddr.c: Add some debug logging, level 10, showing when a name is being resolved to its IP addresses, including when DNS is used. At debug level 10, things are getting quite verbose; we should start looking into debugging output masks. 2004-03-08 castaglia <castaglia> * README.controls: Clarify that using --enable-ctrls means not using --with-modules=mod_ctrls. 2004-03-05 castaglia <castaglia> * modules/mod_core.c: On second thought, setting errno to ENOENT in these cases may not be the best idea. 2004-03-05 castaglia <castaglia> * modules/mod_core.c: Make sure that errno has an appropriate value in the case where a resolved path may actually be NULL. Also, report on failed paths using cmd->arg, rather than cmd->argv[1], to handle the case where the client may have specified a path containing whitespace characters. 2004-03-05 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2321 - FTP permission checks inconsistent for DELE and RMD when symlink in directory path. For future reference, if dir_canonical_path() is used to obtain a path, use dir_check_canon() for checking <Limit> permissions on that returned path, instead of using dir_check(). The dir_* namespace could use some cleaning up, to make this sort of relationship a little clearer. 2004-03-05 castaglia <castaglia> * NEWS, utils/ftptop.c: Bug#2357 - ftptop should use COLS for determining display width. 2004-03-05 castaglia <castaglia> * configure: Updating configure. 2004-03-05 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_xfer.c: Bug#2353 - REST doesn't handle offsets greater than 2 GB. 2004-03-04 castaglia <castaglia> * modules/mod_core.c: Change handling of the SetEnv, UnsetEnv directives so that that they can be set on a per-vhost basis. 2004-03-04 castaglia <castaglia> * contrib/mod_tls.c: Didn't mean to commit those debugging changes. Oops. 2004-03-04 castaglia <castaglia> * contrib/mod_tls.c: No need to be that verbose. 2004-03-03 castaglia <castaglia> * contrib/mod_tls.c: Handle the case where mod_tls has been configured to set environment variables but the client does not present a certificate (e.g. when not verifying clients). Previously, this would cause a segfault. 2004-03-03 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2355 - Send error message to client when 'TLSRequired both' is in effect. 2004-03-02 castaglia <castaglia> * contrib/mod_tls.c: Typo. 2004-03-01 castaglia <castaglia> * include/conf.h: Doesn't help to check for <utime.h> if we don't include it. 2004-03-01 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Typo. Eventually, mod_ctrls_admin's dump control will handling list of variables in the (as yet uncommitted) Variables API. 2004-03-01 castaglia <castaglia> * configure: Updating configure. 2004-03-01 castaglia <castaglia> * config.h.in, configure.in: Check for the <utime.h> system header. 2004-03-01 castaglia <castaglia> * contrib/mod_ctrls_admin.c, src/netacl.c: Complete the 'dump classes' control for mod_ctrls_admin. Also adds the missing pr_netacl_get_type() function. 2004-03-01 castaglia <castaglia> * src/event.c: Add some basic caching of the last valid event generated, as a minor optimization. 2004-02-27 castaglia <castaglia> * modules/mod_ls.c: STAT is an INFO command more than it is a DIRS command (for logging purposes). 2004-02-27 castaglia <castaglia> * contrib/mod_sql.c: Add handling of the %L (local IP address) and %V (local DNS name) tags. Fix formatting. 2004-02-27 castaglia <castaglia> * modules/mod_cap.c: Bug#2348 prompted this addition of handling CAP_DAC_OVERRIDE and CAP_DAC_READ_SEARCH, in addition to CAP_CHOWN. 2004-02-27 castaglia <castaglia> * NEWS, README.modules: Bug#2257 - Add SITE SYMLINK command to mod_site. Added a new contrib module, mod_site_misc, instead. 2004-02-27 castaglia <castaglia> * contrib/mod_site_misc.c: New contrib module that implements miscellaneous SITE commands (e.g. SITE SYMLINK, SITE UTIME, etc) that other ftpds may recognize (e.g. ncftpd). 2004-02-24 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2339 - STAT command doesn't follow RFC959. 2004-02-24 castaglia <castaglia> * sample-configurations/basic.conf: It's a little more efficient to have AllowOverwrite in the server config context, rather than in a <Directory> context that covers the entire filesystem. 2004-02-24 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2311 - MaxClients counts unauthenticated users. 2004-02-24 castaglia <castaglia> * contrib/mod_sql.c: Oops. My previous commit included my work-in-progress patch for SQLShowInfo, which isn't ready yet. 2004-02-24 castaglia <castaglia> * contrib/mod_sql.c: Fixed a bug in mod_sql in the show_group() function, where a large list of users that belonged to a single group could tickle a segfault. There was a hardcoded buffer size of 2K that was being exceeded. Better to use pstrcat() and build up the needed string. Also add some typecasts to unsigned longs for reporting IDs. 2004-02-24 castaglia <castaglia> * modules/mod_core.c: Typos. 2004-02-24 castaglia <castaglia> * modules/mod_xfer.c: Allow uploading to FIFOs. Should we allow uploading to symlinks, too? 2004-02-23 castaglia <castaglia> * modules/mod_site.c: mod_site no longer uses a configuration handler table. 2004-02-23 castaglia <castaglia> * src/dirtree.c: Quell a minor compiler warning on OSX. 2004-02-23 castaglia <castaglia> * README.modules: Adding mod_quotatab et al to the list of modules that accompany proftpd. 2004-02-20 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c, src/main.c: Bug#1696 - Include directive should support directories. 2004-02-20 castaglia <castaglia> * contrib/ftpasswd: When the --not-system-password option is used, it's possible for there to be no entry in the system password files for the user being created, in which case $hash and $syspasswd will both be the empty string -- and will match, making ftpasswd think that a different password is needed. Fix this by checking for the empty strings. 2004-02-19 castaglia <castaglia> * README.IPv6: Updating the IPv6 notes. 2004-02-19 castaglia <castaglia> * contrib/mod_ifsession.c: Add a check for <Limit LOGIN> to mod_ifsession, after all the configuration merging is done. This allows for configurations like: <IfUser foo> <Limit LOGIN> DenyAll </Limit> </IfUser> 2004-02-17 castaglia <castaglia> * NEWS, modules/mod_auth_pam.c: Bug#2105 - Remove Authoritative directives. 2004-02-17 castaglia <castaglia> * NEWS, contrib/ftpasswd: Bug#2171 - Add delete options to ftpasswd. 2004-02-17 castaglia <castaglia> * Make.rules.in, contrib/mod_tls.c, include/conf.h, include/help.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/help.c: Adding a new API so that modules can declare, for the HELP response list, which FTP commands they support. This makes it easier/cleaner for contrib modules, e.g. mod_tls, to declare their support for FTP commands that may not be handled by the core code. 2004-02-16 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2237 - HiddenStores does not check for existing file in edge case. 2004-02-15 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2327 - SQLNegativeCache causes unnecessary errors in server logging. 2004-02-15 castaglia <castaglia> * contrib/mod_sql.c: Note the directive name when warning of deprecated * usage. 2004-02-15 castaglia <castaglia> * contrib/mod_sql.c: Disable the "*" functionality in SQLAuthenticate, which was used to configure mod_sql to be authoritative. This conflicts with the AuthOrder configuration directive, which should be used instead. 2004-02-15 castaglia <castaglia> * NEWS: Mention in the NEWS file that Class and Classes are now deprecated. 2004-02-13 castaglia <castaglia> * contrib/mod_quotatab.h: Update mod_quotatab's PROFTPD_VERSION_NUMBER check. 2004-02-13 castaglia <castaglia> * contrib/mod_ifsession.c: Update the PROFTPD_VERSION_NUMBER check. 2004-02-13 castaglia <castaglia> * contrib/mod_rewrite.c: Updating mod_rewrite for Class code changes. 2004-02-13 castaglia <castaglia> * contrib/mod_quotatab.c: Updating mod_quotatab for Class code changes. 2004-02-13 castaglia <castaglia> * contrib/mod_ifsession.c: Updating mod_ifsession to reflect Class changes. 2004-02-12 castaglia <castaglia> * Makefile.in, NEWS: Bug#2340 - Problem with parallel builds. 2004-02-10 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2337 - TLSRenegotiate parameters not processed correctly. 2004-02-10 castaglia <castaglia> * contrib/mod_tls.c: When walking the server_list list, we need to start with server_list->xas_list, not just server_list. This is a subtle and easy to miss bug, and was causing the list-walking code to attempt to access inaccessible memories (not good). This highlights a need for a good list/set-iterating API, rather than relying on details of the actual structures. 2004-02-08 castaglia <castaglia> * contrib/mod_readme.c: Update mod_readme to use the new pr_gmtime() function. 2004-02-08 castaglia <castaglia> * NEWS, utils/ftpcount.c: Bug#2306 - ftpcount output should handle case of no users. 2004-02-08 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2324 - Directories whose names contain whitespace are inaccessible. The problem was that the dir_check() call was using cmd->argv[0], rather than cmd->arg; the former is the first parameter of the command (where the parameters are assumed to be whitespace-separated) whereas the latter is the entire parameter list as a single string. The rest of the patch cleans up the formatting in the chdir() handling code. 2004-02-04 castaglia <castaglia> * src/xferlog.5.in: Document in the xferlog(5) man page that any space or control characters in a filename will be converted to an underscore in TransferLogs. 2004-02-03 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c: Bug#2315 - Overlapping virtual server causes error. Also changes the collision check log messages to say "warning" rather than "error". 2004-02-01 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2322 - NLST -a returns listing formatted for LIST -a. 2004-01-31 castaglia <castaglia> * src/log.c: Addition of PID was redundant. Oops. 2004-01-30 castaglia <castaglia> * src/netaddr.c: "dup" is an already used global variable in some system headers. How annoying. 2004-01-30 castaglia <castaglia> * src/main.c: Remove an annoying "FTP session closed." message from being logged when doing a simple syntax check of a proftpd.conf whose ServerType is inetd. 2004-01-30 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2295 - mod_tls returns multi-line response to AUTH commands. 2004-01-30 castaglia <castaglia> * README.classes: Explicitly mention that the Class and Classes directives are deprecated. 2004-01-29 castaglia <castaglia> * Make.rules.in, NEWS, contrib/mod_sql.c, include/class.h, include/conf.h, include/dirtree.h, include/netacl.h, include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, src/class.c, src/dirtree.c, src/main.c, src/netacl.c: Bug#1925 - Clean up of Class code. 2004-01-29 castaglia <castaglia> * src/log.c: If --enable-devel is used, add the PID to the server debugging lines. This might be useful enough to use all of the time, but for now it'll be restricted to developer use. 2004-01-29 castaglia <castaglia> * include/netaddr.h, src/netaddr.c: Add a new function, pr_netaddr_dup(), for convenience. 2004-01-29 castaglia <castaglia> * contrib/mod_quotatab.c: The SITE QUOTA command should be marked as a CL_MISC class command, so that ExtendedLogs that wish to log MISC commands record it. 2004-01-21 cyberrobo <cyberrobo> * .cvsignore: adding ftpdctl to the ignorelist 2004-01-19 castaglia <castaglia> * contrib/mod_ctrls_admin.c, modules/mod_ctrls.c: No need to re-register the controls themselves, just reallocate the ACLs from the new module pools. 2004-01-19 castaglia <castaglia> * contrib/mod_ctrls_admin.c, modules/mod_ctrls.c: When handling the "core.restart" event, the module pools for both mod_ctrls and mod_ctrls_admin are destroyed/recreated. Since the ACLs for the registered controls are allocated from these module pools, the ACLs need to be recreated as well. Also, when building mod_ctrls_admin, make sure that Controls support has been enabled. 2004-01-19 castaglia <castaglia> * src/log.c: Make pr_log_writefile() a little more robust, by checking whether the given fd is valid before doing any work. 2004-01-18 castaglia <castaglia> * utils/ftptop.c, utils/utils.h: No need to include <sys/types.h> in these files, as it is already included in config.h. 2004-01-18 castaglia <castaglia> * modules/mod_ctrls.c: Change the usage of PRIVS macros in some of mod_ctrls' config handlers. Michael found that this was causing problems when restarting a proftpd with Controls enabled (see Bug#2242). 2004-01-18 castaglia <castaglia> * modules/mod_ctrls.c: No need to log the error using root privs. 2004-01-18 cyberrobo <cyberrobo> * src/.cvsignore: added ftpdctl manpage to ignore list 2004-01-17 castaglia <castaglia> * configure: Updating configure script. 2004-01-17 castaglia <castaglia> * NEWS, configure.in: Bug#2320 - autoconf check for socklen_t doesn't work on FreeBSD 4.8-RELEASE. 2004-01-17 castaglia <castaglia> * Makefile.in, NEWS: Bug#2319 - Build scripts have owner-only execute permission. 2004-01-17 castaglia <castaglia> * config.sub: No, that didn't work. 2004-01-17 castaglia <castaglia> * config.sub: Checking to see how to get permissions changed in CVS. I think CVS requires that the file itself (not just the mode) differ. 2004-01-16 castaglia <castaglia> * README.classes: First draft of a README describing the new <Class> syntax. Edits/additions welcome. 2004-01-16 castaglia <castaglia> * modules/mod_core.c: Have the emitted vhost collision message say "warning", rather than "error". 2004-01-16 castaglia <castaglia> * modules/mod_auth.c: The current CreateHome description has the following examples: CreateHome on skel /etc/ftpd/skel CreateHome on dirmode 755 CreateHome on skel /etc/ftpd/skel dirmode 700 However, the current CreateHome implementation assumes that the parameter after the Boolean will always be the mode. This change makes the config handler check for any preceding 'skel' or 'dirmode' keywords before trying to process that parameter as the mode. Hopefully now the examples will work properly. 2004-01-15 castaglia <castaglia> * contrib/mod_quotatab.c: Christian Schulte <cs@schulte.it> noticed that the handling of locks by mod_quotatab is not right. The quotatab_write() function would obtain a write-lock, then call quotatab_read() to refresh its data, and quotatab_read() would degrade that write-lock to a read-lock, then release it completely, leaving the actual write operation unprotected by a lock. This patch fixes the contention in the locking routinese by having them check and set a static variable. 2004-01-15 castaglia <castaglia> * README.controls: Updating/fixing this document. 2004-01-14 castaglia <castaglia> * README.controls: Add a README describing the new Controls code. It's a work in progress. 2004-01-14 castaglia <castaglia> * modules/mod_auth.c: Fix compiler warning. 2004-01-13 castaglia <castaglia> * NEWS: Add comment that bug 2183 is the same as bug 2165. 2004-01-12 castaglia <castaglia> * modules/mod_xfer.c: Consistency. 2004-01-12 castaglia <castaglia> * modules/mod_xfer.c: Report errors when closing a file that has been written. Such errors normally don't occur, but can happen with a disk is full. Fix a typo. 2004-01-11 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#2307 - MySQL 4.1.1 API change causes mod_sql_mysql compilation failure. 2004-01-09 castaglia <castaglia> * src/pool.c: The logic for handling new_block()'s exact argument was accidentally inverted. 2004-01-09 castaglia <castaglia> * include/pool.h, src/pool.c: Be consistent with the argument data types. These probably should be size_ts, but ints suffice. 2004-01-09 castaglia <castaglia> * include/pool.h, src/pool.c: Adding some new functions to the Pool API. These new functions allow for pools to be allocated for a specific size, rather than always having the requested size be rounded up to the nearest BLOCK_MINFREE (usu. 512 bytes). These will be handy in cases where pools smaller than 512 bytes can be used (e.g. stash pools). 2004-01-02 jwm <jwm> * NEWS: - Bug 2267 - Broken IP subnet matching. Added new ACL parsing/matching code. 2003-12-30 castaglia <castaglia> * contrib/mod_sql.c: Make mod_sql a little less noisy. This "no SQLAuthTypes" message would be logged for every connection to a vhost that has not been configured for mod_sql (when mod_sql is present), which can be very annoying for those configurations where only some vhosts, not all, need to authenticate using SQL. 2003-12-30 castaglia <castaglia> * src/main.c: Style. 2003-12-26 jwm <jwm> * Makefile.in, NEWS: Bug 2305 - Compile Problems since > 1.2.9 Link ftpdctl against libsocket and libnsl to pick up dependency functions 2003-12-19 castaglia <castaglia> * contrib/mod_quotatab.c: Don't subtract xfer bytes when deleting a directory. Found and fixed by Christian Schulte <cs@schulte.it> 2003-12-16 castaglia <castaglia> * NEWS, src/netio.c: Bug#2300 - poll() returns 1 and read returns 0, inifinite loop. 2003-12-14 jwm <jwm> * contrib/dist/rpm/proftpd.spec: [Bug 2301] New: (s)rpms should require "/sbin/chkconfig" instead of package "chkconfig" 2003-12-11 castaglia <castaglia> * contrib/mod_quotatab.h: Bump the mod_quotatab version, for clarity. 2003-12-11 castaglia <castaglia> * modules/mod_auth.c: Forgot to add strerror() to the DefaultRoot resolution debugging. 2003-12-11 castaglia <castaglia> * modules/mod_auth.c: Add some debugging to the function which determines the actual path to use for DefaultRoot. 2003-12-09 castaglia <castaglia> * contrib/mod_quotatab.c: More minor quotatab bugs fixed by Christian Schulte <cs@schulte.it>. 2003-12-09 castaglia <castaglia> * contrib/mod_quotatab_sql.c: Bug found by Christian Schulte <cs@schulte.it>: delta values are signed, and can be negative. 2003-12-03 castaglia <castaglia> * NEWS, contrib/ftpquota, contrib/mod_quotatab.c, contrib/mod_quotatab.h, contrib/mod_quotatab_file.c, contrib/mod_quotatab_ldap.c, contrib/mod_quotatab_sql.c: Adding mod_quotatab to the contrib area. 2003-12-03 castaglia <castaglia> * NEWS, src/netaddr.c: Bug#2288 - ServerFQDN set to 255.255.255.255 and not hostname. This was due to the bundled inet_ntop() implementation not correctly handling the INADDR_NONE return value. 2003-12-02 castaglia <castaglia> * modules/mod_core.c: Adjust mod_core.c to use the pr_* wrappers for gmtime(), localtime(). 2003-12-02 castaglia <castaglia> * NEWS, include/support.h, modules/mod_ls.c, src/support.c: Bug#2290 - gmtime() static storage may be overwritten by modules. A portable solution is to use wrappers that memcpy() the gmtime() and localtime() results. 2003-11-19 castaglia <castaglia> * include/inet.h, include/netaddr.h, src/inet.c, src/netaddr.c: Moving the declaration and definition of pr_get{addr,name}info, pr_freeadrinfo, pr_inet_{ntop,pton} from inet to netaddr, as netaddr is the file that uses those functions most. Also, it solves some linking problems on older systems that do not have the get{addr,name}info(2) functions. 2003-11-19 castaglia <castaglia> * Makefile.in, NEWS: Bug#1635 - Older systems' chown(1) does not support -h option. 2003-11-17 castaglia <castaglia> * src/netaddr.c: Adding comments to clarify the purpose/usage of the get_v4inaddr() function. 2003-11-16 castaglia <castaglia> * src/netacl.c: Forgot to change this function name. 2003-11-16 castaglia <castaglia> * src/netacl.c: Typo. 2003-11-16 castaglia <castaglia> * include/netacl.h, src/dirtree.c, src/netacl.c: Making the ACL type publically available via an accessor. 2003-11-16 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Split the 'debug config|memory' stuff into a new control action, 'dump'. In the future, the 'dump' action will also support dumping of <Class> and <Directory> information. 2003-11-15 castaglia <castaglia> * Make.rules.in, include/conf.h, include/dirtree.h, include/netacl.h, include/netaddr.h, modules/mod_core.c, src/dirtree.c, src/netacl.c, src/netaddr.c: Adding new ACL parsing/matching code. This is flexible enough to handle IPv6 addresses, and will be used in the new <Class> definition code (coming soon). This should also fix the ACL checking that was broken (Bug#2267) in 1.2.9's IPv6 changes. 2003-11-15 castaglia <castaglia> * modules/mod_core.c: Need to set the ServerAddress field of the main_server as well when handling the DefaultAddress directive, because fixup_servers() later checks that field. 2003-11-15 castaglia <castaglia> * src/dirtree.c: Bad grammar. 2003-11-15 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#2048 - Add ability to get configuration file values from environment. 2003-11-15 castaglia <castaglia> * NEWS, include/dirtree.h, src/dirtree.c: Bug#2274 - Default server only binds to one IP address of host if --enable-ipv6 is used. 2003-11-15 castaglia <castaglia> * modules/mod_core.c: Handle IPv4 address Binds properly for DefaultAddress when IPv6 is in use. 2003-11-15 castaglia <castaglia> * configure: Updating configure. 2003-11-15 castaglia <castaglia> * configure.in: When checking for the security and sec libs on Tru64 Unix, we need to check for the libs before checking for the functions via AC_CHECK_FUNC, not after. 2003-11-13 castaglia <castaglia> * src/netaddr.c: Should be using pcalloc() not palloc(). 2003-11-12 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Use '#' as the address/port delimiter, rather than '/'. 2003-11-12 castaglia <castaglia> * NEWS, src/inet.c: Updating code for Mac OS X 10.3 (Darwin 7). 2003-11-10 castaglia <castaglia> * configure: Updating configure. 2003-11-10 castaglia <castaglia> * config.h.in, configure.in: Add a check for the getenv(3) function. 2003-11-10 castaglia <castaglia> * contrib/mod_ctrls_admin.c, include/dirtree.h, src/dirtree.c: Rearrange the config-dumping code a little and provide a public function for it, so that mod_ctrls_admin can support a 'debug config' action. 2003-11-10 castaglia <castaglia> * src/pool.c: Better name for this printf-like function pointer variable. 2003-11-10 castaglia <castaglia> * configure: Updating configure. 2003-11-10 castaglia <castaglia> * configure.in: Some systems (e.g. FreeBSD) declare getaddrinfo(2) in <sys/socket.h>. 2003-11-10 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Update mod_ctrls_admin to use events. 2003-11-10 castaglia <castaglia> * contrib/mod_ctrls_admin.c: Controls are useless without something implementing some control actions; add the mod_ctrls_admin module (was mod_ctrls_common) to contrib. 2003-11-09 castaglia <castaglia> * src/auth.c, src/ctrls.c, src/data.c, src/dirtree.c, src/event.c, src/fsio.c, src/ident.c, src/log.c, src/main.c, src/mkhome.c, src/netaddr.c, src/scoreboard.c, src/support.c: Updating the source code to use pr_log_debug() rather than log_debug(). 2003-11-09 castaglia <castaglia> * modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_cap.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c: Updating modules to use pr_log_debug() rather than log_debug(). 2003-11-09 castaglia <castaglia> * include/privs.h: Use pr_log_debug() rather than log_debug(). 2003-11-09 castaglia <castaglia> * doc/mod_sample.c: Updating the sample module mod_sample.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * modules/mod_core.c: unsetenv(3) returns void, not int. 2003-11-09 castaglia <castaglia> * src/main.c: Typo. 2003-11-09 castaglia <castaglia> * src/main.c: Forgot to cleanup one sig_debug() reference. 2003-11-09 castaglia <castaglia> * include/proftpd.h, src/main.c: Tweak the handling of SIGUSR2 a little. If controls are not enabled, keep the current behavior: the proftpd process will print a memory dump. If controls are enabled, generate a "core.signal.USR2" event, which will allow modules to register multiple handlers for this same event. This way, mod_ctrls_common can use SIGUSR2 to get other proftpd processes to print memory dumps, and thus keeping the ability to get memory dumps from any proftpd process. Without this change, if controls are enabled, we can only get a memory dump of the daemon process (and most of the time, it is the session processes in which we are interested). 2003-11-09 castaglia <castaglia> * Make.rules.in, include/conf.h, include/log.h, include/support.h, include/xferlog.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/log.c, src/main.c, src/support.c, src/xferlog.c: Splitting the TransferLog routines into their own source file, and moving the functions into a nonpublic xferlog_ namespace. 2003-11-09 castaglia <castaglia> * contrib/mod_ldap.c: Updating mod_ldap.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_ratio.c: Updating mod_ratio.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_wrap.c: Updating mod_wrap.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_tls.c: Updating mod_tls.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_sql_postgres.c: Updating mod_sql_postgres to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * modules/mod_core.c, src/main.c: The function is now pr_log_setdebuglevel(), not log_setdebuglevel(). 2003-11-09 castaglia <castaglia> * contrib/mod_sql_mysql.c: Updating mod_sql_mysql.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_sql.c: Updating mod_sql.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_rewrite.c: Updating mod_rewrite.c to use pr_log_*() rather than log_*(). 2003-11-09 castaglia <castaglia> * contrib/mod_readme.c: Updating mod_readme to use pr_log_debug() rather than log_debug(). 2003-11-09 castaglia <castaglia> * contrib/mod_radius.c: Updating mod_radius.c to use pr_log_pri() rather than log_pri(). 2003-11-09 castaglia <castaglia> * contrib/mod_ifsession.c: Updating mod_ifsession to use pr_log_debug() rather than log_debug(). 2003-11-09 castaglia <castaglia> * include/privs.h: Updating privs.h to use the pr_log_* functions. Also cleans up some cruft related to checking of when session.login_uid is set. 2003-11-09 castaglia <castaglia> * include/bindings.h, include/log.h, lib/pwgrent.c, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_pam.c, modules/mod_auth_unix.c, modules/mod_cap.c, modules/mod_core.c, modules/mod_ctrls.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/auth.c, src/bindings.c, src/ctrls.c, src/data.c, src/dirtree.c, src/fsio.c, src/inet.c, src/log.c, src/main.c, src/mkhome.c, src/modules.c, src/netaddr.c, src/pool.c, src/regexp.c, src/scoreboard.c, src/support.c: Moving the log_*() functions into the pr_ namespace. Let the terror and madness begin! Actually, log.h includes some transitional macros, so that the old symbols will be redefined properly. 2003-11-09 castaglia <castaglia> * NEWS: Note the affect of the logging class change for RNFR and RNTO. 2003-11-09 castaglia <castaglia> * src/ftpdctl.8.in: Still not quite right. Trying to get the action-parameters to be properly shown as optional parameters to the action part of the command. 2003-11-09 castaglia <castaglia> * src/ftpdctl.8.in: Tweak the ftpdctl man page a little. 2003-11-09 castaglia <castaglia> * configure: Updating configure. 2003-11-09 castaglia <castaglia> * Makefile.in, configure.in, src/ftpdctl.8.in: Adding ftpdctl man page. 2003-11-09 castaglia <castaglia> * src/ctrls.c: Tag pools allocated in the Controls API. Style cleanup. 2003-11-09 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2046 - Change RFNR and RNTO logging class to WRITE. 2003-11-09 castaglia <castaglia> * contrib/mod_wrap.c: Wrong function name. 2003-11-09 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c: Updating the rest of the core code to use the newer Expressions API. 2003-11-09 castaglia <castaglia> * contrib/mod_wrap.c: Updating mod_wrap for the newer Expressions API. 2003-11-09 castaglia <castaglia> * contrib/mod_ifsession.c: Updating mod_ifsession to use the new Expressions API. Fixed a compiler warning issued under --enable-devel. 2003-11-09 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Cleaning up the API for evaluating user, group, and class expressions. This commit gives the API a consistent pr_expr_ prefix. It also provides some transitional macros. 2003-11-09 castaglia <castaglia> * configure: Updating configure. 2003-11-09 castaglia <castaglia> * contrib/mod_ifsession.c: Adjust mod_ifsession to use the same expression indicator values as the core code. 2003-11-09 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c: Bug#2015 - Add AND, OR keywords to Allow/DenyUser directives. This affects the AllowGroup and DenyGroup directives as well. 2003-11-09 castaglia <castaglia> * modules/mod_ctrls.c: Register a handler for the "core.exit" event, rather than using pr_exit_register_handler(). The latter function will be being phased out. 2003-11-09 castaglia <castaglia> * modules/mod_auth.c: Generate events when the MaxClients* and MaxHostsPerUser limits are hit. 2003-11-09 castaglia <castaglia> * include/event.h, src/event.c, src/main.c: Add generation of "core.exit" event. Adjust the event unregistration function to handle the needs of the core code when doing exit handler processing. 2003-11-09 castaglia <castaglia> * modules/mod_ctrls.c: Modify mod_ctrls to use the new Event API (as all new modules should). 2003-11-09 castaglia <castaglia> * Make.rules.in, Makefile.in, NEWS, config.h.in, configure.in, include/bindings.h, include/conf.h, include/ctrls.h, include/mod_ctrls.h, include/pool.h, modules/mod_ctrls.c, src/Makefile.in, src/bindings.c, src/ctrls.c, src/ftpdctl.c, src/main.c, src/modules.c, src/pool.c: Bug#2072 - Add Controls API. Still to be done: a man page for ftpdctl, better documentation for mod_ctrls. 2003-11-09 castaglia <castaglia> * src/bindings.c: Remove (now) unused variable. 2003-11-08 castaglia <castaglia> * NEWS, modules/mod_core.c, src/bindings.c: Bug#2272 - Address/port collision check needs to handle DefaultAddress. The problem was that the address assigned by DefaultAddress was being assigned _after_ the addr/port collision check. 2003-11-08 castaglia <castaglia> * include/fsio.h, src/fsio.c: Cleanup the FSIO API a little: + some of the directory operation flags were improperly overloading file operation flags + change the prototype of the open/creat handlers to take a pointer to a pr_fh_t (filehandle) rather than a pointer to a pr_fs_t (filesystem), which allows the open/creat handlers to store file-specific data in the handle (fh->fh_data), which was not possible when using the filesystem pointer. + added a new function, pr_remove_fs(), for removing a filesystem from the map without explicitly destroying that filesystem object (as pr_unregister_fs() will do automatically). + some internal function stylistic renaming, which does not affect any code outside of this file. 2003-11-08 castaglia <castaglia> * modules/mod_auth.c, src/main.c: Using the new Event API, generate some events when key limits are exceeded. Modules that register handlers for these events can now take appropriate action (such as blacklisting a client that has exceeded the MaxLoginAttempts). 2003-11-08 castaglia <castaglia> * src/event.c: When unregistering an event handler, be sure to honor the module argument, if any. 2003-11-08 castaglia <castaglia> * Make.rules.in, NEWS, include/conf.h, include/event.h, modules/mod_core.c, src/event.c, src/main.c: Adding Event API. 2003-11-08 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#2255 - RADIUS Service-Type should reflect attribute expectations. 2003-11-08 castaglia <castaglia> * configure: Updating configure. 2003-11-08 castaglia <castaglia> * NEWS, configure.in: Bug#2271 - Improper autoconf check for getaddrinfo() on Tru64 UNIX 5.1. 2003-11-08 castaglia <castaglia> * Make.rules.in: Bug#2270 - Linkers can be quite picky about the order in which flags appear. 2003-11-06 castaglia <castaglia> * modules/mod_auth_file.c: The new group membership debugging found a bug: mod_auth_file, when scanning an AuthGroupFile, would only add the group name if the ID for the group was different from the user's primary GID. For GID stuff, this is fine; however, for group expressions in proftpd.conf that may rely on those group names, it's a bug. This allows for an interesting situation: assign a user to multiple groups with different names, but the same GID. Thus you can workaround the NGROUPS_MAX system limit using a long list of group names; the operating system won't notice, and proftpd will happily check the names. Nice. 2003-11-06 castaglia <castaglia> * src/auth.c: Add debugging output for group name/ID retrieval. 2003-11-06 castaglia <castaglia> * src/auth.c: Add debugging that shows the group IDs that end up being set via setgroups(). 2003-11-06 castaglia <castaglia> * configure: Updating configure. 2003-11-06 castaglia <castaglia> * config.h.in, configure.in, modules/mod_core.c: Some platforms don't have setenv()/unsetenv(). Bummer. 2003-11-04 castaglia <castaglia> * src/scoreboard.c: When deleting the scoreboard file (usu. when a standalone proftpd starts up), log a message if there is an existing scoreboard file that is being unlinked. 2003-11-03 jwm <jwm> * contrib/dist/rpm/proftpd.spec: - Bug 2265 - correct path to mysql headers Submitted by: ncroiset@vdldiffusion.com (Nicolas Croiset) - note in the %changelog that it isn't updated often - use the CVS revision history 2003-11-01 castaglia <castaglia> * Makefile.in: When preparing a distribution using the 'dist' target, be sure to clean up the .bak files generated by the 'clean' target. 2003-11-01 castaglia <castaglia> * include/pool.h, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, src/auth.c, src/bindings.c, src/data.c, src/dirtree.c, src/feat.c, src/fsio.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/regexp.c, src/support.c: Introduce a new function, pr_pool_tag(). This function is used to "tag" a given pool with an arbitrary label (given as a string constant). The pool tags are shown in a pool dump (currently triggered using SIGUSR2). 2003-11-01 castaglia <castaglia> * include/log.h: Add 10 as a debugging level. I plan to use this level for debugging output about DNS resolution and supplemental group membership issues. 2003-10-31 castaglia <castaglia> * src/dirtree.c: Add to proftpd's debugging verbosity by showing the dispatch/handling of configuration directives to the modules which handle that directive. 2003-10-31 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2098 - Add SetEnv, UnsetEnv directives. 2003-10-31 castaglia <castaglia> * NEWS, modules/mod_auth_unix.c: Bug#2174 - mod_auth_unix should not act authoritatively. 2003-10-31 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2086 - Add <Limit> support for PORT, PASV, EPRT, EPSV. 2003-10-31 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#2135 - Add ability to handle passphrase-protected server keys. 2003-10-31 castaglia <castaglia> * src/data.c, src/dirtree.c, src/fsio.c, src/main.c, src/netio.c: Silencing some valgrind complaints. Style fixups. 2003-10-31 castaglia <castaglia> * include/version.h: Woohoo! The start of a new release cycle... 2003-10-31 castaglia <castaglia> * ChangeLog: Preparing for 1.2.9 release. 2003-10-31 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for the release of 1.2.9. 2003-10-31 castaglia <castaglia> * NEWS: Mention the memory leak fixes. 2003-10-31 castaglia <castaglia> * contrib/mod_sql.c: Always expand %U to the USER name given, not just when session.user is NULL. 2003-10-31 castaglia <castaglia> * modules/mod_auth.c: Undoing part of change made earlier: rather than removing a C_USER config_rec during both the LOG_CMD (success) and LOG_CMD_ERR (failure) command phases of the PASS command, only do the removal in LOG_CMD_ERR, which was the originally intended effect. Doing the removal in the LOG_CMD handler causes trouble for modules that may want to use %U (e.g. mod_rewrite). 2003-10-30 flyhmstr <flyhmstr> * doc/Configuration.html, doc/Configuration.sgml, doc/faq.html: ML: New userguide (html & sgml) and faq built from current pdd sources committed. 2003-10-28 castaglia <castaglia> * README.FreeBSD: Adding FreeBSD package installation docs from Bug#2250. 2003-10-22 castaglia <castaglia> * src/main.c: Removing duplicate sanity check. 2003-10-22 castaglia <castaglia> * src/fsio.c: Fixing comments. Have pr_insert_fs() set errno on error, for reporting purposes. 2003-10-21 castaglia <castaglia> * utils/utils.h: It helps to make sure that the utils (ftpcount, ftpwho, ftptop) expect that the scoreboard entry has the same format as the core code (cf. size of the sce_client_addr field). 2003-10-20 castaglia <castaglia> * include/scoreboard.h: Forgot to increase the size of the IP address buffer in the scoreboard if --enable-ipv6 is used. 2003-10-20 castaglia <castaglia> * modules/mod_log.c: More paranoid checking of snprintf() usage. 2003-10-20 castaglia <castaglia> * contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_tls.c: Minor paranoia changes: make certain the buffer is NUL-terminated before calling strlen() on its contents. 2003-10-20 castaglia <castaglia> * NEWS, modules/mod_ls.c: Check for excessive length of symlink directory listing entries, when ShowSymlinks is on. This also requires that the platform _not_ provide MAXPATHLEN. Added some style/spacing changes as well. 2003-10-19 jwm <jwm> * NEWS, contrib/dist/rpm/proftpd.spec: Bug 2197 - The RPM .spec has been updated for easy RPM builds from CVS snapshots. 2003-10-19 jwm <jwm> * contrib/dist/rpm/proftpd.spec: rpm doesn't like empty BuildPreReqs, add a static dep on pam-devel 2003-10-18 castaglia <castaglia> * src/fsio.c: Fixing a memory leak in the handling of structures used for tracking open directories. 2003-10-18 castaglia <castaglia> * src/dirtree.c: Fixing a rather major memory pool leak. A temporary pool was being allocated in dir_hide_file() (which is called rather often), but in the case where no HideFiles directive was configured (very common), that pool was not being destroyed. Oops. 2003-10-17 castaglia <castaglia> * NEWS, include/netaddr.h, modules/mod_core.c, modules/mod_log.c, src/netaddr.c: Bug#2204 - More reverse DNS resolutions problems. A previous fix for systems that use gethostbyname2() (e.g. the BSDs, some Linux distributions) was not properly checking the return value from pr_netaddr_is_v4mapped(), and thus IPv4 addresses were not being resolved to their names. Bug#2242 - Parsing during rehashing was failing with an EPERM. The problem was that configuration directive handlers (specifically, SyslogFacility and SystemLog) were using PRIVS_RELINQUISH, which caused later Includes to fail. Configuration handlers should not use the PRIVS macros. 2003-10-17 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2181: fixing this bug (again) to work correctly in all cases. 2003-10-17 castaglia <castaglia> * include/fsio.h, include/inet.h, include/netio.h, src/fsio.c, src/inet.c, src/main.c, src/netio.c: Removing the pr_ prefix from some API initialization functions; they are not really appropriate for module use. 2003-10-16 castaglia <castaglia> * include/version.h: Updating the version for CVS status. 2003-10-15 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2003-10-15 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.2.9rc3. 2003-10-15 jwm <jwm> * contrib/dist/rpm/proftpd.spec: only include xinetd support in the -xinetd RPM 2003-10-14 castaglia <castaglia> * src/netaddr.c: Fixed pr_netaddr_get_dnsstr() to use the right family value when calling gethostbyname2(). 2003-10-14 castaglia <castaglia> * src/main.c: The free_proc_title() function is currently only used when --enable-devel has been configured. 2003-10-14 jwm <jwm> * contrib/dist/rpm/proftpd.spec: we're "The ProFTPD Project" 2003-10-13 castaglia <castaglia> * configure: Updating configure. 2003-10-13 castaglia <castaglia> * configure.in, include/libsupp.h, lib/glibc-hstrerror.c: Adding bundled glibc implementation of hsterror(), for those systems that don't have it already. 2003-10-13 castaglia <castaglia> * configure: Updating configure. 2003-10-13 castaglia <castaglia> * config.h.in, configure.in: Not all systems have the hsterror() function, for converting resolver error codes (h_errno) to strings. Thus, we need to check for it, and provide a bundled replacement if it is not present. I'll be adding the glibc implementation of hstrerror() soon. 2003-10-13 castaglia <castaglia> * src/netaddr.c: This get_v4inaddr() function is only called from one place (at present), and all the necessary sanity checks have already been performed, so there is no need to do them again. 2003-10-11 castaglia <castaglia> * src/netaddr.c: Typo. 2003-10-11 castaglia <castaglia> * src/netaddr.c: The retrieval of the IPv4 portion of an IPv4-mapped IPv6 address is only necessary when gethostbyname2() is being used, rather than gethostbyname() (I think...this may need to change in the future). 2003-10-11 castaglia <castaglia> * src/netaddr.c: When performing reverse DNS lookups on IPv4-mapped IPv6 addresses, we need to be a little more careful about which checks are performed. This change alters the call to gethostbyname2() (when it is present) to be AF_INET if the netaddr is an IPv4-mapped IPv6 address, rather than using AF_INET6 as was done previously. The subsequent memcmps need to be adjusted accordingly. This should hopefully resolve Bug#2204. 2003-10-11 castaglia <castaglia> * src/netaddr.c: The BSDs are not the only systems that might provide gethostbyname2(). It seems that some Linux kernels have been patched to have that function as well. 2003-10-11 castaglia <castaglia> * include/netaddr.h, modules/mod_core.c, src/netaddr.c: Since pr_netaddr_v4mappedv6() returns TRUE or FALSE (or -1 on error), I've renamed it to be pr_netaddr_is_v4mappedv6(). 2003-10-10 castaglia <castaglia> * src/main.c: Report the cause of error if configuration parsing fails. 2003-10-10 castaglia <castaglia> * modules/mod_core.c: If processing an Included file fails, log the reason. 2003-10-10 castaglia <castaglia> * src/netaddr.c: Adding note about a use of gethostbyname() that may need to be gethostbyname2() in the future. 2003-10-10 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2222 - Overlapping vhosts should warn instead of die. 2003-10-10 castaglia <castaglia> * src/dirtree.c: No need to keep the server_recs of vhosts that cannot be resolved. 2003-10-10 castaglia <castaglia> * include/netaddr.h, src/dirtree.c, src/netaddr.c: Removing the pr_netaddr_get_fqdn() function. It was only being used in one place: to set the main_server->ServerFQDN member. ServerFQDN is used in the logging prefix, and for vhosts, was usually the IP address. With this change, the log prefix for entries generated by vhosts will be their DNS names (if possible). It also removes a call to gethostbyname() which on *BSDs might not have performed as expected for IPv6 strings. 2003-10-10 castaglia <castaglia> * src/netaddr.c: Make the logging of badly configured DNS name/IP address mappings a little less noisy. 2003-10-09 castaglia <castaglia> * configure: Updating configure. 2003-10-09 castaglia <castaglia> * NEWS, config.h.in, configure.in, src/netaddr.c: Bug#2204 - Reverse DNS lookups not happening properly on connected clients on FreeBSD. We need to use gethostbyname2() on FreeBSD (and possibly the other BSDs). 2003-10-09 castaglia <castaglia> * NEWS, configure.in, src/netaddr.c: Bug#2188 - Wildcard sockets not properly handled on FreeBSD. Need to set sin_len/sin6_len struct sockaddr members, if present, for wildcard sockets. 2003-10-08 castaglia <castaglia> * NEWS, src/log.c: Bug#2202 - AllowLogSymlinks check is flawed. 2003-10-08 castaglia <castaglia> * modules/mod_core.c: Style cleanup (whitespace). 2003-10-08 castaglia <castaglia> * src/inet.c: Adding note to pr_inet_set_proto_opts() about setsockopt() problems on IPv6 sockets. 2003-10-08 castaglia <castaglia> * configure: Updating configure. 2003-10-08 castaglia <castaglia> * configure.in: autoconf on FreeBSD was not properly reporting the headers it detected (or didn't): specifically, <netinet/in_systm.h> and <netinet/ip.h> were not being reported as found and useable in config.h. The fix is to include a few more header dependencies in autoconf, so that autoconf's tests pass and the headers are properly reported as found. 2003-10-06 castaglia <castaglia> * contrib/mod_tls.c: Be a little more careful in tls_blinding_on(): it's possible that SSL_get_privatekey() returns NULL, which I didn't check for. This, I think, is causing segfaults on some systems (depending on the certificates used). 2003-10-06 castaglia <castaglia> * include/netaddr.h, src/data.c, src/main.c, src/netaddr.c: Change pr_netaddr_reverse_dns() to be pr_netaddr_set_reverse_dns(), so that it has a verb in the function name (style nit, I know). Also includes some capitalization and spacing cleanup in data.c. 2003-10-06 castaglia <castaglia> * NEWS: Updating NEWS so that people can see that Bug#2183 (and all its friends) has been fixed. 2003-10-03 castaglia <castaglia> * Makefile.in: Remove the generated 'stamp-h' file as well for the distclean target. 2003-10-01 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#2191 - Segfault in mod_sql_mysql when using 'Backend' SQLAuthType. This only happens for MySQL 4.1. The MySQL make_scrambled_password() function changed in 4.1, and the wrong variable value was being used. 2003-10-01 castaglia <castaglia> * configure: Updating configure. 2003-10-01 castaglia <castaglia> * config.h.in, configure.in: Style cleanup in config.h. Add check for <sys/mman.h> header file (will be needed if/when something wants to use the mmap(2) system call). 2003-10-01 castaglia <castaglia> * src/main.c: Style cleanup, comment correction. Also removed a double signal(SIGIO) call; first one set a handler for the signal, the second one caused the signal to be ignored. Weird. 2003-10-01 castaglia <castaglia> * src/main.c: Style cleanup. Add a comment about needing PRIVS (or not) when disconnecting sessions. 2003-09-29 castaglia <castaglia> * src/bindings.c: Fixed thinko highlighted by Bug#2188. 2003-09-29 castaglia <castaglia> * include/bindings.h, src/bindings.c, src/main.c: The init_bindings() and free_bindings() functions are not suitable for use in modules, and so should not be in the pr_ namespace. 2003-09-28 castaglia <castaglia> * modules/mod_auth_unix.c: It's possible for UID/GID lookups to occur outside of a session. When this happens, session.pool is not valid. Check for and handle this situation. (This was causing segfaults when I attempt to use mod_ctrls.) 2003-09-28 castaglia <castaglia> * include/regexp.h, src/main.c, src/regexp.c: The regexp init function shouldn't be in the pr_ namespace, as it is not suitable for use in module code. 2003-09-28 castaglia <castaglia> * modules/mod_auth.c, modules/mod_auth_unix.c: Style cleanup. 2003-09-28 castaglia <castaglia> * src/dirtree.c: One of the changes I made to quell a valgrind warning (something about reading possibly uninitialized memory, probably due to a zero-length path variable in this case) had disastrous side effects on directive lookups. This highlights that the build_dyn_config() function needs comments and/or to be rewritten entirely. Also includes some style cleanup. 2003-09-27 castaglia <castaglia> * configure: Updating configure. 2003-09-27 castaglia <castaglia> * configure.in, src/main.c: Some of the pedantic memory cleanups added in 1.2.9rc2, after some time spent under valgrind, turn out to affect performance, when a session exits, particularly on busy machines. So I've made these checks enabled only when proftpd is compiled using the --enable-devel flag. 2003-09-27 castaglia <castaglia> * NEWS, src/bindings.c: Bug#2024 - DefaultServer not functioning properly. The addition of the Bindings API in 1.2.8rc1 broke the DefaultServer directive in many configurations. For inetd-run proftpds, all configured <VirtualHost> servers were being treated like they had "DefaultServer on", which meant that the last such configured server would be used, instead of the true DefaultServer. For both inetd- and standalone-run proftpds, if no exactly matching vhost was found for a client, the localhost server (i.e. the "server config" vhost) would be used before the DefaultServer vhost. Both problems are fixed by this change. 2003-09-27 castaglia <castaglia> * NEWS, src/data.c: Bug#2200 - Correct segfaults with xlate_ascii_write() on IRIX. Some of the last of the remaining code (whose I understood only partially, such as the session.xfer.buf++ increment) is now removed, as well as a potentially dangerous NUL-termination statement. 2003-09-26 jwm <jwm> * contrib/dist/rpm/proftpd.spec: Bug 2197 - Spec file enhancements and fixes Submitted by: pb@bieringer.de (Dr. Peter Bieringer) 2003-09-26 castaglia <castaglia> * modules/mod_core.c: Correcting a misleading/outdated comment. 2003-09-23 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2181 - Active IPv4 ftp doesn't work when using --enable-ipv6. The fix was to build up an IPv6 netaddr from the PORT argument, rather than an IPv4 netaddr, in the case of --enable-ipv6. 2003-09-23 castaglia <castaglia> * NEWS: Mention fixing of ASCII handling exploit. 2003-09-23 castaglia <castaglia> * src/data.c: Fixing remote exploit in ASCII handling, discovered by X-Force at ISS: http://xforce.iss.net/xforce/alerts/id/154 2003-09-23 jwm <jwm> * contrib/dist/rpm/proftpd.spec: * Tue Sep 23 2003 Daniel Roesen <dr@proftpd.org> - Added "--with ipv6" to enable IPv6 support while building the RPM 2003-09-22 castaglia <castaglia> * README.IPv6: Daniel has confirmed that IPv6 and FTP over SSL/TLS works just fine, for both active and passive transfers. 2003-09-19 castaglia <castaglia> * NEWS, include/privs.h: Bug#2179 - ROOT_UID instead of ROOT_GID used in setegid() call. This affects Cygwin installations. 2003-09-18 castaglia <castaglia> * src/netaddr.c: Using EPERM makes more sense, I think, than EACCES in most of the pr_netaddr* cases. 2003-09-18 castaglia <castaglia> * NEWS, src/netaddr.c: Bug#2176 - getnameinfo() error on Cygwin during startup. The sa_family member of some addresses was not being properly initialized in some instances. 2003-09-14 castaglia <castaglia> * src/scoreboard.c: Actually check for error return values when locking the scoreboard. A recently reported issue with the scoreboard on Solaris, under high load, may be related to this: fcntl() on Solaris is known to return ENOLCK under high load, if the requested lock hits the system lock limit. By checking for the return values, proftpd can at least log if this ENOLCK is indeed the case. 2003-09-13 castaglia <castaglia> * configure: Updating configure. 2003-09-13 castaglia <castaglia> * NEWS, README.IPv6, config.h.in, configure.in, src/netaddr.c: Bug#2167 - getnameinfo() on FreeBSD doesn't support IP address lookups. FreeBSD's struct sockaddr_in and struct sockaddr_in6 have the sin_len and sin6_len members. The code in pr_netaddr_get_addr() was not properly initializing these members, and so when those structs were given to getnameinfo(), getnameinfo() didn't handle them well. Solaris and Linux don't have these _len members, so the problem didn't crop up there. IPv6 systems whose structs have these _len members are supposed to define the SIN6_LEN symbol, by RFC design. However, it's possible that a system not support IPv6 and yet have the sin_len member and the getnameinfo() function. So rather than just rely on SIN6_LEN being present, I added an autoconf check for the sin_len member, and an IPv4 SIN_LEN symbol. 2003-09-12 castaglia <castaglia> * README: Just some pointers/notes about user questions. 2003-09-12 castaglia <castaglia> * README.IPv6: Seems that perhaps FreeBSD's getnameinfo(3) doesn't like IP addresses, but it does handle DNS names correctly. Interesting. 2003-09-11 castaglia <castaglia> * configure: Updating configure. 2003-09-11 castaglia <castaglia> * configure.in: Add another --enable-devel option: 'profile'. When this option is used, compiler and linker flags for generating profile output (as for gprof(1)) are generated. For this to work properly, one also needs to use the 'nodaemon' and 'nofork' options as well, e.g.: ./configure --enable-devel=nodaemon:nofork:profile ... 2003-09-11 castaglia <castaglia> * include/version.h: Updating version for CVS snapshots. 2003-09-11 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2003-09-11 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Let's get this rc2 show on the road. 2003-09-11 castaglia <castaglia> * include/conf.h: Add note about possibly using sockaddr_storage in the future. 2003-09-10 castaglia <castaglia> * src/main.c: Fixing PR_DEVEL_NO_DAEMON. 2003-09-09 castaglia <castaglia> * src/log.c: Log the client's IP address in the brackets, not the DNS name. 2003-09-09 castaglia <castaglia> * src/netaddr.c: When doing reverse DNS lookups, actually use the looked up name. Oops. 2003-09-09 castaglia <castaglia> * utils/ftpshut.c: Fix grammar in comment. 2003-09-09 castaglia <castaglia> * NEWS: ftpshut's option -R (for remove), not -D (for delete). 2003-09-09 castaglia <castaglia> * NEWS, src/netio.c: Bug#2122 - EAGAIN on Solaris can cause an infinite loop. 2003-09-09 castaglia <castaglia> * include/netaddr.h, modules/mod_core.c, src/inet.c, src/netaddr.c: Rename pr_netaddr_initialize() to be pr_netaddr_clear(), as that is what is really happening. 2003-09-09 castaglia <castaglia> * src/inet.c: Remove duplicate comment. 2003-09-09 castaglia <castaglia> * src/inet.c: Use the netaddr allocator where appropriate. 2003-09-09 castaglia <castaglia> * src/dirtree.c: Remove cruft. The multiple addresses for a server are handled elsewhere. 2003-09-09 castaglia <castaglia> * include/netaddr.h, src/netaddr.c: Provide a netaddr allocator. 2003-09-09 castaglia <castaglia> * include/netaddr.h, modules/mod_core.c, src/inet.c, src/netaddr.c: Forgot to properly initialize pr_netaddr_t structs declared on the stack. Provide a wrapper function for this, in case any of the default settings for a pr_netaddr_t need to change (in which case, providing an allocator as well, for pr_netaddr_t * declarations, will be necessary). Also fixed some tabs that crept into inet.c. 2003-09-08 castaglia <castaglia> * configure: Updating configure. 2003-09-08 castaglia <castaglia> * include/inet.h, modules/mod_core.c, src/inet.c, src/netaddr.c: Bug#2162 - Move pr_inet_ntop definition to include/inet.h. Code cleanup. 2003-09-08 castaglia <castaglia> * configure.in: Clean up configure.in a little, and just use LIB_OBJS (rather than both pr_lib_objs and LIB_OBJS). 2003-09-08 castaglia <castaglia> * configure: Updating configure. 2003-09-08 castaglia <castaglia> * NEWS, configure.in: Bug#2161 - Duplicate autoconf check for sia.h. 2003-09-08 castaglia <castaglia> * src/main.c: Add a function to free up the memory allocated when moving the environment "out of the way" for use by setproctitle() et al; valgrind was complaining about this lost memory. Also free up the permanent pool, and the free block list, when the daemon shuts down. 2003-09-08 castaglia <castaglia> * modules/mod_auth_unix.c: Changing permanent_pool to session.pool where appropriate. Also add a session exit callback that will call endpwent()/endgrent(), freeing up any memory that may have been allocated via setpwent()/setgrent(). Symmetry is a Good Thing. 2003-09-08 castaglia <castaglia> * modules/mod_auth_pam.c: Removed an unnecessary check for a NULL pointer that will be given to free(3): the POSIX standard says that free() can handle a NULL pointer without choking. Also, since mod_auth_pam handles the password, when the buffer which holds the password is freed, it should be scrubbed, rather than just using memset(). 2003-09-08 castaglia <castaglia> * src/main.c: Removing cruft, updating calls to subsystem initializers. 2003-09-08 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Cleanup. Fixed some timing and usages of sub pools, particularly in get_dir_ctxt(). Changed permanent_pool to be session.pool where appropriate. Changed !strcmp() to be strcmp() == 0, and added some checks for paths of zero length (spotted by valgrind). 2003-09-08 castaglia <castaglia> * src/auth.c: Removing cruft. Also added some comments on the difference between the static make_cmd() function in this file, and the public pr_cmd_alloc() function. 2003-09-08 castaglia <castaglia> * src/fsio.c: Style cleanup, mostly. Using strcmp() == 0 rather than !strcmp() is a little clearer to most people. Also fixed a bug where a pool was not being destroyed at the proper time. 2003-09-08 castaglia <castaglia> * src/data.c: Use memcpy() rather than memmove(), as memcpy() is a little more efficient (it doesn't have to check the overlapping buffers). Also, allocate one space for one more character, to account for the possibility of a LF as the first character in the buffer being adjusted (it would then need to be prefaced by a CR). 2003-09-08 castaglia <castaglia> * modules/mod_auth_file.c, modules/mod_core.c, modules/mod_log.c: Changed uses of permanent_pool to session.pool, as is more appropriate in most module code. 2003-09-08 castaglia <castaglia> * modules/mod_auth.c: Changed some uses of permanent_pool here to be session.pool, as is more appropriate in most module code. 2003-09-08 castaglia <castaglia> * include/modules.h, src/modules.c: Removing cruft. The call_module_auth() and call_module_cmd() functions were duplicates of call_module(), so there is no need to keep them around. Also fixed some of the pools being used when adding symbols to the stash. Fixed a bug where the stash pool was not being properly allocated from permanent_pool (valgrind found this). 2003-09-08 castaglia <castaglia> * include/pool.h, src/pool.c: Cleaning up the pool interface. The pr_ prefix for initializing the pool code, as many of the subsystem initializers are not meant to be called by module code; the pr_ suffix is meant to denote the API for use by module authors. Also fixed a possible alarm-blocking bug in destroy_pool(). 2003-09-08 castaglia <castaglia> * include/inet.h, src/inet.c: Removing cruft. The iplist/niplist members of the conn_t struct were not being used anymore. Also removed some unnecessary complexities (a macro, a cleanup handler). 2003-09-08 castaglia <castaglia> * contrib/mod_ratio.c: Removing some cruft from the source code, which involves removing mod_ratio's use of one of the crufty functions. 2003-09-07 castaglia <castaglia> * modules/mod_cap.c: A weekend with valgrind proved very enlightening. This patch corrects several small leaks that were occurring when handling POSIX capabilities. 2003-09-07 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2154 - SQL query loses shell information. 2003-09-06 castaglia <castaglia> * modules/mod_ls.c: Another leak fixed. In this case, listdir() was (inappropriately) setting pointers in the array--allocated and returned by sreaddir()--to NULL. Those pointers were allocated using calloc() in sreaddir(), which meant that later, when listdir() went to free the memory, it couldn't -- the address was lost. All better now. 2003-09-06 castaglia <castaglia> * src/data.c: Fixing subtle off-by-one bug (thank you valgrind!). 2003-09-05 castaglia <castaglia> * src/pool.c: Rename xmalloc, xcalloc, and xrealloc to be smalloc, scalloc, and srealloc ("s" for "safe", just like sstrncpy and sstrcat). This moves these functions out of the way of dmalloc's symbols (and doesn't hurt proftpd at all). 2003-09-05 castaglia <castaglia> * include/conf.h: Add conditional include for <dmalloc.h>, for use when using dmalloc to track memory usage. 2003-09-05 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2153 - Small error in handling PR_AUTH_RFC2228 authentication code. 2003-09-03 castaglia <castaglia> * configure: Updating configure. 2003-09-03 castaglia <castaglia> * NEWS, configure.in: Bug#2007 - autoconf header detection problem. 2003-08-30 castaglia <castaglia> * configure: Updating configure. 2003-08-30 castaglia <castaglia> * configure.in, include/libsupp.h, lib/glibc-gai_strerror.c, src/netaddr.c: Partial fix for issues mentioned in Bug#2143: bundling gai_strerror(3) implementation (from glibc) in libsupp.a, to be used if the system does not provide a gai_strerror(3) function itself. 2003-08-29 castaglia <castaglia> * include/bindings.h, include/dirtree.h, src/bindings.c: Add comments about the duplicate ipbind->ib_server->listen/ipbind->ib_listener pointers. Also, correct the patch for Bug#2146 so that ib_server->listen is still handled properly (as it prior to the patch) in the Bindings API. 2003-08-29 castaglia <castaglia> * NEWS, include/bindings.h, src/bindings.c: Bug#2146 - DNS names not handled properly when --enable-ipv6 is used. As mentioned in the report, this was caused by a design assumption revealed by the addition of IPv6 support: that of a one-to-one association between a server_rec and its listening connection. For DNS names resolving to A and AAAA records, there can be two listening connections for a given server_rec. The fix occurs in the Bindings API, where a server_rec's listeners are now associated with the bindings for the server_rec, rather than with the server_rec itself. Multiple bindings can point to the same server_rec. 2003-08-29 castaglia <castaglia> * src/netaddr.c: Using uninitialized memory can be bad. 2003-08-29 castaglia <castaglia> * src/inet.c: Only one type of IPv4 service at time: either IPTOS_LOWDELAY or IPTOS_THROUGHPUT but not both. Some discussion on IPng mailing list archives mention that using IP_TOS may be a problem on IPv6 connections... 2003-08-28 castaglia <castaglia> * README.ports: Adding FreeBSD 4.9-PRERELEASE to the list. Apparently the source works out-of-the-box. 2003-08-28 jwm <jwm> * NEWS: - Bug 2108 - IgnoreHidden should not hide dotfiles Dotfiles are now displayed when the -a argument is supplied, even when the IgnoreHidden directive is enabled. To replicate the old behavior of hiding dotfiles no matter what, use either of the following directives: ListOptions "" strict HideFiles ^\..* 2003-08-28 jwm <jwm> * modules/mod_ls.c: Bug 2108 - IgnoreHidden should not hide dotfiles 2003-08-28 jwm <jwm> * NEWS: - Bug 1804 - RPM spec file improvements The spec file now has xinetd support, builds under newer version of RPM, installs standalone support with the main proftpd RPM, and accepts --with mod_modname arguments during the build process. - Bug 2127 - Entry in the file section The RPM spec's %files section now honors the install prefix. 2003-08-28 jwm <jwm> * contrib/dist/rpm/proftpd.spec: Bug 2127 - Entry in the file section 2003-08-28 jwm <jwm> * contrib/dist/rpm/xinetd: add xinetd configuration to go with new .spec 2003-08-28 jwm <jwm> * contrib/dist/rpm/proftpd.spec: - don't reset servertype on upgrade - don't explicitly install docs - %doc should include them submitted by: Ivan F. Martinez <ivanfm@os2brasil.com.br> Peter Bieringer <pb@bieringer.de> 2003-08-22 castaglia <castaglia> * README.ports: Adding NetBSD 1.6.1 to the list. 2003-08-20 castaglia <castaglia> * README.IPv6: Add note about FreeBSD 4.8 and getnameinfo(3). 2003-08-18 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#2141 - Glob Allow/Deny parameters cause extraneous log messages when comparing addresses. 2003-08-16 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2148 - Enforce PR_TUNABLE_LOGIN_MAX. 2003-08-16 castaglia <castaglia> * sample-configurations/mod_sql.conf: Add comment in mod_sql sample config about SQLAuthTypes being required. 2003-08-16 castaglia <castaglia> * contrib/mod_sql.c: Add log messages to session init if no SQLAuthTypes configured. 2003-08-16 castaglia <castaglia> * contrib/mod_sql.c: Using mod_sql for authentication, but not configuring a SQLAuthTypes directive, would result in a segfault in the session process. This patch catches the segfault, and adds a log message concerning the problem. 2003-08-15 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Fixed mod_ifsession's handling of multiple configuration sets. The problem was that mod_ifsession, after merging in the configuration from a config_rec, would call xaset_remove() and remove that config_rec from the main server's configuration sets. This had the side effect of making other config_recs in the set, in the set after the removed config_rec, no longer visible by the iterating function. As in Perl: don't change the items in a list while iterating over it. Instead, queue up the changes you want to make while iterating, wait until finished iterating, and then change the list. 2003-08-14 castaglia <castaglia> * include/netaddr.h, src/netaddr.c: Rather than using typecasts to silence the compiler warnings about loss of the 'const' modifier in pr_netaddr_fnmatch(), simply remove the 'const' from the function signature. 2003-08-14 castaglia <castaglia> * NEWS, src/data.c: Bug#2147 - Segmentation fault processing file in ASCII mode. 2003-08-13 castaglia <castaglia> * src/netaddr.c: Silence some compiler warnings. 2003-08-13 castaglia <castaglia> * configure: Updating configure script. 2003-08-13 castaglia <castaglia> * NEWS, configure.in: Bug#2144 - Rework autoconf handling of --enable-sia option. 2003-08-13 castaglia <castaglia> * configure: Updating configure script. 2003-08-13 castaglia <castaglia> * config.h.in, configure.in: Check for gai_strerror(3). We'll also need to provide an implementation if gai_strerror() is not present. 2003-08-13 castaglia <castaglia> * configure: Updating configure script. 2003-08-13 castaglia <castaglia> * NEWS, configure.in, include/libsupp.h, include/support.h, lib/sstrncpy.c, src/support.c: Bug#2142 - sstrncpy() not available to lib/vsnprintf.c. 2003-08-13 castaglia <castaglia> * src/inet.c: It seems the 'sa_family' symbol is a macro on IRIX. 2003-08-12 castaglia <castaglia> * include/conf.h, include/inet.h: Move the conditional definitions of INET(6)_ADDRSTRLEN to conf.h, so that the definition of pr_netaddr_t can use them. Sigh. 2003-08-12 castaglia <castaglia> * include/conf.h: Can't use INET6_ADDRSTRLEN until include/inet.h is included, but the pr_netaddr_t needs to be typedef'd before then. So we do it manually. 2003-08-11 castaglia <castaglia> * contrib/mod_sql.c: Removing use of get_param_int() from mod_sql. 2003-08-11 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#2137 - NLST and IgnoreHidden causes segfault. 2003-08-11 castaglia <castaglia> * src/main.c: Oops. Calling of the postparse callbacks should happen after all the servers have been fixed up, in order to make sure that the modules see the "correct" server configuration data. 2003-08-11 castaglia <castaglia> * src/main.c: Postparse callbacks should be called after the configuration has been parsed during a rehash, too. Modules that wish to have postparse callbacks invoked during a rehash will need to have rehash handlers that register the postparse callback. 2003-08-09 castaglia <castaglia> * modules/mod_auth.c: Previous changes to auth_scan_scoreboard() removed some checks that really needed to be there, to prevent segfaults when using configurations that did not use Classes. 2003-08-09 castaglia <castaglia> * src/inet.c: Fixed function signature to match declared prototype. Fixed variable name. 2003-08-09 castaglia <castaglia> * contrib/mod_ifsession.c, include/dirtree.h, modules/mod_auth.c, src/dirtree.c: Spelling correction. 2003-08-09 castaglia <castaglia> * src/bindings.c: Removed debugging cruft. 2003-08-09 castaglia <castaglia> * include/proftpd.h, src/netaddr.c: Comment clarification, style fixups, fixing compiler warnings. 2003-08-08 castaglia <castaglia> * modules/mod_auth_file.c: Fixed position of use of pr_signals() handle, so as not to occur before variable declaration in the case where HAVE_FGETPWENT is false/undef. 2003-08-08 castaglia <castaglia> * NEWS: Fixed wrong bug report number. 2003-08-08 castaglia <castaglia> * include/netaddr.h: Complete the description of pr_netaddr_fnmatch(). 2003-08-07 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2130 - %y in DisplayLogin is not updated correctly. The problem was that the auth_scan_scoreboard() function, which scanned the scoreboard and tallied up the variables used when filling in %y/%N, was only being called if the DisplayConnect directive was used. Instead, auth_scan_scoreboard() should always be called, to handle any of the Display* directives. 2003-08-07 castaglia <castaglia> * src/netaddr.c: Added implementation of pr_netaddr_fnmatch(). 2003-08-07 castaglia <castaglia> * include/netaddr.h, src/netaddr.c: Added implementation (untested) of pr_netaddr_ncmp(). Changed the pr_netaddr*() routines to return EACCES if for some reason the netaddrs on which they operate do not have a recognizable family (AF_INET or AF_INET6). 2003-08-07 castaglia <castaglia> * include/netaddr.h, src/bindings.c, src/netaddr.c: Added a pr_netaddr_get_inaddr_len(), to provide sizes of struct in{6}_addr, matching the pr_netaddr_get_sockaddr_len() function. Added a stub for pr_netaddr_fnmatch(), to be implemented soon. 2003-08-07 castaglia <castaglia> * include/netaddr.h, src/inet.c, src/netaddr.c: Changed pr_netaddr_get_addrlen() to pr_netaddr_get_sockaddr_len(), to more clearly reflect the length returned. Added stub for pr_netaddr_ncmp(), to be implemented shortly. 2003-08-07 castaglia <castaglia> * README.IPv6: Clarifying that IPv6 sockets handling IPv4 packets only occurs when it is an wildcard IPv6 socket. 2003-08-07 castaglia <castaglia> * NEWS: Mention the --enable-ipv6 configure option. 2003-08-07 castaglia <castaglia> * include/netaddr.h: Adding descriptions of the netaddr API functions. 2003-08-06 castaglia <castaglia> * include/inet.h: Add some comments about the handling of get{addr,name}info symbols. I'm not quite sure I have all the preprocessor logic for these symbols done correctly yet. 2003-08-06 castaglia <castaglia> * src/netaddr.c: Typos. 2003-08-06 castaglia <castaglia> * configure: Updating configure. 2003-08-06 castaglia <castaglia> * ChangeLog, Make.rules.in, NEWS, README.IPv6, config.h.in, configure.in, contrib/mod_ifsession.c, contrib/mod_radius.c, contrib/mod_ratio.c, contrib/mod_rewrite.c, contrib/mod_sql.c, contrib/mod_tls.c, include/bindings.h, include/conf.h, include/dirtree.h, include/ftp.h, include/inet.h, include/log.h, include/netaddr.h, include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, src/bindings.c, src/data.c, src/dirtree.c, src/ident.c, src/inet.c, src/log.c, src/main.c, src/netaddr.c, src/scoreboard.c, utils/misc.c: Bug#1711 - IPv6 support. Let the IPv6 fun begin. 2003-08-06 castaglia <castaglia> * modules/mod_auth_file.c: Fix code in case where fgetgrent(3) is not present on the system. 2003-08-02 castaglia <castaglia> * contrib/mod_sql_mysql.c: MySQL-4.1.0 changed the signature for the make_scrambled_password() function, so we handle it by checking the MySQL version. This commit also includes some style changes. 2003-08-01 castaglia <castaglia> * modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, src/data.c, src/dirtree.c, src/main.c, src/pool.c, src/support.c: Style. 2003-08-01 castaglia <castaglia> * contrib/mod_radius.c, contrib/mod_rewrite.c, modules/mod_auth.c, modules/mod_auth_file.c, src/netio.c: Adding signal handling in while() loops. 2003-07-30 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2118 - %F doesn't work for DELE command; %f is inconsistent. This is exactly the reason why we really need a unified cookie/variable handling interface. Too much code duplicated around in modules leads to out-of-sync code bugs like this. 2003-07-30 castaglia <castaglia> * contrib/mod_tls.c: Removing unused code. 2003-07-30 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Close files that have been fopen()'d always, not just when conditions mean that no errors are encountered. 2003-07-29 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2119 - FEAT response format does not conform to RFC2389. 2003-07-29 castaglia <castaglia> * doc/rfc/rfc2228.txt, doc/rfc/rfc2389.txt, doc/rfc/rfc2428.txt: Style. 2003-07-28 castaglia <castaglia> * NEWS: Mention fix of mod_tls directives. 2003-07-28 castaglia <castaglia> * contrib/mod_tls.c: TLSCACertificateFile and TLSCACertificatePath are documented to be allowed in all server contexts, not just "server config"; the code was wrong. 2003-07-25 castaglia <castaglia> * sample-configurations/anonymous.conf, sample-configurations/complex-virtual.conf, sample-configurations/mod_sql.conf, sample-configurations/virtual.conf: Style. 2003-07-25 jwm <jwm> * include/pr-syslog.h: silence warning 2003-07-24 castaglia <castaglia> * Makefile.in, NEWS: Bug#2115 - ftptop depends on snprintf but doesn't link in lib/libsupp.a 2003-07-24 castaglia <castaglia> * doc/rfc/rfc2428.txt: IPv6 support _is_ going to be added Real Soon Now(tm), so we might as well as the relevant RFC. 2003-07-21 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#2113 - mod_sql default uses mysql keyword. 2003-07-18 castaglia <castaglia> * include/proftpd.h, src/main.c: Add two new members to the session struct: curr_cmd and curr_phase. These are for storing pointers to the current FTP command name and current command handler phase, respectively. They are useful for places like the FSIO API, where callbacks may want to take conditional action depending on the FTP command/phase at the time. 2003-07-16 castaglia <castaglia> * NEWS, include/dirtree.h, src/dirtree.c, src/main.c: Bug#2110 - Segfault if gethostname(2) returns NULL. When code was added to simply remove a server_rec whose name could not be resolved from the list, rather than halting the process there (which allows a more Apache-like handling of badly configured vhosts by logging/skipping, rather than choking), an edge case became possible where, after looping through all the server_recs, _none_ remained in the list. This case was not being handled, and lead to a segfault later in the processing. This patch checks for the case where no valid server_recs remain in the list. 2003-07-16 castaglia <castaglia> * contrib/mod_sql_mysql.c: Spacing nit. 2003-07-15 castaglia <castaglia> * modules/mod_xfer.c: Cruft. 2003-07-11 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#2103 - AuthAliasOnly in server context causes hang. 2003-07-10 jwm <jwm> * contrib/mod_ldap.c: release 2.8.12 2003-07-07 castaglia <castaglia> * contrib/mod_sql_mysql.c: Typo. 2003-07-07 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Updating module names in comments. 2003-07-07 castaglia <castaglia> * NEWS: Correcting handling of mod_tls TLSCertificateChainFile directive. 2003-07-07 castaglia <castaglia> * contrib/mod_tls.c: Change the semantics of TLSCertificateChainFile slightly. Now, this directive can be used to explicitly configure the chain of certs given to a peer during the TLS handshake. Any server certs, configured using either CertificateFile or CertificatePath, are added to the list of CAs allowed for clients, but not for servers. 2003-07-07 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#2100 - Invalid domain in <VirtualHost> tag causes segmentation fault. 2003-07-03 castaglia <castaglia> * sample-configurations/anonymous.conf, sample-configurations/complex-virtual.conf: Don't forget the X-variants of FTP commands in <Limit> examples. 2003-06-28 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Add comments about provide proper escapestring implementations. Failure to do so allows SQL injection. 2003-06-27 castaglia <castaglia> * modules/mod_core.c: Be a little more verbose about the exact error cause of log_opensyslog() fails. 2003-06-27 castaglia <castaglia> * lib/pr-syslog.c: Fix some inadvertently inverted #ifdefs. 2003-06-24 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c, include/conf.h: Bug#2090 - mod_rewrite doesn't compile on Solaris 8. 2003-06-23 castaglia <castaglia> * contrib/mod_radius.c: Use USHRT_MAX rather than 65535 (and fix a typo). 2003-06-17 castaglia <castaglia> * contrib/mod_sql_postgres.c: Removing POSTGRES_NO_ESCAPESTRING #define from mod_sql_postgres. See Bug#2087. 2003-06-17 castaglia <castaglia> * configure: Updating configure. 2003-06-17 castaglia <castaglia> * config.h.in, configure.in, include/conf.h: Configure detection/use for <netinet/in_systm.h> header; this fixes compile errors on BSD platforms. Patch contributed by Daniel Svensson. 2003-06-16 castaglia <castaglia> * NEWS, src/dirtree.c, src/sets.c: Bug#2088: proftpd -t segfault. The functional change of this patch is using parent_pool, rather than c_pool, in start_sub_config() when allocating a new xaset *. The rest of the patch is style cleanup. 2003-06-12 castaglia <castaglia> * contrib/mod_tls.c: Better handling of too long certificate verification chains. 2003-06-12 castaglia <castaglia> * src/inet.c, src/modules.c: Missing $Id$ keyword. 2003-06-11 castaglia <castaglia> * src/ident.c: Match debug levels with what's in main.c for ident lookups. 2003-06-11 castaglia <castaglia> * src/ident.c, src/main.c: Add some debugging routines to the ident lookups. 2003-06-11 castaglia <castaglia> * config.h.in: Missing entry for <netinet/ip.h> header file, checked by configure. 2003-06-10 castaglia <castaglia> * contrib/mod_tls.c: Need to be consistent about names of variables used. 2003-06-10 castaglia <castaglia> * contrib/mod_tls.c: Better handling of possible errors when loading certs from a CertificateChainFile. 2003-06-10 castaglia <castaglia> * contrib/mod_tls.c: Fixed typo that prevent TLSCertificateChainFile from working properly. 2003-06-09 castaglia <castaglia> * NEWS, modules/mod_auth_file.c: Bug#2083 - "550 Access denied" on group permission with AuthGroupFile. 2003-06-06 castaglia <castaglia> * src/main.c: Add debug output (level 6) for use/nonuse of RFC1413 lookups. 2003-06-05 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c: Match variable data types. 2003-06-05 castaglia <castaglia> * NEWS, modules/mod_auth.c: Some inappropriate/ill-timed Class functionality check was preventing %N/%y from being properly counted for DisplayConnect files. 2003-06-04 castaglia <castaglia> * include/options.h: Increase default PR_TUNABLE_LOGIN_MAX size (and don't use _POSIX_LOGIN_NAME_MAX, even if it is defined). Should fix Bug#2079. 2003-06-04 castaglia <castaglia> * configure: Updating configure. 2003-06-04 castaglia <castaglia> * config.h.in, configure.in: Add autoconf checks for mlock(2), mlockall(2), munlock(2), and munlockall(2). 2003-06-04 castaglia <castaglia> * src/inet.c: Typo in inet_setnonblock() (Bug#2077). 2003-06-03 castaglia <castaglia> * modules/mod_log.c, src/log.c, src/main.c: Changing variable names to avoid pedantic compiler warnings emitted by gcc-3.3. 2003-06-03 castaglia <castaglia> * NEWS, include/conf.h, include/fsio.h, include/options.h, include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/dirtree.c, src/fsio.c, src/log.c, src/netio.c, src/response.c, src/scoreboard.c, src/support.c, utils/scoreboard.c, utils/utils.h: Bug#2069: Long MKD path causes truncated server response. 2003-06-03 castaglia <castaglia> * src/fsio.c: Change related to Bug#2043: files always need to be opened using the O_BINARY flag on Cygwin, not just for ASCII transfers. 2003-06-03 castaglia <castaglia> * configure: Updating configure. 2003-06-03 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#2076 - The --enable-transfer-buffer-size configure option doesn't work properly. 2003-06-02 castaglia <castaglia> * NEWS, src/fsio.c: Bug#2075 - ls / fails under Cygwin. 2003-06-02 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2074: MaxStoreFileSize restriction capabilities ignored. The find_maxnbytes() function in modules/mod_xfer.c was not checking the argc of the configured config_recs properly, and so was ignoring any configured classifiers on Max{Retrieve,Store}FileSize directives. This also fixes the handling of a single "*" configuration parameter, which is documented as being allowed. 2003-05-31 castaglia <castaglia> * contrib/mod_rewrite.c: Changed referenced to deprecated make_named_sub_pool() to make_sub_pool(). 2003-05-31 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_log.c: Adding new LogFormat variable, %J (and mod_sql support for it). This variable expands to the arguments given in an FTP command. Currently, there is %m for just the command, %r for the full command (command + arguments), but nothing for just the arguments. Hence the need for a new variable. 2003-05-31 castaglia <castaglia> * modules/mod_core.c: Changed handling of RNTO slightly. It would clear session.xfer.p at the end of the CMD phase. Unfortunately, this meant that for ExtendedLog/SQLLog, which might want to use %f for RNTO, the path allocated from that pool would be gone. Now, a LOG_CMD/LOG_CMD_ERR handler for RNTO does the clearing of session.xfer.p for RNTO, thus letting mod_log/mod_sql have a chance to do their stuff. 2003-05-29 castaglia <castaglia> * README.cygwin: Adding note to Cygwin README to use Cygwin 1.3.22 or later, in order to prevent/quell ENOTSOCK errors (Bug#2064). 2003-05-29 castaglia <castaglia> * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Add some sanity checks to the backend init handlers. (Note: this actually makes a difference for a different module I'm working on, but the logic is still worthwhile for the existing code.) 2003-05-28 jwm <jwm> * contrib/dist/rpm/proftpd.spec: build fixup from Ivan Martinez <ivanfm@os2brasil.com.br> 2003-05-28 castaglia <castaglia> * Makefile.in: Add an 'all' dependency to the install target, to catch those unsuspecting admins that might skip the 'make' and go straight for the 'make install'. 2003-05-27 castaglia <castaglia> * lib/pr-syslog.c: UnixWare 7.1 seems to have STREAMS support for /dev/log, similar to Solaris and IRIX. It's not quite the same, though. Patch contributed by Olivier PRENANT. 2003-05-27 jwm <jwm> * contrib/dist/rpm/proftpd.spec: logrotate script should be config(noreplace) 2003-05-27 jwm <jwm> * contrib/dist/rpm/proftpd.spec: Apparently RPM doesn't like user-defined options with dashes in them (--with-module -> --with) 2003-05-26 castaglia <castaglia> * src/data.c: Style/spacing. 2003-05-26 jwm <jwm> * NEWS: I really should pay attention to what I'm doing when I resolve conflicts... 2003-05-26 jwm <jwm> * NEWS: Bug 1804 - Permit selection of additional contrib modules when building the RPM 2003-05-26 jwm <jwm> * contrib/dist/rpm/proftpd.spec: change the flag name 2003-05-26 jwm <jwm> * contrib/dist/rpm/proftpd.spec: Bug 1804 - RPM spec file improvements 2003-05-23 castaglia <castaglia> * src/log.c: Make the error about logging to world-writeable directories a little more prominent. 2003-05-22 castaglia <castaglia> * NEWS, src/fsio.c: Bug#2043 - Proftpd converts LF to CRLF on PUT (Cygwin) 2003-05-22 castaglia <castaglia> * modules/mod_xfer.c: Fix missing case for .ftpaccess files bearing Max{Retrieve,Store}FileSize directives. 2003-05-20 castaglia <castaglia> * contrib/mod_sql.c: Correcting thinko in mod_sql that affected proper lookup of shell values. Minor log message correction. 2003-05-19 castaglia <castaglia> * modules/mod_xfer.c: Make sure that for the TransferRate, when updating the scoreboard, the actual number of bytes sent (not adjusted for free bytes) is used. 2003-05-19 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2051 - freebytes in TransferRate does not work properly. 2003-05-16 castaglia <castaglia> * include/version.h: Bumping the version for CVS. 2003-05-16 castaglia <castaglia> * ChangeLog: Updating ChangeLog. 2003-05-16 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.2.9rc1 release. 2003-05-15 castaglia <castaglia> * lib/libcap/Makefile, lib/libcap/cap_alloc.c, lib/libcap/cap_text.c, lib/libcap/include/sys/capability.h, lib/libcap/libcap.h, modules/mod_cap.c: Bug#2000 - mod_cap should not use bundled libcap. This patch updates the bundled libcap; I won't be closing the bug report just yet. 2003-05-14 castaglia <castaglia> * modules/mod_xfer.c: We don't want to call regerror(3) when regexec(3) matches -- we want to call regerror() when it _doesn't_ match. Seeing "Success" in the debugging output is not very useful. 2003-05-14 castaglia <castaglia> * NEWS: Wrong bug report number. 2003-05-14 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c: Bug#1977 - Add %u variable support in configuration file. 2003-05-14 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#2031 - Add support for flags for RewriteCondition, RewriteRule (a la Apache's mod_rewrite) 2003-05-14 castaglia <castaglia> * NEWS, src/dirtree.c, src/fsio.c: Bug#2047 - 1024 or more chars in .ftpaccess causes lockup. 2003-05-12 castaglia <castaglia> * lib/pr-syslog.c: Fix logic. 2003-05-12 castaglia <castaglia> * lib/pr-syslog.c: Add an Id tag. 2003-05-09 jwm <jwm> * lib/pr-syslog.c: centralize STREAMS defines 2003-05-09 castaglia <castaglia> * configure: Updating. 2003-05-09 castaglia <castaglia> * configure.in: Minor wording correction/change. 2003-05-08 castaglia <castaglia> * configure: Updating configure. 2003-05-08 castaglia <castaglia> * configure.in: Cygwin installation patch (contributed by Jason Tishler <jason@tishler.net>). 2003-05-02 castaglia <castaglia> * README.cygwin: Add note about Cygwin's lack of largefile support (sizeof(off_t) is only 4, rather than 8, on Cygwin). 2003-05-02 castaglia <castaglia> * configure: Updating configure. 2003-05-02 castaglia <castaglia> * config.h.in, configure.in, include/conf.h: Adjusting the check for %llu support a little: we only want to use %llu if a) printf(3) supports it _and b) the size of off_t (hopefully defined to be an unsigned long long) is 8 bytes. Otherwise, use %lu. 2003-04-30 castaglia <castaglia> * include/dirtree.h, include/support.h, modules/mod_auth.c, modules/mod_auth_unix.c, src/dirtree.c, src/support.c: Moving the handling of authentication for Cygwin from mod_auth to mod_auth_unix. 2003-04-30 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c: get_param_ptr() lookup logic thinkos. 2003-04-30 castaglia <castaglia> * contrib/mod_rewrite.c: More explicit handling of RewriteEngine lookup. 2003-04-30 castaglia <castaglia> * modules/mod_auth_file.c: Style/placement. 2003-04-30 castaglia <castaglia> * NEWS, modules/mod_auth_file.c: Bug#2032 - AuthOrder not working when first option is mod_auth_file.c. 2003-04-30 castaglia <castaglia> * configure: Updating. 2003-04-30 castaglia <castaglia> * config.h.in, configure.in, include/conf.h: Try to determine whether %llu or %lu should be used in the configure script by actually testing use of printf(3), rather than relying on _FILE_OFFSET_BITS (which some platforms don't use) or SIZEOF_OFFSET_T (which doesn't convey the host printf()'s ability to support %llu). 2003-04-30 castaglia <castaglia> * contrib/mod_tls.c: Forgot to decrement the reference count to the peer cert properly. 2003-04-30 castaglia <castaglia> * modules/mod_xfer.c: Fix some cases where a filehandle was not being closed properly, or the wrong filehandle was being closed. In all honesty, I think this patch may be a bit paranoid, as these cases are probably caught by xfer_err_cleanup(). Still, at least the code will be more consistent (and less confusing if you don't know where to look) with these changes. 2003-04-29 castaglia <castaglia> * NEWS: Oops...wrong credit. =/ 2003-04-29 castaglia <castaglia> * NEWS: Add credit for AllowForeignAddress fix. 2003-04-29 castaglia <castaglia> * modules/mod_core.c, src/inet.c: Transition to using get_param_ptr() instead of get_param_int() resulted in bad logic when handling AllowForeignAddress. 2003-04-26 jwm <jwm> * src/.cvsignore, utils/.cvsignore: ignore autogenerated man pages 2003-04-25 castaglia <castaglia> * NEWS, README.cygwin, include/privs.h, modules/mod_auth.c, src/main.c: Cygwin portability fixes: on Cygwin, the root UID/GID is not 0/0, but 18/544: http://cygwin.com/ml/cygwin/2003-04/msg01918.html Also updating the Cygwin README with feedback from Jason Tishler <jason at tishler.net>. 2003-04-25 castaglia <castaglia> * NEWS, include/bindings.h, src/bindings.c, src/main.c: Fixed minor fd leak/messiness where listening fds were not being properly closed in a session process, when the session is first starting. Michael noticed symptoms of this manifesting as a problem handling HUPs. (I can't believe this behavior has gone on for so long in the code with no one noticing...oh well). 2003-04-24 castaglia <castaglia> * contrib/mod_rewrite.c: Fixing bug where a RewriteRule with no conditions was not being executed properly. 2003-04-24 castaglia <castaglia> * INSTALL, README.modules: Module name changes. 2003-04-24 castaglia <castaglia> * README.modules: Updating the module list. 2003-04-23 castaglia <castaglia> * contrib/mod_rewrite.c: Pedantic change -- bad grammar in variable name. 2003-04-23 castaglia <castaglia> * configure: Updating. 2003-04-23 castaglia <castaglia> * configure.in, include/privs.h, modules/mod_auth.c, modules/mod_cap.c, modules/mod_core.c, src/auth.c, src/main.c: Adding more stuff to the --enable-devel option: first, the ability to generate core dumps (thank you, Michael!) Second, the ability to specify developer options in the configure --enable-devel parameter, rather than using CFLAGS. For example, rather than doing: CFLAGS="-DPR_DEVEL_NO_FORK -DPR_DEVEL_COREDUMP" ./configure --enable-devel ... you can now do: ./configure --enable-devel=nofork:coredump ... At present, only three developer options are supported: nodaemon, nofork, and coredump. 2003-04-23 castaglia <castaglia> * src/pool.c: Sanity checking. 2003-04-23 castaglia <castaglia> * lib/glibc-glob.c: Fixing compiler warning. 2003-04-23 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#2029 - Rewrite rule may execute more than once if multiple rewrite conditions exist. 2003-04-22 castaglia <castaglia> * NEWS: Bug#2003 - mod_auth.c does not compile for cygwin on W2K. 2003-04-22 castaglia <castaglia> * modules/mod_auth.c: Slight modification of Cygwin stuff, as per Bug#2003. Cygwin doesn't/shouldn't use the normal proftpd auth handlers for checking passwords (it's done by Cygwin's cygwin_logon_user() function). 2003-04-22 castaglia <castaglia> * include/proftpd.h, lib/pr_fnmatch_loop.c, modules/mod_auth.c, modules/mod_auth_unix.c: Bug#2003 - mod_auth.c does not compile for cygwin on W2K. There may be more work needed on this bug, but this patch at least compiles correctly. 2003-04-18 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1532 - [patch] Human readable disk free. 2003-04-17 castaglia <castaglia> * src/inet.c: Cruft removal. 2003-04-16 castaglia <castaglia> * src/fsio.c: Add Solaris 2.5.1 to the list of Solaris versions that use struct statvfs for its statvfs(2) call. 2003-04-16 castaglia <castaglia> * src/fsio.c: Typo. 2003-04-16 castaglia <castaglia> * configure: Updating configure script. 2003-04-16 castaglia <castaglia> * configure.in: Tweaking the configure.in file to fix some things that cause trouble on Tru64 Unix (and probably other picky platforms). 2003-04-16 castaglia <castaglia> * src/fsio.c: Reworking the #ifdefs around statvfs a little; now, if we're a Solaris 2.6 or 2.7 box, we'll use struct statvfs, otherwise, statvfs_t. We'll deal with those poor souls still using 2.5.1 or older later. (Thanks for the info about statvfs64 on Solaris 2.7, Noah). 2003-04-16 castaglia <castaglia> * src/fsio.c: Silencing compiler warnings about statvfs64(2) on LFS-enabled Solaris. 2003-04-15 castaglia <castaglia> * modules/mod_core.c: "HideFiles none" config_recs did not contain the proper CF_MERGEDOWN_MULTI flag, unlike their regex-bearing config_rec siblings. 2003-04-15 castaglia <castaglia> * NEWS, src/main.c: Bug#2021 - Inetd mode and scoreboard format changes. Now, if ServerType is inetd and the server encounters a scoreboard version mismatch on startup, the old scoreboard file will be unlinked and a new blank one written. 2003-04-15 castaglia <castaglia> * NEWS, modules/mod_auth.c, modules/mod_core.c: Added RootRevoke configuration directive. 2003-04-15 castaglia <castaglia> * src/modules.c: Minor adjustment, to make sure that PRE_CMD, POST_CMD et al are not inadvertently forgotten. 2003-04-14 castaglia <castaglia> * src/modules.c: HOOK commands need to be properly inserted into the stash if they are to be later looked up. 2003-04-14 castaglia <castaglia> * modules/mod_xfer.c: Michael found a bug where the REST position was not properly being cleared between uploads/downloads. 2003-04-09 castaglia <castaglia> * src/inet.c: Typo. 2003-04-09 castaglia <castaglia> * src/inet.c: IRIX doesn't need this ioctl(2) call, it seems. 2003-04-09 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_site.c, modules/mod_xfer.c: Bug#2002 - Per-<Directory> PathAllowFilter/PathDenyFilter. 2003-04-08 castaglia <castaglia> * contrib/mod_ifsession.c: Fixing bug with mod_ifsession's searching/handling of multiple <If*> contexts. 2003-04-08 castaglia <castaglia> * configure: Updating configure. 2003-04-08 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/data.h, src/data.c: Bug#1813 - configure code: mistake in BSD sendfile semantic detection. The autoconf test for Linux simply needed to #include <sys/sendfile.h>. Bug#2019 - proftpd support for Solaris 8/9 native sendfile. A native Solaris sendfile() implementation became available via patch for Solaris 8, and is included by default in Solaris 9. I don't know how stable or esoteric the implementation is, so this may have bugs lurking. 2003-04-08 castaglia <castaglia> * modules/mod_ls.c: Fix segfault in NLST. 2003-04-07 castaglia <castaglia> * src/main.c: Minor buglet: actually honor RLIM_INFINITY if USE_DEVEL is defined when setting the RLIMIT_CORE rlimit. 2003-04-07 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#2018: Incorrect caching of TransferRate values. 2003-04-04 castaglia <castaglia> * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Quell some compiler warnings when --enable-devel flags are used. 2003-04-04 castaglia <castaglia> * configure: Updating. 2003-04-04 castaglia <castaglia> * configure.in: Oops...forgot an important part. =P 2003-04-04 castaglia <castaglia> * configure: Updating. 2003-04-04 castaglia <castaglia> * NEWS, configure.in, src/proftpd.8.in, src/xferlog.5.in, utils/ftpcount.1.in, utils/ftpshut.8.in, utils/ftptop.1.in, utils/ftpwho.1.in: Bug#2016 - man pages should be autogenerated to reflect the --prefix used. The man pages are now generated by the configure script. 2003-04-03 castaglia <castaglia> * modules/mod_core.c: Scrub the scoreboard during a rehash (SIGHUP), too. 2003-04-03 castaglia <castaglia> * configure: Updating configure script for curses/ncurses library detection changes. 2003-04-03 castaglia <castaglia> * configure.in: Bug#2009: ncurses/ftptop linker problem on Solaris. The system in question has curses.h, libcurses, and libncurses. The configure script used libncurses when linking ftptop (as ncurses is preferred if we can get it) without checking to see if ncurses.h was present. Now, the library is checked only if the corresponding header is present. 2003-04-03 castaglia <castaglia> * configure: Updating configure script. 2003-04-03 castaglia <castaglia> * NEWS, config.h.in, configure.in, utils/ftptop.c: Added new --disable-{curses,ncurses} configure options. 2003-04-02 castaglia <castaglia> * README.PAM: Updating Linux PAM configuration examples. 2003-04-02 castaglia <castaglia> * NEWS, src/main.c: Bug#2011 - No "FTP session closed." msgs written to logfile. The check for when to write the message ("!is_master") only checks if the current process is a child process, not an existing daemon process. This works well for standalone daemons, but not inetd-run daemons, which have no "master" process. The fix, then, is to log the message if either !is_master or if the servertype is inetd. 2003-04-01 castaglia <castaglia> * include/modules.h, src/modules.c: Removing crufty auth_priority variable. 2003-04-01 castaglia <castaglia> * contrib/mod_sql.c: Pedantic orthography correction. 2003-04-01 castaglia <castaglia> * contrib/mod_sql.c: Add typecasting, to quell compiler warnings. 2003-04-01 castaglia <castaglia> * modules/mod_core.c: This module needs to include signal.h, so that it picks up the prototype for kill(2). 2003-03-29 castaglia <castaglia> * src/scoreboard.c: Be a little more careful about interrupted system calls. In some cases, we wrap the system calls in while() loops, handling EINTRs. In others, we simply block all signals that might interrupt the system call. Also, lock the scoreboard when writing a new header for it (this was not being done). 2003-03-29 castaglia <castaglia> * modules/mod_auth.c: Remove spurious logged complaints about the scoreboard, causing by logging on any return value from pr_open_scoreboard(), not just the error return values. Oops. 2003-03-29 castaglia <castaglia> * modules/mod_ls.c: Prevent a segfault in some situations by making sure the pointer exists before dereferencing it. 2003-03-29 castaglia <castaglia> * src/fsio.c: Be a little more accurate when reporting the name of the FS whose callback is being invoked. 2003-03-28 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1998 - Add ListOptions for setting limits on -R listings. 2003-03-28 castaglia <castaglia> * src/main.c: Every command needs to have its logging class, unless otherwise explicitly set, default to CL_ALL. 2003-03-28 castaglia <castaglia> * contrib/ftpasswd: Make explicit the fact that --group --member parameters are user names. 2003-03-26 castaglia <castaglia> * src/mkhome.c: Quell compiler warnings on Solaris by explicitly casting mode_t to an unsigned int. 2003-03-25 cyberrobo <cyberrobo> * modules/mod_ls.c: small typo 2003-03-25 castaglia <castaglia> * NEWS, src/inet.c: Bug#1997 - UnixWare 7.1.3 & port 20. 2003-03-24 castaglia <castaglia> * src/inet.c: Typo. 2003-03-24 castaglia <castaglia> * src/inet.c: More setsockopt(2) fun: *BSD want IPPROTO_IP for setting IP_TOS options, Linux wants SOL_IP. 2003-03-24 castaglia <castaglia> * modules/mod_auth.c, src/main.c, src/scoreboard.c, utils/ftpcount.c, utils/ftptop.c: Fixing the messages reported when opening the scoreboard (and making all such messages consistent). Note: we'll need to document, probably in the release announcement, when the scoreboard format (include/scoreboard.h's PR_SCOREBOARD_VERSION) is increment. For standalone-run daemons, there is no problem; for inetd-run daemons, though, the old scoreboard file will need to be deleted before the new daemon is started, else the new daemon will complain of the scoreboard being too old. (I think this is what we are seeing now with people upgrading from 1.2.7 to 1.2.8; it's the first time in who knows how long that the scoreboard version number was increment.) 2003-03-24 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1935 - mod_ls memory leak. 2003-03-24 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Fixing mod_tls' use of SSL_shutdown() to properly shutdown an SSL session when talking to some clients that don't want to shutdown properly. 2003-03-23 castaglia <castaglia> * src/netio.c: A shutdown() is not a close(); shutdown should not be freeing the netio stream's pool. 2003-03-23 castaglia <castaglia> * contrib/mod_sql.c: More error checking when a custom SQLUserInfo query is used. 2003-03-22 castaglia <castaglia> * utils/utils.h: Cruft. 2003-03-22 castaglia <castaglia> * configure: Updating. 2003-03-22 castaglia <castaglia> * configure.in: For now, require that --enable-ipv6 be used at configure time. Once IPv6 support has had all its bugs worked out, then we can make IPv6 support the default. 2003-03-22 castaglia <castaglia> * configure: Updating. 2003-03-22 castaglia <castaglia> * config.h.in, configure.in, modules/mod_auth_unix.c: Change AUTO_SHADOW to be USE_AUTO_SHADOW, to be more consistent. Add a --disable-ipv6 configure option, and a corresponding USE_IPV6 define. Add check for getnameinfo(3) function. 2003-03-22 castaglia <castaglia> * configure: Updating. 2003-03-22 castaglia <castaglia> * aclocal.m4, config.h.in, configure.in: Check for a defined struct sockaddr_storage. I don't know if this is really necessary, or if we can assume that all platforms will define this struct. I think it better to have the check, just in case. 2003-03-22 castaglia <castaglia> * contrib/mod_sql.c: Check the number of fields in the returned set of a SQLUserInfo query. Hopefully this will quell some mod_sql/shell-related segfaults. 2003-03-21 castaglia <castaglia> * NEWS: Should mention mod_radius changes here. 2003-03-21 castaglia <castaglia> * contrib/mod_radius.c: Changing way mod_radius looks up custom attributes in response packets; now, rather than using RADIUS attribute type IDs, mod_radius will use VSA IDs. The new RadiusVendor directive is used to configure the vendor for which mod_radius will search. The new RadiusGroupInfo complements the existing RadiusUserInfo directive; as expected, RadiusGroupInfo is used to configure RADIUS user group membership information. 2003-03-21 castaglia <castaglia> * src/scoreboard.c: Report the scoreboard path anyway. 2003-03-21 castaglia <castaglia> * src/scoreboard.c: Add debug logging of the path used if opening the scoreboard file fails. 2003-03-21 castaglia <castaglia> * src/fsio.c, src/main.c: Making the checking of the configuration file path actually work. Getting rid of #PR_HACK_DISABLE_MEM_VHOST_FREE, and commenting out the freeing code completely. Copy-on-write semantics means that that freeing of memory, which would not be used or changed anyway, probably adds load unnecessarily. I doubt anyone will miss that code. 2003-03-20 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Added the ability to construct custom user information queries with mod_sql. The mod_sql docs will be updated accordingly. Various style cleanups included in this patch. 2003-03-20 castaglia <castaglia> * NEWS: Typo. 2003-03-20 castaglia <castaglia> * src/fsio.c: Minor correction of bug introduced by last night's pr_fs_valid_path() addition (forgot to handle case where no modules registered an FS). 2003-03-20 castaglia <castaglia> * NEWS, utils/ftptop.c: Bug#1995 - ftptop: no curses or ncurses library on this system. 2003-03-20 castaglia <castaglia> * contrib/mod_sql_mysql.c: One minor cast needed to compile/link without warnings against MySQL-4.0 client libraries. 2003-03-20 castaglia <castaglia> * include/fsio.h, modules/mod_core.c, src/fsio.c, src/main.c: Modifying the checking of configuration paths slightly. Rather than now only accepting absolute paths (criterion: string begins with '/'), paths that start with any of the paths registered with the FSIO layer will be accepted. This allows FSIO modules to register handlers for paths that may not necessarily be local filesystem paths (e.g. "sql://" paths). This change affects the paths accepted by the Include configuration directive as well. 2003-03-19 castaglia <castaglia> * configure: Updating. 2003-03-19 castaglia <castaglia> * aclocal.m4, config.h.in, configure.in: More IPv6-related autoconf detection. 2003-03-19 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Patching mod_tls to use RSA blinding in installations of OpenSSL older than 0.9.7b, in order to prevent certain RSA-based timing attacks: http://www.openssl.org/news/secadv_20030317.txt 2003-03-19 castaglia <castaglia> * modules/mod_auth.c: Another off-by-one bug, this time afflicting MaxClientsPerUser. 2003-03-18 castaglia <castaglia> * src/inet.c: Portability fun with socket options. =P 2003-03-18 castaglia <castaglia> * configure: Updating. 2003-03-18 castaglia <castaglia> * config.h.in, configure.in: Start autoconf checks for some functions we'll need for IPv6 support. 2003-03-18 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#1987 - mod_rewrite seems not to handle more than one backreference (only $1). 2003-03-18 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#1986 - mod_rewrite backreferences not zero-based (use $1 not $0?). 2003-03-17 castaglia <castaglia> * src/data.c: Trying to make sure that an interrupted sendfile(2) on Linux has its signals handled properly. 2003-03-17 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#1989 - SQLLog '*' doesn't match any commands. 2003-03-17 castaglia <castaglia> * modules/mod_xfer.c: Add handling of signals if sendfile() is interrupted. 2003-03-15 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#1730 - mod_mysql logging of long transfers fails. 2003-03-15 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Bug#1985 - mod_rewrite fails to build on platforms without flock(). 2003-03-14 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Adding $Id$ tags to the mod_sql files. 2003-03-14 castaglia <castaglia> * src/dirtree.c: Be a little more thorough in checking how to handle the given path in get_dir_ctxt(). 2003-03-14 castaglia <castaglia> * src/dirtree.c: Correct get_dir_ctxt() when operating within a chroot. 2003-03-14 jwm <jwm> * README.LDAP: forgot to update this for 2.8.11 2003-03-13 castaglia <castaglia> * NEWS, include/dirtree.h, src/dirtree.c, src/main.c: Bug#1983 - filenames beginning with # fail to upload / download. 2003-03-13 castaglia <castaglia> * include/fsio.h, src/fsio.c: Changing a few of the FSIO functions (close, read, write, lseek) so that they operate on file handles, rather than on filesystem objects. This is done primarily so that they can get access to the newly-added fh_data member of a file handle, used for storing file-specific data. Also added two new FSIO functions, for fstat and ftruncate. 2003-03-12 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c: Bug#1982: fixing how mod_sql_mysql reads MySQL .cnf files. Looks like there's a bug in MySQL's (undocumented) load_defaults() functions. Hrmf. 2003-03-12 castaglia <castaglia> * modules/mod_auth.c: Change the timing of when C_USER is removed from the config tree; this allows modules that want to lookup the USER name sent by the client (e.g. for substituting %U) a chance to do so. 2003-03-12 castaglia <castaglia> * Makefile.in: Pass LDFLAGS on to ftpcount and ftpshut, too. 2003-03-12 castaglia <castaglia> * contrib/mod_ifsession.c, include/dirtree.h, modules/mod_core.c, src/dirtree.c, src/sets.c: Updating code that checks for empty configuration contexts, and removes them. (Empty contexts within another context were causing segfaults). Also, add code to report, upon ending of a configuration context, if the ended context is being ignored (at debug level 3). 2003-03-09 castaglia <castaglia> * NEWS, include/scoreboard.h, modules/mod_auth.c, modules/mod_core.c, src/scoreboard.c, utils/utils.h: Bug#1915 - Unsafe pointer usage in scoreboard file format. 2003-03-09 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#1849 - Compile can have trouble finding mysql.h. 2003-03-09 castaglia <castaglia> * configure: Updating the configure script. 2003-03-09 castaglia <castaglia> * NEWS, configure.in, include/conf.h, include/dirtree.h, include/inet.h, include/options.h, modules/mod_core.c, modules/mod_xfer.c, src/bindings.c, src/data.c, src/dirtree.c, src/inet.c, src/main.c: Bug#1921 - Socket-level performance tweaks. 2003-03-09 castaglia <castaglia> * src/inet.c: Portability fix for letting active/inetd function properly on Mac OSX (Darwin). 2003-03-09 castaglia <castaglia> * src/main.c, utils/ftpcount.c, utils/ftpwho.c: Minor change: list the short form of options first, then the long form. 2003-03-09 castaglia <castaglia> * NEWS, include/options.h, modules/mod_core.c: Bug#1969 - Add scoreboard-scrubbing timer. 2003-03-09 castaglia <castaglia> * src/main.c: Oops. Had these function calls, for running through the registered daemon startup callbacks, in the inetd startup code -- not too useful there. Now in the standalone startup code, where they belong. 2003-03-09 castaglia <castaglia> * modules/mod_core.c: Actually, let's hold off on the idea of barring use of 0.0.0.0, for now. We can revisit it later. 2003-03-09 castaglia <castaglia> * include/modules.h, src/main.c, src/modules.c: Adding yet another module callback registration set of functions. This set is for allowing modules to register callbacks that are invoked just before the daemon starts up, after it has (possibly) daemonized. One would want to have something done at this point when you want to make sure that the daemon process is affected, e.g. adding a timer. Calling alarm(3) in a module_init function won't work for standalone daemons, for part of the daemonizing process involves forking() twice (to dissociate the process completely from the terminal), and all pending alarms are cleared for a child process. 2003-03-09 castaglia <castaglia> * NEWS: Making note of new handling/checking for IP address/port collisions. 2003-03-09 castaglia <castaglia> * modules/mod_core.c: This patch prevents two specific vhost misconfigurations: 1) trying to use "0.0.0.0", which no client could ever reach, and 2) IP address/port collisions. The second is the more likely of the misconfigurations, particularly when DNS names, rather than IP addresses, are used in <VirtualHost> lines (as when new proftpd uses think to configure name-based vhosts). 2003-03-09 castaglia <castaglia> * contrib/mod_tls.c, include/feat.h, modules/mod_core.c, src/feat.c: Pedantic namespace change: pr_{add,get}_feat -> pr_feat_{add,get}. This provides consistency in the pr_* function namespace. 2003-03-09 castaglia <castaglia> * README.ports: Updating. 2003-03-09 castaglia <castaglia> * include/modules.h: Cruft. 2003-03-09 castaglia <castaglia> * include/proftpd.h: Cruft. 2003-03-07 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#1932 - Make Max* checks a PASS POST_CMD handler. 2003-03-06 castaglia <castaglia> * contrib/mod_sql_postgres.c: Postgres added a string-escaping function at some point, so just as mod_sql_mysql does, now mod_sql_postgres will make use of its library-provided function. Note that a manual #define had to be used, to ensure backward compatibility with Postgres installations that don't have the escape function. Ideally a configure script could check for the function; this is yet another case for having proftpd's build system support per-module build directories and scripts. 2003-03-06 jwm <jwm> * contrib/mod_ldap.c: upgrade to 2.8.11 2003-03-06 castaglia <castaglia> * NEWS, contrib/mod_ifsession.c: Bug#1933 - Add mod_ifsession contrib module. 2003-03-06 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#1980 - Login with incorrect password POSSIBLE when using mod_radius. 2003-03-05 castaglia <castaglia> * NEWS, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c: Bug#1869 - Add option "--server/-s" to ftpwho&ftpcount&ftptop. 2003-03-05 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#1979 - Add TLSTimeoutHandshake directive. 2003-03-05 castaglia <castaglia> * NEWS, include/scoreboard.h, src/main.c, src/scoreboard.c, utils/ftptop.c, utils/ftpwho.c, utils/utils.h: Bug#1794 - Scoreboard format changes. This commit splits the cmd (i.e. the FTP command used) from the command arguments in the scoreboard. 2003-03-05 castaglia <castaglia> * modules/mod_auth.c: Fixing shadowing variable name. 2003-03-05 castaglia <castaglia> * include/privs.h: Make the PRIVS_ROOT macro change the egid to 0 as well as the euid, to be consistent. 2003-03-04 castaglia <castaglia> * modules/mod_xfer.c: Re-add the missing setsockopt(TCP_CORK) to uncork the socket after sending data. 2003-03-04 castaglia <castaglia> * modules/mod_xfer.c: Still working on this. 2003-03-04 castaglia <castaglia> * modules/mod_xfer.c: Fixing use of TCP_CORK. 2003-03-04 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1972 - %T not correctly shows time at performance of a command "rename". 2003-03-04 castaglia <castaglia> * NEWS, utils/ftpshut.c: Added -D option to ftpshut, to be used to delete the /etc/shutmsg file (rather than having to manually remove it). 2003-03-04 castaglia <castaglia> * modules/mod_xfer.c, src/inet.c: Add use of TCP_CORK setsockopt(2) option on platforms that define it (e.g. Linux). 2003-03-04 castaglia <castaglia> * contrib/mod_sql.c, include/modules.h, src/modules.c: Formalizing the use of "hooks", which are custom cmdtable entries that contrib modules can add. mod_sql started the trend with its "sql_lookup" and "sql_change" hooks. This patch makes sure that any such hooks will not be accidentally used; it was possible, if a custom hook was entered that has an all uppercase name, for a client to send an FTP command that matched that name, leading to a possible bad interaction. This patch avoids the above scenario by defining a new symbol tag, PR_SYM_HOOK, to be used for "hook" cmdtable entries. I'll add documentation about this in the Developer's Guide as appropriate. 2003-03-04 castaglia <castaglia> * NEWS, modules/mod_auth.c: Added AnonRejectPasswords. 2003-03-04 castaglia <castaglia> * NEWS, include/scoreboard.h, modules/mod_auth.c, modules/mod_auth_unix.c, src/main.c, src/scoreboard.c, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c, utils/scoreboard.c, utils/utils.h: Bug#1967: Add display of uptime to ftpwho, ftptop. 2003-03-04 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, include/version.h, modules/mod_core.c: Bugs 1828 and 1960. 2003-03-04 castaglia <castaglia> * ChangeLog: Updating. 2003-03-04 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for release of 1.2.8. 2003-03-04 castaglia <castaglia> * README.PAM: Updating PAM information for FreeBSD. 2003-03-03 castaglia <castaglia> * src/inet.c: Fixed #if check. 2003-03-03 castaglia <castaglia> * src/main.c: Changing code back to its original setting; when doing the modifications for mod_unixpw -> mod_auth_unix, this code was incorrectly modified. 2003-03-03 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#1976 - Login hangs, spawned process runs in endless loop in mod_auth. 2003-03-03 castaglia <castaglia> * NEWS, src/inet.c: Adding FreeBSD-5.0 to the #defines for the socket/privs fun. 2003-03-01 castaglia <castaglia> * contrib/mod_tls.c: Playing with logged messages... 2003-03-01 castaglia <castaglia> * contrib/mod_tls.c: Bad grammar. 2003-03-01 castaglia <castaglia> * contrib/mod_tls.c: Pedantic changes of "SSL" to "TLS" adding logging for when mod_tls starts a TLS handshake on the data connection 2003-02-26 castaglia <castaglia> * src/inet.c: Modify the use of ioctl() such that it will be used on platforms known to use STREAMS (i.e. Solaris and IRIX, at present). 2003-02-26 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Added pr_class_and_expression(), for symmetry (and yes, there are cases where having a list of class names evaluated in a Boolean AND fashion can be useful). 2003-02-25 castaglia <castaglia> * configure: Updating configure script. 2003-02-25 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/conf.h, lib/pr-syslog.c, src/inet.c, src/netio.c: Bug#1964 - When uploading to an NFS mounted file system in passive mode read() get EAGAIN and closes connection. 2003-02-25 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1937 - transfer hangs when using transferrate limits on a resumed download. 2003-02-24 castaglia <castaglia> * modules/mod_xfer.c: Cleanup of missed code for Bug#1970. 2003-02-24 castaglia <castaglia> * NEWS, modules/mod_xfer.c, utils/ftptop.c, utils/ftpwho.c: Bug#1970 - Transfer time wraps around and causes problems with transfer speed calculation. 2003-02-24 castaglia <castaglia> * modules/mod_ls.c: Removing unused cruft. 2003-02-24 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1953 - STAT -R does not work. 2003-02-24 castaglia <castaglia> * NEWS, src/inet.c: Bug#1966 - SCO OpenServer 5.0.5 and inetd (not passive mode). 2003-02-24 castaglia <castaglia> * NEWS, modules/mod_log.c, src/dirtree.c: Bug#1908 - ExtendedLog to work properly in <Anonymous> context. 2003-02-20 castaglia <castaglia> * NEWS, utils/ftpwho.c: Bug#1958 - ftpwho -o oneline has newlines when client is idle. 2003-02-19 castaglia <castaglia> * modules/mod_xfer.c: Minor variable name change; seems to collide with variable used in Tru64 5.1b's headers. 2003-02-18 castaglia <castaglia> * configure: Updating configure script. 2003-02-18 castaglia <castaglia> * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c, modules/mod_ls.c: Bug#1941 - SCO OpenServer 5.0.5 2003-02-18 castaglia <castaglia> * sample-configurations/basic.conf: Adding some comments to the default config file. Hopefully this will stem some of the more common questions on the users mailing list. 2003-02-18 jwm <jwm> * configure: update 2003-02-18 jwm <jwm> * configure.in: typo 2003-02-18 jwm <jwm> * configure: update 2003-02-18 jwm <jwm> * configure.in: expend as little effort as possible if mod_cap is explicitly disabled 2003-02-17 castaglia <castaglia> * configure: Updating configure script. 2003-02-17 castaglia <castaglia> * configure.in: Add to output at end of configure --help instructions describing LIBS environment variable. 2003-02-17 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1956 - Upload transfer rate broken. 2003-02-14 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Added FTPS FEAT responses, as per the Draft. 2003-02-13 castaglia <castaglia> * modules/mod_xfer.c: Helps if I get the variable names right... 2003-02-12 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1948 - mod_xfer relinquishes privs before chmod takes place. 2003-02-12 castaglia <castaglia> * NEWS, include/log.h, modules/mod_xfer.c, src/data.c, src/log.c: Bug#1916 - Transfers hang with strange transfertime in logfile. 2003-02-12 castaglia <castaglia> * include/ident.h, include/timers.h, src/netio.c, src/pool.c, src/sets.c: Adding more $Id$ keywords. 2003-02-12 castaglia <castaglia> * src/feat.c: Added $Id$ keyword. 2003-02-10 castaglia <castaglia> * contrib/mod_sql.c, modules/mod_auth.c: Add logging of the problem if an admin configured a valid shell column in a SQL table, but the value of the shell in the table was NULL. 2003-02-10 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#1952 - Umask Bug: Server Not Honoring VirtualHost Umask. 2003-02-10 castaglia <castaglia> * configure: Updating configure script. 2003-02-10 castaglia <castaglia> * NEWS, aclocal.m4, configure.in, modules/mod_xfer.c: Bug#1949 - Compiler warns of 'long double' usage on OSX. 2003-02-07 castaglia <castaglia> * README: Add a line to the REAME pointing out the doc/ directory. Not that anyone will notice. *sigh* 2003-02-06 castaglia <castaglia> * configure: Updated configure script. 2003-02-06 castaglia <castaglia> * NEWS, aclocal.m4, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#1950 - OSX setgrent(3) returns int, causing compiler warning. 2003-02-05 castaglia <castaglia> * include/privs.h: Oops. I said DEBUG9, but had DEBUG0. Should've been DEBUG9 in code. Fixed. 2003-02-05 castaglia <castaglia> * include/privs.h: Add debug output, level 9, for PRIVS macros when they are disabled (will help cut down on confusion when proftpd is built on Linux, and admins forget that mod_cap is now enabled by default, and that mod_cap will disable id switching). 2003-02-01 castaglia <castaglia> * NEWS, include/glibc-glob.h: Bug#1943 - Unable to install on FreeBSD 5.0. 2003-01-31 castaglia <castaglia> * configure: Updating configure script. 2003-01-31 castaglia <castaglia> * configure.in: Only check for the linux/capability.h header if mod_cap has not already been explicitly disabled in the configure options. 2003-01-30 jwm <jwm> * NEWS, configure, configure.in: Bug 1863 - Unable to build under UnixWare 7 2003-01-30 castaglia <castaglia> * modules/mod_xfer.c: Changed TransferRate handler to use strtod() rather than strtoul() when parsing the kbps rate parameter. strtold() would be better...but FreeBSD doesn't seem to have strtold(). *sigh* 2003-01-30 castaglia <castaglia> * include/version.h: Updating version.h for CVS status. 2003-01-30 jwm <jwm> * Makefile.in: build deps before we get rid of the Makefiles we need to generate them :-) 2003-01-29 flyhmstr <flyhmstr> * doc/Configuration.html: ML: updated build of configuration.html 2003-01-29 castaglia <castaglia> * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Marking Bug#1911 fixed (I think the fix was committed when I was working on Bug#1931). Also updating the version and spec files, preparing for rc2 release. 2003-01-28 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1939 - RLimitMemory seems broken. 2003-01-25 castaglia <castaglia> * src/dirtree.c: Michael noticed that the parse_config_file() function was failing to close the opened configuration file handle, leaking descriptors. This started happening in 1.2.8rc1, with the introduction of the FSIO patch. Fixed. Good catch, Michael! 2003-01-25 castaglia <castaglia> * NEWS, src/support.c: Bug#1938 - upload to root directory fails. 2003-01-24 castaglia <castaglia> * contrib/mod_radius.c: Fixed misordered parameters to pr_rehash_register_handler() call. 2003-01-23 castaglia <castaglia> * src/modules.c: Actually check for a negative return value from the module initialization callback, if one is provided, and report an error if the initialization failed. Previously, the code would only check for a -1 return value, and would silently load the module to the internal lists if the returned value was not -1; just as silently would -1 returns be handled. 2003-01-23 castaglia <castaglia> * include/conf.h: Wrapping _GNU_SOURCE definition in an #ifndef. It's possible that, depending on the CFLAGS options given, some other included file may already define it, in which case the compiler will throw an "already defined" warning. 2003-01-22 castaglia <castaglia> * modules/mod_ls.c: As discovered when looking into Bug#1931, some of the response codes used when handling NLST are not legal viz. RFC959. This patch changes the 550s to 450s. 2003-01-21 castaglia <castaglia> * src/inet.c: Fixing inet_getname() so that, when doing reverse DNS checks, the two related calls, gethostbyaddr() and gethostbyname(), don't overwrite the same data. This was happening under Tru64 Unix, and could have happened under Linux. 2003-01-20 jwm <jwm> * NEWS, modules/mod_auth.c: Bug 1734 - Cygwin - Unable to set uid 2003-01-18 castaglia <castaglia> * Make.rules.in, NEWS, include/conf.h, include/mkhome.h, modules/mod_auth.c, src/mkhome.c: Bug#1241 - Additional functionality: HomedirOnDemand. Added as CreateHome directive. 2003-01-18 castaglia <castaglia> * configure: Updating configure, again. =P 2003-01-18 castaglia <castaglia> * configure.in: Argh. John had it right the first time. My mistake. =P 2003-01-18 castaglia <castaglia> * configure: Updating configure script. 2003-01-18 castaglia <castaglia> * configure.in: Changing check of UnixWare's libgen a little, to add -lgen to LIBS if libgen is present. 2003-01-18 castaglia <castaglia> * config.h.in: Adding HAVE_LIBGEN to config.h, corresponding to added AC_CHECK_LIB(gen) in configure.in. 2003-01-18 castaglia <castaglia> * modules/mod_auth_file.c, src/auth.c: Adding proper UID/GID->name translation to mod_auth_file.c 2003-01-18 castaglia <castaglia> * NEWS, modules/mod_auth_file.c: Bug#1918 - AuthUserFile not works normally. 2003-01-18 castaglia <castaglia> * src/fsio.c: Some of the FSIO routines are manually returning ENOENT, rather than letting errno propagate up properly. 2003-01-17 castaglia <castaglia> * modules/mod_auth_file.c, modules/mod_core.c, src/modules.c: Fixed broken pr_stash_remove_symbol() (AuthOrder still wasn't working quite right). Removed devel cruft from mod_auth_file, and added some more debugging output to it. 2003-01-17 castaglia <castaglia> * NEWS, contrib/mod_ratio.c, contrib/mod_sql.c, include/dirtree.h, include/modules.h, modules/mod_core.c, src/auth.c, src/main.c, src/modules.c: Bug#1926 - AuthOrder doesn't work. Also did a lot of style cleanup along the way. 2003-01-17 castaglia <castaglia> * NEWS, utils/ftptop.c: Adding displaying of transfer rates to ftptop. 2003-01-16 castaglia <castaglia> * Make.rules.in: The patch for Bug#1904 added building of utils/misc.o for ftpwho rather than ftptop. ftptop may need it, but it doesn't link against -lsupp, whereas ftpwho does. 2003-01-16 castaglia <castaglia> * src/regexp.c: Missing Id keyword. 2003-01-16 castaglia <castaglia> * NEWS, contrib/mod_sql_mysql.c, include/support.h, modules/mod_core.c, modules/mod_log.c, src/dirtree.c, src/support.c, utils/misc.c: Bug#1922 - Server allows RNTO an existing file even with AllowOverwrite turned off Some logging bugs in mod_log also corrected. 2003-01-14 castaglia <castaglia> * include/inet.h, src/data.c, src/inet.c, src/main.c: Adding checking for, and logging of, errors when calling setsockopt(2). 2003-01-14 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1923 - %N magic cookie reports incorrectly. 2003-01-14 castaglia <castaglia> * NEWS, modules/mod_log.c: Fixing problem with using %f for DELE logging, as mentioned on -user. 2003-01-13 castaglia <castaglia> * NEWS: Forgot to mention tcp{Receive,Send}Window fix in NEWS. 2003-01-13 castaglia <castaglia> * src/data.c: Fixing the timing of setting of socket options. The tcpReceiveWindow and tcpSendWindow configuration directives were not taking effect properly because setsockopt(2) was being called, for the data connection, _after_ the TCP handshake was done. As it is during the handshake when such things as window sizes are negotiated, this timing rendered any configuration settings useless. 2003-01-13 castaglia <castaglia> * src/main.c: As John pointed out, it's better to have run-time generated files, much like coredumps, to be under RUN_DIR (/var/run/proftpd), or CORE_DIR (although CORE_DIR is #defined to be RUN_DIR). So now, the profiling gmon.out and bb.out files will be found there, rather than /tmp. Thanks, John! =) 2003-01-13 castaglia <castaglia> * Make.rules.in, modules/mod_core.c, src/main.c: Added DEVEL_NO_DAEMON define, and changed other DEBUG_* defines to match. The purpose for these is to be able to build a proftpd daemon that can be profiled. Now, one can have a configure statement such as: CFLAGS="-DDEVEL_NO_DAEMON -DDEVEL_NO_FORK -g -pg -a" \ LIBS="-pg" ./configure ... The resulting daemon will only handle one session. The bb.out and gmon.out profiling files will be written to /tmp. 2003-01-13 castaglia <castaglia> * configure: Updating configure script. 2003-01-13 castaglia <castaglia> * configure.in: Removing -Wfloat-equal, for now. This warning flag was introduced with gcc-3.0, and so we'll need to check the gcc version being used (if indeed it is gcc being used) before using this flag. 2003-01-13 castaglia <castaglia> * modules/mod_xfer.c: Floating point numbers are best compared using greater/less than, not equals. Thanks to Steve Grubb for pointing this out. 2003-01-13 jwm <jwm> * NEWS: Add -Wundef and -Wfloat-equal to CFLAGS (Suggested by Steve Grubb <linux_4ever@yahoo.com>) 2003-01-13 jwm <jwm> * configure: update with autoconf 2.57; I'm curious if this changes the LFS problems I'm currently working on 2003-01-13 castaglia <castaglia> * configure.in: Add -Wfloat-equal and -Wundef to the warning flags enabled by using the --enable-devel configure option. 2003-01-13 jwm <jwm> * configure: update 2003-01-13 castaglia <castaglia> * NEWS, modules/mod_core.c, src/main.c: Bug#1910 - ProFTPD hangs on SIGHUP. 2003-01-11 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1919 - <Directory> section already configured for $dir needs clarification. 2003-01-09 jwm <jwm> * configure: update 2003-01-09 jwm <jwm> * modules/mod_cap.c: EnableCapabilities -> CapabilitiesSet 2003-01-09 jwm <jwm> * README.capabilities, configure.in: OS-neutrality 2003-01-08 castaglia <castaglia> * contrib/mod_radius.c: Corrected typo in session accouting variables. Bumped version number. 2003-01-08 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#1891 - SGI syslog isn't being written to. 2003-01-07 castaglia <castaglia> * contrib/mod_radius.c: Use cmd->arg, rather than cmd->argv[1], from the C_PASS command. 2003-01-07 castaglia <castaglia> * modules/mod_core.c, src/timers.c: Correcting minor bugs. 2003-01-07 castaglia <castaglia> * configure: Updated configure script. 2003-01-07 castaglia <castaglia> * configure.in: Add enable/disable configure option, for excluding mod_cap from Linux builds, for those sites that wish to have minimalist builds (e.g. every automatic inclusion should have an optional switch for disabling that inclusion). 2003-01-05 jwm <jwm> * NEWS: style nit 2003-01-05 jwm <jwm> * Make.rules.in, NEWS: Bug 1904 - Tru64 UNIX 4.0D and sstrncpy() 2003-01-05 jwm <jwm> * modules/glue.sh: style 2003-01-05 jwm <jwm> * configure: update 2003-01-05 jwm <jwm> * Make.rules.in, Makefile.in, NEWS, configure.in, lib/Makefile.in, modules/Makefile.in, src/Makefile.in, utils/Makefile.in: Bug 1826 - Makefiles are a bit icky. This gives the build system a nice tidying up; I don't seem to have broken anything. The only noticable change is that the dist/distclean/cvsclean targets have been cleaned up: cvsclean: is no more. Use distclean instead. distclean: return the source tree to its pristine condition (don't touch CVS state directories). dist: prepare the source tree for distribution. Move the RPM spec file into place and blow away any CVS state directories. 2003-01-05 jwm <jwm> * config.guess, config.sub: part of Bug 1826 - Makefiles are a bit icky: updated config.{guess,sub} 2003-01-05 jwm <jwm> * Makefile.in: Part of #1826 - ftptop doesn't need to link against $(LIBS) 2003-01-05 jwm <jwm> * configure: update 2003-01-05 jwm <jwm> * NEWS: credit for #1893 2003-01-05 jwm <jwm> * NEWS, configure.in: Bug 1893 - Apple likes to move things 2003-01-05 jwm <jwm> * lib/glibc-mkstemp.c, lib/pr-syslog.c, lib/pwgrent.c, lib/strsep.c, lib/vsnprintf.c, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_site.c, utils/ftpcount.c, utils/ftpshut.c, utils/ftptop.c, utils/ftpwho.c, utils/misc.c, utils/scoreboard.c: nuke trailing whitespace 2003-01-03 jwm <jwm> * NEWS: credit where credit is due 2003-01-03 jwm <jwm> * src/Makefile.in: utils.c doesn't seem to be needed anymore... 2003-01-03 jwm <jwm> * NEWS: mod_cap announcement 2003-01-03 jwm <jwm> * README.capabilities, contrib/dist/rpm/proftpd.spec: mod_linuxprivs -> mod_cap 2003-01-03 jwm <jwm> * README.modules: mod_linuxprivs is now the official module mod_cap 2003-01-03 jwm <jwm> * contrib/dist/rpm/proftpd.spec: we don't have to explicitly include mod_linuxprivs anymore; mod_cap will be included automatically 2003-01-03 jwm <jwm> * configure: update 2003-01-03 jwm <jwm> * config.h.in, configure.in, modules/mod_cap.c: fix the build :-) This now autodetects and cleanly builds mod_cap into proftpd if the host OS (Linux) supports it 2003-01-03 jwm <jwm> * configure: update 2003-01-03 jwm <jwm> * config.h.in, configure.in: fixing linux/capability.h detection 2003-01-03 jwm <jwm> * configure: update 2003-01-03 jwm <jwm> * modules/mod_cap.c: removing debugging cruft 2003-01-03 jwm <jwm> * configure.in, modules/mod_cap.c: removing last Linux-specific bits of mod_cap 2003-01-03 jwm <jwm> * modules/mod_cap.c: getting rid of some linux references 2003-01-03 jwm <jwm> * configure: update 2003-01-03 jwm <jwm> * configure.in, contrib/README, modules/mod_cap.c: mod_linuxprivs -> mod_cap 2003-01-03 jwm <jwm> * configure.in, lib/libcap/.cvsignore, lib/libcap/Makefile, lib/libcap/_makenames.c, lib/libcap/cap_alloc.c, lib/libcap/cap_extint.c, lib/libcap/cap_file.c, lib/libcap/cap_flag.c, lib/libcap/cap_proc.c, lib/libcap/cap_sys.c, lib/libcap/cap_text.c, lib/libcap/include/sys/capability.h, lib/libcap/libcap.h: Turning mod_linuxprivs into a core module, mod_cap. This is by no means complete. 2003-01-02 castaglia <castaglia> * contrib/mod_sql.c: Added handling of %U to mod_sql, so that it can be used in SQLNamedQuery directives; part of the addition of Bug#1482. 2003-01-02 jwm <jwm> * doc/license.txt: update copyright year 2003-01-02 castaglia <castaglia> * configure: Updated configure script. 2003-01-02 castaglia <castaglia> * config.h.in, configure.in, contrib/mod_radius.c, contrib/mod_rewrite.c, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, contrib/mod_tls.c, include/data.h, include/ident.h, include/pool.h, include/proftpd.h, include/response.h, include/support.h, modules/mod_auth.c, modules/mod_auth_pam.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/bindings.c, src/data.c, src/ident.c, src/inet.c, src/main.c, src/netio.c, src/pool.c, src/regexp.c, src/response.c, src/scoreboard.c, src/support.c, src/timers.c: More namespace/API changes, for consistency: data_*() -> pr_data_*() register_rehash() -> pr_rehash_register_handler() add_exit_handler() -> pr_exit_register_handler() (un)block_alarms() -> pr_alarms_(un)block() (un)block_signals() -> pr_signals_(un)block() pr_handle_signals() -> pr_signals_handle() The distinction for which I am striving is to have all the functions that module developers should use to be prefixed with pr_; public functions may be available without a pr_ prefix, but such functions will be intended for use by the core code only. Also, more in the RFC2228 support department: session_t has a new field, rfc2228_mech. This is to be filled in by the RFC2228 module that handles an AUTH command, so that other RFC2228 modules, should they be higher in the module load order, know not to process RFC2228 commands meant for the handling module. The response formatting callback function now takes an additional parameter, a pool pointer, as the first argument. The pool that will be passed to that function will be the same pool used by the other response functions. 2003-01-02 castaglia <castaglia> * configure.in, contrib/ftpasswd, contrib/mod_radius.c, contrib/mod_readme.c, contrib/mod_rewrite.c, contrib/mod_tls.c, contrib/mod_wrap.c, doc/mod_sample.c, include/bindings.h, include/conf.h, include/data.h, include/default_paths.h, include/dirtree.h, include/feat.h, include/fsio.h, include/ftp.h, include/ident.h, include/inet.h, include/libsupp.h, include/log.h, include/modules.h, include/netio.h, include/options.h, include/pool.h, include/pr-syslog.h, include/privs.h, include/proftpd.h, include/regexp.h, include/response.h, include/scoreboard.h, include/sets.h, include/support.h, include/timers.h, modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_auth_unix.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/auth.c, src/bindings.c, src/data.c, src/dirtree.c, src/feat.c, src/fsio.c, src/ident.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/netio.c, src/pool.c, src/regexp.c, src/response.c, src/scoreboard.c, src/sets.c, src/support.c, src/timers.c, utils/ftpcount.c, utils/ftpshut.c, utils/ftptop.c, utils/ftpwho.c, utils/misc.c, utils/scoreboard.c, utils/utils.h: Updating the copyright notice in the file headers for the new year. 2003-01-02 castaglia <castaglia> * Makefile.in: Adding man page for ftptop. 2003-01-01 castaglia <castaglia> * NEWS, contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#1671 - new directive SQLLogFile. 2003-01-01 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1272 - Requested Addition: DenyFilter by User or DenyFilter by Directory. 2002-12-31 castaglia <castaglia> * utils/ftptop.c: Actually calculate and display the TIME value (duration of session, in seconds). 2002-12-31 castaglia <castaglia> * src/main.c: Make sure that the configuration file specified using the -c command-line option is an absolute path. Bug noted by Michael Renner. 2002-12-31 castaglia <castaglia> * NEWS, src/fsio.c: Bug#1894 - Double chdir into self-referencing symlink fails with "No such file or directory". 2002-12-31 castaglia <castaglia> * include/scoreboard.h, modules/mod_auth.c, src/scoreboard.c, utils/ftptop.c, utils/ftpwho.c, utils/utils.h: Portion of changes requested in Bug#1794. 2002-12-31 castaglia <castaglia> * modules/mod_auth.c: Yet another missing word ("the"). 2002-12-31 castaglia <castaglia> * modules/mod_auth.c: Missing "of" in message string (noted by Michael). 2002-12-28 castaglia <castaglia> * include/version.h: Updating version for CVS. 2002-12-28 castaglia <castaglia> * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for 1.2.8rc1 release. 2002-12-27 castaglia <castaglia> * configure: Updating configure script. 2002-12-27 castaglia <castaglia> * NEWS, configure.in: Bug#1906 - Add description strings to AC_DEFINE 2002-12-27 jwm <jwm> * NEWS: style, date formatting 2002-12-27 jwm <jwm> * src/auth.c, src/data.c, src/dirtree.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/support.c, src/timers.c: style 2002-12-27 jwm <jwm> * NEWS: whitespace cleanup 2002-12-27 jwm <jwm> * configure: update 2002-12-27 jwm <jwm> * NEWS, configure.in: Bug 1863 - Unable to build under UnixWare 7 2002-12-27 jwm <jwm> * Makefile.in, NEWS: Bug 1903 - ftpwho depends on snprintf but doesn't link in lib/libsupp.a 2002-12-27 jwm <jwm> * NEWS, src/timers.c, utils/ftptop.c: Bug 1905 - AIX needs "config.h" included before *anything* else. 2002-12-27 castaglia <castaglia> * src/main.c: Removing the internal_abort() code, which was only enabled by using the --enable-devel switch. It's more useful to use gdb in this case. 2002-12-27 jwm <jwm> * contrib/README: cruft removal, cleanup, style, grammar 2002-12-27 castaglia <castaglia> * NEWS: Bug#1888: Increase mod_linuxprivs configurability. 2002-12-27 castaglia <castaglia> * src/main.c: Change the reporting of "Invalid argument" when deleting a scoreboard slot to be DEBUG1. This message can appear for reasons other than scoreboard issues (e.g. a module bars a client from completely connecting, misconfigurations, etc). 2002-12-26 jwm <jwm> * modules/mod_auth_file.c: silence compiler warning about crypt() 2002-12-26 castaglia <castaglia> * NEWS, utils/ftpwho.c: Bug#1900 - ftpwho's output on uploads. 2002-12-26 castaglia <castaglia> * modules/mod_xfer.c: Add debug call when failing to open a file for writing/uploading. This should help pinpoint upload failures. 2002-12-20 castaglia <castaglia> * modules/mod_auth_file.c, modules/mod_core.c, modules/mod_xfer.c: Style cleanups. 2002-12-19 castaglia <castaglia> * configure: Updating configure script. 2002-12-19 castaglia <castaglia> * modules/mod_auth_file.c: Putting the copyright in the project's name. 2002-12-19 castaglia <castaglia> * NEWS: Forgot to update NEWS with description of Bug#1837/mod_auth_file addition. 2002-12-19 castaglia <castaglia> * config.h.in, configure.in, modules/mod_auth_file.c, modules/mod_auth_pam.c, modules/mod_auth_unix.c, modules/mod_core.c, src/main.c: Bug#1837 - Add module specifically for handling Auth*Files, providing finer-grained control. This patch also renames mod_unixpw.c to mod_auth_unix.c, and mod_pam.c to mod_auth_pam.c. Configure options have --disable-auth-file, --disable-auth-unix, --enable-auth-pam, as appropriate. 2002-12-19 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, contrib/mod_tls.c: Cleaning up some warnings, seen under --enable-devel, in some contrib modules. Pointed out by Michael. Just to note: a lot of the warnings generated by mod_tls (specifically, by the OpenSSL files #include'd by mod_tls) cannot be fixed by us. Quite a few of the warnings are about function prototypes; the OpenSSL developers don't have complete prototype declarations for a lot of the function pointer callback struct slots. Oh well. 2002-12-19 castaglia <castaglia> * src/dirtree.c: In tracking down an unrelated bug last night, I discovered that, at present, proftpd's parser will gladly handle empty contexts, such as when: <Directory blah> </Directory> or <Global> </Global> appear in the configuration file. These empty sets are useless, and serve only to use up memory unnecessarily; that memory usage is compounded when directives are merged down into these sets. This patch checks for such empty contexts (in end_sub_config()), and removes them from the configuration tree. 2002-12-19 castaglia <castaglia> * contrib/mod_tls.c: Forgot a parameter to tls_log(). 2002-12-19 castaglia <castaglia> * contrib/mod_tls.c: Change handling of PROT in tls_prot() slightly. 2002-12-19 castaglia <castaglia> * contrib/mod_tls.c: More instances where mod_tls was being impolite, and returning ERROR where it should be returning DECLINED, in order to allow other modules a chance at handling some of the RFC2228 commands. 2002-12-19 castaglia <castaglia> * contrib/mod_tls.c: Changed mod_tls' handling of AUTH command to allow other RFC2228 modules a change at processing that command. 2002-12-19 castaglia <castaglia> * modules/mod_ls.c, src/dirtree.c, src/main.c: Minor style/formatting changes. 2002-12-18 castaglia <castaglia> * configure: Updating configure script. 2002-12-18 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#1667 - Integrate ProFTPD with C2/SIA on Tru64 Unix. 2002-12-18 castaglia <castaglia> * contrib/mod_radius.c: Fixing several bugs in mod_radius' accounting code. 2002-12-18 jwm <jwm> * NEWS, src/main.c: Bug 1885 - -q/--quiet option for use with the -n/--nodaemon flag. Useful for running proftpd from inittab or with daemontools. 2002-12-17 castaglia <castaglia> * modules/mod_auth.c: The cleanup of variable names done by the adding of the --enable-devel option caused a problem here, where a variable "c" was used a little too often, causing MaxClients/MaxHosts* lookups to fail. Thanks to Michael Renner for the help in tracking this one down. 2002-12-17 castaglia <castaglia> * include/modules.h, include/privs.h, src/main.c, src/modules.c: The module init dispatch functions aren't public, and hence do not need the pr_ prefix. Change the debug level for privs changes to 9 (was 8). 2002-12-17 jwm <jwm> * include/conf.h, include/data.h, include/default_paths.h, include/dirtree.h, include/ftp.h, include/ident.h, include/inet.h, include/libsupp.h, include/modules.h, include/netio.h, include/options.h, include/privs.h, include/proftpd.h, include/sets.h: nuke trailing whitespace 2002-12-17 castaglia <castaglia> * modules/mod_core.c: Add the RFC2228 commands to the HELP output, but listed as "not supported". A means for RFC2228 modules (e.g. mod_tls, mod_gss) to change the supported flag from FALSE to TRUE for these commands is needed. 2002-12-17 castaglia <castaglia> * modules/mod_core.c: Oops. Not quite ready to commit these changes yet. 2002-12-17 castaglia <castaglia> * contrib/mod_rewrite.c, modules/mod_core.c, modules/mod_ls.c, src/dirtree.c, src/support.c, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c: Changed some buffers to use PR_TUNABLE_BUFFER_SIZE (and not to use hardcoded numbers). 2002-12-16 castaglia <castaglia> * include/modules.h: Returning ERROR from an auth handler (specifically, in an "auth" or a "check" auth handler) will not produce the desired result; the ERROR macro sets a value of 1, and the switch() case in mod_auth looks for negative values. So, to handle this case, I've added PR_AUTH_ERROR return value (-1) for auth handlers that encounter errors, and adjusted the other PR_AUTH_* values accordingly. 2002-12-16 castaglia <castaglia> * include/modules.h, src/main.c: Make the function for dispatching commands a public function: pr_cmd_dispatch(). Some RFC2228 modules may need to "unwrap" encrypted commands and then dispatch the unwrapped commands themselves. (This also allows for greater games to be played by third-party modules...muahahaha...) *grin* 2002-12-16 castaglia <castaglia> * src/main.c: Changing buffer used for storing commands read in from client to be of PR_TUNABLE_BUFFER_SIZE, rather than hardcoded to 1024. 2002-12-16 jwm <jwm> * src/main.c: er, yeah. pointer and all that. 2002-12-16 jwm <jwm> * src/main.c: cleanup 2002-12-15 jwm <jwm> * configure: updated configure 2002-12-15 jwm <jwm> * NEWS, acconfig.h, config.h.in, configure.in, src/inet.c: Bug 1883 - socklen_t patch. Thanks to Andy Igoshin <ai@vsu.ru> for the patch. 2002-12-13 castaglia <castaglia> * src/dirtree.c, src/fsio.c, src/inet.c, src/modules.c: Being pedantic, and making sure that pcalloc() is used, to make sure that memory is zeroed before use (helps to cut down on heap bugs). 2002-12-13 castaglia <castaglia> * utils/ftpwho.c: Correcting placement of newline (from Bug#1886). 2002-12-13 castaglia <castaglia> * Make.rules.in, contrib/mod_ratio.c, contrib/mod_readme.c, contrib/mod_sql.c, contrib/mod_tls.c, doc/mod_sample.c, include/conf.h, include/dirtree.h, include/proftpd.h, include/response.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/data.c, src/main.c, src/response.c: Reworking of response functions. 2002-12-12 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#1875 - same radius packet id for start- and stop-accounting record. 2002-12-12 jwm <jwm> * utils/ftptop.c: make the display a bit prettier and make the best use of an 80-column screen 2002-12-12 castaglia <castaglia> * NEWS, utils/ftpwho.c: Bug#1886 - Ftpwho uses too many lines when authenticating. 2002-12-12 castaglia <castaglia> * include/options.h, lib/glibc-glob.c: These changes make it possible to tune the maximum number of recursion levels supported when globbing. A better way of dealing with possible DoS attacks via globbing is via the RLimit* directives, or to disable globbing support altogether by using the UseGlobbing directive. However, in some cases it may be necessary to support globbing, but to do so in as restrictive a manner as possible. The default maximum number of levels supported by GNU's globbing is 8. This patch keeps that default, but allows the administrator, if need be, to tune that level lower by means of the PR_TUNABLE_GLOBBING_MAX macro, defined in include/options.h. When compiling proftpd, it can be defined to some lower value, e.g.: CFLAGS="-DPR_TUNABLE_GLOBBING_MAX=2" ./configure ... 2002-12-12 castaglia <castaglia> * include/modules.h: Set PR_AUTH_RFC2228_OK to be 2, to avoid the value 1 (that is used by the ERROR macro). 2002-12-12 castaglia <castaglia> * contrib/mod_tls.c, include/netio.h, src/netio.c: Added a shutdown callback to the NetIO API, allowed netio modules (e.g. mod_gss) to perform a shutdown as they needed, rather than simply calling shutdown(2). 2002-12-12 jwm <jwm> * modules/mod_auth.c: typo Noticed by: Mihai RUSU <dizzy@roedu.net> 2002-12-11 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#1881 - Bug in Function MaxClients. 2002-12-11 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, src/support.c: Some of these files' handling of configuration parameters was not thorough with respect to get_param_int() to get_param_ptr() changes (shame on me), and it was causing a segfault when handling some Display* files. 2002-12-11 castaglia <castaglia> * contrib/mod_wrap.c, include/dirtree.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/dirtree.c: Forgot to prefix the expression functions with pr_. 2002-12-11 castaglia <castaglia> * NEWS, modules/mod_site.c: Bug#1882 - SITE chmod 777 file<space>name. 2002-12-11 castaglia <castaglia> * NEWS, contrib/mod_wrap.c, include/dirtree.h, include/modules.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_site.c, modules/mod_xfer.c, src/dirtree.c: Bug#1507 - regex pattern matching in [Allow/Deny][User/Group]. This patch also adjusts the handling of user- and class-expressions, so that they are evaluated as OR expression, rather than as AND expression (AND evaluation for users and classes do not make sense). 2002-12-11 jwm <jwm> * doc/Configuration.html, doc/Configuration.sgml: updated docs 2002-12-10 castaglia <castaglia> * configure: Updating configure script. 2002-12-10 castaglia <castaglia> * configure.in: Forgot a comma. 2002-12-10 castaglia <castaglia> * configure: Updating configure script. 2002-12-10 castaglia <castaglia> * Makefile.in, NEWS, config.h.in, configure.in, include/dirtree.h, include/fsio.h, include/libsupp.h, include/log.h, include/modules.h, include/netio.h, include/pool.h, include/support.h, include/timers.h, lib/glibc-glob.c, lib/glibc-mkstemp.c, lib/pr_fnmatch.c, lib/vsnprintf.c, modules/mod_auth.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/bindings.c, src/dirtree.c, src/fsio.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/netio.c, src/regexp.c, src/scoreboard.c, src/sets.c, src/support.c, utils/ftpwho.c, utils/utils.h: This patch adds an --enable-devel configure option, which does the following: install won't use -s, so that object files aren't stripped core dumps should be allowed (although I'm having trouble producing them...I'm sure I'm missing something obvious) CFLAGS is changed to use quite a few of the -W options The rest of the patch is code cleanup, fixing things brought to light by the -W options. The one remaining warning is about the K&R style pam function in mod_pam.c -- I think that may be required. 2002-12-10 castaglia <castaglia> * configure: Updating configure script. 2002-12-10 castaglia <castaglia> * NEWS, modules/mod_core.c, src/main.c: Bug#1858 - move "session closed" logging from graceful quit to child exit sequence. 2002-12-09 jwm <jwm> * lib/vsnprintf.c: silence compiler warning 2002-12-09 jwm <jwm> * lib/vsnprintf.c: style 2002-12-09 jwm <jwm> * lib/vsnprintf.c: need ctype.h for is*() 2002-12-09 jwm <jwm> * lib/pr_fnmatch_loop.c: need to include ctype.h for is*() 2002-12-07 jwm <jwm> * NEWS: credit where credit is due 2002-12-07 jwm <jwm> * modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, src/auth.c, src/dirtree.c, src/inet.c, src/main.c, src/modules.c, src/pool.c, src/sets.c, src/support.c: style 2002-12-07 jwm <jwm> * modules/mod_auth.c, modules/mod_core.c, src/dirtree.c, src/main.c: style 2002-12-07 jwm <jwm> * NEWS, acconfig.h, config.h.in, configure.in, include/data.h, src/data.c: AIX sendfile support 2002-12-07 jwm <jwm> * contrib/dist/rpm/proftpd.init.d: * add /usr/local/sbin/ to $PATH * don't assume ftpshut is in /usr/sbin/, let the shell's PATH figure it out * style 2002-12-07 jwm <jwm> * src/auth.c, src/bindings.c, src/data.c, src/dirtree.c, src/feat.c, src/fsio.c, src/ident.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/netio.c, src/pool.c, src/regexp.c, src/scoreboard.c, src/sets.c, src/support.c, src/timers.c: style 2002-12-07 jwm <jwm> * modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c: nuke trailing whitespace, style 2002-12-07 jwm <jwm> * src/bindings.c: trailing whitespace 2002-12-07 castaglia <castaglia> * modules/mod_xfer.c: Inadvertently changed the default handling of AllowRetrieveRestart in the get_param_int() -> get_param_ptr() changes. 2002-12-07 castaglia <castaglia> * NEWS, contrib/mod_tls.c, include/log.h, modules/mod_core.c, modules/mod_log.c, src/log.c, src/main.c: Bug#1515 - Enable mod_log to log into default log / syslog. 2002-12-07 jwm <jwm> * src/bindings.c: Fix bidings for DefaultServer-affected and localhost connections. pr_ipbind_get_server() would never find the default server because it was hashing an address (say, 127.0.0.1) different from the address used by the main server (0.0.0.0). Instead, store a pointer to the default and localhost bindings and fall back to them if the explicit lookup fails. 2002-12-07 castaglia <castaglia> * src/dirtree.c: Removing a get_param_int() that crept back in (probably from the Bindings patch). 2002-12-07 castaglia <castaglia> * Make.rules.in, NEWS, include/bindings.h, include/conf.h, include/dirtree.h, include/inet.h, modules/mod_core.c, src/bindings.c, src/dirtree.c, src/main.c: Committing the Bindings API. 2002-12-06 castaglia <castaglia> * include/ftp.h, include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/data.c, src/main.c: More RFC2228 support. 2002-12-06 castaglia <castaglia> * modules/mod_core.c, modules/mod_xfer.c: Provide configuration handlers that remark on deprecated directives, rather than simply having those directives removed (for now). 2002-12-06 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1789 - Add ability to block recursive directory listings. 2002-12-06 jwm <jwm> * include/proftpd.h: tabs -> spaces 2002-12-06 castaglia <castaglia> * src/fsio.c: *sigh* One of these days I'll get this correct. =P 2002-12-06 castaglia <castaglia> * src/fsio.c: The FS API patch had some of the older, broken code w.r.t BSD and statfs(). 2002-12-06 castaglia <castaglia> * NEWS, include/scoreboard.h, modules/mod_xfer.c, src/scoreboard.c, utils/ftpwho.c, utils/utils.h: Committing TransferRate patch to CVS. 2002-12-06 castaglia <castaglia> * contrib/mod_radius.c, contrib/mod_sql.c, include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/data.c, src/dirtree.c, src/inet.c, src/log.c, src/main.c: A stack of changes, related to removing get_param_int() from the core code, in favor of get_param_ptr(). I tried to test each affected directive as I went, but, of course, there may be bugs still lingering... 2002-12-06 castaglia <castaglia> * contrib/mod_sql.c: Removed erroneous/extraneous #include "fs.h" 2002-12-06 jwm <jwm> * lib/pwgrent.c: fix the build (PR_LOG_ERR isn't defined here because this is in libsupp) 2002-12-06 castaglia <castaglia> * modules/mod_log.c: Use C_* command macros. 2002-12-06 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1605 - MKD and RMD do not log filepaths with %f or %F option in ExtendedLog. 2002-12-05 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1403 - per-server system logs via ServerLog directive. 2002-12-05 castaglia <castaglia> * NEWS, contrib/mod_rewrite.c: Adding mod_rewrite to the mix. 2002-12-05 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1205 - Add debug option to SystemLog. 2002-12-05 castaglia <castaglia> * NEWS, include/modules.h, include/options.h, modules/mod_core.c, src/main.c, src/modules.c: Bug#1788 - Add ability to configure auth module checking order. 2002-12-05 castaglia <castaglia> * configure: Updated configure script. 2002-12-05 castaglia <castaglia> * configure.in: Update configure.in to use AC_HELP_STRING macro for pretty-printing of --enable and --with options. 2002-12-05 castaglia <castaglia> * NEWS: Adding thanks (well deserved!) to Peter Runestig for his work on mod_tls. 2002-12-05 castaglia <castaglia> * NEWS, contrib/mod_tls.c: Bug#1712 - TLS support. 2002-12-05 castaglia <castaglia> * Make.rules.in, NEWS, contrib/mod_ldap.c, contrib/mod_ratio.c, contrib/mod_readme.c, contrib/mod_sql.c, contrib/mod_wrap.c, include/conf.h, include/dirtree.h, include/fsio.h, include/netio.h, include/proftpd.h, include/support.h, lib/Makefile.in, modules/Makefile.in, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/Makefile.in, src/dirtree.c, src/fsio.c, src/main.c, src/netio.c, src/support.c, utils/Makefile.in: Bug#1653 - Complete the FS API abstraction implementation. 2002-12-05 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c: Bug#1743 - No magic cookie for number of files transfered. 2002-12-05 castaglia <castaglia> * NEWS, include/modules.h, include/version.h, src/main.c, src/modules.c, src/support.c: Bug#1833 - Add ability to have add'l module initialization callback. 2002-12-05 castaglia <castaglia> * Make.rules.in, NEWS, doc/rfc/rfc2389.txt, include/conf.h, include/dirtree.h, include/feat.h, include/ftp.h, include/modules.h, include/regexp.h, lib/Makefile.in, modules/Makefile.in, modules/mod_core.c, src/Makefile.in, src/dirtree.c, src/feat.c, src/main.c, src/modules.c: Bug#1806 - Add RFC2389 support. 2002-12-05 castaglia <castaglia> * NEWS, contrib/mod_ldap.c, contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, include/modules.h, modules/mod_auth.c, src/auth.c: Bug#1825 - AUTH macro namespace cleanup. 2002-12-05 castaglia <castaglia> * contrib/mod_radius.c, contrib/mod_sql.c, contrib/mod_wrap.c, include/privs.h, lib/pwgrent.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_xfer.c, src/main.c: Making sure that all LOG_* macros have PR_ prefix, for consistency. 2002-12-05 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#1683 - Handling of VirtualHosts on startup. 2002-12-05 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1482 - Add new %U meta to LogFormat, for logging original username. 2002-12-05 castaglia <castaglia> * configure: Updated configure script. 2002-12-05 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#1597 - Problems with HP-UX 10/11 trusted systems, mod_pam, and mod_unixpw. 2002-12-05 castaglia <castaglia> * include/version.h: Now that 1.2.7 has been released, update the version info in CVS. 2002-12-05 castaglia <castaglia> * doc/mod_sample.c: Correcting typos. 2002-12-05 castaglia <castaglia> * contrib/dist/rpm/proftpd.spec: Updating version for 1.2.7 release. 2002-12-05 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Preparing for release of 1.2.7. 2002-12-04 castaglia <castaglia> * modules/mod_auth.c: Patching to fix off-by-one bug in MaxHostsPerUser directive handling. 2002-12-04 castaglia <castaglia> * NEWS, include/support.h, modules/mod_auth.c, src/support.c: Adding memory scrubber for memset() issue mentioned here: http://online.securityfocus.com/archive/1/298598 2002-12-03 castaglia <castaglia> * NEWS, utils/ftpcount.c: Bug#1868 - Wrong cmdopts in ftpcount.c 2002-12-02 castaglia <castaglia> * NEWS, utils/ftpwho.c: Bug#1861 - 'ftpwho -v -o oneline' print all connections in one line. 2002-12-02 castaglia <castaglia> * src/dirtree.c: Minor preprocessor changes. 2002-12-02 castaglia <castaglia> * src/dirtree.c: Removed unused variable. 2002-12-02 castaglia <castaglia> * NEWS, modules/mod_xfer.c, src/pool.c: Bug#1846 - File overwrites fail. Thanks to Sergei Rozinov for tracking down this bug. 2002-11-26 castaglia <castaglia> * src/support.c: Minor style change: use macros for FTP commands. 2002-11-26 castaglia <castaglia> * NEWS, lib/pr-syslog.c: Bug#1853 - SyslogFacility: unable to open syslog. 2002-11-25 castaglia <castaglia> * modules/mod_auth.c: Moving hcur increment to a more appropriate location. There still seems to be lingering issues with these limits, though. Yay. 2002-11-25 castaglia <castaglia> * modules/mod_core.c: Oops. A little too zealous on the previous change -- mg_size should always be filled, even if get_fs_size() is not supported on the host. 2002-11-25 castaglia <castaglia> * modules/mod_core.c: Adjust core_display_file() to use get_param_ptr() when looking up a MaxClients setting to display. The MaxClients configuration handler had been changed to storing a pointer, but this function hadn't been updated to reflect that configuration handler change. 2002-11-25 castaglia <castaglia> * include/dirtree.h: Removing unused struct members. 2002-11-25 castaglia <castaglia> * contrib/mod_radius.c, modules/mod_auth.c, modules/mod_ls.c, src/dirtree.c, src/ident.c, src/support.c, utils/ftpshut.c: Removed use of UCHAR cast from core code. It is meant specifically for the fnmatch code, and is a #define to an unsigned char -- but the ANSI C standards define the parameter to many of the is*() functions to be an int, and the UCHAR cast was being used with those is*() functions. Instead, those UCHAR casts have been replaced with int casts. 2002-11-25 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1856 - TimesGMT acts like default is 'off'. 2002-11-25 castaglia <castaglia> * modules/mod_xfer.c: %lu crept back in when PR_LU is needed... 2002-11-25 castaglia <castaglia> * NEWS, modules/mod_site.c: Bug#1852 - Proftpd gets signal 11 on "quote site". 2002-11-25 castaglia <castaglia> * doc/mod_sample.c, include/netio.h, src/ident.c, src/netio.c: Updating my documentation this weekend, and came across some minor inconsistencies... 2002-11-25 castaglia <castaglia> * modules/mod_xfer.c: Datatype overflow. 2002-11-23 jwm <jwm> * modules/mod_ls.c, utils/ftpshut.c, utils/ftptop.c: Silence remaining compiler warnings under Solaris 8 (save for the utmp code, bug Bug 1824 will address that). The nlink_t/pid_t casts will be unnecessary once the Solaris _LP64 ABI is the default (see sys/isa_defs.h for more info on the Solaris ABIs). I didn't want to move from _ILP32 (the historical default) to _LP64 because I wasn't sure of the ramifications. We don't have any DSOs to worry about, but I'm not sure what else would change/break. 2002-11-23 jwm <jwm> * NEWS, contrib/dist/rpm/proftpd.init.d: Bug 1680 - Error in startup script 2002-11-22 jwm <jwm> * configure: updated configure 2002-11-22 jwm <jwm> * NEWS, config.h.in, configure.in, src/support.c: Bug 1839 - undefined reference to `get_fs_size' 2002-11-22 castaglia <castaglia> * NEWS, utils/ftptop.c: Bug#1848 - undefined reference to `halfdelay'. 2002-11-21 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1812 - Double logging lines for ExtendedLog. 2002-11-19 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c: Bug#1838 - Since 1.2.6: in add_useralias() setting flag CF_MERGEDOWN breaks aliased anonymous functionality. 2002-11-18 castaglia <castaglia> * modules/mod_xfer.c: Minor problem with HiddenStores (related to the making of HiddenStores a synonym for HiddenStor, with the eventual goal of deprecating HiddenStor in favor of HiddenStores). 2002-11-18 castaglia <castaglia> * modules/mod_auth.c: Handling of ShowSymlinks in this module still used get_param_int() rather than get_param_ptr(). 2002-11-18 castaglia <castaglia> * NEWS, modules/mod_core.c: Bug#1844 - DisplayLogin %y macro is off by 1. 2002-11-18 castaglia <castaglia> * NEWS, include/pr-syslog.h: Bug#1840 - Problem with syslog default destination on HP-UX. 2002-11-17 jwm <jwm> * utils/.cvsignore: ignore ftptop 2002-11-17 jwm <jwm> * lib/pr-syslog.c: cast the return value from getpid() to silence a compiler warning under solaris 2002-11-15 jwm <jwm> * contrib/dist/rpm/proftpd.spec: d'oh - /etc/logrotate.d/ should exist in $RPM_BUILD_ROOT before I try to put stuff in it... 2002-11-15 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Ramping up for 1.2.7rc3 release. 2002-11-15 castaglia <castaglia> * utils/ftptop.c: Portability/compiler warning hack. *sigh* 2002-11-15 castaglia <castaglia> * modules/mod_xfer.c: Necessary typecasts to avoid compiler warnings (seen on Solaris 2.8). 2002-11-15 castaglia <castaglia> * modules/mod_log.c: Style cleanup. 2002-11-14 castaglia <castaglia> * modules/mod_auth.c: More hassle/work with MaxClientsPerHost (see Bug#1830, Bug#1831). 2002-11-14 castaglia <castaglia> * contrib/ftpasswd: Forgot to increment the displayed $version. 2002-11-14 castaglia <castaglia> * NEWS: Attributing proper credit. =) 2002-11-14 castaglia <castaglia> * contrib/ftpasswd: Minor doc change. 2002-11-14 castaglia <castaglia> * NEWS, contrib/ftpasswd: Adding/changing ftpasswd error exit values. 2002-11-14 jwm <jwm> * Makefile.in: we don't need to worry about removing the autoconf-processed proftpd.spec anymore (this wasn't even the right path to it, anyway) 2002-11-13 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#1830 - MaxClientsPerHost (small) Bug. 2002-11-13 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1810 - Wrong permissions assigned to uploaded file 2002-11-13 castaglia <castaglia> * NEWS, utils/ftpwho.c: Bug#1815 - Patch to add class information to ftpwho (with verbose on) 2002-11-13 castaglia <castaglia> * src/dirtree.c: Add debugging output mentioning the configuration file being parsed at debug level 2. 2002-11-12 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c: Fix handling/lookup of Timeouts. 2002-11-12 castaglia <castaglia> * configure: Updating configure script. 2002-11-12 castaglia <castaglia> * configure.in: Minor whitespace quibble. 2002-11-12 jwm <jwm> * .cvsignore: ignore ftptop, autom4te.cache 2002-11-12 jwm <jwm> * configure: updated configure 2002-11-12 jwm <jwm> * Make.rules.in, configure.in: oops, accidentally reverted TJ's changes 2002-11-12 jwm <jwm> * Make.rules.in, Makefile.in, NEWS, configure.in: Only link ftptop with lib{n,}curses - it isn't needed in any other binaries 2002-11-12 castaglia <castaglia> * configure: Updating the configure script. 2002-11-12 castaglia <castaglia> * Make.rules.in, NEWS, configure.in: Bug#1703 - mod_sql_mysql compile error. 2002-11-12 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_xfer.c: Bug#1760 - AllowOverwrite not operational. 2002-11-11 jwm <jwm> * utils/.cvsignore: ignore Makefile, object and editor backup files 2002-11-05 jwm <jwm> * NEWS, include/modules.h, modules/mod_auth.c, src/auth.c: Bug 1818 - proftpd doesn't compile on hpux11 2002-11-04 jwm <jwm> * configure: updated configure 2002-11-04 jwm <jwm> * NEWS, config.h.in, configure.in, utils/ftptop.c: ftptop can now use either curses or ncurses Based on a submission by: Ayamura KIKUCHI <ayamura@ayamura.org> 2002-11-03 jwm <jwm> * NEWS, src/scoreboard.c: Bug 1814 - class names are truncated in scoreboard entry 2002-11-02 jwm <jwm> * contrib/dist/rpm/proftpd.spec: forgot to add logrotate to %files 2002-11-02 jwm <jwm> * NEWS: update 2002-11-02 jwm <jwm> * contrib/dist/rpm/proftpd.logrotate, contrib/dist/rpm/proftpd.spec: Bug 1398 - there is no log rotate for /var/log/xferlog 2002-11-02 jwm <jwm> * modules/mod_auth.c: style, whitespace 2002-11-02 jwm <jwm> * contrib/mod_ratio.c: clean up compiler warnings 2002-11-02 jwm <jwm> * NEWS, contrib/dist/rpm/proftpd.spec: Bug 1772 - Docs fixup in RPM spec file 2002-11-02 jwm <jwm> * configure: update configure 2002-11-02 jwm <jwm> * configure.in: don't preprocess the rpm spec 2002-11-02 jwm <jwm> * contrib/dist/rpm/proftpd.spec: having autoconf process proftpd.spec.in is silly - it's only that way to substitute the @VERSION@ tag. 2002-11-02 jwm <jwm> * NEWS: update 2002-11-02 jwm <jwm> * README.PAM, config.h.in: Bug 1805 - PAM support under Mac OS X 2002-11-02 jwm <jwm> * README.PAM: style 2002-11-02 jwm <jwm> * NEWS, config.h.in, configure.in, include/conf.h: Bug 1803 - Check for SIZEOF_UNSIGNED_LONG_LONG to determine LFS support breaks some Linux installations 2002-10-30 castaglia <castaglia> * NEWS: Typo. 2002-10-30 castaglia <castaglia> * NEWS, contrib/mod_wrap.c: Bug#1800 - Proftpd child segfaults when ussing a PASS without no USER first. 2002-10-30 castaglia <castaglia> * NEWS: Typos. 2002-10-30 castaglia <castaglia> * NEWS, modules/mod_auth.c: Fixing broken AuthAliasOnly, so that it does as described in the docs (it had been broken by Bug#1567). 2002-10-29 castaglia <castaglia> * utils/ftpcount.c, utils/ftpwho.c, utils/utils.h: Modifying the handling of struct option in these files. A change had been made earlier in CVS to get these utilities to compile properly under IRIX (which has a <getopt.h> that does not define struct option); unfortunately, that change made it such that on Solaris, the utilities did not compile. The modifications committed bring the handling of struct option in the utilities to be like that of the main proftpd binary, which consequently is handled properly under Solaris, IRIX, BSD, and Linux. Hopefully this concludes this getopt issue in the utilities. 2002-10-29 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c: More get_param_int() cleanup (this function will cause grief on LP64 architectures, where pointer sizes are different and passing pointers to stack values is a Bad Thing). This patch moves all the MaxClients*/MaxHosts* directives into mod_auth, makes them all consistently use pointers, and corrects a small datatype underflow bug that crept in with the introduction of MaxClientsPerUser (oops). 2002-10-29 jwm <jwm> * src/data.c: * style * Make sure session.xfer uses cleared memory so unset structure members won't contain random values. 2002-10-29 jwm <jwm> * NEWS: Make sure session.xfer uses cleared memory so unset structure members won't contain random values. 2002-10-28 castaglia <castaglia> * configure: Updating configure script. 2002-10-28 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/support.h, modules/mod_core.c, src/support.c: Bug#1722 - Can't work magic cookie %F on FreeBSD. 2002-10-28 castaglia <castaglia> * src/data.c: Removed unnecessary log_debug() calls from data_sendfile(). Part of this is because of the headache involved with getting the proper format specifiers into the log_debug() calls -- too much effort for little return. 2002-10-28 castaglia <castaglia> * modules/mod_xfer.c, src/dirtree.c, src/inet.c, src/log.c, src/main.c, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c: Added typecast to int in is*() functions for picky Solaris. 2002-10-28 castaglia <castaglia> * include/conf.h: Adding some necessary function prototypes for AIX, when compiled using -D_NO_PROTO. 2002-10-26 castaglia <castaglia> * modules/mod_auth.c, utils/utils.h: Fixing signedness variable check in mod_auth Fixed a missing definition in utils/utils.h which afflicted systems that don't have the getopt_long() function. 2002-10-25 castaglia <castaglia> * include/modules.h, modules/mod_log.c, src/main.c, utils/ftpcount.c: Fixing some function pointer scopes, removing unused variables -- general cleanup due to compiler complaints on IRIX. 2002-10-25 castaglia <castaglia> * src/main.c: Re-adding logging of SIGSEGVs. 2002-10-24 castaglia <castaglia> * modules/mod_auth.c: Correcting an off-by-one error concerning the enforcement of MaxClients. 2002-10-24 castaglia <castaglia> * NEWS: Forgot to note that Bug#1745 was fixed in 1.2.7rc1. 2002-10-24 castaglia <castaglia> * configure: Updating configure script. 2002-10-24 castaglia <castaglia> * NEWS, configure.in: Bug#1287 - Error compile with autoshadow option 2002-10-24 castaglia <castaglia> * configure: Updating configure script. 2002-10-24 castaglia <castaglia> * configure.in: Fixing up the configure script to handle the case where the admin forgets to (or just plain doesn't) provide a value for the new --enable-* tunable configure options. It was simply writing the "yes"/"no" strings into the headers -- not what I wanted. Now, configure will emit a warning if no values are explicitly provided, and will use the default numbers. Otherwise, it will use the value provided. 2002-10-24 castaglia <castaglia> * README.AIX: Adding remark reminding AIX users to avoid use of --enable-autoshadow and --enable-shadow in their configure options. 2002-10-23 castaglia <castaglia> * configure: Updating configure script to match changes/fixes to configure.in. 2002-10-23 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/options.h, include/scoreboard.h, utils/utils.h: Fixed configure script handling of ncurses detection (was not #define'ing HAVE_LIBNCURSES properly) Added --enable-scoreboard-buffer-size option to the other "tunable" configure options, for tuning the size of sce_cmd, sce_cwd. 2002-10-23 castaglia <castaglia> * modules/mod_site.c: Fixing requirement of auth chk for SITE commands CHGRP and CHMOD. 2002-10-22 castaglia <castaglia> * include/version.h: Making CVS look ready for rc3. 2002-10-22 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Preparing for release of 1.2.7rc2. 2002-10-21 castaglia <castaglia> * contrib/mod_wrap.c: Fixed a minor file descriptor leak in mod_wrap (affects only the child process, not the daemon process). 2002-10-21 castaglia <castaglia> * configure: Updating configure script for added --enable* options. 2002-10-21 castaglia <castaglia> * NEWS, config.h.in, configure.in, contrib/mod_radius.c, contrib/mod_ratio.c, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, doc/license.txt, include/dirtree.h, include/options.h, include/pool.h, lib/pr-syslog.c, lib/pwgrent.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/data.c, src/dirtree.c, src/ident.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/netio.c, src/pool.c, src/regexp.c, src/support.c: Large style cleanup: - added PR_ prefix to TUNABLE_ macros - renamed command handlers in some modules (from cmd_* to <module-name>_*) in order to better exemplify module namespace conventions - removed extraneous make_named_sub_pool() (added macro for backward compatibility for contrib modules) - lots of trivial whitespace changes Hopefully I didn't break anything too major with this. 2002-10-19 flyhmstr <flyhmstr> * doc/faq.html: ML: new FAQ issue 2002-10-18 castaglia <castaglia> * src/auth.c: Fixed a bad bug, introduced with the Cygwin changes (I think). setgid() will not be called if the platform doesn't have setgroups() due to the placement of the HAVE_SETGROUPS #ifdefs. I don't know if this change will break stuff under Cygwin, but the current placement of those #ifdefs won't do. 2002-10-18 castaglia <castaglia> * NEWS, modules/mod_core.c: Fixed typo in NEWS Added handler for ScoreboardPath directive, which will report on the deprecated nature of the directive, and inform the admin of using the newer ScoreboardFile instead. Hopefully this will help ease (somewhat) the upgrade to 1.2.7. 2002-10-18 castaglia <castaglia> * NEWS, utils/ftptop.c: Bug#1778 - 1.2.7rc1 fails to link on OpenBSD 3.2-current 2002-10-18 flyhmstr <flyhmstr> * doc/Configuration.html: ML: updated to include mod_radius stuff 2002-10-18 flyhmstr <flyhmstr> * doc/Configuration.html, doc/faq.html: ML: updated directivelist and faq 2002-10-18 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1785 - Bad handling of symlinks 2002-10-17 castaglia <castaglia> * src/auth.c, src/data.c, src/dirtree.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/regexp.c, src/scoreboard.c, src/support.c: Cleanliness/style: changing core code to use PR_LOG_* instead of LOG_*. Contrib modules may need to be changed to use PR_LOG_* in the future. 2002-10-16 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1644 - LogFormat local IP and FQDN tags missing 2002-10-15 castaglia <castaglia> * README.AIX: Updating this README with the CFLAGS that seem to work with the newer proftpd versions. 2002-10-15 castaglia <castaglia> * modules/mod_xfer.c: Missed the assignment of session.xfer.path in cmd_stor() in the previous commit. 2002-10-15 castaglia <castaglia> * include/proftpd.h, modules/mod_xfer.c, src/data.c: Removing some cruft from session.xfer, fixing some whitespace styling. Significant change is moving session.xfer.path so that it is not allocated from session.xfer.p (a pool with a bad name =P), but rather is the string originally allocated in the PRE_CMD handler, from cmd->pool. There is no reason for the path to be reallocated again from session.xfer.p (unless any functions manipulate that buffer, which they shouldn't, and which none currently do), and, in some cases, ASCII CRLF handling was causing corruption of that buffer. 2002-10-15 castaglia <castaglia> * src/log.c: Make sure log_openfile() returns the same error values as #defined in include/log.h. 2002-10-15 castaglia <castaglia> * src/auth.c: Need to handle case in set_groups() where suppl_gids might be non-NULL, but the contained number of gids (suppl_gids->nelts) is zero. This was causing a segfault, for memory was being allocated (of length zero) which was then being cleared. 2002-10-14 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/main.c, src/modules.c: Changing place in code where switching to the User/Group for a vhost occurs, so that it happens prior to the calling of any modules' session initialization callbacks. 2002-10-10 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#1770 - Forgetting to check for no IP in string 2002-10-09 castaglia <castaglia> * NEWS, modules/mod_auth.c, src/auth.c, src/dirtree.c, src/support.c: Bug#1769 - Lack of supplemental groups can cause segfault. 2002-10-09 flyhmstr <flyhmstr> * doc/Configuration.html: ML: updated directive list ready for 1.2.7rc2 2002-10-08 castaglia <castaglia> * modules/mod_xfer.c: Oops. Should always use the FS API functions for FS operations. 2002-10-08 castaglia <castaglia> * modules/mod_xfer.c: Clean up files created by mkstemp(3) if other checks (e.g. <Limit>) fail. Discrepancy noticed by Joao Gouveia <tharbad@kaotik.org>. 2002-10-08 castaglia <castaglia> * NEWS, src/main.c: Bug#1759 - ftpwho shows much more connections than realy is. 2002-10-08 jwm <jwm> * README, README.AIX, README.modules: style nit 2002-10-08 castaglia <castaglia> * CREDITS, INSTALL, Makefile.in, README, README.AIX, README.modules, README.ports: Updating documentation, fixing 'make clean' target. Thanks to Michael Renner for these patches. 2002-10-07 castaglia <castaglia> * INSTALL, README.modules: Removing references to crufty old mod_test. 2002-10-07 castaglia <castaglia> * INSTALL: Changing mention of ScoreboardPath to ScoreboardFile. 2002-10-07 castaglia <castaglia> * sample-configurations/complex-virtual.conf: Updating more example configs. 2002-10-07 castaglia <castaglia> * sample-configurations/PFTEST.shadow: Match username 'proftpd' in the test passwd file. 2002-10-07 castaglia <castaglia> * sample-configurations/PFTEST.conf.in: Updating config for 1.2.7 release cycle (ScoreboardPath -> ScoreboardFile). 2002-10-04 castaglia <castaglia> * utils/ftptop.c: Adding kludge to ftptop that scans the config file for a non-default ScoreboardFile directive. 2002-10-04 castaglia <castaglia> * src/scoreboard.c: Amend the addition of using fchmod() on the scoreboard to make the mode 0644, rather than 0444. This allows for non-root daemons to still be able to use the scoreboard. Thanks to Michael Renner for noting this. 2002-10-04 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1735 - Proftpd 1.2.6 compiled on FreeBSD 4.6.2 exits on signal 11 2002-10-04 castaglia <castaglia> * src/scoreboard.c: Addition borne of paranoia inspired by recent Apache scoreboarding vulnerability. 2002-10-03 castaglia <castaglia> * modules/mod_auth.c: Fixing off-by-one error in MaxClientsPerHost check. 2002-10-03 castaglia <castaglia> * CREDITS: Adding thanks/credits for unnamed users who contribute to the project. 2002-10-03 castaglia <castaglia> * modules/mod_site.c, src/main.c: Some style-related cleanups. Still working on that HELP SITE code - had the tertiary operator parameters in the wrong order (and it was apparently causing a segfault). 2002-10-02 castaglia <castaglia> * NEWS, src/netio.c: Bug#1757 - non-ANSI Syntax in netio.c 2002-10-02 castaglia <castaglia> * include/version.h: Updating the version, preparing for the next CVS/release. 2002-10-02 castaglia <castaglia> * modules/mod_site.c: Fixing support for 'HELP SITE' (common) in addition to 'SITE HELP' (proper). 2002-10-02 castaglia <castaglia> * src/main.c: Cleaning up a badly-written preprocessor directive (my fault). 2002-10-02 castaglia <castaglia> * utils/scoreboard.c: Prevent egregious ENOENT error when reading the scoreboard. 2002-10-01 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Preparing for release of 1.2.7rc1. 2002-10-01 castaglia <castaglia> * modules/mod_auth.c: Minor wording correction for default MaxClientsPerUser message. 2002-10-01 castaglia <castaglia> * NEWS, modules/mod_auth.c: Bug#1675 - add new MaxClientsPerUser configuration option. Works just like MaxHostsPerUser. 2002-10-01 jwm <jwm> * configure: updated configure 2002-10-01 jwm <jwm> * configure.in: Fix for broken headers in OS X 10.1 Submitted by: Thomas Ganter <tganter@mac.com> 2002-09-30 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#1694 - SQLLog QUIT doesn't execute on connection close. With the various changes to mod_sql (SQLNegativeCache, etc), I'm bumping its version to 4.10. 2002-09-30 castaglia <castaglia> * NEWS: Forgot to note that Bug#1748 had been fixed. 2002-09-30 castaglia <castaglia> * NEWS, include/modules.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_site.c, src/main.c: Bug#1475 - Minor changes to SITE command handling. 2002-09-28 castaglia <castaglia> * modules/mod_site.c: Helps if I put the full code from the fix in CVS, doesn't it? 2002-09-28 castaglia <castaglia> * include/privs.h, modules/mod_site.c: Casting and variable type fun (based on compiler complaints). 2002-09-28 castaglia <castaglia> * utils/ftptop.c: With the addition of the sce_server_addr field to the scoreboard entry struct, ftptop no longer needs to use inet_ntoa(3) to stringify the server IP address. 2002-09-27 castaglia <castaglia> * NEWS: Bug#1572 - Need to use pam_end() to close session on Solaris 8. The cause turned out to be a need to always call pam_end() after pam_authenticate(). 2002-09-27 castaglia <castaglia> * include/scoreboard.h, src/scoreboard.c, utils/utils.h: Seems that gcc-3 has some quirks when it comes to variadic functions. Adjusting to compensate. 2002-09-27 castaglia <castaglia> * src/scoreboard.c: Try to handle cases where NULLs might be (inappropriately) sent to pr_scoreboard_update_entry(). 2002-09-27 castaglia <castaglia> * utils/ftptop.c, utils/utils.h: Make sure that the utils compile on platforms that don't have <getopt.h> 2002-09-26 castaglia <castaglia> * include/scoreboard.h, modules/mod_auth.c, src/scoreboard.c, utils/ftptop.c, utils/ftpwho.c, utils/utils.h: Adding display of server (IP address/port) string to ftpwho (when -v is used). 2002-09-26 castaglia <castaglia> * utils/ftptop.c: Removed an unused variable. 2002-09-26 castaglia <castaglia> * utils/utils.h: Keeping this in sync with include/scoreboard.h 2002-09-26 castaglia <castaglia> * src/main.c: Make clearing the scoreboard slot one of the first things that happens when a child exits. 2002-09-26 castaglia <castaglia> * utils/ftpwho.c: Adjusting the spacing of ftpwho fields, trying to make the output prettier. 2002-09-26 castaglia <castaglia> * include/scoreboard.h, src/main.c, src/scoreboard.c: Adjusting some of the scoreboard entry sizes to be smaller (we can always make them larger later, if need be). Also adding the clearing of a scoreboard slot in the case of a SIGSEGV in the signal handler itself. 2002-09-26 castaglia <castaglia> * NEWS, contrib/mod_radius.c: Bug#1687 - Add contrib module for RADIUS authentication, accounting 2002-09-26 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#1732 - No checking for NULL at inet_ascii and pr_fnmatch. The fix for this now allows for "inline" comments in the lines of a proftpd.conf file, e.g.: Port 21 # Some comment here whereas before, that "# Some comment here" would be tokenized and treated as normal input into the configuration directive handler. 2002-09-26 castaglia <castaglia> * NEWS, include/privs.h: Bug#1395 - Check return values in PRIVS calls 2002-09-26 castaglia <castaglia> * src/main.c: No need to complain of scoreboard slot cleaning error when we're not a child process (e.g. when the daemon is shutting down). 2002-09-25 castaglia <castaglia> * configure: And the necessary delayed commit of the new configure script, to match the configure.in tweaks. 2002-09-25 castaglia <castaglia> * configure.in: Needing to tweak this, in order to get the timestamps on configure.in and configure files in the CVS repository to be what we need them to be. 2002-09-25 castaglia <castaglia> * utils/Makefile.in, utils/ftpcount.c, utils/ftpshut.c, utils/ftptop.c, utils/ftpwho.c, utils/misc.c, utils/scoreboard.c, utils/utils.h: Populating the new utils/ sub-directory with the source code files for the ftpcount, ftpwho, ftptop, ftpshut utilities. 2002-09-25 castaglia <castaglia> * NEWS: Forgot to update the NEWS file for the scoreboard changes. 2002-09-25 castaglia <castaglia> * Make.rules.in, Makefile.in, config.h.in, configure, configure.in, contrib/mod_sql.c, include/conf.h, include/log.h, include/privs.h, include/scoreboard.h, include/version.h, lib/Makefile.in, modules/Makefile.in, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/Makefile.in, src/log.c, src/main.c, src/scoreboard.c, src/support.c: Bug#1713 - Scoreboard changes. This simple statement covers quite a few changes. 2002-09-25 jwm <jwm> * modules/mod_xfer.c: * style * silence a compiler warning with a cast (the Cast Nazi yields ground: film at eleven) 2002-09-25 jwm <jwm> * src/sets.c: style 2002-09-25 jwm <jwm> * lib/glibc-mkstemp.c, lib/strsep.c, lib/vsnprintf.c: * style * silence ranlib warnings if the host OS already has the appropriate functions 2002-09-23 castaglia <castaglia> * src/main.c: Corrections in comments. 2002-09-23 castaglia <castaglia> * src/main.c: Make necessary modification to handling of SIGCHLD, in order to prevent nasty segfaults under non-POSIX, SVR4 systems (e.g. IRIX). Explanatory comments in sig_child() handler. 2002-09-21 jwm <jwm> * README.LDAP: * update for 2.8.10 * postcard-ware 2002-09-21 jwm <jwm> * contrib/mod_ldap.c: mod_ldap is now postcard-ware 2002-09-19 castaglia <castaglia> * sample-configurations/basic.conf: Fix the grammar in the default configuration file a little, and make a minor optimization: <Directory /*> is not really needed, as <Directory /> suffices. 2002-09-16 castaglia <castaglia> * contrib/mod_sql.c: Changed this logging level, so that it does not show up at DEBUG0 (which is the default log level, or at least included in the default logging levels). 2002-09-15 jwm <jwm> * Makefile.in, NEWS: Bug 1726 - Cygwin's Makefile inconsistency 2002-09-13 castaglia <castaglia> * Make.rules.in, NEWS, include/conf.h, include/inet.h, include/netio.h, lib/Makefile.in, modules/Makefile.in, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/Makefile.in, src/data.c, src/ident.c, src/inet.c, src/main.c, src/netio.c: Adding the NetIO API. 2002-09-13 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1736 - RETR does not handle an inappropriate REST 2002-09-13 castaglia <castaglia> * NEWS, include/dirtree.h, modules/mod_core.c, modules/mod_ls.c, src/dirtree.c: Bug#1737 - Enhance file hiding via regular expressions 2002-09-13 castaglia <castaglia> * contrib/mod_sql.c: Make this particular mod_sql log message a little less urgent. 2002-09-13 castaglia <castaglia> * modules/mod_auth.c: Slight correction in the config context used for looking up any configured TimeoutSession. 2002-09-13 castaglia <castaglia> * NEWS, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c, src/data.c, src/dirtree.c: Bug#1436 - Feature Enhancement: Timeouts on a <Virtualhost> basis 2002-09-13 castaglia <castaglia> * modules/mod_auth.c: When unable to chdir to a directory, when logging in, add reporting of errno. 2002-09-13 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_core.c, src/main.c: Bug#1658 - Separate session/daemon resource limit settings. 2002-09-13 jwm <jwm> * configure: Updated configure from last configure.in commit 2002-09-13 jwm <jwm> * configure.in: You can't explicitly include sys/sendfile.h when compiling with large file support. Submitted by: Jan Kasprzak <kas@informatics.muni.cz> http://www.geocrawler.com/lists/3/SourceForge/9189/0/9566710/ 2002-09-13 jwm <jwm> * contrib/mod_ratio.c: * anonymous ratios are now looked up by the e-mail address used * make sure g.user is defined so the ratio is recorded for *something* Submitted by: Benjamin Schieder <bs1544@bingo-ev.de> http://www.geocrawler.com/lists/3/SourceForge/9190/75/9539913/ 2002-09-12 castaglia <castaglia> * modules/mod_log.c: Missed a Boolean... 2002-09-12 castaglia <castaglia> * modules/mod_log.c: Fixed minor problem with duplicate logging: mod_log was a) looking in the wrong context, and b) recursing through configuration subsets in an attempt to fix its wrong context starting point. Should be remedied now. 2002-09-11 castaglia <castaglia> * doc/mod_sample.c: Updating the code in the mod_sample.c file to demonstrate things a little better. 2002-09-10 castaglia <castaglia> * modules/mod_xfer.c: Helps if uploads/downloads actually work...oops. =P 2002-09-10 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1065 - Added MaxRetrieveFileSize, MaxStoreFileSize directives. 2002-09-10 castaglia <castaglia> * NEWS, modules/mod_log.c: Bug#1669 - Filename meta (%f) not correctly expanded for some commands in WRITE logging class. This will necessitate discussion on the current state of proftpd's logging variables. 2002-09-10 castaglia <castaglia> * src/main.c: Removed an unused variable. 2002-09-10 jwm <jwm> * modules/mod_xfer.c: fixup 2002-09-10 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_ls.c, src/data.c, src/support.c: Bug#1486 - lots of changes made to code, adding buffers in an attempt to optimize directory listings and ASCII file translation. We'll see how many bugs are added with this commit =). 2002-09-10 castaglia <castaglia> * NEWS, include/conf.h: Bug#1662 - #define _GNU_SOURCE, which will quell some compiler warnings (e.g. the crypt() warning when using mod_sql). 2002-09-10 jwm <jwm> * modules/mod_xfer.c: minor format-type fixups 2002-09-09 jwm <jwm> * src/main.c: style 2002-09-09 castaglia <castaglia> * src/main.c: No comment. 2002-09-09 castaglia <castaglia> * src/main.c: Spoke too soon. =P 2002-09-09 castaglia <castaglia> * src/main.c: Don't forget to append the "proftpd: " prefix for non-setproctitle(2) platforms. Hopefully this ends our fun with Bug#1649. 2002-09-09 uid43859 <uid43859> * lib/pr-syslog.c: Solaris doesn't have the macro LOG_PRI() 2002-09-09 uid43859 <uid43859> * src/main.c: fixed & cleaned up #defines 2002-09-09 jwm <jwm> * src/main.c: Fixing the fix for Bug#1649 - the #ifdefs didn't actually change anything 2002-09-07 castaglia <castaglia> * lib/pr-syslog.c: Forgot to bracket use of __progname in #ifdefs, as not every platform's libc supports __progname. 2002-09-07 castaglia <castaglia> * src/main.c: Need to match datatypes for the unixpw_persistent variable in main.c and mod_unixpw.c 2002-09-07 castaglia <castaglia> * NEWS: Oops. Wrong bug number. 2002-09-07 castaglia <castaglia> * modules/mod_core.c: Oops. Forgot to cleanup my debugging/logging. 2002-09-06 castaglia <castaglia> * NEWS, modules/mod_core.c, src/main.c: Bug#1652 - add a MaxConnectionRate directive, for configuration a connection rate limiting mechanism. This mechanism is really only effective when running proftpd in standalone mode; if using inet/xinetd, those daemons have their own connection rate limiting mechanisms. 2002-09-06 castaglia <castaglia> * NEWS, src/main.c: Bug#1432 - adding check to function handling FTP commands received from clients to be more strictly RFC959-compliant: leading whitespace before the FTP command is now not allowed. 2002-09-06 castaglia <castaglia> * NEWS, modules/mod_core.c, src/main.c: Bug#1253 - added a DefaultAddress directive, for explicitly configuring the IP address to which the "default" server listens. 2002-09-06 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#1725 - Still fixing the bugs I introduced into match_ip() as a consequence of Bug#1701. This particular bug was caused by an assumption; I'd forgotten to take into account globbing characters attached to address strings in the case of a '.' suffix/prefix. The manipulated string was used as an argument to inet_getaddr(), which returns a pointer. I forgot to check for that pointer being NULL. 2002-09-06 castaglia <castaglia> * NEWS, modules/mod_core.c, modules/mod_site.c: Bug#1663 - Add SITE CHGRP command 2002-09-06 castaglia <castaglia> * NEWS, include/ftp.h, include/modules.h, modules/mod_auth.c, src/auth.c: Bug#1719 - Adding RFC2228-defined FTP commands and response codes; made minor adjustments to allow future RFC2228 modules (will not change current/default behavior). 2002-09-06 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#1593 - added a new mod_sql directive, SQLNegativeCache, to toggle whether mod_sql caches negative lookups. Documentation to be forthcoming. 2002-09-06 castaglia <castaglia> * contrib/mod_sql.c, contrib/mod_sql.h, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Correcting the OpenSSL exemption clause to list the proper copyright holder for these files. 2002-09-05 castaglia <castaglia> * NEWS: Bug#1724 - The AuthPAM* directive lookups were using TOPLEVEL_CONF as their config context lookup, but the directives themselves were only allowed in the server config contexts ("server config", <VirtualHost>, and <Globa>). This had the consequence of those directives not being properly seen when doing <Anonymous> logins. The fix was to use main_server->conf as the lookup context, rather than TOPLEVEL_CONF. 2002-09-05 castaglia <castaglia> * NEWS, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c: Bug#1076 - Adding an AllowOverride directive, to provide finer-grained control over which users, if any, have their .ftpaccess files parsed/honored. 2002-09-05 castaglia <castaglia> * Make.rules.in, NEWS, include/conf.h, include/log.h, include/pr-syslog.h, lib/pr-syslog.c, modules/mod_core.c, src/log.c, src/main.c: Bug#1682 - Use of chroot(2) and external libraries made necessary the implementing of an internal syslog client routine for use by proftpd. 2002-09-04 castaglia <castaglia> * Makefile.in, NEWS: Bug#1654 - Add DESTDIR in Makefile 2002-09-04 castaglia <castaglia> * NEWS, include/version.h, src/auth.c, src/main.c: Starting in on the work for the 1.2.7 version: Bug#1649 - setproctitle() prepends and appends process name. This is a FreeBSD-specific bug (yay portability). Bug#1666 - Auth modules can return duplicate supplemental groups 2002-09-04 flyhmstr <flyhmstr> * doc/Configuration.html: ML: more fixme's gone 2002-09-04 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Ramping up for the release of 1.2.6. 2002-09-04 flyhmstr <flyhmstr> * doc/Configuration.html: ML: updated directive list 2002-09-02 castaglia <castaglia> * NEWS: Note version increment of mod_ldap; add processing of signals in the io_poll() loop. 2002-08-31 jwm <jwm> * contrib/mod_ratio.c: openssl exemption 2002-08-31 jwm <jwm> * contrib/mod_ldap.c: 2.8.10 - replacement for ldap_build_filter() 2002-08-31 jwm <jwm> * src/main.c: would someone please give me an elementary lesson in checking what exactly i'm committing before committing it? 2002-08-31 jwm <jwm> * src/main.c, src/pool.c: style, removing cruft 2002-08-29 castaglia <castaglia> * contrib/mod_readme.c: Added OpenSSL exemption clause to this contrib module's license. 2002-08-28 castaglia <castaglia> * NEWS, src/dirtree.c: Fixed bug introduced by bad use of inet_ntoa(3) in fix for Bug#1701. 2002-08-24 jwm <jwm> * contrib/mod_ldap.c: * openssl exemption * version bump to 2.8.9 2002-08-19 jwm <jwm> * doc/Configuration.sgml: adding the sgml version of the directive docs 2002-08-15 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Preparing to release 1.2.6rc2 2002-08-15 castaglia <castaglia> * NEWS, src/dirtree.c: Bug#1701 - Reverse lookups not working 2002-08-14 castaglia <castaglia> * modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c: Updating copyright notices. 2002-08-14 castaglia <castaglia> * include/inet.h, include/proftpd.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/data.c, src/inet.c, src/main.c, src/support.c: Code cleanup: - moved ShowSymlinks from mod_core to mod_ls - changed PassivePorts, AllowForeignAddress, ShowSymlinks, TimesGMT to not use get_param_int() (which uses addresses of stack variables instead of heap variables), and using get_param_ptr() instead. - minor renaming 2002-08-13 castaglia <castaglia> * src/log.c: Added minor, but necessary check when reading the scoreboard header on AIX platforms. Portability is a PITA. 2002-08-12 castaglia <castaglia> * modules/mod_ls.c, src/main.c: Added signal processing for recursive directory listings Added masking of SIGCHLD in the SIGCHLD processing function Added debug logging, at level 7, of module session initialization callbacks 2002-08-05 castaglia <castaglia> * config.sub: Added case to handle ELF NetBSD on a shark. 2002-08-01 castaglia <castaglia> * src/log.c: Added logging of TransferLog file opening at level 6; this will aid in debugging errors involving the default TransferLog ("/var/log/xferlog") on systems which may have troubles (e.g. no /var/log directory, which shows up in the logs as "unable to stat() /var/log" -- not indicative of the culprit [TransferLog]). 2002-08-01 castaglia <castaglia> * include/dirtree.h, src/dirtree.c: Minor fix, matching up datatypes in function declaration to actual datatype used (caused a complaint under AIX's xlc). 2002-07-26 castaglia <castaglia> * src/main.c: Minor cleanup from previous commit. 2002-07-26 castaglia <castaglia> * src/dirtree.c, src/main.c, src/support.c: Fixed minor HUP memory leak, caused by use of schedule() to schedule an invocation of main_rehash(). A sched_t object is allocated for the scheduling from permanent_pool, but that object is never freed. The fix was to add a pool member to the sched_t struct, allocated a subpool from permanent_pool, allocate the sched_t struct from that subpool, and assign the subpool to the struct's pool member. That way, the sched_t object can be destroyed once the scheduled callback has been invoked. Also cleaned up some of the main_rehash() code, to make it more legible. 2002-07-25 jwm <jwm> * include/regexp.h: typo/style 2002-07-24 castaglia <castaglia> * Make.rules.in, NEWS, include/conf.h, include/pool.h, include/regexp.h, modules/mod_core.c, src/inet.c, src/main.c, src/pool.c, src/regexp.c: Bug#1697 - Memory leak involving regexp and SIGHUP 2002-07-22 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c: Oops. Realized that DeferWelcome should've stayed in mod_core. 2002-07-22 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c: Rearranging the placement of several configuration directive handlers, placing the handler functions in the module that actually uses the configured directive (many were bunched into mod_core). 2002-07-19 castaglia <castaglia> * NEWS, lib/pwgrent.c: Bug#1674 - fgetbufline passes NULL pointer to fgets() 2002-07-18 castaglia <castaglia> * modules/mod_core.c, src/main.c: Miscellaneous configuration handler cleanup. 2002-07-15 castaglia <castaglia> * NEWS, modules/mod_xfer.c: Bug#1645 - HiddenStor should close file before renaming 2002-07-15 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c: Bug#1681 - Multiple Include directives in a single file do not get parsed 2002-07-09 castaglia <castaglia> * include/proftpd.h, include/support.h, include/timers.h, src/main.c, src/support.c, src/timers.c: Committed the latest patch attached to Bug#1556. 2002-07-03 jwm <jwm> * configure: new configure 2002-07-03 jwm <jwm> * Makefile.in, README.cygwin, configure.in: attach 1428 to bug 1569 - cygwin EXEEXT fixups 2002-07-02 castaglia <castaglia> * ChangeLog, NEWS, include/version.h: Preparing for release of 1.2.6rc1 2002-07-02 castaglia <castaglia> * include/inet.h, include/options.h, src/data.c, src/inet.c: Fixing consequences of Bug#1502 and ABOR causing some clients to wait indefinitely. 2002-07-01 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#1543 - Usernames with spaces, problems to authenticate 2002-07-01 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#1628 - group mods (DefaultRoot) only work for primary group w/mysql 2002-06-30 castaglia <castaglia> * src/inet.c: Fixed potential loop problem I inadvertently introduced in the previous check-in. Oops. 2002-06-28 castaglia <castaglia> * include/proftpd.h, modules/mod_xfer.c, src/data.c, src/inet.c, src/main.c: Fixing consequences of signal handler changes of Bug#1556, allowing for child processes to process their received signals as well (all noted in the bug report). 2002-06-28 castaglia <castaglia> * contrib/mod_sql.c: Correctly check cmap.grpgidfield, rather than cmap.gidfield, when looking up groups by ID. This was my fault. 2002-06-27 castaglia <castaglia> * configure: Updated configure script 2002-06-27 castaglia <castaglia> * NEWS, config.h.in, configure.in: Bug#1667 - Move USESHADOW, AUTOSHADOW defines from command line into config.h 2002-06-27 castaglia <castaglia> * contrib/mod_sql.c: Convert some of the configuration handlers to allocating memory for passing numeric values, rather than squeezing them into void *. This fixes a border case where using 0 as the value for SQLDefault{UID,GID} or SQLMinUser{ID,UID,GID} would cause that directive setting to not be honored; a value of zero cast as a void * means that that void * would most likely be interpreted as NULL upon retrieval. 2002-06-27 castaglia <castaglia> * contrib/mod_sql.c: Removed extraneous parameters from logging calls (caught by __attribute__). 2002-06-27 castaglia <castaglia> * NEWS: Removed mod_quota.c due to lack of maintainership, bugs. 2002-06-27 flyhmstr <flyhmstr> * doc/Configuration.html: ML: Updated directive list 2002-06-27 flyhmstr <flyhmstr> * modules/mod_core.c: ML: fixing minor typo :) 2002-06-27 castaglia <castaglia> * include/log.h, include/proftpd.h, modules/mod_auth.c, modules/mod_xfer.c: Committed the use of gcc's __attribute__ pragma for printf-style function argument checking from Bug#1643. Fixed the minor printf issues this pragma subsequently found in the TimeoutSession code, throttling code. 2002-06-27 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Bug#1664 - mod_sql segfaults on cache miss for bogus user. 2002-06-26 castaglia <castaglia> * src/inet.c: Use the IPPROTO_TCP macro (that's what it's there for!) for initializing the value of tcp_proto, instead of manually setting it to 6. 2002-06-26 jwm <jwm> * Makefile.in: #1569 - EXEEXT support 2002-06-26 castaglia <castaglia> * NEWS, include/inet.h, src/data.c, src/inet.c: Bug#1502 - 226 Transfer Complete sent out before data connection is closed 2002-06-25 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1655 - Add -n listing option to mod_ls 2002-06-25 castaglia <castaglia> * config.h.in: Solaris already defines _FILE_OFFSET_BITS in its system headers (at least 2.8 does); check for a defined _FILE_OFFSET_BITS before redefining it. 2002-06-25 castaglia <castaglia> * src/main.c, src/support.c: Put proper #ifdefs around things to avoid some compiler warnings. 2002-06-25 castaglia <castaglia> * config.h.in: Added lines for endprotoent, setgroups, setprotoent detection performed by autoconf, removed duplicate HAVE_SETPROCTITLE line. 2002-06-25 castaglia <castaglia> * include/conf.h: Add checking of SIZEOF_UNSIGNED_LONG_LONG to the list of macros used for determining when to use %lu and when to use %llu. FreeBSD does not require the other macros used (_FILE_OFFSET_BITS or _LARGE_FILES), and so this additional check (which assumes that if the size of an unsigned long long is 8 bytes, the underlying platform will support use of %llu -- and we all know what happens when one assumes) is required for proper LFS detection and support on FreeBSD (and perhaps other platforms?). 2002-06-25 castaglia <castaglia> * contrib/mod_sql.c: Added LFS-specific format macro, fixed NULL/'\0' comparison (was causing a compiler warning). 2002-06-25 castaglia <castaglia> * modules/mod_xfer.c: One more minor LFS-related modification. 2002-06-25 castaglia <castaglia> * src/auth.c: Fixed minor indentation/spacing. 2002-06-25 jwm <jwm> * contrib/mod_ldap.c: #1659 - LDAP config handlers should use c->pool instead of permanent_pool 2002-06-24 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c: Changed use of permanent_pool to c->pool in configuration handlers where appropriate. 2002-06-24 castaglia <castaglia> * modules/mod_ls.c: Forgot to remove the ShowDotFiles configuration handler function. 2002-06-24 castaglia <castaglia> * NEWS, modules/mod_ls.c, modules/mod_site.c: Removed the deprecated AllowChmod and ShowDotFiles directives. 2002-06-23 castaglia <castaglia> * NEWS, include/dirtree.h, src/dirtree.c: Bug#1171 - Add ability to handle backslash-escaped lines in configuration file 2002-06-23 jwm <jwm> * NEWS: where the hell did I get 1304? this is #1569... 2002-06-23 jwm <jwm> * NEWS: updates 2002-06-23 castaglia <castaglia> * NEWS: Noting addition/work on Cygwin stuff. 2002-06-23 castaglia <castaglia> * README.cygwin: Minor spelling correction. 2002-06-23 jwm <jwm> * configure: updated configure for #1304 - Cygwin support 2002-06-23 jwm <jwm> * README.cygwin: #1304 - README.cygwin Thanks to Stanislav Sinyagin <ssinyagin@yahoo.com> 2002-06-23 castaglia <castaglia> * include/conf.h, include/data.h, include/default_paths.h, include/dirtree.h, include/ident.h, include/inet.h, include/libsupp.h, include/log.h, include/modules.h, include/options.h, include/pool.h, include/privs.h, include/proftpd.h, include/sets.h, include/support.h, include/timers.h, src/auth.c, src/data.c, src/dirtree.c, src/ident.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/sets.c, src/support.c, src/timers.c: Updated copyrights. 2002-06-23 jwm <jwm> * configure.in, src/auth.c, src/inet.c, src/log.c: cleaned up versions of #1304 - Cygwin support 2002-06-22 jwm <jwm> * modules/mod_xfer.c: minor LFS fix 2002-06-22 jwm <jwm> * config.guess, config.sub: update config.guess and config.sub from http://subversions.gnu.org/cgi-bin/viewcvs/config/config/; parisc-linux support wasn't in our copies 2002-06-22 castaglia <castaglia> * NEWS, lib/Makefile.in, lib/glibc-glob.c, src/data.c, src/dirtree.c, src/log.c, src/main.c, src/pool.c, src/timers.c: Bug#1650 - Code cleanup 2002-06-22 castaglia <castaglia> * modules/mod_auth.c: Fixed bad patching of the new TimeoutSession code. 2002-06-22 castaglia <castaglia> * NEWS, include/proftpd.h, modules/mod_auth.c: Bug#1306 - Add timeout for entire session 2002-06-22 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/dirtree.c: In the aftermath of Bug#1650, I went through most of the configuration directive handlers, looking for similar possible mergedown bugs. I corrected the lurking mergedown bugs I saw, and fixed other cases where merging down was inappropriately being requested. More cleanup and code consolidation is possible, and indeed recommended. 2002-06-21 castaglia <castaglia> * modules/mod_core.c: Fixed instance of pstrcat() call that did not properly have NULL as the last argument. 2002-06-21 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1650 - LsDefaultOptions doesn't work inside anon context 2002-06-21 castaglia <castaglia> * NEWS, modules/mod_ls.c: Bug#1647 - Unnecessary use of umode_t in mod_ls 2002-06-14 jwm <jwm> * Makefile.in: these symlinks aren't needed 2002-06-14 jwm <jwm> * contrib/mod_ldap.c: LDAPHomedirOnDemand cleanup/fixes 2002-06-14 castaglia <castaglia> * Makefile.in: Added .cvsignore files to the list of files cleaned up by 'make distclean' 2002-06-12 castaglia <castaglia> * modules/mod_ls.c: Corrected spacing 2002-06-11 castaglia <castaglia> * configure: Updated configure script for LFS support detection. 2002-06-11 castaglia <castaglia> * NEWS, config.h.in, configure.in, include/conf.h, include/data.h, include/log.h, include/proftpd.h, include/support.h, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/data.c, src/log.c, src/support.c: Bug#1534 - Large File Support 2002-06-11 castaglia <castaglia> * configure: Updated configure script 2002-06-11 castaglia <castaglia> * Make.rules.in, NEWS, config.h.in, configure.in, include/libsupp.h, include/proftpd.h, lib/glibc-mkstemp.c, modules/mod_core.c, modules/mod_xfer.c, src/data.c: Bug#1258 - STOU not implemented 2002-06-11 castaglia <castaglia> * NEWS, src/auth.c: Bug#1463 - Add auth handler dispatch reporting at new debug level (level 6) 2002-06-11 castaglia <castaglia> * src/main.c: Removed relic function prototype (not needed). 2002-06-11 castaglia <castaglia> * NEWS, include/options.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/dirtree.c, src/log.c, src/main.c, src/pool.c: Bug#1556 - Signal handlers use unsafe functions 2002-06-11 castaglia <castaglia> * NEWS, include/dirtree.h, include/modules.h, modules/mod_core.c, src/dirtree.c, src/main.c, src/modules.c: Added Define, <IfDefine>, <IfModule> configuration directives, -D command-line option 2002-06-11 castaglia <castaglia> * NEWS, include/version.h, modules/mod_xfer.c, src/data.c: Bug#1407 - ftp protocol differences 2002-06-09 castaglia <castaglia> * NEWS: Fixed version number. Sheesh. 2002-06-09 castaglia <castaglia> * ChangeLog: Updated ChangeLog 2002-06-09 castaglia <castaglia> * NEWS, contrib/mod_sql.c, contrib/mod_sql_mysql.c, include/version.h: Bug#1379 - Replace bzero/bcopy with memset/memcpy Bug#1576 - SQLHomedirOnDemand segfaults in certain circumstances Bug#1586 - Bad row count assumption in _sql_getgroup() Bug#1625 - Compile problem with mod_sql module Preparing for release of 1.2.5 (stable). 2002-06-06 castaglia <castaglia> * NEWS, contrib/mod_sql.c: Added the mod_sql-4.08 from Andrew's site 2002-05-30 castaglia <castaglia> * NEWS: Updated NEWS 2002-05-30 castaglia <castaglia> * include/version.h: Damn, I forgot to update this file. 2002-05-30 castaglia <castaglia> * ChangeLog: Updating ChangeLog 2002-05-30 castaglia <castaglia> * NEWS, contrib/xferstats.holger-preiss: Bug#1394: ftpstats program is not working, cust says "There was no data to process." 2002-05-30 jwm <jwm> * contrib/mod_ldap.c: a few memory management fixes 2002-05-29 jwm <jwm> * doc/rfc/draft-ietf-ftpext-mlst-15.txt: new version of mlst draft. the changes don't appear to change anything we currently implement. 2002-05-27 jwm <jwm> * contrib/README.ratio, contrib/mod_ratio.c: new mod_ratio from James Dogopoulos 2002-05-22 flyhmstr <flyhmstr> * doc/Configuration.html: ML: replacing the directive guide 2002-05-21 castaglia <castaglia> * NEWS, contrib/mod_readme.c, include/data.h, include/dirtree.h, include/ident.h, include/inet.h, include/libsupp.h, include/log.h, include/modules.h, include/pool.h, include/proftpd.h, include/sets.h, include/support.h, include/timers.h, lib/glibc-glob.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/data.c, src/dirtree.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/support.c, src/timers.c: Bug#1379 - Replace bzero/bcopy with memset/memcpy Bug#1521 - Function prototype cleanup 2002-05-21 castaglia <castaglia> * NEWS, src/timers.c: Bug#1627 - Sessions not timing out 2002-05-21 castaglia <castaglia> * configure: TJ: updated configure script to match configure.in (necessary delay in commits *sigh*) 2002-05-21 castaglia <castaglia> * configure.in: TJ: changing configure script to check for $Libraries$ line in mod_<name>.h files, if present, as well as mod_<name>.c files (which are currently scanned) 2002-05-19 castaglia <castaglia> * NEWS, modules/mod_xfer.c: TJ: Bug#1595 - ProFTPD closes connection when accessed from Lynx browser 2002-05-19 castaglia <castaglia> * NEWS, include/proftpd.h, src/log.c, src/main.c: TJ: Bug#1612 - missing/broken ident logging 2002-05-19 jwm <jwm> * Makefile.in, contrib/mod_ldap.c: #1626 - install_user is not used everywhere 2002-05-18 jwm <jwm> * contrib/dist/rpm/ftp.pamd: language cleanup/clarification 2002-05-18 jwm <jwm> * contrib/dist/rpm/proftpd.init.d: cleanup 2002-05-15 jwm <jwm> * contrib/mod_ldap.c: 2.8.4: fix for segfaults when optional arguments are omitted from LDAPDoGIDLookups directive 2002-05-13 castaglia <castaglia> * ChangeLog: TJ: latest ChangeLog 2002-05-13 castaglia <castaglia> * NEWS, include/version.h: TJ: updated NEWS, version.h with date of 1.2.5rc2 release 2002-05-13 castaglia <castaglia> * configure: TJ: here's the new configure to go with the configure.in 2002-05-13 castaglia <castaglia> * configure.in: TJ: being pedantic, changing the order of functions check to be alphabetical. Also, I need to check configure.in separately from, and before, configure. This is so that when users download from CVS, and run ./configure && make, the make program's check of the timestamp on configure.in shows an earlier date on configure.in than on configure (if both configure.in and configure are checked into CVS simultaneously, they will have the same timestamps, and make will cause the configure script to be run again). What a pain. 2002-05-13 castaglia <castaglia> * configure.in: TJ: updated configure.in's copyright information 2002-05-12 castaglia <castaglia> * contrib/README.mod_wrap: TJ: updated README for mod_wrap-1.2.3. 2002-05-12 castaglia <castaglia> * CREDITS: TJ: updated PGP key fingerprint 2002-05-12 flyhmstr <flyhmstr> * doc/Configuration.html, doc/faq.html: ML: updated directive list and FAQ for rc2 2002-05-12 castaglia <castaglia> * config.h.in, configure, configure.in, include/proftpd.h, modules/mod_xfer.c: TJ: Added missing checks for functions/headers to configure, needed/used by include/glibc-glob.c. Also made small amendments to code (volatility of flag variables and minor spacing). 2002-05-11 flyhmstr <flyhmstr> * doc/Configuration.html: ML: updated directive list 2002-05-11 flyhmstr <flyhmstr> * CREDITS, NEWS: ML: updated NEWS and CREDITS 2002-05-11 flyhmstr <flyhmstr> * NEWS: ML: news update 2002-05-11 flyhmstr <flyhmstr> * doc/faq.html: ML: adding new format FAQ 2002-05-10 castaglia <castaglia> * NEWS: Bug#1580 - RPM can't be built by non-root user 2002-05-10 flyhmstr <flyhmstr> * CREDITS, NEWS: ML: updated credits and news 2002-05-10 castaglia <castaglia> * NEWS, configure, configure.in: Bug#1546 - PF_ARGV_WRITABLE, PF_ARGV_WRITEABLE are used mixed. 2002-05-10 castaglia <castaglia> * NEWS, modules/mod_core.c, src/dirtree.c: Bug#1608 - src/dirtree.c produces two unnecessary warnings Bug#1610 - compiling mod_core.c gives an unneeded/dazzling msg 2002-05-10 flyhmstr <flyhmstr> * NEWS: ML: updating NEWS 2002-05-10 flyhmstr <flyhmstr> * include/ftp.h: ML: updating licence 2002-05-10 flyhmstr <flyhmstr> * doc/license.txt, doc/mod_sample.c: ML: Removed legacy files The FAQ is removed because it's superceed by the main FAQ. Updated the base licence text with additional copyright info, consistancy typo and the SSL exclusion clause. 2002-05-10 jwm <jwm> * NEWS: updating for mod_ldap 2.8.3 release 2002-05-10 jwm <jwm> * ChangeLog: updating changelog 2002-05-10 jwm <jwm> * contrib/mod_ldap.c: updating to 2.8.3 2002-05-10 jwm <jwm> * README.LDAP: new mod_ldap README 2002-05-10 castaglia <castaglia> * src/ident.c, src/inet.c: TJ: dealing with consequences of Bug#1588 fix, which happens to affect identd lookups. Hopefully these changes clear up any remaining difficulties while still retaining the efficacy of Bug#1588's patch. 2002-05-09 castaglia <castaglia> * src/ident.c: TJ: cleaned up get_ident(), adding proper cleanup/resource-freeing code at various exit points from the function 2002-05-09 castaglia <castaglia> * src/ident.c: TJ: fixed get_ident() to check for NULL return value from inet_openrw(); this was causing segfaults in the case where an identd server was not returning a response 2002-05-09 castaglia <castaglia> * src/main.c: TJ: mistakenly changed default setting of IdentLookups to "off" with prior changes, setting default back to "on" 2002-05-09 castaglia <castaglia> * modules/mod_auth.c, modules/mod_core.c, src/main.c, src/timers.c: TJ: fixed remove_timer() call to check for NULL timers list before cycling through the list changed IdentLookups handler to use pointers (and thus avoid compiler warnings about typecasts) minor reformatting 2002-05-09 castaglia <castaglia> * NEWS: TJ: updated NEWS 2002-05-09 castaglia <castaglia> * configure, configure.in, include/log.h, include/modules.h, include/privs.h, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c, src/main.c: #1544 - Daemon does not switch to configured User/Group identity in <VirtualHost> as documented #1581 - uid_t and get_param_int result size 2002-05-08 flyhmstr <flyhmstr> * NEWS: ML: news update 2002-05-08 flyhmstr <flyhmstr> * doc/Configuration.html: ML: adding new version of the directive list 2002-05-08 flyhmstr <flyhmstr> * doc/Configuration.html: ML: removing old version of directive list 2002-05-08 castaglia <castaglia> * ChangeLog: Updated ChangeLog 2002-05-08 castaglia <castaglia> * NEWS: TJ: added NEWS entries for recently committed patches for (fixed?) bug reports 2002-05-08 castaglia <castaglia> * modules/mod_auth.c, src/dirtree.c, src/inet.c, src/main.c, src/pool.c: #1523 - "Umask" presented in <Global> block messes up file permissions #1566 - FXP not working properly #1578 - RootLogin directive does not mergedown properly 2002-05-08 castaglia <castaglia> * contrib/dist/rpm/proftpd.init.d, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c, src/inet.c: #1563 - Proftpd 1.2.4. keeps core dumping sig11 on start #1567 - AuthAliasOnly parsed incorrectly #1570 - MasqueradeAddress contexts do not match documentation #1579 - Contrib init.d script makes inappropriate use of ftpshut #1588 - Port scan of TCP/21 causes segmentation fault #1601 - Rename terminates ProFTPD (signal 11) 2002-03-06 flood <flood> * ChangeLog: Updated ChangeLog. 2002-03-06 flood <flood> * NEWS, doc/Configuration.html, modules/mod_core.c, src/main.c: #1445: PID file contents change when attempting to start the daemon a second time #1539: losing SGID bit on created directories w/ {User,Group}Owner in effect #1537: doc update 2002-03-01 flood <flood> * src/log.c: possible sigsegv introduced by patch for bug 1520 2002-02-28 flood <flood> * NEWS, src/dirtree.c: #1468 - segfault with empty .ftpaccess 2002-02-28 flood <flood> * ChangeLog: Updated ChangeLog. 2002-02-28 flood <flood> * NEWS, doc/Configuration.html, include/privs.h, lib/getopt.c, lib/getopt.h, lib/getopt1.c, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c, src/main.c, src/support.c: #1459 - server fails to send response in some cases #1533 - use memset correctly #1517 - doc update #1461 - modules/mod_unixpw.c pw_getgroups() makes dangerous assumption #1512 - Minor credentials cleanups #1516 - wrong response to CDUP/XCUP/XCWD #1451 - add_config_param_str() no longer uses permanent_pool #1523 - umask allocation in <Global> moved to permanent_pool #1380 - updated getopt library for Tru64/AIX 2002-02-28 flood <flood> * NEWS, doc/Configuration.html, include/dirtree.h, include/log.h, lib/pwgrent.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_xfer.c, src/dirtree.c, src/log.c: #1476 doc updates #1520 security checks for TransferLogs #1435 AccessDenyMsg for <Anonymous> not working #1492 Bad interaction between HiddenStor and UserOwner #1493 incorrect parsing of AuthUserFile #1485 Adds CF_MERGEDOWN_MULTI config_rec flag 2002-02-26 flood <flood> * NEWS, include/glibc-glob.h, lib/glibc-glob.c, modules/mod_auth.c, src/data.c, src/dirtree.c, src/inet.c, src/log.c, src/main.c, src/support.c: #1378 Replace alloca stuff in glibc-glob.c with something more standard #1498 <Limit LOGIN> block failing with mod_ldap #1381 include/glibc-glob.h fix for Tru64 UNIX #1465 can't bind to port that hasn't been closed by forked child process #1379 replace bzero/bcopy with memset/memcpy 2002-02-14 flood <flood> * NEWS, contrib/ftpasswd: added contrib/ftpasswd utility script (contributed by TJ) 2002-02-14 flood <flood> * NEWS, contrib/INSTALL.mod_wrap, contrib/README.mod_wrap, contrib/mod_wrap.c: New mod_wrap (1.2.3) removed contrib/genuser.pl (per TJ) 2002-01-24 flood <flood> * ChangeLog: Updated ChangeLog. 2002-01-24 flood <flood> * NEWS, src/data.c, src/dirtree.c, src/timers.c: #1318 sendfile() semantics incorrect under Linux #1450 Timers removed immediately/alarm() return no longer used for timing #1446 DefaultServer overrides SocketBindTight 2001-12-18 flood <flood> * ChangeLog: Updated ChangeLog. 2001-12-18 flood <flood> * NEWS, include/version.h: bumped version 2001-12-18 flood <flood> * NEWS, doc/Configuration.html, modules/mod_ls.c: New Directive: UseGlobbing, allows glibc-based filepath globbing to be disabled. 2001-12-17 flood <flood> * ChangeLog: Updated ChangeLog. 2001-12-17 flood <flood> * ChangeLog, NEWS, modules/mod_xfer.c: - Check retr_file for validity when RESToring 2001-12-17 flood <flood> * NEWS, modules/mod_xfer.c: - Bug 1391 - ABOR handler now clears session.xfer 2001-12-17 flood <flood> * NEWS, modules/mod_ls.c, modules/mod_xfer.c, src/data.c: - Bug 1392 - Added LOG_CMD_ERR cleanup handler for LIST/NLST/RETR/ STOR/APPE/STOU, to defer clearing of transfer counters. 2001-12-17 flood <flood> * NEWS, README.LDAP, contrib/mod_ldap.c: New mod_ldap (2.8.1) 2001-12-13 flood <flood> * ChangeLog: Updated ChangeLog. 2001-12-13 flood <flood> * NEWS, configure, configure.in, doc/Configuration.html, include/modules.h, include/support.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/auth.c, src/dirtree.c, src/inet.c, src/main.c, src/support.c, src/timers.c: - Bug 1364 - Immediate chown() after file creation - Bug 1415 - Change allowed contexts for Include - Bug 1430 - Possible bad handling of Directory contexts - Bug 1426 - sigsegv on `ls ///////////' - Bug 1360 - Add getgroups abstraction for auth modules - Bug 1289 - Increase information passed to timer callbacks - Bug 1341 - Bad tracking of forked processes - Bug 1400 - Improper use of MODRET_HASDATA macro - Bug 1416 - PidFile in <Global> context is unnecessary, even wasteful - Bug 1429 - Trivial fixes to dispatch reporting - Bug 1419 - Remove unnecessary colons from PRIVS_ macros - Bug 1418 - Slight change to exithandler handling to allow module finalization slot 2001-12-13 flood <flood> * contrib/mod_sql.h: forgot to add contrib/mod_sql.h in previous commit 2001-11-30 flood <flood> * ChangeLog: updated ChangeLog 2001-11-30 flood <flood> * NEWS, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c, sample-configurations/mod_sql.conf: new mod_sql (4.07) 2001-11-29 flood <flood> * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c, src/main.c, src/support.c: #1396 DenyFilter works only in server config scope #1410 SIGIO now conditionally compiled #1281 Improper checking of server context 2001-11-29 flood <flood> * ChangeLog: updated ChangeLog 2001-11-29 flood <flood> * NEWS, include/modules.h, modules/mod_core.c, src/dirtree.c, src/main.c: #1368 umask bug hopefully squashed for good #1389 fixed hang on PWD #1355 added POST_CMD_ERR handler to API 2001-11-08 flood <flood> * NEWS, configure, configure.in: #1113-Make.rules for HPUX incorrectly generated 2001-11-08 flood <flood> * NEWS, contrib/README.mod_wrap, contrib/mod_wrap.c: new mod_wrap (1.2.2) from tj 2001-11-08 flood <flood> * NEWS, modules/mod_auth.c: #1334-MaxClients none forbids connect 2001-10-19 flood <flood> * ChangeLog: Updated ChangeLog. 2001-10-19 flood <flood> * include/version.h: 1.2.4 2001-10-19 flood <flood> * NEWS, modules/mod_core.c, src/dirtree.c: 1348-umask argument not stored correctly 2001-10-18 flood <flood> * ChangeLog: Updated ChangeLog 2001-10-18 flood <flood> * NEWS, include/version.h: 1.2.3-release 2001-10-18 flood <flood> * ChangeLog: Updated ChangeLog. 2001-10-18 flood <flood> * NEWS, doc/Configuration.html, modules/mod_core.c, modules/mod_log.c, modules/mod_site.c, src/main.c: 1344-ExtendedLog now logs QUIT command 1332-Doc patch 1335-Doc patch 1334-Max* none fix 1343-better reporting of command dispatching 1242-more verbose logging of regex 2001-10-18 flood <flood> * NEWS, src/dirtree.c: #1247 - Fix Allow/Deny boolean logic. 2001-09-26 flood <flood> * NEWS, modules/mod_core.c: #1327 AllowForeignAddress mergedown 2001-09-26 flood <flood> * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c: #1280 datatype fixups 2001-09-26 flood <flood> * NEWS, modules/mod_ls.c: #1311 - sigsegv under DirFake* directives 2001-09-26 flood <flood> * NEWS, include/conf.h: #1305 - limits.h now included 2001-09-26 flood <flood> * NEWS, src/inet.c: #1331 - forward-resolve reverse dns 2001-08-24 flood <flood> * src/main.c: patched to not display PASS password on proctitle 2001-08-17 flood <flood> * ChangeLog: Updated ChangeLog. 2001-08-17 flood <flood> * NEWS, include/version.h: 1.2.2-final 2001-08-16 flood <flood> * include/conf.h: Double license in header conf.h 2001-08-16 flood <flood> * ChangeLog: Updated ChangeLog. 2001-08-16 flood <flood> * ChangeLog, NEWS, doc/Configuration.html: Updated docs, moved mod_test.c to attic 2001-08-16 flood <flood> * NEWS, modules/mod_ls.c, modules/mod_xfer.c, src/support.c: 1273 - DirFakeGroup merges down 1286 - mod_ls displays set[ug]id bits 1266 - APPE could corrupt files 1278 - access_check() does not set errno properly 2001-08-16 flood <flood> * NEWS, contrib/mod_sql.c: new mod_sql 2001-08-01 flood <flood> * ChangeLog: Updated ChangeLog. 2001-08-01 flood <flood> * NEWS: README.mod_sql update from author 2001-08-01 flood <flood> * INSTALL, NEWS, doc/Configuration.html, modules/mod_ls.c: #1187 Upstream update to mod_quota #1217,1262,1111,1216 Documentation updates #1145 DirFakeUser now applies to STAT as well as LIST/NLST 2001-08-01 flood <flood> * NEWS, include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c, src/dirtree.c, src/main.c: #1219 - gcc 3.0 fix #1232 - UserOwner changes both uid and gid 2001-07-04 flood <flood> * ChangeLog: Updated ChangeLog. 2001-07-04 flood <flood> * NEWS, src/log.c: #1230 - size mismatch struct utmpx in Solaris 8 (sparcv9) 2001-07-03 flood <flood> * NEWS, modules/mod_auth.c: #1098 - Non~* DefaultRoot bug 2001-07-03 flood <flood> * NEWS, modules/mod_xfer.c: #1234 ABOR must always return 226 2001-07-02 flood <flood> * NEWS, contrib/mod_sql.c: New mod_sql 2001-06-20 flood <flood> * ChangeLog: Updated ChangeLog. 2001-06-20 flood <flood> * NEWS, include/version.h: Bump version, final commit for 1.2.2rc3 2001-06-20 flood <flood> * NEWS, src/main.c: #1215 - Removes setpgid from fork_server 2001-06-20 flood <flood> * NEWS, modules/mod_ls.c: #1145 - DirFakeUser can display currently logged in user 2001-06-20 flood <flood> * NEWS, doc/Configuration.html: #1164,1020,1134,1190,1207 - Doc updates 2001-06-19 flood <flood> * NEWS, src/data.c: #1210 Possible silent truncation in net-ascii mode 2001-06-18 flood <flood> * NEWS, modules/mod_ls.c, src/dirtree.c: #1212 Special files in directory listings 2001-06-18 flood <flood> * ChangeLog: Updated ChangeLog. 2001-06-18 flood <flood> * NEWS, modules/mod_core.c: #1189 Directory dups allowed in Anonymous 2001-06-18 flood <flood> * NEWS, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, src/dirtree.c, src/main.c, src/support.c: #1155 - non rfc behavior #1193 ~ files not handled correctly #1203 - '!' ACL negation logic changed #1161 - %F displays free space on CWD #1151 - <Limit> searching fix for Anon/Vhost root 2001-06-18 flood <flood> * ChangeLog: Updated ChangeLog. 2001-06-18 flood <flood> * NEWS, include/conf.h, include/data.h, include/default_paths.h, include/dirtree.h, include/ident.h, include/inet.h, include/libsupp.h, include/log.h, include/modules.h, include/options.h, include/pool.h, include/privs.h, include/proftpd.h, include/sets.h, include/support.h, include/timers.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/auth.c, src/data.c, src/dirtree.c, src/ident.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/sets.c, src/support.c, src/timers.c: Updated Copyright/License to allow linking to OpenSSL 2001-06-03 flood <flood> * ChangeLog: Updated ChangeLog. 2001-06-03 flood <flood> * NEWS, modules/mod_auth.c, modules/mod_core.c, src/main.c: #1185 - homedir symlink dereference #1189 - duplicated <Directory> contexts not allowed #1183 - removed redundant find_class() 2001-06-03 flood <flood> * NEWS, contrib/dist/rpm/proftpd.init.d, contrib/xferstats.holger-preiss, include/glibc-glob.h, modules/mod_core.c, src/main.c: #1201 - Feature addition to contrib/xferstats.holger-preiss #1132 - glibc2.0 compilation #1090 - ExtendedLog not reporting errors on all events #1149 - Modification in rpm init script 2001-05-31 flood <flood> * ChangeLog: Updated ChangeLog. 2001-05-31 flood <flood> * NEWS, contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: New mod_sql and friends 2001-05-21 flood <flood> * ChangeLog: Updated ChangeLog. 2001-05-21 flood <flood> * NEWS, contrib/mod_readme.c, include/conf.h, modules/mod_core.c: Bug 1175 - GNU HURD portability Bug 1177 - mod_readme.c moved to contrib/ Bug 1176 - PWD/XPWD now G_DIRS and limitable 2001-05-21 flood <flood> * NEWS, lib/glibc-glob.c: Bug 1155 - conditional HPUX headers in glibc-glob.c 2001-05-17 flood <flood> * ChangeLog: Updated ChangeLog 2001-05-17 flood <flood> * NEWS, include/proftpd.h, lib/getopt.c, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c, modules/mod_auth.c, src/inet.c, src/main.c: #1156 - usernames w/ spaces #1160 - svr4.2mp;UX/4800 has bsd root socket semantics #1168 - cleanup #1169 - DefaultRoot/DefaultChdir no longer mutually exclusive #1170 - cleanup #1172 - cleanup 2001-05-16 flood <flood> * NEWS, src/inet.c: Bug #1152 - integer array overflow w.r.t. PassivePorts 2001-04-24 flood <flood> * NEWS, modules/mod_ls.c: Bug 1137 - NLST displayed hidden files 2001-04-23 flood <flood> * NEWS: Final NEWS update for 1.2.2rc2 (old) 2001-04-20 flood <flood> * ChangeLog: Updated ChangeLog. 2001-04-20 flood <flood> * NEWS, include/version.h, src/main.c: Bug 1112 - removed in_addr cast for better compilation on IRIX 6.2. 2001-04-20 flood <flood> * NEWS, modules/mod_site.c: Log warning when AllowChmod is used. 2001-04-18 flood <flood> * src/data.c: Ooops. sendfile() Linux subtraction was backwards. ;) 2001-04-18 flood <flood> * ChangeLog: Updated ChangeLog. 2001-04-18 flood <flood> * NEWS, src/data.c: Bug #1128 - Incorrect sendfile() semantics. 2001-04-13 flood <flood> * modules/mod_core.c: Fixed sigsegv on SITE bug, only in cvs versions. 2001-04-11 flood <flood> * modules/mod_log.c, src/dirtree.c, src/log.c: small fixes to dr's case insensitivity patch. case sensitivity is actually required in some places. ;) 2001-04-11 flood <flood> * NEWS, lib/glibc-glob.c, src/main.c: Bug 1119 - IRIX6 fix for glibc-glob.c Bug 1090 - logging now works with PRE_CMD failed handlers 2001-04-11 flood <flood> * ChangeLog: Updated ChangeLog. 2001-04-11 flood <flood> * src/dirtree.c: MasqueradeAddress now prints LOG_INFO message. 2001-04-11 flood <flood> * NEWS, include/log.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, src/dirtree.c, src/log.c: Bug #1093 - world writable log/symlinked log files Bug #1094 - Auth{User,Group}File disallow relative paths Bug #1096 - Case insensitivity/RLimit* args 2001-03-27 flood <flood> * ChangeLog: Updated ChangeLog. 2001-03-27 flood <flood> * doc/Configuration.html: Bugs #1088, 1058 & 1041 - Doc updates for 1.2.2. 2001-03-27 flood <flood> * NEWS: Updated NEWS version 2001-03-24 flood <flood> * ChangeLog: Final commit for 1.2.2rc1. 2001-03-24 flood <flood> * include/version.h: Bumped version number to 1.2.2rc1. 2001-03-24 flood <flood> * ChangeLog: Updated ChangeLog. 2001-03-24 flood <flood> * NEWS, modules/mod_auth.c: Bug #1085: better logging of two auth messages in mod_auth. 2001-03-24 flood <flood> * NEWS, doc/Configuration.html, modules/mod_xfer.c: Bug #1043: Possible inf. loop in throttle code. Bug #1074: Doc fixes Bug #1070: Doc fixes 2001-03-23 flood <flood> * NEWS, contrib/mod_sql.c, contrib/mod_sql_mysql.c, include/proftpd.h, modules/mod_core.c, src/dirtree.c, src/main.c: Bug #1075 - Fix for short copy of sub-contexts from <Global> New mod_sql and mod_sql docs from maintainer New RLimit* directives used to control resource limits 2001-03-23 flood <flood> * modules/mod_core.c, src/auth.c, src/main.c: Slightly better handling of uid/gid type casts and conversions. 2001-03-22 flood <flood> * NEWS, modules/mod_auth.c: Bug #1049 - passwd/group files are now close/re-opened at USER/PASS. 2001-03-22 flood <flood> * src/dirtree.c: Added debugging to umask code. 2001-03-22 flood <flood> * include/glibc-glob.h: glibc glob header should now be more portable 2001-03-17 flood <flood> * Make.rules.in, NEWS, acconfig.h, config.h.in, configure, configure.in, include/conf.h, include/glibc-glob.h, include/libsupp.h, lib/glibc-glob.c: Bug #1066 - new GNU glob which protects against DoS attacks. 2001-03-13 flood <flood> * ChangeLog: Updated ChangeLog. 2001-03-13 flood <flood> * contrib/mod_sql.c: New mod_sql from maintainer. 2001-03-11 flood <flood> * ChangeLog: Updated ChangeLog. 2001-03-11 flood <flood> * NEWS, modules/mod_core.c, src/main.c: Added MasqueradeAddress feature. 2001-03-09 flood <flood> * NEWS, modules/mod_auth.c, modules/mod_core.c: Bug #1044 - New directive: AccessDenyMsg 2001-03-09 flood <flood> * src/main.c: Bug #1056 (second part) - SIGSEGV is no longer handled when inside the SIGSEGV handler. 2001-03-09 flood <flood> * NEWS: Bug #1055 - ftpwho/ftpcount scan proftpd.conf for scoreboard path. 2001-03-09 flood <flood> * NEWS, config.h.in, configure, configure.in, src/pool.c: Bug #1042 - Directory matching for / Bug #1051 - man pages reference proftpd.net instead of .org New proftpd.spec.in from RPM maintainer configure now tests for the limits.h header file 2001-03-01 flood <flood> * ChangeLog: Updated ChangeLog. 2001-03-01 flood <flood> * NEWS: New NEWS 2001-03-01 flood <flood> * ChangeLog: Updated ChangeLog. 2001-03-01 flood <flood> * README, README.ports: Updated READMEs. 2001-03-01 flood <flood> * NEWS, configure, configure.in, contrib/mod_sql.c, contrib/mod_sql_mysql.c, include/version.h, modules/mod_core.c: New mod_sql maintainer stuff. Attempting to use classes without "Classes On" emits a warning. 2001-02-28 flood <flood> * include/pool.h, modules/mod_auth.c, src/inet.c, src/pool.c: Bug #1037 - Fix for netbsd sockets. Bug #1039 - proper copying of session.groups New MLST draft proposal 2001-02-28 flood <flood> * NEWS, configure, configure.in, modules/mod_xfer.c: Bug #1036 - --disable-shadow now works. More informative message for REST w/ HiddenStor. Default CFLAGS changed from -O6 to -O2 2001-02-27 flood <flood> * contrib/mod_ldap.c, contrib/mod_sql.c: Updated RPM spec (again) as well as new mod_ldap and mod_sql contrib modules. 2001-02-27 flood <flood> * contrib/mod_sql.c, include/version.h: New RPM .spec and mod_sql.c 2001-02-26 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-26 flood <flood> * Makefile.in, NEWS, include/version.h: Final commit to 1.2.0-final release 2001-02-26 flood <flood> * src/support.c: access_check() always succeeds for root now. 2001-02-26 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-26 flood <flood> * contrib/mod_ldap.c: New mod_ldap.c 2001-02-25 flood <flood> * contrib/mod_sql.c: Patch from mod_sql maintainer. 2001-02-25 flood <flood> * CREDITS, doc/Configuration.html: Bug #1034 - Final clean-up for docs. CREDITS - added Chuck 2001-02-24 flood <flood> * Makefile.in, configure, configure.in, modules/mod_auth.c: Bug #1033 - access denied text fix Minor tweaks to configure, updates distclean rule in Makefile 2001-02-24 flood <flood> * configure, configure.in, contrib/mod_sql.c: Bug #1031 - update from mod_sql maintainer New README.mod_sql configure no longer duplicates additional modules' libraries. 2001-02-24 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-24 flood <flood> * CREDITS: Removed mod_sql docs per AAH. New docs will be added with more appropriate filenames. 2001-02-23 flood <flood> * CREDITS, README, README.ports, configure, configure.in, contrib/mod_ratio.c, contrib/mod_sql.c, contrib/mod_sql_postgres.c, lib/Makefile.in: Bug #1024 - minor doc changes. Bug #1025 - stop assuming the system has ranlib. Bug #1028 - mod_sql_postgres.c patch from maintainer. Bug #1029 - mod_sql.c patch from maintainer. Bug #1030 - mod_ratio.c should compile again. 2001-02-23 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-23 flood <flood> * NEWS, config.h.in, configure, configure.in, include/modules.h, include/proftpd.h, modules/mod_auth.c, src/auth.c, src/dirtree.c, src/main.c: Bug #259 - supplemental groups should now work better for anonymous logins. 2001-02-23 flood <flood> * include/inet.h, src/inet.c, src/main.c: Bug #370 - race condition under heavy load at child startup 2001-02-23 flood <flood> * contrib/mod_sql.c: New mod_sql 3.01 from Andrew Houghton <aah@acm.org> 2001-02-23 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-23 flood <flood> * INSTALL, README, README.AIX, README.FreeBSD, README.modules, README.ports, configure, configure.in, doc/Configuration.html, sample-configurations/PFTEST.conf.in, sample-configurations/PFTEST.group, sample-configurations/PFTEST.install, sample-configurations/PFTEST.passwd, sample-configurations/PFTEST.shadow: Bug #1006 - Fixes in configure.in Bug #1022 - Docs updated for mod_sql. Bug #1024 - Updated INSTALL, README and new READMEs and PFTEST files. 2001-02-22 flood <flood> * modules/mod_ls.c: Bug #1016 - Listing "." files should work again + tweak to IgnoreHidden. 2001-02-22 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-22 flood <flood> * NEWS, include/dirtree.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/dirtree.c: Bug #1023 - Fix for IgnoreHidden boolean patch problem introduced in rc2. 2001-02-22 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-22 flood <flood> * Make.rules.in, Makefile.in, include/.cvsignore, include/version.h, src/main.c: Build timestamp is now reported at startup and with --version-status. Removing includes from CFLAGS (CPPFLAGS is enough), changed uid/gid cast from unsigned long long to unsigned long. 2001-02-22 flood <flood> * configure: configure needs a new timestamp :) 2001-02-22 flood <flood> * ChangeLog: Updated ChangeLog, re-ran autoconf 2001-02-22 flood <flood> * NEWS, src/log.c: Logging is now done with a single write() syscall 2001-02-22 flood <flood> * modules/mod_core.c, src/main.c: Bug #1009 - FTP logins are now logged to match logouts. 2001-02-21 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-21 flood <flood> * CREDITS, src/log.c: Bug #1021 - fix for ftpwho/ftpcount not working (_pid_exists() in log.c) 2001-02-21 flood <flood> * modules/mod_xfer.c: Bug #1015 - Format string for long long uids. REST command now returns failure message if used where HiddenStor is enabled. 2001-02-21 flood <flood> * ChangeLog, NEWS: Updated NEWS 2001-02-21 flood <flood> * NEWS, doc/Configuration.html, include/ftp.h, modules/mod_xfer.c, src/log.c: Bug #1003/1017 documentation fixes. Bug #463 - no longer possible to REST past the end of a file. kill(pid,SIGCONT) in log.c switched to kill(pid,0) 2001-02-20 flood <flood> * configure, configure.in, include/version.h, src/main.c: Added --version-status which displays extended version information. 2001-02-20 flood <flood> * src/main.c: Timeout and normal logout syslog messages are now logged at LOG_INFO instead of LOG_NOTICE. 2001-02-20 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-20 flood <flood> * modules/mod_xfer.c: Bug #1012 - Fixed "Unable to throttle bandwidth: Interrupted system call" issue. 2001-02-19 flood <flood> * contrib/mod_sql.c, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Added AAH's newly-maintained mod_sql 3.0 back in to CVS. 2001-02-18 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-16 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-16 flood <flood> * modules/mod_core.c, src/dirtree.c: Bug #1008 - Port 21 is now default w/out Port directive. 2001-02-15 flood <flood> * src/data.c: spurious #ifdef removed, sendfile() should compile again 2001-02-14 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-14 flood <flood> * acconfig.h, config.h.in, configure, configure.in, src/data.c: sendfile configure code fixed, HP/UX support for sendfile removed because HP/UX's implementation is just plain wrong. Might be added back in 1.3. 2001-02-14 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-14 flood <flood> * modules/mod_xfer.c: Bug #462 - sendfile works again on freebsd 2001-02-13 flood <flood> * modules/mod_ls.c, src/dirtree.c: Bug #1007 - IgnoreHidden can now be turned off. 2001-02-05 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-05 flood <flood> * CREDITS, INSTALL, NEWS, README, doc/Configuration.html: Minor doc changes 2001-02-05 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-05 flood <flood> * NEWS: moved mod_tar.c, mod_sqlpw.c, mod_mysql.c and mod_pgsql.c to attic, mod_test.c to contrib/. Adjusted README.sqlpw accordingly. 2001-02-05 flood <flood> * configure, configure.in, contrib/mod_ratio.c, modules/mod_auth.c, modules/mod_xfer.c: Bug #279 - Correct use of sendfile. #29 - updated rpm spec. #433 - initial .ftpaccess in cwd. #453 mod_ratio now uses new dir_check(). initgroups/getgroups use now requires --enable-initgroups. 2001-02-05 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-05 flood <flood> * src/log.c: Bug #455 - SyslogLevel now works as documented. 2001-02-05 flood <flood> * README, configure, configure.in, lib/Makefile.in: Bug #293 - Compilation under OSX. 2001-02-03 flood <flood> * src/data.c: Minor fixes to bug 399's patch. ;) 2001-02-02 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-02 flood <flood> * modules/mod_core.c: Bug #407 - Include pathnames must now be absolute 2001-02-02 flood <flood> * include/options.h, modules/mod_xfer.c, src/data.c: Bug #399 - incorrect handling of CRs during ascii transfers, also made default buffer size a macron in options.h: TUNABLE_BUFFER_SIZE 2001-02-02 flood <flood> * CREDITS, INSTALL, NEWS: Updated minor documentation 2001-02-01 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-01 flood <flood> * include/version.h, src/auth.c: Bug #435 - uid/gid checking for -1, updated version string to 1.2.0rc3 2001-02-01 flood <flood> * ChangeLog: Updated ChangeLog. 2001-02-01 flood <flood> * src/main.c: Bug #451 - check uid/gid after PRIVS_SETUP 2001-01-31 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-31 flood <flood> * configure, configure.in, modules/mod_xfer.c: Bug #35 - call _aborT() funcs in exit handler. sendfile() support is now disabled by default, enable with --enable-sendfile 2001-01-31 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-31 flood <flood> * include/dirtree.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/dirtree.c: Bug #410 - IgnoreHidden fix and cleanup/changes of hiding code. 2001-01-31 flood <flood> * modules/mod_auth.c, modules/mod_core.c: Bug #422 - fixed handling of get_boolean() in config handles #410 - HideNoAccess now takes boolean argument 2001-01-29 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-29 flood <flood> * contrib/mod_ldap.c: New mod_ldap.c from jwm@horde.net 2001-01-29 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-29 flood <flood> * modules/mod_core.c, src/dirtree.c: Bug #353 - Allows use of '!' negation operator in Allow/Deny. 2001-01-29 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-29 flood <flood> * doc/Configuration.html, include/inet.h, modules/mod_core.c, src/inet.c, src/main.c: Bug #188 - Removed use of NAME_MAX in mod_tar and mod_test. #349 - Final implementation of PassivePorts. 2001-01-28 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-28 flood <flood> * modules/mod_core.c: Bug #436 - MaxClients* directives now merge downward. 2001-01-28 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-28 flood <flood> * doc/Configuration.html, modules/mod_auth.c, src/main.c: Bug #350 - Enabling classes but not defining a class no longer segfaults. #360 - Proftpd now logs if passwd/group files cannot be opened. #417 - Command filter regexps no longer apply to the PASS command. 2001-01-26 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-26 flood <flood> * modules/mod_core.c: Bug #390 - Added ifdef to regex code in mod_core 2001-01-26 flood <flood> * contrib/dist/rpm/proftpd.init.d: Bug #347 - RPM problem in contrib/ 2001-01-26 flood <flood> * src/dirtree.c: Bug #397 - Fixed problem with incorrect config file line count 2001-01-26 flood <flood> * src/support.c: Bug #441 - off-by-one error when reading month from /etc/shutmsg 2001-01-26 flood <flood> * doc/Configuration.html: Bug #429 - Documentation changes 2001-01-26 flood <flood> * src/inet.c, src/main.c: Bug #398 - overwriting file descriptor in inet_openrw() 2001-01-25 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-25 flood <flood> * ChangeLog, configure: Updated ChangeLog. 2001-01-25 flood <flood> * config.h.in, configure.in, modules/mod_auth.c: Bug #365 - Removed jail() code from mod_auth.c 2001-01-25 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-25 flood <flood> * ChangeLog: Updated ChangeLog. 2001-01-25 flood <flood> * ChangeLog: [no log message] 2001-01-24 flood <flood> * ChangeLog: [no log message] 2001-01-24 flood <flood> * ChangeLog, contrib/mod_ratio.c, src/main.c: Bug #430 - format string fixes in log_pri and mod_ratio. 2001-01-24 flood <flood> * src/dirtree.c, src/log.c, src/main.c: Bug #408 (1) - add_config_set fix to prevent USER/pool overwrite DoS Bug #408 (2) - scoreboard memory leak in log_open_run fixed Bug #408 (3) - Fixed potential format string bug in main.c Bug #434 - Added pool to pidrec_t to fix large server memory leak 2000-10-08 macgyver <macgyver> * acconfig.h, config.h.in, configure, configure.in, include/support.h, modules/mod_ls.c, src/support.c: Correctly use NAME_MAX and fpathconf() when appropriate. 2000-10-08 macgyver <macgyver> * contrib/README.mod_wrap, contrib/mod_wrap.c: Added in mod_wrap into contrib. 2000-10-08 macgyver <macgyver> * modules/mod_core.c: Correctly log the full path of deleted files. 2000-10-08 macgyver <macgyver> * modules/mod_auth.c, modules/mod_core.c: Added in support for MaxHostsPerUser and fixed a problem with AnonRequirePassword. 2000-10-08 macgyver <macgyver> * src/inet.c: Lots of little cleanups. 2000-10-08 macgyver <macgyver> * contrib/mod_ratio.c: Fixed a bounds issue when checking the SITE command. 2000-08-19 macgyver <macgyver> * configure, configure.in: Fixed ordering in library duplication detection code. 2000-08-18 macgyver <macgyver> * NEWS: Updates. 2000-08-18 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-18 macgyver <macgyver> * README.PAM: Updated PAM documentation for FreeBSD. 2000-08-18 macgyver <macgyver> * src/dirtree.c: Don't only partially match directory names. This annoying bug allowed for directory-level configurations to sometimes not work right. 2000-08-18 macgyver <macgyver> * configure, configure.in: Fixed a small typo in PAM detection. 2000-08-18 macgyver <macgyver> * acconfig.h, config.h.in, configure, configure.in: PAM and path modifications. 2000-08-13 macgyver <macgyver> * Make.rules.in, acconfig.h, config.h.in, configure, configure.in, include/conf.h: Some configure and compilation cleanups. 2000-08-08 macgyver <macgyver> * include/data.h, modules/mod_xfer.c, src/data.c: Cleaned up sendfile() implementation to make it simpler and more managable. 2000-08-07 macgyver <macgyver> * modules/mod_core.c: Fixed a typo in set_sysloglevel. 2000-08-05 macgyver <macgyver> * modules/mod_auth.c: Be a little more anal retentive about cleaning up after ourselves when it comes to USER/PASS attempts. 2000-08-05 macgyver <macgyver> * src/data.c: Formatting cleanups. 2000-08-05 macgyver <macgyver> * modules/mod_xfer.c: Removed spurious #if 0. 2000-08-04 macgyver <macgyver> * configure, configure.in: Updated HP/UX sendfile() to only actually check on HP/UX platforms. :) 2000-08-04 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-04 macgyver <macgyver> * doc/Configuration.html: Updated documentation. 2000-08-03 macgyver <macgyver> * contrib/README.ratio, contrib/mod_ratio.c: Updated to mod_ratio. 2000-08-03 macgyver <macgyver> * contrib/mod_ldap.c: Updated to mod_ldap 2.7.3 to remove LDAPSearchFilter. 2000-08-03 macgyver <macgyver> * modules/mod_auth.c: Oops...more compilation fixes for jail(). :) 2000-08-03 macgyver <macgyver> * doc/Configuration.html: Updated documentation. 2000-08-03 macgyver <macgyver> * modules/mod_auth.c: Correctly obtain the IP address in jail(). 2000-08-03 macgyver <macgyver> * modules/mod_auth.c: Typos in jail() support. 2000-08-03 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-03 macgyver <macgyver> * modules/mod_auth.c: Added some debug logging to lockdown(). 2000-08-03 macgyver <macgyver> * NEWS, config.h.in, configure, configure.in, modules/mod_auth.c: Added in support for jail() on platforms that support it (currently FreeBSD 4.x+). 2000-08-03 macgyver <macgyver> * ChangeLog, NEWS: Updated ChangeLog and NEWS. 2000-08-02 macgyver <macgyver> * doc/Configuration.html: Updated documentation. 2000-08-02 macgyver <macgyver> * ChangeLog, NEWS: Updated NEWS and ChangeLog. 2000-08-02 macgyver <macgyver> * Make.rules.in, configure, configure.in: Added in --with-libraries for posterity. 2000-08-02 macgyver <macgyver> * configure.in: Added copyright info to the configure scripts. 2000-08-02 macgyver <macgyver> * src/log.c: Only log to WTMP or WTMPX, not both. Modern systems should all use WTMPX. 2000-08-02 macgyver <macgyver> * stamp-h.in: Added in stamp-h.in support. 2000-08-02 macgyver <macgyver> * .cvsignore, Makefile.in, configure, configure.in: Added support for stamp-h.in and automagic rebuilds whenever configure is updated. 2000-08-02 macgyver <macgyver> * acconfig.h, config.h.in, configure, configure.in: More sendfile detection tweaks. :) 2000-08-02 macgyver <macgyver> * modules/mod_core.c: Forgot to return HANDLED in add_sysloglevel. 2000-08-02 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-02 macgyver <macgyver> * configure, configure.in: Reworked sendfile detection to be cleaner and better cached. 2000-08-02 macgyver <macgyver> * Make.rules.in, NEWS, configure, configure.in: Added in --with-includes and made the PAM check for -ldl cache its results. 2000-08-02 macgyver <macgyver> * NEWS, include/conf.h, include/data.h, include/default_paths.h, include/dirtree.h, include/ftp.h, include/ident.h, include/inet.h, include/libsupp.h, include/log.h, include/modules.h, include/options.h, include/pool.h, include/privs.h, include/proftpd.h, include/sets.h, include/timers.h, modules/mod_core.c, src/log.c: Added SyslogLevel directive, and cleaned up some header files. 2000-08-01 macgyver <macgyver> * modules/mod_core.c, src/main.c: Added support for the PidFile directive, to make ProFTPD more Apache-like. 2000-08-01 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-01 macgyver <macgyver> * include/proftpd.h, modules/mod_auth.c, src/main.c: AnonRequirePassword should prevent the password from being displayed in ftpwho/ftpcount/ps. 2000-08-01 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-01 macgyver <macgyver> * NEWS, modules/mod_log.c: Honor ExtendedLog NONE. 2000-08-01 macgyver <macgyver> * NEWS, doc/Configuration.html, modules/mod_site.c: AllowChmod defaults to 'on' now, to be backward compatible. 2000-08-01 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-08-01 macgyver <macgyver> * NEWS, modules/mod_auth.c: Moved code around to eliminate a race with MaxClients. 2000-08-01 macgyver <macgyver> * NEWS, contrib/mod_ratio.c, modules/mod_site.c: Fixed a minor bug in SITE HELP. 2000-08-01 macgyver <macgyver> * NEWS, modules/mod_core.c, modules/mod_xfer.c: Added in DeleteAbortedStores and did some minor cleanups. 2000-08-01 macgyver <macgyver> * NEWS: Solaris requires you to have PAM_TTY and PAM_RHOST defined before you call pam_open_session. No, it doesn't make sense to me either. :) 2000-07-28 macgyver <macgyver> * lib/pr_fnmatch.c: Optimizations for fnmatch() implementation. 2000-07-28 macgyver <macgyver> * contrib/mod_ldap.c: Updated mod_ldap to 2.7.2. 2000-07-28 macgyver <macgyver> * modules/mod_xfer.c: Don't check for PORT in cmd_stor if we're in passive mode. 2000-07-28 macgyver <macgyver> * NEWS, modules/mod_site.c: AllowChmod now works in almost any context. 2000-07-28 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-07-28 macgyver <macgyver> * NEWS, modules/mod_site.c: AllowChmod works right now. 2000-07-28 macgyver <macgyver> * NEWS, acconfig.h, config.h.in, configure, configure.in, src/data.c: Added --disable-pam, allowing you to disable PAM at configure-time. Reorganized sendfile detection a bit and added support for HP/UX. 2000-07-27 macgyver <macgyver> * modules/mod_auth.c: Work around HP/UX's broken compiler in _do_user_counts(). 2000-07-27 macgyver <macgyver> * contrib/mod_ldap.c: Updated mod_ldap to latest/greatest. 2000-07-26 macgyver <macgyver> * src/main.c: Remove spurious \r\n from various send_response()s. 2000-07-26 macgyver <macgyver> * src/main.c: Be verbose about /etc/shutmsg. 2000-07-26 macgyver <macgyver> * include/proftpd.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/data.c, src/log.c: Fixed a crash when STOR called before PORT being issued. Fixed a crash related to STAT. 2000-07-26 macgyver <macgyver> * lib/pwgrent.c: Fixed some warnings on FreeBSD. 2000-07-26 macgyver <macgyver> * src/main.c: Better checking for empty strings before attempting to call a regex. Handle empty commands cleaner. 2000-07-26 macgyver <macgyver> * README.LDAP, contrib/mod_ldap.c: Updated mod_ldap to 2.7.1. 2000-07-26 macgyver <macgyver> * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: fnmatch.c was renamed to pr_fnmatch.c, as well as importing the new fnmatch code from glibc. 2000-07-26 macgyver <macgyver> * Make.rules.in, config.h.in, configure, configure.in, include/libsupp.h, lib/Makefile.in, modules/Makefile.in, src/Makefile.in, src/dirtree.c: New fnmatch code in ProFTPD. Updated from the latest and greatest glibc code. ProFTPD now always uses our builtin fnmatch to eliminate problems with incompatible implementations as well as namespace collisions. 2000-07-26 macgyver <macgyver> * contrib/mod_ratio.c: Transitioned to the new fnmatch() function, and corrected an error where hosts were being treated in a case-sensitive fashion. 2000-07-26 macgyver <macgyver> * configure, configure.in: Made fnmatch check more robust and cleaned up gcc detection a bit. 2000-07-26 macgyver <macgyver> * configure, configure.in, src/dirtree.c: Hostname checks should be case insensitive. Added FNM_CASEFOLD to fnmatch check. 2000-07-26 macgyver <macgyver> * config.guess, config.sub: Updated config.guess and config.sub scripts. 2000-07-21 macgyver <macgyver> * ChangeLog: Updated changelog. 2000-07-21 macgyver <macgyver> * ChangeLog, NEWS, config.h.in, configure, configure.in, modules/mod_auth.c: Portability fixes and additions on various platforms. Also corrected a problem in configure where a piece of code was completely bypassed. 2000-07-21 macgyver <macgyver> * doc/Configuration.html: Updated configuration documentation. 2000-07-21 macgyver <macgyver> * src/main.c: Check for getopt_long was backwards. 2000-07-21 macgyver <macgyver> * modules/mod_core.c: Removed unused variables thanks to gcc -Wall. 2000-07-21 macgyver <macgyver> * src/main.c: Removed 2 printfs that were just plain wrong in a situation where a site is administratively shutdown (ala shutmsg, etc). Also corrected a getopt_long related issue in show_usage. 2000-07-21 macgyver <macgyver> * NEWS: Updated news. 2000-07-21 macgyver <macgyver> * ChangeLog: Updated changelog. 2000-07-21 macgyver <macgyver> * src/main.c: Command line options are constants. 2000-07-21 macgyver <macgyver> * src/main.c: Be mindful of systems without getopt_long. 2000-07-21 macgyver <macgyver> * configure, configure.in: Added in better PAM detection for -ldl. 2000-07-21 macgyver <macgyver> * README.LDAP, contrib/mod_ldap.c, doc/Configuration.html: Latest LDAP updates (mod_ldap 2.7). 2000-07-21 macgyver <macgyver> * src/data.c: Added many more descriptions around various error conditions for better RFC compliance. 2000-07-11 macgyver <macgyver> * modules/mod_core.c: Fixed a minor typo when there is no regex engine around. 2000-07-11 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 2000-07-11 macgyver <macgyver> * NEWS, src/data.c, src/main.c: Don't ignore ServerUseReverseDNS. 2000-07-11 macgyver <macgyver> * ChangeLog, contrib/mod_ldap.c, contrib/mod_ratio.c, lib/pwgrent.c, lib/vsnprintf.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c, src/auth.c, src/dirtree.c, src/ident.c, src/inet.c, src/log.c, src/pool.c, src/support.c: Minor updates and buffer cleanups. 2000-07-11 macgyver <macgyver> * include/default_paths.h, src/main.c: Added in support for core file debugging. 2000-07-11 macgyver <macgyver> * doc/Configuration.html: Latest and greatest documentation updates. 2000-07-09 macgyver <macgyver> * include/log.h, modules/mod_core.c, modules/mod_xfer.c, src/log.c: Added in support for a completion field in xferlog. 2000-07-09 macgyver <macgyver> * doc/Configuration.html: Updated LDAP documentation. 2000-07-09 macgyver <macgyver> * contrib/mod_ldap.c: Added in -lresolv. 2000-07-09 macgyver <macgyver> * src/support.c: Try to address potential memory issues with people trying to overflow large path buffers. 2000-07-08 macgyver <macgyver> * src/inet.c: Added in some sanity checking so things like getsockname() don't crash on Solaris when called with invalid descriptors. 2000-07-07 macgyver <macgyver> * ChangeLog, include/version.h: Updated ChangeLog as well as version. 2000-07-07 macgyver <macgyver> * contrib/README.ratio, contrib/mod_ratio.c: Updated to mod_ratio. 2000-07-07 macgyver <macgyver> * NEWS, modules/mod_ls.c, src/auth.c, src/data.c, src/log.c, src/support.c: Fixed various MAXPATHLEN buffers. 2000-07-07 macgyver <macgyver> * modules/mod_ls.c: Use access_check to properly check permissions. More consistent handling of '.' and '..'. I can't wait to rewrite this module. 2000-07-07 macgyver <macgyver> * modules/mod_core.c, src/support.c: Handle symlinks more appropriately...follow the link, not the file. 2000-07-07 macgyver <macgyver> * NEWS, include/support.h, src/dirtree.c, src/support.c: Added access_check() to handle correct permission checking. 2000-07-07 macgyver <macgyver> * src/auth.c: Minor correction to auth_uid_name and auth_gid_name. 2000-07-07 macgyver <macgyver> * src/log.c: Documented design decision behind utmp entries and strings. 2000-07-06 macgyver <macgyver> * doc/Configuration.html: Updates to documentation. 2000-07-06 macgyver <macgyver> * modules/Makefile.in: Removed mod_mysql.h dependency. 2000-07-06 macgyver <macgyver> * NEWS, doc/Configuration.html, include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c: Fixed GroupOwner and added UserOwner. 2000-07-06 macgyver <macgyver> * NEWS, config.h.in, configure, configure.in, modules/mod_auth.c, src/main.c: Added in support to handle large groups efficiently. This should take care of the 'hangs forever on login' bug. 2000-07-06 macgyver <macgyver> * modules/mod_auth.c: Fixed a bug when classes weren't enabled and DisplayConnect is used. 2000-07-06 macgyver <macgyver> * include/inet.h, src/data.c, src/inet.c: AllowForeignAddress directives now work on passive connections as well. 2000-07-06 macgyver <macgyver> * modules/mod_site.c: Typo in AllowChmod implementation. :) 2000-07-06 macgyver <macgyver> * Make.rules.in: Minor cleanups. 2000-07-06 macgyver <macgyver> * src/main.c: Added in set_proc_title duirng login. 2000-07-06 macgyver <macgyver> * modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c: Stubs for unimplemented commands. Bleh...we need to overhaul this protocol. 2000-07-06 macgyver <macgyver> * doc/Configuration.html: Updated classes documentation. 2000-07-06 macgyver <macgyver> * NEWS, modules/mod_xfer.c: Minor typo in cmd_stor. 2000-07-06 macgyver <macgyver> * modules/mod_auth.c: Fixed a minor race condition in classes. 2000-07-06 macgyver <macgyver> * NEWS, modules/mod_ls.c: Fixed a minor permissions display problem when DirFakeMode is not in use. 2000-07-06 macgyver <macgyver> * src/main.c: Fixed use of 500 instead of R_500. 2000-07-06 macgyver <macgyver> * NEWS, config.h.in, configure, configure.in, lib/vsnprintf.c: Made portable *snprintf libraries more so by supporting floating point operations and updated ftpcount accordingly. 2000-07-06 macgyver <macgyver> * lib/pwgrent.c: A fix for dealing with FreeBSD's (IMO **BROKEN**) passwd scheme that allows comments and blank lines in passwd files. 2000-07-06 macgyver <macgyver> * NEWS, modules/mod_site.c: Added AllowChmod directive. 2000-07-06 macgyver <macgyver> * NEWS, doc/Configuration.html, modules/mod_ls.c: DisplayReadme now accepts patterns. 2000-07-06 macgyver <macgyver> * Make.rules.in, NEWS, include/default_paths.h, src/main.c: A PID file is now created in standalone mode. 2000-07-06 macgyver <macgyver> * acconfig.h, config.h.in, configure, configure.in, include/conf.h, modules/mod_ls.c: Fixed a POSIX issue regarding NAME_MAX usage. 2000-07-06 macgyver <macgyver> * NEWS: Updated news. 2000-07-06 macgyver <macgyver> * INSTALL: Updated documentation. 2000-07-03 macgyver <macgyver> * modules/mod_ls.c: Fixed potential buffer problem in dolist(). 2000-07-03 macgyver <macgyver> * modules/mod_log.c: Cleaned up mod_log slightly, and added in some comments about potential buffer problems to be fixed after 1.2.0. 2000-07-03 macgyver <macgyver> * README.PAM: Updated PAM documentation to reflect AuthPAM. 2000-07-03 macgyver <macgyver> * src/main.c: Security fix in setproctitle(). 2000-03-06 macgyver <macgyver> * CREDITS: Updated CREDITS 2000-03-06 macgyver <macgyver> * INSTALL: An even cooler INSTALL file 2000-03-06 macgyver <macgyver> * INSTALL, doc/Configuration.html: Documentation updates 2000-03-06 macgyver <macgyver> * NEWS, modules/mod_ls.c: Added in -L option for things like mirror to work with symlinks 2000-03-06 macgyver <macgyver> * configure, configure.in: Fixed a bug in link-testing for -ldl 2000-03-03 macgyver <macgyver> * config.h.in, configure, configure.in: Minor cleanups of configure scripts to remove dependencies on -ldl 2000-03-01 macgyver <macgyver> * NEWS, modules/mod_ls.c: Put in a better optimized sreaddir function 2000-03-01 macgyver <macgyver> * modules/mod_auth.c: Cleanup of a couple of typos, and removed some redundant code 2000-03-01 macgyver <macgyver> * include/conf.h: Moved the NAME_MAX stuff into conf.h, for portability 2000-03-01 macgyver <macgyver> * src/pool.c: Commented out references to symbol information in pool allocations 2000-02-29 macgyver <macgyver> * NEWS, acconfig.h, config.h.in, configure, configure.in, src/main.c: Added in support for tzset, to preserve timezone information across a chroot 2000-02-29 macgyver <macgyver> * NEWS, lib/vsnprintf.c, src/log.c: Removed spurious alloca calls 2000-02-28 macgyver <macgyver> * NEWS, doc/Configuration.html, modules/mod_auth.c, modules/mod_log.c: Added in %A, %F, and %m to LogFormat so we can do CLF-style logs now 2000-02-28 macgyver <macgyver> * ChangeLog, NEWS, src/dirtree.c, src/main.c: Added -t option to allow for syntax checking of a config file and made config file errors give line and file information on failure 2000-02-28 macgyver <macgyver> * modules/mod_auth.c, modules/mod_core.c: Minor cosmetic cleanups 2000-02-28 macgyver <macgyver> * NEWS, modules/mod_core.c: Add %k directive to show amount of data in a user-friendly way in DisplayQuit 2000-02-28 macgyver <macgyver> * modules/mod_auth.c: Make root logins louder 2000-02-28 macgyver <macgyver> * NEWS, README.Unixware, config.guess, config.sub: Unixware support and updated config.guess, config.sub files 2000-02-28 macgyver <macgyver> * NEWS, src/inet.c: FreeBSD 4.0 support added 2000-02-28 macgyver <macgyver> * NEWS: Added mod_quota 2000-02-28 macgyver <macgyver> * modules/mod_xfer.c: Include sys/sendfile.h 2000-02-28 macgyver <macgyver> * modules/mod_core.c: Minor cleanups of unused variables 2000-02-28 macgyver <macgyver> * NEWS, modules/mod_log.c: Logging of transfer times is more precise 2000-02-28 macgyver <macgyver> * modules/mod_core.c: Fixed a typo that called VirtualHost a VirtualServer 2000-02-28 macgyver <macgyver> * NEWS, modules/mod_log.c: Add a warning for invalid classes in ExtendedLog 2000-02-28 macgyver <macgyver> * NEWS, src/main.c: Save environment before doing anything with set_proc_title. 2000-02-26 macgyver <macgyver> * NEWS, contrib/mod_ldap.c: Updated mod_ldap to 2.5.2. 2000-02-26 macgyver <macgyver> * NEWS, modules/mod_xfer.c: Updated bandwidth code to use select instead of usleep. 2000-02-16 macgyver <macgyver> * NEWS, src/dirtree.c: Fixed Umask handling for directories. 2000-02-16 macgyver <macgyver> * NEWS, modules/mod_xfer.c: Correct the case where there is no second argument to TYPE L X. 2000-02-15 macgyver <macgyver> * src/support.c: Correct calc_fs to actually make the right calculation when using statvfs. 2000-02-01 macgyver <macgyver> * modules/mod_auth.c: Fixed a NULL dereference when AuthUsingAlias is used outside of <Anonymous> directives. 2000-01-24 macgyver <macgyver> * NEWS, modules/mod_auth.c: Fixed a small group permissions problem. 2000-01-24 macgyver <macgyver> * src/dirtree.c, src/main.c: Removed references to the fastpathing of limits. This topic is too complex to deal with for 1.2.0. 2000-01-24 macgyver <macgyver> * src/main.c: This is a stupid message...just disabled my fastpath...needs more work, and I need to step out for a while. :) 2000-01-24 macgyver <macgyver> * src/main.c: Added a fastpath for denying commands in the dispatch loop. 2000-01-24 macgyver <macgyver> * include/proftpd.h, modules/mod_auth.c, modules/mod_core.c: Support for class listing in ftpcount. Support for full use of % options in DisplayConnect. 2000-01-23 macgyver <macgyver> * doc/Configuration.html: Documentation for Include directive. 2000-01-23 macgyver <macgyver> * modules/mod_core.c: Added 'Include' directive. 2000-01-23 macgyver <macgyver> * modules/mod_core.c: DisplayConnect now supports all the % options. Correct a bug with %z printing in classes. 2000-01-23 macgyver <macgyver> * modules/mod_ls.c: Added TimesGMT, and made our listing output more consistent. 2000-01-23 macgyver <macgyver> * doc/Configuration.html: Added documentation for Class/Classes and TimeGMT. 2000-01-23 macgyver <macgyver> * NEWS, modules/mod_ls.c: Fix a stupid dereference in mod_ls. 2000-01-18 macgyver <macgyver> * CREDITS: Added a CREDITS file. 2000-01-18 macgyver <macgyver> * README: Updated with new web site. 2000-01-18 macgyver <macgyver> * ChangeLog, include/version.h: Updated for pre10. 2000-01-18 macgyver <macgyver> * NEWS: Updated for pre10 release. 2000-01-18 macgyver <macgyver> * doc/Configuration.html, include/dirtree.h, modules/mod_core.c, src/dirtree.c: Corrected some errors in .ftpaccess handling. 2000-01-18 macgyver <macgyver> * config.sub: Recognize BSDI on an UltraSPaRC 2000-01-18 macgyver <macgyver> * NEWS, src/inet.c: inet_getname no longer returns NULL in bad host entry cases. 2000-01-18 macgyver <macgyver> * NEWS: Corrected ~ reporting. 2000-01-15 macgyver <macgyver> * lib/pwgrent.c: Corrected an allocation error in pwgrent. 2000-01-03 macgyver <macgyver> * include/privs.h, include/proftpd.h, modules/mod_auth.c: Added Simon's patch to handle chdir-ing properly into user accounts. 2000-01-03 macgyver <macgyver> * modules/mod_xfer.c: Handle a case with a zero-length file for BSD. 1999-12-30 macgyver <macgyver> * src/data.c: Fixed total calculation. 1999-12-30 macgyver <macgyver> * NEWS, include/dirtree.h, modules/mod_auth.c, modules/mod_core.c: Fixed error messages in cases where it's an invalid number of arguments. 1999-12-30 macgyver <macgyver> * ChangeLog, src/data.c: Added a fix for BSD's strange sendfile behavior. 1999-12-29 macgyver <macgyver> * src/data.c: Minor correction to sendfile() semantics on FreeBSD. 1999-12-28 macgyver <macgyver> * modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c: Ensured that cmdtable structs remained static to the files they're defined in. 1999-12-28 macgyver <macgyver> * ChangeLog: Updated ChangeLog. 1999-12-28 macgyver <macgyver> * src/support.c: Cleaned up sstrncpy properly and backed out previous incorrect cleanup. 1999-12-28 macgyver <macgyver> * NEWS: Updated again. 1999-12-28 macgyver <macgyver> * NEWS: Updated NEWS. 1999-12-28 macgyver <macgyver> * src/support.c: Cleaned up the implementation of sstrncpy slightly. 1999-12-28 macgyver <macgyver> * modules/mod_xfer.c: Disable sendfile() if we're using bandwidth control. 1999-12-28 macgyver <macgyver> * modules/mod_auth.c: Fixed a missing variable in a log_auth entry. 1999-12-28 macgyver <macgyver> * INSTALL, README, doc/Configuration.html: Updated documentation to reflect new web site. 1999-12-28 macgyver <macgyver> * configure, configure.in: Fixed the detection of hpsecurity.h 1999-12-27 macgyver <macgyver> * NEWS, README.LDAP, contrib/mod_ldap.c, doc/Configuration.html: Updated mod_ldap. 1999-12-27 macgyver <macgyver> * configure, configure.in: Fixed a minor typo in a test case. 1999-12-27 macgyver <macgyver> * modules/mod_auth.c: Group handling fixed for complex groups. 1999-12-27 macgyver <macgyver> * modules/mod_xfer.c: Corrected a minor misdefinition in xfer_init_parent. 1999-12-23 macgyver <macgyver> * NEWS, lib/pwgrent.c: Generate a meaningful error for bad group entries. 1999-12-23 macgyver <macgyver> * modules/mod_xfer.c: Added more caught cases in sendfile(). 1999-12-09 macgyver <macgyver> * src/support.c: Small Y2K fix. 1999-11-29 macgyver <macgyver> * NEWS, src/data.c: sendfile() doesn't log spurious errors unless in debug mode. 1999-10-27 macgyver <macgyver> * configure, configure.in: Corrected intall_group handling. 1999-10-27 macgyver <macgyver> * modules/mod_xfer.c: Minor optimization in sendfile() detection on Linux. 1999-10-27 macgyver <macgyver> * modules/mod_xfer.c: Minor log cleanup for data_sendfile. 1999-10-27 macgyver <macgyver> * modules/mod_xfer.c: Moved around some logging for data_sendfile. 1999-10-27 macgyver <macgyver> * contrib/.cvsignore: Updated for proftpd.spec. 1999-10-27 macgyver <macgyver> * modules/mod_xfer.c: sendfile() should take a more graceful and tolerant approach to slow connections. It seems that the problem is that its too fast. 1999-10-27 macgyver <macgyver> * Makefile.in: Minor path correction for proftpd.spec. 1999-10-27 macgyver <macgyver> * ChangeLog: Updated. 1999-10-27 macgyver <macgyver> * NEWS: Minor cleanups. 1999-10-27 macgyver <macgyver> * NEWS, README.LDAP, doc/Configuration.html, include/version.h: Documentation updates and version bump to pre9. 1999-10-27 macgyver <macgyver> * modules/mod_xfer.c: Added support for TYPE L for RFC 959 compliance. 1999-10-27 macgyver <macgyver> * doc/rfc/draft-bonachea-sftp-00.txt, doc/rfc/draft-ietf-ftpext-sec-consider-02.txt, doc/rfc/rfc0959.txt, doc/rfc/rfc2228.txt: Added RFCs to the documentation. 1999-10-27 macgyver <macgyver> * configure, configure.in: Fixed my stupid typo in FreeBSD setpassent. 1999-10-27 macgyver <macgyver> * doc/Configuration.html: Added more directives. 1999-10-25 macgyver <macgyver> * doc/Configuration.html: More additions, courtesy of Ben Ritcey. 1999-10-23 macgyver <macgyver> * NEWS: Added AuthUsingAlias. 1999-10-23 macgyver <macgyver> * doc/Configuration.html, modules/mod_auth.c, modules/mod_core.c: Added in AuthUsingAlias. 1999-10-23 macgyver <macgyver> * configure, configure.in, contrib/dist/rpm/ftp.pamd, contrib/dist/rpm/proftpd.init.d: Moved around RPM build files. 1999-10-23 macgyver <macgyver> * ChangeLog: Updated. 1999-10-23 macgyver <macgyver> * NEWS, modules/mod_xfer.c: Minor updates. 1999-10-23 macgyver <macgyver> * NEWS, README, acconfig.h, config.h.in, configure, configure.in, modules/mod_auth.c: Updates for FreeBSD's brokenness with respect to setpassent. 1999-10-23 macgyver <macgyver> * modules/mod_xfer.c: FreeBSD cleanups for sendfile(). 1999-10-23 macgyver <macgyver> * contrib/mod_ldap.c: Updated mod_ldap. 1999-10-21 macgyver <macgyver> * doc/Configuration.html: Updated configuration documentation. 1999-10-18 macgyver <macgyver> * NEWS, doc/Configuration.html, include/dirtree.h, modules/mod_core.c, src/dirtree.c: Added a second argument to the Umask directive to handle directories. 1999-10-18 macgyver <macgyver> * modules/mod_xfer.c: sendfile() now deprecates politely on Linux 2.0.x. 1999-10-17 macgyver <macgyver> * doc/Configuration.html: Added in documentation for DisplayReadme. 1999-10-11 macgyver <macgyver> * NEWS, config.h.in, configure, configure.in, include/conf.h: Added in support for setgroupent. 1999-10-11 macgyver <macgyver> * modules/mod_auth.c: Fixed the 'no names, just UIDs' bug. 1999-10-11 macgyver <macgyver> * ChangeLog: Updated. 1999-10-11 macgyver <macgyver> * Make.rules.in, Makefile.in, NEWS, src/Makefile.in: Corrected a couple of grammatical errors in ftpcount/ftpwho, and seperated them into their own binaries. 1999-10-11 macgyver <macgyver> * NEWS, configure, contrib/mod_ldap.c, contrib/mod_ratio.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/log.c, src/main.c: Updated logging to be more consistent, and generally be more informative. 1999-10-11 macgyver <macgyver> * README.PAM: Updated some information for FreeBSD, SuSE, and others. 1999-10-10 macgyver <macgyver> * NEWS, configure.in: install_group slightly more portable. 1999-10-10 macgyver <macgyver> * contrib/mod_ldap.c: Updated author/copyright info. 1999-10-10 macgyver <macgyver> * contrib/mod_ldap.c, doc/Configuration.html: Added in mod_ldap. 1999-10-07 macgyver <macgyver> * NEWS: Updated. 1999-10-07 macgyver <macgyver> * modules/mod_auth.c, modules/mod_core.c, src/main.c: Added in some better/clearer logging support. 1999-10-06 macgyver <macgyver> * NEWS, README.PAM: Fixed FreeBSD documentation. 1999-10-06 macgyver <macgyver> * modules/mod_auth.c: Fixed potential segfault in group_expression(). 1999-10-06 macgyver <macgyver> * doc/Configuration.html: Removed Bandwidth from docs. 1999-10-06 macgyver <macgyver> * NEWS: Updated. 1999-10-05 macgyver <macgyver> * NEWS: Added a news file. 1999-10-05 macgyver <macgyver> * acconfig.h, config.h.in, configure, configure.in, include/data.h, src/data.c: Added in support for sendfile on BSD platforms. 1999-10-05 macgyver <macgyver> * ChangeLog, Makefile.in, doc/mod_sample.c: Miscellaneous reshuffling. 1999-10-05 macgyver <macgyver> * configure, configure.in: Fixed a small typo. 1999-10-04 macgyver <macgyver> * ChangeLog: Updated. 1999-10-04 macgyver <macgyver> * ChangeLog: [no log message] 1999-10-04 macgyver <macgyver> * ChangeLog: Updated the ChangeLog. 1999-10-04 macgyver <macgyver> * contrib/mod_ratio.c: Fixed a typo in an snprintf. 1999-10-04 macgyver <macgyver> * include/version.h: Updated to pre8. 1999-10-04 macgyver <macgyver> * configure, configure.in: Enhanced configure to automagically create the necessary symlinks. 1999-10-04 macgyver <macgyver> * contrib/mod_ratio.c: Added in Johnie Ingram's latest mod_*sql patches, along with some slight buffer fixes of my own. 1999-10-01 macgyver <macgyver> * src/support.c: Fixed a typo with statvfs. 1999-10-01 macgyver <macgyver> * ChangeLog: Moved to cvs2cl generation of ChangeLogs. 1999-10-01 macgyver <macgyver> * ChangeLog: Updated ChangeLog 1999-10-01 macgyver <macgyver> * config.h.in, configure, configure.in, include/data.h, include/dirtree.h, include/log.h, include/proftpd.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_xfer.c, src/log.c, src/main.c: Added classes support, new bandwidth support, and sendfile support. 1999-10-01 macgyver <macgyver> * src/data.c: Added support for sendfile(). 1999-10-01 macgyver <macgyver> * include/privs.h, modules/mod_auth.c: Added in support for setresuid on HP/UX. 1999-10-01 macgyver <macgyver> * doc/Configuration.html, modules/mod_xfer.c: Added new Bandwidth code and documentation. 1999-10-01 macgyver <macgyver> * modules/mod_auth.c: Corrected a tricky bug with parsing of configuration files. Thanks Klaus. 1999-10-01 macgyver <macgyver> * modules/mod_ls.c: Fixed a silly typo with snprintf. 1999-10-01 macgyver <macgyver> * modules/mod_core.c: Removed old and naieve bandwidth code. 1999-10-01 macgyver <macgyver> * include/dirtree.h, src/dirtree.c: Remove old and naieve bandwidth code. 1999-10-01 macgyver <macgyver> * config.h.in, configure, configure.in: HP/UX security detection added. 1999-09-30 macgyver <macgyver> * modules/mod_auth.c: Fix a potential security hole. 1999-09-30 macgyver <macgyver> * modules/mod_ls.c: DirFakeMode available inside <Directory> blocks. 1999-09-30 macgyver <macgyver> * configure, configure.in: Corrected configure portability issues. 1999-09-30 macgyver <macgyver> * modules/mod_ls.c: Corrected static declarations. 1999-09-30 macgyver <macgyver> * src/dirtree.c: Corrected a couple of problems related to IP LIMIT directives. 1999-09-30 macgyver <macgyver> * contrib/mod_readme.c: Deleted spurious mod_readme file. 1999-09-30 macgyver <macgyver> * modules/mod_core.c: Fixed compliance with RFC 929 with respect to RNTO. 1999-09-29 macgyver <macgyver> * modules/mod_auth.c, modules/mod_ls.c: Minor bug fixes. 1999-09-29 macgyver <macgyver> * src/dirtree.c: Fixed a bug in match_ip that was causing some LIMIT directives to fail. 1999-09-28 macgyver <macgyver> * src/inet.c: Corrected an incorrect call to inet_validate in inet_getaddr. 1999-09-26 macgyver <macgyver> * doc/Configuration.html: Fixed a small typo. 1999-09-26 macgyver <macgyver> * ChangeLog: Added in a real ChangeLog. 1999-09-26 macgyver <macgyver> * modules/mod_core.c: Added in CommandBufferSize. 1999-09-26 macgyver <macgyver> * src/log.c: Corrected minor syslog errors. 1999-09-26 macgyver <macgyver> * src/dirtree.c: Fixed a C++ style comment. 1999-09-26 macgyver <macgyver> * doc/Configuration.html: Added in updated configuration directives. 1999-09-18 macgyver <macgyver> * : Cleaned up usage of fs_readlink. 1999-09-18 macgyver <macgyver> * src/pool.c, src/support.c: Minor code beautification. 1999-09-18 macgyver <macgyver> * modules/mod_ls.c: Fixed some bad code calling fs_readlink. 1999-09-17 macgyver <macgyver> * Makefile.in: Fixed symbolic link installation. 1999-09-17 macgyver <macgyver> * contrib/mod_ratio.c, include/support.h, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_xfer.c, src/auth.c, src/dirtree.c, src/log.c, src/main.c, src/pool.c, src/support.c: Implemented sstrncpy to handle proper buffer copying issues on all platforms. 1999-09-17 macgyver <macgyver> * modules/mod_ls.c: gcc cleanups. 1999-09-17 macgyver <macgyver> * modules/mod_log.c: Eliminated some potential problems with logging. 1999-09-17 macgyver <macgyver> * modules/mod_xfer.c: gcc cleanups and a more informative error message added. 1999-09-17 macgyver <macgyver> * src/log.c: More intelligent handling of logfiles to avoid a potential race condition. 1999-09-17 macgyver <macgyver> * modules/mod_core.c: General regex cleanups. Added AllowFilter/DenyFilter. More intelligent handling of logfiles. gcc cleanups. wu-ftp style logging of deleted files. 1999-09-17 macgyver <macgyver> * src/pool.c: Fixed gcc warnings. 1999-09-17 macgyver <macgyver> * src/main.c: Added AllowFilter/DenyFilter. Fixed a small typo with newlines. Corrected a slight problem with memory debugging. Fixed several gcc warnings. 1999-09-17 macgyver <macgyver> * include/inet.h, src/inet.c: Check for any potential DNS spoofing attacks from the outside. 1999-09-17 macgyver <macgyver> * include/version.h: Bumped version number. 1999-09-17 macgyver <macgyver> * sample-configurations/complex-virtual.conf: Added in a new sample configuration. 1999-09-17 macgyver <macgyver> * .cvsignore, contrib/.cvsignore: Added some more files to ignore. 1999-09-16 macgyver <macgyver> * src/main.c: Changed an argument reversal. 1999-09-16 macgyver <macgyver> * src/log.c: Cleaned up some ugly code. 1999-09-16 macgyver <macgyver> * src/main.c: Fixed a silly, yet insidious, way to overflow a buffer. 1999-09-14 macgyver <macgyver> * modules/mod_xfer.c: Corrected a minor typo .in -> .in. 1999-09-14 macgyver <macgyver> * include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c: Implemented HiddenStor. 1999-09-12 macgyver <macgyver> * README.Solaris2.5x: Additional information regarding Solaris 2.5.x systems added. 1999-09-12 macgyver <macgyver> * config.h.in, configure, configure.in, include/conf.h, src/log.c: Added in support for utmpx under Solaris and like-minded platforms. 1999-09-12 macgyver <macgyver> * doc/Configuration.html: Added configuration documentation and 'un' documentation. 1999-09-12 macgyver <macgyver> * contrib/mod_ratio.c, modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c: Initial import of GetConf, and slight cleanup in all modules. 1999-09-12 macgyver <macgyver> * include/version.h: Corrected versioning info. 1999-09-11 macgyver <macgyver> * configure, configure.in: Forgot the 'id' issue. 1999-09-11 macgyver <macgyver> * configure, configure.in: A couple of more configure fixes. 1999-09-10 macgyver <macgyver> * README.PAM, src/log.c: Added PAM README, and modified log.c to handle log_xfer more like WU-FTPd. 1999-09-10 macgyver <macgyver> * INSTALL, README: Moved PAM into the main module set. It's now a 'core' feature. 1999-09-10 macgyver <macgyver> * src/main.c: Added CommandBufferSize option. 1999-09-10 macgyver <macgyver> * configure, configure.in: Fixed a small typo with shadow use. 1999-09-10 macgyver <macgyver> * configure, configure.in: Updated support for Solaris, and made PAM sleep quietly when told to do so. 1999-09-10 macgyver <macgyver> * src/support.c: Fixed remaining buffer issues in sreplace. 1999-09-10 macgyver <macgyver> * src/pool.c: Corrected alignment issues on 64-bit platforms. Thanks to Todd C. Miller <millert@ee.ethz.ch> for the patch. 1999-09-10 macgyver <macgyver> * src/pool.c: Fix for improper strncpy. 1999-09-09 macgyver <macgyver> * src/support.c: Corrected a length bug in sreplace. 1999-09-08 macgyver <macgyver> * configure, configure.in: Updates to auto-configuring for PAM on *BSD. 1999-09-08 macgyver <macgyver> * configure, configure.in: Fixed setproctitle detection on *BSD platforms. 1999-09-08 macgyver <macgyver> * configure, configure.in: Fixed an extra 'fi' statement. 1999-09-08 macgyver <macgyver> * configure, configure.in: Fixed a small typo in PAM detection. 1999-09-08 macgyver <macgyver> * Make.rules.in, config.h.in: Added memory debugging support. 1999-09-08 macgyver <macgyver> * modules/Makefile.in: Updated for mod_mysql. 1999-09-08 macgyver <macgyver> * config.guess: Added in StrongARM support. 1999-09-08 macgyver <macgyver> * src/main.c: Added in some debugging code to assist in tracking down memory problems. 1999-09-08 macgyver <macgyver> * src/pool.c: Fixed a couple of bugs introduced by silly typos. 1999-09-08 macgyver <macgyver> * src/log.c: Minor buffer cleanups. 1999-09-08 macgyver <macgyver> * src/inet.c: Added a helper message for people who misconfigure their servers. 1999-09-07 macgyver <macgyver> * Makefile.in, config.h.in, configure, configure.in, include/dirtree.h, include/version.h, src/dirtree.c, src/inet.c, src/log.c, src/main.c, src/modules.c, src/pool.c, src/support.c: Removed lots of unsafe buffer copies, as well as addressed a couple of Y2K issues. 1999-09-07 macgyver <macgyver> * contrib/.cvsignore: Removed README.linux-privs 1999-09-07 macgyver <macgyver> * contrib/mod_ratio.c: Fixed some potential buffer issues. 1999-09-07 macgyver <macgyver> * modules/mod_auth.c, modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c, modules/mod_xfer.c: Removed unsafe buffer copies that may have been potential problems. Implemented the 'real' patch for the MKD/log security issues. 1999-09-07 macgyver <macgyver> * modules/mod_core.c: Added in Bandwidth patch for bandwidth control. Security cleanups -- removed lots of unsafe buffer copies. 1999-09-07 macgyver <macgyver> * modules/Makefile.in: Updated Makefile for new capabilities code. 1999-08-31 flood <flood> * include/options.h, include/pool.h, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/log.c, src/main.c, src/modules.c, src/pool.c: Mucho patches. 1999-03-12 flood <flood> * modules/mod_xfer.c: TYPE A N 1999-03-12 flood <flood> * src/inet.c: OpenBSD SO_REUSEADDR patch. 1999-03-10 flood <flood> * include/version.h: Version 1.2.0pre3 1999-03-07 flood <flood> * include/proftpd.h, modules/mod_core.c, src/dirtree.c, src/main.c: Added `MultilineRFC2228' directive and changed `ServerIdent'. 1999-03-05 flood <flood> * modules/mod_xfer.c, src/timers.c: Oops. Last nights commit royally screwed timers. 1999-03-05 flood <flood> * Make.rules.in, Makefile.in, acconfig.h, config.h.in, configure, configure.in, include/proftpd.h, modules/Makefile.in, modules/mod_core.c, src/data.c, src/main.c: MacGyver's patch to do argv[] rewriting the Right Way<tm>, and some minor socket error handling fixes. 1999-03-05 flood <flood> * modules/mod_xfer.c, src/ident.c, src/main.c: Fixed ident & i/o (hanging) problems. 1999-03-05 flood <flood> * modules/mod_xfer.c: what did I fix? 1999-03-05 flood <flood> * include/timers.h, modules/mod_auth.c, src/main.c, src/support.c, src/timers.c: timer code fixed 1999-02-14 flood <flood> * modules/mod_ls.c: Ugg.. Yet another mod_ls quickfix. 1999-02-14 flood <flood> * modules/mod_auth.c: Ooops. add_userdir should have tested for > 0. 1999-02-14 flood <flood> * include/version.h: Version 1.2.0pre2 1999-02-12 flood <flood> * Makefile.in, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c, src/main.c: Mondo changes. 1999-01-27 flood <flood> * include/support.h, modules/mod_ls.c, src/support.c: More possibly MKD/CWD 'sploits fixed, and mod_ls workin well. 1999-01-21 flood <flood> * modules/mod_ls.c, src/ident.c: NLST now works properly! woo! 1999-01-19 flood <flood> * include/data.h, modules/mod_ls.c, src/data.c, src/main.c: Still working on NLST RFC959 compliane issue. ncftp client still showing problems. 1998-11-01 flood <flood> * configure, configure.in, contrib/README, contrib/mod_ratio.c, contrib/mod_readme.c, include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c, src/dirtree.c: APPE, mod_pam & mod_readme added 1998-10-30 flood <flood> * include/proftpd.h, modules/mod_log.c, src/main.c: Fix Debian bug #28641 1998-10-30 flood <flood> * modules/mod_core.c, src/data.c: Fixes to PASV/PORT. 1998-10-27 flood <flood> * modules/mod_log.c: %{} argument fix in mod_log.c 1998-10-23 flood <flood> * include/pool.h, modules/mod_ls.c, src/main.c, src/pool.c: memory leak in mod_ls fixed 1998-10-18 flood <flood> * Imported source for proftpd 1.2.0