[proftpd-dfsg] 01/03: Imported Upstream version 1.3.5d
Francesco Lovergine
frankie at moszumanska.debian.org
Tue Jan 31 09:32:52 GMT 2017
This is an automated email from the git hooks/post-receive script.
frankie pushed a commit to branch master
in repository proftpd-dfsg.
commit 9317ad0c54c5d5f6a5d62f514232fb6729487a13
Author: Francesco Paolo Lovergine <frankie at debian.org>
Date: Tue Jan 31 10:28:39 2017 +0100
Imported Upstream version 1.3.5d
---
.github/CONTRIBUTING.md | 40 +
.gitignore | 1 +
.travis.yml | 1 +
ChangeLog | 68119 ++++++++++++++++++----------------------
NEWS | 21 +
RELEASE_NOTES | 16 +
configure | 86 +-
configure.in | 46 +-
contrib/dist/rpm/proftpd.spec | 4 +-
contrib/mod_ldap.c | 21 +-
contrib/mod_sftp/cipher.c | 113 +-
contrib/mod_sftp/cipher.h | 7 +-
contrib/mod_sftp/compress.c | 4 +-
contrib/mod_sftp/crypto.c | 171 +-
contrib/mod_sftp/fxp.c | 18 +-
contrib/mod_sftp/kbdint.c | 8 +-
contrib/mod_sftp/kex.c | 463 +-
contrib/mod_sftp/keys.c | 389 +-
contrib/mod_sftp/mac.c | 164 +-
contrib/mod_sftp/mod_sftp.c | 6 +-
contrib/mod_sftp/msg.c | 41 +-
contrib/mod_sftp/packet.c | 2 +
contrib/mod_sftp/scp.c | 38 +-
contrib/mod_sql.c | 16 +-
contrib/mod_sql_mysql.c | 15 +-
contrib/mod_sql_passwd.c | 35 +-
contrib/mod_sql_sqlite.c | 51 +-
contrib/mod_tls.c | 615 +-
contrib/mod_tls.h | 2 +-
contrib/mod_tls_shmcache.c | 18 +-
doc/modules/mod_auth.html | 149 +-
include/version.h | 4 +-
modules/mod_auth.c | 19 +-
modules/mod_cap.c | 12 +-
modules/mod_facl.c | 229 +-
modules/mod_facts.c | 23 +-
modules/mod_ls.c | 48 +-
modules/mod_xfer.c | 3 +
src/auth.c | 160 +-
src/data.c | 17 +-
src/fsio.c | 10 +-
src/memcache.c | 9 +
src/response.c | 28 +-
src/table.c | 10 +-
tests/api/netacl.c | 26 +-
tests/api/netaddr.c | 10 +-
46 files changed, 32568 insertions(+), 38720 deletions(-)
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
new file mode 100644
index 0000000..d3d0fc3
--- /dev/null
+++ b/.github/CONTRIBUTING.md
@@ -0,0 +1,40 @@
+How to contribute to ProFTPD
+============================
+
+Join the community!
+-------------------
+
+ 1. Subscribe to the appropriate [mailing lists](http://www.proftpd.org/lists.html)
+
+ 2. Join the online [forums](https://forums.proftpd.org/smf/index.php)
+
+ 3. Click 'watch' on the github repo
+
+
+Provide feedback on the latest versions
+---------------------------------------
+
+ 1. Periodically check out the [master branch], compile and run it in your environment, make sure it behaves as you expect/desire. If not, let us know!
+
+ 2. Download the source archive, compile and run it in your environment, make sure it behaves as you expect/desire. If not, let us know!
+
+
+Help educate other users about using ProFTPD
+--------------------------------------------
+
+ 1. Help answer other users' questions about ProFTPD, FTP, _etc_ on the mailing lists, forums, on [StackOverflow](http://stackoverflow.com/questions/tagged/proftpd), [ServerFault](http://serverfault.com/questions/tagged/proftpd), and other sites.
+
+ 2. Write blog posts, contribute howtos or writeups on your ProFTPD use cases and configuration, lessons learned, _etc_.
+
+
+Send your suggestions/ideas using one of these methods
+------------------------------------------------------
+
+ 1. In an email to the mailing list
+
+ 2. As a [pull request](https://github.com/proftpd/proftpd/pulls)
+
+ 3. As an [issue](https://github.com/proftpd/proftpd/issues)
+
+
+**Thanks!** - _The ProFTPD Project Team_
diff --git a/.gitignore b/.gitignore
index 08130ea..cdabacf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+.github
config.log
config.h
config.cache
diff --git a/.travis.yml b/.travis.yml
index 0f1106a..c06191f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,3 +1,4 @@
+env: TRAVIS_CI=true
language: c
compiler:
diff --git a/ChangeLog b/ChangeLog
index 9e61a2b..c428735 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,55025 +1,47358 @@
-2014-05-15 08:53 castaglia
+2016-03-11 TJ Saunders <tj at castaglia.org>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing files for release.
+ * RELEASE_NOTES: Updated release notes to mention DH selection
+ issue.
-2014-05-15 08:51 castaglia
+2016-03-10 TJ Saunders <tj at castaglia.org>
- * locale/files.txt:
- Updated list of files for localization.
+ * NEWS: Update NEWS with release date.
-2014-05-09 07:52 castaglia
+2016-03-10 TJ Saunders <tj at castaglia.org>
- * RELEASE_NOTES:
- Fleshing out release notes for upcoming release.
+ * contrib/dist/rpm/proftpd.spec: Update rpm .spec file for 1.3.5b
+ release.
-2014-05-05 09:15 castaglia
+2016-03-10 TJ Saunders <tj at castaglia.org>
- * 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.
+ * RELEASE_NOTES: Preparing release notes for a 1.3.5b release.
-2014-05-04 16:15 castaglia
+2016-03-10 TJ Saunders <tj at castaglia.org>
- * doc/contrib/mod_sql_passwd.html:
- Updated SQLPasswordPBKDF2 docs in light of Bug#4052.
+ * contrib/mod_tls.c: Fix build errors; used wrong variable name, and
+ pushed without building. Shame.
-2014-05-04 16:11 castaglia
+2016-03-10 TJ Saunders <tj at castaglia.org>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm:
- Added regression test for Bug#4052.
+ * NEWS, contrib/mod_tls.c: Backport of fix for Bug#4230 to 1.3.5
+ branch.
-2014-05-04 16:11 castaglia
+2016-02-23 TJ Saunders <tj at castaglia.org>
- * NEWS, contrib/mod_sql_passwd.c:
- Bug#4052 - Enhance SQLPasswordPBKDF2 to support per-user query
- for settings.
+ * NEWS: Adding mention of backport of fix for Bug#4227.
-2014-05-04 12:49 castaglia
+2016-02-22 TJ Saunders <tj at castaglia.org>
- * doc/contrib/mod_site_misc.html:
- Emphasize that both acces and mod times are set by SITE UTIME.
+ * contrib/mod_sftp/fxp.c: Bug#4227: Support SFTP clients that send
+ multiple INIT requests.
-2014-05-04 12:27 castaglia
+2016-01-26 TJ Saunders <tj at castaglia.org>
- * NEWS, modules/mod_facl.c:
- Backport of fix for Bug#4044 to 1.3.4 branch.
+ * NEWS: Update NEWS with backport of fix for Bug#4223.
-2014-05-04 12:26 castaglia
+2016-01-26 TJ Saunders <tj at castaglia.org>
- * NEWS, modules/mod_facl.c:
- Bug#4044 - mod_facl prevents a normal SIGHUP reload.
+ * modules/mod_xfer.c: Bug#4223: Permissions on files uploaded via
+ STOU do not honor configured Umask.
-2014-05-03 15:19 castaglia
+2016-01-15 TJ Saunders <tj at castaglia.org>
- * NEWS, modules/mod_core.c:
- Backport of fix for Bug#4042 to 1.3.4 branch.
+ * NEWS: Update NEWS for backport of fix for Bug#4217.
-2014-05-03 15:18 castaglia
+2016-01-15 TJ Saunders <tj at castaglia.org>
- * NEWS, modules/mod_core.c:
- Bug#4042 - MIC command between RNFR and RNTO should not be
- rejected.
+ * modules/mod_auth.c: Address Bug#4217, as requested, to be slightly
+ more indicative, via response codes and messages, of the issue with
+ reauthentication.
-2014-05-02 14:13 castaglia
+2016-01-03 TJ Saunders <tj at castaglia.org>
- * NEWS, contrib/mod_exec.c:
- Bug#4049 - mod_exec should include supplemental groups when
- running commands as logged-in user.
+ * 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.
-2014-04-30 10:33 castaglia
+2015-12-17 TJ Saunders <tj at castaglia.org>
- * 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.
+ * Make.rules.in, lib/Makefile.in, modules/Makefile.in,
+ src/Makefile.in, src/ftpscrub.c, utils/Makefile.in: Backport the fix
+ for the 'make dist' target to the 1.3.5 branch.
-2014-04-30 08:58 castaglia
+2015-12-14 TJ Saunders <tj at castaglia.org>
- * NEWS, contrib/mod_ban.c:
- Backport of fix for Bug#4048 to 1.3.4 branch.
+ * NEWS: Update NEWS with backport of fix for Bug#4212.
-2014-04-30 08:56 castaglia
+2015-12-11 TJ Saunders <tj at castaglia.org>
- * NEWS, contrib/mod_ban.c:
- Bug#4048 - Race condition in mod_ban can lead to segfault of all
- new connections.
+ * modules/mod_facts.c: Make sure we handle the same issue for MLSD
+ commands, too.
-2014-04-28 10:12 castaglia
+2015-12-11 TJ Saunders <tj at castaglia.org>
- * modules/mod_xfer.c:
- Backporting tweaks from Bug#4046 in trunk to 1.3.4 branch.
+ * 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.
-2014-04-28 10:11 castaglia
+2015-12-11 TJ Saunders <tj at castaglia.org>
- * 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.
+ * contrib/mod_ldap.c: Fix mod_ldap build issue when building against
+ e.g. OpenLDAP-2.3.x.
-2014-04-28 10:06 castaglia
+2015-12-10 TJ Saunders <tj at castaglia.org>
- * NEWS, modules/mod_xfer.c:
- Backport of fix for Bug#4046 to 1.3.4 branch.
+ * modules/mod_auth.c: Provide slightly more informative message
+ about active data transfers being affected by "RootRevoke on".
-2014-04-28 10:05 castaglia
+2015-12-10 TJ Saunders <tj at castaglia.org>
- * NEWS, modules/mod_xfer.c:
- Bug#4046 - ALLO command failed because of bad size check.
+ * lib/tpl.c: Remove unused variables and prevent compiler warnings
+ on Mac OSX (and probably others).
-2014-03-26 11:22 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * doc/howto/TLS.html:
- Typo.
+ * contrib/mod_sftp/kbdint.c: Remove now-unneeded cast.
-2014-03-19 08:35 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * 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.
+ * NEWS: Updated NEWS with backport of fix for Bug#4210.
-2014-03-13 11:06 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * doc/howto/Chroot.html:
- Fix broken link, per Bug#4038.
+ * contrib/mod_sftp/fxp.c: Correct the parameters to talk of
+ "extended attributes", not SFTP extensions.
-2014-03-08 09:46 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * 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.
+ * contrib/mod_sftp/fxp.c: Bug#4210 - Avoid unbounded SFTP extension
+ key/values.
-2014-03-08 09:44 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * 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.
+ * NEWS: Backport of fix for Bug#4209 to 1.3.5 branch.
-2014-03-08 08:58 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * NEWS, contrib/mod_tls.c:
- Bug#4024 - TLS 1.1/1.2 configurable, but not properly
- implemented.
+ * src/pool.c: Bug#4209 - Zero-length memory allocation possible,
+ with undefined results.
-2014-03-05 09:43 castaglia
+2015-11-28 TJ Saunders <tj at castaglia.org>
- * contrib/mod_tls.c:
- When seeing OpenSSL's PRNG manually, use gettimeofday(2) rather
- than time(3).
+ * contrib/mod_sftp/kbdint.c, contrib/mod_sftp/mod_sftp.h.in,
+ contrib/mod_sftp_pam.c: Avoid possible signedness mismatch when
+ comparing the expected/received number of SSH keyboard-interactive
+ challenge responses.
-2014-03-05 09:43 castaglia
+2015-08-26 tjsaunders <tj at lyveminds.com>
- * contrib/mod_tls.c:
- When seeding OpenSSL's PRNG manually, use gettimeofday(2) instead
- of time(3).
+ * NEWS, modules/mod_facts.c: Backport of fix for Bug#4202 to 1.3.5
+ branch.
-2014-03-03 23:56 castaglia
+2015-08-18 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_sftp/auth.c:
- Backport of fix for Bug#4034 to 1.3.4 branch.
+ * NEWS, contrib/mod_sftp/scp.c: Backporting the fix for Bug#4201 to
+ the 1.3.5 branch.
-2014-03-03 23:54 castaglia
+2015-08-15 tjsaunders <tj at lyveminds.com>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression tests for Bug#4034.
+ * configure, configure.in: Backporting configure changes from
+ master, for detecting when to add the -pthread flag, e.g. when using
+ OpenSSL on FreeBSD.
-2014-03-03 23:54 castaglia
+2015-08-15 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_sftp/auth.c:
- Bug#4034 - SSH publickey authentication fails with
- "MaxLoginAttempts 1".
+ * contrib/mod_sftp/utf8.c, src/encode.c, src/inet.c, src/support.c:
+ Backporting fixes/changes for DARWIN12 from master to 1.3.5.
-2014-03-02 21:40 castaglia
+2015-08-12 tjsaunders <tj at lyveminds.com>
- * 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.
+ * src/main.c: Backporting errno handling fix from master.
-2014-03-02 14:11 castaglia
+2015-08-12 tjsaunders <tj at lyveminds.com>
- * doc/contrib/mod_sftp.html:
- Document the AllowInsecureLogin SFTPOption.
+ * src/main.c: Make sure to clear out any cached errno, too.
-2014-03-02 14:05 castaglia
+2015-08-12 tjsaunders <tj at lyveminds.com>
- * contrib/mod_sftp/: auth-kbdint.c, auth-password.c, mod_sftp.c,
- 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).
+ * src/main.c: Make sure to clear any possibly-cached errno value in
+ the main select() loop.
-2014-03-02 08:55 castaglia
+2015-08-09 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_sftp/mod_sftp.c:
- Backport of fix for Bug#4032 to 1.3.4 branch.
+ * contrib/mod_sftp/kex.c: Backport a tweak from master, with regard
+ to the timing of logging of the NEWKEYS command.
-2014-03-02 08:49 castaglia
+2015-08-06 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_sftp/mod_sftp.c:
- Bug#4032 - Restarting proftpd with mod_sftp fails due to
- permissions on SFTPHostKey file.
+ * NEWS, modules/mod_facts.c: Bug#4198 - MLSD/MLST fact type "cdir"
+ is incorrectly used for the current working directory. Conflicts: modules/mod_facts.c
-2014-03-01 22:09 castaglia
+2015-07-28 tjsaunders <tj at lyveminds.com>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Fix the mod_sftp regression tests which SHOULD have caught
- Bug#4033.
+ * NEWS, contrib/mod_sftp/kex.c, contrib/mod_sftp/keys.c: Backport of
+ the fix for Bug#4097 to the 1.3.5 branch.
-2014-03-01 22:07 castaglia
+2015-07-25 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_sftp/cipher.c:
- Bug#4033 - mod_sftp fails to create SSH2 session using 'none'
- cipher.
+ * 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.
-2014-03-01 09:34 castaglia
+2015-07-25 tjsaunders <tj at lyveminds.com>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm:
- Added regression test for Bug#3938.
+ * src/fsio.c, tests/api/fsio.c: Bug#4194: Add more checks for empty
+ paths in pr_fs_dircat().
-2014-03-01 09:34 castaglia
+2015-07-25 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Bug#3938 - mod_wrap2 uses reverse DNS regardless "UseReverseDNS
- off".
+ * tests/api/str.c: Bug#4193 - Out of bounds read in tests/api/str.c.
-2014-02-28 10:11 castaglia
+2015-07-24 tjsaunders <tj at lyveminds.com>
- * tests/: tests.pl, t/config/passiveports.t,
- t/lib/ProFTPD/Tests/Config/PassivePorts.pm:
- Added regression tests for the PassivePorts directive in various
- configuration contexts, i.e. "server config", <Global>, and
- <VirtualHost>.
+ * modules/mod_log.c: More backporting of fixes from master, with
+ regard to using the "default" LogFormat, whilst still allowing
+ configs to override that using "default" as a nickname if they wish.
-2014-02-28 07:18 castaglia
+2015-07-24 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_tls.c:
- Bug#4029 - TLSOptions EnableDiags logs "unknown version (771)"
- for TLS 1.1/1.2 connections.
+ * modules/mod_log.c: Backport the fix for looking/using the default
+ LogFormat, from master.
-2014-02-23 10:29 castaglia
+2015-07-17 TJ Saunders <tj at castaglia.org>
- * contrib/mod_ban.c:
- Minor name/string change; no functional change.
+ * contrib/mod_sftp/keys.c, contrib/mod_sftp/mod_sftp.c: Fix handling
+ of just ECDSA SSH host keys in mod_sftp; backported the code from
+ master.
-2014-02-23 10:07 castaglia
+2015-07-17 tjsaunders <tj at lyveminds.com>
- * 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.
+ * NEWS: Update NEWS for backport of fix for Bug#4191.
-2014-02-23 09:11 castaglia
+2015-07-15 TJ Saunders <tj at castaglia.org>
- * doc/contrib/mod_ban.html:
- Added support for RootLogin bans.
+ * 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.
-2014-02-23 09:10 castaglia
+2015-05-31 TJ Saunders <tj at castaglia.org>
- * 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.
+ * NEWS: Updating NEWS for backport of fix for Bug#4187.
-2014-02-20 22:06 castaglia
+2015-05-30 TJ Saunders <tj at castaglia.org>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding reproduction recipe/regression test for Bug#4026.
+ * contrib/mod_geoip.c: Bug#4187 - mod_geoip does not load all of the
+ GeoIPTables properly.
-2014-02-19 14:53 castaglia
+2015-05-27 tjsaunders <tj at lyveminds.com>
- * doc/contrib/mod_sftp.html:
- Add "Cipher Implementations" section to "Known Client Issues",
- noting that SBB clients don't handle the blowfish-ctr cipher.
+ * include/version.h: Update files for maint status.
-2014-02-18 11:28 castaglia
+2015-05-27 tjsaunders <tj at lyveminds.com>
- * doc/contrib/mod_sftp.html:
- Fix typo/misnamed cipher in list.
+ * NEWS, contrib/dist/rpm/proftpd.spec: Warming up for pending 1.3.5a
+ maint release.
-2014-02-15 10:54 castaglia
+2015-04-29 tjsaunders <tj at lyveminds.com>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Adding regression test for Bug#4025.
+ * NEWS: Update NEWS for backport of fix for Bug#4178.
-2014-02-15 10:53 castaglia
+2015-04-29 tjsaunders <tj at lyveminds.com>
- * NEWS, contrib/mod_ifsession.c:
- Bug#4025 - <IfClass> sections do not work for multiple SQLLog
- directives.
+ * contrib/mod_tls.c: Bug#4178: When accepting a TLS connection for
+ data transfers, disable the storing of session IDs in the session
+ cache; we want to require that all data connections reuse the
+ session ID from the control connection, not add their own sessions.
+ If the NoSessionReuseRequired option is used, then it doesn't matter
+ whether we add data connection session IDs to the cache or not; if
+ that option is NOT used, then we only want sessions in the cache
+ that have been added for control connections. But we DO want to support lookup of session IDs in the session cache
+ for data connections (to enforce session reuse). Thus we toggle the
+ OpenSSL SSL_SESS_CACHE_NO_INTERNAL_STORE flag for the duration of a
+ data connection TLS handshake.
-2014-02-15 00:31 castaglia
+2015-04-28 tjsaunders <tj at lyveminds.com>
- * 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.
+ * src/data.c: Fix segfault due to null pointer dereference. Conflicts: src/data.c
-2014-02-14 21:22 castaglia
+2015-04-22 TJ Saunders <tj at castaglia.org>
- * 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.
+ * contrib/mod_copy.c, include/cmd.h: Fix broken build by removing
+ references to function that has not been backported to the 1.3.5
+ branch.
-2014-02-11 07:21 castaglia
+2015-04-22 TJ Saunders <tj at castaglia.org>
- * NEWS, src/fsio.c:
- Backport of fix for Bug#4022 to 1.3.4 branch.
+ * src/privs.c: Change the logging priority based on errno
+ consistently.
-2014-02-11 07:17 castaglia
+2015-04-07 tjsaunders <tj at lyveminds.com>
- * NEWS, src/fsio.c:
- Bug#4022 - "Directory not empty" error when creating directory is
- misleading.
+ * contrib/mod_copy.c, modules/mod_core.c, modules/mod_xfer.c:
+ Updating modules to use the PR_ prefixed macros.
-2014-02-11 07:17 castaglia
+2015-04-07 tjsaunders <tj at lyveminds.com>
- * src/stash.c:
- Fix minor compiler warning when --enable-devel is used.
+ * RELEASE_NOTES: Update release notes for pending maint release.
-2014-02-09 12:42 castaglia
+2015-04-07 tjsaunders <tj at lyveminds.com>
- * 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.
+ * src/inet.c: Backporting fix from master, for compiling when the
+ --disable-ipv6 compile-time option is used.
-2014-02-09 11:41 castaglia
+2015-04-07 tjsaunders <tj at lyveminds.com>
- * 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.
+ * NEWS: Update NEWS for backport of fix for Bug#4169.
-2014-02-09 11:34 castaglia
+2015-04-06 TJ Saunders <tj at castaglia.org>
- * src/fsio.c:
- Add more logging of error conditions in the pr_fsio_smkdir()
- function, for better diagnosing some reported MKD errors.
+ * RELEASE_NOTES, contrib/mod_copy.c, doc/contrib/mod_copy.html,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm: Turns out that
+ mod_copy inadvertently allows unauthenticated copying. Worse, it
+ does not provide an Engine directive for disabling the module in
+ builds that have it enabled. Conflicts: RELEASE_NOTES doc/contrib/mod_copy.html
-2014-02-09 10:42 castaglia
+2015-04-05 TJ Saunders <tj at castaglia.org>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Yet another data point/reproduction recipe for Bug#4017.
+ * contrib/mod_sftp/mac.c: Fix typo/bug, backported from master.
-2014-02-08 08:45 castaglia
+2015-04-05 TJ Saunders <tj at castaglia.org>
- * tests/t/lib/ProFTPD/Tests/Config/SocketOptions.pm:
- Add basic test for SocketOption keepalive.
+ * contrib/mod_sftp/kbdint.c: Backport fix for memory leak when
+ handling 'keyboard-interactive' SSH authentication.
-2014-02-04 16:17 castaglia
+2015-04-02 TJ Saunders <tj at castaglia.org>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Additional regression/reproduction recipe for Bug#4017, this time
- using PCRE regexes.
+ * modules/mod_ls.c: Backporting fix from master, with regard to
+ ASCII translation of emitted directory listings.
-2014-02-03 11:31 castaglia
+2015-03-31 tjsaunders <tj at lyveminds.com>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Regression test/reproduction recipe for Bug#4017.
+ * contrib/mod_sftp/fxp.c: Backporting fix from the investigation for
+ Bug#4166, to prevent memory leaking during handling of SFTP REMOVE
+ requests.
-2014-02-01 13:43 castaglia
+2015-03-31 tjsaunders <tj at lyveminds.com>
- * 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.
+ * src/bindings.c: Make namebind create/open failures less noisy, as
+ part of backporting part of the fix from master.
-2014-01-31 09:29 castaglia
+2015-03-16 TJ Saunders <tj at castaglia.org>
- * 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 09:08 castaglia
+ * tests/api/fsio.c: Fix the FSIO unit tests for 1.3.5.
- * doc/modules/mod_rlimit.html:
- Add description for new RLimitChroot directive to mod_rlimit
- docs.
+2015-03-15 tjsaunders <tj at lyveminds.com>
-2014-01-31 09:06 castaglia
+ * NEWS: Update NEWS with backport of fix for Bug#4160.
- * src/fsio.c:
- Match URLs for "Roaring Beast" reports.
+2015-03-15 tjsaunders <tj at lyveminds.com>
-2014-01-31 08:53 castaglia
+ * contrib/mod_sftp/fxp.c: Bug#4160 - Malformed response to
+ SSH_FXP_REALPATH with SFTP version 6.
- * tests/: tests.pl, t/config/rlimitchroot.t,
- t/lib/ProFTPD/Tests/Config/RLimitChroot.pm:
- Adding regression tests for the new RLimitChroot directive.
+2015-03-14 tjsaunders <tj at lyveminds.com>
-2014-01-31 08:52 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4156.
- * NEWS, RELEASE_NOTES, include/fsio.h, modules/mod_rlimit.c,
- src/fsio.c:
- Bug#4018 - Implement checks for sensitive directories when
- chrooted.
+2015-03-01 TJ Saunders <tj at castaglia.org>
-2014-01-30 08:50 castaglia
+ * 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. Conflicts: tests/api/fsio.c
- * doc/modules/mod_core.html:
- Add description of SocketBindTight directive to mod_core docs,
- and include FAQ about using it.
+2015-02-27 TJ Saunders <tj at castaglia.org>
-2014-01-29 11:50 castaglia
+ * lib/pr_fnmatch_loop.c: Backport glibc fix for a memory overread
+ for certain fnmatch patterns.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm:
- Adding regression/reproduction recipe for Bug#4017.
+2015-02-19 TJ Saunders <tj at castaglia.org>
-2014-01-28 20:32 castaglia
+ * 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.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Fix broken (only on MacOSX) test.
+2015-02-17 tjsaunders <tj at lyveminds.com>
-2014-01-28 19:49 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4155.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Minor tweaks while investigating Bug#3638.
+2015-02-17 TJ Saunders <tj at castaglia.org>
-2014-01-28 18:16 castaglia
+ * contrib/mod_sftp_sql.c: No, it should be "Subject: ", not
+ "Comment: "; these are 2 different headers defined by RFC 4716.
- * 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.
+2015-02-17 TJ Saunders <tj at castaglia.org>
-2014-01-28 16:07 castaglia
+ * contrib/mod_sftp_sql.c: Bug#4155 - SSH keys with too-long Comment
+ headers aren't recognized by mod_sftp_sql. Conflicts: contrib/mod_sftp_sql.c
- * contrib/mod_sftp/crypto.c:
- Make sure that mod_sftp can compile when using an older OpenSSL
- version. Tested against openssl-0.9.6b.
+2015-02-17 tjsaunders <tj at lyveminds.com>
-2014-01-28 10:08 castaglia
+ * modules/mod_ls.c: Backporting fix from master branch.
- * include/version.h:
- Updating version for CVS.
+2015-02-04 tjsaunders <tj at lyveminds.com>
-2014-01-28 09:42 castaglia
+ * NEWS: Update NEWS with backport of fix for Bug#4152.
- * ChangeLog:
- Updated ChangeLog.
+2015-02-04 tjsaunders <tj at lyveminds.com>
-2014-01-28 09:40 castaglia
+ * src/main.c: Change the ordering, so that we can short-circuit the
+ checks faster.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Prepping files for RC.
+2015-02-04 tjsaunders <tj at lyveminds.com>
-2014-01-28 09:26 castaglia
+ * src/main.c: Bug#4152 - Reduce logging of non-fatal "unable to open
+ incoming connection" errors.
- * contrib/mod_sftp/: crypto.c, keys.c, umac.c:
- Allow mod_sftp to be compiled using an old version of OpenSSL,
- e.g. OpenSSL-0.9.6. Fixes Bug#4016.
+2015-02-03 tjsaunders <tj at lyveminds.com>
-2014-01-28 08:58 castaglia
+ * src/data.c: Clear the "have dangling CR" flag on data reset as
+ well.
- * contrib/mod_tls.c:
- Enable mod_tls to be built using old OpenSSL version; tested
- using OpenSSL-0.9.6h.
+2015-02-03 tjsaunders <tj at lyveminds.com>
-2014-01-27 14:08 castaglia
+ * src/data.c: Reset any ASCII transformation state, possibly
+ leftover from previous transfers, when preparing for a data transfer
+ (Bug#4150).
- * doc/contrib/mod_quotatab.html:
- Try to make the Installation notes for mod_quotatab a little
- clearer.
+2015-02-03 tjsaunders <tj at lyveminds.com>
-2014-01-27 13:41 castaglia
+ * NEWS: Update NEWS with backport of fix for Bug#4145.
- * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm:
- Quell compiler warning about redefined variables.
+2015-02-03 TJ Saunders <tj at castaglia.org>
-2014-01-27 10:46 castaglia
+ * modules/mod_auth_file.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Bug#4145 -
+ Segfault if AuthUserFile is a relative symlink.
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Quell compiler warning about overloaded variables.
+2014-12-15 TJ Saunders <tj at castaglia.org>
-2014-01-27 10:42 castaglia
+ * NEWS: Update NEWS with backport of fix for Bug#4143.
- * 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-12-15 tjsaunders <tj at lyveminds.com>
-2014-01-27 10:34 castaglia
+ * src/cmd.c, src/main.c: Update the comments with the appropriate
+ bug number.
- * 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-12-14 TJ Saunders <tj at castaglia.org>
-2014-01-27 10:31 castaglia
+ * 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. Conflicts: include/cmd.h
- * tests/api/netaddr.c:
- Make the INCL_DEVICE API test a little more resilient by
- providing some fallback device names.
+2014-12-08 TJ Saunders <tj at castaglia.org>
-2014-01-27 10:25 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4140.
- * 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-12-08 TJ Saunders <tj at castaglia.org>
-2014-01-27 09:59 castaglia
+ * contrib/mod_sftp/fxp.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#4140 - SFTP
+ READLINK requests to symlinks to directories fail.
- * tests/: Makefile.in, api/stubs.c:
- Make sure the API testsuite compiles properly when --enable-nls
- is used.
+2014-12-08 TJ Saunders <tj at castaglia.org>
-2014-01-27 09:32 castaglia
+ * NEWS: Remove duplicate entry in NEWS.
- * contrib/mod_snmp/db.c:
- Quell compiler warning about unused variable.
+2014-12-01 tjsaunders <tj at lyveminds.com>
-2014-01-26 17:28 castaglia
+ * NEWS: Backported fix for Bug#4137.
- * RELEASE_NOTES, doc/howto/Radius.html, doc/howto/index.html:
- Adding (finally!) RADIUS howto.
+2014-12-01 TJ Saunders <tj at castaglia.org>
-2014-01-26 09:50 castaglia
+ * contrib/mod_geoip.c: Add some additional logging, to help clarify
+ things.
- * contrib/mod_ban.c:
- Typo in comment; no functional change.
+2014-11-29 TJ Saunders <tj at castaglia.org>
-2014-01-25 08:39 castaglia
+ * contrib/mod_geoip.c: Bug#4137 - GeoIPDenyFilter incorrectly takes
+ precedence over GeoIPAllowFilter.
- * modules/mod_core.c:
- Make sure to handle the case where units aren't specified
- properly.
+2014-11-29 TJ Saunders <tj at castaglia.org>
-2014-01-25 08:34 castaglia
+ * config.h.in, configure, configure.in, src/ctrls.c: Issue #75: Add
+ configure-time check for struct sockpeercred (as used on OpenBSD
+ systems), and update the Controls API to use this.
- * 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-11-16 TJ Saunders <tj at castaglia.org>
-2014-01-24 08:00 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4133.
- * contrib/mod_tls.c:
- Backport of fix for Bug#4015 to 1.3.4 branch.
+2014-11-16 TJ Saunders <tj at castaglia.org>
-2014-01-24 07:56 castaglia
+ * contrib/mod_ldap.c: Bug#4133 - LDAPUsers directive does not honor
+ uid-number-filter-template parameter.
- * contrib/mod_tls.c:
- Bug#4015 - Possible bad/ambiguous expression found by static code
- analyzer cppcheck.
+2014-11-09 TJ Saunders <tj at castaglia.org>
-2014-01-22 09:51 castaglia
+ * NEWS, contrib/mod_sftp/configure: Update NEWS, regenerate mod_sftp
+ configure, for backport of fix for Bug#4131.
- * doc/howto/TLS.html:
- Updates to the TLS howto, adding some FAQs and noting that secure
- FXP transfers are now supported.
+2014-11-07 TJ Saunders <tj at castaglia.org>
-2014-01-22 09:14 castaglia
+ * contrib/mod_sftp/configure.in: Fix mod_sftp's autoconf script to
+ properly detect OpenSSL support for SHA2.
- * 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-11-03 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-21 22:40 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4129.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm:
- Update AuthGroupFile world-readable test to match changes to the
- permissions checking code.
+2014-11-03 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-21 22:39 castaglia
+ * contrib/mod_sql.c: Bug#4129 - mod_sql caches incorrect UID/GID
+ when name cannot be retrieved.
- * 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-10-27 TJ Saunders <tj at castaglia.org>
-2014-01-21 20:18 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4124.
- * doc/modules/mod_auth_file.html:
- Improve/expand on the FAQ about permissions.
+2014-10-27 TJ Saunders <tj at castaglia.org>
-2014-01-21 15:41 castaglia
+ * modules/mod_xfer.c: Bug#4124 - DeleteAbortedStores defaults to
+ "on" for all transfers, not just HiddenStores. Conflicts: modules/mod_xfer.c
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Adding regression test for Bug#4010 (which, I think, is actually
- a client bug).
+2014-10-23 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-21 14:44 castaglia
+ * NEWS: Updates NEWS with backport of fix for Bug#4116.
- * RELEASE_NOTES:
- Update release notes, getting them ready for a release.
+2014-10-22 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-21 14:39 castaglia
+ * contrib/mod_tls.c: Bug#4116 - Report exact SSL/TLS protocol
+ version used in client connections.
- * doc/contrib/mod_exec.html:
- Update the ExecOnEvent description to match the code.
+2014-10-22 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-21 14:32 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Backport the fixes for
+ Bug#4114 to the 1.3.5 branch.
- * doc/contrib/mod_sql.html:
- Note when the IgnoreConfigFile SQLOption first appeared.
+2014-10-19 TJ Saunders <tj at castaglia.org>
-2014-01-21 14:11 castaglia
+ * NEWS: Update NEWS for backport of Bug#4112.
- * doc/contrib/mod_ldap.html:
- Add description for LDAPLog directive to mod_ldap docs.
+2014-10-05 TJ Saunders <tj at castaglia.org>
-2014-01-20 12:51 castaglia
+ * 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.
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#4013 to 1.3.4 branch.
+2014-09-14 TJ Saunders <tj at castaglia.org>
-2014-01-20 12:50 castaglia
+ * 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
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Added regression test for Bug#4013.
+2014-09-28 TJ Saunders <tj at castaglia.org>
-2014-01-20 12:49 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4109.
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#4013 - SCP upload of shorter file does not completely
- overwrite existing file of same name.
+2014-09-28 TJ Saunders <tj at castaglia.org>
-2014-01-20 11:37 castaglia
+ * src/inet.c: Bug#4109 - setsockopt() call for IPV6_TCLASS should
+ use IPPROTO_IPV6.
- * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm:
- Adding regression tests for several NLST bugs, including
- Bug#4011.
+2014-09-23 TJ Saunders <tj at castaglia.org>
-2014-01-20 11:36 castaglia
+ * NEWS, RELEASE_NOTES: Update news, release notes for backported fix
+ for Bug#4108.
- * 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-09-23 TJ Saunders <tj at castaglia.org>
-2014-01-17 10:11 castaglia
+ * contrib/mod_tls.c: Bug#4108 - SSL handshakes for data connections
+ sometimes stall for 3-30 seconds.
- * configure:
- Updated configure.
+2014-08-11 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-17 10:04 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4094.
- * configure.in:
- Fix default location of datadir to be '/usr/local/share', not
- '/usr/locale/share'.
+2014-08-11 TJ Saunders <tj at castaglia.org>
-2014-01-16 22:11 castaglia
+ * doc/howto/DisplayFiles.html, src/display.c,
+ tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: Bug#4094 -
+ Available space on file system using %f displays wrong value.
- * 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-07-28 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-13 10:40 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4091.
- * 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-07-28 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-13 10:25 castaglia
+ * src/privs.c: Reduce the scope of the logging changes to just those
+ PRIVS calls related to the effective (rather than the real) IDs.
- * contrib/mod_sftp/mod_sftp.c:
- Backporting improvements to SFTPClientMatch handling from trunk
- to 1.3.4 branch.
+2014-07-27 TJ Saunders <tj at castaglia.org>
-2014-01-13 10:23 castaglia
+ * src/privs.c: Bug#4091 - Log "Operation not permitted" privs errors
+ at NOTICE rather than ERROR.
- * 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-07-25 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-07 23:24 castaglia
+ * NEWS, contrib/mod_wrap2_file.c: Update NEWS for backport of fix
+ for Bug#4090.
- * 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-07-25 TJ Saunders <tj at castaglia.org>
-2014-01-06 10:40 castaglia
+ * contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2_file.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Bug#4090 -
+ mod_wrap2_file does not support IPv6 addresses properly.
- * NEWS, contrib/mod_radius.c:
- Backport of fix for Bug#4006 to 1.3.4 branch.
+2014-07-25 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-06 10:37 castaglia
+ * NEWS: Updated NEWS for backport of fix for Bug#4089.
- * NEWS, contrib/mod_radius.c:
- Bug#4006 - RADIUS "service-type" attribute encoded with wrong
- length on 64-bit system.
+2014-07-25 TJ Saunders <tj at castaglia.org>
-2014-01-05 22:58 castaglia
+ * contrib/mod_sftp/auth-hostbased.c,
+ contrib/mod_sftp/auth-publickey.c: Bug#4089 - mod_sftp does not
+ allow multiple attempts using a given authentication method.
- * tests/: Makefile.in, api/netio.c, api/stubs.c, api/tests.c,
- api/tests.h:
- Adding API tests for the NetIO API, focusing heavily on the
- pr_netio_telnet_gets() function.
+2014-07-19 TJ Saunders <tj at castaglia.org>
-2014-01-05 22:57 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4087.
- * include/netio.h, src/netio.c:
- Make the function for allocating and attaching a pr_buffer_t to a
- NetIO stream public.
+2014-07-16 TJ Saunders <tj at castaglia.org>
-2014-01-03 14:08 castaglia
+ * contrib/mod_sftp/auth.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#4087 - mod_sftp
+ does not handle "MaxLoginAttempts none" properly.
- * contrib/dist/rpm/proftpd.spec:
- Updated the .spec file to deal with the change back to .gz files.
- Find and use the translation files, to avoid rpmbuild errors for
- packagers.
+2014-07-02 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-02 23:19 castaglia
+ * NEWS: Backport of fix for Bug#4083 to 1.3.5 branch.
- * contrib/mod_deflate.c:
- Refactor the same note name string into a single #define.
+2014-07-02 TJ Saunders <tj at castaglia.org>
-2014-01-02 21:01 castaglia
+ * contrib/mod_sql.c: Fix handling of SQLEngine logic in mod_sql,
+ which was contributing to test failures when regressing Bug#4083.
- * 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-07-02 TJ Saunders <tj at castaglia.org>
-2014-01-02 08:43 castaglia
+ * 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".
- * doc/modules/mod_log.html:
- Fix inaccurate description of %p LogFormat variable.
+2014-06-20 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-01 20:51 castaglia
+ * NEWS: Backport of fix for Bug#4079 to 1.3.5 branch.
- * 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-06-20 TJ Saunders <tj at castaglia.org>
-2014-01-01 18:55 castaglia
+ * contrib/mod_sftp/fxp.c: Use sftp_msg_write_int() for 32-bit
+ values; write_long() is for 64-bit values.
- * 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-06-20 TJ Saunders <tj at castaglia.org>
-2014-01-01 00:16 castaglia
+ * contrib/mod_sftp/fxp.c: Bug#4079 - Invalid response encoding for
+ SFTP space-available request.
- * contrib/mod_tls.c:
- Fix grammar-o in a comment.
+2014-06-19 tjsaunders <tjsaunders at blackpearlsystems.com>
-2014-01-01 00:04 castaglia
+ * NEWS: Updating NEWS for backport of fix for Bug#4077 to 1.3.5
+ branch.
- * 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.
+2014-06-17 TJ Saunders <tj at castaglia.org>
-2013-12-29 22:38 castaglia
+ * contrib/mod_shaper.c: Bug#4077 - ShaperLog not closed/reopened on
+ SIGHUP, causing log rotation problems.
- * src/parser.c:
- Clean up a few stylistic nits in the parser code; no functional
- change.
+2014-06-19 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-29 22:38 castaglia
+ * NEWS: Backport of fix for Bug#4073 to 1.3.5 branch.
- * src/fsio.c:
- Clean up a few stylistic nits in fsio.c; no functional change.
+2014-06-18 TJ Saunders <tj at castaglia.org>
-2013-12-29 12:17 castaglia
+ * modules/mod_xfer.c: The heuristic for disabling sendfile support
+ when implicit FTPS is used does not need to include the port number;
+ having TLS negotiated at the time of session initialization is
+ enough.
- * 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.
+2014-06-17 TJ Saunders <tj at castaglia.org>
-2013-12-29 12:11 castaglia
+ * contrib/mod_tls.c: Remove unnecessary comment.
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Add regression test for failed logins due to out-of-sequence
- commands.
+2014-06-17 TJ Saunders <tj at castaglia.org>
-2013-12-28 17:16 castaglia
+ * contrib/mod_tls.c, modules/mod_xfer.c: Bug#4073 - Polycom VOIP
+ phones unable to use FTPS data transfers.
- * 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.
+2014-05-30 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-27 15:38 castaglia
+ * NEWS: Update NEWS for backport of fix for Bug#4063.
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#4004 to 1.3.4 branch.
+2014-05-29 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-27 15:38 castaglia
+ * src/fsio.c: Bug#4063 - Unable to create directory on NFS/CIFS
+ partition: Permission denied.
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#4004 - IgnoreSCPUploadPerms SFTPOption not honored properly
- for SCP directory upload.
+2014-05-30 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-27 15:37 castaglia
+ * NEWS, modules/mod_ls.c: Update NEWS for backport of fix for
+ Bug#4069.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for Bug#4004.
+2014-05-30 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-23 09:53 castaglia
+ * modules/mod_ls.c: Bug#4069 - NLST -a shows / directory instead of
+ the current directory.
- * 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.
+2014-05-29 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-22 23:22 castaglia
+ * NEWS: Updated NEWS for backport of fix for Bug#4068.
- * 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.
+2014-05-29 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-20 11:59 castaglia
+ * modules/mod_auth.c: Bug#4068 - MaxClients directive doesn't work
+ for <Anonymous> sessions.
- * NEWS, contrib/mod_sftp/dhparams.pem:
- Bug#4002 - Add 7680-bit DH parameter to mod_sftp bundled
- dhparams.pem file.
+2014-05-27 TJ Saunders <tj at castaglia.org>
-2013-12-20 10:05 castaglia
+ * 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.
- * 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.
+2014-05-23 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-20 09:52 castaglia
+ * include/conf.h, src/fsio.c: Fix AIX build issues, as reported in
+ the forums; see: https://forums.proftpd.org/smf/index.php/topic,11548.0.html
- * modules/mod_auth_file.c:
- Slight tweaks to the error messages logged.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-20 09:39 castaglia
+ * src/fsio.c: Fix error spotted by travis-ci's clang build.
- * 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.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-19 15:19 castaglia
+ * NEWS, modules/mod_ls.c,
+ tests/t/lib/ProFTPD/Tests/Commands/STAT.pm: Revert the changes for
+ Bug#3990 on the 1.3.5 branch; they were mistakenly merged there.
- * contrib/mod_wrap2_file.c:
- Add some helpful logging when mod_wrap2_file performs resolution
- on the given table path.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-19 09:55 castaglia
+ * NEWS, src/log.c: Revert change for Bug#3983 from 1.3.5 branch; it
+ was mistakenly merged there.
- * doc/contrib/mod_wrap2.html:
- Fix typos.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-19 08:33 castaglia
+ * Makefile.in: Clean up git files (and travis-ci files) when
+ preparing for a release.
- * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c:
- Backport of fix for Bug#4001 to 1.3.4 branch.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-19 08:32 castaglia
+ * : commit a6179ff80274079de89da21de3d68865dd209ebf Author: TJ
+ Saunders <tj at castaglia.org> Date: Sun May 18 17:15:33 2014 -0700
- * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c:
- Bug#4001 - mod_sftp fails key exchange for 8192-bit DH group.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-15 21:24 castaglia
+ * NEWS: Update NEWS.
- * 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.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-14 19:59 castaglia
+ * : 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...
- * src/netaddr.c:
- When caching the remote session address information, make sure to
- properly zero out the cache structures first.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-14 19:55 castaglia
+ * contrib/mod_quotatab.c: Style nits; no functional change.
- * 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.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-14 17:26 castaglia
+ * tests/api/cmd.c: Remove unused variable.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Provide a way to tell test_cleanup() to keep the log files
- around.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-14 08:51 castaglia
+ * .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.
- * contrib/mod_sftp/mod_sftp.c:
- Fix typo in comment; no functional change.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-12 08:52 castaglia
+ * .travis.yml: Have cppcheck write to stdout its errors. Use normal
+ email notifications (i.e. committer).
- * doc/contrib/mod_geoip.html:
- Typo.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-11 22:54 castaglia
+ * .travis.yml: Skip checking header files, and unit test files, when
+ performing static code analysis.
- * 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.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-11 22:11 castaglia
+ * .travis.yml: Still wrestling with cppcheck. Sigh.
- * NEWS, RELEASE_NOTES, contrib/mod_exec.c:
- Bug#3876 - ExecOnEvent should be configurable per
- <VirtualHost>/<Global>.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-11 21:48 castaglia
+ * .travis.yml: Fix the cppcheck arguments. Enable PCRE support.
- * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm:
- Regression tests for Bug#3996.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-11 21:40 castaglia
+ * .travis.yml: More tweaks to the static code analysers.
- * NEWS, modules/mod_xfer.c:
- Bug#3996 - Handling ALLO command can result in wrong response
- when chrooted.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-11 16:53 castaglia
+ * .travis.yml: Use the direct email address to the -committers list.
- * NEWS, contrib/mod_sftp/keys.c:
- Backported fix for Bug#3992 to 1.3.4 branch.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-11 16:38 castaglia
+ * .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.
- * NEWS, contrib/mod_sftp/keys.c:
- Bug#3992 - RSA signature issue when connecting using
- PuTTY/WinSCP.
+2014-05-18 TJ Saunders <tj at castaglia.org>
-2013-12-10 09:26 castaglia
+ * .travis.yml: Start commenting the travis-ci config file. Add some
+ static code analysis in.
- * 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.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-09 15:15 castaglia
+ * .travis.yml: Direct email notifications of build success/failures
+ to the proftp-committers list.
- * doc/contrib/mod_tls.html:
- Update mod_tls docs with descriptions for the new EC cert/key
- directives.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-09 13:38 castaglia
+ * .travis.yml: Enable memcache support.
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3772 - Support Elliptic Curve Cryptography (ECC) certs for
- FTPS connections.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-09 11:16 castaglia
+ * contrib/mod_sql_postgres.c: Fix another build warning spotted by
+ travis-ci.
- * 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.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-09 10:59 castaglia
+ * .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.
- * NEWS, contrib/mod_quotatab.c, modules/mod_delay.c,
- src/scoreboard.c, src/wtmp.c:
- Backport of fix for Bug#3970 to 1.3.4 branch.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-09 10:58 castaglia
+ * 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.
- * 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.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 23:14 castaglia
+ * .travis.yml: Now install the check library, to enable the API/unit
+ tests -- and run them.
- * modules/mod_core.c:
- Fix compiler warning about type mismatch.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 22:29 castaglia
+ * .travis.yml: Need the PAM libraries/headers for some modules.
- * tests/t/etc/modules/mod_tls/: NOTES, ec-ca.pem,
- ec-server-cert.pem:
- Adding EC certs for tests.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 10:01 castaglia
+ * .travis.yml: Build mod_geoip as well; we'll need its geoip library
+ dependency as well.
- * tests/t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm:
- Add regression tests for <Anonymous> configs with upload-only
- directories.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 09:06 castaglia
+ * .travis.yml: Install more dependencies, and build more modules,
+ via travis-ci.
- * contrib/ftpasswd, doc/contrib/ftpasswd.html:
- Minor reordering of new --lock, --unlock options, and updating
- the docs to reflect the new options.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 08:45 castaglia
+ * .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.
- * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm:
- Adding regression tests for Bug#3994.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 08:44 castaglia
+ * src/data.c: Forgot to update copyright dates with last
+ modification.
- * NEWS, RELEASE_NOTES, contrib/ftpasswd:
- Bug#3994 - ftpasswd utility should support --lock/--unlock
- options.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-08 08:15 castaglia
+ * NEWS, src/log.c: Bug#3983 - Change default SyslogLevel to be
+ NOTICE rather than DEBUG.
- * NEWS, contrib/ftpasswd:
- Bug#3995 - ftpasswd utility should prevent concurrent
- modification of files.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-04 16:53 castaglia
+ * 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.
- * doc/contrib/mod_sftp.html:
- Update mod_sftp docs for the new IgnoreSCPUploadTimes SFTPOption.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-04 16:51 castaglia
+ * : commit 03aa76e1b15908a509849249e83b0979558b4537 Author: TJ
+ Saunders <tj at castaglia.org> Date: Sat May 17 17:59:10 2014 -0700
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Added regression test for Bug#3998 (the new IgnoreSCPUploadTimes
- SFTPOption).
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-04 16:50 castaglia
+ * po/Makefile.in: Remove unused po/ directory, which came back with
+ the cvs2git conversion.
- * 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.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-04 16:46 castaglia
+ * po/Makefile.in: Remove unused po/ directory; it came back with the
+ cvs2git conversion.
- * doc/contrib/: mod_sftp.html:
- List the supported SFTPOptions in lexicographical order.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-04 16:11 castaglia
+ * NEWS: Backport of fix for Bug#4055 to 1.3.5 branch.
- * modules/: mod_ctrls.c:
- Make sure that the mod_ctrls module cannot be built without using
- the --enable-ctrls configure option.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-03 22:49 castaglia
+ * : commit 355d16baf192ec86cd015ec27b9b9f2846e9ded3 Author: TJ
+ Saunders <tj at castaglia.org> Date: Sat May 17 17:46:20 2014 -0700
- * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm:
- Adding regression test for the ALLO command in a chrooted
- environment.
+2014-05-17 TJ Saunders <tj at castaglia.org>
-2013-12-03 22:36 castaglia
+ * : commit 9f2bdb71a310ad3017d17c4a643acb0f3ebd2bae Author: TJ
+ Saunders <tj at castaglia.org> Date: Sat May 17 08:50:52 2014 -0700
- * lib/pr_fnmatch_loop.c:
- Backport of fix for Bug#3997 to 1.3.4 branch.
+2014-05-16 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-12-03 22:35 castaglia
+ * .gitignore: Ignore the generated man page files via .gitignore,
+ too.
- * 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"
+2014-05-16 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-11-23 16:45 castaglia
+ * .gitignore: Improving the .gitignore file.
- * 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.
+2014-05-16 tjsaunders <tjsaunders at blackpearlsystems.com>
-2013-11-17 23:34 castaglia
+ * .gitignore: Adding .gitignore file.
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm, Tests/Commands/RETR.pm:
+2014-05-16 tjsaunders <tjsaunders at blackpearlsystems.com>
- 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.
+ * 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.
-2013-11-10 17:37 castaglia
+2014-05-16 tjsaunders <tjsaunders at blackpearlsystems.com>
- * doc/modules/mod_log.html:
- Added description of new %{basename} variable to the LogFormat
- docs.
+ * include/version.h: Bump version to reflect new release cycle.
-2013-11-10 17:35 castaglia
+2014-05-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logging/ExtendedLog.pm,
- Modules/mod_sql_sqlite.pm:
- Added (simplistic) regression tests for the new LogFormat
- %{basename} variable introduced for Bug#3987.
+ * NEWS: Preparing for release.
-2013-11-10 17:34 castaglia
+2014-05-15 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.
+ * ChangeLog: Updated ChangeLog.
-2013-11-09 18:34 castaglia
+2014-05-15 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.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing files
+ for release.
-2013-11-09 17:56 castaglia
+2014-05-15 castaglia <castaglia>
- * src/auth.c:
- Make the "Preparing to chroot to" log message slightly less
- noisy.
+ * locale/files.txt: Updated list of files for localization.
-2013-11-09 17:55 castaglia
+2014-05-09 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).
+ * RELEASE_NOTES: Fleshing out release notes for upcoming release.
-2013-11-09 17:27 castaglia
+2014-05-05 castaglia <castaglia>
- * modules/mod_auth_file.c:
- Improve the log message slightly when mod_auth_file can't open
- its configured files.
+ * 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.
-2013-11-09 15:34 castaglia
+2014-05-04 castaglia <castaglia>
- * src/bindings.c:
- Found another place with inconsistent log message formatting; now
- fixed.
+ * doc/contrib/mod_sql_passwd.html: Updated SQLPasswordPBKDF2 docs in
+ light of Bug#4052.
-2013-11-09 15:20 castaglia
+2014-05-04 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Added
+ regression test for Bug#4052.
-2013-11-09 15:14 castaglia
+2014-05-04 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Include description for the UserOwner directive in the mod_core
- docs.
+ * NEWS, contrib/mod_sql_passwd.c: Bug#4052 - Enhance
+ SQLPasswordPBKDF2 to support per-user query for settings.
-2013-11-09 10:41 castaglia
+2014-05-04 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Log messages about misconfigurations should be logged at WARNING,
- not ERR.
+ * doc/contrib/mod_site_misc.html: Emphasize that both acces and mod
+ times are set by SITE UTIME.
-2013-11-05 13:37 castaglia
+2014-05-04 castaglia <castaglia>
- * NEWS, contrib/mod_tls_memcache.c, contrib/mod_tls_shmcache.c:
- Backport of fix for Bug#3991 to 1.3.4 branch.
+ * NEWS, modules/mod_facl.c: Bug#4044 - mod_facl prevents a normal
+ SIGHUP reload.
-2013-11-05 13:37 castaglia
+2014-05-03 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.
+ * NEWS, modules/mod_core.c: Bug#4042 - MIC command between RNFR and
+ RNTO should not be rejected.
-2013-11-05 13:33 castaglia
+2014-05-02 castaglia <castaglia>
- * doc/contrib/mod_tls_shmcache.html:
- Updated mod_tls_shmcache docs.
+ * NEWS, contrib/mod_exec.c: Bug#4049 - mod_exec should include
+ supplemental groups when running commands as logged-in user.
-2013-10-27 16:02 castaglia
+2014-04-30 castaglia <castaglia>
- * doc/howto/TLS.html:
- TLS FAQ about difference between shm and memcache for SSL session
- caching.
+ * 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.
-2013-10-15 10:34 castaglia
+2014-04-30 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.
+ * NEWS, contrib/mod_ban.c: Bug#4048 - Race condition in mod_ban can
+ lead to segfault of all new connections.
-2013-10-14 21:50 castaglia
+2014-04-28 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Backport of fix for Bug#3986 to 1.3.4 branch.
+ * 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.
-2013-10-14 21:49 castaglia
+2014-04-28 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3986 - Support filesystems which do not support
- chmod(2)/chown(2), e.g. FAT/ExFAT.
+ * NEWS, modules/mod_xfer.c: Bug#4046 - ALLO command failed because
+ of bad size check.
-2013-10-14 08:41 castaglia
+2014-03-26 castaglia <castaglia>
- * NEWS, RELEASE_NOTES:
- Bug#3982 - Normalize log messages and levels.
+ * doc/howto/TLS.html: Typo.
-2013-10-13 16:46 castaglia
+2014-03-19 castaglia <castaglia>
- * modules/mod_dso.c, src/log.c:
- Fix comments to match code.
+ * 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.
-2013-10-13 16:44 castaglia
+2014-03-13 castaglia <castaglia>
- * modules/mod_core.c:
- Tweak a log message to be more in line with similar log messages
- elsewhere.
+ * doc/howto/Chroot.html: Fix broken link, per Bug#4038.
-2013-10-13 16:43 castaglia
+2014-03-08 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.
+ * 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.
-2013-10-13 16:14 castaglia
+2014-03-08 castaglia <castaglia>
- * src/fsio.c:
- Found only one instance of a DEBUG level message which needed a
- different log level (Bug#3982).
+ * 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.
-2013-10-13 16:09 castaglia
+2014-03-08 castaglia <castaglia>
- * src/auth.c:
- The log message about chrooting is more of a DEBUG level message,
- rather than INFO (per Bug#3982).
+ * NEWS, contrib/mod_tls.c: Bug#4024 - TLS 1.1/1.2 configurable, but
+ not properly implemented.
-2013-10-13 16:05 castaglia
+2014-03-05 castaglia <castaglia>
- * modules/: mod_ctrls.c, mod_delay.c, mod_dso.c, mod_xfer.c:
- Changing the log levels of messages for some modules to be more
- consistent, per Bug#3982.
+ * contrib/mod_tls.c: When seeding OpenSSL's PRNG manually, use
+ gettimeofday(2) instead of time(3).
-2013-10-13 15:51 castaglia
+2014-03-04 castaglia <castaglia>
- * contrib/: mod_ban.c, mod_ctrls_admin.c, mod_dynmasq.c,
- mod_geoip.c, mod_shaper.c, mod_tls.c, mod_tls_memcache.c,
- mod_tls_shmcache.c, mod_wrap.c, mod_load/mod_load.c,
- mod_sftp/fxp.c, mod_sftp/scp.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).
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ tests for Bug#4034.
-2013-10-13 15:34 castaglia
+2014-03-04 castaglia <castaglia>
- * contrib/ftpmail:
- If there are comments after the user/password values in the
- ftpmail SMTP AUTH file, trim them off.
+ * NEWS, contrib/mod_sftp/auth.c: Bug#4034 - SSH publickey
+ authentication fails with "MaxLoginAttempts 1".
-2013-10-13 11:06 castaglia
+2014-03-03 castaglia <castaglia>
- * src/: bindings.c, dirtree.c, lastlog.c, log.c, main.c:
- Combing through NOTICE level log messages in src/ turned up a few
- needed tweaks, for Bug#3982.
+ * 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.
-2013-10-13 10:34 castaglia
+2014-03-02 castaglia <castaglia>
- * modules/: mod_auth.c, mod_auth_pam.c, mod_auth_unix.c, mod_cap.c,
- mod_ctrls.c, mod_dso.c, mod_lang.c, mod_log.c, mod_memcache.c,
- mod_xfer.c:
- Minor tweaks to log messages and log levels, bringing them in
- line with the expected/consistent log levels, per Bug#3982.
+ * doc/contrib/mod_sftp.html: Document the AllowInsecureLogin
+ SFTPOption.
-2013-10-13 09:48 castaglia
+2014-03-02 castaglia <castaglia>
- * contrib/: mod_geoip.c, mod_ldap.c, mod_log_forensic.c,
- mod_radius.c, mod_ratio.c, mod_rewrite.c, mod_sql.c, mod_tls.c,
- mod_dnsbl/mod_dnsbl.c, mod_sftp/auth.c, mod_sftp/keys.c,
- mod_sftp/mod_sftp.c, mod_snmp/mod_snmp.c:
- Tweaks to log levels of various messages in the contrib modules,
- making them be more consistent, per Bug#3982.
+ * 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).
-2013-10-11 14:51 castaglia
+2014-03-02 castaglia <castaglia>
- * src/auth.c:
- Slightly better log message, hopefully.
+ * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#4032 - Restarting proftpd
+ with mod_sftp fails due to permissions on SFTPHostKey file.
-2013-10-11 14:50 castaglia
+2014-03-02 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the mod_sftp
+ regression tests which SHOULD have caught Bug#4033.
-2013-10-09 09:46 castaglia
+2014-03-02 castaglia <castaglia>
- * doc/howto/Logging.html:
- Fix broken anchor tag.
+ * NEWS, contrib/mod_sftp/cipher.c: Bug#4033 - mod_sftp fails to
+ create SSH2 session using 'none' cipher.
-2013-10-08 23:36 castaglia
+2014-03-01 castaglia <castaglia>
- * src/timers.c:
- Use the WARNING level if we can't install our signal handlers
- needed for timers, rather than NOTICE.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Added
+ regression test for Bug#3938.
-2013-10-08 23:33 castaglia
+2014-03-01 castaglia <castaglia>
- * contrib/mod_dynmasq.c:
- Slightly better language in the log message when we can't resolve
- a DNS name.
+ * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3938 - mod_wrap2 uses
+ reverse DNS regardless "UseReverseDNS off".
-2013-10-08 23:31 castaglia
+2014-02-28 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.
+ * 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>.
-2013-10-08 23:27 castaglia
+2014-02-28 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.
+ * NEWS, contrib/mod_tls.c: Bug#4029 - TLSOptions EnableDiags logs
+ "unknown version (771)" for TLS 1.1/1.2 connections.
-2013-10-08 22:34 castaglia
+2014-02-23 castaglia <castaglia>
- * modules/mod_xfer.c:
- Found a few more places where errno might be getting clobbered,
- and thus leading to inaccurate reporting.
+ * contrib/mod_ban.c: Minor name/string change; no functional change.
-2013-10-08 22:30 castaglia
+2014-02-23 castaglia <castaglia>
- * modules/mod_delay.c:
- Preserve errno properly when reporting errors here.
+ * 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.
-2013-10-08 22:28 castaglia
+2014-02-23 castaglia <castaglia>
- * src/main.c:
- Fix another case where the reported errno value might not be the
- correct one.
+ * doc/contrib/mod_ban.html: Added support for RootLogin bans.
-2013-10-08 22:25 castaglia
+2014-02-23 castaglia <castaglia>
- * modules/mod_auth.c:
- Cut down on possibly-spurious log warnings.
+ * 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.
-2013-10-08 22:22 castaglia
+2014-02-21 castaglia <castaglia>
- * src/lastlog.c:
- Another place where we might be losing the real errno value.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding reproduction
+ recipe/regression test for Bug#4026.
-2013-10-08 22:21 castaglia
+2014-02-19 castaglia <castaglia>
- * src/mkhome.c:
- Make sure that when an error occurs, we log and preserve the
- errno properly.
+ * doc/contrib/mod_sftp.html: Add "Cipher Implementations" section to
+ "Known Client Issues", noting that SBB clients don't handle the
+ blowfish-ctr cipher.
-2013-10-08 22:16 castaglia
+2014-02-18 castaglia <castaglia>
- * src/wtmp.c:
- Fix a few more places where we need to be careful to preserve the
- errno value.
+ * doc/contrib/mod_sftp.html: Fix typo/misnamed cipher in list.
-2013-10-08 22:11 castaglia
+2014-02-15 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- More cases where we need to take care to preserve the errno value
- properly.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding
+ regression test for Bug#4025.
-2013-10-08 22:07 castaglia
+2014-02-15 castaglia <castaglia>
- * modules/mod_core.c:
- Preserve errno for proper error reporting.
+ * NEWS, contrib/mod_ifsession.c: Bug#4025 - <IfClass> sections do
+ not work for multiple SQLLog directives.
-2013-10-08 22:03 castaglia
+2014-02-15 castaglia <castaglia>
- * modules/mod_facl.c:
- Make sure we preserve errno appropriately.
+ * 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.
-2013-10-08 22:01 castaglia
+2014-02-15 castaglia <castaglia>
- * doc/modules/mod_core.html:
- One more link which should use the #Syslog anchor in the Logging
- doc.
+ * 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.
-2013-10-08 21:57 castaglia
+2014-02-11 castaglia <castaglia>
- * contrib/mod_sql_postgres.c:
- Forgot to update copyright date on previous checkin.
+ * NEWS, src/fsio.c: Bug#4022 - "Directory not empty" error when
+ creating directory is misleading.
-2013-10-08 00:01 castaglia
+2014-02-11 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.
+ * src/stash.c: Fix minor compiler warning when --enable-devel is
+ used.
-2013-10-06 22:51 castaglia
+2014-02-09 castaglia <castaglia>
- * contrib/mod_rewrite.c, contrib/mod_sql_mysql.c,
- contrib/mod_sql_postgres.c, contrib/mod_sql_sqlite.c,
- contrib/mod_tls.c, contrib/mod_sftp/auth.c,
- contrib/mod_sftp/mod_sftp.c, contrib/mod_snmp/mod_snmp.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).
+ * 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.
-2013-10-06 21:54 castaglia
+2014-02-09 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_ldap.c:
- Bug#3888 - Add LDAPLog directive to mod_ldap.
+ * 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.
-2013-10-06 19:28 castaglia
+2014-02-09 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.
+ * src/fsio.c: Add more logging of error conditions in the
+ pr_fsio_smkdir() function, for better diagnosing some reported MKD
+ errors.
-2013-10-06 18:35 castaglia
+2014-02-09 castaglia <castaglia>
- * contrib/mod_sftp/auth.c, modules/mod_auth.c:
- Log "SECURITY VIOLATION" messages at the NOTICE level (Bug#3982).
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Yet another data
+ point/reproduction recipe for Bug#4017.
-2013-10-06 18:29 castaglia
+2014-02-08 castaglia <castaglia>
- * contrib/mod_exec.c, contrib/mod_sftp_pam.c, contrib/mod_shaper.c,
- contrib/mod_tls.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_snmp/mod_snmp.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.
+ * tests/t/lib/ProFTPD/Tests/Config/SocketOptions.pm: Add basic test
+ for SocketOption keepalive.
-2013-10-06 16:56 castaglia
+2014-02-05 castaglia <castaglia>
- * contrib/mod_exec.c, contrib/mod_tls.c, contrib/mod_sftp/keys.c,
- contrib/mod_snmp/mod_snmp.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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Additional
+ regression/reproduction recipe for Bug#4017, this time using PCRE
+ regexes.
-2013-10-06 16:45 castaglia
+2014-02-03 castaglia <castaglia>
- * contrib/mod_sftp_pam.c, contrib/mod_shaper.c, contrib/mod_tls.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, 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).
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Regression
+ test/reproduction recipe for Bug#4017.
-2013-10-06 16:05 castaglia
+2014-02-01 castaglia <castaglia>
- * contrib/mod_snmp/mod_snmp.c:
- mod_snmp, too, needs to log fork(2) failures at the ALERT level
- (Bug#3982).
+ * 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.
-2013-10-06 16:03 castaglia
+2014-01-31 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.
+ * modules/mod_rlimit.c,
+ tests/t/lib/ProFTPD/Tests/Config/RLimitChroot.pm: Allow for per-user
+ (via <IfUser>) setting of the RLimitChroot directive.
-2013-10-06 15:53 castaglia
+2014-01-31 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).
+ * doc/modules/mod_rlimit.html: Add description for new RLimitChroot
+ directive to mod_rlimit docs.
-2013-10-06 15:47 castaglia
+2014-01-31 castaglia <castaglia>
- * contrib/mod_tls.c, contrib/mod_sftp/crypto.c,
- contrib/mod_sftp/keys.c, modules/mod_ls.c, src/data.c, src/env.c:
+ * src/fsio.c: Match URLs for "Roaring Beast" reports.
- Found more places in the code where an out-of-memory condition
- needed to be logged at the ALERT level, per Bug#3982.
+2014-01-31 castaglia <castaglia>
-2013-10-06 15:35 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.
- * NEWS, contrib/mod_sftp_pam.c, contrib/mod_shaper.c,
- contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c,
- contrib/mod_sftp/msg.c, modules/mod_auth_file.c, src/fsio.c,
- src/pool.c:
- Bug#3982 - Normalize log messages and levels.
+2014-01-31 castaglia <castaglia>
- We start by logging all out-of-memory conditions at the ALERT
- level.
+ * NEWS, RELEASE_NOTES, include/fsio.h, modules/mod_rlimit.c,
+ src/fsio.c: Bug#4018 - Implement checks for sensitive directories
+ when chrooted.
-2013-10-06 15:33 castaglia
+2014-01-30 castaglia <castaglia>
- * contrib/mod_snmp/.cvsignore:
- Updated .cvsignore files for mod_dnsbl and mod_snmp.
+ * doc/modules/mod_core.html: Add description of SocketBindTight
+ directive to mod_core docs, and include FAQ about using it.
-2013-10-06 13:22 castaglia
+2014-01-29 castaglia <castaglia>
- * doc/howto/LogLevels.html:
- More typos, layout fixes.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Adding
+ regression/reproduction recipe for Bug#4017.
-2013-10-06 13:21 castaglia
+2014-01-29 castaglia <castaglia>
- * doc/howto/LogLevels.html:
- Typo.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix broken (only
+ on MacOSX) test.
-2013-10-06 13:19 castaglia
+2014-01-29 castaglia <castaglia>
- * doc/howto/index.html:
- Add the LogLevels doc to the index.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Minor tweaks
+ while investigating Bug#3638.
-2013-10-06 13:17 castaglia
+2014-01-29 castaglia <castaglia>
- * doc/: howto/LogLevels.html, howto/Logging.html,
- 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.
+ * 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.
-2013-10-06 09:02 castaglia
+2014-01-28 castaglia <castaglia>
- * doc/howto/Compiling.html:
- Minor embellishment on what the install_user/install_group
- variables are for (and what they are NOT for).
+ * include/version.h: Updating version for CVS.
-2013-10-06 08:46 castaglia
+2014-01-28 castaglia <castaglia>
- * doc/howto/ConfigurationTricks.html:
- Add recipe for using environment variable to achieve
- ServerRoot-like functionality.
+ * ChangeLog: Updated ChangeLog.
-2013-10-05 23:54 castaglia
+2014-01-28 castaglia <castaglia>
- * doc/howto/Filters.html:
- Add recipe about filtering SITE CHMOD parameters using DenyFilter
- to doc. Fixed links to be relative.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Prepping
+ files for RC.
-2013-10-05 23:36 castaglia
+2014-01-28 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.
+ * 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.
-2013-10-05 23:35 castaglia
+2014-01-28 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.
+ * contrib/mod_tls.c: Enable mod_tls to be built using old OpenSSL
+ version; tested using OpenSSL-0.9.6h.
-2013-10-05 22:30 castaglia
+2014-01-27 castaglia <castaglia>
- * src/var.c:
- Clean up minor stylistic nits in the Variables API; no real
- functional change.
+ * doc/contrib/mod_quotatab.html: Try to make the Installation notes
+ for mod_quotatab a little clearer.
-2013-10-05 13:06 castaglia
+2014-01-27 castaglia <castaglia>
- * src/fsio.c:
- Backporting additional Bug#3963 fixes from trunk to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Quell compiler warning
+ about redefined variables.
-2013-10-05 13:05 castaglia
+2014-01-27 castaglia <castaglia>
- * src/fsio.c:
- Additional improvements for Bug#3963, reducing the scope of root
- privs used when setting created directory permissions.
+ * tests/t/lib/ProFTPD/Tests/Logins.pm: Quell compiler warning about
+ overloaded variables.
-2013-10-05 12:42 castaglia
+2014-01-27 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Updated mod_exec ExecOption useStdin regression test in light of
- Bug#3981.
+ * 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.
-2013-10-05 12:42 castaglia
+2014-01-27 castaglia <castaglia>
- * NEWS, contrib/mod_exec.c:
- Backporting fix for Bug#3981 to 1.3.4 branch.
+ * tests/api/str.c: With this tweak (of debatable and investigatable
+ value), all of the API tests now pass on my old Linux machine.
-2013-10-05 12:41 castaglia
+2014-01-27 castaglia <castaglia>
- * NEWS, contrib/mod_exec.c:
- Bug#3981 - Null pointer dereference in mod_exec with ExecOption
- useStdin.
+ * tests/api/netaddr.c: Make the INCL_DEVICE API test a little more
+ resilient by providing some fallback device names.
-2013-10-04 21:44 castaglia
+2014-01-27 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.
+ * 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.
-2013-10-04 21:34 castaglia
+2014-01-27 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Support writing out of configs that are given as arrayrefs, not
- just as hashrefs.
+ * tests/Makefile.in, tests/api/stubs.c: Make sure the API testsuite
+ compiles properly when --enable-nls is used.
-2013-10-04 21:33 castaglia
+2014-01-27 castaglia <castaglia>
- * tests/: tests.pl, t/config/setenv.t,
- t/lib/ProFTPD/Tests/Config/SetEnv.pm:
- 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.
+ * contrib/mod_snmp/db.c: Quell compiler warning about unused
+ variable.
-2013-10-04 19:53 castaglia
+2014-01-27 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ratio.pm:
- Add a (currently failing) mod_ratio regression, found in an
- Ubuntu bug report.
+ * RELEASE_NOTES, doc/howto/Radius.html, doc/howto/index.html: Adding
+ (finally!) RADIUS howto.
-2013-10-02 23:33 castaglia
+2014-01-26 castaglia <castaglia>
- * doc/contrib/mod_ratio.html:
- Start working on mod_ratio docs, if only to cut down on bug
- reports about it.
+ * contrib/mod_ban.c: Typo in comment; no functional change.
-2013-10-02 22:21 castaglia
+2014-01-25 castaglia <castaglia>
- * doc/contrib/mod_sftp_pam.html:
- Fix typos and improve the installation instructions for
- mod_sftp_pam.
+ * modules/mod_core.c: Make sure to handle the case where units
+ aren't specified properly.
-2013-10-02 06:55 castaglia
+2014-01-25 castaglia <castaglia>
- * modules/mod_dso.c:
- Update mod_dso to use the pr_strnrstr() function, which
- duplicated code already in mod_dso.
+ * 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.
-2013-10-02 06:47 castaglia
+2014-01-24 castaglia <castaglia>
- * RELEASE_NOTES:
- Plan to release RC4, and mention the fixing of the LDFLAGS for
- module builds.
+ * contrib/mod_tls.c: Bug#4015 - Possible bad/ambiguous expression
+ found by static code analyzer cppcheck.
-2013-10-02 06:38 castaglia
+2014-01-22 castaglia <castaglia>
- * contrib/: mod_dnsbl/configure, mod_load/configure,
- mod_sftp/configure, mod_snmp/configure, mod_wrap2/configure:
- Updated contrib module configure scripts.
+ * doc/howto/TLS.html: Updates to the TLS howto, adding some FAQs and
+ noting that secure FXP transfers are now supported.
-2013-10-02 06:34 castaglia
+2014-01-22 castaglia <castaglia>
- * contrib/: mod_dnsbl/Makefile.in, mod_dnsbl/configure.in,
- mod_load/Makefile.in, mod_load/configure.in,
- mod_sftp/Makefile.in, mod_sftp/configure.in,
- mod_snmp/Makefile.in, mod_snmp/configure.in,
- mod_wrap2/Makefile.in, mod_wrap2/configure.in:
- Properly propagate/use LDFLAGS in the contrib module Makefiles.
+ * 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.
-2013-10-01 23:18 castaglia
+2014-01-22 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Update
+ AuthGroupFile world-readable test to match changes to the
+ permissions checking code.
-2013-10-01 08:45 castaglia
+2014-01-22 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Fix typo in patch for Bug#3952 that was resulting in segfault.
+ * modules/mod_auth_file.c: Alter the permission checks (per
+ Bug#3892) to allow world-readable AuthGroupFiles; there's no
+ sensitive information in there.
-2013-09-30 20:39 castaglia
+2014-01-22 castaglia <castaglia>
- * contrib/mod_exec.c:
- Remove extraneous semicolon; I've been trying not to use them
- after the PRIVS macros.
+ * doc/modules/mod_auth_file.html: Improve/expand on the FAQ about
+ permissions.
-2013-09-30 15:01 castaglia
+2014-01-21 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Adding regression test
+ for Bug#4010 (which, I think, is actually a client bug).
-2013-09-29 17:09 castaglia
+2014-01-21 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.
+ * RELEASE_NOTES: Update release notes, getting them ready for a
+ release.
-2013-09-29 16:28 castaglia
+2014-01-21 castaglia <castaglia>
- * doc/modules/mod_auth_unix.html:
- Updated PersistentPasswd docs per Bug#3952.
+ * doc/contrib/mod_exec.html: Update the ExecOnEvent description to
+ match the code.
-2013-09-29 16:26 castaglia
+2014-01-21 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'.
+ * doc/contrib/mod_sql.html: Note when the IgnoreConfigFile SQLOption
+ first appeared.
-2013-09-27 07:37 castaglia
+2014-01-21 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.
+ * doc/contrib/mod_ldap.html: Add description for LDAPLog directive
+ to mod_ldap docs.
-2013-09-26 21:19 castaglia
+2014-01-20 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression
+ test for Bug#4013.
-2013-09-26 20:33 castaglia
+2014-01-20 castaglia <castaglia>
- * src/: bindings.c, dirtree.c, inet.c, netaddr.c:
- Fix an interesting bug only encountered if the following config
- is used:
+ * NEWS, contrib/mod_sftp/scp.c: Bug#4013 - SCP upload of shorter
+ file does not completely overwrite existing file of same name.
- DefaultAddress <ipv6-addr>
- UseIPv6 off
+2014-01-20 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Adding regression
+ tests for several NLST bugs, including Bug#4011.
- 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.
+2014-01-20 castaglia <castaglia>
-2013-09-25 09:08 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.
- * contrib/mod_sftp/display.c, src/display.c:
- Silly compilers disagree on whether '' is valid syntax for
- denoting a single character. Sigh.
+2014-01-17 castaglia <castaglia>
-2013-09-25 07:58 castaglia
+ * configure: Updated configure.
- * contrib/mod_sftp/display.c, src/display.c:
- When formatting the %f Display variable, the units index was not
- being calculated correctly.
+2014-01-17 castaglia <castaglia>
-2013-09-25 07:52 castaglia
+ * configure.in: Fix default location of datadir to be
+ '/usr/local/share', not '/usr/locale/share'.
- * src/fsio.c:
- Minor clarifying comment.
+2014-01-17 castaglia <castaglia>
-2013-09-24 21:25 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.
- * NEWS, contrib/mod_sql_odbc.c:
- Bug#3979 - mod_sql_odbc compiler warnings on 64-bit systems using
- unixODBC.
+2014-01-13 castaglia <castaglia>
-2013-09-23 18:21 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.
- * 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.
+2014-01-13 castaglia <castaglia>
- Fixed a few racy timer tests while there.
+ * 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.
-2013-09-20 05:49 castaglia
+2014-01-08 castaglia <castaglia>
- * contrib/: mod_sftp/keys.c, mod_tls.c:
- Updated the cached PID, so that log messages reflected the forked
- process' PID properly.
+ * 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.
-2013-09-19 21:01 castaglia
+2014-01-06 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.
+ * NEWS, contrib/mod_radius.c: Bug#4006 - RADIUS "service-type"
+ attribute encoded with wrong length on 64-bit system.
-2013-09-19 17:52 castaglia
+2014-01-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Adding regression test for Bug#3964.
+ * 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.
-2013-09-19 17:51 castaglia
+2014-01-06 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_exec.c:
- Bug#3964 - Support running ExecOnEvent actions with logged-in
- user's permissions.
+ * include/netio.h, src/netio.c: Make the function for allocating and
+ attaching a pr_buffer_t to a NetIO stream public.
-2013-09-19 17:14 castaglia
+2014-01-03 castaglia <castaglia>
- * NEWS, contrib/mod_geoip.c:
- Bug#3976 - ProFTPD terminating (signal 11) crash for
- GeoLiteCity-20130903 database lookup.
+ * contrib/mod_deflate.c: Refactor the same note name string into a
+ single #define.
-2013-09-19 17:12 castaglia
+2014-01-03 castaglia <castaglia>
- * NEWS, contrib/mod_geoip.c:
- Bug#3975 - Error printed to stderr when loading GeoIP Lite
- country database using IndexCache flag.
+ * 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.
-2013-09-18 23:00 castaglia
+2014-01-02 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.
+ * doc/modules/mod_log.html: Fix inaccurate description of %p
+ LogFormat variable.
-2013-09-18 22:54 castaglia
+2014-01-02 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.
+ * 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.
- 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.
+2014-01-02 castaglia <castaglia>
-2013-09-18 15:19 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.
- * NEWS, src/fsio.c:
- Backport of fix for Bug#3963 to 1.3.4 branch.
+2014-01-01 castaglia <castaglia>
-2013-09-18 15:17 castaglia
+ * contrib/mod_tls.c: Fix grammar-o in a comment.
- * NEWS, src/fsio.c:
- Bug#3963 - Improve permission setting when creating directories.
+2014-01-01 castaglia <castaglia>
-2013-09-18 14:51 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.
- * doc/contrib/index.html:
- Update contrib module index with link to mod_dnsbl.
+2013-12-30 castaglia <castaglia>
-2013-09-18 14:49 castaglia
+ * src/parser.c: Clean up a few stylistic nits in the parser code; no
+ functional change.
- * contrib/mod_dnsbl/configure:
- Updated configure for mod_dnsbl.
+2013-12-30 castaglia <castaglia>
-2013-09-18 14:47 castaglia
+ * src/fsio.c: Clean up a few stylistic nits in fsio.c; no functional
+ change.
- * contrib/mod_dnsbl/: Makefile.in, configure.in, 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-12-29 castaglia <castaglia>
-2013-09-18 14:44 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.
- * contrib/mod_dnsbl/.cvsignore:
- Adding necessary .cvsignore file.
+2013-12-29 castaglia <castaglia>
-2013-09-18 14:20 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logins.pm: Add regression test for
+ failed logins due to out-of-sequence commands.
- * contrib/mod_dnsbl/Makefile.in:
- Update clean target for mod_dnsbl Makefile.
+2013-12-29 castaglia <castaglia>
-2013-09-18 14:18 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.
- * RELEASE_NOTES, doc/contrib/mod_dnsbl.html:
- Mention addition of mod_dnsbl to the contrib/ area.
+2013-12-27 castaglia <castaglia>
-2013-09-18 14:18 castaglia
+ * NEWS, contrib/mod_sftp/scp.c: Bug#4004 - IgnoreSCPUploadPerms
+ SFTPOption not honored properly for SCP directory upload.
- * contrib/mod_dnsbl/: Makefile.in, config.guess, config.sub,
- configure, configure.in, install-sh, mod_dnsbl.c, mod_dnsbl.h.in:
+2013-12-27 castaglia <castaglia>
- Adding the mod_dnsbl module to the proftpd project.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for Bug#4004.
-2013-09-18 14:16 castaglia
+2013-12-23 castaglia <castaglia>
- * contrib/mod_snmp/: config.guess, config.sub, install-sh:
- Updating config.guess, config.sub, install-sh scripts for
- mod_snmp.
+ * 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-09-18 11:49 castaglia
+2013-12-23 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.
+ * 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-09-18 11:16 castaglia
+2013-12-20 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Backporting fix from master.
+ * NEWS, contrib/mod_sftp/dhparams.pem: Bug#4002 - Add 7680-bit DH
+ parameter to mod_sftp bundled dhparams.pem file.
-2013-09-18 11:15 castaglia
+2013-12-20 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Using a slightly different memory pool here avoids some strange
- side-effects later.
+ * 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-09-17 16:24 castaglia
+2013-12-20 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.
+ * modules/mod_auth_file.c: Slight tweaks to the error messages
+ logged.
-2013-09-17 15:19 castaglia
+2013-12-20 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression tests for the handling of the SSCN command by
- mod_tls.
+ * 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-09-17 14:53 castaglia
+2013-12-19 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.
+ * contrib/mod_wrap2_file.c: Add some helpful logging when
+ mod_wrap2_file performs resolution on the given table path.
-2013-09-17 08:50 castaglia
+2013-12-19 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention CVE-2013-4359 in the release notes; people will want to
- know.
+ * doc/contrib/mod_wrap2.html: Fix typos.
-2013-09-16 22:04 castaglia
+2013-12-19 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention fix of mod_sftp/mod_sftp_pam memory allocation
- (CVE-2013-4359) in release notes.
+ * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/mac.c: Bug#4001
+ - mod_sftp fails key exchange for 8192-bit DH group.
-2013-09-15 15:31 castaglia
+2013-12-16 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.
+ * 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-09-15 12:37 castaglia
+2013-12-15 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Backport of fix for Bug#3974 to 1.3.4 branch.
+ * src/netaddr.c: When caching the remote session address
+ information, make sure to properly zero out the cache structures
+ first.
-2013-09-15 12:36 castaglia
+2013-12-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.
+ * 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-09-15 12:35 castaglia
+2013-12-15 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#3974 - PathDenyFilter directive does not work as expected for
- SFTP sessions.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Provide a way to tell
+ test_cleanup() to keep the log files around.
-2013-09-15 12:25 castaglia
+2013-12-14 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).
+ * contrib/mod_sftp/mod_sftp.c: Fix typo in comment; no functional
+ change.
-2013-09-15 11:10 castaglia
+2013-12-12 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.
+ * doc/contrib/mod_geoip.html: Typo.
-2013-09-13 23:56 castaglia
+2013-12-12 castaglia <castaglia>
- * NEWS, contrib/mod_sftp_pam.c, contrib/mod_sftp/kbdint.c,
- contrib/mod_sftp/mod_sftp.h.in:
- Backport of fix for Bug#3973 to 1.3.4 branch.
+ * 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-09-13 23:53 castaglia
+2013-12-12 castaglia <castaglia>
- * NEWS, contrib/mod_sftp_pam.c, contrib/mod_sftp/kbdint.c,
- contrib/mod_sftp/mod_sftp.h.in:
- Bug#3973 - mod_sftp can be forced to allocate too much memory for
- keyboard-interactive authentication.
+ * NEWS, RELEASE_NOTES, contrib/mod_exec.c: Bug#3876 - ExecOnEvent
+ should be configurable per <VirtualHost>/<Global>.
-2013-09-13 23:47 castaglia
+2013-12-12 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Regression tests for
+ Bug#3996.
-2013-09-12 20:53 castaglia
+2013-12-12 castaglia <castaglia>
- * contrib/mod_sftp_pam.c:
- Fix gcc-4.8 warning; patch supplied by Sergei Trofimovich
- <slyfox at gentoo.org>.
+ * NEWS, modules/mod_xfer.c: Bug#3996 - Handling ALLO command can
+ result in wrong response when chrooted.
-2013-09-05 10:14 castaglia
+2013-12-12 castaglia <castaglia>
- * NEWS, modules/mod_auth_unix.c:
- Backport of fix for Bug#3972 to 1.3.4 branch.
+ * NEWS, contrib/mod_sftp/keys.c: Bug#3992 - RSA signature issue when
+ connecting using PuTTY/WinSCP.
-2013-09-05 10:13 castaglia
+2013-12-10 castaglia <castaglia>
- * NEWS, modules/mod_auth_unix.c:
- Bug#3972 - Authentication error on Cygwin due to bad code.
+ * 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-09-04 13:38 castaglia
+2013-12-09 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Document the new IgnoreConfigFile SQLOption (Bug#3971).
+ * doc/contrib/mod_tls.html: Update mod_tls docs with descriptions
+ for the new EC cert/key directives.
-2013-09-04 13:32 castaglia
+2013-12-09 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.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3772 - Support
+ Elliptic Curve Cryptography (ECC) certs for FTPS connections.
-2013-08-25 14:18 castaglia
+2013-12-09 castaglia <castaglia>
- * tests/: tests.pl, t/config/deferwelcome.t,
- t/lib/ProFTPD/Tests/Config/DeferWelcome.pm:
- Add regression tests for the DeferWelcome directive.
+ * 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-08-25 14:16 castaglia
+2013-12-09 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.
+ * 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-08-19 09:32 castaglia
+2013-12-09 castaglia <castaglia>
- * doc/howto/Authentication.html:
- Update Auth howto links. Added FAQ about getting passwords
- logged.
+ * modules/mod_core.c: Fix compiler warning about type mismatch.
-2013-08-19 09:28 castaglia
+2013-12-09 castaglia <castaglia>
- * doc/modules/mod_auth.html:
- Adding more mod_auth directives to the docs.
+ * 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-08-14 14:40 castaglia
+2013-12-08 castaglia <castaglia>
- * doc/contrib/: mod_ban.html, mod_ctrls_admin.html,
- mod_deflate.html, mod_dynmasq.html, mod_exec.html,
- mod_ifsession.html, mod_log_forensic.html, mod_qos.html,
- mod_quotatab_file.html, mod_quotatab_ldap.html,
- mod_quotatab_sql.html, mod_radius.html, mod_readme.html,
- mod_rewrite.html, mod_shaper.html, mod_site_misc.html,
- 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.
+ * tests/t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm: Add
+ regression tests for <Anonymous> configs with upload-only
+ directories.
-2013-08-14 14:16 castaglia
+2013-12-08 castaglia <castaglia>
- * doc/contrib/mod_ban.html:
- Typo.
+ * contrib/ftpasswd, doc/contrib/ftpasswd.html: Minor reordering of
+ new --lock, --unlock options, and updating the docs to reflect the
+ new options.
-2013-08-14 08:56 castaglia
+2013-12-08 castaglia <castaglia>
- * contrib/mod_geoip.c:
- Fix mod_geoip's handling of multiple GeoIPAllowFilter directives.
+ * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Adding regression
+ tests for Bug#3994.
-2013-08-13 22:22 castaglia
+2013-12-08 castaglia <castaglia>
- * doc/contrib/: mod_ban.html, mod_deflate.html, mod_exec.html,
- mod_quotatab.html, mod_radius.html, mod_rewrite.html,
- mod_shaper.html, mod_wrap2.html:
- Fix typos.
+ * NEWS, RELEASE_NOTES, contrib/ftpasswd: Bug#3994 - ftpasswd utility
+ should support --lock/--unlock options.
-2013-08-13 22:18 castaglia
+2013-12-08 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Typo.
+ * NEWS, contrib/ftpasswd: Bug#3995 - ftpasswd utility should prevent
+ concurrent modification of files.
-2013-08-12 13:02 castaglia
+2013-12-05 castaglia <castaglia>
- * contrib/mod_geoip.c:
- Bug#3967 - Typo in TraceLog output: "Allow" should be "Deny".
+ * doc/contrib/mod_sftp.html: Update mod_sftp docs for the new
+ IgnoreSCPUploadTimes SFTPOption.
-2013-08-09 14:43 castaglia
+2013-12-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logging/ExtendedLog.pm,
- Modules/mod_sql_sqlite.pm:
- Added/updated logging-related tests for Bug#3966.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression
+ test for Bug#3998 (the new IgnoreSCPUploadTimes SFTPOption).
-2013-08-09 14:42 castaglia
+2013-12-05 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.
+ * 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-08-07 09:35 castaglia
+2013-12-05 castaglia <castaglia>
- * src/: inet.c, support.c:
- Preemptive support for FreeBSD 10.
+ * doc/contrib/mod_sftp.html: List the supported SFTPOptions in
+ lexicographical order.
-2013-08-07 09:09 castaglia
+2013-12-05 castaglia <castaglia>
- * modules/mod_log.c:
- Eliminate a strlen(3) when writing the full ExtendedLog line.
+ * modules/mod_ctrls.c: Make sure that the mod_ctrls module cannot be
+ built without using the --enable-ctrls configure option.
-2013-08-02 09:16 castaglia
+2013-12-04 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).
+ * tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Adding regression test
+ for the ALLO command in a chrooted environment.
-2013-08-01 08:36 castaglia
+2013-12-04 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Adding documentation for the new TLSVerifyServer directive.
+ * 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-07-31 23:23 castaglia
+2013-11-24 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.
+ * 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-07-31 23:07 castaglia
+2013-11-18 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.
+ * 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-07-31 14:14 castaglia
+2013-11-11 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3955 - Support secure FXP (site-to-site) transfers using
- SSCN.
+ * doc/modules/mod_log.html: Added description of new %{basename}
+ variable to the LogFormat docs.
-2013-07-29 09:54 castaglia
+2013-11-11 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- FAQ about FileZilla, symlinks, and MLSD for older proftpd
- versions.
+ * 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-07-26 14:53 castaglia
+2013-11-11 castaglia <castaglia>
- * doc/contrib/mod_ban.html:
- Add FAQ about banning root logins.
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c, include/mod_log.h,
+ modules/mod_log.c: Bug#3987 - LogFormat variable for just the
+ filename.
-2013-07-25 13:15 castaglia
+2013-11-10 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Backport of fix for Bug#3962 to 1.3.4 branch.
+ * 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-07-25 13:13 castaglia
+2013-11-10 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3962 - Directory creation fails (chmod(2) EPERM) when root
- privs are used in some cases.
+ * src/auth.c: Make the "Preparing to chroot to" log message slightly
+ less noisy.
-2013-07-22 14:51 castaglia
+2013-11-10 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Adding mod_sftp FAQ/gotcha, per Bug#3961.
+ * 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-07-19 10:17 castaglia
+2013-11-10 castaglia <castaglia>
- * doc/modules/mod_cap.html:
- Document the support for CAP_FSETID for the CapabilitiesSet
- directive, per Bug#3960.
+ * modules/mod_auth_file.c: Improve the log message slightly when
+ mod_auth_file can't open its configured files.
-2013-07-19 10:16 castaglia
+2013-11-09 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_cap.c:
- Bug#3960 - Support the CAP_FSETID Linux capability, for
- preserving directory SGID bit.
+ * src/bindings.c: Found another place with inconsistent log message
+ formatting; now fixed.
-2013-07-18 14:06 castaglia
+2013-11-09 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Backport of fix for Bug#3958 to 1.3.4 branch.
+ * 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-07-18 14:06 castaglia
+2013-11-09 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3958 - Directory creation does not honor single-parameter
- Umask setting.
+ * doc/modules/mod_core.html: Include description for the UserOwner
+ directive in the mod_core docs.
-2013-07-18 12:33 castaglia
+2013-11-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm:
- Adding regression tests which would have caught Bug#3958.
+ * contrib/mod_ifsession.c: Log messages about misconfigurations
+ should be logged at WARNING, not ERR.
-2013-07-17 13:00 castaglia
+2013-11-05 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.
+ * 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-07-17 10:38 castaglia
+2013-11-05 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Still fixing more backport issues. Sigh.
+ * doc/contrib/mod_tls_shmcache.html: Updated mod_tls_shmcache docs.
-2013-07-17 10:36 castaglia
+2013-10-27 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Fixing bad backport of patch for Bug#3959.
+ * doc/howto/TLS.html: TLS FAQ about difference between shm and
+ memcache for SSL session caching.
-2013-07-17 10:30 castaglia
+2013-10-15 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3959 to 1.3.4 branch.
+ * 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-07-17 10:15 castaglia
+2013-10-15 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3959 - mod_sftp does not honor <Directory>/<Limit> sections
- when symlinks are involved.
+ * NEWS, src/fsio.c: Bug#3986 - Support filesystems which do not
+ support chmod(2)/chown(2), e.g. FAT/ExFAT.
- The mod_sftp module was not properly canoncalizing the paths sent
- by the client before checking <Directory> restrictions.
+2013-10-14 castaglia <castaglia>
-2013-07-17 09:45 castaglia
+ * NEWS, RELEASE_NOTES: Bug#3982 - Normalize log messages and levels.
- * configure:
- Updated configure.
+2013-10-13 castaglia <castaglia>
-2013-07-17 09:37 castaglia
+ * modules/mod_dso.c, src/log.c: Fix comments to match code.
- * 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-10-13 castaglia <castaglia>
-2013-07-16 23:26 castaglia
+ * modules/mod_core.c: Tweak a log message to be more in line with
+ similar log messages elsewhere.
- * 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-10-13 castaglia <castaglia>
-2013-07-16 14:40 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.
- * contrib/mod_tls.c:
- Fix compiler warning about unused variable (only when
- --disable-ipv6 configure option is used).
+2013-10-13 castaglia <castaglia>
-2013-07-16 14:36 castaglia
+ * src/fsio.c: Found only one instance of a DEBUG level message which
+ needed a different log level (Bug#3982).
- * src/ftpdctl.c:
- Fix compiler warning.
+2013-10-13 castaglia <castaglia>
-2013-07-16 14:35 castaglia
+ * src/auth.c: The log message about chrooting is more of a DEBUG
+ level message, rather than INFO (per Bug#3982).
- * src/netaddr.c:
- Fix compiler warning on Solaris.
+2013-10-13 castaglia <castaglia>
-2013-07-16 14:27 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.
- * contrib/mod_sftp/fxp.c:
- Fix compiler warnings about shadowed local variables.
+2013-10-13 castaglia <castaglia>
-2013-07-16 12:07 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).
- * NEWS, include/dirtree.h, modules/mod_log.c, src/auth.c,
- src/dirtree.c:
- Backport of fix for Bug#3957 to 1.3.4 branch.
+2013-10-13 castaglia <castaglia>
-2013-07-16 12:06 castaglia
+ * contrib/ftpmail: If there are comments after the user/password
+ values in the ftpmail SMTP AUTH file, trim them off.
- * 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.
+2013-10-13 castaglia <castaglia>
- 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.
+ * 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-07-09 10:41 castaglia
+2013-10-13 castaglia <castaglia>
- * doc/howto/: index.html, ECCN.html:
- Adding ECCN howto.
+ * 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-07-05 10:48 castaglia
+2013-10-13 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.
+ * 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-07-02 15:11 castaglia
+2013-10-11 castaglia <castaglia>
- * tests/: tests.pl, t/config/allowforeignaddress.t,
- t/lib/ProFTPD/Tests/Config/AllowForeignAddress.pm:
- Adding regression tests for site-to-site transfers (FXP) and the
- AllowForeignAddress directive.
+ * src/auth.c: Slightly better log message, hopefully.
-2013-07-02 09:54 castaglia
+2013-10-11 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.
+ * 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-07-01 22:46 castaglia
+2013-10-09 castaglia <castaglia>
- * doc/howto/Stopping.html:
- HTML formatting (missed closing tag).
+ * doc/howto/Logging.html: Fix broken anchor tag.
-2013-07-01 14:57 castaglia
+2013-10-09 castaglia <castaglia>
- * src/fsio.c:
- Quell compiler warning on Solaris.
+ * src/timers.c: Use the WARNING level if we can't install our signal
+ handlers needed for timers, rather than NOTICE.
-2013-07-01 10:42 castaglia
+2013-10-09 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3954 to 1.3.4 branch.
+ * contrib/mod_dynmasq.c: Slightly better language in the log message
+ when we can't resolve a DNS name.
-2013-07-01 10:42 castaglia
+2013-10-09 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3954 - scp downloads result in segfault.
+ * 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-06-30 12:01 castaglia
+2013-10-09 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.
+ * 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-06-30 10:53 castaglia
+2013-10-09 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).
+ * modules/mod_xfer.c: Found a few more places where errno might be
+ getting clobbered, and thus leading to inaccurate reporting.
-2013-06-29 22:13 castaglia
+2013-10-09 castaglia <castaglia>
- * src/inet.c:
- Defensive check.
+ * modules/mod_delay.c: Preserve errno properly when reporting errors
+ here.
-2013-06-29 13:09 castaglia
+2013-10-09 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.
+ * src/main.c: Fix another case where the reported errno value might
+ not be the correct one.
-2013-06-29 12:56 castaglia
+2013-10-09 castaglia <castaglia>
- * src/netio.c:
- More attempts to properly preserve the errno value, e.g. during
- polling.
+ * modules/mod_auth.c: Cut down on possibly-spurious log warnings.
-2013-06-28 21:13 castaglia
+2013-10-09 castaglia <castaglia>
- * modules/mod_core.c:
- Correcting a log message.
+ * src/lastlog.c: Another place where we might be losing the real
+ errno value.
-2013-06-28 18:21 castaglia
+2013-10-09 castaglia <castaglia>
- * NEWS, contrib/mod_ldap.c:
- Backport of fix for Bug#3951 to 1.3.4 branch.
+ * src/mkhome.c: Make sure that when an error occurs, we log and
+ preserve the errno properly.
-2013-06-28 18:20 castaglia
+2013-10-09 castaglia <castaglia>
- * NEWS, contrib/mod_ldap.c:
- Bug#3951 - Null pointer dereference for mod_ldap logins when
- LDAPDefaultAuthScheme not configured.
+ * src/wtmp.c: Fix a few more places where we need to be careful to
+ preserve the errno value.
-2013-06-28 17:37 castaglia
+2013-10-09 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Updated spec with fixes from the Fedora maintainer.
+ * modules/mod_auth_unix.c: More cases where we need to take care to
+ preserve the errno value properly.
-2013-06-24 13:01 castaglia
+2013-10-09 castaglia <castaglia>
- * doc/contrib/mod_ifsession.html:
- Formatting.
+ * modules/mod_core.c: Preserve errno for proper error reporting.
-2013-06-24 12:58 castaglia
+2013-10-09 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.
+ * modules/mod_facl.c: Make sure we preserve errno appropriately.
-2013-06-24 10:15 castaglia
+2013-10-09 castaglia <castaglia>
- * src/str.c:
- Remove unused variable.
+ * doc/modules/mod_core.html: One more link which should use the
+ #Syslog anchor in the Logging doc.
-2013-06-23 14:35 castaglia
+2013-10-09 castaglia <castaglia>
- * NEWS, modules/mod_delay.c:
- Backporting fix for Bug#3858 to 1.3.4 branch.
+ * contrib/mod_sql_postgres.c: Forgot to update copyright date on
+ previous checkin.
-2013-06-23 14:34 castaglia
+2013-10-08 castaglia <castaglia>
- * NEWS, modules/mod_delay.c:
- Bug#3858 - mod_delay allows too-large values, leading to client
- hang on authentication.
+ * 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-06-21 23:21 castaglia
+2013-10-07 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.
+ * 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-06-21 23:20 castaglia
+2013-10-07 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.
+ * NEWS, RELEASE_NOTES, contrib/mod_ldap.c: Bug#3888 - Add LDAPLog
+ directive to mod_ldap.
-2013-06-21 22:13 castaglia
+2013-10-07 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.
+ * 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-06-21 21:59 castaglia
+2013-10-07 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.
+ * contrib/mod_sftp/auth.c, modules/mod_auth.c: Log "SECURITY
+ VIOLATION" messages at the NOTICE level (Bug#3982).
-2013-06-21 21:46 castaglia
+2013-10-07 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.
+ * 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.
- 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-10-06 castaglia <castaglia>
-2013-06-21 21:43 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.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Make the ExtendedLog tests pass properly by dealing with
- MacOSX-isms where needed.
+2013-10-06 castaglia <castaglia>
-2013-06-21 21:05 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).
- * contrib/mod_sftp/fxp.c:
- More work on FTP response codes for ExtendedLog for SFTP sessions
- (part of Bug#3948).
+2013-10-06 castaglia <castaglia>
-2013-06-21 16:01 castaglia
+ * contrib/mod_snmp/mod_snmp.c: mod_snmp, too, needs to log fork(2)
+ failures at the ALERT level (Bug#3982).
- * RELEASE_NOTES:
- Add note about LogFormat %s handling change for SFTP transfers.
+2013-10-06 castaglia <castaglia>
-2013-06-21 16:00 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.
- * 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-10-06 castaglia <castaglia>
-2013-06-21 13:59 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).
- * 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 at openssh.com requests.
+2013-10-06 castaglia <castaglia>
-2013-06-21 13:31 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.
- * RELEASE_NOTES, doc/modules/mod_log.html:
- Update docs for LogFormat %d/%D handling changes.
+2013-10-06 castaglia <castaglia>
-2013-06-21 13:25 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.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Adding regression tests for Bug#3950.
+2013-10-06 castaglia <castaglia>
-2013-06-21 13:24 castaglia
+ * contrib/mod_snmp/.cvsignore: Updated .cvsignore files for
+ mod_dnsbl and mod_snmp.
- * NEWS, contrib/mod_sql.c, modules/mod_log.c:
- Bug#3950 - LogFormat %d/%D variables not resolved properly for
- directory listings.
+2013-10-06 castaglia <castaglia>
-2013-06-21 08:38 castaglia
+ * doc/howto/LogLevels.html: More typos, layout fixes.
- * 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-10-06 castaglia <castaglia>
-2013-06-20 13:58 castaglia
+ * doc/howto/LogLevels.html: Typo.
- * NEWS, contrib/mod_sftp/fxp.c:
- Backporting fix for Bug#3947 to 1.3.4 branch.
+2013-10-06 castaglia <castaglia>
-2013-06-20 13:56 castaglia
+ * doc/howto/index.html: Add the LogLevels doc to the index.
- * 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-10-06 castaglia <castaglia>
-2013-06-20 13:23 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.
- * 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-10-06 castaglia <castaglia>
-2013-06-20 13:21 castaglia
+ * doc/howto/Compiling.html: Minor embellishment on what the
+ install_user/install_group variables are for (and what they are NOT
+ for).
- * 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-10-06 castaglia <castaglia>
-2013-06-20 09:13 castaglia
+ * doc/howto/ConfigurationTricks.html: Add recipe for using
+ environment variable to achieve ServerRoot-like functionality.
- * doc/modules/mod_core.html:
- Add missing description of MaxConnectionRate directive to the
- mod_core docs.
+2013-10-06 castaglia <castaglia>
-2013-06-17 14:50 castaglia
+ * doc/howto/Filters.html: Add recipe about filtering SITE CHMOD
+ parameters using DenyFilter to doc. Fixed links to be relative.
- * doc/modules/mod_cap.html:
- Mention support for "CAP_SETUID" in the CapabilitiesSet directive
- docs.
+2013-10-06 castaglia <castaglia>
-2013-06-17 14:47 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.
- * NEWS, modules/mod_cap.c:
- Bug#3945 - Spurious log messages at session close.
+2013-10-06 castaglia <castaglia>
-2013-06-14 17:32 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.
- * 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-10-06 castaglia <castaglia>
-2013-06-14 15:17 castaglia
+ * src/var.c: Clean up minor stylistic nits in the Variables API; no
+ real functional change.
- * contrib/mod_snmp/mod_snmp.c:
- Fix the forged packet check in mod_snmp to check both address AND
- port, rather than just address.
+2013-10-05 castaglia <castaglia>
- 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.
+ * src/fsio.c: Additional improvements for Bug#3963, reducing the
+ scope of root privs used when setting created directory permissions.
-2013-06-14 11:10 castaglia
+2013-10-05 castaglia <castaglia>
- * include/: version.h:
- Revving version for CVS.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Updated mod_exec
+ ExecOption useStdin regression test in light of Bug#3981.
-2013-06-14 10:43 castaglia
+2013-10-05 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * NEWS, contrib/mod_exec.c: Bug#3981 - Null pointer dereference in
+ mod_exec with ExecOption useStdin.
-2013-06-14 10:42 castaglia
+2013-10-05 castaglia <castaglia>
- * NEWS:
- Updating NEWS with today's date for 1.3.5rc3 release.
+ * 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-06-14 10:41 castaglia
+2013-10-05 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing 1.3.5rc3 for release.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support writing out of
+ configs that are given as arrayrefs, not just as hashrefs.
-2013-06-14 10:41 castaglia
+2013-10-05 castaglia <castaglia>
- * locale/files.txt:
- Updated files.txt to include new mod_snmp, mod_sftp files.
+ * 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-06-14 10:21 castaglia
+2013-10-05 castaglia <castaglia>
- * NEWS:
- Forgot to update the NEWS file to have today's date for the
- release of 1.3.4d.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ratio.pm: Add a (currently
+ failing) mod_ratio regression, found in an Ubuntu bug report.
-2013-06-14 10:19 castaglia
+2013-10-03 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * doc/contrib/mod_ratio.html: Start working on mod_ratio docs, if
+ only to cut down on bug reports about it.
-2013-06-14 10:18 castaglia
+2013-10-03 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Updating .spec file for release of 1.3.4d.
+ * doc/contrib/mod_sftp_pam.html: Fix typos and improve the
+ installation instructions for mod_sftp_pam.
-2013-06-14 10:01 castaglia
+2013-10-02 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes for 1.3.4d.
+ * modules/mod_dso.c: Update mod_dso to use the pr_strnrstr()
+ function, which duplicated code already in mod_dso.
-2013-06-14 09:56 castaglia
+2013-10-02 castaglia <castaglia>
- * RELEASE_NOTES:
- Fleshed out release notes for 1.3.5rc3.
+ * RELEASE_NOTES: Plan to release RC4, and mention the fixing of the
+ LDFLAGS for module builds.
-2013-06-14 09:54 castaglia
+2013-10-02 castaglia <castaglia>
- * doc/howto/SQL.html:
- Adding section on using the SQL PrimaryKey directives to the
- howto.
+ * 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-06-14 09:21 castaglia
+2013-10-02 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Add descriptions for the SQLUserPrimaryKey, SQLGroupPrimaryKey
- directives added for Bug#3864.
+ * 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-06-10 10:13 castaglia
+2013-10-02 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.
+ * 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-06-10 10:12 castaglia
+2013-10-01 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.
+ * modules/mod_auth_unix.c: Fix typo in patch for Bug#3952 that was
+ resulting in segfault.
-2013-06-10 09:06 castaglia
+2013-10-01 castaglia <castaglia>
- * doc/modules/mod_rlimit.html:
- Removed docs for now-obsolete RLimitProcesses directive.
+ * contrib/mod_exec.c: Remove extraneous semicolon; I've been trying
+ not to use them after the PRIVS macros.
-2013-06-10 09:05 castaglia
+2013-09-30 castaglia <castaglia>
- * NEWS, modules/mod_rlimit.c:
- Bug#3941 - RLimitProcesses causes problems with setuid/setreuid.
+ * 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.
- Remove the RLimitProcesses and setrlimit(RLIMIT_NPROC) code; it
- was causing more problems (due to setuid(2) tricks) than it
- solved.
+2013-09-30 castaglia <castaglia>
-2013-06-07 14:57 castaglia
+ * contrib/mod_sftp/mod_sftp.c: Make sure that ECC key exchange
+ algorithms can be explicitly configured via the SFTPKeyExchanges
+ directive, when supported.
- * RELEASE_NOTES, doc/contrib/mod_sql_passwd.html:
- Add documentation for the new PBKDF2 support.
+2013-09-29 castaglia <castaglia>
-2013-06-07 14:41 castaglia
+ * doc/modules/mod_auth_unix.html: Updated PersistentPasswd docs per
+ Bug#3952.
- * 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-09-29 castaglia <castaglia>
-2013-06-06 16:55 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'.
- * NEWS, contrib/mod_sftp_sql.c:
- Bug#3942 - mod_sftp_sql should support multiple keys concatenated
- together in a single column.
+2013-09-27 castaglia <castaglia>
-2013-06-06 16:52 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm:
- Adding regression test for Bug#3942.
+2013-09-27 castaglia <castaglia>
-2013-06-06 16:39 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.
- * doc/contrib/mod_sftp.html:
- Adding another mod_sftp FAQ.
+2013-09-27 castaglia <castaglia>
-2013-06-06 16:18 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.
- * contrib/: mod_load/Makefile.in, mod_sftp/Makefile.in,
- mod_snmp/Makefile.in, mod_wrap2/Makefile.in:
- Updating several contrib module Makefiles to clean up properly
- after themselves when doing a 'make clean'.
+2013-09-25 castaglia <castaglia>
-2013-06-06 13:26 castaglia
+ * contrib/mod_sftp/display.c, src/display.c: Silly compilers
+ disagree on whether '' is valid syntax for denoting a single
+ character. Sigh.
- * src/rlimit.c:
- If both current and max are NULL pointers, then return EINVAL; no
- need to proceed further.
+2013-09-25 castaglia <castaglia>
-2013-06-06 09:45 castaglia
+ * contrib/mod_sftp/display.c, src/display.c: When formatting the %f
+ Display variable, the units index was not being calculated
+ correctly.
- * contrib/mod_sftp/rfc4716.c:
- Comment nit; no functional change.
+2013-09-25 castaglia <castaglia>
-2013-06-05 20:30 castaglia
+ * src/fsio.c: Minor clarifying comment.
- * 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-09-25 castaglia <castaglia>
-2013-06-05 09:02 castaglia
+ * NEWS, contrib/mod_sql_odbc.c: Bug#3979 - mod_sql_odbc compiler
+ warnings on 64-bit systems using unixODBC.
- * modules/mod_dso.c:
- Handle a LoadModule module name with ".cpp" extension, in
- addition to ".c", for loading e.g. C++ modules.
+2013-09-24 castaglia <castaglia>
-2013-06-03 11:07 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.
- * contrib/mod_sftp/umac.c:
- Bug#3940 - Compiler warnings in mod_sftp.
+2013-09-20 castaglia <castaglia>
- Fixed -Wstrict-aliasing warnings in umac.c.
+ * contrib/mod_sftp/keys.c, contrib/mod_tls.c: Updated the cached
+ PID, so that log messages reflected the forked process' PID
+ properly.
-2013-05-31 14:44 castaglia
+2013-09-20 castaglia <castaglia>
- * RELEASE_NOTES:
- Working on fleshing out release notes; still need to do more.
+ * 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-05-28 14:04 castaglia
+2013-09-20 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c, src/ctrls.c:
- Backport of fix for Bug#3939 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Adding regression
+ test for Bug#3964.
-2013-05-28 14:02 castaglia
+2013-09-20 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c, src/ctrls.c:
- Bug#3939 - Disable Controls for "ServerType inetd" servers.
+ * NEWS, RELEASE_NOTES, contrib/mod_exec.c: Bug#3964 - Support
+ running ExecOnEvent actions with logged-in user's permissions.
-2013-05-23 08:43 castaglia
+2013-09-20 castaglia <castaglia>
- * doc/howto/Limit.html:
- Add section about using multiple <Limit LOGIN> sections to the
- Limit howto.
+ * NEWS, contrib/mod_geoip.c: Bug#3976 - ProFTPD terminating (signal
+ 11) crash for GeoLiteCity-20130903 database lookup.
-2013-05-23 08:36 castaglia
+2013-09-20 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).
+ * NEWS, contrib/mod_geoip.c: Bug#3975 - Error printed to stderr when
+ loading GeoIP Lite country database using IndexCache flag.
-2013-05-17 10:16 castaglia
+2013-09-19 castaglia <castaglia>
- * doc/howto/SQL.html:
- Add SQLNamedConnectInfo recipe to SQL howto.
+ * 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-05-17 08:04 castaglia
+2013-09-19 castaglia <castaglia>
- * doc/modules/: mod_ctrls.html:
- Copy-pasto.
+ * 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-05-16 11:33 castaglia
+2013-09-18 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).
+ * NEWS, src/fsio.c: Bug#3963 - Improve permission setting when
+ creating directories.
-2013-05-16 10:07 castaglia
+2013-09-18 castaglia <castaglia>
- * NEWS, RELEASE_NOTES:
- Mention addition of mod_snmp in release docs.
+ * doc/contrib/index.html: Update contrib module index with link to
+ mod_dnsbl.
-2013-05-15 08:27 castaglia
+2013-09-18 castaglia <castaglia>
- * tests/: tests.pl, t/etc/modules/mod_snmp/ssh_host_dsa_key,
- t/etc/modules/mod_snmp/ssh_host_dsa_key.pub,
- t/etc/modules/mod_snmp/ssh_host_rsa_key,
- t/etc/modules/mod_snmp/ssh_host_rsa_key.pub,
- t/etc/modules/mod_snmp/tls-ca-cert.pem,
- t/etc/modules/mod_snmp/tls-server-cert.pem,
- t/lib/ProFTPD/Tests/Modules/mod_snmp.pm,
- t/lib/ProFTPD/Tests/Modules/mod_snmp/ban.pm,
- t/lib/ProFTPD/Tests/Modules/mod_snmp/sftp.pm,
- t/lib/ProFTPD/Tests/Modules/mod_snmp/tls.pm,
- t/modules/mod_snmp.t, t/modules/mod_snmp/ban.t,
- t/modules/mod_snmp/sftp.t, t/modules/mod_snmp/tls.t:
- Adding the mod_snmp testsuite.
+ * contrib/mod_dnsbl/configure: Updated configure for mod_dnsbl.
-2013-05-15 08:21 castaglia
+2013-09-18 castaglia <castaglia>
- * doc/contrib/: index.html, mod_snmp.html:
- Adding mod_snmp documentation.
+ * 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-05-15 08:20 castaglia
+2013-09-18 castaglia <castaglia>
- * contrib/mod_snmp/: Makefile.in, PROFTPD-MIB.txt, agentx.h,
- asn1.c, asn1.h, config.guess, config.sub, configure,
- configure.in, db.c, db.h, install-sh, mib.c, mib.h, mod_snmp.c,
- mod_snmp.h.in, msg.c, msg.h, notify.c, notify.h, packet.c,
- packet.h, pdu.c, pdu.h, smi.c, smi.h, stacktrace.c, stacktrace.h,
- uptime.c, uptime.h,
- contrib/opennms/proftpd.datacollection-config.xml,
- contrib/opennms/proftpd.snmp-graph.properties:
- Adding mod_snmp to the contrib modules of the ProFTPD source
- distribution.
+ * contrib/mod_dnsbl/.cvsignore: Adding necessary .cvsignore file.
-2013-05-15 08:01 castaglia
+2013-09-18 castaglia <castaglia>
- * .cvsignore:
- Ignore any .git/ directories and .gitignore files which may show
- up.
+ * contrib/mod_dnsbl/Makefile.in: Update clean target for mod_dnsbl
+ Makefile.
-2013-05-14 09:41 castaglia
+2013-09-18 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.
+ * RELEASE_NOTES, doc/contrib/mod_dnsbl.html: Mention addition of
+ mod_dnsbl to the contrib/ area.
-2013-05-12 16:13 castaglia
+2013-09-18 castaglia <castaglia>
- * doc/contrib/mod_wrap2_sql.html:
- Include indexes (for performance) in the example schema.
+ * 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-05-08 22:28 castaglia
+2013-09-18 castaglia <castaglia>
- * doc/howto/Memcache.html:
- Adding another memcache-related FAQ.
+ * 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-05-08 22:21 castaglia
+2013-09-18 castaglia <castaglia>
- * doc/howto/: Memcache.html, index.html:
- Adding a howto for Memcache support in proftpd.
+ * 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-05-08 21:19 castaglia
+2013-09-18 castaglia <castaglia>
- * doc/howto/Logging.html:
- Add a wtmp log-related FAQ to the Logging howto.
+ * contrib/mod_sftp/fxp.c: Using a slightly different memory pool
+ here avoids some strange side-effects later.
-2013-05-08 21:09 castaglia
+2013-09-17 castaglia <castaglia>
- * doc/howto/Logging.html:
- No need to direct SystemLog to /dev/null to disable logging;
- simply setting "SystemLog none" is enough.
+ * 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-05-08 20:58 castaglia
+2013-09-17 castaglia <castaglia>
- * doc/modules/mod_dso.html:
- Adding mod_dso FAQ encountered on the proftp-user mailing list
- today.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ tests for the handling of the SSCN command by mod_tls.
-2013-05-08 14:43 castaglia
+2013-09-17 castaglia <castaglia>
- * NEWS, contrib/mod_ldap.c:
- Backport of fix for Bug#3937 to 1.3.4 branch.
+ * 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-05-08 14:43 castaglia
+2013-09-17 castaglia <castaglia>
- * NEWS, contrib/mod_ldap.c:
- Bug#3937 - Segfault when retrieving SSH public key from LDAP
- directory.
+ * RELEASE_NOTES: Mention fix of mod_sftp/mod_sftp_pam memory
+ allocation (CVE-2013-4359) in release notes.
-2013-05-06 22:11 castaglia
+2013-09-15 castaglia <castaglia>
- * doc/modules/mod_memcache.html:
- Mention that the MemcacheServers directive handles Unix domain
- socket paths as well (per Bug#3931).
+ * 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-05-06 21:53 castaglia
+2013-09-15 castaglia <castaglia>
- * contrib/mod_ban.c:
- Typo which broke the BanCache directive's memcache functionality.
+ * 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-05-06 15:11 castaglia
+2013-09-15 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c:
- Backport of fix for Bug#3927 to 1.3.4 branch.
+ * NEWS, modules/mod_xfer.c: Bug#3974 - PathDenyFilter directive does
+ not work as expected for SFTP sessions.
-2013-05-06 15:11 castaglia
+2013-09-15 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c:
- Bug#3927 - Default ControlsSocket created despite custom
- ControlsSocket path.
+ * 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-05-06 09:22 castaglia
+2013-09-15 castaglia <castaglia>
- * contrib/mod_sftp/: scp.c:
- Fix comment from bad patching.
+ * 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-05-06 09:19 castaglia
+2013-09-14 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3935 to 1.3.4 branch.
+ * 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-05-06 09:18 castaglia
+2013-09-14 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3935 - scp download of nonexistent file results in client
- hang.
+ * 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-05-06 09:16 castaglia
+2013-09-13 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.
+ * contrib/mod_sftp_pam.c: Fix gcc-4.8 warning; patch supplied by
+ Sergei Trofimovich <slyfox at gentoo.org>.
-2013-05-03 09:32 castaglia
+2013-09-05 castaglia <castaglia>
- * NEWS, modules/mod_core.c, src/dirtree.c:
- Bug#3934 - HideUser/HideGroup do not work as expected for virtual
- users.
+ * NEWS, modules/mod_auth_unix.c: Bug#3972 - Authentication error on
+ Cygwin due to bad code.
-2013-05-03 09:31 castaglia
+2013-09-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/: HideGroup.pm, HideUser.pm:
- Adding regression tests for Bug#3934 (HideUser/HideGroup not
- working for virtual users).
+ * doc/contrib/mod_sql.html: Document the new IgnoreConfigFile
+ SQLOption (Bug#3971).
-2013-04-30 10:04 castaglia
+2013-09-04 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-04-30 10:01 castaglia
+2013-08-25 castaglia <castaglia>
- * config.h.in, configure.in:
- As part of fixing Bug#3932, we need to backport some of the
- autoconf checks for MySQL's "scrambled password" APIs to the
- 1.3.4 branch.
+ * tests/t/config/deferwelcome.t,
+ tests/t/lib/ProFTPD/Tests/Config/DeferWelcome.pm, tests/tests.pl:
+ Add regression tests for the DeferWelcome directive.
-2013-04-30 09:10 castaglia
+2013-08-25 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c:
- Backport of fix for Bug#3932 to 1.3.4 branch.
+ * 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-04-30 09:09 castaglia
+2013-08-19 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c:
- Bug#3932 - SQLAuthType Backend returns "password mismatch" for
- MySQL PASSWORD().
+ * doc/howto/Authentication.html: Update Auth howto links. Added FAQ
+ about getting passwords logged.
-2013-04-30 09:00 castaglia
+2013-08-19 castaglia <castaglia>
- * NEWS, modules/mod_auth_pam.c:
- Backported fix for Bug#3929 to 1.3.4 branch.
+ * doc/modules/mod_auth.html: Adding more mod_auth directives to the
+ docs.
-2013-04-30 09:00 castaglia
+2013-08-14 castaglia <castaglia>
- * NEWS, modules/mod_auth_pam.c:
- Bug#3929 - pam_session_close() requires root privs on some
- platforms.
+ * 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-04-23 16:25 castaglia
+2013-08-14 castaglia <castaglia>
- * contrib/: ftpasswd, ftpquota:
- Use env in the shebang line, rather than assuming the location of
- perl to use.
+ * doc/contrib/mod_ban.html: Typo.
-2013-04-23 16:14 castaglia
+2013-08-14 castaglia <castaglia>
- * src/proftpd.8.in:
- Incorporating doc patch from FreeBSD ports tree.
+ * contrib/mod_geoip.c: Fix mod_geoip's handling of multiple
+ GeoIPAllowFilter directives.
-2013-04-23 16:12 castaglia
+2013-08-14 castaglia <castaglia>
- * src/wtmp.c:
- Incorporating patch from FreeBSD ports tree.
+ * 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-04-23 15:37 castaglia
+2013-08-14 castaglia <castaglia>
- * src/auth.c:
- Typo.
+ * doc/contrib/mod_sql.html: Typo.
-2013-04-23 08:20 castaglia
+2013-08-12 castaglia <castaglia>
- * src/var.c:
- Backported typecast changes/fixes from trunk.
+ * contrib/mod_geoip.c: Bug#3967 - Typo in TraceLog output: "Allow"
+ should be "Deny".
-2013-04-23 08:20 castaglia
+2013-08-09 castaglia <castaglia>
- * src/var.c:
- Removed unnecessary typecast.
+ * 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-04-23 08:18 castaglia
+2013-08-09 castaglia <castaglia>
- * src/auth.c:
- Backported compiler warning fixes from trunk.
+ * NEWS, contrib/mod_sql.c, modules/mod_core.c, modules/mod_log.c:
+ Bug#3966 - LogFormat %f variable not resolved for some commands.
-2013-04-23 08:18 castaglia
+2013-08-07 castaglia <castaglia>
- * src/auth.c:
- Quell compiler warnings on some platforms/compilers about
- signature mismatches via typecasting.
+ * src/inet.c, src/support.c: Preemptive support for FreeBSD 10.
-2013-04-23 08:14 castaglia
+2013-08-07 castaglia <castaglia>
- * modules/mod_delay.c, src/inet.c:
- Forgot to update copyright years.
+ * modules/mod_log.c: Eliminate a strlen(3) when writing the full
+ ExtendedLog line.
-2013-04-23 08:13 castaglia
+2013-08-02 castaglia <castaglia>
- * modules/mod_delay.c, src/inet.c, src/netaddr.c:
- Better handling of getnameinfo(3) errors, early during a
- connection lifetime.
+ * 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-04-16 12:58 castaglia
+2013-08-01 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).
+ * doc/contrib/mod_tls.html: Adding documentation for the new
+ TLSVerifyServer directive.
-2013-04-16 09:37 castaglia
+2013-08-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- SFTP regression test for HideFiles and symlinks (Bug#3924).
+ * 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-04-16 09:35 castaglia
+2013-08-01 castaglia <castaglia>
- * src/dirtree.c:
- Minor tweak to dir_hide_file(), needed for Bug#3924 (and SFTP
- directory listings, specifically).
+ * 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-04-16 09:04 castaglia
+2013-07-31 castaglia <castaglia>
- * NEWS, modules/mod_facts.c, modules/mod_ls.c, src/dirtree.c:
- Bug#3924 - HideFiles does not filter symlinks.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3955 - Support secure
+ FXP (site-to-site) transfers using SSCN.
-2013-04-16 09:03 castaglia
+2013-07-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Adding regression tests for Bug#3924.
+ * doc/modules/mod_facts.html: FAQ about FileZilla, symlinks, and
+ MLSD for older proftpd versions.
-2013-04-15 09:14 castaglia
+2013-07-26 castaglia <castaglia>
- * contrib/mod_sftp/fxp.h:
- Missing checkin for Bug#3926; this fixes the CVS build.
+ * doc/contrib/mod_ban.html: Add FAQ about banning root logins.
-2013-04-12 07:13 castaglia
+2013-07-25 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Fix up the SFTPAuthorizedUserKeys directive description.
+ * NEWS, src/fsio.c: Bug#3962 - Directory creation fails (chmod(2)
+ EPERM) when root privs are used in some cases.
-2013-04-11 11:35 castaglia
+2013-07-22 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Adding FAQ to mod_sftp docs about localised directory listings,
- from Bug#3925.
+ * doc/contrib/mod_sftp.html: Adding mod_sftp FAQ/gotcha, per
+ Bug#3961.
-2013-04-11 11:29 castaglia
+2013-07-19 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Backporting fix for Bug#3925 to 1.3.4 branch.
+ * doc/modules/mod_cap.html: Document the support for CAP_FSETID for
+ the CapabilitiesSet directive, per Bug#3960.
-2013-04-11 11:28 castaglia
+2013-07-19 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#3925 - SFTP directory listings are sensitive to locale
- environment variables.
+ * NEWS, RELEASE_NOTES, modules/mod_cap.c: Bug#3960 - Support the
+ CAP_FSETID Linux capability, for preserving directory SGID bit.
-2013-04-10 21:39 castaglia
+2013-07-18 castaglia <castaglia>
- * RELEASE_NOTES, doc/contrib/mod_sftp.html:
- Update mod_sftp docs with mention of support for the fsync
- extension.
+ * NEWS, src/fsio.c: Bug#3958 - Directory creation does not honor
+ single-parameter Umask setting.
-2013-04-10 21:37 castaglia
+2013-07-18 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c:
- Bug#3926 - Support OpenSSH fsync SFTP extension.
+ * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Adding regression tests
+ which would have caught Bug#3958.
-2013-04-09 22:28 castaglia
+2013-07-17 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Fix the length of the strings compared for the OpenSSH extensions
- in SFTP EXTENDED requests.
+ * 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-04-05 11:41 castaglia
+2013-07-17 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.
+ * 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-04-03 09:49 castaglia
+2013-07-17 castaglia <castaglia>
- * modules/mod_rlimit.c:
- Correct the bug number in the comment.
+ * configure: Updated configure.
-2013-04-03 09:48 castaglia
+2013-07-17 castaglia <castaglia>
- * modules/mod_cap.c:
- Slightly better error message when setreuid(2) fails.
+ * 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-04-03 09:47 castaglia
+2013-07-17 castaglia <castaglia>
- * NEWS, modules/mod_rlimit.c:
- Bug#3923 - mod_cap does not revoke root privileges properly for
- SFTP connections.
+ * 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-04-03 09:46 castaglia
+2013-07-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm:
- Adding regression test for Bug#3923.
+ * contrib/mod_tls.c: Fix compiler warning about unused variable
+ (only when --disable-ipv6 configure option is used).
-2013-03-29 13:47 castaglia
+2013-07-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Adding more regression tests for <Directory> + <Limit> configs.
+ * src/ftpdctl.c: Fix compiler warning.
-2013-03-29 10:25 castaglia
+2013-07-16 castaglia <castaglia>
- * configure:
- Updated configure.
+ * src/netaddr.c: Fix compiler warning on Solaris.
-2013-03-29 10:19 castaglia
+2013-07-16 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.
+ * contrib/mod_sftp/fxp.c: Fix compiler warnings about shadowed local
+ variables.
-2013-03-29 09:29 castaglia
+2013-07-16 castaglia <castaglia>
- * contrib/mod_sftp/auth-kbdint.c:
- Include explanatory comment about the errno value and Bug#3921.
+ * 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-03-28 16:02 castaglia
+2013-07-09 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth-kbdint.c:
- Bug#3921 - Single failed keyboard-interactive login attempt
- causes SSH connection to close prematurely.
+ * doc/howto/ECCN.html, doc/howto/index.html: Adding ECCN howto.
-2013-03-28 16:01 castaglia
+2013-07-05 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp_pam.pm,
- t/modules/mod_sftp_pam.t:
- Start working on regression tests for the mod_sftp_pam module, in
- light of Bug#3921.
+ * contrib/mod_sftp_pam.c, modules/mod_auth_pam.c: Fix possible minor
+ memory leak with an error happens during PAM message processing.
-2013-03-28 13:56 castaglia
+2013-07-02 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for the umac-64 at openssh.com support added
- for Bug#3920.
+ * 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-03-28 13:31 castaglia
+2013-07-02 castaglia <castaglia>
- * contrib/mod_sftp/mac.c:
- Typo. Sigh.
+ * 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-03-28 13:29 castaglia
+2013-07-02 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).
+ * doc/howto/Stopping.html: HTML formatting (missed closing tag).
-2013-03-28 13:01 castaglia
+2013-07-01 castaglia <castaglia>
- * contrib/mod_sftp/mod_sftp.c:
- Need to include the mac.h header now, to avoid compiler warnings
- about unknown functions.
+ * src/fsio.c: Quell compiler warning on Solaris.
-2013-03-28 12:56 castaglia
+2013-07-01 castaglia <castaglia>
- * contrib/mod_sftp/: msg.c, msg.h:
- Forgot to commit these changes for Bug#3920.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3954 - scp downloads result in
+ segfault.
-2013-03-28 11:50 castaglia
+2013-06-30 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Update the mod_sftp docs to reflect supporting
- umac-64 at openssh.com.
+ * 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-03-28 11:48 castaglia
+2013-06-30 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 at openssh.com digest for mod_sftp.
+ * 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-03-21 15:38 castaglia
+2013-06-30 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.
+ * src/inet.c: Defensive check.
-2013-03-20 11:24 castaglia
+2013-06-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Clean up the SQLite script once we're done with it.
+ * 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-03-15 21:47 castaglia
+2013-06-29 castaglia <castaglia>
- * doc/modules/mod_log.html:
- Bug#3864 added support for (among other things) a %g LogFormat
- variable; updated the LogFormat docs accordingly.
+ * src/netio.c: More attempts to properly preserve the errno value,
+ e.g. during polling.
-2013-03-15 21:46 castaglia
+2013-06-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Adding regression tests for the SQL PrimaryKey directives added
- for Bug#3864.
+ * modules/mod_core.c: Correcting a log message.
-2013-03-15 21:45 castaglia
+2013-06-29 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.
+ * NEWS, contrib/mod_ldap.c: Bug#3951 - Null pointer dereference for
+ mod_ldap logins when LDAPDefaultAuthScheme not configured.
-2013-03-14 19:35 castaglia
+2013-06-29 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.
+ * contrib/dist/rpm/proftpd.spec: Updated spec with fixes from the
+ Fedora maintainer.
-2013-03-14 17:05 castaglia
+2013-06-24 castaglia <castaglia>
- * doc/howto/KeepAlives.html:
- Minor grammar fixes.
+ * doc/contrib/mod_ifsession.html: Formatting.
-2013-03-14 14:59 castaglia
+2013-06-24 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.
+ * doc/contrib/mod_ifsession.html: Update mod_ifsession Usage section
+ with mention of loading it last, when using it as a shared module.
-2013-03-14 14:51 castaglia
+2013-06-24 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.c,
- src/regexp.c:
- Backport of fix for Bug#3918 to 1.3.4 branch.
+ * src/str.c: Remove unused variable.
-2013-03-14 14:49 castaglia
+2013-06-23 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.
+ * NEWS, modules/mod_delay.c: Bug#3858 - mod_delay allows too-large
+ values, leading to client hang on authentication.
-2013-03-14 14:47 castaglia
+2013-06-22 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for Bug#3918.
+ * 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-03-13 11:08 castaglia
+2013-06-22 castaglia <castaglia>
- * doc/modules/mod_xfer.html:
- Updating DeleteAbortedStores doc per Bug#3917.
+ * tests/api/fsio.c: Add a unit test for the pr_fs_dircat() function;
+ we're going to be refactoring it a bit.
-2013-03-13 11:05 castaglia
+2013-06-22 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c, modules/mod_xfer.c:
- Bug#3917 - Make DeleteAbortedStores on by default when
- HiddenStores enabled.
+ * 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-03-13 10:57 castaglia
+2013-06-22 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm:
- Adding regression test for Bug#3917.
+ * 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-03-13 10:18 castaglia
+2013-06-22 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Adding another regression test for Bug#3915.
+ * 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-03-11 18:45 castaglia
+2013-06-22 castaglia <castaglia>
- * doc/howto/TLS.html:
- Include the error message frequently seen on the client end of
- things in the FAQ about NoSessionReuseRequired.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Make the
+ ExtendedLog tests pass properly by dealing with MacOSX-isms where
+ needed.
-2013-03-11 18:42 castaglia
+2013-06-22 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add TLS FAQ about data transfers and the NoSessionReuseRequired
- TLSOption.
+ * contrib/mod_sftp/fxp.c: More work on FTP response codes for
+ ExtendedLog for SFTP sessions (part of Bug#3948).
-2013-03-08 16:43 castaglia
+2013-06-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Adding regression test for Bug#3915.
+ * RELEASE_NOTES: Add note about LogFormat %s handling change for
+ SFTP transfers.
-2013-03-08 11:45 castaglia
+2013-06-21 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3914 - 1.3.5rc2 fails to build on Solaris 10.
+ * 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-03-08 10:21 castaglia
+2013-06-21 castaglia <castaglia>
- * contrib/mod_sftp/msg.c:
- Quell compiler (and static code analysi) warnings (Bu#3912).
+ * 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 at openssh.com requests.
-2013-03-08 08:32 castaglia
+2013-06-21 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Handle potential NULL return value from getpwnam(3) better.
- Stylistic nits.
+ * RELEASE_NOTES, doc/modules/mod_log.html: Update docs for LogFormat
+ %d/%D handling changes.
-2013-03-08 08:25 castaglia
+2013-06-21 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.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding
+ regression tests for Bug#3950.
-2013-03-08 08:22 castaglia
+2013-06-21 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.
+ * NEWS, contrib/mod_sql.c, modules/mod_log.c: Bug#3950 - LogFormat
+ %d/%D variables not resolved properly for directory listings.
-2013-03-07 16:12 castaglia
+2013-06-21 castaglia <castaglia>
- * contrib/mod_sql_mysql.c:
- Add comment about known compiler warning about "implicit function
- declaration" (Bug#3908).
+ * 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-03-07 16:00 castaglia
+2013-06-20 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#3910 - Clang's scan-build warns on set[u][g]id unchecked
- return value.
+ * 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-03-07 09:19 castaglia
+2013-06-20 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-03-07 09:15 castaglia
+2013-06-20 castaglia <castaglia>
- * configure.in:
- Enable a few more gcc warning flags, if supported, when
- --enable-devel is used.
+ * 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-03-07 09:03 castaglia
+2013-06-20 castaglia <castaglia>
- * NEWS, src/netaddr.c:
- Bug#3909 - Build fails with --disable-ipv6.
+ * doc/modules/mod_core.html: Add missing description of
+ MaxConnectionRate directive to the mod_core docs.
-2013-03-07 07:04 castaglia
+2013-06-17 castaglia <castaglia>
- * contrib/mod_log_forensic.c:
- Quell more compiler warnings (Bug#3908).
+ * doc/modules/mod_cap.html: Mention support for "CAP_SETUID" in the
+ CapabilitiesSet directive docs.
-2013-03-06 16:54 castaglia
+2013-06-17 castaglia <castaglia>
- * contrib/mod_sql_mysql.c:
- Trying to quell compiler warnings (Bug#3908).
+ * NEWS, modules/mod_cap.c: Bug#3945 - Spurious log messages at
+ session close.
-2013-03-06 16:50 castaglia
+2013-06-15 castaglia <castaglia>
- * contrib/mod_log_forensic.c:
- Quell compiler warnings (Bug#3908).
+ * 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-03-06 16:46 castaglia
+2013-06-14 castaglia <castaglia>
- * src/fsio.c:
- Quell compiler warnings (Bug#3908).
+ * 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-03-06 12:02 castaglia
+2013-06-14 castaglia <castaglia>
- * include/version.h:
- Bump version for CVS.
+ * include/version.h: Revving version for CVS.
-2013-03-06 12:01 castaglia
+2013-06-14 castaglia <castaglia>
- * include/version.h:
- Bump version for next maint release.
+ * ChangeLog: Updated ChangeLog.
-2013-03-06 11:06 castaglia
+2013-06-14 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * NEWS: Updating NEWS with today's date for 1.3.5rc3 release.
-2013-03-06 11:05 castaglia
+2013-06-14 castaglia <castaglia>
- * locale/files.txt:
- Updated list of files for localization.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ 1.3.5rc3 for release.
-2013-03-06 11:04 castaglia
+2013-06-14 castaglia <castaglia>
- * NEWS:
- Update NEWS with release date.
+ * locale/files.txt: Updated files.txt to include new mod_snmp,
+ mod_sftp files.
-2013-03-06 11:03 castaglia
+2013-06-14 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for release of proftpd-1.3.5rc2.
+ * RELEASE_NOTES: Fleshed out release notes for 1.3.5rc3.
-2013-03-06 11:00 castaglia
+2013-06-14 castaglia <castaglia>
- * contrib/mod_log_forensic.c:
- Quell compiler warning.
+ * doc/howto/SQL.html: Adding section on using the SQL PrimaryKey
+ directives to the howto.
-2013-03-06 10:16 castaglia
+2013-06-14 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * doc/contrib/mod_sql.html: Add descriptions for the
+ SQLUserPrimaryKey, SQLGroupPrimaryKey directives added for Bug#3864.
-2013-03-06 10:02 castaglia
+2013-06-10 castaglia <castaglia>
- * NEWS:
- Updating NEWS with release date.
+ * doc/contrib/mod_sql_passwd.html: Update SQLPasswordPBKDF2 docs to
+ mention use of non-SHA1 digests requires OpenSSL-1.0.0c and later.
-2013-03-06 10:01 castaglia
+2013-06-10 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Updating specfile version for proftpd-1.3.4c release.
+ * 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-03-06 09:55 castaglia
+2013-06-10 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes for proftpd-1.3.5rc2.
+ * doc/modules/mod_rlimit.html: Removed docs for now-obsolete
+ RLimitProcesses directive.
-2013-03-06 09:45 castaglia
+2013-06-10 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Adding description of the new TLSUserName directive to the
- mod_tls docs.
+ * 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-03-06 09:33 castaglia
+2013-06-07 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Document that TLSSessionCache can be configured with a parameter
- of "off".
+ * RELEASE_NOTES, doc/contrib/mod_sql_passwd.html: Add documentation
+ for the new PBKDF2 support.
-2013-03-06 09:30 castaglia
+2013-06-07 castaglia <castaglia>
- * doc/modules/mod_xfer.html:
- Mention the optional suffix parameter in the HiddenStores
- synopsis.
+ * 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-03-06 09:26 castaglia
+2013-06-06 castaglia <castaglia>
- * doc/modules/mod_auth_file.html:
- Adding discussion of the stricter permission checks now done by
- mod_auth_file.
+ * NEWS, contrib/mod_sftp_sql.c: Bug#3942 - mod_sftp_sql should
+ support multiple keys concatenated together in a single column.
-2013-03-06 09:07 castaglia
+2013-06-06 castaglia <castaglia>
- * RELEASE_NOTES:
- Updated release notes for proftpd-1.3.4c.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Adding
+ regression test for Bug#3942.
-2013-03-05 23:34 castaglia
+2013-06-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.
+ * doc/contrib/mod_sftp.html: Adding another mod_sftp FAQ.
-2013-03-01 12:06 castaglia
+2013-06-06 castaglia <castaglia>
- * RELEASE_NOTES, doc/contrib/mod_ban.html:
- Updating docs for new TLSHandshake BanOnEvent rule.
+ * 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-03-01 11:57 castaglia
+2013-06-06 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.
+ * src/rlimit.c: If both current and max are NULL pointers, then
+ return EINVAL; no need to proceed further.
-2013-03-01 11:43 castaglia
+2013-06-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Adding regression test for the new BanOnEvent TLSHandshake rule
- (Bug#3906).
+ * contrib/mod_sftp/rfc4716.c: Comment nit; no functional change.
-2013-03-01 07:41 castaglia
+2013-06-06 castaglia <castaglia>
- * contrib/mod_log_forensic.c:
- Print out mod_unique_id's UNIQUE_ID value, if present, in the
- ForensicLogFile.
+ * 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-02-27 17:20 castaglia
+2013-06-05 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3900 - ProFTPD terminating (signal 11) on some sftp
- connections.
+ * modules/mod_dso.c: Handle a LoadModule module name with ".cpp"
+ extension, in addition to ".c", for loading e.g. C++ modules.
-2013-02-27 14:50 castaglia
+2013-06-03 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.
+ * contrib/mod_sftp/umac.c: Bug#3940 - Compiler warnings in mod_sftp. Fixed -Wstrict-aliasing warnings in umac.c.
-2013-02-27 14:22 castaglia
+2013-05-31 castaglia <castaglia>
- * src/mkhome.c:
- Only fire the 'core.created-home' event IFF the home directory
- was actually created (versus already existing).
+ * RELEASE_NOTES: Working on fleshing out release notes; still need
+ to do more.
-2013-02-27 09:38 castaglia
+2013-05-28 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Backporting the proper patch/fix for Bug#3904 to 1.3.4 branch.
+ * NEWS, modules/mod_ctrls.c, src/ctrls.c: Bug#3939 - Disable
+ Controls for "ServerType inetd" servers.
-2013-02-27 09:32 castaglia
+2013-05-23 castaglia <castaglia>
- * src/fsio.c:
- Slight performance in statcache check by checking path lengths
- first, before calling strncmp(3).
+ * doc/howto/Limit.html: Add section about using multiple <Limit
+ LOGIN> sections to the Limit howto.
-2013-02-27 09:29 castaglia
+2013-05-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Adding more release notes to myself, to flesh out today/tomorrow.
+ * 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-02-27 09:26 castaglia
+2013-05-17 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Checking in the proper patch/fix for Bug#3904.
+ * doc/howto/SQL.html: Add SQLNamedConnectInfo recipe to SQL howto.
-2013-02-27 09:10 castaglia
+2013-05-17 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3904 to 1.3.4 branch.
+ * doc/modules/mod_ctrls.html: Copy-pasto.
-2013-02-27 09:10 castaglia
+2013-05-16 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3904 - scp downloads using glob pattern sometimes fails.
+ * 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-02-26 21:40 castaglia
+2013-05-16 castaglia <castaglia>
- * doc/contrib/ftpmail.html:
- Updated ftpmail docs, per Bug#3709.
+ * NEWS, RELEASE_NOTES: Mention addition of mod_snmp in release docs.
-2013-02-26 21:35 castaglia
+2013-05-15 castaglia <castaglia>
- * NEWS, contrib/ftpmail:
- Bug#3709 - Support download-triggered emails in the ftpmail
- script.
+ * 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-02-26 21:09 castaglia
+2013-05-15 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).
+ * doc/contrib/index.html, doc/contrib/mod_snmp.html: Adding mod_snmp
+ documentation.
-2013-02-26 16:50 castaglia
+2013-05-15 castaglia <castaglia>
- * src/mkhome.c:
- Don't generate the 'core.created-home' event until after any
- possible CreateHome skeleton directory has been copied.
+ * 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-02-26 15:30 castaglia
+2013-05-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Typo.
+ * .cvsignore: Ignore any .git/ directories and .gitignore files
+ which may show up.
-2013-02-26 15:16 castaglia
+2013-05-14 castaglia <castaglia>
- * doc/contrib/: mod_sftp_pam.html:
- Document the new SFTPPAMOptions value, per Bug#3905.
+ * 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-02-26 15:14 castaglia
+2013-05-12 castaglia <castaglia>
- * NEWS, contrib/mod_sftp_pam.c, modules/mod_auth_pam.c:
- Backport of fix for Bug#3905 to 1.3.4 branch.
+ * doc/contrib/mod_wrap2_sql.html: Include indexes (for performance)
+ in the example schema.
-2013-02-26 15:12 castaglia
+2013-05-09 castaglia <castaglia>
- * NEWS, contrib/mod_sftp_pam.c, modules/mod_auth_pam.c:
- Bug#3905 - Handle the Linux-specific PAM_RADIO_TYPE message
- properly.
+ * doc/howto/Memcache.html: Adding another memcache-related FAQ.
-2013-02-26 10:09 castaglia
+2013-05-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Fix the handling of exit status values from external commands
- (e.g. scp).
+ * doc/howto/Memcache.html, doc/howto/index.html: Adding a howto for
+ Memcache support in proftpd.
-2013-02-25 12:31 castaglia
+2013-05-09 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).
+ * doc/howto/Logging.html: Add a wtmp log-related FAQ to the Logging
+ howto.
-2013-02-25 12:29 castaglia
+2013-05-09 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Use a more conservative approach, and use memmove(3) instead of
- memcpy(3).
+ * doc/howto/Logging.html: No need to direct SystemLog to /dev/null
+ to disable logging; simply setting "SystemLog none" is enough.
-2013-02-25 12:27 castaglia
+2013-05-09 castaglia <castaglia>
- * src/log.c:
- Better handling of return value from pr_log_event_listening().
+ * doc/modules/mod_dso.html: Adding mod_dso FAQ encountered on the
+ proftp-user mailing list today.
-2013-02-25 11:40 castaglia
+2013-05-08 castaglia <castaglia>
- * src/trace.c:
- Avoid calling strlen(3) unnecessarily on TraceLog messages.
+ * NEWS, contrib/mod_ldap.c: Bug#3937 - Segfault when retrieving SSH
+ public key from LDAP directory.
-2013-02-24 09:10 jwm
+2013-05-07 castaglia <castaglia>
- * contrib/mod_ldap.c: git 07dd890968: release mod_ldap 2.9.3
+ * doc/modules/mod_memcache.html: Mention that the MemcacheServers
+ directive handles Unix domain socket paths as well (per Bug#3931).
-2013-02-24 09:10 jwm
+2013-05-07 castaglia <castaglia>
- * contrib/mod_ldap.c: git 577776b579: don't emit the bind DN
- password in debug output on successful bind (Bug #3885)
+ * contrib/mod_ban.c: Typo which broke the BanCache directive's
+ memcache functionality.
-2013-02-24 09:09 jwm
+2013-05-06 castaglia <castaglia>
- * contrib/mod_ldap.c: git b77b43e314: fail when someone's left the
- on/off flags when moving to LDAP{Users,Groups}
+ * NEWS, modules/mod_ctrls.c: Bug#3927 - Default ControlsSocket
+ created despite custom ControlsSocket path.
-2013-02-24 08:46 castaglia
+2013-05-06 castaglia <castaglia>
- * NEWS, include/log.h, src/event.c, src/log.c:
- Bug#3903 - With mod_log_forensic enabled, SSH connections fail
- randomly.
+ * contrib/mod_sftp/scp.c: Fix comment from bad patching.
-2013-02-24 08:42 castaglia
+2013-05-06 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.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3935 - scp download of
+ nonexistent file results in client hang.
-2013-02-24 08:35 castaglia
+2013-05-06 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.
+ * 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-02-22 11:52 castaglia
+2013-05-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding more different configurations/environments to the
- regression tests for Bug#3904.
+ * NEWS, modules/mod_core.c, src/dirtree.c: Bug#3934 -
+ HideUser/HideGroup do not work as expected for virtual users.
-2013-02-22 08:47 castaglia
+2013-05-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test using scp(1) to download a glob pattern.
+ * 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-02-21 23:20 castaglia
+2013-04-30 castaglia <castaglia>
- * src/trace.c:
- Avoid needless (and wasteful) strlen(3) calls by tracking the
- length ourselves.
+ * NEWS, contrib/mod_sql_mysql.c: Bug#3932 - SQLAuthType Backend
+ returns "password mismatch" for MySQL PASSWORD().
-2013-02-21 23:06 castaglia
+2013-04-30 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.
+ * NEWS, modules/mod_auth_pam.c: Bug#3929 - pam_session_close()
+ requires root privs on some platforms.
-2013-02-21 19:21 castaglia
+2013-04-23 castaglia <castaglia>
- * src/trace.c:
- Backport of fix for Bug#3902 to 1.3.4 branch.
+ * contrib/ftpasswd, contrib/ftpquota: Use env in the shebang line,
+ rather than assuming the location of perl to use.
-2013-02-21 19:21 castaglia
+2013-04-23 castaglia <castaglia>
- * src/trace.c:
- Bug#3902 - mod_log_forensic seems to send trace channels to trace
- log even if level is 0.
+ * src/proftpd.8.in: Incorporating doc patch from FreeBSD ports tree.
-2013-02-21 18:02 castaglia
+2013-04-23 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.
+ * src/wtmp.c: Incorporating patch from FreeBSD ports tree.
-2013-02-21 17:47 castaglia
+2013-04-23 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().
+ * src/var.c: Removed unnecessary typecast.
-2013-02-21 14:20 castaglia
+2013-04-23 castaglia <castaglia>
- * doc/contrib/mod_log_forensic.html:
- Document the additional ForensicLogFile metadata headers.
+ * src/auth.c: Quell compiler warnings on some platforms/compilers
+ about signature mismatches via typecasting.
-2013-02-21 14:19 castaglia
+2013-04-16 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).
+ * 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-02-21 13:02 castaglia
+2013-04-16 castaglia <castaglia>
- * doc/modules/mod_rlimit.html:
- Fleshing out the rest of the mod_rlimit documentation.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: SFTP regression
+ test for HideFiles and symlinks (Bug#3924).
-2013-02-21 11:56 castaglia
+2013-04-16 castaglia <castaglia>
- * doc/modules/: index.html, mod_rlimit.html:
- Adding documentation for the new mod_rlimit module.
+ * src/dirtree.c: Minor tweak to dir_hide_file(), needed for Bug#3924
+ (and SFTP directory listings, specifically).
-2013-02-21 11:21 castaglia
+2013-04-16 castaglia <castaglia>
- * modules/mod_rlimit.c:
- Adding an RLimitProcesses directive, to disable the NPROC limit
- if needed.
+ * NEWS, modules/mod_facts.c, modules/mod_ls.c, src/dirtree.c:
+ Bug#3924 - HideFiles does not filter symlinks.
-2013-02-21 10:08 castaglia
+2013-04-16 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).
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding regression
+ tests for Bug#3924.
-2013-02-20 22:10 castaglia
+2013-04-15 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.
+ * contrib/mod_sftp/fxp.h: Missing checkin for Bug#3926; this fixes
+ the CVS build.
-2013-02-20 17:04 castaglia
+2013-04-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Tweak to make use of AuthUserFiles in the testsuite work as
- expected.
+ * doc/contrib/mod_sftp.html: Fix up the SFTPAuthorizedUserKeys
+ directive description.
-2013-02-20 15:28 castaglia
+2013-04-11 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3899 - Support authentication of users based on SSL/TLS
- client certificate.
+ * doc/contrib/mod_sftp.html: Adding FAQ to mod_sftp docs about
+ localised directory listings, from Bug#3925.
-2013-02-20 15:26 castaglia
+2013-04-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression test for Bug#3899 (TLSUserName directive).
+ * NEWS, modules/mod_core.c: Bug#3925 - SFTP directory listings are
+ sensitive to locale environment variables.
-2013-02-20 09:26 castaglia
+2013-04-11 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Typo in comment; no functional change.
+ * RELEASE_NOTES, doc/contrib/mod_sftp.html: Update mod_sftp docs
+ with mention of support for the fsync extension.
-2013-02-20 09:25 castaglia
+2013-04-11 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- More fun with deferred <Directory> path resolution in
- mod_ifsession, for Bug#3881.
+ * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c:
+ Bug#3926 - Support OpenSSH fsync SFTP extension.
-2013-02-20 08:48 castaglia
+2013-04-10 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.
+ * contrib/mod_sftp/fxp.c: Fix the length of the strings compared for
+ the OpenSSH extensions in SFTP EXTENDED requests.
-2013-02-19 22:53 castaglia
+2013-04-05 castaglia <castaglia>
- * NEWS, src/parser.c:
- Bug#3896 - Warn when world-writable config files are used.
+ * 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-02-19 17:34 castaglia
+2013-04-03 castaglia <castaglia>
- * src/dirtree.c:
- Re-enable the clearing of the CF_DEFER flag, to prevent
- repetitive needless processing of <Directory> paths.
+ * modules/mod_rlimit.c: Correct the bug number in the comment.
-2013-02-19 17:09 castaglia
+2013-04-03 castaglia <castaglia>
- * src/parser.c:
- Avoid unnecessary strlen(3) calls when parsing configuration.
+ * modules/mod_cap.c: Slightly better error message when setreuid(2)
+ fails.
-2013-02-19 17:04 castaglia
+2013-04-03 castaglia <castaglia>
- * src/fsio.c:
- Stylistic nits; no functional change.
+ * NEWS, modules/mod_rlimit.c: Bug#3923 - mod_cap does not revoke
+ root privileges properly for SFTP connections.
-2013-02-19 16:43 castaglia
+2013-04-03 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- More tweaks needed for Bug#3881.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm: Adding regression
+ test for Bug#3923.
-2013-02-19 15:13 castaglia
+2013-03-29 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).
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding more
+ regression tests for <Directory> + <Limit> configs.
-2013-02-19 14:23 castaglia
+2013-03-29 castaglia <castaglia>
- * src/dirtree.c:
- Add some trace logging into the resolution of deferred-path
- <Directory> sections.
+ * configure: Updated configure.
-2013-02-19 13:24 castaglia
+2013-03-29 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3897 - mod_sftp does not handle a REALPATH request properly
- for SFTP protocol version 6.
+ * 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-02-19 08:24 castaglia
+2013-03-29 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Check that the configured DisplayLogin file is not a directory in
- mod_ifsession, too.
+ * contrib/mod_sftp/auth-kbdint.c: Include explanatory comment about
+ the errno value and Bug#3921.
-2013-02-19 07:49 castaglia
+2013-03-28 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.
+ * NEWS, contrib/mod_sftp/auth-kbdint.c: Bug#3921 - Single failed
+ keyboard-interactive login attempt causes SSH connection to close
+ prematurely.
-2013-02-17 15:49 jwm
+2013-03-28 castaglia <castaglia>
- * doc/: Configuration.html, Configuration.pdf, Configuration.sgml:
- whee up-to-date configuration docs for the first time since 2007
+ * 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-02-17 10:12 jwm
+2013-03-28 castaglia <castaglia>
- * tests/tests.pl: fix syntax error
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for the umac-64 at openssh.com support added for Bug#3920.
-2013-02-15 17:03 castaglia
+2013-03-28 castaglia <castaglia>
- * src/dirtree.c:
- One more tiny tweak; might help Bug#3881.
+ * contrib/mod_sftp/mac.c: Typo. Sigh.
-2013-02-15 14:50 castaglia
+2013-03-28 castaglia <castaglia>
- * modules/: mod_core.c, mod_ident.c, mod_ls.c, mod_xfer.c:
- Switch the core modules to start using the new PR_IS*() character
- type detection macros.
+ * contrib/mod_sftp/mac.c: Properly free up the allocated UMAC
+ context objects when e.g. unloading mod_sftp (part of Bug#3920).
-2013-02-15 14:46 castaglia
+2013-03-28 castaglia <castaglia>
- * contrib/: mod_ctrls_admin.c, mod_exec.c, mod_ifversion.c,
- mod_radius.c, mod_rewrite.c, mod_sql.c, mod_tls.c,
- mod_sftp/interop.c, mod_sftp/packet.c, mod_sftp/scp.c,
- mod_wrap2/mod_wrap2.c:
- Start using the new PR_IS*() macros to guard the ctype(3)
- character detection checks.
+ * contrib/mod_sftp/mod_sftp.c: Need to include the mac.h header now,
+ to avoid compiler warnings about unknown functions.
-2013-02-15 14:39 castaglia
+2013-03-28 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.
+ * contrib/mod_sftp/msg.c, contrib/mod_sftp/msg.h: Forgot to commit
+ these changes for Bug#3920.
-2013-02-15 14:33 castaglia
+2013-03-28 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.
+ * doc/contrib/mod_sftp.html: Update the mod_sftp docs to reflect
+ supporting umac-64 at openssh.com.
-2013-02-15 11:27 castaglia
+2013-03-28 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Fix compiler warning (and logged message).
+ * 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 at openssh.com digest for mod_sftp.
-2013-02-15 10:33 castaglia
+2013-03-21 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.
+ * 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-02-15 10:19 castaglia
+2013-03-20 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).
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Clean up the
+ SQLite script once we're done with it.
- With this, mod_ifsession's merging in of <Directory> sections now
- more closely matches the parser behavior/ordering.
+2013-03-16 castaglia <castaglia>
-2013-02-14 16:21 castaglia
+ * doc/modules/mod_log.html: Bug#3864 added support for (among other
+ things) a %g LogFormat variable; updated the LogFormat docs
+ accordingly.
- * src/dirtree.c:
- Stylistic cleanup.
+2013-03-16 castaglia <castaglia>
-2013-02-14 16:06 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding
+ regression tests for the SQL PrimaryKey directives added for
+ Bug#3864.
- * 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-03-16 castaglia <castaglia>
-2013-02-14 16:03 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.
- * 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-03-15 castaglia <castaglia>
-2013-02-14 15:44 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.
- * modules/mod_xfer.c:
- Removing now-unnecessary trace logging; I think the fix for
- Bug#3874 has been verified.
+2013-03-15 castaglia <castaglia>
-2013-02-14 14:54 castaglia
+ * doc/howto/KeepAlives.html: Minor grammar fixes.
- * modules/mod_xfer.c:
- More trace logging for investigating Bug#3874.
+2013-03-14 castaglia <castaglia>
-2013-02-14 14:34 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.
- * modules/mod_xfer.c:
- More debug trace logging, trying to determine why the fix for
- Bug#3874 isn't working as expected.
+2013-03-14 castaglia <castaglia>
-2013-02-14 14:28 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.
- * modules/mod_xfer.c:
- Log if there's an error adding the HiddenStores-path-is-on-NFS
- node.
+2013-03-14 castaglia <castaglia>
-2013-02-14 13:48 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for Bug#3918.
- * contrib/: mod_ban.c, mod_rewrite.c, mod_shaper.c,
- mod_tls_shmcache.c, mod_wrap.c, mod_wrap2_file.c:
- Catch more cases where the expected paths to files might
- inadvertently be paths to directories.
+2013-03-13 castaglia <castaglia>
-2013-02-14 11:44 castaglia
+ * doc/modules/mod_xfer.html: Updating DeleteAbortedStores doc per
+ Bug#3917.
- * modules/mod_core.c:
- Check for a directory when opening a configured DisplayQuit file.
+2013-03-13 castaglia <castaglia>
-2013-02-14 11:38 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c, modules/mod_xfer.c: Bug#3917 - Make
+ DeleteAbortedStores on by default when HiddenStores enabled.
- * modules/: mod_auth.c, mod_delay.c, mod_xfer.c:
- Adding more checks for directories in places where we expect to
- find files.
+2013-03-13 castaglia <castaglia>
-2013-02-14 11:29 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm: Adding
+ regression test for Bug#3917.
- * contrib/mod_sftp/: auth.c, rfc4716.c:
- Handle cases in mod_sftp where the files to be opened might
- inadvertently be directories.
+2013-03-13 castaglia <castaglia>
-2013-02-14 11:22 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding
+ another regression test for Bug#3915.
- * src/display.c:
- Make sure that we don't open Display files that are directories.
+2013-03-12 castaglia <castaglia>
-2013-02-14 11:21 castaglia
+ * doc/howto/TLS.html: Include the error message frequently seen on
+ the client end of things in the FAQ about NoSessionReuseRequired.
- * src/parser.c:
- Don't forget to close the file handle.
+2013-03-12 castaglia <castaglia>
-2013-02-14 11:18 castaglia
+ * doc/howto/TLS.html: Add TLS FAQ about data transfers and the
+ NoSessionReuseRequired TLSOption.
- * modules/mod_auth_file.c:
- Make sure that the configure AuthUserFile/AuthGroupFile paths are
- not directories.
+2013-03-09 castaglia <castaglia>
-2013-02-14 11:14 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding
+ regression test for Bug#3915.
- * src/parser.c:
- Check whether the given config file is a directory; if so, error
- out.
+2013-03-08 castaglia <castaglia>
-2013-02-14 10:33 castaglia
+ * NEWS, src/fsio.c: Bug#3914 - 1.3.5rc2 fails to build on Solaris
+ 10.
- * modules/mod_auth_file.c:
- Set the close-on-exec flag for the AuthUserFile/AuthGroupFile
- fds.
+2013-03-08 castaglia <castaglia>
-2013-02-14 09:29 castaglia
+ * contrib/mod_sftp/msg.c: Quell compiler (and static code analysi)
+ warnings (Bu#3912).
- * 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-03-08 castaglia <castaglia>
-2013-02-14 09:22 castaglia
+ * modules/mod_auth_unix.c: Handle potential NULL return value from
+ getpwnam(3) better. Stylistic nits.
- * 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-03-08 castaglia <castaglia>
-2013-02-13 16:26 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.
- * contrib/ftpquota:
- Make sure that ftpquota shows "unlimited" for values set to zero
- (or lower).
+2013-03-08 castaglia <castaglia>
-2013-02-13 09:48 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.
- * NEWS, modules/mod_xfer.c:
- Backport of fix for Bug#3895 to 1.3.4 branch.
+2013-03-08 castaglia <castaglia>
-2013-02-13 09:48 castaglia
+ * contrib/mod_sql_mysql.c: Add comment about known compiler warning
+ about "implicit function declaration" (Bug#3908).
- * NEWS, modules/mod_xfer.c:
- Bug#3895 - Missing TransferLog entry under some out-of-space
- conditions.
+2013-03-08 castaglia <castaglia>
-2013-02-13 09:47 castaglia
+ * NEWS, modules/mod_auth.c: Bug#3910 - Clang's scan-build warns on
+ set[u][g]id unchecked return value.
- * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm:
- Regression test for Bug#3895; requires the mod_enospc module.
+2013-03-07 castaglia <castaglia>
-2013-02-12 14:56 castaglia
+ * configure: Updated configure.
- * 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-03-07 castaglia <castaglia>
-2013-02-12 14:49 castaglia
+ * configure.in: Enable a few more gcc warning flags, if supported,
+ when --enable-devel is used.
- * 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-03-07 castaglia <castaglia>
-2013-02-12 14:49 castaglia
+ * contrib/mod_log_forensic.c: Quell more compiler warnings
+ (Bug#3908).
- * src/fsio.c:
- Additional fix for Bug#3841: make sure the pr_fsio_smkdir()
- function correctly propagates SUID/SGID bits from the parent
- directory to the created directory.
+2013-03-07 castaglia <castaglia>
-2013-02-12 13:39 castaglia
+ * contrib/mod_sql_mysql.c: Trying to quell compiler warnings
+ (Bug#3908).
- * 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-03-07 castaglia <castaglia>
-2013-02-12 10:30 castaglia
+ * contrib/mod_log_forensic.c, src/fsio.c: Quell compiler warnings
+ (Bug#3908).
- * 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-03-06 castaglia <castaglia>
-2013-02-07 23:50 castaglia
+ * include/version.h: Bump version for CVS.
- * 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-03-06 castaglia <castaglia>
-2013-02-07 23:43 castaglia
+ * ChangeLog: Updated ChangeLog.
- * 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-03-06 castaglia <castaglia>
-2013-02-07 23:38 castaglia
+ * locale/files.txt: Updated list of files for localization.
- * 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-03-06 castaglia <castaglia>
-2013-02-07 23:34 castaglia
+ * NEWS: Update NEWS with release date.
- * configure:
- Used wrong version of autoconf to generate previous configure
- script.
+2013-03-06 castaglia <castaglia>
-2013-02-07 23:25 castaglia
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for
+ release of proftpd-1.3.5rc2.
- * configure:
- Updated configure.
+2013-03-06 castaglia <castaglia>
-2013-02-07 23:25 castaglia
+ * contrib/mod_log_forensic.c: Quell compiler warning.
- * RELEASE_NOTES:
- Mention the appearance of mod_rlimit in the release notes.
+2013-03-06 castaglia <castaglia>
-2013-02-07 23:19 castaglia
+ * RELEASE_NOTES: Updating release notes for proftpd-1.3.5rc2.
- * 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-03-06 castaglia <castaglia>
-2013-02-07 23:15 castaglia
+ * doc/contrib/mod_tls.html: Adding description of the new
+ TLSUserName directive to the mod_tls docs.
- * src/dirtree.c:
- Add some trace logging for when we check AllowFilter/DenyFilter
- against the arguments for specific commands.
+2013-03-06 castaglia <castaglia>
-2013-02-07 23:14 castaglia
+ * doc/contrib/mod_tls.html: Document that TLSSessionCache can be
+ configured with a parameter of "off".
- * tests/t/lib/ProFTPD/Tests/Config/AllowFilter.pm:
- Explicitly specify the Order directive, to ensure that the
- <Limit> sections are handled as expected.
+2013-03-06 castaglia <castaglia>
-2013-02-07 22:18 castaglia
+ * doc/modules/mod_xfer.html: Mention the optional suffix parameter
+ in the HiddenStores synopsis.
- * tests/t/lib/ProFTPD/Tests/Config/RLimitOpenFiles.pm:
- More tests for minimal RLimitOpenFiles settings.
+2013-03-06 castaglia <castaglia>
-2013-02-07 21:38 castaglia
+ * doc/modules/mod_auth_file.html: Adding discussion of the stricter
+ permission checks now done by mod_auth_file.
- * tests/t/lib/ProFTPD/Tests/Config/RLimitCPU.pm:
- Adding more RLimitCPU tests, ensuring the configured CPU resource
- limits are being enforced.
+2013-03-06 castaglia <castaglia>
-2013-02-07 20:54 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.
- * src/trace.c:
- Faster way to check for an empty string, without calling
- strlen(3).
+2013-03-01 castaglia <castaglia>
-2013-02-07 19:21 castaglia
+ * RELEASE_NOTES, doc/contrib/mod_ban.html: Updating docs for new
+ TLSHandshake BanOnEvent rule.
- * modules/mod_core.c, src/trace.c:
- Better handling of typo'd Trace directive values (e.g.
- "directory:", with no level number).
+2013-03-01 castaglia <castaglia>
-2013-02-07 07:44 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.
- * include/inet.h, src/inet.c, contrib/mod_tls.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.
+2013-03-01 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Adding regression
+ test for the new BanOnEvent TLSHandshake rule (Bug#3906).
-2013-02-06 22:37 castaglia
+2013-03-01 castaglia <castaglia>
- * include/options.h:
- Tune the default listen(2) backlog higher.
+ * contrib/mod_log_forensic.c: Print out mod_unique_id's UNIQUE_ID
+ value, if present, in the ForensicLogFile.
-2013-02-06 09:05 castaglia
+2013-02-28 castaglia <castaglia>
- * NEWS, utils/ftptop.c:
- Backport of fix for Bug#3894 to 1.3.4 branch.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3900 - ProFTPD terminating
+ (signal 11) on some sftp connections.
-2013-02-06 09:04 castaglia
+2013-02-27 castaglia <castaglia>
- * NEWS, utils/ftptop.c:
- Bug#3894 - ftptop doesn't work with --enable-nls.
+ * 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-06 09:03 castaglia
+2013-02-27 castaglia <castaglia>
- * tests/: tests.pl, t/config/rlimitcpu.t,
- t/config/rlimitopenfiles.t,
- t/lib/ProFTPD/Tests/Config/RLimitCPU.pm,
- t/lib/ProFTPD/Tests/Config/RLimitOpenFiles.pm:
- Adding regression tests for the RLimitCPU and RLimitOpenFiles
- directives.
+ * src/mkhome.c: Only fire the 'core.created-home' event IFF the home
+ directory was actually created (versus already existing).
-2013-02-06 09:02 castaglia
+2013-02-27 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.
+ * src/fsio.c: Slight performance in statcache check by checking path
+ lengths first, before calling strncmp(3).
-2013-02-05 23:34 castaglia
+2013-02-27 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.
+ * RELEASE_NOTES: Adding more release notes to myself, to flesh out
+ today/tomorrow.
-2013-02-05 23:14 castaglia
+2013-02-27 castaglia <castaglia>
- * include/conf.h:
- Pull in the new rlimit.h header.
+ * contrib/mod_sftp/scp.c: Checking in the proper patch/fix for
+ Bug#3904.
-2013-02-05 22:55 castaglia
+2013-02-27 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.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3904 - scp downloads using glob
+ pattern sometimes fails.
-2013-02-05 22:51 castaglia
+2013-02-27 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).
+ * doc/contrib/ftpmail.html: Updated ftpmail docs, per Bug#3709.
-2013-02-05 21:37 castaglia
+2013-02-27 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.
+ * NEWS, contrib/ftpmail: Bug#3709 - Support download-triggered
+ emails in the ftpmail script.
-2013-02-05 16:32 castaglia
+2013-02-27 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Properly delete log from successful SQLLogOnEvent test.
+ * 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-05 16:19 castaglia
+2013-02-27 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#3893 - Add SQLLogOnEvent directive, for performing SQL query
- on configurable event.
+ * src/mkhome.c: Don't generate the 'core.created-home' event until
+ after any possible CreateHome skeleton directory has been copied.
-2013-02-05 16:16 castaglia
+2013-02-26 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Checking in test for new SQLLogOnEvent functionality (Bug#3893).
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Typo.
-2013-02-05 09:24 castaglia
+2013-02-26 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.
+ * doc/contrib/mod_sftp_pam.html: Document the new SFTPPAMOptions
+ value, per Bug#3905.
-2013-02-05 09:04 castaglia
+2013-02-26 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm:
- Adding regression tests for Bug#3892.
+ * NEWS, contrib/mod_sftp_pam.c, modules/mod_auth_pam.c: Bug#3905 -
+ Handle the Linux-specific PAM_RADIO_TYPE message properly.
-2013-02-05 09:03 castaglia
+2013-02-26 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_auth_file.c:
- Bug#3892 - mod_auth_file should have strict permission checks of
- configured files.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix the handling of
+ exit status values from external commands (e.g. scp).
-2013-02-04 13:15 castaglia
+2013-02-25 castaglia <castaglia>
- * doc/howto/Logging.html:
- Add logging FAQ for how to disable all logging for proftpd.
+ * 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-04 07:43 castaglia
+2013-02-25 castaglia <castaglia>
- * src/ctrls.c:
- Skip any zero-length control request arguments.
+ * contrib/mod_sftp/packet.c: Use a more conservative approach, and
+ use memmove(3) instead of memcpy(3).
-2013-02-03 23:14 castaglia
+2013-02-25 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.
+ * src/log.c: Better handling of return value from
+ pr_log_event_listening().
-2013-02-03 22:46 castaglia
+2013-02-25 castaglia <castaglia>
- * include/ctrls.h, src/ctrls.c:
- Avoid non-printable characters in ftpdctl requests.
+ * src/trace.c: Avoid calling strlen(3) unnecessarily on TraceLog
+ messages.
-2013-02-03 21:58 castaglia
+2013-02-24 jwm <jwm>
- * src/ctrls.c:
- Add max length limit to control action request argument. Fix
- caching/propagating of errno value. Fix stylistic nits.
+ * contrib/mod_ldap.c: git 07dd890968: release mod_ldap 2.9.3
-2013-02-03 21:48 castaglia
+2013-02-24 jwm <jwm>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Various tests for configurations related to Bug#3753.
+ * contrib/mod_ldap.c: git 577776b579: don't emit the bind DN
+ password in debug output on successful bind (Bug #3885)
-2013-02-03 21:39 castaglia
+2013-02-24 jwm <jwm>
- * doc/contrib/mod_sftp.html:
- Updating some of the mapping between FTP command and SFTP
- request, with regard to <Limit> sections, per Bug#3753.
+ * contrib/mod_ldap.c: git b77b43e314: fail when someone's left the
+ on/off flags when moving to LDAP{Users,Groups}
-2013-02-03 21:35 castaglia
+2013-02-24 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3753 - Support SFTP request names in <Limit> sections better.
+ * NEWS, include/log.h, src/event.c, src/log.c: Bug#3903 - With
+ mod_log_forensic enabled, SSH connections fail randomly.
-2013-02-03 13:46 castaglia
+2013-02-24 castaglia <castaglia>
- * src/dirtree.c:
- Stylistic nit; no functional change.
+ * 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-03 13:27 castaglia
+2013-02-24 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Add mention of <Limit WRITE> applying to WRITE SFTP request (of
- course).
+ * 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-02 18:11 castaglia
+2013-02-22 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Update mod_tls docs in light of TLSProtocol changes for Bug#3891.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding more
+ different configurations/environments to the regression tests for
+ Bug#3904.
-2013-02-02 18:09 castaglia
+2013-02-22 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3891 - Allow TLSProtocol directive in <VirtualHost> and
- <Global> sections.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test using scp(1) to download a glob pattern.
-2013-02-02 17:04 castaglia
+2013-02-22 castaglia <castaglia>
- * src/scoreboard.c:
- Fix up the trace-level log messages related to scoreboard
- locking.
+ * src/trace.c: Avoid needless (and wasteful) strlen(3) calls by
+ tracking the length ourselves.
-2013-02-01 22:24 castaglia
+2013-02-22 castaglia <castaglia>
- * src/log.c:
- Fix compiler error (i.e. programmer error).
+ * 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-01 22:06 castaglia
+2013-02-22 castaglia <castaglia>
- * modules/mod_facts.c, modules/mod_ls.c, src/data.c:
- Backporting additional Bug#3819 fixes from trunk to 1.3.4 branch.
+ * src/trace.c: Bug#3902 - mod_log_forensic seems to send trace
+ channels to trace log even if level is 0.
-2013-02-01 22:04 castaglia
+2013-02-22 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).
+ * contrib/mod_sftp/fxp.c: Populate the cmd_class member for the fake
+ cmd_recs generated when aborting unclosed handles in mod_sftp.
-2013-01-31 15:51 castaglia
+2013-02-22 castaglia <castaglia>
- * RELEASE_NOTES:
- Document the log format change in the release notes.
+ * 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-01-31 15:44 castaglia
+2013-02-21 castaglia <castaglia>
- * src/log.c:
- Now SystemLog (console and file), and all *Log files (via
- pr_log_writefile()) use ISO-8601 timestamp format.
+ * doc/contrib/mod_log_forensic.html: Document the additional
+ ForensicLogFile metadata headers.
-2013-01-31 12:35 castaglia
+2013-02-21 castaglia <castaglia>
- * include/trace.h, src/trace.c:
- Switch TraceLog to use ISO-8601 timestamps. Other logs soon to
- follow suit.
+ * 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-01-31 11:40 castaglia
+2013-02-21 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.
+ * doc/modules/mod_rlimit.html: Fleshing out the rest of the
+ mod_rlimit documentation.
-2013-01-31 09:47 castaglia
+2013-02-21 castaglia <castaglia>
- * doc/modules/mod_log.html:
- Updating LogFormat docs with descriptions of new %{iso8601},
- %{microsecs}, and %{millisecs} variables.
+ * doc/modules/index.html, doc/modules/mod_rlimit.html: Adding
+ documentation for the new mod_rlimit module.
-2013-01-31 09:38 castaglia
+2013-02-21 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c, modules/mod_log.c:
- Bug#3889 - Support millisecond timestamp LogFormat variable.
+ * modules/mod_rlimit.c: Adding an RLimitProcesses directive, to
+ disable the NPROC limit if needed.
-2013-01-31 08:37 castaglia
+2013-02-21 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.
+ * 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-01-31 07:49 castaglia
+2013-02-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Add regression test for %{microsecs} LogFormat variable, for
- Bug#3889, too.
+ * contrib/mod_log_forensic.c: Fixing the generation of
+ ForensicLogFile data in the face of unclean closes, e.g. when
+ dealing with segfaults.
-2013-01-30 20:20 castaglia
+2013-02-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Adding regression tests for the LogFormat variables added for
- Bug#3889.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Tweak to make use of
+ AuthUserFiles in the testsuite work as expected.
-2013-01-30 18:18 castaglia
+2013-02-20 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Additional reproduction recipes for Bug#3881.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3899 - Support
+ authentication of users based on SSL/TLS client certificate.
-2013-01-30 14:39 castaglia
+2013-02-20 castaglia <castaglia>
- * NEWS, include/data.h, modules/mod_facts.c, modules/mod_ls.c,
- src/data.c, src/pool.c:
- Backport of fix for Bug#3819 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ test for Bug#3899 (TLSUserName directive).
-2013-01-30 14:37 castaglia
+2013-02-20 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.
+ * contrib/mod_ifsession.c: Typo in comment; no functional change.
-2013-01-29 17:24 castaglia
+2013-02-20 castaglia <castaglia>
- * modules/mod_xfer.c:
- More tweaks on the path to verification/resolution for Bug#3874.
+ * contrib/mod_ifsession.c: More fun with deferred <Directory> path
+ resolution in mod_ifsession, for Bug#3881.
-2013-01-29 16:49 castaglia
+2013-02-20 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.
+ * 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-01-29 15:38 castaglia
+2013-02-20 castaglia <castaglia>
- * src/fsio.c:
- Try to be more informative about NFS-related 'fsio' trace
- logging.
+ * NEWS, src/parser.c: Bug#3896 - Warn when world-writable config
+ files are used.
-2013-01-29 14:42 castaglia
+2013-02-20 castaglia <castaglia>
- * modules/mod_xfer.c:
- Temporary trace logging to help debug Bug#3874.
+ * src/dirtree.c: Re-enable the clearing of the CF_DEFER flag, to
+ prevent repetitive needless processing of <Directory> paths.
-2013-01-29 14:18 castaglia
+2013-02-20 castaglia <castaglia>
- * src/fsio.c:
- Slightly better formatting for NFS-related trace message.
+ * src/parser.c: Avoid unnecessary strlen(3) calls when parsing
+ configuration.
-2013-01-29 13:58 castaglia
+2013-02-20 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).
+ * src/fsio.c: Stylistic nits; no functional change.
-2013-01-28 23:40 castaglia
+2013-02-20 castaglia <castaglia>
- * contrib/mod_sftp/mac.c:
- Remove unnecessary (and misleading) typecasts.
+ * contrib/mod_ifsession.c: More tweaks needed for Bug#3881.
-2013-01-28 23:29 castaglia
+2013-02-19 castaglia <castaglia>
- * contrib/mod_sftp/: cipher.c, cipher.h, 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.
+ * 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-01-28 23:08 castaglia
+2013-02-19 castaglia <castaglia>
- * contrib/mod_sftp/ssh2.h:
- For (hopefully) better interoperability, use the same max packet
- size as OpenSSH does.
+ * src/dirtree.c: Add some trace logging into the resolution of
+ deferred-path <Directory> sections.
-2013-01-28 22:57 castaglia
+2013-02-19 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.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3897 - mod_sftp does not handle
+ a REALPATH request properly for SFTP protocol version 6.
-2013-01-28 22:51 castaglia
+2013-02-19 castaglia <castaglia>
- * contrib/mod_sftp/utf8.c, src/fsio.c:
- Further refinements of the trace logging of failed
- encoding/decoding.
+ * contrib/mod_ifsession.c: Check that the configured DisplayLogin
+ file is not a directory in mod_ifsession, too.
-2013-01-28 16:57 castaglia
+2013-02-19 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Remove development cruft.
+ * 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-01-28 16:48 castaglia
+2013-02-17 jwm <jwm>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression test for Bug#3887.
+ * doc/Configuration.html: whee up-to-date configuration docs for the
+ first time since 2007
-2013-01-28 16:47 castaglia
+2013-02-17 jwm <jwm>
- * NEWS, src/dirtree.c:
- Backport of fix for Bug#3887 to 1.3.4 branch.
+ * tests/tests.pl: fix syntax error
-2013-01-28 16:47 castaglia
+2013-02-16 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3887 - <Limit ALL> erroneously blocks the PROT command used
- for FTPS.
+ * src/dirtree.c: One more tiny tweak; might help Bug#3881.
-2013-01-28 16:21 castaglia
+2013-02-15 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.
+ * 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-01-27 17:21 castaglia
+2013-02-15 castaglia <castaglia>
- * src/memcache.c:
- Bug#3886 - Calling pr_memcache_conn_set_namespace() crashes on
- buffer overflow.
+ * 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-01-27 17:20 castaglia
+2013-02-15 castaglia <castaglia>
- * contrib/mod_tls_memcache.c:
- Clean up logging/comments in mod_tls_shmcache; no functional
- change.
+ * 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-01-25 14:29 castaglia
+2013-02-15 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.
+ * 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-01-25 14:07 castaglia
+2013-02-15 castaglia <castaglia>
- * src/dirtree.c:
- When resolving deferred paths, make sure to handle tilde
- interpolation as well.
+ * contrib/mod_ifsession.c: Fix compiler warning (and logged
+ message).
-2013-01-25 13:03 castaglia
+2013-02-15 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.
+ * 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-01-25 12:58 castaglia
+2013-02-15 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Fix call to pr_auth_getgroups() to use user name, not group name,
- for the lookup. Sigh.
+ * 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-01-25 12:24 castaglia
+2013-02-15 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.
+ * src/dirtree.c: Stylistic cleanup.
-2013-01-25 11:51 castaglia
+2013-02-15 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Add better trace logging of the v5/v6 BITS attribute.
+ * 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-01-25 09:11 castaglia
+2013-02-15 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).
+ * 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-01-25 08:15 castaglia
+2013-02-14 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- More cleanup/polish for Bug#3882, removing misleading
- DisplayLogin related log messages.
+ * modules/mod_xfer.c: Removing now-unnecessary trace logging; I
+ think the fix for Bug#3874 has been verified.
-2013-01-25 07:16 castaglia
+2013-02-14 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/mod_xfer.c: More trace logging for investigating Bug#3874.
-2013-01-25 07:10 castaglia
+2013-02-14 castaglia <castaglia>
- * NEWS, configure.in:
- Backport of fix for Bug#3884 to 1.3.4 branch.
+ * modules/mod_xfer.c: More debug trace logging, trying to determine
+ why the fix for Bug#3874 isn't working as expected.
-2013-01-25 07:10 castaglia
+2013-02-14 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#3884 - Configure script not detecting MySQL
- make_scrambled_password functions.
+ * modules/mod_xfer.c: Log if there's an error adding the
+ HiddenStores-path-is-on-NFS node.
-2013-01-24 18:39 castaglia
+2013-02-14 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).
+ * 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-01-24 18:08 castaglia
+2013-02-14 castaglia <castaglia>
- * src/fsio.c:
- Typo.
+ * modules/mod_core.c: Check for a directory when opening a
+ configured DisplayQuit file.
-2013-01-24 18:04 castaglia
+2013-02-14 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.
+ * 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-01-24 17:31 castaglia
+2013-02-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Adding regression test for Bug#3881.
+ * 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-01-24 17:30 castaglia
+2013-02-14 castaglia <castaglia>
- * NEWS, contrib/mod_ifsession.c:
- Bug#3881 - <Directory> sections within <IfGroup> sections not
- applied as expected.
+ * src/display.c: Make sure that we don't open Display files that are
+ directories.
-2013-01-24 16:05 castaglia
+2013-02-14 castaglia <castaglia>
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_log_forensic.pm,
- t/modules/mod_log_forensic.t:
- Adding in the regression tests for the new mod_log_forensic
- module.
+ * src/parser.c: Don't forget to close the file handle.
-2013-01-24 16:04 castaglia
+2013-02-14 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.
+ * modules/mod_auth_file.c: Make sure that the configure
+ AuthUserFile/AuthGroupFile paths are not directories.
-2013-01-24 14:45 castaglia
+2013-02-14 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.
+ * src/parser.c: Check whether the given config file is a directory;
+ if so, error out.
-2013-01-24 14:32 castaglia
+2013-02-14 castaglia <castaglia>
- * NEWS, contrib/mod_ifsession.c:
- Bug#3882 - DisplayLogin with an absolute path does not work
- properly within an <IfGroup> section.
+ * modules/mod_auth_file.c: Set the close-on-exec flag for the
+ AuthUserFile/AuthGroupFile fds.
-2013-01-24 14:30 castaglia
+2013-02-14 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.
+ * 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-01-24 14:21 castaglia
+2013-02-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Adding regression test for Bug#3882.
+ * 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-01-24 11:22 castaglia
+2013-02-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Make the mod_ifsession tests pass properly on MacOSX.
+ * contrib/ftpquota: Make sure that ftpquota shows "unlimited" for
+ values set to zero (or lower).
-2013-01-24 10:47 castaglia
+2013-02-13 castaglia <castaglia>
- * src/fsio.c:
- Add trace logging for the pr_fsio_is_nfs() function, for easier
- analysis.
+ * NEWS, modules/mod_xfer.c: Bug#3895 - Missing TransferLog entry
+ under some out-of-space conditions.
-2013-01-22 23:22 castaglia
+2013-02-13 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.
+ * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Regression test
+ for Bug#3895; requires the mod_enospc module.
-2013-01-22 07:20 castaglia
+2013-02-12 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Increase subpool size for SFTP packets to 128 bytes.
+ * 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-01-21 22:46 castaglia
+2013-02-12 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Backporting support for reading various v5/v6 attributes from
- trunk.
+ * 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-01-21 22:44 castaglia
+2013-02-12 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Fleshing out the support for various v5/v6-specific attributes.
+ * 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-01-21 17:12 castaglia
+2013-02-12 castaglia <castaglia>
- * contrib/mod_sftp/msg.c:
- Log the errno value from backtrace(3), if we fail to get a
- backtrace from it.
+ * 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-01-21 17:10 castaglia
+2013-02-08 castaglia <castaglia>
- * src/main.c:
- Wrong datatype for backtrace(3) return value.
+ * 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-01-21 17:05 castaglia
+2013-02-08 castaglia <castaglia>
- * src/main.c:
- Log the errors we get from backtrace(3) and backtrace_symbols(3),
- if any.
+ * 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-01-21 14:05 castaglia
+2013-02-08 castaglia <castaglia>
- * modules/mod_xfer.c:
- Reduce unnecessary logging of EEXIST cases when adding command
- notes.
+ * 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-01-21 12:00 castaglia
+2013-02-08 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Adding regression test for Bug#3879.
+ * configure: Used wrong version of autoconf to generate previous
+ configure script.
-2013-01-21 11:59 castaglia
+2013-02-08 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab_sql.c:
- Bug#3879 - Allow additional columns in SQLNamedQuery queries used
- for quota limits and tallies.
+ * configure: Updated configure.
-2013-01-21 10:28 castaglia
+2013-02-08 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Wrong cmd_rec in fix for Bug#3874.
+ * RELEASE_NOTES: Mention the appearance of mod_rlimit in the release
+ notes.
-2013-01-20 22:44 castaglia
+2013-02-08 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Backport of fix for Bug#3878 to 1.3.4 branch.
+ * 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-01-20 22:43 castaglia
+2013-02-08 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Bug#3878 - QuotaExcludeFilter not honored for uploads when 'hard'
- limits are used.
+ * src/dirtree.c: Add some trace logging for when we check
+ AllowFilter/DenyFilter against the arguments for specific commands.
-2013-01-20 22:41 castaglia
+2013-02-08 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Adding regression test for Bug#3878.
+ * tests/t/lib/ProFTPD/Tests/Config/AllowFilter.pm: Explicitly
+ specify the Order directive, to ensure that the <Limit> sections are
+ handled as expected.
-2013-01-19 10:20 castaglia
+2013-02-08 castaglia <castaglia>
- * contrib/mod_geoip.c:
- Bug#3877 - Fix GeoIPPolicy logging by making it a trace log
- message.
+ * tests/t/lib/ProFTPD/Tests/Config/RLimitOpenFiles.pm: More tests
+ for minimal RLimitOpenFiles settings.
-2013-01-18 17:08 castaglia
+2013-02-08 castaglia <castaglia>
- * src/parser.c:
- Backported parser segfault fix from trunk.
+ * tests/t/lib/ProFTPD/Tests/Config/RLimitCPU.pm: Adding more
+ RLimitCPU tests, ensuring the configured CPU resource limits are
+ being enforced.
-2013-01-18 17:07 castaglia
+2013-02-08 castaglia <castaglia>
- * src/parser.c:
- Fix possible segfault due to null pointer dereference.
+ * src/trace.c: Faster way to check for an empty string, without
+ calling strlen(3).
-2013-01-18 16:25 castaglia
+2013-02-08 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/mod_core.c, src/trace.c: Better handling of typo'd Trace
+ directive values (e.g. "directory:", with no level number).
-2013-01-18 16:21 castaglia
+2013-02-07 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.
+ * 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-01-18 15:35 castaglia
+2013-02-07 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.
+ * include/options.h: Tune the default listen(2) backlog higher.
-2013-01-18 12:30 castaglia
+2013-02-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression test for Bug#3869 using "TLSSessionCache off".
+ * NEWS, utils/ftptop.c: Bug#3894 - ftptop doesn't work with
+ --enable-nls.
-2013-01-18 12:29 castaglia
+2013-02-06 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3869 - Use longer SSL session cache expiration by default.
+ * 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-01-16 13:50 castaglia
+2013-02-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for Bug#3873.
+ * tests/t/lib/ProFTPD/Tests/Config/RLimitMemory.pm: Update
+ RLimitMemory tests to use testcase-specific logging. Added test for
+ using the 'daemon' setting.
-2013-01-16 13:50 castaglia
+2013-02-06 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3873 - Provide FTP response code in ExtendedLog for failed
- SFTP REMOVE request.
+ * 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-01-16 09:25 castaglia
+2013-02-06 castaglia <castaglia>
- * doc/modules/mod_xfer.html:
- Updated HiddenStores docs per changes for Bug#3872.
+ * include/conf.h: Pull in the new rlimit.h header.
-2013-01-16 09:12 castaglia
+2013-02-06 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_xfer.c:
- Bug#3872 - Use HiddenStores directive to customise suffix.
+ * 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-01-15 23:52 castaglia
+2013-02-06 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.
+ * 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-01-15 23:30 castaglia
+2013-02-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm:
- Updated the HiddenStores tests to use testcase-specific logging.
+ * 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-01-15 23:20 castaglia
+2013-02-06 castaglia <castaglia>
- * doc/modules/mod_xfer.html:
- Fleshing out more directive descriptions in the mod_xfer docs.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Properly
+ delete log from successful SQLLogOnEvent test.
-2013-01-15 14:25 castaglia
+2013-02-06 castaglia <castaglia>
- * contrib/: mod_tls.c:
- Remove duplicate setting of SSL session context ID.
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#3893 - Add
+ SQLLogOnEvent directive, for performing SQL query on configurable
+ event.
-2013-01-15 14:22 castaglia
+2013-02-06 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.)
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Checking in
+ test for new SQLLogOnEvent functionality (Bug#3893).
-2013-01-15 13:57 castaglia
+2013-02-05 castaglia <castaglia>
- * contrib/mod_tls_shmcache.c:
- Minor logging nits/cleanup for the mod_tls_shmcache module.
+ * doc/modules/mod_auth_file.html: Mention the new strict permission
+ checks on the AuthUserFile and AuthGroupFile in the mod_auth_file
+ docs.
-2013-01-15 13:04 castaglia
+2013-02-05 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm: Adding
+ regression tests for Bug#3892.
-2013-01-15 12:48 castaglia
+2013-02-05 castaglia <castaglia>
- * contrib/mod_tls.c:
- Fix incorrect format string.
+ * NEWS, RELEASE_NOTES, modules/mod_auth_file.c: Bug#3892 -
+ mod_auth_file should have strict permission checks of configured
+ files.
-2013-01-15 11:55 castaglia
+2013-02-04 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.
+ * doc/howto/Logging.html: Add logging FAQ for how to disable all
+ logging for proftpd.
-2013-01-15 11:55 castaglia
+2013-02-04 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.
+ * src/ctrls.c: Skip any zero-length control request arguments.
-2013-01-15 11:51 castaglia
+2013-02-04 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3871 to 1.3.4 branch.
+ * 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-01-15 11:50 castaglia
+2013-02-04 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3871 - REALPATH SFTP request not properly handled by <Limit
- DIRS> configuration.
+ * include/ctrls.h, src/ctrls.c: Avoid non-printable characters in
+ ftpdctl requests.
-2013-01-15 11:21 castaglia
+2013-02-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression/reproduction test for Bug#3871.
+ * src/ctrls.c: Add max length limit to control action request
+ argument. Fix caching/propagating of errno value. Fix stylistic
+ nits.
-2013-01-15 11:04 castaglia
+2013-02-04 castaglia <castaglia>
- * modules/mod_core.c:
- Use the proper C_ macros, rather than hardcoded strings, in more
- places.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Various tests for
+ configurations related to Bug#3753.
-2013-01-15 11:03 castaglia
+2013-02-04 castaglia <castaglia>
- * contrib/mod_tls.c:
- Use a better variable name here.
+ * 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-01-15 07:57 castaglia
+2013-02-04 castaglia <castaglia>
- * src/fsio.c:
- Add trace logging of the arguments to the pr_fsio_smkdir()
- function, for future debugging/analysis.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3753 - Support SFTP request
+ names in <Limit> sections better.
-2013-01-14 22:16 castaglia
+2013-02-03 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.
+ * src/dirtree.c: Stylistic nit; no functional change.
-2013-01-14 22:14 castaglia
+2013-02-03 castaglia <castaglia>
- * tests/t/: etc/modules/mod_tls/ipv6-ca.pem,
- etc/modules/mod_tls/ipv6-client-cert2.pem,
- etc/modules/mod_tls/ipv6-server-cert2.pem,
- lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression test for handling of IPv6 iPAddress SubjAltName
- values in client certs.
+ * doc/contrib/mod_sftp.html: Add mention of <Limit WRITE> applying
+ to WRITE SFTP request (of course).
-2013-01-14 14:19 castaglia
+2013-02-03 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c, contrib/mod_sftp/dhparams.pem:
- Bug#3779 - Generate new DH parameters for mod_tls and mod_sftp.
+ * doc/contrib/mod_tls.html: Update mod_tls docs in light of
+ TLSProtocol changes for Bug#3891.
-2013-01-14 12:44 castaglia
+2013-02-03 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Backport of fix for Bug#3870 to 1.3.4 branch.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3891 - Allow
+ TLSProtocol directive in <VirtualHost> and <Global> sections.
-2013-01-14 12:43 castaglia
+2013-02-03 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#3870 - Handling of OPTS command can lead to crash.
+ * src/scoreboard.c: Fix up the trace-level log messages related to
+ scoreboard locking.
-2013-01-14 12:33 castaglia
+2013-02-02 castaglia <castaglia>
- * tests/: tests.pl, t/commands/opts.t,
- t/lib/ProFTPD/Tests/Commands/OPTS.pm:
- Add regression tests for the OPTS command (including test for
- Bug#3870).
+ * src/log.c: Fix compiler error (i.e. programmer error).
-2013-01-14 08:52 castaglia
+2013-02-02 castaglia <castaglia>
- * src/fsio.c:
- Remove redundant strlen(3).
+ * 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-14 08:51 castaglia
+2013-01-31 castaglia <castaglia>
- * src/fsio.c:
- Remove erroneous errno assignment.
+ * RELEASE_NOTES: Document the log format change in the release
+ notes.
-2013-01-13 21:57 castaglia
+2013-01-31 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.
+ * src/log.c: Now SystemLog (console and file), and all *Log files
+ (via pr_log_writefile()) use ISO-8601 timestamp format.
-2013-01-13 21:39 castaglia
+2013-01-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- Fix minor nits in comments; no functional change.
+ * include/trace.h, src/trace.c: Switch TraceLog to use ISO-8601
+ timestamps. Other logs soon to follow suit.
-2013-01-13 21:15 castaglia
+2013-01-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- Backported another tweak/part of Bug#3868, to avoid null pointer
- dereference.
+ * 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-13 21:14 castaglia
+2013-01-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- Additional tweak (to avoid null pointer dereference) for
- Bug#3868.
+ * doc/modules/mod_log.html: Updating LogFormat docs with
+ descriptions of new %{iso8601}, %{microsecs}, and %{millisecs}
+ variables.
-2013-01-13 17:12 castaglia
+2013-01-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- Typo.
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c, modules/mod_log.c:
+ Bug#3889 - Support millisecond timestamp LogFormat variable.
-2013-01-13 16:40 castaglia
+2013-01-31 castaglia <castaglia>
- * include/fsio.h, src/fsio.c:
- Backporting more of the pr_fsio_smkdir() tweaks from trunk to the
- 1.3.4 branch.
+ * 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-13 16:38 castaglia
+2013-01-31 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.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Add regression
+ test for %{microsecs} LogFormat variable, for Bug#3889, too.
-2013-01-13 16:33 castaglia
+2013-01-31 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.)
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding
+ regression tests for the LogFormat variables added for Bug#3889.
-2013-01-13 13:39 castaglia
+2013-01-31 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Improvide the TLSDHParamFile documentation, in light of Bug#3868.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Additional
+ reproduction recipes for Bug#3881.
-2013-01-13 13:25 castaglia
+2013-01-30 castaglia <castaglia>
- * tests/t/: etc/modules/mod_tls/dh1024.pem,
- lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression tests for Bug#3868.
+ * 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-13 13:21 castaglia
+2013-01-30 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3868 to 1.3.4 branch.
+ * modules/mod_xfer.c: More tweaks on the path to
+ verification/resolution for Bug#3874.
-2013-01-13 13:19 castaglia
+2013-01-30 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3868 - Only first DH param in TLSDHParamFile is used,
- regardless of requested keylength.
+ * 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-13 13:06 castaglia
+2013-01-29 castaglia <castaglia>
- * NEWS, contrib/ftpasswd:
- Backport of fix for Bug#3867 to 1.3.4 branch.
+ * src/fsio.c: Try to be more informative about NFS-related 'fsio'
+ trace logging.
-2013-01-13 13:05 castaglia
+2013-01-29 castaglia <castaglia>
- * NEWS, contrib/ftpasswd:
- Bug#3867 - ftpasswd fails with "Permission denied" when adding
- subsequent passwd/group entries.
+ * modules/mod_xfer.c: Temporary trace logging to help debug
+ Bug#3874.
-2013-01-11 19:50 castaglia
+2013-01-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm:
- Now we have a bug number assigned.
+ * src/fsio.c: Slightly better formatting for NFS-related trace
+ message.
-2013-01-11 19:43 castaglia
+2013-01-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm:
- Flesh out the first ftpasswd regression test.
+ * 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-11 19:03 castaglia
+2013-01-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Utils/: ftpcount.pm, ftpwho.pm:
- Make these utils tests pass again (just needed correct path to
- the executables).
+ * contrib/mod_sftp/mac.c: Remove unnecessary (and misleading)
+ typecasts.
-2013-01-11 15:37 castaglia
+2013-01-29 castaglia <castaglia>
- * tests/t/: contrib/ftpasswd.t,
- lib/ProFTPD/Tests/Contrib/ftpasswd.pm:
- Start working on ftpasswd unit tests.
+ * 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-11 11:32 castaglia
+2013-01-29 castaglia <castaglia>
- * contrib/ftpasswd:
- Bump the ftpasswd version, given the addition of support for
- other password hash types.
+ * contrib/mod_sftp/ssh2.h: For (hopefully) better interoperability,
+ use the same max packet size as OpenSSH does.
-2013-01-11 10:33 castaglia
+2013-01-29 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Backport of fix for Bug#3866 to 1.3.4 branch.
+ * 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-11 10:33 castaglia
+2013-01-29 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#3866 - Issuing invalid 'ftpdctl ban' request causes segfault.
+ * contrib/mod_sftp/utf8.c, src/fsio.c: Further refinements of the
+ trace logging of failed encoding/decoding.
-2013-01-11 09:35 castaglia
+2013-01-29 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Backport of fix for Bug#3865 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Remove development
+ cruft.
-2013-01-11 09:35 castaglia
+2013-01-29 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#3865 - BanEngine not set in "server config" results in
- "mod_ban not enabled" ftpdctl error.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ test for Bug#3887.
-2013-01-10 16:57 castaglia
+2013-01-29 castaglia <castaglia>
- * modules/mod_core.c:
- Stylistic nits; no functional change.
+ * NEWS, src/dirtree.c: Bug#3887 - <Limit ALL> erroneously blocks the
+ PROT command used for FTPS.
-2013-01-10 14:51 castaglia
+2013-01-29 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.
+ * 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-10 14:48 castaglia
+2013-01-28 castaglia <castaglia>
- * src/fsio.c:
- Backporting more pr_fsio_smkdir() fixes from trunk, for fixing
- regressions caused by Bug#3841.
+ * src/memcache.c: Bug#3886 - Calling
+ pr_memcache_conn_set_namespace() crashes on buffer overflow.
-2013-01-10 14:47 castaglia
+2013-01-28 castaglia <castaglia>
- * src/fsio.c:
- Log a warning if we can't rename the directory in
- pr_fsio_smkdir(), too.
+ * contrib/mod_tls_memcache.c: Clean up logging/comments in
+ mod_tls_shmcache; no functional change.
-2013-01-10 14:44 castaglia
+2013-01-25 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.
+ * 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-10 12:10 castaglia
+2013-01-25 castaglia <castaglia>
- * src/event.c:
- Backport another fix, regarding event notification subscription,
- from trunk.
+ * src/dirtree.c: When resolving deferred paths, make sure to handle
+ tilde interpolation as well.
-2013-01-10 12:07 castaglia
+2013-01-25 castaglia <castaglia>
- * src/fsio.c:
- Backporting fix for MKD regression (due to Bug#3841) to 1.3.4
- branch.
+ * 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-10 12:07 castaglia
+2013-01-25 castaglia <castaglia>
- * src/fsio.c:
- Fix regression with MKD commands (due to Bug#3841).
+ * contrib/mod_ifsession.c: Fix call to pr_auth_getgroups() to use
+ user name, not group name, for the lookup. Sigh.
-2013-01-10 12:06 castaglia
+2013-01-25 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm:
- Added needed regression test for sending MKD for a chrooted
- session.
+ * 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-10 11:46 castaglia
+2013-01-25 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.
+ * contrib/mod_sftp/fxp.c: Add better trace logging of the v5/v6 BITS
+ attribute.
-2013-01-10 10:52 castaglia
+2013-01-25 castaglia <castaglia>
- * contrib/mod_tls.c:
- Stylistic nits.
+ * 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).
- 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.
+2013-01-25 castaglia <castaglia>
- No functional changes.
+ * contrib/mod_ifsession.c: More cleanup/polish for Bug#3882,
+ removing misleading DisplayLogin related log messages.
-2013-01-09 18:06 castaglia
+2013-01-25 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth.c:
- Backported fix for Bug#3863 to 1.3.4 branch.
+ * configure: Updated configure.
-2013-01-09 18:06 castaglia
+2013-01-25 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth.c:
- Bug#3863 - mod_sftp does not handle MaxLoginAttempts properly.
+ * NEWS, configure.in: Bug#3884 - Configure script not detecting
+ MySQL make_scrambled_password functions.
- Make sure that we increment the auth_attempts counter whenever
- the auth method request does not explicitly succeed.
+2013-01-25 castaglia <castaglia>
-2013-01-09 18:03 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).
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm:
- Updating mod_sftp+mod_ban MaxLoginAttempts regression test for
- Bug#3863.
+2013-01-25 castaglia <castaglia>
-2013-01-09 16:43 castaglia
+ * src/fsio.c: Typo.
- * doc/contrib/mod_tls.html:
- Adding description of TLSMasqueradeAddress directive to mod_tls
- docs.
+2013-01-25 castaglia <castaglia>
-2013-01-09 16:21 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.
- * doc/modules/mod_core.html:
- Typo.
+2013-01-25 castaglia <castaglia>
-2013-01-09 15:53 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding
+ regression test for Bug#3881.
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c, modules/mod_core.c:
- Bug#3862 - Support for FTPS-specific MasqueradeAddress
- functionality.
+2013-01-25 castaglia <castaglia>
-2013-01-09 15:52 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#3881 - <Directory> sections
+ within <IfGroup> sections not applied as expected.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression test for TLSMasqueradeAddress directive; see
- Bug#3862.
+2013-01-25 castaglia <castaglia>
-2013-01-09 15:19 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.
- * tests/: tests.pl, t/config/masqueradeaddress.t,
- t/lib/ProFTPD/Tests/Config/MasqueradeAddress.pm:
- Adding unit tests for the MaqueradeAddress directive.
+2013-01-25 castaglia <castaglia>
-2013-01-09 14:53 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.
- * contrib/mod_ban.c:
- Provide more information for the 'mod_ban.ban.expired' event.
+2013-01-24 castaglia <castaglia>
-2013-01-09 12:53 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.
- * doc/howto/Controls.html:
- Fix typo.
+2013-01-24 castaglia <castaglia>
-2013-01-08 23:48 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#3882 - DisplayLogin with an
+ absolute path does not work properly within an <IfGroup> section.
- * contrib/mod_sftp/fxp.c:
- Aborting an SFTP directory listing is always an error.
+2013-01-24 castaglia <castaglia>
-2013-01-08 16:32 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding an ExtendedLog/LogFormat %f test for SFTP transfers in a
- chrooted session.
+2013-01-24 castaglia <castaglia>
-2013-01-08 14:23 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding
+ regression test for Bug#3882.
- * contrib/mod_tls.c:
- Fix erroneous "renegotiation accepted" TLSLog messages for data
- transfers.
+2013-01-24 castaglia <castaglia>
-2013-01-08 13:03 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Make the
+ mod_ifsession tests pass properly on MacOSX.
- * contrib/mod_sftp/fxp.c:
- Make sure that we dispatch a MLSD command for aborted SFTP
- directory listings.
+2013-01-24 castaglia <castaglia>
-2013-01-08 12:29 castaglia
+ * src/fsio.c: Add trace logging for the pr_fsio_is_nfs() function,
+ for easier analysis.
- * 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-23 castaglia <castaglia>
-2013-01-07 23:01 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.
- * contrib/mod_ban.c:
- Backporting minor memory leak fix from trunk.
+2013-01-22 castaglia <castaglia>
-2013-01-07 22:59 castaglia
+ * contrib/mod_sftp/fxp.c: Increase subpool size for SFTP packets to
+ 128 bytes.
- * 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-22 castaglia <castaglia>
-2013-01-07 22:56 castaglia
+ * contrib/mod_sftp/fxp.c: Fleshing out the support for various
+ v5/v6-specific attributes.
- * 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-22 castaglia <castaglia>
-2013-01-07 16:20 castaglia
+ * contrib/mod_sftp/msg.c: Log the errno value from backtrace(3), if
+ we fail to get a backtrace from it.
- * doc/howto/Rewrite.html:
- Another time-related mod_rewrite config/trick.
+2013-01-22 castaglia <castaglia>
-2013-01-07 16:10 castaglia
+ * src/main.c: Wrong datatype for backtrace(3) return value.
- * doc/howto/Rewrite.html:
- Start adding some time-related mod_rewrite examples, now that
- mod_rewrite supports time variables.
+2013-01-22 castaglia <castaglia>
-2013-01-07 15:59 castaglia
+ * src/main.c: Log the errors we get from backtrace(3) and
+ backtrace_symbols(3), if any.
- * 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-21 castaglia <castaglia>
-2013-01-07 15:00 castaglia
+ * modules/mod_xfer.c: Reduce unnecessary logging of EEXIST cases
+ when adding command notes.
- * doc/contrib/mod_geoip.html:
- Added description of the GeoIPPolicy directive to the mod_geoip
- docs.
+2013-01-21 castaglia <castaglia>
-2013-01-07 14:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Adding
+ regression test for Bug#3879.
- * NEWS, RELEASE_NOTES, contrib/mod_geoip.c:
- Bug#3860 - Add a default deny option for mod_geoip.
+2013-01-21 castaglia <castaglia>
-2013-01-07 14:42 castaglia
+ * NEWS, contrib/mod_quotatab_sql.c: Bug#3879 - Allow additional
+ columns in SQLNamedQuery queries used for quota limits and tallies.
- * doc/modules/mod_core.html:
- Adding descriptions for the Port and <VirtualHost> directives to
- the mod_core docs.
+2013-01-21 castaglia <castaglia>
-2013-01-07 13:33 castaglia
+ * contrib/mod_sftp/fxp.c: Wrong cmd_rec in fix for Bug#3874.
- * doc/modules/mod_core.html:
- Add description for DefaultAddress to the mod_core docs.
+2013-01-21 castaglia <castaglia>
-2013-01-07 13:26 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#3878 - QuotaExcludeFilter not
+ honored for uploads when 'hard' limits are used.
- * doc/contrib/mod_geoip.html:
- Cut-n-pasto.
+2013-01-21 castaglia <castaglia>
-2013-01-07 13:25 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Adding
+ regression test for Bug#3878.
- * doc/contrib/mod_geoip.html:
- Include links to some of the MaxMind documentation on e.g.
- country codes and continents.
+2013-01-19 castaglia <castaglia>
-2013-01-07 13:08 castaglia
+ * contrib/mod_geoip.c: Bug#3877 - Fix GeoIPPolicy logging by making
+ it a trace log message.
- * doc/modules/mod_core.html:
- Add the MasqueradeAddress description to the mod_core docs.
+2013-01-19 castaglia <castaglia>
-2013-01-07 12:31 castaglia
+ * src/parser.c: Fix possible segfault due to null pointer
+ dereference.
- * modules/mod_facts.c:
- Backporting additional fix for Bug#3859 from trunk to 1.3.4
- branch.
+2013-01-19 castaglia <castaglia>
-2013-01-07 12:30 castaglia
+ * configure: Updated configure.
- * modules/mod_facts.c:
- Additional fix for Bug#3859.
+2013-01-19 castaglia <castaglia>
-2013-01-07 11:45 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.
- * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm:
- Another regression test for Bug#3859, this time using
- "ShowSymlinks off".
+2013-01-18 castaglia <castaglia>
-2013-01-07 10:52 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.
- * NEWS, modules/mod_facts.c:
- Backport of fix for Bug#3859 to 1.3.4 branch.
+2013-01-18 castaglia <castaglia>
-2013-01-07 10:52 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ test for Bug#3869 using "TLSSessionCache off".
- * NEWS, modules/mod_facts.c:
- Bug#3859 - MLSD fails to show symlinks when ShowSymlinks is not
- configured.
+2013-01-18 castaglia <castaglia>
-2013-01-07 10:26 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3869 - Use longer SSL
+ session cache expiration by default.
- * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm:
- Adding regression test for Bug#3859.
+2013-01-16 castaglia <castaglia>
-2013-01-07 09:43 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for Bug#3873.
- * 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-16 castaglia <castaglia>
-2013-01-06 08:20 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3873 - Provide FTP response code
+ in ExtendedLog for failed SFTP REMOVE request.
- * modules/Makefile.in:
- Backporting build fix from trunk.
+2013-01-16 castaglia <castaglia>
-2013-01-06 08:18 castaglia
+ * doc/modules/mod_xfer.html: Updated HiddenStores docs per changes
+ for Bug#3872.
- * 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-16 castaglia <castaglia>
-2013-01-05 17:48 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_xfer.c: Bug#3872 - Use
+ HiddenStores directive to customise suffix.
- * 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-16 castaglia <castaglia>
-2013-01-05 16:13 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.
- * 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-16 castaglia <castaglia>
-2013-01-05 14:49 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Updated the
+ HiddenStores tests to use testcase-specific logging.
- * contrib/mod_sftp/fxp.c:
- Remove spurious/unnecessary event generation (this particular
- event is generated elsewhere); bad patch application?
+2013-01-16 castaglia <castaglia>
-2013-01-05 08:30 castaglia
+ * doc/modules/mod_xfer.html: Fleshing out more directive
+ descriptions in the mod_xfer docs.
- * src/pool.c:
- Bug#3857 - ProFTPD 1.3.5rc1 API test suite fails.
+2013-01-15 castaglia <castaglia>
-2013-01-04 19:36 castaglia
+ * contrib/mod_tls.c: Remove duplicate setting of SSL session context
+ ID.
- * 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.
+2013-01-15 castaglia <castaglia>
- This will teach me to actually run the API tests before
- releasing. Sigh.
+ * 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-04 16:30 castaglia
+2013-01-15 castaglia <castaglia>
- * src/dirtree.c:
- Slightly better approach (avoids having root privs while writing
- out a log; that's not needed).
+ * contrib/mod_tls_shmcache.c: Minor logging nits/cleanup for the
+ mod_tls_shmcache module.
-2013-01-04 16:26 castaglia
+2013-01-15 castaglia <castaglia>
- * src/: dirtree.c, 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.
+ * 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-04 15:07 castaglia
+2013-01-15 castaglia <castaglia>
- * doc/howto/Scoreboard.html:
- One more tool affected by disabling of scoreboarding.
+ * contrib/mod_tls.c: Fix incorrect format string.
-2013-01-04 15:03 castaglia
+2013-01-15 castaglia <castaglia>
- * include/version.h:
- Bumped version for the next RC.
+ * 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-04 14:18 castaglia
+2013-01-15 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3871 - REALPATH SFTP request not
+ properly handled by <Limit DIRS> configuration.
-2013-01-04 14:17 castaglia
+2013-01-15 castaglia <castaglia>
- * locale/files.txt:
- Updates files.txt, for localization efforts.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding
+ regression/reproduction test for Bug#3871.
-2013-01-04 14:16 castaglia
+2013-01-15 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating versions, dates, getting ready to release 1.3.5rc1.
+ * modules/mod_core.c: Use the proper C_ macros, rather than
+ hardcoded strings, in more places.
-2013-01-04 13:47 castaglia
+2013-01-15 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Backport of fix for Bug#3855 to 1.3.4 branch.
+ * contrib/mod_tls.c: Use a better variable name here.
-2013-01-04 13:47 castaglia
+2013-01-15 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3855 - Restarting proftpd may cause Include files not to be
- parsed.
+ * src/fsio.c: Add trace logging of the arguments to the
+ pr_fsio_smkdir() function, for future debugging/analysis.
-2013-01-04 12:32 castaglia
+2013-01-15 castaglia <castaglia>
- * doc/modules/mod_auth.html:
- Add CreateHome description to the mod_auth docs.
+ * 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-04 12:19 castaglia
+2013-01-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm:
- Minor nits, adding delays to avoid races to make the test more
- robust.
+ * 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-04 12:12 castaglia
+2013-01-14 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.
+ * NEWS, contrib/mod_sftp/dhparams.pem, contrib/mod_tls.c: Bug#3779 -
+ Generate new DH parameters for mod_tls and mod_sftp.
-2013-01-04 11:34 castaglia
+2013-01-14 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.
+ * NEWS, modules/mod_core.c: Bug#3870 - Handling of OPTS command can
+ lead to crash.
-2013-01-04 07:34 castaglia
+2013-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm:
- Using assert_transfer_ok() in more tests.
+ * 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-03 22:15 castaglia
+2013-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm:
- Using assert_transfer_ok() in more tests.
+ * src/fsio.c: Remove erroneous errno assignment.
-2013-01-03 22:10 castaglia
+2013-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm:
- Using assert_transfer_ok() in more tests.
+ * 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-03 22:02 castaglia
+2013-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Using assert_transfer_ok() in more tests.
+ * contrib/mod_tls.c: Fix minor nits in comments; no functional
+ change.
-2013-01-03 21:16 castaglia
+2013-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- Start using the assert_transfer_ok() function in more tests.
+ * contrib/mod_tls.c: Additional tweak (to avoid null pointer
+ dereference) for Bug#3868.
-2013-01-03 14:40 castaglia
+2013-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Make some of the ExtendedLog tests more robust.
+ * contrib/mod_tls.c: Typo.
-2013-01-03 14:35 castaglia
+2013-01-14 castaglia <castaglia>
- * modules/mod_core.c:
- Guard the HOST implementation with #ifdefs, as it is not yet
- ready for public use.
+ * 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-03 14:29 castaglia
+2013-01-14 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.
+ * 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-03 14:16 castaglia
+2013-01-13 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'.
+ * doc/contrib/mod_tls.html: Improvide the TLSDHParamFile
+ documentation, in light of Bug#3868.
-2013-01-03 14:01 castaglia
+2013-01-13 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).
+ * 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-03 13:53 castaglia
+2013-01-13 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm:
- Updated tests to use testcase-specific logging.
+ * NEWS, contrib/mod_tls.c: Bug#3868 - Only first DH param in
+ TLSDHParamFile is used, regardless of requested keylength.
-2013-01-03 13:51 castaglia
+2013-01-13 castaglia <castaglia>
- * contrib/mod_sftp/: scp.c:
- Remove debugging cruft.
+ * NEWS, contrib/ftpasswd: Bug#3867 - ftpasswd fails with "Permission
+ denied" when adding subsequent passwd/group entries.
-2013-01-03 13:50 castaglia
+2013-01-12 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Backporting fix from trunk.
+ * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Now we have a bug
+ number assigned.
-2013-01-03 13:49 castaglia
+2013-01-12 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Fix regression caught by testsuite.
+ * tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Flesh out the first
+ ftpasswd regression test.
-2013-01-03 13:16 castaglia
+2013-01-12 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.
+ * 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-03 12:20 castaglia
+2013-01-11 castaglia <castaglia>
- * contrib/mod_sql.c, contrib/mod_sftp/fxp.c, modules/mod_log.c:
- Fix another regression caught by the testsuite, concerning the
- handling of the %F LogFormat variable.
+ * tests/t/contrib/ftpasswd.t,
+ tests/t/lib/ProFTPD/Tests/Contrib/ftpasswd.pm: Start working on
+ ftpasswd unit tests.
-2013-01-03 11:12 castaglia
+2013-01-11 castaglia <castaglia>
- * src/event.c:
- Backporting fix for regression from trunk.
+ * contrib/ftpasswd: Bump the ftpasswd version, given the addition of
+ support for other password hash types.
-2013-01-03 11:12 castaglia
+2013-01-11 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.
+ * NEWS, contrib/mod_ban.c: Bug#3866 - Issuing invalid 'ftpdctl ban'
+ request causes segfault.
-2013-01-03 10:12 castaglia
+2013-01-11 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Backporting of regression fix from trunk.
+ * NEWS, contrib/mod_ban.c: Bug#3865 - BanEngine not set in "server
+ config" results in "mod_ban not enabled" ftpdctl error.
-2013-01-03 10:10 castaglia
+2013-01-11 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.
+ * modules/mod_core.c: Stylistic nits; no functional change.
-2013-01-03 10:08 castaglia
+2013-01-10 castaglia <castaglia>
- * src/fsio.c:
- Stylistic nit (extraneous whitespace); no functional change.
+ * 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-03 09:22 castaglia
+2013-01-10 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.
+ * src/fsio.c: Log a warning if we can't rename the directory in
+ pr_fsio_smkdir(), too.
-2013-01-03 09:04 castaglia
+2013-01-10 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.
+ * 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-02 17:17 castaglia
+2013-01-10 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.
+ * src/fsio.c: Fix regression with MKD commands (due to Bug#3841).
-2013-01-02 17:13 castaglia
+2013-01-10 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).
+ * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Added needed regression
+ test for sending MKD for a chrooted session.
-2013-01-02 16:44 castaglia
+2013-01-10 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.
+ * 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-02 16:43 castaglia
+2013-01-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Expose the utility function for obtaining the list of compiled-in
- modules.
+ * 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-02 16:21 castaglia
+2013-01-10 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.
+ * 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-02 16:14 castaglia
+2013-01-10 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm: Updating
+ mod_sftp+mod_ban MaxLoginAttempts regression test for Bug#3863.
-2013-01-02 15:50 castaglia
+2013-01-10 castaglia <castaglia>
- * contrib/mod_tls.c:
- Remove the SSL_COMP_add_compression_method() ifdef; it won't be
- used.
+ * doc/contrib/mod_tls.html: Adding description of
+ TLSMasqueradeAddress directive to mod_tls docs.
-2013-01-02 15:46 castaglia
+2013-01-10 castaglia <castaglia>
- * RELEASE_NOTES:
- Typo.
+ * doc/modules/mod_core.html: Typo.
-2013-01-02 15:45 castaglia
+2013-01-09 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.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c, modules/mod_core.c:
+ Bug#3862 - Support for FTPS-specific MasqueradeAddress
+ functionality.
- Disable SSL compression.
+2013-01-09 castaglia <castaglia>
-2013-01-02 15:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ test for TLSMasqueradeAddress directive; see Bug#3862.
- * 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-09 castaglia <castaglia>
-2013-01-02 14:38 castaglia
+ * tests/t/config/masqueradeaddress.t,
+ tests/t/lib/ProFTPD/Tests/Config/MasqueradeAddress.pm,
+ tests/tests.pl: Adding unit tests for the MaqueradeAddress
+ directive.
- * contrib/mod_tls.c:
- Testsuite caught a regression in the handling of the
- TLSPKCS12File directive.
+2013-01-09 castaglia <castaglia>
-2013-01-02 14:24 castaglia
+ * contrib/mod_ban.c: Provide more information for the
+ 'mod_ban.ban.expired' event.
- * 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-09 castaglia <castaglia>
-2013-01-02 13:56 castaglia
+ * doc/howto/Controls.html: Fix typo.
- * 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-09 castaglia <castaglia>
-2013-01-02 13:50 castaglia
+ * contrib/mod_sftp/fxp.c: Aborting an SFTP directory listing is
+ always an error.
- * 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-09 castaglia <castaglia>
-2013-01-02 13:20 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding an
+ ExtendedLog/LogFormat %f test for SFTP transfers in a chrooted
+ session.
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm:
- Updating .ftpaccess file tests to use testcase-specific logging.
+2013-01-08 castaglia <castaglia>
-2013-01-02 13:15 castaglia
+ * contrib/mod_tls.c: Fix erroneous "renegotiation accepted" TLSLog
+ messages for data transfers.
- * 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-08 castaglia <castaglia>
-2013-01-02 13:08 castaglia
+ * contrib/mod_sftp/fxp.c: Make sure that we dispatch a MLSD command
+ for aborted SFTP directory listings.
- * RELEASE_NOTES:
- Updated the release notes, preparing for a release.
+2013-01-08 castaglia <castaglia>
-2013-01-02 11:06 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.
- * doc/contrib/mod_quotatab.html:
- Adding description of QuotaDefault directive to mod_quotatab
- docs.
+2013-01-08 castaglia <castaglia>
-2013-01-02 09:40 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).
- * contrib/mod_tls.c:
- Fix compiler warning about unused variable.
+2013-01-08 castaglia <castaglia>
-2013-01-02 09:39 castaglia
+ * src/inet.c: Quell compiler warning about unused variable on
+ platforms which do not support the TCP keepalive macros (e.g. Mac
+ OSX).
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm:
- Start using testcase-specific logging for these tests.
+2013-01-08 castaglia <castaglia>
-2013-01-02 09:38 castaglia
+ * doc/howto/Rewrite.html: Another time-related mod_rewrite
+ config/trick.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Fix some Perl warnings when running the mod_exec tests.
+2013-01-08 castaglia <castaglia>
-2012-12-28 18:49 castaglia
+ * doc/howto/Rewrite.html: Start adding some time-related mod_rewrite
+ examples, now that mod_rewrite supports time variables.
- * doc/contrib/mod_tls.html:
- Typo.
+2013-01-07 castaglia <castaglia>
-2012-12-28 17:20 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.
- * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm:
- Updated/fixed tests.
+2013-01-07 castaglia <castaglia>
-2012-12-28 17:16 castaglia
+ * doc/contrib/mod_geoip.html: Added description of the GeoIPPolicy
+ directive to the mod_geoip docs.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Use the assert_transfer_ok() function in a few more places.
+2013-01-07 castaglia <castaglia>
-2012-12-28 17:08 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_geoip.c: Bug#3860 - Add a default
+ deny option for mod_geoip.
- * tests/t/lib/ProFTPD/Tests/Config/Trace.pm:
- Updated tests to deal with Trace logging changes. Added
- testcase-specific logging.
+2013-01-07 castaglia <castaglia>
-2012-12-28 16:57 castaglia
+ * doc/modules/mod_core.html: Adding descriptions for the Port and
+ <VirtualHost> directives to the mod_core docs.
- * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm:
- Update tests to deal with different platforms' symlink permission
- defaults.
+2013-01-07 castaglia <castaglia>
-2012-12-28 16:47 castaglia
+ * doc/modules/mod_core.html: Add description for DefaultAddress to
+ the mod_core docs.
- * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm:
- Update tests to use testcase-specific logging, and the
- assert_transfer_ok() function.
+2013-01-07 castaglia <castaglia>
-2012-12-28 16:45 castaglia
+ * doc/contrib/mod_geoip.html: Cut-n-pasto.
- * src/privs.c:
- Testsuite caught another regression; now fixed.
+2013-01-07 castaglia <castaglia>
-2012-12-28 16:12 castaglia
+ * doc/contrib/mod_geoip.html: Include links to some of the MaxMind
+ documentation on e.g. country codes and continents.
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm:
- Updating test to use testcase-specific logging.
+2013-01-07 castaglia <castaglia>
-2012-12-28 16:11 castaglia
+ * doc/modules/mod_core.html: Add the MasqueradeAddress description
+ to the mod_core docs.
- * src/fsio.c:
- Backporting fix from trunk.
+2013-01-07 castaglia <castaglia>
-2012-12-28 16:11 castaglia
+ * modules/mod_facts.c: Additional fix for Bug#3859.
- * src/fsio.c:
- When safely creating directories, allow the parent directory path
- to be a symlink.
+2013-01-07 castaglia <castaglia>
-2012-12-28 15:28 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Another regression
+ test for Bug#3859, this time using "ShowSymlinks off".
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm:
- Fixing up tests.
+2013-01-07 castaglia <castaglia>
-2012-12-28 15:20 castaglia
+ * NEWS, modules/mod_facts.c: Bug#3859 - MLSD fails to show symlinks
+ when ShowSymlinks is not configured.
- * modules/mod_facts.c:
- Regression for Bug#3715 now fixed.
+2013-01-07 castaglia <castaglia>
-2012-12-28 15:17 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Adding regression test
+ for Bug#3859.
- * modules/mod_facts.c:
- Caching/preserving of errno values, some stylistic nits.
+2013-01-07 castaglia <castaglia>
-2012-12-28 14:40 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.
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm:
- Fix testware issue on Linux; update tests to use
- assert_transfer_ok().
+2013-01-06 castaglia <castaglia>
-2012-12-28 14:31 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.
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm:
- Updating to use testcase-specific logging.
+2013-01-06 castaglia <castaglia>
-2012-12-28 14:22 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.
- * src/dirtree.c:
- Testsuite caught a regression; now fixed.
+2013-01-06 castaglia <castaglia>
-2012-12-28 14:09 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).
- * src/dirtree.c:
- Stylistic nits; no functional change.
+2013-01-05 castaglia <castaglia>
-2012-12-28 13:38 castaglia
+ * contrib/mod_sftp/fxp.c: Remove spurious/unnecessary event
+ generation (this particular event is generated elsewhere); bad patch
+ application?
- * doc/howto/Compiling.html:
- Adding more compiling FAQs.
+2013-01-05 castaglia <castaglia>
-2012-12-28 12:55 castaglia
+ * src/pool.c: Bug#3857 - ProFTPD 1.3.5rc1 API test suite fails.
- * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm:
- Fill in the testcase for a password which contains spaces.
+2013-01-05 castaglia <castaglia>
-2012-12-28 12:52 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.
- * modules/mod_core.c:
- Don't advertise support for the HOST command just yet, as it has
- not been completely implemented as yet.
+2013-01-05 castaglia <castaglia>
-2012-12-28 11:54 castaglia
+ * src/dirtree.c: Slightly better approach (avoids having root privs
+ while writing out a log; that's not needed).
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_tls.pm, mod_wrap2_sql.pm:
+2013-01-05 castaglia <castaglia>
- Fix re-declaration of variables.
+ * 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.
-2012-12-28 11:20 castaglia
+2013-01-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm:
- Fix re-declaration of variable.
+ * doc/howto/Scoreboard.html: One more tool affected by disabling of
+ scoreboarding.
-2012-12-28 11:19 castaglia
+2013-01-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Quell compiler warning about use of uninitialized value.
+ * include/version.h: Bumped version for the next RC.
-2012-12-28 11:16 castaglia
+2013-01-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Modules/mod_ban.pm, Signals/HUP.pm:
- Now that server_restart() is provided by the Utils class, these
- tests no longer need to provide their own implementations.
+ * ChangeLog: Updated ChangeLog.
-2012-12-28 09:40 castaglia
+2013-01-04 castaglia <castaglia>
- * src/cmd.c:
- Quell compiler warning.
+ * locale/files.txt: Updates files.txt, for localization efforts.
-2012-12-28 09:34 castaglia
+2013-01-04 castaglia <castaglia>
- * modules/mod_core.c:
- Remove unused variable, quelling compiler warning.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Updating
+ versions, dates, getting ready to release 1.3.5rc1.
-2012-12-28 09:33 castaglia
+2013-01-04 castaglia <castaglia>
- * modules/mod_core.c:
- Remove unused variable.
+ * NEWS, src/dirtree.c: Bug#3855 - Restarting proftpd may cause
+ Include files not to be parsed.
-2012-12-27 18:56 castaglia
+2013-01-04 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.
+ * doc/modules/mod_auth.html: Add CreateHome description to the
+ mod_auth docs.
-2012-12-27 18:37 castaglia
+2013-01-04 castaglia <castaglia>
- * src/fsio.c:
- Minor nits; no functional change.
+ * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Minor nits, adding
+ delays to avoid races to make the test more robust.
-2012-12-27 16:03 castaglia
+2013-01-04 castaglia <castaglia>
- * NEWS, include/fsio.h, contrib/mod_sftp/fxp.c,
- contrib/mod_sftp/scp.c, modules/mod_core.c, src/fsio.c:
- Backport of fix for Bug#3841 to 1.3.4 branch.
+ * 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.
-2012-12-27 16:02 castaglia
+2013-01-04 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.
+ * 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.
-2012-12-27 15:55 castaglia
+2013-01-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm:
- Some additional regression tests for MKD/XMKD commands.
+ * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Using
+ assert_transfer_ok() in more tests.
-2012-12-27 15:01 castaglia
+2013-01-04 castaglia <castaglia>
- * doc/howto/FTP.html:
- Provide links to the mod_tls docs where appropriate.
+ * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm,
+ tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm: Using
+ assert_transfer_ok() in more tests.
-2012-12-27 14:46 castaglia
+2013-01-04 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Remove duplicate event.
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Using
+ assert_transfer_ok() in more tests.
-2012-12-27 14:37 castaglia
+2013-01-04 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Update mod_sftp to use the pr_cmd_set_name() function as well.
+ * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Start using the
+ assert_transfer_ok() function in more tests.
-2012-12-27 14:31 castaglia
+2013-01-03 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.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Make some of the
+ ExtendedLog tests more robust.
-2012-12-27 14:30 castaglia
+2013-01-03 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).
+ * modules/mod_core.c: Guard the HOST implementation with #ifdefs, as
+ it is not yet ready for public use.
-2012-12-27 14:29 castaglia
+2013-01-03 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Backporting fix from trunk: when changing the name of a cmd_rec,
- make sure the cmd_id is also reset.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm: Fixed failing
+ test, added new regression test. Updated tests to use testcase-
+ specific logging.
-2012-12-27 11:15 castaglia
+2013-01-03 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add another FileZilla-related mod_tls FAQ.
+ * contrib/mod_sql.c: Don't log an error about having no SQLAuthTypes
+ configured if SQLAuthenticate has been explicitly configured to be
+ 'off'.
-2012-12-27 10:59 castaglia
+2013-01-03 castaglia <castaglia>
- * modules/: mod_core.c, mod_log.c:
- Try to provide better error messages.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm: Update tests
+ to use testcase-specific logging. Fix test code issue (bad
+ expectation).
-2012-12-27 10:50 castaglia
+2013-01-03 castaglia <castaglia>
- * doc/howto/Logging.html:
- Adding logging FAQ about FIFOs.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Updated
+ tests to use testcase-specific logging.
-2012-12-27 10:29 castaglia
+2013-01-03 castaglia <castaglia>
- * doc/howto/FTP.html:
- Add FAQ to FTP howto, talking about renaming of directories
- across mount points.
+ * contrib/mod_sftp/scp.c: Remove debugging cruft.
-2012-12-26 16:38 castaglia
+2013-01-03 castaglia <castaglia>
- * modules/: mod_core.c:
- Updating mod_core to use the new pr_fsio_lchown() function.
+ * contrib/mod_sftp/scp.c: Fix regression caught by testsuite.
-2012-12-26 15:38 castaglia
+2013-01-03 castaglia <castaglia>
- * modules/mod_log.c:
- Backport of errno logging fix from trunk.
+ * 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.
-2012-12-26 15:37 castaglia
+2013-01-03 castaglia <castaglia>
- * modules/mod_log.c:
- Report the correct error reason if we can't open an ExtendedLog.
+ * 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.
-2012-12-26 15:33 castaglia
+2013-01-03 castaglia <castaglia>
- * include/fsio.h, modules/mod_xfer.c, src/fsio.c:
- Backport part of the fix for Bug#3841 from trunk (i.e. adding
- pr_fsio_lchown()).
+ * 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.
-2012-12-26 15:18 castaglia
+2013-01-03 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.
+ * 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.
-2012-12-26 14:36 castaglia
+2013-01-03 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.
+ * src/fsio.c: Stylistic nit (extraneous whitespace); no functional
+ change.
-2012-12-26 09:21 castaglia
+2013-01-03 castaglia <castaglia>
- * doc/modules/mod_cap.html:
- Adding description of the new CapabilitiesRootRevoke directive.
+ * 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.
-2012-12-24 14:52 castaglia
+2013-01-03 castaglia <castaglia>
- * src/event.c:
- Merging change from trunk which fixes ordering of event
- notification subscriptions.
+ * 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.
-2012-12-24 14:51 castaglia
+2013-01-03 castaglia <castaglia>
- * src/event.c:
- Fix the handling of event notification subscription.
- Specifically, modules that were loaded last would receive the
- event notification last.
+ * 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.
- 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.
+2013-01-03 castaglia <castaglia>
- 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.
+ * 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).
-2012-12-21 13:45 castaglia
+2013-01-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm:
- Adding regression tests for Bug#3839.
+ * 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.
-2012-12-21 13:44 castaglia
+2013-01-03 castaglia <castaglia>
- * configure:
- Updated configure.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Expose the utility
+ function for obtaining the list of compiled-in modules.
-2012-12-21 13:18 castaglia
+2013-01-03 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Fix test code
+ issues so that all of the mod_wrap2_file tests pass.
-2012-12-21 10:21 castaglia
+2013-01-03 castaglia <castaglia>
- * RELEASE_NOTES, doc/modules/mod_auth.html:
- Adding description of new AllowChrootSymlinks directive to
- mod_auth docs.
+ * 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.
-2012-12-20 15:54 castaglia
+2013-01-02 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_auth.c:
- Bug#3852 - Support directive for ignoring symlink DefaultRoot
- directories.
+ * contrib/mod_tls.c: Remove the SSL_COMP_add_compression_method()
+ ifdef; it won't be used.
-2012-12-20 15:53 castaglia
+2013-01-02 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logins.pm, Config/DefaultRoot.pm:
- Checking in the regression tests for the new AllowChrootSymlinks
- directive, part of Bug#3852.
+ * RELEASE_NOTES: Typo.
-2012-12-18 14:03 castaglia
+2013-01-02 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/keys.c:
- Backport of fix for Bug#3851 to 1.3.4 branch.
+ * 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.
-2012-12-18 14:03 castaglia
+2013-01-02 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/keys.c:
- Bug#3851 - SFTPPassPhraseProvider fails due to incorrect pointer.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix some
+ failing mod_sql_sqlite tests by providing the necessary custom
+ SQLUserInfo queries.
-2012-12-18 14:01 castaglia
+2013-01-02 castaglia <castaglia>
- * tests/t/: etc/modules/mod_sftp/passphrase_host_dsa_key,
- etc/modules/mod_sftp/passphrase_host_dsa_key.pub,
- etc/modules/mod_sftp/passphrase_host_rsa_key,
- etc/modules/mod_sftp/passphrase_host_rsa_key.pub,
- etc/modules/mod_sftp/sftp-get-passphrase.pl,
- lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for SFTPPassPhraseProvider (Bug#3851).
+ * contrib/mod_tls.c: Testsuite caught a regression in the handling
+ of the TLSPKCS12File directive.
-2012-12-13 16:16 castaglia
+2013-01-02 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/ftpasswd, doc/contrib/ftpasswd.html:
+ * 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.
- Bug#3850 - ftpasswd should support generating SHA-256, SHA-512
- hashes where possible.
+2013-01-02 castaglia <castaglia>
-2012-12-13 15:56 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).
- * contrib/mod_sftp/: auth.c, compress.c, packet.c:
- Forgot to update copyright dates in the modified files.
+2013-01-02 castaglia <castaglia>
-2012-12-13 15:05 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.
- * contrib/mod_sftp/: auth.c, compress.c, fxp.c, packet.c, scp.c:
- Backport some of the mod_sftp event generation code from trunk.
+2013-01-02 castaglia <castaglia>
-2012-12-13 15:05 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm: Updating
+ .ftpaccess file tests to use testcase-specific logging.
- * contrib/mod_sftp/: auth.c, compress.c, fxp.c, packet.c, 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.
+2013-01-02 castaglia <castaglia>
-2012-12-13 06:50 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.
- * doc/howto/TLS.html:
- Add missing closing font tag.
+2013-01-02 castaglia <castaglia>
-2012-12-11 11:41 castaglia
+ * RELEASE_NOTES: Updated the release notes, preparing for a release.
- * doc/utils/index.html:
- Typo.
+2013-01-02 castaglia <castaglia>
-2012-12-10 16:14 castaglia
+ * doc/contrib/mod_quotatab.html: Adding description of QuotaDefault
+ directive to mod_quotatab docs.
- * configure:
- Updated configure.
+2013-01-02 castaglia <castaglia>
-2012-12-10 15:51 castaglia
+ * contrib/mod_tls.c: Fix compiler warning about unused variable.
- * config.h.in, configure.in, contrib/mod_sql_mysql.c:
- Backporting changes from trunk, where we extend the check for
- MySQL functions (see Bug#3669).
+2013-01-02 castaglia <castaglia>
-2012-12-10 15:01 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Start using
+ testcase-specific logging for these tests.
- * contrib/mod_sftp/crypto.c:
- Fixed typo in comment.
+2013-01-02 castaglia <castaglia>
-2012-12-09 20:49 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Fix some Perl
+ warnings when running the mod_exec tests.
- * modules/mod_auth.c:
- Backporting fix from trunk: generate an event whenever we can't
- find the requested user name during login.
+2012-12-29 castaglia <castaglia>
-2012-12-09 14:04 castaglia
+ * doc/contrib/mod_tls.html: Typo.
- * 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).
+2012-12-29 castaglia <castaglia>
- Generate events when our SSL/TLS handshake fails (both ctrl and
- data conns).
+ * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm: Updated/fixed
+ tests.
-2012-12-09 09:52 castaglia
+2012-12-29 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).
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Use the
+ assert_transfer_ok() function in a few more places.
-2012-12-06 19:21 castaglia
+2012-12-29 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.
+ * tests/t/lib/ProFTPD/Tests/Config/Trace.pm: Updated tests to deal
+ with Trace logging changes. Added testcase-specific logging.
-2012-12-06 19:18 castaglia
+2012-12-29 castaglia <castaglia>
- * tests/: tests.pl, t/config/authuserfile.t,
- t/lib/ProFTPD/Tests/Config/AuthUserFile.pm:
- Adding AuthUserFile tests now.
+ * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Update tests to
+ deal with different platforms' symlink permission defaults.
-2012-12-06 19:03 castaglia
+2012-12-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Allow for specifying empty password values for an AuthUserFile.
+ * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm: Update tests to
+ use testcase-specific logging, and the assert_transfer_ok()
+ function.
-2012-12-06 18:59 castaglia
+2012-12-29 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/AuthGroupFile.pm:
- Updated AuthGroupFile test to use testcase-specific logging.
+ * src/privs.c: Testsuite caught another regression; now fixed.
-2012-12-05 21:52 castaglia
+2012-12-29 castaglia <castaglia>
- * configure:
- Updated configure.
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm: Updating test
+ to use testcase-specific logging.
-2012-12-05 21:48 castaglia
+2012-12-29 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.
+ * src/fsio.c: When safely creating directories, allow the parent
+ directory path to be a symlink.
-2012-12-05 15:12 castaglia
+2012-12-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Add utility server_restart() function for tests which need to HUP
- the running daemon.
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Fixing up tests.
-2012-12-05 13:18 castaglia
+2012-12-28 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.
+ * modules/mod_facts.c: Regression for Bug#3715 now fixed.
-2012-12-05 13:04 castaglia
+2012-12-28 castaglia <castaglia>
- * doc/utils/index.html:
- Add link to ftpshut docs. Fix typo.
+ * modules/mod_facts.c: Caching/preserving of errno values, some
+ stylistic nits.
-2012-12-05 07:37 castaglia
+2012-12-28 castaglia <castaglia>
- * doc/contrib/mod_ban.html:
- Bad grammar.
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm: Fix testware
+ issue on Linux; update tests to use assert_transfer_ok().
-2012-12-04 11:59 castaglia
+2012-12-28 castaglia <castaglia>
- * doc/utils/: ftpmail.html:
- Typo.
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm: Updating to use
+ testcase-specific logging.
-2012-12-04 11:07 castaglia
+2012-12-28 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#3846 - Avoid scanning ScoreboardFile needlessly on login if
- limits are not configured.
+ * src/dirtree.c: Testsuite caught a regression; now fixed.
-2012-12-03 18:28 castaglia
+2012-12-28 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.
+ * src/dirtree.c: Stylistic nits; no functional change.
-2012-12-03 18:26 castaglia
+2012-12-28 castaglia <castaglia>
- * tests/t/etc/modules/mod_tls/: NOTES, dsa-ca.pem,
- dsa-server-cert.pem:
- Adding DSA server cert, for DSA-specific testing.
+ * doc/howto/Compiling.html: Adding more compiling FAQs.
-2012-12-03 15:55 castaglia
+2012-12-28 castaglia <castaglia>
- * contrib/mod_sql.c:
- Debug logging of the number of fields/columns returned by the
- custom SQLUserInfo, for triage.
+ * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Fill in the testcase
+ for a password which contains spaces.
-2012-12-03 15:54 castaglia
+2012-12-28 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.
+ * 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-03 15:11 castaglia
+2012-12-28 castaglia <castaglia>
- * src/netio.c:
- Remove unused variable.
+ * 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-03 11:07 castaglia
+2012-12-28 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth.c:
- Backport of fix for Bug#3845 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Fix
+ re-declaration of variable.
-2012-12-03 11:06 castaglia
+2012-12-28 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth.c:
- Bug#3845 - mod_sftp does not provide response codes for %s
- LogFormat variable for AUTH ExtendedLog.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Quell compiler
+ warning about use of uninitialized value.
-2012-12-03 11:04 castaglia
+2012-12-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for Bug#3845.
+ * 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-01 16:33 castaglia
+2012-12-28 castaglia <castaglia>
- * doc/howto/ServerType.html:
- Updating ServerType howto to use relative links.
+ * src/cmd.c: Quell compiler warning.
-2012-12-01 16:32 castaglia
+2012-12-28 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Adding description of ServerType directive to mod_core docs.
+ * modules/mod_core.c: Remove unused variable, quelling compiler
+ warning.
-2012-12-01 16:23 castaglia
+2012-12-28 castaglia <castaglia>
- * doc/howto/Debugging.html:
- Updating Debugging howto.
+ * 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-01 10:40 castaglia
+2012-12-28 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.
+ * src/fsio.c: Minor nits; no functional change.
-2012-12-01 10:39 castaglia
+2012-12-28 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.
+ * 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.
- 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-27 castaglia <castaglia>
-2012-11-30 20:57 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Some additional
+ regression tests for MKD/XMKD commands.
- * contrib/mod_sftp/fxp.c:
- Fix log message typos/nits.
+2012-12-27 castaglia <castaglia>
-2012-11-27 15:13 castaglia
+ * doc/howto/FTP.html: Provide links to the mod_tls docs where
+ appropriate.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_radius.pm:
- Added testcase demonstrating that use of "%u" for the home
- attribute works as expected.
+2012-12-27 castaglia <castaglia>
- Updated testcases to use testcase-specific logging.
+ * contrib/mod_sftp/fxp.c: Remove duplicate event.
-2012-11-27 09:27 castaglia
+2012-12-27 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Adding trace logging, for better analysis of shadow/autoshadow
- user lookup issues.
+ * contrib/mod_sftp/fxp.c: Update mod_sftp to use the
+ pr_cmd_set_name() function as well.
-2012-11-21 07:50 castaglia
+2012-12-27 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- More debug logging for when user entry retrieval fails.
+ * 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-11-19 20:02 castaglia
+2012-12-27 castaglia <castaglia>
- * doc/contrib/mod_sql_passwd.html:
- Fixed markup typo.
+ * 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-11-19 15:42 castaglia
+2012-12-27 castaglia <castaglia>
- * NEWS, modules/mod_dso.c:
- Bug#3843 - ProFTPD should not fail when starting up due to
- loading same module multiple times.
+ * doc/howto/TLS.html: Add another FileZilla-related mod_tls FAQ.
-2012-11-19 13:31 castaglia
+2012-12-27 castaglia <castaglia>
- * doc/modules/mod_dso.html:
- Another DSO FAQ, about the "already loaded" error for
- special-case modules like mod_ctrls.
+ * modules/mod_core.c, modules/mod_log.c: Try to provide better error
+ messages.
-2012-11-19 13:18 castaglia
+2012-12-27 castaglia <castaglia>
- * doc/modules/mod_dso.html:
- Adding FAQ about already loaded modules (will be fixed with
- Bug#3843).
+ * doc/howto/Logging.html: Adding logging FAQ about FIFOs.
-2012-11-16 09:38 castaglia
+2012-12-27 castaglia <castaglia>
- * modules/: mod_auth_unix.c:
- Log, at debug level 3, when getspnam(3) and getpwnam(3) fail (and
- why).
+ * doc/howto/FTP.html: Add FAQ to FTP howto, talking about renaming
+ of directories across mount points.
-2012-11-15 10:25 castaglia
+2012-12-27 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).
+ * modules/mod_core.c: Updating mod_core to use the new
+ pr_fsio_lchown() function.
-2012-11-15 08:33 castaglia
+2012-12-26 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.
+ * modules/mod_log.c: Report the correct error reason if we can't
+ open an ExtendedLog.
-2012-11-14 14:13 castaglia
+2012-12-26 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.
+ * 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-11-14 10:28 castaglia
+2012-12-26 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3842 to 1.3.4 branch.
+ * 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-11-14 10:27 castaglia
+2012-12-26 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3842 - Incorrect handling of REALPATH requests for symlink
- paths in mod_sftp.
+ * doc/modules/mod_cap.html: Adding description of the new
+ CapabilitiesRootRevoke directive.
-2012-11-14 10:23 castaglia
+2012-12-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Finishing the SFTP REALPATH tests (per Bug#3842).
+ * 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-11-13 17:47 castaglia
+2012-12-21 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_cap.pm: Adding regression
+ tests for Bug#3839.
-2012-11-13 17:37 castaglia
+2012-12-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Adding testing of HideFiles/IgnoreHidden configuration on MLSD.
+ * configure: Updated configure.
-2012-11-13 14:09 castaglia
+2012-12-21 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Adding FAQ about dotfiles and MLSD.
+ * NEWS, RELEASE_NOTES, config.h.in, configure.in, modules/mod_cap.c:
+ Bug#3839 - Enhance mod_cap to support dropping root privs entirely.
-2012-11-13 13:46 castaglia
+2012-12-21 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c, modules/mod_log.c:
- Backport of fix for Bug#3822 to 1.3.4 branch.
+ * RELEASE_NOTES, doc/modules/mod_auth.html: Adding description of
+ new AllowChrootSymlinks directive to mod_auth docs.
-2012-11-13 13:16 castaglia
+2012-12-20 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Adding PCRE-based HideFiles test.
+ * NEWS, RELEASE_NOTES, modules/mod_auth.c: Bug#3852 - Support
+ directive for ignoring symlink DefaultRoot directories.
-2012-11-11 17:39 castaglia
+2012-12-20 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-11-11 17:21 castaglia
+2012-12-18 castaglia <castaglia>
- * config.h.in, configure.in:
- Adding autoconf check for mkdtemp(3), as part of fix for
- Bug#3841.
+ * NEWS, contrib/mod_sftp/keys.c: Bug#3851 - SFTPPassPhraseProvider
+ fails due to incorrect pointer.
-2012-11-08 11:18 castaglia
+2012-12-18 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm:
- Updating UserOwner tests to use testcase-specific logging, and
- added test for UserOwner+MKD.
+ * 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-11-05 10:05 castaglia
+2012-12-14 castaglia <castaglia>
- * doc/modules/mod_auth.html:
- Add docs for the RewriteHome directive.
+ * NEWS, RELEASE_NOTES, contrib/ftpasswd, doc/contrib/ftpasswd.html:
+ Bug#3850 - ftpasswd should support generating SHA-256, SHA-512
+ hashes where possible.
-2012-10-29 15:51 castaglia
+2012-12-13 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3837 to 1.3.4 branch.
+ * 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-10-29 15:50 castaglia
+2012-12-13 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3837 - mod_tls unable to read certificate files after SIGHUP.
+ * doc/howto/TLS.html: Add missing closing font tag.
-2012-10-24 14:27 castaglia
+2012-12-11 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.
+ * doc/utils/index.html: Typo.
-2012-10-23 17:02 castaglia
+2012-12-10 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.
+ * contrib/mod_sftp/crypto.c: Fixed typo in comment.
-2012-10-21 17:55 castaglia
+2012-12-09 castaglia <castaglia>
- * tests/: tests.pl, t/config/allowfilter.t,
- t/lib/ProFTPD/Tests/Config/AllowFilter.pm:
- Adding regression tests for the AllowFilter directive.
+ * 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-10-13 21:11 castaglia
+2012-12-09 castaglia <castaglia>
- * doc/howto/ConfigurationTricks.html:
- Add another configuration trick (using env vars, -D, and
- <IfDefine>) to the collection.
+ * 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-10-13 20:55 castaglia
+2012-12-07 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm:
- Now the <IfDefine> regression test for dealing with environment
- variables work as I intended.
+ * 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-10-13 20:52 castaglia
+2012-12-07 castaglia <castaglia>
- * src/parser.c:
- In fact, why not use one strlen(3) call instead of three in the
- get_config_word() function.
+ * tests/t/config/authuserfile.t,
+ tests/t/lib/ProFTPD/Tests/Config/AuthUserFile.pm, tests/tests.pl:
+ Adding AuthUserFile tests now.
-2012-10-13 20:50 castaglia
+2012-12-07 castaglia <castaglia>
- * src/parser.c:
- Minor change: use a single strlen(3) call instead of two.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow for specifying empty
+ password values for an AuthUserFile.
-2012-10-11 19:51 castaglia
+2012-12-07 castaglia <castaglia>
- * doc/howto/FTP.html:
- Updating the stale list of supported commands.
+ * tests/t/lib/ProFTPD/Tests/Config/AuthGroupFile.pm: Updated
+ AuthGroupFile test to use testcase-specific logging.
-2012-10-11 19:44 castaglia
+2012-12-06 castaglia <castaglia>
- * modules/mod_xfer.c:
- Stylistic cleanup of nits in the handling of the MODE command; no
- functional change.
+ * configure: Updated configure.
-2012-10-11 19:21 castaglia
+2012-12-06 castaglia <castaglia>
- * doc/howto/DSO.html:
- Adding FAQ to DSO doc about adding modules to proftpd.
+ * 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-10-10 23:12 castaglia
+2012-12-05 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).
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add utility
+ server_restart() function for tests which need to HUP the running
+ daemon.
-2012-10-10 13:38 castaglia
+2012-12-05 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.
+ * 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-10-10 13:27 castaglia
+2012-12-05 castaglia <castaglia>
- * doc/howto/Limit.html:
- Update upload-only directory example config to allow PWD. Some
- clients get cranky if PWD doesn't work.
+ * doc/utils/index.html: Add link to ftpshut docs. Fix typo.
-2012-10-09 23:31 castaglia
+2012-12-05 castaglia <castaglia>
- * src/dirtree.c:
- When discovering the optimal TCP buffer sizes, set the discovered
- sizes on our main_server rec as well.
+ * doc/contrib/mod_ban.html: Bad grammar.
-2012-10-09 18:26 castaglia
+2012-12-04 castaglia <castaglia>
- * doc/modules/mod_lang.html:
- Update the mod_lang docs with a FAQ about the "not a supported
- language" error.
+ * doc/utils/ftpmail.html: Typo.
-2012-10-09 08:54 castaglia
+2012-12-04 castaglia <castaglia>
- * locale/: es_ES.po:
- Updated .po file from Bug#3834.
+ * NEWS, modules/mod_auth.c: Bug#3846 - Avoid scanning ScoreboardFile
+ needlessly on login if limits are not configured.
-2012-10-05 13:52 castaglia
+2012-12-04 castaglia <castaglia>
- * doc/modules/mod_lang.html:
- Mention the new Spanish translation in the mod_lang docs.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ test for FTPS login using mod_tls and a DSA server certificate.
-2012-10-05 13:50 castaglia
+2012-12-04 castaglia <castaglia>
- * RELEASE_NOTES, locale/Makefile.in, locale/es_ES.po:
- Bug#3834 - Spanish translation.
+ * 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-10-03 22:21 castaglia
+2012-12-03 castaglia <castaglia>
- * doc/howto/Logging.html:
- Add Logging FAQ, inspired by Bug#3832.
+ * contrib/mod_sql.c: Debug logging of the number of fields/columns
+ returned by the custom SQLUserInfo, for triage.
-2012-10-03 22:17 castaglia
+2012-12-03 castaglia <castaglia>
- * doc/howto/: KeepAlives.html, index.html:
- Adding new KeepAlives howto.
+ * 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-10-03 09:41 castaglia
+2012-12-03 castaglia <castaglia>
- * modules/mod_core.c:
- Slightly better error reporting for badly formed keepalive specs.
+ * src/netio.c: Remove unused variable.
-2012-10-03 09:36 castaglia
+2012-12-03 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Adding docs for the new keepalive SocketOptions parameter.
+ * NEWS, contrib/mod_sftp/auth.c: Bug#3845 - mod_sftp does not
+ provide response codes for %s LogFormat variable for AUTH
+ ExtendedLog.
-2012-10-03 09:22 castaglia
+2012-12-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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for Bug#3845.
-2012-10-02 22:24 castaglia
+2012-12-02 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Add docs for the SocketOptions directive to the mod_core docs.
+ * doc/howto/ServerType.html: Updating ServerType howto to use
+ relative links.
-2012-10-02 14:49 castaglia
+2012-12-02 castaglia <castaglia>
- * NEWS, src/data.c:
- Backported fix for Bug#3831 to 1.3.4 branch.
+ * doc/modules/mod_core.html: Adding description of ServerType
+ directive to mod_core docs.
-2012-10-02 14:48 castaglia
+2012-12-02 castaglia <castaglia>
- * NEWS, src/data.c:
- Bug#3831 - Sporadic "451 Insufficient memory or file locked"
- failure when downloading.
+ * doc/howto/Debugging.html: Updating Debugging howto.
-2012-10-02 12:49 castaglia
+2012-12-01 castaglia <castaglia>
- * modules/mod_memcache.c:
- Fix compilation errors in mod_memcache, when --enable-memcache is
- used.
+ * 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-10-02 10:10 castaglia
+2012-12-01 castaglia <castaglia>
- * Makefile.in:
- Fixed typo in Makefile rules, for Bug#3725.
+ * 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-10-01 14:26 castaglia
+2012-12-01 castaglia <castaglia>
- * tests/: Makefile.in, api/fsio.c, api/stubs.c, api/tests.c,
- api/tests.h:
- Start working on unit tests for the FSIO API functions:
- pr_fs_clean_path() is the first victim.
+ * contrib/mod_sftp/fxp.c: Fix log message typos/nits.
-2012-10-01 14:14 castaglia
+2012-11-27 castaglia <castaglia>
- * modules/mod_ls.c:
- Even more robust checking for complex possible symlink targets,
- as part of hardening against Bug#3719.
+ * 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-10-01 14:08 castaglia
+2012-11-27 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".
+ * modules/mod_auth_unix.c: Adding trace logging, for better analysis
+ of shadow/autoshadow user lookup issues.
-2012-10-01 10:56 castaglia
+2012-11-21 castaglia <castaglia>
- * modules/mod_ls.c:
- An "unsafe" symlink path must be 2 characters or greater in
- length.
+ * modules/mod_auth_unix.c: More debug logging for when user entry
+ retrieval fails.
-2012-10-01 10:54 castaglia
+2012-11-20 castaglia <castaglia>
- * modules/mod_ls.c:
- Make the check for "unsafe" symlinks in recursive directory
- listings a little more robust, for Bug#3719.
+ * doc/contrib/mod_sql_passwd.html: Fixed markup typo.
-2012-10-01 10:31 castaglia
+2012-11-19 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3792 to 1.3.4 branch.
+ * NEWS, modules/mod_dso.c: Bug#3843 - ProFTPD should not fail when
+ starting up due to loading same module multiple times.
-2012-10-01 10:19 castaglia
+2012-11-19 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3792 - Recursive SCP uploads using preserve-time (-p) option
- may not work.
+ * doc/modules/mod_dso.html: Another DSO FAQ, about the "already
+ loaded" error for special-case modules like mod_ctrls.
-2012-09-30 11:01 castaglia
+2012-11-19 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Fixed regression in fix for Bug#3719.
+ * doc/modules/mod_dso.html: Adding FAQ about already loaded modules
+ (will be fixed with Bug#3843).
-2012-09-30 10:55 castaglia
+2012-11-16 castaglia <castaglia>
- * modules/mod_ls.c:
- Fix regression caused by fix for Bug#3719.
+ * modules/mod_auth_unix.c: Log, at debug level 3, when getspnam(3)
+ and getpwnam(3) fail (and why).
-2012-09-30 10:44 castaglia
+2012-11-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Adding additional regression test for Bug#3719.
+ * 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-09-28 17:06 castaglia
+2012-11-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Updating mod_sftp regression tests to use testcase-specific
- logging across the board.
+ * 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-09-28 15:23 castaglia
+2012-11-14 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.
+ * 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-09-28 14:37 castaglia
+2012-11-14 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Quell comparing warning about signedness; it's a harmless cast in
- this case.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3842 - Incorrect handling of
+ REALPATH requests for symlink paths in mod_sftp.
-2012-09-27 22:20 castaglia
+2012-11-14 castaglia <castaglia>
- * configure:
- Updated configure.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Finishing the SFTP
+ REALPATH tests (per Bug#3842).
-2012-09-27 22:16 castaglia
+2012-11-14 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.
+ * 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-09-27 21:52 castaglia
+2012-11-14 castaglia <castaglia>
- * RELEASE_NOTES:
- Adding reminder to release notes to mention SystemLog changes for
- Bug#3832.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding testing of
+ HideFiles/IgnoreHidden configuration on MLSD.
-2012-09-27 21:51 castaglia
+2012-11-13 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#3832 - Support disabling of system logging on per-connection
- basis.
+ * doc/modules/mod_facts.html: Adding FAQ about dotfiles and MLSD.
-2012-09-27 21:24 castaglia
+2012-11-13 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Logging/ServerLog.pm,
- t/lib/ProFTPD/Tests/Logging/SystemLog.pm, t/logging/serverlog.t:
- Adding ServerLog tests for Bug#3832 as well, and updating the
- SystemLog tests (which were pointed at the wrong log file).
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding PCRE-based
+ HideFiles test.
-2012-09-27 18:32 castaglia
+2012-11-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm:
- Updated tests for Bug#3832 so that they work properly.
+ * configure: Updated configure.
-2012-09-27 17:21 castaglia
+2012-11-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm:
- Adding unit tests for verifying the change/fix for Bug#3832.
+ * config.h.in, configure.in: Adding autoconf check for mkdtemp(3),
+ as part of fix for Bug#3841.
-2012-09-27 10:52 castaglia
+2012-11-08 castaglia <castaglia>
- * doc/howto/Tracing.html:
- Typo.
+ * tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm: Updating UserOwner
+ tests to use testcase-specific logging, and added test for
+ UserOwner+MKD.
-2012-09-26 09:40 castaglia
+2012-11-05 castaglia <castaglia>
- * modules/mod_xfer.c:
- Fix logging of spurious EEXIST error when adding a note to the
- session notes.
+ * doc/modules/mod_auth.html: Add docs for the RewriteHome directive.
-2012-09-25 16:21 castaglia
+2012-10-29 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.
+ * NEWS, contrib/mod_tls.c: Bug#3837 - mod_tls unable to read
+ certificate files after SIGHUP.
-2012-09-25 13:28 castaglia
+2012-10-24 castaglia <castaglia>
- * doc/howto/Tracing.html:
- Update the Tracing howto with a section discussing runtime tuning
- of the trace levels.
+ * 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-09-25 09:28 castaglia
+2012-10-24 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add a section on client auth to the TLS howto.
+ * 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-09-22 19:10 castaglia
+2012-10-22 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Backport of fix for Bug#3829 to 1.3.4 branch.
+ * tests/t/config/allowfilter.t,
+ tests/t/lib/ProFTPD/Tests/Config/AllowFilter.pm, tests/tests.pl:
+ Adding regression tests for the AllowFilter directive.
-2012-09-22 19:10 castaglia
+2012-10-14 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#3829 - RNFR without following RNTO can lead to NULL pointer
- dereference.
+ * doc/howto/ConfigurationTricks.html: Add another configuration
+ trick (using env vars, -D, and <IfDefine>) to the collection.
-2012-09-22 19:04 castaglia
+2012-10-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm:
- Updating regression test for Bug#3829.
+ * tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm: Now the <IfDefine>
+ regression test for dealing with environment variables work as I
+ intended.
-2012-09-22 12:09 castaglia
+2012-10-14 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Backport of fix for Bug#3830 to 1.3.4 branch.
+ * src/parser.c: In fact, why not use one strlen(3) call instead of
+ three in the get_config_word() function.
-2012-09-22 12:08 castaglia
+2012-10-14 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Bug#3830 - MFF/MFMT command segfaults due to insufficient
- parameter checks.
+ * src/parser.c: Minor change: use a single strlen(3) call instead of
+ two.
-2012-09-22 12:07 castaglia
+2012-10-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm:
- Update of regression test for Bug#3830.
+ * doc/howto/FTP.html: Updating the stale list of supported commands.
-2012-09-22 11:54 castaglia
+2012-10-12 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Update link to somers Draft which defines the MFF and MFMT
- commands.
+ * modules/mod_xfer.c: Stylistic cleanup of nits in the handling of
+ the MODE command; no functional change.
-2012-09-21 15:49 castaglia
+2012-10-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm:
- Checking in regression test for Bug#3830.
+ * doc/howto/DSO.html: Adding FAQ to DSO doc about adding modules to
+ proftpd.
-2012-09-21 15:41 castaglia
+2012-10-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm:
- Checking in regression test for Bug#3829.
+ * 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-09-21 15:15 castaglia
+2012-10-10 castaglia <castaglia>
- * NEWS:
- Typo.
+ * 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-09-21 15:14 castaglia
+2012-10-10 castaglia <castaglia>
- * NEWS, contrib/mod_deflate.c:
- Backport of fix for Bug#3828 to 1.3.4 branch.
+ * doc/howto/Limit.html: Update upload-only directory example config
+ to allow PWD. Some clients get cranky if PWD doesn't work.
-2012-09-21 15:13 castaglia
+2012-10-10 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.
+ * src/dirtree.c: When discovering the optimal TCP buffer sizes, set
+ the discovered sizes on our main_server rec as well.
-2012-09-21 14:00 castaglia
+2012-10-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm:
- Updated the mod_deflate tests to use testcase-specific logging.
+ * doc/modules/mod_lang.html: Update the mod_lang docs with a FAQ
+ about the "not a supported language" error.
-2012-09-19 15:32 castaglia
+2012-10-09 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3827 - Use non-filesystem based SFTP handle generator instead
- of mktemp(3).
+ * locale/es_ES.po: Updated .po file from Bug#3834.
-2012-09-18 17:11 castaglia
+2012-10-05 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.
+ * doc/modules/mod_lang.html: Mention the new Spanish translation in
+ the mod_lang docs.
-2012-09-11 18:24 castaglia
+2012-10-05 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).
+ * RELEASE_NOTES, locale/Makefile.in, locale/es_ES.po: Bug#3834 -
+ Spanish translation.
-2012-09-11 18:18 castaglia
+2012-10-04 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.
+ * doc/howto/Logging.html: Add Logging FAQ, inspired by Bug#3832.
-2012-09-11 18:15 castaglia
+2012-10-04 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.
+ * doc/howto/KeepAlives.html, doc/howto/index.html: Adding new
+ KeepAlives howto.
-2012-09-11 16:11 castaglia
+2012-10-03 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.
+ * modules/mod_core.c: Slightly better error reporting for badly
+ formed keepalive specs.
-2012-09-07 14:39 castaglia
+2012-10-03 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".
+ * doc/modules/mod_core.html: Adding docs for the new keepalive
+ SocketOptions parameter.
-2012-09-07 12:08 castaglia
+2012-10-03 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.
+ * 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-09-07 11:51 castaglia
+2012-10-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logging/ExtendedLog.pm,
- Modules/mod_sql_sqlite.pm:
- Regression tests for the logging changes made for Bug#3822.
+ * doc/modules/mod_core.html: Add docs for the SocketOptions
+ directive to the mod_core docs.
-2012-09-07 11:50 castaglia
+2012-10-02 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.
+ * NEWS, src/data.c: Bug#3831 - Sporadic "451 Insufficient memory or
+ file locked" failure when downloading.
-2012-09-07 11:48 jwm
+2012-10-02 castaglia <castaglia>
- * contrib/mod_ldap.c: git 3d541bc898: fix symbol copy pasta
+ * modules/mod_memcache.c: Fix compilation errors in mod_memcache,
+ when --enable-memcache is used.
-2012-09-07 09:22 castaglia
+2012-10-02 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.
+ * Makefile.in: Fixed typo in Makefile rules, for Bug#3725.
-2012-09-06 11:32 castaglia
+2012-10-01 castaglia <castaglia>
- * config.h.in:
- Forgot to update config.h.in for the new header checks.
+ * 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-09-06 10:52 castaglia
+2012-10-01 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.
+ * modules/mod_ls.c: Even more robust checking for complex possible
+ symlink targets, as part of hardening against Bug#3719.
-2012-09-06 10:15 castaglia
+2012-10-01 castaglia <castaglia>
- * NEWS, src/netaddr.c:
- Backport of fix for Bug#3806 to 1.3.4 branch.
+ * 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-09-06 10:14 castaglia
+2012-10-01 castaglia <castaglia>
- * NEWS, src/netaddr.c:
- Bug#3806 - Support reverse DNS resolution for IPv6 addresses when
- gethostbyname2(3) is not available.
+ * modules/mod_ls.c: An "unsafe" symlink path must be 2 characters or
+ greater in length.
-2012-09-06 10:13 castaglia
+2012-10-01 castaglia <castaglia>
- * src/auth.c:
- Pass along the path to which a chroot() will happen, as part of
- the 'core.chroot' event.
+ * modules/mod_ls.c: Make the check for "unsafe" symlinks in
+ recursive directory listings a little more robust, for Bug#3719.
-2012-09-05 10:49 castaglia
+2012-10-01 castaglia <castaglia>
- * src/proftpd.8.in:
- Mention the new proftpd.conf(5) man page in the proftpd(8) man
- page.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3792 - Recursive SCP uploads
+ using preserve-time (-p) option may not work.
-2012-09-05 10:48 castaglia
+2012-09-30 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/mod_ls.c: Fix regression caused by fix for Bug#3719.
-2012-09-05 10:45 castaglia
+2012-09-30 castaglia <castaglia>
- * Makefile.in, configure.in, src/.cvsignore, src/proftpd.conf.5.in:
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding additional
+ regression test for Bug#3719.
- Bug#3805 - proftpd.conf could use a short manpage.
+2012-09-29 castaglia <castaglia>
-2012-09-05 10:30 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Updating mod_sftp
+ regression tests to use testcase-specific logging across the board.
- * doc/howto/CreateHome.html:
- Mention the new NoRootPrivs CreateHome parameter in the
- CreateHome howto.
+2012-09-28 castaglia <castaglia>
-2012-09-05 09:41 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.
- * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm:
- Tests for the CreateHome NoRootPrivs option added for Bug#3813.
+2012-09-28 castaglia <castaglia>
-2012-09-05 09:40 castaglia
+ * contrib/mod_sftp/scp.c: Quell comparing warning about signedness;
+ it's a harmless cast in this case.
- * 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-09-28 castaglia <castaglia>
-2012-08-29 22:05 castaglia
+ * configure: Updated configure.
- * configure:
- Updated configure.
+2012-09-28 castaglia <castaglia>
-2012-08-29 21:42 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.
- * 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-09-28 castaglia <castaglia>
-2012-08-27 13:39 castaglia
+ * RELEASE_NOTES: Adding reminder to release notes to mention
+ SystemLog changes for Bug#3832.
- * doc/contrib/mod_sftp.html:
- Missed a mention of hmac-sha2-256-96 and hmac-sha2-512-96.
+2012-09-28 castaglia <castaglia>
-2012-08-27 13:34 castaglia
+ * NEWS, modules/mod_log.c: Bug#3832 - Support disabling of system
+ logging on per-connection basis.
- * 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-09-28 castaglia <castaglia>
-2012-08-23 00:19 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).
- * 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-09-28 castaglia <castaglia>
-2012-08-22 23:51 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm: Updated tests for
+ Bug#3832 so that they work properly.
- * 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-09-28 castaglia <castaglia>
-2012-08-22 22:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm: Adding unit tests
+ for verifying the change/fix for Bug#3832.
- * 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-09-27 castaglia <castaglia>
-2012-08-22 16:52 castaglia
+ * doc/howto/Tracing.html: Typo.
- * src/trace.c:
- Avoid possible file descriptor leak in the just-added
- pr_trace_use_stderr() function.
+2012-09-26 castaglia <castaglia>
-2012-08-22 16:46 castaglia
+ * modules/mod_xfer.c: Fix logging of spurious EEXIST error when
+ adding a note to the session notes.
- * 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-09-25 castaglia <castaglia>
-2012-08-22 14:41 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.
- * tests/api/netaddr.c:
- Be prepared for a few other possibilities when resolving '::1' to
- DNS names.
+2012-09-25 castaglia <castaglia>
-2012-08-22 12:53 castaglia
+ * doc/howto/Tracing.html: Update the Tracing howto with a section
+ discussing runtime tuning of the trace levels.
- * NEWS, contrib/Makefile.in:
- Backport of fix for Bug#3816 to 1.3.4 branch.
+2012-09-25 castaglia <castaglia>
-2012-08-22 12:53 castaglia
+ * doc/howto/TLS.html: Add a section on client auth to the TLS howto.
- * NEWS, contrib/Makefile.in:
- Bug#3816 - Installation of ftpasswd does not honor DESTDIR
- environment variable.
+2012-09-23 castaglia <castaglia>
-2012-08-22 11:02 castaglia
+ * NEWS, modules/mod_core.c: Bug#3829 - RNFR without following RNTO
+ can lead to NULL pointer dereference.
- * 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-09-23 castaglia <castaglia>
-2012-08-21 11:45 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Updating regression
+ test for Bug#3829.
- * NEWS:
- Rejigger the NEWS file to mention that Bug#3795 regressed, and is
- now (hopefully) fixed in the next 1.3.4 maint release.
+2012-09-22 castaglia <castaglia>
-2012-08-21 11:31 castaglia
+ * NEWS, modules/mod_facts.c: Bug#3830 - MFF/MFMT command segfaults
+ due to insufficient parameter checks.
- * configure:
- Updated configure.
+2012-09-22 castaglia <castaglia>
-2012-08-21 11:26 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm: Update of regression
+ test for Bug#3830.
- * configure.in:
- Re-fixing Bug#3795 in the 1.3.4 branch; the backport from trunk
- was done incorrectly.
+2012-09-22 castaglia <castaglia>
-2012-08-20 11:27 castaglia
+ * doc/modules/mod_facts.html: Update link to somers Draft which
+ defines the MFF and MFMT commands.
- * 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-09-21 castaglia <castaglia>
-2012-08-15 18:25 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm: Checking in regression
+ test for Bug#3830.
- * 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-09-21 castaglia <castaglia>
-2012-08-15 15:05 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/RNFR.pm: Checking in regression
+ test for Bug#3829.
- * contrib/: mod_sftp_pam.c:
- Filter out unhelpful error log messages.
+2012-09-21 castaglia <castaglia>
-2012-08-15 10:05 castaglia
+ * NEWS: Typo.
- * NEWS, contrib/dist/rpm/proftpd.init.d:
- Bug#3814 - Support "configtest" command for contrib init.d
- script.
+2012-09-21 castaglia <castaglia>
-2012-08-15 09:49 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.
- * NEWS:
- Correct a bug number.
+2012-09-21 castaglia <castaglia>
-2012-08-09 18:48 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Updated the
+ mod_deflate tests to use testcase-specific logging.
- * configure:
- Updated configure script for Bug#3725.
+2012-09-19 castaglia <castaglia>
-2012-08-09 17:23 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3827 - Use non-filesystem based
+ SFTP handle generator instead of mktemp(3).
- * Makefile.in:
- Substitute the proftpd_cvs_version_main value in the proftpd.spec
- (part of Bug#3725).
+2012-09-19 castaglia <castaglia>
-2012-08-09 17:15 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.
- * 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-09-12 castaglia <castaglia>
-2012-08-09 17:08 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).
- * 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-09-12 castaglia <castaglia>
-2012-08-09 16:13 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.
- * configure.in, Make.rules.in, Makefile.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-09-12 castaglia <castaglia>
-2012-08-09 15:50 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.
- * 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-09-11 castaglia <castaglia>
-2012-08-09 15:48 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.
- * 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-09-07 castaglia <castaglia>
-2012-08-08 17:25 castaglia
+ * doc/howto/TLS.html: Try to tell admins how to configure mod_tls if
+ they want to support clients which send "PROT C".
- * tests/: tests.pl, t/config/maxclientsperclass.t,
- t/config/maxclientsperuser.t,
- t/lib/ProFTPD/Tests/Config/MaxClientsPerClass.pm,
- t/lib/ProFTPD/Tests/Config/MaxClientsPerUser.pm:
- Adding missing regression tests for the MaxClientsPerClass and
- MaxClientsPerUser directives.
+2012-09-07 castaglia <castaglia>
-2012-08-08 16:58 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.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Regression tests for Bug#3811.
+2012-09-07 castaglia <castaglia>
-2012-08-08 16:58 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.
- * NEWS, modules/mod_auth.c:
- Bug#3811 - ExtendedLog entries not written if MaxClients limit
- reached.
+2012-09-07 castaglia <castaglia>
-2012-08-06 23:26 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.
- * 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-09-07 jwm <jwm>
-2012-08-06 16:05 castaglia
+ * contrib/mod_ldap.c: git 3d541bc898: fix symbol copy pasta
- * src/inet.c:
- Make sure we always return the socket to blocking mode,
- regardless of how we return from pr_inet_connect_nowait().
+2012-09-07 castaglia <castaglia>
-2012-08-05 20:24 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.
- * contrib/mod_tls.c:
- Remove duplicate SSL_CTX_check_private_key() calls.
+2012-09-06 castaglia <castaglia>
-2012-08-05 20:19 castaglia
+ * config.h.in: Forgot to update config.h.in for the new header
+ checks.
- * src/trace.c:
- Always try to leave a terminating NUL, just in case.
+2012-09-06 castaglia <castaglia>
-2012-08-05 20:17 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.
- * src/support.c:
- Stylistic nit; no functional change.
+2012-09-06 castaglia <castaglia>
-2012-08-05 20:06 castaglia
+ * NEWS, src/netaddr.c: Bug#3806 - Support reverse DNS resolution for
+ IPv6 addresses when gethostbyname2(3) is not available.
- * 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-09-06 castaglia <castaglia>
-2012-08-05 13:52 castaglia
+ * src/auth.c: Pass along the path to which a chroot() will happen,
+ as part of the 'core.chroot' event.
- * 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-09-05 castaglia <castaglia>
-2012-08-01 16:35 castaglia
+ * src/proftpd.8.in: Mention the new proftpd.conf(5) man page in the
+ proftpd(8) man page.
- * 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-09-05 castaglia <castaglia>
-2012-08-01 16:30 castaglia
+ * configure: Updated configure.
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- And a few more places to use assert_transfer_ok().
+2012-09-05 castaglia <castaglia>
-2012-08-01 16:26 castaglia
+ * Makefile.in, configure.in, src/.cvsignore, src/proftpd.conf.5.in:
+ Bug#3805 - proftpd.conf could use a short manpage.
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Update tests to use assert_transfer_ok() in more places.
+2012-09-05 castaglia <castaglia>
-2012-08-01 15:06 castaglia
+ * doc/howto/CreateHome.html: Mention the new NoRootPrivs CreateHome
+ parameter in the CreateHome howto.
- * RELEASE_NOTES, doc/contrib/mod_sftp.html:
- Update the docs showing that mod_sftp now supports
- MaxStoreFileSize.
+2012-09-05 castaglia <castaglia>
-2012-08-01 15:05 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Tests for the
+ CreateHome NoRootPrivs option added for Bug#3813.
- * 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-09-05 castaglia <castaglia>
-2012-08-01 15:03 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.
- * contrib/mod_sftp/fxp.c:
- Stylistic nit.
+2012-08-30 castaglia <castaglia>
-2012-08-01 14:58 castaglia
+ * configure: Updated configure.
- * contrib/mod_sftp/fxp.c:
- Off-by-one nit.
+2012-08-30 castaglia <castaglia>
-2012-08-01 14:42 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)).
- * 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-27 castaglia <castaglia>
-2012-08-01 14:40 castaglia
+ * doc/contrib/mod_sftp.html: Missed a mention of hmac-sha2-256-96
+ and hmac-sha2-512-96.
- * contrib/mod_sftp/fxp.c:
- Support the MaxStoreFileSize directive for SFTP uploads.
+2012-08-27 castaglia <castaglia>
- 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.
+ * 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-07-31 16:47 castaglia
+2012-08-23 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.
+ * 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-07-31 15:30 castaglia
+2012-08-23 castaglia <castaglia>
- * locale/Makefile.in:
- When generating a new .pot file, delete the old version.
+ * 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-07-31 13:31 castaglia
+2012-08-23 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Grammar fix.
+ * 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-07-31 11:15 castaglia
+2012-08-22 castaglia <castaglia>
- * include/version.h:
- Bump version in CVS.
+ * src/trace.c: Avoid possible file descriptor leak in the just-added
+ pr_trace_use_stderr() function.
-2012-07-31 11:02 castaglia
+2012-08-22 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Markup typo.
+ * 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-07-31 10:15 castaglia
+2012-08-22 castaglia <castaglia>
- * ChangeLog:
- Updating ChangeLog for proftpd-1.3.4b release.
+ * tests/api/netaddr.c: Be prepared for a few other possibilities
+ when resolving '::1' to DNS names.
-2012-07-31 10:14 castaglia
+2012-08-22 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Preparing for proftpd-1.3.4b release.
+ * NEWS, contrib/Makefile.in: Bug#3816 - Installation of ftpasswd
+ does not honor DESTDIR environment variable.
-2012-07-31 10:13 castaglia
+2012-08-22 castaglia <castaglia>
- * NEWS, RELEASE_NOTES:
- Preparing for release of proftpd-1.3.4b.
+ * 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-07-31 09:59 castaglia
+2012-08-20 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Added docs for the FactsOptions directive, and added FAQ.
+ * 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-07-30 14:47 castaglia
+2012-08-16 castaglia <castaglia>
- * NEWS, contrib/mod_radius.c:
- Backport of fix for Bug#3809 to 1.3.4 branch.
+ * 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-07-30 14:47 castaglia
+2012-08-15 castaglia <castaglia>
- * NEWS, contrib/mod_radius.c:
- Bug#3809 - Segfaults in mod_radius when configured with
- RadiusGroupInfo.
+ * contrib/mod_sftp_pam.c: Filter out unhelpful error log messages.
-2012-07-30 08:36 castaglia
+2012-08-15 castaglia <castaglia>
- * contrib/mod_radius.c:
- Stylistic cleanup; no functional change.
+ * NEWS, contrib/dist/rpm/proftpd.init.d: Bug#3814 - Support
+ "configtest" command for contrib init.d script.
-2012-07-30 08:17 castaglia
+2012-08-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm:
- Remove duplicate variable.
+ * configure: Updated configure script for Bug#3725.
-2012-07-30 08:17 castaglia
+2012-08-10 castaglia <castaglia>
- * doc/howto/DSO.html:
- Minor update to DSO howto.
+ * Makefile.in: Substitute the proftpd_cvs_version_main value in the
+ proftpd.spec (part of Bug#3725).
-2012-07-29 19:19 castaglia
+2012-08-10 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3808 to 1.3.4 branch.
+ * 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-07-29 19:19 castaglia
+2012-08-10 castaglia <castaglia>
- * contrib/mod_tls.c:
- Minor update/improvement to fix for Bug#3808.
+ * 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-07-29 19:15 castaglia
+2012-08-09 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3808 - Segfault in mod_tls when mod_tls_shmcache used.
+ * 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-07-27 09:27 castaglia
+2012-08-09 castaglia <castaglia>
- * NEWS, src/inet.c:
- Backporting fix for Bug#3804 to 1.3.4 branch.
+ * 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-07-27 09:27 castaglia
+2012-08-09 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#3804 - ioctl(RPROTDIS) code no longer needed on Solaris 11.
+ * 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-07-26 17:20 castaglia
+2012-08-09 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.
+ * 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-07-26 17:16 castaglia
+2012-08-08 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Adding documentation for new TLSServerCipherPreference directive.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Regression tests
+ for Bug#3811.
-2012-07-26 17:12 castaglia
+2012-08-08 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3801 - mod_tls should have directive like Apache mod_ssl's
- SSLHonorCipherOrder.
+ * NEWS, modules/mod_auth.c: Bug#3811 - ExtendedLog entries not
+ written if MaxClients limit reached.
-2012-07-26 15:40 castaglia
+2012-08-07 castaglia <castaglia>
- * tests/api/: response.c:
- Remove unused variable.
+ * 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-07-26 15:36 castaglia
+2012-08-06 castaglia <castaglia>
- * contrib/mod_sftp/: scp.c:
- Quell compiler warning about signedness mismatch.
+ * src/inet.c: Make sure we always return the socket to blocking
+ mode, regardless of how we return from pr_inet_connect_nowait().
-2012-07-26 12:40 castaglia
+2012-08-06 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Better handling of errno values for writev(2) errors.
+ * contrib/mod_tls.c: Remove duplicate SSL_CTX_check_private_key()
+ calls.
-2012-07-25 16:45 castaglia
+2012-08-06 castaglia <castaglia>
- * NEWS, contrib/mod_exec.c, contrib/mod_quotatab.c,
- contrib/mod_sftp_pam.c, contrib/mod_sql.c,
- contrib/mod_sql_passwd.c, contrib/mod_tls.c,
- contrib/mod_sftp/mod_sftp.c, contrib/mod_wrap2/mod_wrap2.c,
- modules/mod_facts.c:
- Bug#3800 - Multiple *Options directives should be handled
- properly.
+ * src/trace.c: Always try to leave a terminating NUL, just in case.
-2012-07-25 16:15 castaglia
+2012-08-06 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Quell compiler warning about possibly uninitialized
- memory/variable.
+ * src/support.c: Stylistic nit; no functional change.
-2012-07-25 15:39 castaglia
+2012-08-06 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Minor style cleanup. Better handling of errno values when
- creating the QuotaLock file.
+ * 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-07-25 15:30 castaglia
+2012-08-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Regression test for TLSOptions handling change, per Bug#3800.
+ * 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-07-25 14:26 castaglia
+2012-08-01 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Fix markup.
+ * 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-07-20 13:41 castaglia
+2012-08-01 castaglia <castaglia>
- * contrib/mod_sftp/: cipher.c, compress.c, mac.c, packet.c:
- More careful use of errno value when writing out SSH2 packets.
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: And a few more places
+ to use assert_transfer_ok().
-2012-07-20 10:47 castaglia
+2012-08-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test showing client-initiated rekeying.
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Update tests to use
+ assert_transfer_ok() in more places.
-2012-07-20 10:04 castaglia
+2012-08-01 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3798 to 1.3.4 branch.
+ * RELEASE_NOTES, doc/contrib/mod_sftp.html: Update the docs showing
+ that mod_sftp now supports MaxStoreFileSize.
-2012-07-20 10:03 castaglia
+2012-08-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression tests for Bug#3798.
+ * 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-07-20 10:02 castaglia
+2012-08-01 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3798 - Downloading nonexistent file via SCP results in
- timeout rather than error.
+ * contrib/mod_sftp/fxp.c: Stylistic nit.
-2012-07-13 11:22 castaglia
+2012-08-01 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Backport of fix for Bug#3790 to 1.3.4 branch.
+ * contrib/mod_sftp/fxp.c: Off-by-one nit.
-2012-07-13 11:22 castaglia
+2012-08-01 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Bug#3790 - Logfile timestamps change to GMT after MFMT command.
+ * 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-07-12 15:20 castaglia
+2012-08-01 castaglia <castaglia>
- * contrib/mod_sftp/kex.c:
- Increase the message buffer size for some KEX messages. Fix some
- unintialized variable compiler warnings.
+ * 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-11 18:38 castaglia
+2012-07-31 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-11 18:37 castaglia
+2012-07-31 castaglia <castaglia>
- * NEWS, configure.in:
- Backport of fix for Bug#3795 to 1.3.4 branch.
+ * locale/Makefile.in: When generating a new .pot file, delete the
+ old version.
-2012-07-11 18:36 castaglia
+2012-07-31 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#3795 - ProFTPD needs to use -pthread linker option if linking
- against OpenSSL with thread support.
+ * doc/modules/mod_facts.html: Grammar fix.
-2012-07-11 18:29 castaglia
+2012-07-31 castaglia <castaglia>
- * configure:
- Updated configure.
+ * doc/modules/mod_facts.html: Markup typo.
-2012-07-11 18:26 castaglia
+2012-07-30 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.
+ * NEWS, contrib/mod_radius.c: Bug#3809 - Segfaults in mod_radius
+ when configured with RadiusGroupInfo.
-2012-07-11 07:28 castaglia
+2012-07-30 castaglia <castaglia>
- * configure:
- Updated configure.
+ * contrib/mod_radius.c: Stylistic cleanup; no functional change.
-2012-07-11 07:21 castaglia
+2012-07-30 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Remove duplicate
+ variable.
-2012-07-09 17:52 castaglia
+2012-07-30 castaglia <castaglia>
- * contrib/mod_sftp/: auth-password.c, 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.
+ * doc/howto/DSO.html: Minor update to DSO howto.
-2012-06-26 12:56 jwm
+2012-07-30 castaglia <castaglia>
- * contrib/mod_ldap.c: git 603e38269a: interpolate %u in the quota
- base DN, too
+ * contrib/mod_tls.c: Minor update/improvement to fix for Bug#3808.
-2012-06-26 12:54 jwm
+2012-07-30 castaglia <castaglia>
- * contrib/mod_ldap.c: git 53e5489e64: Fixed swapped DN/attr name in
- 'no attr for' error messages.
+ * NEWS, contrib/mod_tls.c: Bug#3808 - Segfault in mod_tls when
+ mod_tls_shmcache used.
-2012-06-18 09:49 castaglia
+2012-07-27 castaglia <castaglia>
- * NEWS, lib/tpl.c:
- Backport of fix for Bug#3794 to 1.3.4 branch.
+ * NEWS, src/inet.c: Bug#3804 - ioctl(RPROTDIS) code no longer needed
+ on Solaris 11.
-2012-06-18 09:48 castaglia
+2012-07-27 castaglia <castaglia>
- * NEWS, lib/tpl.c:
- Bug#3794 - Cygwin build failure in lib/tpl.c due to wrong include
- of mman.h.
+ * 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-06-07 21:05 castaglia
+2012-07-27 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3791 to 1.3.4 branch.
+ * doc/contrib/mod_tls.html: Adding documentation for new
+ TLSServerCipherPreference directive.
-2012-06-07 21:04 castaglia
+2012-07-27 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3791 - Invalid handling of SCP control messages fragmented
- over multiple SSH packets.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3801 - mod_tls should
+ have directive like Apache mod_ssl's SSLHonorCipherOrder.
-2012-06-06 11:18 castaglia
+2012-07-26 castaglia <castaglia>
- * NEWS, src/main.c:
- Backport of fix for Bug#3740 to 1.3.4 branch.
+ * tests/api/response.c: Remove unused variable.
-2012-06-06 11:18 castaglia
+2012-07-26 castaglia <castaglia>
- * NEWS, src/main.c:
- Bug#3740 - Overwrite permission denied when reloading multiple
- times and multiple <VirtualHost> sections in proftpd.conf.
+ * contrib/mod_sftp/scp.c: Quell compiler warning about signedness
+ mismatch.
-2012-06-06 10:56 castaglia
+2012-07-25 castaglia <castaglia>
- * doc/howto/Timestamps.html:
- Update the Timestamps howto in light of information learned from
- Bug#3790.
+ * 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-06-01 09:26 castaglia
+2012-07-25 castaglia <castaglia>
- * doc/howto/Limit.html:
- Try to make it clear that <Limit ALL> does not automatically
- cover <Limit LOGIN> as well.
+ * contrib/mod_sftp/fxp.c: Quell compiler warning about possibly
+ uninitialized memory/variable.
-2012-05-31 09:29 castaglia
+2012-07-25 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Added regression test for the AllowDotLogin TLSOption, spurred by
- Bug#3788.
+ * contrib/mod_quotatab.c: Minor style cleanup. Better handling of
+ errno values when creating the QuotaLock file.
-2012-05-31 09:15 castaglia
+2012-07-25 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Add description for the AuthOrder directive to the mod_core docs.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Regression test for
+ TLSOptions handling change, per Bug#3800.
-2012-05-30 16:46 castaglia
+2012-07-25 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.
+ * doc/modules/mod_facts.html: Fix markup.
- This will be the situation until Bug#3308 is fixed.
+2012-07-20 castaglia <castaglia>
-2012-05-30 15:56 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.
- * src/prxs.in:
- Handle the case where prxs might be used like so:
+2012-07-20 castaglia <castaglia>
- $ prxs -c -i -d contrib/mod_sql_sqlite.c
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test showing client-initiated rekeying.
- i.e. from the top-level of the source directory.
+2012-07-20 castaglia <castaglia>
-2012-05-30 14:53 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ tests for Bug#3798.
- * 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-07-20 castaglia <castaglia>
-2012-05-30 14:52 castaglia
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3798 - Downloading nonexistent
+ file via SCP results in timeout rather than error.
- * 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-07-13 castaglia <castaglia>
-2012-05-30 10:26 castaglia
+ * NEWS, modules/mod_facts.c: Bug#3790 - Logfile timestamps change to
+ GMT after MFMT command.
- * contrib/mod_sftp/: fxp.c:
- Additional fix to handling of OPEN attributes per spec, related
- to Bug#3787.
+2012-07-12 castaglia <castaglia>
-2012-05-29 18:03 castaglia
+ * contrib/mod_sftp/kex.c: Increase the message buffer size for some
+ KEX messages. Fix some unintialized variable compiler warnings.
- * 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-07-12 castaglia <castaglia>
-2012-05-29 17:27 castaglia
+ * configure: Updated configure.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp/sql.pm,
- t/modules/mod_sftp/sql.t:
- Adding regression tests for the %{transfer-status},
- %{transfer-failure} logging variables for SFTP sessions.
+2012-07-12 castaglia <castaglia>
-2012-05-29 15:42 castaglia
+ * NEWS, configure.in: Bug#3795 - ProFTPD needs to use -pthread
+ linker option if linking against OpenSSL with thread support.
- * 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-07-12 castaglia <castaglia>
-2012-05-29 15:03 castaglia
+ * configure: Updated configure.
- * contrib/mod_sftp/fxp.c:
- Stash enough information in the command notes for supporting the
- transfer logging variables properly for aborted SFTP transfers.
+2012-07-12 castaglia <castaglia>
-2012-05-29 14:59 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.
- * 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-07-11 castaglia <castaglia>
-2012-05-29 13:21 castaglia
+ * configure: Updated configure.
- * contrib/mod_sftp/fxp.c:
- Make the trace message about read-only SFTP OPENs less verbose.
+2012-07-11 castaglia <castaglia>
-2012-05-29 13:09 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for Bug#3787.
+2012-07-10 castaglia <castaglia>
-2012-05-29 13:08 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.
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3787 to 1.3.4 branch.
+2012-06-26 jwm <jwm>
-2012-05-29 13:08 castaglia
+ * contrib/mod_ldap.c: git 603e38269a: interpolate %u in the quota
+ base DN, too
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3787 - Read-only SFTP OPEN request permissions not properly
- ignored.
+2012-06-26 jwm <jwm>
-2012-05-29 13:04 castaglia
+ * contrib/mod_ldap.c: git 53e5489e64: Fixed swapped DN/attr name in
+ 'no attr for' error messages.
- * contrib/mod_sql.c:
- Use the proper format string for the data type being printed.
+2012-06-18 castaglia <castaglia>
-2012-05-25 09:46 castaglia
+ * NEWS, lib/tpl.c: Bug#3794 - Cygwin build failure in lib/tpl.c due
+ to wrong include of mman.h.
- * 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-06-08 castaglia <castaglia>
-2012-05-24 22:35 castaglia
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3791 - Invalid handling of SCP
+ control messages fragmented over multiple SSH packets.
- * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm:
- Additional regression tests for Bug#3785.
+2012-06-06 castaglia <castaglia>
-2012-05-24 22:35 castaglia
+ * NEWS, src/main.c: Bug#3740 - Overwrite permission denied when
+ reloading multiple times and multiple <VirtualHost> sections in
+ proftpd.conf.
- * src/fsio.c:
- Additional fix needed for Bug#3785.
+2012-06-06 castaglia <castaglia>
-2012-05-24 16:46 castaglia
+ * doc/howto/Timestamps.html: Update the Timestamps howto in light of
+ information learned from Bug#3790.
- * 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 at domain.com'
- works properly.
+2012-06-01 castaglia <castaglia>
-2012-05-24 16:17 castaglia
+ * doc/howto/Limit.html: Try to make it clear that <Limit ALL> does
+ not automatically cover <Limit LOGIN> as well.
- * 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-31 castaglia <castaglia>
-2012-05-24 15:43 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Added regression
+ test for the AllowDotLogin TLSOption, spurred by Bug#3788.
- * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm:
- Regression test for Bug#3785.
+2012-05-31 castaglia <castaglia>
-2012-05-24 15:42 castaglia
+ * doc/modules/mod_core.html: Add description for the AuthOrder
+ directive to the mod_core docs.
- * NEWS, src/fsio.c:
- Bug#3785 - Support resolution of tilde (~) within a chrooted
- session.
+2012-05-30 castaglia <castaglia>
- 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
- "/".
+ * 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-23 13:19 castaglia
+2012-05-30 castaglia <castaglia>
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands/ABOR.pm:
- Add regression test for a plain ABOR command, with no data
- transfer involved.
+ * 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-22 17:11 castaglia
+2012-05-30 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.
+ * 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-22 09:31 castaglia
+2012-05-30 castaglia <castaglia>
- * doc/howto/NAT.html:
- Added another NAT-related FAQ.
+ * 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-21 22:25 castaglia
+2012-05-30 castaglia <castaglia>
- * src/child.c:
- Stylistic nits.
+ * contrib/mod_sftp/fxp.c: Additional fix to handling of OPEN
+ attributes per spec, related to Bug#3787.
-2012-05-21 22:22 castaglia
+2012-05-30 castaglia <castaglia>
- * src/support.c:
- Stylistic nits.
+ * 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-21 22:18 castaglia
+2012-05-30 castaglia <castaglia>
- * modules/mod_delay.c:
- Stylistic cleanups.
+ * 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-21 19:25 castaglia
+2012-05-29 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.
+ * 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-21 19:25 castaglia
+2012-05-29 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#3736 - Trying to re-authenticate an existing FTP connection
- causes invalid 503 response.
+ * 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-21 18:46 castaglia
+2012-05-29 castaglia <castaglia>
- * contrib/mod_sftp/kex.c:
- Typo in comment.
+ * 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-20 13:38 castaglia
+2012-05-29 castaglia <castaglia>
- * src/log.c:
- Remove a few redundant strlen(3) calls in the "hot" paths of
- logging.
+ * contrib/mod_sftp/fxp.c: Make the trace message about read-only
+ SFTP OPENs less verbose.
-2012-05-18 10:09 castaglia
+2012-05-29 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for Bug#3787.
-2012-05-16 11:02 castaglia
+2012-05-29 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.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3787 - Read-only SFTP OPEN
+ request permissions not properly ignored.
-2012-05-15 14:44 castaglia
+2012-05-29 castaglia <castaglia>
- * NEWS, src/inet.c:
- Backported fix for Bug#3780 to 1.3.4 branch.
+ * contrib/mod_sql.c: Use the proper format string for the data type
+ being printed.
-2012-05-15 14:43 castaglia
+2012-05-25 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#3780 - AIX gives "error setting listen fd IP_TOS: Invalid
- argument".
+ * 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-14 13:23 castaglia
+2012-05-25 castaglia <castaglia>
- * doc/contrib/index.html:
- Adding entries for mod_deflate, mod_qos to the contrib module
- docs.
+ * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Additional regression
+ tests for Bug#3785.
-2012-05-14 09:31 castaglia
+2012-05-25 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.
+ * src/fsio.c: Additional fix needed for Bug#3785.
-2012-05-14 09:20 castaglia
+2012-05-24 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).
+ * 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 at domain.com' works properly.
-2012-05-09 21:00 castaglia
+2012-05-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Adding regression test for Bug#3782.
+ * 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-09 20:59 castaglia
+2012-05-24 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#3782 - SQLShowInfo does not work properly for error
- responses.
+ * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Regression test for
+ Bug#3785.
-2012-05-09 20:01 castaglia
+2012-05-24 castaglia <castaglia>
- * src/support.c:
- Stylistic nits; no functional change.
+ * 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-09 19:59 castaglia
+2012-05-23 castaglia <castaglia>
- * src/pool.c:
- The pool_release_free_block_list() function already
- blocks/unblocks alarms.
+ * 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-09 19:55 castaglia
+2012-05-23 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.
+ * 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.
- Made the block_freelist symbol have file scope only; there's
- absolutely no reason why it should be visible outside of this
- file.
+2012-05-22 castaglia <castaglia>
- Stylistic nits/cleanup.
+ * doc/howto/NAT.html: Added another NAT-related FAQ.
-2012-05-09 19:47 castaglia
+2012-05-22 castaglia <castaglia>
- * src/parser.c:
- Stylistic nits.
+ * src/child.c, src/support.c: Stylistic nits.
-2012-05-09 19:46 castaglia
+2012-05-22 castaglia <castaglia>
- * modules/mod_auth_file.c:
- Add minor trace logging to the mod_auth_file module. Stylistic
- nits, better errno reporting.
+ * modules/mod_delay.c: Stylistic cleanups.
-2012-05-09 11:13 castaglia
+2012-05-22 castaglia <castaglia>
- * contrib/mod_sftp/keys.c:
- If we can't read the configured SFTPHostKey, provide a more
- accurate/informative error message about why.
+ * 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-08 11:37 castaglia
+2012-05-22 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Updated mod_core docs to include DisplayChdir, DisplayConnect,
- and DisplayQuit descriptions.
+ * NEWS, modules/mod_auth.c: Bug#3736 - Trying to re-authenticate an
+ existing FTP connection causes invalid 503 response.
-2012-05-08 09:51 castaglia
+2012-05-22 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.
+ * contrib/mod_sftp/kex.c: Typo in comment.
-2012-05-03 11:29 castaglia
+2012-05-20 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.
+ * src/log.c: Remove a few redundant strlen(3) calls in the "hot"
+ paths of logging.
-2012-05-02 20:20 castaglia
+2012-05-18 castaglia <castaglia>
- * src/pool.c:
- Add the address of the pool being dumped to the output.
+ * 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-01 14:31 castaglia
+2012-05-16 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.
+ * 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-04-28 15:26 castaglia
+2012-05-15 castaglia <castaglia>
- * contrib/mod_sftp/mod_sftp.c:
- Fix cut-n-pasto.
+ * NEWS, src/inet.c: Bug#3780 - AIX gives "error setting listen fd
+ IP_TOS: Invalid argument".
-2012-04-27 15:01 castaglia
+2012-05-14 castaglia <castaglia>
- * contrib/mod_tls.c:
- Make the TLSLog a little quieter; stop spamming the log with
- needless information.
+ * doc/contrib/index.html: Adding entries for mod_deflate, mod_qos to
+ the contrib module docs.
-2012-04-26 19:44 castaglia
+2012-05-14 castaglia <castaglia>
- * contrib/mod_tls.c:
- Backporting error reporting changes when dealing with certificate
- key files from trunk.
+ * 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-04-26 19:43 castaglia
+2012-05-14 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.
+ * 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-04-24 16:27 castaglia
+2012-05-10 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Adding
+ regression test for Bug#3782.
-2012-04-24 14:50 castaglia
+2012-05-10 castaglia <castaglia>
- * src/auth.c:
- More trace logging of some edge cases when dispatching auth
- commands. Some stylistic cleanup.
+ * NEWS, contrib/mod_sql.c: Bug#3782 - SQLShowInfo does not work
+ properly for error responses.
-2012-04-24 13:09 castaglia
+2012-05-10 castaglia <castaglia>
- * contrib/mod_sftp/keys.c:
- Backport mod_sftp excess fd usage fixes from trunk to 1.3.4
- branch.
+ * src/support.c: Stylistic nits; no functional change.
-2012-04-24 13:08 castaglia
+2012-05-10 castaglia <castaglia>
- * contrib/mod_sftp/keys.c:
- Fix excess fd usage when loading passphrase-protected SSH host
- keys.
+ * src/pool.c: The pool_release_free_block_list() function already
+ blocks/unblocks alarms.
-2012-04-24 13:07 castaglia
+2012-05-10 castaglia <castaglia>
- * contrib/mod_tls.c:
- Turns out these explicit casts aren't needed; I just had an
- unclean work area.
+ * 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-04-24 12:59 castaglia
+2012-05-10 castaglia <castaglia>
- * contrib/mod_tls.c:
- Quell compiler warnings about mismatched pointers using an
- explicit cast.
+ * src/parser.c: Stylistic nits.
-2012-04-24 12:57 castaglia
+2012-05-10 castaglia <castaglia>
- * contrib/mod_tls.c:
- Backporting fixes for excess fd usage in mod_tls.
+ * modules/mod_auth_file.c: Add minor trace logging to the
+ mod_auth_file module. Stylistic nits, better errno reporting.
-2012-04-24 12:56 castaglia
+2012-05-09 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.
+ * contrib/mod_sftp/keys.c: If we can't read the configured
+ SFTPHostKey, provide a more accurate/informative error message about
+ why.
-2012-04-24 12:21 castaglia
+2012-05-08 castaglia <castaglia>
- * lib/: pr_fnmatch.c, pr_fnmatch_loop.c:
- Backport fix for Bug#3774 to 1.3.4 branch.
+ * doc/modules/mod_core.html: Updated mod_core docs to include
+ DisplayChdir, DisplayConnect, and DisplayQuit descriptions.
-2012-04-24 12:19 castaglia
+2012-05-08 castaglia <castaglia>
- * lib/: pr_fnmatch.c, pr_fnmatch_loop.c:
- Bug#3774 - Linking libsupp.a fails (undefined reference to
- `__alloca').
+ * 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-04-23 14:10 castaglia
+2012-05-03 castaglia <castaglia>
- * doc/howto/NAT.html:
- Adding MasqueradeAddress FAQ.
+ * 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-04-23 09:49 castaglia
+2012-05-03 castaglia <castaglia>
- * doc/modules/: mod_auth_file.html, mod_auth_unix.html:
- Add FAQs about the crypt(3) first 8 character limitation.
+ * src/pool.c: Add the address of the pool being dumped to the
+ output.
-2012-04-20 21:11 castaglia
+2012-05-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm:
- Adding test proving that spaces in passwords are handled
- properly.
+ * 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-20 13:32 castaglia
+2012-04-28 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.
+ * contrib/mod_sftp/mod_sftp.c: Fix cut-n-pasto.
-2012-04-19 09:13 castaglia
+2012-04-27 castaglia <castaglia>
- * NEWS, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c:
- Backport of fix for Bug#3732 to 1.3.4 branch.
+ * contrib/mod_tls.c: Make the TLSLog a little quieter; stop spamming
+ the log with needless information.
-2012-04-19 09:13 castaglia
+2012-04-27 castaglia <castaglia>
- * NEWS, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c:
- Bug#3732 - AIX build error: undefined symbol: .alloca.
+ * 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-18 14:31 castaglia
+2012-04-24 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-18 14:23 castaglia
+2012-04-24 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.
+ * src/auth.c: More trace logging of some edge cases when dispatching
+ auth commands. Some stylistic cleanup.
-2012-04-18 08:42 castaglia
+2012-04-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm:
- Adding regression test for the ListOptions maxfiles parameter.
+ * contrib/mod_sftp/keys.c: Fix excess fd usage when loading
+ passphrase-protected SSH host keys.
-2012-04-16 08:48 castaglia
+2012-04-24 castaglia <castaglia>
- * src/support.c:
- Quell compiler warnings.
+ * contrib/mod_tls.c: Turns out these explicit casts aren't needed; I
+ just had an unclean work area.
-2012-04-16 08:45 castaglia
+2012-04-24 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c, keys.c:
- Quell compiler warnings (Bug#3773).
+ * contrib/mod_tls.c: Quell compiler warnings about mismatched
+ pointers using an explicit cast.
-2012-04-16 08:39 castaglia
+2012-04-24 castaglia <castaglia>
- * modules/mod_cap.c:
- Fix compiler issue requiring forward reference/decclaration.
+ * 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-15 12:10 castaglia
+2012-04-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm:
- Remove cruft from these tests.
+ * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Bug#3774 - Linking
+ libsupp.a fails (undefined reference to `__alloca').
-2012-04-15 11:05 castaglia
+2012-04-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Make sure to mention HOST support in the release notes.
+ * doc/howto/NAT.html: Adding MasqueradeAddress FAQ.
-2012-04-15 11:04 castaglia
+2012-04-23 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.
+ * doc/modules/mod_auth_file.html, doc/modules/mod_auth_unix.html:
+ Add FAQs about the crypt(3) first 8 character limitation.
-2012-04-13 07:28 castaglia
+2012-04-21 castaglia <castaglia>
- * src/fsio.c:
- Fix possible issue with encoding, due to passing the terminating
- NUL into the iconv functions (Bug#3769).
+ * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Adding test proving
+ that spaces in passwords are handled properly.
-2012-04-12 08:37 castaglia
+2012-04-20 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/UserAlias.pm:
- Add regression test demonstrating a UserAlias which uses the '@'
- symbol.
+ * 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-08 08:59 castaglia
+2012-04-19 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).
+ * NEWS, lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Bug#3732 - AIX
+ build error: undefined symbol: .alloca.
-2012-04-08 08:47 castaglia
+2012-04-18 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.
+ * configure: Updated configure.
-2012-04-07 11:21 castaglia
+2012-04-18 castaglia <castaglia>
- * tests/t/: lib/ProFTPD/Tests/Logging/SystemLog.pm,
- logging/systemlog.t:
- Adding regression tests for the SystemLog directive.
+ * 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-06 09:59 castaglia
+2012-04-18 castaglia <castaglia>
- * modules/Makefile.in:
- Make sure that if a static module fails to build (e.g. mod_sftp),
- the entire build is failed.
+ * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Adding regression
+ test for the ListOptions maxfiles parameter.
-2012-04-06 09:53 castaglia
+2012-04-16 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.
+ * src/support.c: Quell compiler warnings.
-2012-04-06 09:45 castaglia
+2012-04-16 castaglia <castaglia>
- * NEWS, src/encode.c:
- Backport of fix for Bug#3769 to 1.3.4 branch.
+ * contrib/mod_sftp/fxp.c, contrib/mod_sftp/keys.c: Quell compiler
+ warnings (Bug#3773).
-2012-04-06 09:44 castaglia
+2012-04-16 castaglia <castaglia>
- * NEWS, src/encode.c:
- Bug#3769 - Ensure that encoded strings are NUL-terminated.
+ * modules/mod_cap.c: Fix compiler issue requiring forward
+ reference/decclaration.
-2012-04-04 20:12 castaglia
+2012-04-15 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Remove cruft from
+ these tests.
-2012-04-04 19:56 castaglia
+2012-04-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Updating the HideFiles regression tests to use testcase-specific
- logging.
+ * RELEASE_NOTES: Make sure to mention HOST support in the release
+ notes.
-2012-04-04 15:27 castaglia
+2012-04-15 castaglia <castaglia>
- * contrib/: mod_tls.c:
- When validating OCSP responses, make sure that we validate the
- timestamps on the OCSP response as well.
+ * 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-04 11:37 castaglia
+2012-04-13 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.
+ * src/fsio.c: Fix possible issue with encoding, due to passing the
+ terminating NUL into the iconv functions (Bug#3769).
-2012-04-04 11:17 castaglia
+2012-04-12 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.
+ * tests/t/lib/ProFTPD/Tests/Config/UserAlias.pm: Add regression test
+ demonstrating a UserAlias which uses the '@' symbol.
-2012-04-04 08:27 castaglia
+2012-04-08 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.
+ * 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-04 08:21 castaglia
+2012-04-08 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.
+ 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-03 23:10 castaglia
+2012-04-07 castaglia <castaglia>
- * doc/modules/mod_log.html:
- Document the new %{transfer-status}, %{transfer-failure}
- LogFormat variables.
+ * tests/t/lib/ProFTPD/Tests/Logging/SystemLog.pm,
+ tests/t/logging/systemlog.t: Adding regression tests for the
+ SystemLog directive.
-2012-04-03 23:05 castaglia
+2012-04-06 castaglia <castaglia>
- * modules/mod_log.c:
- Support the new %{transfer-status}, %{transfer-failure} LogFormat
- variables.
+ * modules/Makefile.in: Make sure that if a static module fails to
+ build (e.g. mod_sftp), the entire build is failed.
-2012-04-03 23:04 castaglia
+2012-04-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Added regression tests for the %{transfer-status},
- %{transfer-failure} LogFormat variables in ExtendedLogs.
+ * 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-03 21:51 castaglia
+2012-04-06 castaglia <castaglia>
- * RELEASE_NOTES, contrib/mod_sql.c:
- Support the new %{transfer-status}, %{transfer-failure} variables
- in SQLLog directives.
+ * NEWS, src/encode.c: Bug#3769 - Ensure that encoded strings are
+ NUL-terminated.
-2012-04-03 21:50 castaglia
+2012-04-05 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.
+ * 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-03 13:59 castaglia
+2012-04-05 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_geoip.pm,
- t/modules/mod_geoip.t:
- Adding necessary files for writing regression tests for the
- mod_geoip module.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Updating the
+ HideFiles regression tests to use testcase-specific logging.
-2012-04-03 13:54 castaglia
+2012-04-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm:
- Fix up the mod_delay tests to use testcase-specific logging.
+ * contrib/mod_tls.c: When validating OCSP responses, make sure that
+ we validate the timestamps on the OCSP response as well.
-2012-04-03 13:41 castaglia
+2012-04-04 castaglia <castaglia>
- * README.modules, doc/contrib/mod_geoip.html:
- Updating other docs related to mod_geoip.
+ * 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-03 13:38 castaglia
+2012-04-04 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.
+ * 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-03 09:16 castaglia
+2012-04-04 castaglia <castaglia>
- * NEWS, contrib/mod_exec.c:
- Bug#3768 - ExecTimeout 0 (zero) not treated as infinite.
+ * 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-03 09:03 castaglia
+2012-04-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Adding regression test for Bug#3767.
+ * 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-03 09:02 castaglia
+2012-04-04 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Backport of fix for Bug#3767 to 1.3.4 branch.
+ * doc/modules/mod_log.html: Document the new %{transfer-status},
+ %{transfer-failure} LogFormat variables.
-2012-04-03 09:01 castaglia
+2012-04-04 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#3767 - mod_rewrite segfault when handling SITE CHGRP without
- a parameter.
+ * modules/mod_log.c: Support the new %{transfer-status},
+ %{transfer-failure} LogFormat variables.
-2012-03-30 22:52 castaglia
+2012-04-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Updating the mod_sql_sqlite tests to use testcase-specific
- logging.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Added regression
+ tests for the %{transfer-status}, %{transfer-failure} LogFormat
+ variables in ExtendedLogs.
-2012-03-30 17:35 castaglia
+2012-04-04 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_quotatab.c,
- contrib/mod_quotatab.h:
- Bug#3766 - Support a QuotaDefault directive, for configuring
- default limits.
+ * RELEASE_NOTES, contrib/mod_sql.c: Support the new
+ %{transfer-status}, %{transfer-failure} variables in SQLLog
+ directives.
-2012-03-30 17:34 castaglia
+2012-04-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Adding regression tests for Bug#3766 functionality (QuotaDefault
- directive).
+ * 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-03-30 16:24 castaglia
+2012-04-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Updating the mod_quotatab_sql regression testcases to use
- testcase-specific logging.
+ * 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-03-30 16:23 castaglia
+2012-04-03 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Fix up the
+ mod_delay tests to use testcase-specific logging.
-2012-03-30 14:08 castaglia
+2012-04-03 castaglia <castaglia>
- * contrib/mod_sftp/: auth.c:
- Make sure to set the session.hide_password field to 'TRUE' for
- SSH2 logins.
+ * README.modules, doc/contrib/mod_geoip.html: Updating other docs
+ related to mod_geoip.
-2012-03-29 22:11 castaglia
+2012-04-03 castaglia <castaglia>
- * include/version.h:
- This should mention a version of "1.3.5rc1", not "1.3.5".
+ * 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-03-29 20:28 castaglia
+2012-04-03 castaglia <castaglia>
- * doc/modules/mod_auth_unix.html:
- Add FAQ about PersistentPasswd and "caching" of system users.
+ * NEWS, contrib/mod_exec.c: Bug#3768 - ExecTimeout 0 (zero) not
+ treated as infinite.
-2012-03-29 14:47 castaglia
+2012-04-03 castaglia <castaglia>
- * src/data.c:
- Remove duplicate pr_timer_reset() call, and fix coding style.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding
+ regression test for Bug#3767.
-2012-03-27 23:15 castaglia
+2012-04-03 castaglia <castaglia>
- * tests/tests.pl:
- Run the HOST regression tests.
+ * NEWS, contrib/mod_rewrite.c: Bug#3767 - mod_rewrite segfault when
+ handling SITE CHGRP without a parameter.
-2012-03-27 23:14 castaglia
+2012-03-31 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm:
- Start building up the collection of HOST-related regression
- tests.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Updating the
+ mod_sql_sqlite tests to use testcase-specific logging.
-2012-03-27 23:14 castaglia
+2012-03-31 castaglia <castaglia>
- * modules/mod_core.c:
- Start working towards supporting the HOST command (Bug#3289).
+ * NEWS, RELEASE_NOTES, contrib/mod_quotatab.c,
+ contrib/mod_quotatab.h: Bug#3766 - Support a QuotaDefault directive,
+ for configuring default limits.
-2012-03-27 22:13 castaglia
+2012-03-31 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: DELE.pm, RNTO.pm:
- Adding regression tests for Bug#3754.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Adding
+ regression tests for Bug#3766 functionality (QuotaDefault
+ directive).
-2012-03-27 22:13 castaglia
+2012-03-30 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#3754 - ProFTPD refuses to delete/rename a symlink pointing
- outside a writable directory.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Updating
+ the mod_quotatab_sql regression testcases to use testcase-specific
+ logging.
-2012-03-26 23:32 castaglia
+2012-03-30 castaglia <castaglia>
- * doc/contrib/mod_rewrite.html:
- Document the new mod_rewrite date/time-related variables.
+ * 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-26 23:19 castaglia
+2012-03-30 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Adding regression tests for Bug#3673 functionality.
+ * contrib/mod_sftp/auth.c: Make sure to set the
+ session.hide_password field to 'TRUE' for SSH2 logins.
-2012-03-26 23:18 castaglia
+2012-03-30 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_rewrite.c:
- Bug#3673 - Support date/timestamp variables in mod_rewrite.
+ * include/version.h: This should mention a version of "1.3.5rc1",
+ not "1.3.5".
-2012-03-24 11:41 castaglia
+2012-03-30 castaglia <castaglia>
- * doc/howto/Umask.html:
- Adding more info to the Umask howto.
+ * doc/modules/mod_auth_unix.html: Add FAQ about PersistentPasswd and
+ "caching" of system users.
-2012-03-24 10:06 castaglia
+2012-03-29 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Adding Umask directive description to the mod_core doc.
+ * src/data.c: Remove duplicate pr_timer_reset() call, and fix coding
+ style.
-2012-03-23 09:21 castaglia
+2012-03-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Update EXIT regression test to use the %L/%a LogFormat variables.
+ * tests/tests.pl: Run the HOST regression tests.
-2012-03-23 09:20 castaglia
+2012-03-28 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 (merge from
- trunk).
+ * tests/t/lib/ProFTPD/Tests/Commands/HOST.pm: Start building up the
+ collection of HOST-related regression tests.
-2012-03-23 09:20 castaglia
+2012-03-28 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.
+ * modules/mod_core.c: Start working towards supporting the HOST
+ command (Bug#3289).
-2012-03-22 22:49 castaglia
+2012-03-28 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3626 - Display variable %f off by a factor of 1024 on 64-bit
- platforms.
+ * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm,
+ tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Adding regression tests
+ for Bug#3754.
-2012-03-22 22:37 castaglia
+2012-03-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for Bug#3765.
+ * NEWS, modules/mod_core.c: Bug#3754 - ProFTPD refuses to
+ delete/rename a symlink pointing outside a writable directory.
-2012-03-22 22:35 castaglia
+2012-03-27 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.
+ * doc/contrib/mod_rewrite.html: Document the new mod_rewrite
+ date/time-related variables.
-2012-03-22 10:21 castaglia
+2012-03-27 castaglia <castaglia>
- * doc/modules/mod_log.html:
- Try to clarify that the ALL ExtendedLog command class does not
- include the EXIT command class.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding
+ regression tests for Bug#3673 functionality.
-2012-03-22 09:19 castaglia
+2012-03-27 castaglia <castaglia>
- * NEWS:
- Fix wrong bug number in NEWS.
+ * NEWS, RELEASE_NOTES, contrib/mod_rewrite.c: Bug#3673 - Support
+ date/timestamp variables in mod_rewrite.
-2012-03-18 17:16 castaglia
+2012-03-24 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.
+ * doc/howto/Umask.html: Adding more info to the Umask howto.
-2012-03-18 16:41 castaglia
+2012-03-24 castaglia <castaglia>
- * doc/howto/Logging.html:
- Attempting to improve the Logging howto, in order to better
- address Bug#3540.
+ * doc/modules/mod_core.html: Adding Umask directive description to
+ the mod_core doc.
-2012-03-18 16:26 castaglia
+2012-03-23 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".
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Update EXIT
+ regression test to use the %L/%a LogFormat variables.
-2012-03-17 12:56 castaglia
+2012-03-23 castaglia <castaglia>
- * doc/howto/Logging.html:
- Updating Logging howto to point to local docs (now that we have
- them).
+ * 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-17 12:43 castaglia
+2012-03-23 castaglia <castaglia>
- * doc/modules/mod_core.html:
- For the SyslogFacility default, list "daemon" (although proftpd
- also uses "auth" for authentication messages).
+ * NEWS, src/fsio.c: Bug#3626 - Display variable %f off by a factor
+ of 1024 on 64-bit platforms.
-2012-03-17 12:39 castaglia
+2012-03-23 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for Bug#3765.
-2012-03-17 12:23 castaglia
+2012-03-23 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Adding descriptions of the SyslogFacility and SyslogLevel
- directives to the mod_core documentation.
+ * 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-14 15:15 castaglia
+2012-03-22 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.
+ * doc/modules/mod_log.html: Try to clarify that the ALL ExtendedLog
+ command class does not include the EXIT command class.
-2012-03-13 17:32 castaglia
+2012-03-22 castaglia <castaglia>
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_sql_passwd/FIPS.pm,
- t/modules/mod_sql_passwd/fips.t:
- Adding regression tests for mod_sql_passwd when it is using an
- OpenSSL that is in FIPS mode.
+ * NEWS: Fix wrong bug number in NEWS.
-2012-03-13 17:11 castaglia
+2012-03-19 castaglia <castaglia>
- * src/log.c:
- Merge changes from trunk regarding syslog socket fds and
- restarts.
+ * 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-13 17:11 castaglia
+2012-03-18 castaglia <castaglia>
- * src/log.c:
- Make sure that we get a usable syslog socket fd (read: not 0, 1,
- or 2) after a restart.
+ * doc/howto/Logging.html: Attempting to improve the Logging howto,
+ in order to better address Bug#3540.
-2012-03-13 16:23 castaglia
+2012-03-18 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.
+ * 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-13 15:36 castaglia
+2012-03-17 castaglia <castaglia>
- * contrib/mod_sftp/kex.c:
- Add more trace logging of the name lists that mod_sftp is sending
- to the client.
+ * doc/howto/Logging.html: Updating Logging howto to point to local
+ docs (now that we have them).
-2012-03-13 14:39 castaglia
+2012-03-17 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.
+ * doc/modules/mod_core.html: For the SyslogFacility default, list
+ "daemon" (although proftpd also uses "auth" for authentication
+ messages).
-2012-03-13 13:15 castaglia
+2012-03-17 castaglia <castaglia>
- * contrib/mod_sftp/: blacklist.c:
- Fix compiler warning.
+ * 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-13 12:05 castaglia
+2012-03-17 castaglia <castaglia>
- * contrib/mod_sftp/: keys.c, keys.h:
- Forgot to update the copyright years on these files.
+ * doc/modules/mod_core.html: Adding descriptions of the
+ SyslogFacility and SyslogLevel directives to the mod_core
+ documentation.
-2012-03-13 12:05 castaglia
+2012-03-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/FIPS.pm:
- Adding regression tests for key-based SSH2 auth when in FIPS
- mode.
+ * 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-13 12:02 castaglia
+2012-03-14 castaglia <castaglia>
- * contrib/mod_sftp/: auth-hostbased.c, auth-publickey.c,
- blacklist.c, keys.c, keys.h:
- Merge the key fingerprinting changes, when in FIPS mode, from
- trunk to the 1.3.4 branch.
+ * 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-13 11:58 castaglia
+2012-03-14 castaglia <castaglia>
- * contrib/mod_sftp/: auth-hostbased.c, auth-publickey.c,
- blacklist.c, keys.c, 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.
+ * 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 09:53 castaglia
+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.
+ * 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 09:50 castaglia
+2012-03-13 castaglia <castaglia>
- * contrib/mod_sftp/: crypto.c:
- Allow the 3des-ctr cipher in FIPS mode (Bug#3763).
+ * contrib/mod_sftp/kex.c: Add more trace logging of the name lists
+ that mod_sftp is sending to the client.
-2012-03-12 17:23 castaglia
+2012-03-13 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/cipher.c, contrib/mod_sftp/crypto.c,
- contrib/mod_sftp/mac.c, contrib/mod_sftp/mod_sftp.c:
- Backport the fix for Bug#3763 to 1.3.4 branch.
+ * 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-12 16:59 castaglia
+2012-03-13 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.)
+ * contrib/mod_sftp/blacklist.c: Fix compiler warning.
-2012-03-12 16:52 castaglia
+2012-03-13 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp/FIPS.pm,
- t/modules/mod_sftp/fips.t:
- Adding regression tests for Bug#3763.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/FIPS.pm: Adding
+ regression tests for key-based SSH2 auth when in FIPS mode.
-2012-03-12 16:28 castaglia
+2012-03-13 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.
+ * 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-12 15:44 castaglia
+2012-03-13 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.
+ * 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-12 15:28 castaglia
+2012-03-13 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Make sure the Include directive docs mention how a glob pattern
- with no matches is handled.
+ * contrib/mod_sftp/crypto.c: Allow the 3des-ctr cipher in FIPS mode
+ (Bug#3763).
-2012-03-12 11:41 castaglia
+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.
+ * 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-11 15:32 castaglia
+2012-03-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm:
- Fix these tests so that they actually stop the daemon processes
- that they launch.
+ * 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-11 12:30 castaglia
+2012-03-12 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Include the IP address of the client who sends us a DISCONNECT
- SSH message.
+ * 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-11 12:20 castaglia
+2012-03-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm,
- 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.
+ * 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-11 12:20 castaglia
+2012-03-12 castaglia <castaglia>
- * tests/: tests.pl, t/config/ifdefine.t,
- t/lib/ProFTPD/Tests/Config/IfDefine.pm:
- Adding regression tests for the <IfDefine> directive.
+ * doc/modules/mod_core.html: Make sure the Include directive docs
+ mention how a glob pattern with no matches is handled.
-2012-03-11 11:45 castaglia
+2012-03-12 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/kex.c, contrib/mod_sftp/packet.c,
- contrib/mod_sftp/packet.h:
- Backport of fix for Bug#3761 to 1.3.4 branch.
+ * 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 11:44 castaglia
+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.
+ * 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>
-2012-03-08 15:31 castaglia
+ * contrib/mod_sftp/packet.c: Include the IP address of the client
+ who sends us a DISCONNECT SSH message.
- * 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-11 castaglia <castaglia>
-2012-03-07 16:06 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.
- * tests/: tests.pl, t/commands/site/chgrp.t,
- t/lib/ProFTPD/Tests/Commands/SITE/CHGRP.pm:
- Adding missing regression tests for the SITE CHGRP command.
+2012-03-11 castaglia <castaglia>
-2012-03-07 07:32 castaglia
+ * tests/t/config/ifdefine.t,
+ tests/t/lib/ProFTPD/Tests/Config/IfDefine.pm, tests/tests.pl: Adding
+ regression tests for the <IfDefine> directive.
- * src/main.c:
- Backport the fix on handling of uname(3) return values to the
- 1.3.4 branch.
+2012-03-11 castaglia <castaglia>
-2012-03-07 07:29 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.
- * 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-08 castaglia <castaglia>
-2012-03-06 20:17 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.
- * doc/contrib/mod_sftp.html, NEWS, RELEASE_NOTES:
- Mention the new support for loading host keys from an SSH agent
- in the docs.
+2012-03-08 castaglia <castaglia>
-2012-03-06 18:14 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.
- * contrib/mod_sftp/: agent.c, keys.c, mod_sftp.c:
- Put the finishing touches on support for loading SSH hostkeys
- from an SSH agent.
+2012-03-07 castaglia <castaglia>
-2012-03-05 23:01 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.
- * contrib/mod_sftp/: agent.c, agent.h, keys.c, mod_sftp.c:
- More work on getting mod_sftp ready to read hostkeys from an SSH
- agent.
+2012-03-07 castaglia <castaglia>
-2012-03-05 17:29 castaglia
+ * NEWS, RELEASE_NOTES, doc/contrib/mod_sftp.html: Mention the new
+ support for loading host keys from an SSH agent in the docs.
- * 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-07 castaglia <castaglia>
-2012-03-05 17:17 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.
- * contrib/mod_sftp/: Makefile.in, agent.c, agent.h, keys.c, keys.h,
- mod_sftp.c:
- Start working on support for obtaining hostkeys from an SSH
- agent, rather than from files on disk.
+2012-03-06 castaglia <castaglia>
-2012-03-04 14:31 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.
- * RELEASE_NOTES:
- Updating release notes.
+2012-03-06 castaglia <castaglia>
-2012-03-04 14:31 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.
- * 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-06 castaglia <castaglia>
-2012-03-04 10:32 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.
- * doc/modules/mod_core.html:
- Fixing markup.
+2012-03-04 castaglia <castaglia>
-2012-03-02 15:34 castaglia
+ * RELEASE_NOTES: Updating release notes.
- * RELEASE_NOTES:
- Call out the ECC support for mod_sftp in the release notes.
+2012-03-04 castaglia <castaglia>
-2012-03-02 15:07 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.
- * contrib/mod_sftp/: auth-publickey.c, kex.c, keys.c, keys.h:
- Support use of ECDSA public keys for user/host authentication, as
- part of ECC support (Bug#3573).
+2012-03-04 castaglia <castaglia>
-2012-03-02 15:05 castaglia
+ * doc/modules/mod_core.html: Fixing markup.
- * 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>
-2012-03-02 15:04 castaglia
+ * RELEASE_NOTES: Call out the ECC support for mod_sftp in the
+ release notes.
- * tests/t/etc/modules/mod_sftp/: authorized_ecdsa256_keys,
- authorized_ecdsa384_keys, authorized_ecdsa521_keys,
- test_ecdsa256_key, test_ecdsa256_key.pub, test_ecdsa384_key,
- test_ecdsa384_key.pub, test_ecdsa521_key, 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-02 castaglia <castaglia>
-2012-03-01 15:54 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).
- * src/support.c:
- There's no reason for this memscrub_ctr variable symbol to be
- visible outside of this file.
+2012-03-02 castaglia <castaglia>
-2012-03-01 15:51 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.
- * NEWS, modules/mod_auth.c:
- Backported fix for Bug#3758 to 1.3.4 branch.
+2012-03-02 castaglia <castaglia>
-2012-03-01 15:51 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).
- * NEWS, modules/mod_auth.c:
- Bug#3758 - ProFTPD crashes when handling mod_gss authentication
- due to null pointer.
+2012-03-01 castaglia <castaglia>
-2012-03-01 15:17 castaglia
+ * src/support.c: There's no reason for this memscrub_ctr variable
+ symbol to be visible outside of this file.
- * 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>
-2012-03-01 15:12 castaglia
+ * NEWS, modules/mod_auth.c: Bug#3758 - ProFTPD crashes when handling
+ mod_gss authentication due to null pointer.
- * 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>
-2012-03-01 15:10 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).
- * 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>
-2012-03-01 15:04 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.
- * tests/t/etc/modules/mod_sftp/: ssh_host_ecdsa256_key,
- ssh_host_ecdsa256_key.pub, ssh_host_ecdsa384_key,
- ssh_host_ecdsa384_key.pub, ssh_host_ecdsa521_key,
- ssh_host_ecdsa521_key.pub:
- Adding SSH ECDSA host keys for the regression tests for Bug#3573.
+2012-03-01 castaglia <castaglia>
-2012-02-28 15:14 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.
- * 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-03-01 castaglia <castaglia>
-2012-02-28 10:14 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.
- * contrib/mod_ban.c:
- Better handling of errno values in certain cases, so that the
- return values (and log messages) reflect reality.
+2012-02-28 castaglia <castaglia>
-2012-02-27 14:48 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.
- * 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-28 castaglia <castaglia>
-2012-02-27 13:42 castaglia
+ * contrib/mod_ban.c: Better handling of errno values in certain
+ cases, so that the return values (and log messages) reflect reality.
- * locale/files.txt:
- Updated list of files containing strings that might need to be
- localized.
+2012-02-27 castaglia <castaglia>
-2012-02-27 13:38 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.
- * 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>
-2012-02-27 09:26 castaglia
+ * locale/files.txt: Updated list of files containing strings that
+ might need to be localized.
- * doc/modules/: mod_auth.html, mod_core.html, mod_xfer.html:
- Document the maximum allowed timeout value, if any, for the
- various Timeout directives.
+2012-02-27 castaglia <castaglia>
-2012-02-24 14:38 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.
- * doc/modules/mod_lang.html:
- Updated mod_lang docs, per changes for Bug#3737.
+2012-02-27 castaglia <castaglia>
-2012-02-24 14:33 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.
- * 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>
-2012-02-24 14:32 castaglia
+ * doc/modules/mod_lang.html: Updated mod_lang docs, per changes for
+ Bug#3737.
- * NEWS, RELEASE_NOTES, modules/mod_lang.c:
- Bug#3737 - Allow UTF8 when UseEncoding is used.
+2012-02-24 castaglia <castaglia>
-2012-02-24 13:48 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Adding regression
+ tests for the mod_lang changes from Bug#3737.
- * 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>
-2012-02-24 09:39 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_lang.c: Bug#3737 - Allow UTF8
+ when UseEncoding is used.
- * 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>
-2012-02-24 08:57 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).
- * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm:
- Updated the mod_lang tests to use testcase-specific logging.
+2012-02-24 castaglia <castaglia>
-2012-02-24 08:46 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.
- * src/netio.c:
- Preserve the errno value, for the sake of the caller.
+2012-02-24 castaglia <castaglia>
-2012-02-23 23:23 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Updated the
+ mod_lang tests to use testcase-specific logging.
- * 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>
-2012-02-23 23:08 castaglia
+ * src/netio.c: Preserve the errno value, for the sake of the caller.
- * 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>
-2012-02-23 22:13 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.
- * doc/modules/mod_auth.html:
- Document the new RootRevoke parameter, per Bug#3731.
+2012-02-24 castaglia <castaglia>
-2012-02-23 22:02 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.
- * 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>
-2012-02-23 17:37 castaglia
+ * doc/modules/mod_auth.html: Document the new RootRevoke parameter,
+ per Bug#3731.
- * 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>
-2012-02-23 17:36 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.
- * modules/mod_dso.c:
- Quell valid compiler warning about shadowed variable.
+2012-02-24 castaglia <castaglia>
-2012-02-23 17:33 castaglia
+ * src/table.c: Since we're only reading from /dev/urandom, we don't
+ really care about any error value from fclose(3).
- * contrib/mod_ban.c:
- Quell compiler warning about unreachable code (but only
- unreachable when memcache support is not enabled).
+2012-02-24 castaglia <castaglia>
-2012-02-23 17:29 castaglia
+ * modules/mod_dso.c: Quell valid compiler warning about shadowed
+ variable.
- * contrib/mod_sftp/rfc4716.c:
- Quell compiler warning about a line of code which will never be
- reached.
+2012-02-24 castaglia <castaglia>
-2012-02-23 17:22 castaglia
+ * contrib/mod_ban.c: Quell compiler warning about unreachable code
+ (but only unreachable when memcache support is not enabled).
- * src/table.c:
- Fix compiler warning about generating the per-table random seed,
- when OpenSSL's RAND API is not available.
+2012-02-24 castaglia <castaglia>
- Also decided to simply add the per-table seed to the returned
- hash value, rather than XOR the seed in.
+ * contrib/mod_sftp/rfc4716.c: Quell compiler warning about a line of
+ code which will never be reached.
-2012-02-23 17:14 castaglia
+2012-02-24 castaglia <castaglia>
- * src/: ctrls.c:
- Fixed another place in the Controls API where we weren't using
- the proper buffer length.
+ * 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-23 16:31 castaglia
+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.
+ * src/ctrls.c: Fixed another place in the Controls API where we
+ weren't using the proper buffer length.
-2012-02-23 14:25 castaglia
+2012-02-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm:
- Adding regression test for Bug#3756.
+ * 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 14:22 castaglia
+2012-02-23 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c, src/ctrls.c:
- Backport of fix for Bug#3756 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm: Adding regression
+ test for Bug#3756.
-2012-02-23 14:22 castaglia
+2012-02-23 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c, src/ctrls.c:
- Bug#3756 - mod_ctrls no longer listens on ControlsSocket after
- restart.
+ * NEWS, modules/mod_ctrls.c, src/ctrls.c: Bug#3756 - mod_ctrls no
+ longer listens on ControlsSocket after restart.
-2012-02-23 13:46 castaglia
+2012-02-23 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Missing testcase tag.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Missing testcase
+ tag.
-2012-02-23 13:12 castaglia
+2012-02-23 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Added documentation for the new IgnoreSFTPSetOwners SFTPOption
- (Bug#3757).
+ * doc/contrib/mod_sftp.html: Added documentation for the new
+ IgnoreSFTPSetOwners SFTPOption (Bug#3757).
-2012-02-23 13:10 castaglia
+2012-02-23 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression tests for Bug#3757.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ tests for Bug#3757.
-2012-02-23 13:10 castaglia
+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.
+ 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-22 16:04 castaglia
+2012-02-23 castaglia <castaglia>
- * modules/mod_dso.c:
- Quell compiler warning about losing pointer qualifier.
+ * modules/mod_dso.c: Quell compiler warning about losing pointer
+ qualifier.
-2012-02-22 08:41 castaglia
+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.
+ * 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 07:43 castaglia
+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.
+ * 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-21 17:56 castaglia
+2012-02-22 castaglia <castaglia>
- * contrib/mod_ban.c:
- Backporting additional fix for Bug#3751 to 1.3.4 branch.
+ * 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 17:56 castaglia
+2012-02-21 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.
+ * 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 13:59 castaglia
+2012-02-21 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Config/EnvVars.pm,
- t/config/envvars.t:
- Adding regression tests for using environment variables in
- proftpd.conf config files.
+ * doc/utils/index.html: Better description of the prxs docs in the
+ index.
-2012-02-21 11:11 castaglia
+2012-02-20 castaglia <castaglia>
- * doc/utils/index.html:
- Better description of the prxs docs in the index.
+ * doc/utils/prxs.html: Beginnings of a prxs doc.
-2012-02-20 10:56 castaglia
+2012-02-20 castaglia <castaglia>
- * doc/utils/prxs.html:
- Beginnings of a prxs doc.
+ * doc/modules/mod_xfer.html: Adding descriptions for the
+ TimeoutNoTransfer, TimeoutStalled directives to the bundled docs.
-2012-02-20 10:37 castaglia
+2012-02-20 castaglia <castaglia>
- * doc/modules/mod_xfer.html:
- Adding descriptions for the TimeoutNoTransfer, TimeoutStalled
- directives to the bundled docs.
+ * doc/modules/mod_core.html: Adding descriptions for the
+ MaxInstances, TimeoutIdle directives to the bundled docs.
-2012-02-20 10:28 castaglia
+2012-02-20 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Adding descriptions for the MaxInstances, TimeoutIdle directives
- to the bundled docs.
+ * doc/modules/mod_auth.html: Adding descriptions for the
+ TimeoutLogin, TimeoutSession directives to the bundled docs.
-2012-02-20 10:14 castaglia
+2012-02-19 castaglia <castaglia>
- * doc/modules/mod_auth.html:
- Adding descriptions for the TimeoutLogin, TimeoutSession
- directives to the bundled docs.
+ * 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 13:37 castaglia
+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.
+ * modules/mod_auth.c: Removed unused variable which was leading to a
+ compiler warning noted in Bug#3755.
-2012-02-19 11:58 castaglia
+2012-02-19 castaglia <castaglia>
- * modules/mod_auth.c:
- Removed unused variable which was leading to a compiler warning
- noted in Bug#3755.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for feature added for Bug#3707.
-2012-02-18 19:02 castaglia
+2012-02-19 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for feature added for Bug#3707.
+ * 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-18 18:56 castaglia
+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.
+ * 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.
- 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}'.
+2012-02-18 castaglia <castaglia>
- 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.
+ * configure: Updated configure.
-2012-02-18 18:52 castaglia
+2012-02-18 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.
+ * 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 15:56 castaglia
+2012-02-18 castaglia <castaglia>
- * configure:
- Updated configure.
+ * contrib/mod_sftp_sql.c: Fix up compiler warnings noted in
+ Bug#3755.
-2012-02-18 15:54 castaglia
+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.
+ * 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 14:44 castaglia
+2012-02-18 castaglia <castaglia>
- * contrib/mod_sftp_sql.c:
- Fix up compiler warnings noted in Bug#3755.
+ * 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 14:37 castaglia
+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.
+ * contrib/mod_sftp/channel.c: Remove unused variable causing
+ compiler warning noted in Bug#3755.
-2012-02-18 14:28 castaglia
+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.
+ * 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 14:12 castaglia
+2012-02-18 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Remove unused variable causing compiler warning noted in
- Bug#3755.
+ * contrib/mod_rewrite.c: Remove unused variable causing compiler
+ warning noted in Bug#3755.
-2012-02-18 14:10 castaglia
+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.
+ * contrib/mod_sql_mysql.c: Fix up the coding style and clean up some
+ compiler warnings noted in Bug#3755.
-2012-02-18 14:07 castaglia
+2012-02-18 castaglia <castaglia>
- * contrib/mod_rewrite.c:
- Remove unused variable causing compiler warning noted in
- Bug#3755.
+ * contrib/mod_sql.c: Quell a compiler warning noted in Bug#3755.
-2012-02-18 14:00 castaglia
+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.
+ * src/auth.c: Stylistic cleanup, and fix a few compiler warnings
+ noted in Bug#3755.
-2012-02-18 13:55 castaglia
+2012-02-18 castaglia <castaglia>
- * contrib/mod_sql.c:
- Quell a compiler warning noted in Bug#3755.
+ * modules/mod_auth.c: Fix some stylistic nits, and clean up a few
+ compiler warnings noted in Bug#3755.
-2012-02-18 13:53 castaglia
+2012-02-17 castaglia <castaglia>
- * src/auth.c:
- Stylistic cleanup, and fix a few compiler warnings noted in
- Bug#3755.
+ * src/lastlog.c: Use explicit cast to time_t pointer, to avoid
+ compiler warnings on some platforms.
-2012-02-18 13:51 castaglia
+2012-02-17 castaglia <castaglia>
- * modules/mod_auth.c:
- Fix some stylistic nits, and clean up a few compiler warnings
- noted in Bug#3755.
+ * 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 14:43 castaglia
+2012-02-17 castaglia <castaglia>
- * src/: lastlog.c:
- Use explicit cast to time_t pointer, to avoid compiler warnings
- on some platforms.
+ * 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 07:32 castaglia
+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.
+ * 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-16 17:53 castaglia
+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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Added regression
+ test for Bug#3751 (mod_ban-related fd leak).
-2012-02-16 17:19 castaglia
+2012-02-16 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Backport of fix for Bug#3751 to 1.3.4 branch.
+ * 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 17:18 castaglia
+2012-02-16 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.
+ * 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 17:08 castaglia
+2012-02-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Added regression test for Bug#3751 (mod_ban-related fd leak).
+ * 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 15:17 castaglia
+2012-02-16 castaglia <castaglia>
- * NEWS, src/bindings.c, src/inet.c:
- Backport of fix for Bug#3752 to 1.3.4 branch.
+ * src/scoreboard.c: Clean up warnings in the Scoreboard API code.
-2012-02-16 15:17 castaglia
+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.
+ * 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 09:02 castaglia
+2012-02-16 castaglia <castaglia>
- * tests/api/response.c:
- Backport of fix for Bug#3750 to 1.3.4 branch.
+ * contrib/mod_sftp/fxp.c: Missed part of the "unsigned char" merge.
-2012-02-16 09:01 castaglia
+2012-02-15 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).
+ * 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 16:18 castaglia
+2012-02-15 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.
+ * contrib/mod_sftp/kex.c: Fix minor issue pointed out by valgrind,
+ where we were not tracking the length properly.
-2012-02-15 16:13 castaglia
+2012-02-15 castaglia <castaglia>
- * src/scoreboard.c:
- Clean up warnings in the Scoreboard API code.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3743 - Random stalls/segfaults
+ seen when transferring large files via SFTP.
-2012-02-15 16:13 castaglia
+2012-02-15 castaglia <castaglia>
- * src/table.c:
- Include the <openssl/rand.h> header, if OpenSSL is enabled, so
- that we get the proper RAND_* function definitions.
+ * 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 16:03 castaglia
+2012-02-15 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Missed part of the "unsigned char" merge.
+ * tests/api/scoreboard.c, tests/api/stubs.c: Fix unit tests to
+ compile properly.
-2012-02-15 15:50 castaglia
+2012-02-15 castaglia <castaglia>
- * contrib/mod_sftp/: auth-hostbased.c, auth-kbdint.c,
- auth-password.c, auth-publickey.c, auth.c, auth.h, blacklist.c,
- blacklist.h, channel.c, channel.h, cipher.c, date.c, date.h,
- disconnect.c, fxp.c, fxp.h, kbdint.c, kex.c, keys.c, keys.h,
- keystore.c, keystore.h, mac.c, mod_sftp.h.in, msg.c, msg.h,
- packet.c, packet.h, rfc4716.c, scp.c, scp.h, service.c, 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.
+ * contrib/mod_sftp/packet.c: Missing return value.
-2012-02-15 15:38 castaglia
+2012-02-14 castaglia <castaglia>
- * contrib/mod_sftp/: kex.c:
- Fix minor issue pointed out by valgrind, where we were not
- tracking the length properly.
+ * 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-15 15:18 castaglia
+2012-02-14 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Forgot to update the copyright date, since this file was modified
- in 2012.
+ * contrib/mod_sftp/packet.c: Comment typo.
-2012-02-15 15:15 castaglia
+2012-02-10 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3743 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm: Updating the
+ TimeoutIdle test cases to use testcase-specific logging.
-2012-02-15 15:14 castaglia
+2012-02-10 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3743 - Random stalls/segfaults seen when transferring large
- files via SFTP.
+ * doc/modules/mod_auth.html: Adding description of MaxLoginAttempts
+ directive to mod_auth docs.
-2012-02-15 14:10 castaglia
+2012-02-10 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.
+ * 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-15 11:03 castaglia
+2012-02-10 castaglia <castaglia>
- * tests/api/: scoreboard.c, stubs.c:
- Fix unit tests to compile properly.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding regression
+ tests for Bug#3742.
-2012-02-14 16:31 castaglia
+2012-02-10 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Missing return value.
+ * 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-14 10:38 castaglia
+2012-02-10 castaglia <castaglia>
- * NEWS, src/netacl.c:
- Backport of fix for Bug#3749 to 1.3.4 branch.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Updating the main
+ mod_tls tests to use testcase-specific logging.
-2012-02-14 10:38 castaglia
+2012-02-09 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Adding testcase for
+ mod_ban's BanOnEvent ClientConnectRate functionality.
-2012-02-13 16:10 castaglia
+2012-02-09 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Comment typo.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Making sure that all
+ of the existing mod_ban testcases pass.
-2012-02-09 21:33 castaglia
+2012-02-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm:
- Updating the TimeoutIdle test cases to use testcase-specific
- logging.
+ * 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 19:18 castaglia
+2012-02-09 castaglia <castaglia>
- * doc/modules/mod_auth.html:
- Adding description of MaxLoginAttempts directive to mod_auth
- docs.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Updating mod_ban
+ testcases to use testcase-specific logging.
-2012-02-09 18:25 castaglia
+2012-02-09 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3742 to 1.3.4 branch.
+ * 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 18:25 castaglia
+2012-02-09 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.
+ * 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-09 18:14 castaglia
+2012-02-08 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression tests for Bug#3742.
+ * 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-09 18:14 castaglia
+2012-02-08 castaglia <castaglia>
- * tests/t/etc/modules/mod_tls/: bug3742-ca.pem, bug3742-client.pem:
+ * NEWS, RELEASE_NOTES, src/scoreboard.c, tests/api/scoreboard.c:
+ Bug#3701 - Modify ScoreboardFile directive to support disabling
+ scoreboarding.
- Adding some supporting certs used for testing Bug#3742.
+2012-02-06 castaglia <castaglia>
-2012-02-09 17:10 castaglia
+ * doc/modules/mod_ls.html: Updated mod_ls docs.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Updating the main mod_tls tests to use testcase-specific logging.
+2012-02-05 castaglia <castaglia>
-2012-02-09 11:37 castaglia
+ * NEWS, modules/mod_core.c: Bug#3745 - Reject PASV command if no
+ IPv4 address available.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Adding testcase for mod_ban's BanOnEvent ClientConnectRate
- functionality.
+2012-02-05 castaglia <castaglia>
-2012-02-09 10:11 castaglia
+ * modules/mod_core.c: More minor stylistic changes.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Making sure that all of the existing mod_ban testcases pass.
+2012-02-05 castaglia <castaglia>
-2012-02-09 10:08 castaglia
+ * modules/mod_core.c: More style changes; no functional change.
- * 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-05 castaglia <castaglia>
-2012-02-09 09:54 castaglia
+ * modules/mod_core.c: Clean up of some of the coding style; no
+ functional change.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Updating mod_ban testcases to use testcase-specific logging.
+2012-02-05 castaglia <castaglia>
-2012-02-08 22:38 castaglia
+ * src/proftpd.8.in: Bug#3748 - Update FILES section in proftpd(8)
+ man page. List the /etc/ftpusers file in the FILES section.
- * 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-03 castaglia <castaglia>
-2012-02-08 22:34 castaglia
+ * doc/modules/mod_facts.html: Added docs for FactsOptions directive.
- * 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-03 castaglia <castaglia>
-2012-02-07 19:26 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_facts.c: Bug#3747 - Support
+ option for displaying symlinks via MLSD using syntax preferred by
+ FileZilla.
- * doc/: modules/mod_core.html, howto/Scoreboard.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-03 castaglia <castaglia>
-2012-02-07 19:11 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Updating
+ ShowSymlinks regression tests to work properly on a Mac.
- * NEWS, RELEASE_NOTES, src/scoreboard.c, tests/api/scoreboard.c:
- Bug#3701 - Modify ScoreboardFile directive to support disabling
- scoreboarding.
+2012-02-03 castaglia <castaglia>
-2012-02-06 09:54 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).
- * doc/modules/mod_ls.html:
- Updated mod_ls docs.
+2012-02-03 castaglia <castaglia>
-2012-02-05 10:29 castaglia
+ * doc/modules/mod_facts.html: Minor update to the MLSD FAQs.
- * NEWS, modules/mod_core.c:
- Bug#3745 - Reject PASV command if no IPv4 address available.
+2012-02-02 castaglia <castaglia>
-2012-02-05 10:25 castaglia
+ * doc/howto/ListOptions.html: Update the ListOptions howto to
+ mention the LISTOnly, NLSTOnly, and NoErrorIfAbsent keywords.
- * modules/mod_core.c:
- More minor stylistic changes.
+2012-02-02 castaglia <castaglia>
-2012-02-05 10:08 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Supply regression
+ tests for the LISTOnly, NLSTOnly keywords for the ListOptions
+ directive (Bug#3746).
- * modules/mod_core.c:
- More style changes; no functional change.
+2012-02-02 castaglia <castaglia>
-2012-02-05 10:04 castaglia
+ * RELEASE_NOTES: Update release notes with stubs about the
+ ListOptions changes.
- * modules/mod_core.c:
- Clean up of some of the coding style; no functional change.
+2012-02-02 castaglia <castaglia>
-2012-02-05 09:39 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.
- * 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-01 castaglia <castaglia>
-2012-02-02 23:15 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm: Adding regression
+ tests for the new -1 ListOption added for Bug#3744.
- * doc/modules/mod_facts.html:
- Added docs for FactsOptions directive.
+2012-02-01 castaglia <castaglia>
-2012-02-02 23:02 castaglia
+ * NEWS, modules/mod_ls.c: Bug#3744 - Support ls(1) -1 option for
+ LIST command.
- * NEWS, RELEASE_NOTES, modules/mod_facts.c:
- Backported fix for Bug#3747 to 1.3.4 branch.
+2012-02-01 castaglia <castaglia>
-2012-02-02 23:00 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.
- * NEWS, RELEASE_NOTES, modules/mod_facts.c:
- Bug#3747 - Support option for displaying symlinks via MLSD using
- syntax preferred by FileZilla.
+2012-01-31 castaglia <castaglia>
-2012-02-02 22:56 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.
- * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm:
- Updating ShowSymlinks regression tests to work properly on a Mac.
+2012-01-27 castaglia <castaglia>
-2012-02-02 22:30 castaglia
+ * tests/api/scoreboard.c: Forgot to update unit tests to match
+ Scoreboard API change.
- * tests/: tests.pl, t/config/factsoptions.t,
- t/lib/ProFTPD/Tests/Config/FactsOptions.pm:
- Adding regression tests for the new FactsOptions directive
- (Bug#3747).
+2012-01-27 castaglia <castaglia>
-2012-02-02 20:50 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.
- * doc/modules/mod_facts.html:
- Minor update to the MLSD FAQs.
+2012-01-26 castaglia <castaglia>
-2012-02-01 16:40 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).
- * doc/howto/ListOptions.html:
- Update the ListOptions howto to mention the LISTOnly, NLSTOnly,
- and NoErrorIfAbsent keywords.
+2012-01-25 castaglia <castaglia>
-2012-02-01 16:30 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.
- * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm:
- Supply regression tests for the LISTOnly, NLSTOnly keywords for
- the ListOptions directive (Bug#3746).
+2012-01-25 castaglia <castaglia>
-2012-02-01 16:29 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm: Update the
+ ServerIdent test cases to use the testcase-specific logging.
- * RELEASE_NOTES:
- Update release notes with stubs about the ListOptions changes.
+2012-01-25 castaglia <castaglia>
-2012-02-01 16:28 castaglia
+ * doc/modules/mod_core.html: Add docs for the ServerIdent directive
+ to the mod_core documentation.
- * 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-01-25 castaglia <castaglia>
-2012-02-01 14:04 castaglia
+ * doc/contrib/mod_sftp.html: Updating mod_sftp docs with mention of
+ using ServerIdent.
- * tests/t/lib/ProFTPD/Tests/Config/ListOptions.pm:
- Adding regression tests for the new -1 ListOption added for
- Bug#3744.
+2012-01-25 castaglia <castaglia>
-2012-02-01 14:03 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.
- * NEWS, modules/mod_ls.c:
- Bug#3744 - Support ls(1) -1 option for LIST command.
+2012-01-25 castaglia <castaglia>
-2012-02-01 13:21 castaglia
+ * NEWS, lib/pr-syslog.c: Bug#3699 - ProFTPD crash on start up on Mac
+ OSX Lion with NLS enabled.
- * 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.
+2012-01-25 castaglia <castaglia>
- 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.
+ * configure: Updated configure.
-2012-01-30 16:23 castaglia
+2012-01-25 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.
+ * NEWS, config.h.in, configure.in: Bug#3718 - ftptop fails to build
+ on OpenSUSE.
-2012-01-26 17:16 castaglia
+2012-01-25 castaglia <castaglia>
- * tests/api/scoreboard.c:
- Forgot to update unit tests to match Scoreboard API change.
+ * RELEASE_NOTES: Update release notes, mentioning mod_sftp and the
+ ServerIdent directive.
-2012-01-26 17:02 castaglia
+2012-01-25 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding tests for
+ the ServerIdent directive and mod_sftp, for Bug#3739.
-2012-01-26 09:55 castaglia
+2012-01-25 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).
+ * 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-25 08:29 castaglia
+2012-01-23 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.
+ * 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.
- Avoid this confusion in the future, and simply store the parsed
- Boolean value in the config_rec as is.
+2012-01-23 castaglia <castaglia>
-2012-01-25 08:26 castaglia
+ * contrib/mod_tls.c: Bug#3738 - Fix the handling of SSL_shutdown()
+ return value so that shutdown errors are properly logged in TLSLog.
- * tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm:
- Update the ServerIdent test cases to use the testcase-specific
- logging.
+2012-01-20 castaglia <castaglia>
-2012-01-25 08:16 castaglia
+ * contrib/dist/rpm/proftpd.spec: Bug#3735 - RPM spec: proftpd-devel
+ package should require gcc and libtool.
- * doc/modules/mod_core.html:
- Add docs for the ServerIdent directive to the mod_core
- documentation.
+2012-01-20 castaglia <castaglia>
-2012-01-25 08:11 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.
- * doc/contrib/mod_sftp.html:
- Updating mod_sftp docs with mention of using ServerIdent.
+2012-01-17 castaglia <castaglia>
-2012-01-24 23:20 castaglia
+ * NEWS, modules/mod_facts.c: Bug#3734 - DirFakeUser/DirFakeGroup off
+ with name causes SIGSEGV for MLSD/MLST commands.
- * 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-17 castaglia <castaglia>
-2012-01-24 23:04 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Adding regression
+ tests for Bug#3734.
- * NEWS, lib/pr-syslog.c:
- Backported fix for Bug#3699 to 1.3.4 branch.
+2012-01-13 castaglia <castaglia>
-2012-01-24 23:03 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.
- * NEWS, lib/pr-syslog.c:
- Bug#3699 - ProFTPD crash on start up on Mac OSX Lion with NLS
- enabled.
+2012-01-09 castaglia <castaglia>
-2012-01-24 22:48 castaglia
+ * doc/contrib/mod_ban.html: Add mod_ban FAQ about BanOnEvent and
+ MaxLoginAttempts.
- * configure:
- Updated configure.
+2012-01-06 castaglia <castaglia>
-2012-01-24 22:47 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]".
- * NEWS, config.h.in, configure.in:
- Backported fix for Bug#3718 to 1.3.4 branch.
+2012-01-04 castaglia <castaglia>
-2012-01-24 22:46 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.
- * NEWS, config.h.in, configure.in:
- Bug#3718 - ftptop fails to build on OpenSUSE.
+2012-01-03 castaglia <castaglia>
-2012-01-24 22:27 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).
- * RELEASE_NOTES:
- Update release notes, mentioning mod_sftp and the ServerIdent
- directive.
+2012-01-03 castaglia <castaglia>
-2012-01-24 22:26 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding tests for the ServerIdent directive and mod_sftp, for
- Bug#3739.
+2012-01-02 castaglia <castaglia>
-2012-01-24 22:25 castaglia
+ * src/table.c: Adding some comments/notes about hashing to
+ src/table.c, for my future reference.
- * 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-02 castaglia <castaglia>
-2012-01-23 11:47 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).
- * 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-02 castaglia <castaglia>
-2012-01-22 17:54 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.
- * contrib/mod_tls.c:
- Backport fix for Bug#3738 to 1.3.4 branch.
+2011-12-29 castaglia <castaglia>
-2012-01-22 17:53 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.
- * contrib/mod_tls.c:
- Bug#3738 - Fix the handling of SSL_shutdown() return value so
- that shutdown errors are properly logged in TLSLog.
+2011-12-29 castaglia <castaglia>
-2012-01-19 19:04 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression
+ case for a second USERAUTH_REQUEST.
- * contrib/dist/rpm/proftpd.spec:
- Backporting fix for Bug#3735 to 1.3.4 branch.
+2011-12-29 castaglia <castaglia>
-2012-01-19 19:01 castaglia
+ * contrib/mod_sftp/packet.c: Properly ignore an USERAUTH_REQUEST
+ from a client which has already authenticated.
- * contrib/dist/rpm/proftpd.spec:
- Bug#3735 - RPM spec: proftpd-devel package should require gcc and
- libtool.
+2011-12-28 castaglia <castaglia>
-2012-01-19 18:04 castaglia
+ * contrib/mod_sftp/auth.c: Add better errno handling during SSH
+ authentication, so that the logged messages are more accurate.
- * 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.
+2011-12-22 castaglia <castaglia>
-2012-01-16 16:51 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.
- * NEWS, modules/mod_facts.c:
- Bug#3734 - DirFakeUser/DirFakeGroup off with name causes SIGSEGV
- for MLSD/MLST commands.
+2011-12-21 castaglia <castaglia>
-2012-01-16 16:40 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.
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm:
- Adding regression tests for Bug#3734.
+2011-12-21 castaglia <castaglia>
-2012-01-12 21:42 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.
- * 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.
+2011-12-21 castaglia <castaglia>
-2012-01-08 17:33 castaglia
+ * NEWS, src/wtmp.c: Bug#3728 - Build failure in wtmp.c on
+ Gentoo/FreeBSD on sparc.
- * doc/contrib/mod_ban.html:
- Add mod_ban FAQ about BanOnEvent and MaxLoginAttempts.
+2011-12-21 castaglia <castaglia>
-2012-01-06 10:09 castaglia
+ * NEWS: Mention that Bug#3729 was fixed.
- * 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]".
+2011-12-20 castaglia <castaglia>
-2012-01-05 09:23 castaglia
+ * src/filter.c: Include the filter pattern string in the Filter
+ trace messages.
- * contrib/.cvsignore:
- Tell CVS to ignore the generated contrib/Makefile.
+2011-12-20 castaglia <castaglia>
-2012-01-03 20:44 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Add
+ regression/reproduction recipe for using PathDenyFilter to block
+ uploads of any dot files.
- * 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.
+2011-12-20 castaglia <castaglia>
-2012-01-02 16:32 castaglia
+ * doc/howto/Filters.html: Add PathDenyFilter example for how to
+ block uploads of any/all dot files.
- * 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).
+2011-12-19 castaglia <castaglia>
-2012-01-02 16:30 castaglia
+ * configure: Updated configure.
- * src/: auth.c, memcache.c:
- Update the key hash callbacks used elsewhere in proftpd to take
- the additional random hash "seed" value into account.
+2011-12-19 castaglia <castaglia>
-2012-01-02 15:31 castaglia
+ * configure.in: In order to support C++ modules (Bug#3079), we need
+ to add configure-time checks for a C++ compiler.
- * src/table.c:
- Adding some comments/notes about hashing to src/table.c, for my
- future reference.
+2011-12-18 jwm <jwm>
-2012-01-02 15:21 castaglia
+ * README.LDAP, contrib/mod_ldap.c: git 9d4234fbd69: prevent segfault
+ when no user filters are specified
- * 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.
+2011-12-14 castaglia <castaglia>
- 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).
+ * doc/modules/mod_lang.html: Add a mod_lang FAQ about the list of
+ translations currently provided for proftpd.
-2012-01-02 15:04 castaglia
+2011-12-14 castaglia <castaglia>
- * include/table.h, src/table.c, tests/api/table.c:
- Fix some issues with ProFTPD'd pr_table_t handling.
+ * 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.
- 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.
+2011-12-14 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Added
+ regression test for Bug#3727.
- 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-14 castaglia <castaglia>
-2011-12-28 20:37 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.
- * 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-14 castaglia <castaglia>
-2011-12-28 20:36 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Updating
+ mod_wrap2_file regression tests to use testcase-specific logging.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Added regression case for a second USERAUTH_REQUEST.
+2011-12-14 castaglia <castaglia>
-2011-12-28 20:34 castaglia
+ * contrib/mod_copy.c: Updating mod_copy to use the renamed
+ cmd_rec.cmd_class struct member.
- * contrib/mod_sftp/packet.c:
- Properly ignore an USERAUTH_REQUEST from a client which has
- already authenticated.
+2011-12-13 castaglia <castaglia>
-2011-12-28 14:51 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.
- * contrib/mod_sftp/auth.c:
- Add better errno handling during SSH authentication, so that the
- logged messages are more accurate.
+2011-12-13 castaglia <castaglia>
-2011-12-21 16:53 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.
- * tests/: tests.pl, t/config/umask.t,
- t/lib/ProFTPD/Tests/Config/Umask.pm:
- Start working on regression tests for the Umask directive.
+2011-12-13 castaglia <castaglia>
-2011-12-20 21:17 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.
- * 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-13 castaglia <castaglia>
-2011-12-20 20:16 castaglia
+ * NEWS, contrib/mod_exec.c: Bug#3726 - mod_exec does not always
+ capture stdout/stderr output from executed command.
- * 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-13 castaglia <castaglia>
-2011-12-20 19:09 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Fix broken LIST
+ regression test which only runs with rootprivs.
- * NEWS, src/wtmp.c:
- Backported fix for Bug#3728 to 1.3.4 branch.
+2011-12-12 castaglia <castaglia>
-2011-12-20 18:58 castaglia
+ * contrib/mod_exec.c: Stupid typo.
- * NEWS, src/wtmp.c:
- Bug#3728 - Build failure in wtmp.c on Gentoo/FreeBSD on sparc.
+2011-12-12 castaglia <castaglia>
-2011-12-20 16:14 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).
- * NEWS, README.LDAP, contrib/mod_ldap.c:
- Backporting fix for Bug#3729 to 1.3.4 branch.
+2011-12-12 castaglia <castaglia>
-2011-12-20 16:13 castaglia
+ * contrib/mod_ban.c: Update mod_ban to use session.conn_class struct
+ member.
- * NEWS:
- Mention that Bug#3729 was fixed.
+2011-12-12 castaglia <castaglia>
-2011-12-20 14:56 castaglia
+ * contrib/mod_exec.c: Updated mod_exec to use session.conn_class
+ struct member.
- * src/filter.c:
- Include the filter pattern string in the Filter trace messages.
+2011-12-12 castaglia <castaglia>
-2011-12-20 13:40 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.
- * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm:
- Add regression/reproduction recipe for using PathDenyFilter to
- block uploads of any dot files.
+2011-12-12 castaglia <castaglia>
-2011-12-20 13:39 castaglia
+ * configure: Updated configure.
- * doc/howto/Filters.html:
- Add PathDenyFilter example for how to block uploads of any/all
- dot files.
+2011-12-11 castaglia <castaglia>
-2011-12-18 17:34 castaglia
+ * configure.in: Typo.
- * configure:
- Updated configure.
+2011-12-11 castaglia <castaglia>
-2011-12-18 17:31 castaglia
+ * configure: Updated configure.
- * configure.in:
- In order to support C++ modules (Bug#3079), we need to add
- configure-time checks for a C++ compiler.
+2011-12-11 castaglia <castaglia>
-2011-12-17 18:12 jwm
+ * NEWS, configure.in: Bug#3682 - Configure does not detect libiconv
+ under Gentoo FreeBSD.
- * contrib/mod_ldap.c, README.LDAP: git 9d4234fbd69: prevent
- segfault when no user filters are specified
+2011-12-11 castaglia <castaglia>
-2011-12-14 14:01 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.
- * doc/modules/mod_lang.html:
- Add a mod_lang FAQ about the list of translations currently
- provided for proftpd.
+2011-12-11 castaglia <castaglia>
-2011-12-14 13:45 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).
- * 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-11 castaglia <castaglia>
-2011-12-14 10:54 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).
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm:
- Added regression test for Bug#3727.
+2011-12-11 castaglia <castaglia>
-2011-12-14 10:52 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).
- * NEWS, contrib/mod_sftp/auth.c, contrib/mod_wrap2/mod_wrap2.c:
- Backport of fix for Bug#3727 to 1.3.4 branch.
+2011-12-10 castaglia <castaglia>
-2011-12-14 10:51 castaglia
+ * doc/contrib/mod_tls.html: Mention the TLSv1.1 and TLSv1.2 values
+ for the TLSProtocol directive in the mod_tls docs.
- * 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-10 castaglia <castaglia>
-2011-12-14 10:02 castaglia
+ * configure: Updated configure.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm:
- Updating mod_wrap2_file regression tests to use testcase-specific
- logging.
+2011-12-10 castaglia <castaglia>
-2011-12-13 16:57 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.
- * contrib/mod_copy.c:
- Updating mod_copy to use the renamed cmd_rec.cmd_class struct
- member.
+2011-12-10 castaglia <castaglia>
-2011-12-13 14:54 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).
- * 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-10 castaglia <castaglia>
-2011-12-13 14:48 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Add regression
+ tests for HideGroup and the NLST and MLSD commands.
- * 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-10 castaglia <castaglia>
-2011-12-13 13:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Updating the
+ HideGroup config regression tests to use testcase-specific logging.
- * 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-10 castaglia <castaglia>
-2011-12-13 13:33 castaglia
+ * doc/modules/mod_core.html: Adding descriptions for HideGroup,
+ HideNoAccess, and HideUser directives to the mod_core documentation.
- * NEWS, contrib/mod_exec.c:
- Backport of fix for Bug#3726 to 1.3.4 branch.
+2011-12-10 castaglia <castaglia>
-2011-12-13 13:32 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Adding
+ regression test for a <Directory> configuration posted in the
+ forums.
- * NEWS, contrib/mod_exec.c:
- Bug#3726 - mod_exec does not always capture stdout/stderr output
- from executed command.
+2011-12-10 castaglia <castaglia>
-2011-12-12 21:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Updating
+ <Directory>/<Limit> regression test cases to use testcase-specific
+ logging.
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Fix broken LIST regression test which only runs with rootprivs.
+2011-12-10 castaglia <castaglia>
-2011-12-12 11:22 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.
- * contrib/mod_exec.c:
- Stupid typo.
+2011-12-10 castaglia <castaglia>
-2011-12-12 11:20 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.
- * 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-10 castaglia <castaglia>
-2011-12-12 11:14 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).
- * contrib/mod_ban.c:
- Update mod_ban to use session.conn_class struct member.
+2011-12-10 castaglia <castaglia>
-2011-12-12 11:12 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.
- * contrib/mod_exec.c:
- Updated mod_exec to use session.conn_class struct member.
+2011-12-10 castaglia <castaglia>
-2011-12-11 20:23 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.
- * 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-09 castaglia <castaglia>
-2011-12-11 16:09 castaglia
+ * RELEASE_NOTES: Fill in a little more of the release notes, for
+ later fleshing out.
- * configure:
- Updated configure.
+2011-12-09 castaglia <castaglia>
-2011-12-11 15:41 castaglia
+ * doc/contrib/mod_ifsession.html: Add documentation for the new
+ <IfAuthenticated> mod_ifsession config section.
- * configure.in:
- Typo.
+2011-12-09 castaglia <castaglia>
-2011-12-11 11:51 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Updating test
+ cases to use testcase-specific logging. Adding regression test for
+ Bug#3629.
- * configure:
- Updated configure.
+2011-12-09 castaglia <castaglia>
-2011-12-11 11:49 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#3629 - Support
+ <IfAuthenticated> conditional config section.
- * NEWS, configure.in:
- Backported fix for Bug#3682 to 1.3.4 branch.
+2011-12-09 castaglia <castaglia>
-2011-12-11 11:48 castaglia
+ * doc/contrib/mod_sftp.html: Document the new SHA2 SSH2 digests
+ supported by the SFTPDigests directive.
- * NEWS, configure.in:
- Bug#3682 - Configure does not detect libiconv under Gentoo
- FreeBSD.
+2011-12-08 castaglia <castaglia>
-2011-12-10 19:36 castaglia
+ * contrib/mod_sftp/configure: Updating mod_sftp configure.
- * 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-08 castaglia <castaglia>
-2011-12-10 18:37 castaglia
+ * NEWS, contrib/mod_sftp/crypto.c: Bug#3686 - Support SHA2 digests
+ in mod_sftp.
- * 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-08 castaglia <castaglia>
-2011-12-10 18:33 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.
- * RELEASE_NOTES, contrib/mod_site_misc.c, 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/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-07 castaglia <castaglia>
-2011-12-10 18:14 castaglia
+ * src/inet.c: Remove extraneous space and period.
- * RELEASE_NOTES, contrib/mod_ifsession.c, contrib/mod_quotatab.c,
- contrib/mod_rewrite.c, contrib/mod_sql.c,
- contrib/mod_sftp/display.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-07 castaglia <castaglia>
-2011-12-10 13:51 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).
- * doc/contrib/mod_tls.html:
- Mention the TLSv1.1 and TLSv1.2 values for the TLSProtocol
- directive in the mod_tls docs.
+2011-12-06 castaglia <castaglia>
-2011-12-10 13:47 castaglia
+ * contrib/mod_sftp/auth.c: Make sure that the password data is
+ properly hidden with a static string for SFTP connections.
- * configure:
- Updated configure.
+2011-12-06 castaglia <castaglia>
-2011-12-10 13:41 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.
- * 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-06 castaglia <castaglia>
-2011-12-10 13:37 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Updating
+ ExtendedLog tests to use testcase-specific logging.
- * 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-06 castaglia <castaglia>
-2011-12-10 12:28 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.
- * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm:
- Add regression tests for HideGroup and the NLST and MLSD
- commands.
+2011-12-06 castaglia <castaglia>
-2011-12-10 12:07 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.
- * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm:
- Updating the HideGroup config regression tests to use
- testcase-specific logging.
+2011-12-06 castaglia <castaglia>
-2011-12-10 11:56 castaglia
+ * modules/mod_core.c: Comment typo.
- * doc/modules/mod_core.html:
- Adding descriptions for HideGroup, HideNoAccess, and HideUser
- directives to the mod_core documentation.
+2011-12-06 castaglia <castaglia>
-2011-12-09 22:06 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.
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Adding regression test for a <Directory> configuration posted in
- the forums.
+2011-12-06 castaglia <castaglia>
-2011-12-09 21:51 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.
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Updating <Directory>/<Limit> regression test cases to use
- testcase-specific logging.
+2011-12-06 castaglia <castaglia>
-2011-12-09 20:28 castaglia
+ * src/bindings.c: Make sure that the errno value is preserved
+ properly, in order to get all of the proper logging done.
- * 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-06 castaglia <castaglia>
-2011-12-09 16:14 castaglia
+ * doc/modules/mod_core.html: Adding docs for the AllowFilter and
+ DenyFilter directives to the mod_core docs.
- * 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-05 castaglia <castaglia>
-2011-12-09 16:12 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#3724 - Unloading mod_quotatab
+ causes segfault.
- * 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-05 castaglia <castaglia>
-2011-12-09 16:09 castaglia
+ * modules/mod_delay.c: Quell a few compiler warnings about unsigned
+ long vs size_t (see on FreeBSD).
- * contrib/mod_sftp/: channel.c, 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-04 castaglia <castaglia>
-2011-12-09 16:08 castaglia
+ * tests/api/str.c: Added API/unit test for the newly-added
+ pr_str_replace() function (from Bug#3721).
- * contrib/mod_sftp/: msg.c, 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-03 castaglia <castaglia>
-2011-12-08 18:03 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DenyFilter.pm: Added regression
+ test for the case-insensitive flag for the DenyFilter directive.
- * RELEASE_NOTES:
- Fill in a little more of the release notes, for later fleshing
- out.
+2011-12-03 castaglia <castaglia>
-2011-12-08 18:02 castaglia
+ * RELEASE_NOTES, modules/mod_core.c: Support the case-insensitive
+ filter flags for the AllowFilter and DenyFilter directives, too
+ (similar to Bug#3592).
- * doc/contrib/mod_ifsession.html:
- Add documentation for the new <IfAuthenticated> mod_ifsession
- config section.
+2011-12-03 castaglia <castaglia>
-2011-12-08 17:58 castaglia
+ * tests/t/config/denyfilter.t,
+ tests/t/lib/ProFTPD/Tests/Config/DenyFilter.pm, tests/tests.pl:
+ Start adding tests for the DenyFilter directive.
- * 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-03 castaglia <castaglia>
-2011-12-08 17:58 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm: Updating the
+ PathDenyFilter tests to use the testcase-specific logging.
- * NEWS, contrib/mod_ifsession.c:
- Bug#3629 - Support <IfAuthenticated> conditional config section.
+2011-12-03 castaglia <castaglia>
-2011-12-08 16:02 castaglia
+ * RELEASE_NOTES, doc/contrib/mod_rewrite.html: Adding documentation
+ for the new RewriteMaxReplace directive, added for Bug#3721.
- * doc/contrib/mod_sftp.html:
- Document the new SHA2 SSH2 digests supported by the SFTPDigests
- directive.
+2011-12-03 castaglia <castaglia>
-2011-12-08 15:57 castaglia
+ * doc/modules/mod_auth.html: Adding module-specific doc description
+ for the RootRevoke directive to the mod_auth docs.
- * contrib/mod_sftp/configure:
- Updating mod_sftp configure.
+2011-12-03 castaglia <castaglia>
-2011-12-08 15:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding
+ regression tests for Bug#3721.
- * NEWS, contrib/mod_sftp/crypto.c:
- Bug#3686 - Support SHA2 digests in mod_sftp.
+2011-12-03 castaglia <castaglia>
-2011-12-08 15:51 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).
- * 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-03 castaglia <castaglia>
-2011-12-08 13:45 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.
- * contrib/mod_sftp/auth.c:
- Backporting fix from trunk, making sure that %r is interpolated
- properly for PASS commands when handling SSH2 connections.
+2011-12-01 castaglia <castaglia>
-2011-12-06 17:01 castaglia
+ * RELEASE_NOTES: Minor update to the release notes, getting them
+ ready for the 1.3.5 release cycle.
- * src/inet.c:
- Remove extraneous space and period.
+2011-12-01 castaglia <castaglia>
-2011-12-06 16:54 castaglia
+ * modules/mod_core.c: Remove the deprecated DisplayGoAway directive
+ (Bug#3443).
- * 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-01 castaglia <castaglia>
-2011-12-06 15:08 castaglia
+ * NEWS, modules/mod_memcache.c: Bug#3723 - mod_memcache segfault on
+ server restart.
- * contrib/mod_sftp/auth.c:
- Make sure that the password data is properly hidden with a static
- string for SFTP connections.
+2011-11-30 castaglia <castaglia>
-2011-12-06 15:07 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.
- * 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-11-30 castaglia <castaglia>
-2011-12-06 14:36 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Updating the
+ mod_rewrite testcase coding style to use the new testcase-specific
+ logging.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Updating ExtendedLog tests to use testcase-specific logging.
+2011-11-23 castaglia <castaglia>
-2011-12-06 11:45 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.
- * tests/t/lib/ProFTPD/Tests/Commands/: RETR.pm, STOR.pm, 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-11-21 castaglia <castaglia>
-2011-12-06 11:40 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)).
- * tests/: tests.pl, t/config/rootrevoke.t,
- t/lib/ProFTPD/Tests/Config/RootRevoke.pm:
- Start adding unit/regression tests for the RootRevoke directive.
+2011-11-21 castaglia <castaglia>
-2011-12-06 11:39 castaglia
+ * NEWS, modules/mod_ls.c: Bug#3719 - LIST -R can loop endlessly if
+ bad directory symlink exists.
- * modules/mod_core.c:
- Comment typo.
+2011-11-21 castaglia <castaglia>
-2011-12-06 10:13 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding regression test
+ for Bug#3719.
- * 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-11-19 castaglia <castaglia>
-2011-12-05 19:34 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.
- * 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-11-19 castaglia <castaglia>
-2011-12-05 17:08 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.
- * src/bindings.c:
- Make sure that the errno value is preserved properly, in order to
- get all of the proper logging done.
+2011-11-19 castaglia <castaglia>
-2011-12-05 16:07 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.
- * doc/modules/mod_core.html:
- Adding docs for the AllowFilter and DenyFilter directives to the
- mod_core docs.
+2011-11-19 castaglia <castaglia>
-2011-12-05 11:57 castaglia
+ * src/proctitle.c: Fix compiler warning about mixing code and
+ declarations (hard to tell, based on the nasty ifdefs in the
+ proctitle code).
- * NEWS, contrib/mod_quotatab.c:
- Backporting fix for Bug#3724 to 1.3.4 branch.
+2011-11-19 castaglia <castaglia>
-2011-12-05 11:57 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.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3724 - Unloading mod_quotatab causes segfault.
+2011-11-19 castaglia <castaglia>
-2011-12-04 16:01 castaglia
+ * lib/tpl.c: Fixing some warnings that gcc's -Wshorten-64-to-32 flag
+ picked up.
- * modules/mod_delay.c:
- Quell a few compiler warnings about unsigned long vs size_t (see
- on FreeBSD).
+2011-11-18 jwm <jwm>
-2011-12-04 14:19 castaglia
+ * README.LDAP: latest mod_ldap README
- * tests/api/str.c:
- Added API/unit test for the newly-added pr_str_replace() function
- (from Bug#3721).
+2011-11-18 jwm <jwm>
-2011-12-03 12:24 castaglia
+ * contrib/mod_ldap.c: this should have been labeled 2.9.1
- * tests/t/lib/ProFTPD/Tests/Config/DenyFilter.pm:
- Added regression test for the case-insensitive flag for the
- DenyFilter directive.
+2011-11-18 castaglia <castaglia>
-2011-12-03 12:23 castaglia
+ * src/str.c: A variable is needed, regardless of whether strlcat(3)
+ is present or not.
- * RELEASE_NOTES, modules/mod_core.c:
- Support the case-insensitive filter flags for the AllowFilter and
- DenyFilter directives, too (similar to Bug#3592).
+2011-11-18 castaglia <castaglia>
-2011-12-03 12:12 castaglia
+ * configure: Updated configure.
- * tests/: tests.pl, t/config/denyfilter.t,
- t/lib/ProFTPD/Tests/Config/DenyFilter.pm:
- Start adding tests for the DenyFilter directive.
+2011-11-18 castaglia <castaglia>
-2011-12-03 11:43 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.
- * tests/t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm:
- Updating the PathDenyFilter tests to use the testcase-specific
- logging.
+2011-11-17 castaglia <castaglia>
-2011-12-03 11:29 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.
- * RELEASE_NOTES, doc/contrib/mod_rewrite.html:
- Adding documentation for the new RewriteMaxReplace directive,
- added for Bug#3721.
+2011-11-17 castaglia <castaglia>
-2011-12-03 10:08 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.
- * doc/modules/mod_auth.html:
- Adding module-specific doc description for the RootRevoke
- directive to the mod_auth docs.
+2011-11-17 castaglia <castaglia>
-2011-12-02 17:49 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Adding regression tests for Bug#3721.
+2011-11-17 castaglia <castaglia>
-2011-12-02 17:47 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.
- * 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-11-17 castaglia <castaglia>
-2011-12-02 17:46 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.
- * 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-11-17 castaglia <castaglia>
-2011-12-01 08:38 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.
- * RELEASE_NOTES:
- Minor update to the release notes, getting them ready for the
- 1.3.5 release cycle.
+2011-11-17 castaglia <castaglia>
-2011-12-01 07:22 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm: Updating EPSV tests to
+ use testcase-specific logging.
- * modules/mod_core.c:
- Remove the deprecated DisplayGoAway directive (Bug#3443).
+2011-11-17 castaglia <castaglia>
-2011-11-30 16:58 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/PASV.pm: Update PASV tests to
+ use the testcase-specific logging.
- * NEWS, modules/mod_memcache.c:
- Backport of fix for Bug#3723 to 1.3.4 branch.
+2011-11-17 castaglia <castaglia>
-2011-11-30 16:57 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logins.pm: Update the login tests to use
+ the testcase-specific logging.
- * NEWS, modules/mod_memcache.c:
- Bug#3723 - mod_memcache segfault on server restart.
+2011-11-17 castaglia <castaglia>
-2011-11-30 07:24 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm: Update the SITE
+ CHMOD test to log its fatal exception in the testcase log.
- * 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-17 castaglia <castaglia>
-2011-11-29 21:30 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.
- * 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-17 castaglia <castaglia>
-2011-11-23 10:04 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.
- * NEWS, contrib/mod_deflate.c, contrib/mod_exec.c,
- contrib/mod_quotatab.c, contrib/mod_radius.c, contrib/mod_sql.c,
- contrib/mod_tls.c, contrib/mod_sftp/mod_sftp.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-17 castaglia <castaglia>
-2011-11-21 14:24 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Update the PORT tests
+ to pass along the fatal exception for logging.
- * 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-17 castaglia <castaglia>
-2011-11-21 13:59 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.
- * NEWS, modules/mod_ls.c:
- Backport of fix for Bug#3719 to 1.3.4 branch.
+2011-11-17 castaglia <castaglia>
-2011-11-21 13:58 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Updated STOR tests to
+ use testcase-specific logging.
- * NEWS, modules/mod_ls.c:
- Bug#3719 - LIST -R can loop endlessly if bad directory symlink
- exists.
+2011-11-17 castaglia <castaglia>
-2011-11-21 13:49 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Updated RETR tests to
+ use testcase-specific logging.
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Adding regression test for Bug#3719.
+2011-11-17 castaglia <castaglia>
-2011-11-18 19:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Updated STOU tests to
+ use testcase-specific logging.
- * contrib/mod_sftp/: blacklist.c, fxp.c, keys.c, scp.c:
- Fixing up a few more places where -Wshorten-64-to-32 warned about
- implicit conversions.
+2011-11-17 castaglia <castaglia>
-2011-11-18 18:54 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Update LIST tests to
+ use testcase-specific logging.
- * 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-17 castaglia <castaglia>
-2011-11-18 18:49 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Update APPE tests to
+ use testcase-specific logging.
- * 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-17 castaglia <castaglia>
-2011-11-18 18:44 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Update NLST tests to
+ use testcase-specific logging.
- * 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-17 castaglia <castaglia>
-2011-11-18 18:40 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/STAT.pm: Update STAT tests to
+ use testcase-specific logging.
- * 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-17 castaglia <castaglia>
-2011-11-18 18:13 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm: Updating EPRT tests to
+ use testcase-specific logging.
- * lib/tpl.c:
- Fixing some warnings that gcc's -Wshorten-64-to-32 flag picked
- up.
+2011-11-17 castaglia <castaglia>
-2011-11-18 16:16 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Updated ABOR tests to
+ use testcase-specific logging.
- * contrib/mod_ldap.c:
- Updating mod_ldap version identifier.
+2011-11-17 castaglia <castaglia>
-2011-11-18 15:03 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.
- * README.LDAP:
- Updating LDAP README in the 1.3.4 branch, too.
+2011-11-17 castaglia <castaglia>
-2011-11-18 09:35 jwm
+ * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Updating MLSD tests to
+ use testcase-specific logging.
- * README.LDAP: latest mod_ldap README
+2011-11-17 castaglia <castaglia>
-2011-11-18 09:34 jwm
+ * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Updating MLST tests to
+ use testcase-specific logging.
- * contrib/mod_ldap.c: this should have been labeled 2.9.1
+2011-11-17 castaglia <castaglia>
-2011-11-17 21:21 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm: Updated MFMT tests to
+ use the new testcase-specific logging.
- * src/str.c:
- A variable is needed, regardless of whether strlcat(3) is present
- or not.
+2011-11-17 castaglia <castaglia>
-2011-11-17 21:18 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm: Updating the MFF tests
+ to use the testcase-specific logging.
- * configure:
- Updated configure.
+2011-11-17 castaglia <castaglia>
-2011-11-17 21:06 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm: Updating SITE
+ CHMOD test to use the new testcase-specific logging.
- * configure.in, config.h.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>
-2011-11-17 15:40 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.
- * NEWS, contrib/mod_tls.c, contrib/mod_sftp/keys.c,
- lib/pr-syslog.c, lib/pwgrent.c, modules/mod_auth_file.c,
- modules/mod_ctrls.c, src/ctrls.c, utils/ftptop.c:
- Backport of fix for Bug#3717 to 1.3.4 branch.
+2011-11-17 castaglia <castaglia>
-2011-11-17 15:40 castaglia
+ * tests/Makefile.in: Forgot to update the tests/Makefile to use the
+ renamed tests.pl command-line option.
- * NEWS, contrib/mod_tls.c, contrib/mod_sftp/keys.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.
+2011-11-17 castaglia <castaglia>
- Replace all occurrences of strncpy(3) with our own sstrncpy(), to
- avoid any gcc traps/issues about using that function.
+ * 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 15:33 castaglia
+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.
+ * 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-17 15:31 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: HELP.pm, QUIT.pm, REST.pm,
- RNFR.pm, RNTO.pm:
- Updating the rest of the FTP command tests to use
- testcase-specific logging.
+ * NEWS, modules/mod_facts.c: Bug#3715 - MLSD/MLST fail when
+ "DirFakeUser off" or "DirFakeGroup off" used.
-2011-11-17 15:07 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: ALLO.pm, FEAT.pm, MDTM.pm,
- MODE.pm, NOOP.pm, SIZE.pm, STRU.pm:
- Updating more tests to use testcase-specific logging.
+ * contrib/mod_load/.cvsignore: More auto-generated files to be
+ ignored by CVS.
-2011-11-17 15:01 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: CDUP.pm, DELE.pm, MKD.pm,
- RMD.pm, SYST.pm, TYPE.pm:
- Updating more tests to use the testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm,
+ tests/t/lib/ProFTPD/Tests/Config/DirFakeUser.pm: Adding regression
+ tests for Bug#3715.
-2011-11-17 14:54 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: CWD.pm, PASS.pm, PWD.pm,
- USER.pm:
- Updating tests to use the testcase-specific logging.
+ * 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-17 14:48 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/EPSV.pm:
- Updating EPSV tests to use testcase-specific logging.
+ * 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-17 14:46 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/PASV.pm:
- Update PASV tests to use the testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Updating MLST test
+ cases to hopefully pass better on my Mac OSX machine.
-2011-11-17 14:44 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Update the login tests to use the testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Adding a regression
+ test for Bug#3714.
-2011-11-17 14:40 castaglia
+2011-11-16 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.
+ * utils/ftpwho.c: Quell cppcheck warning about a memory leak.
-2011-11-17 14:38 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: ABOR.pm, APPE.pm, EPRT.pm,
- LIST.pm, NLST.pm, RETR.pm, STAT.pm, STOR.pm, STOU.pm:
- Updating the tests to log the exception in the testcase log.
+ * 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-17 14:27 castaglia
+2011-11-16 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.
+ * 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-17 14:02 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm:
- Update the PORT tests to pass along the fatal exception for
- logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Minor updates to the
+ NLST unit tests.
-2011-11-17 14:01 castaglia
+2011-11-16 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.
+ * 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-17 10:36 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm:
- Updated STOR tests to use testcase-specific logging.
+ * NEWS, src/cmd.c, src/main.c: Bug#3714 - ftpwho/ftptop are not
+ showing command arguments (e.g. downloaded file name).
-2011-11-17 10:25 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Updated RETR tests to use testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Making some of the
+ PORT tests a little more resilient.
-2011-11-17 10:22 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm:
- Updated STOU tests to use testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Update DELE unit tests
+ to run better on MacOSX.
-2011-11-17 10:19 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Update LIST tests to use testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Updating RMD tests to
+ hopefully pass better on my MacOSX machine.
-2011-11-17 10:13 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm:
- Update APPE tests to use testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm: Updating MKD tests to
+ hopefully pass better on my MacOSX machine.
-2011-11-17 10:09 castaglia
+2011-11-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm:
- Update NLST tests to use testcase-specific logging.
+ * tests/t/lib/ProFTPD/Tests/Commands/PWD.pm: Fixing the PWD tests so
+ that they work properly on MacOSX.
-2011-11-17 10:04 castaglia
+2011-11-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/STAT.pm:
- Update STAT tests to use testcase-specific logging.
+ * NEWS, src/log.c: Bug#3646 - Debug logging to stderr should include
+ timestamps and PID.
-2011-11-17 10:02 castaglia
+2011-11-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/EPRT.pm:
- Updating EPRT tests to use testcase-specific logging.
+ * doc/contrib/mod_quotatab.html: Adding in missing "Context"
+ descriptions for some of the mod_quotatab directives.
-2011-11-17 09:58 castaglia
+2011-11-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- Updated ABOR tests to use testcase-specific logging.
+ * contrib/.cvsignore: Ignore the generated Makefile.
-2011-11-17 09:55 castaglia
+2011-11-15 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.
+ * doc/modules/mod_core.html: Missing <br> tag.
-2011-11-17 09:53 castaglia
+2011-11-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm:
- Updating MLSD tests to use testcase-specific logging.
+ * doc/modules/mod_core.html: Missing closing </code> tags.
-2011-11-17 09:48 castaglia
+2011-11-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm:
- Updating MLST tests to use testcase-specific logging.
+ * src/inet.c: Use the IPV6_TCLASS value for IPv6 connections for
+ setting the Type-Of-Service (TOS) bits, where available.
-2011-11-17 09:43 castaglia
+2011-11-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm:
- Updated MFMT tests to use the new testcase-specific logging.
+ * 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-17 09:39 castaglia
+2011-11-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MFF.pm:
- Updating the MFF tests to use the testcase-specific logging.
+ * NEWS, contrib/mod_tls.c: Bug#3713 - mod_tls cannot be compiled
+ using Openssl 0.9.6.
-2011-11-17 09:37 castaglia
+2011-11-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm:
- Updating SITE CHMOD test to use the new testcase-specific
- logging.
+ * contrib/dist/rpm/proftpd.spec: Updated .spec file. Have I
+ mentioned how much I dislike rpmbuild and .spec file
+ "idiosyncrasies"?
-2011-11-17 09:32 castaglia
+2011-11-10 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.
+ * NEWS: Bug#3712 - mod_wrap2/mod_load build errors: missing
+ config.h. (Patches committed earlier today.)
-2011-11-16 17:56 castaglia
+2011-11-10 castaglia <castaglia>
- * tests/Makefile.in:
- Forgot to update the tests/Makefile to use the renamed tests.pl
- command-line option.
+ * include/version.h: Updated trunk version in CVS.
-2011-11-16 17:49 castaglia
+2011-11-10 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.
+ * 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-16 17:47 castaglia
+2011-11-10 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'.
+ * contrib/dist/rpm/proftpd.spec: Trying to fix the
+ release_cand_version macro in the .spec file.
-2011-11-16 15:50 castaglia
+2011-11-10 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Backporting fix for Bug#3715 to 1.3.4 branch.
+ * contrib/dist/rpm/xinetd: Fixed comment in xinetd config file.
-2011-11-16 15:49 castaglia
+2011-11-09 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Bug#3715 - MLSD/MLST fail when "DirFakeUser off" or "DirFakeGroup
- off" used.
+ * ChangeLog: Updated ChangeLog.
-2011-11-16 15:48 castaglia
+2011-11-09 castaglia <castaglia>
- * contrib/mod_load/.cvsignore:
- More auto-generated files to be ignored by CVS.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Updating for
+ 1.3.4 release.
-2011-11-16 15:41 castaglia
+2011-11-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/: DirFakeGroup.pm,
- DirFakeUser.pm:
- Adding regression tests for Bug#3715.
+ * NEWS, RELEASE_NOTES: Updating NEWS, release notes, getting ready
+ for release.
-2011-11-16 15:30 castaglia
+2011-11-09 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.
+ * RELEASE_NOTES: Minor formatting consistency fix.
-2011-11-16 15:22 castaglia
+2011-11-09 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).
+ * RELEASE_NOTES: Updating release notes.
-2011-11-16 15:15 castaglia
+2011-11-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MLST.pm:
- Updating MLST test cases to hopefully pass better on my Mac OSX
- machine.
+ * NEWS, src/main.c: Bug#3711 - Response pool use-after-free memory
+ corruption error.
-2011-11-16 14:42 castaglia
+2011-11-08 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm:
- Adding a regression test for Bug#3714.
+ * tests/api/response.c: Adding more unit tests for the Response API,
+ including a demonstration of Bug#3711.
-2011-11-16 14:30 castaglia
+2011-11-08 castaglia <castaglia>
- * utils/ftpwho.c:
- Quell cppcheck warning about a memory leak.
+ * contrib/dist/rpm/xinetd: Updating the xinetd config file for the
+ RPM package, as per Bug#3640.
-2011-11-16 13:59 castaglia
+2011-11-07 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.
+ * RELEASE_NOTES: Updated release notes to mention the RPM/.spec
+ changes.
-2011-11-16 13:55 castaglia
+2011-11-07 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).
+ * 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-16 13:35 castaglia
+2011-11-07 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm:
- Minor updates to the NLST unit tests.
+ * 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-16 13:34 castaglia
+2011-11-06 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.
+ * contrib/mod_load/configure: Updated mod_load configure.
-2011-11-16 12:00 castaglia
+2011-11-06 castaglia <castaglia>
- * NEWS, src/cmd.c, src/main.c:
- Backport of fix for Bug#3714 to 1.3.4 branch.
+ * .cvsignore: Ignore the auto-generated module-libs.txt file.
-2011-11-16 12:00 castaglia
+2011-11-06 castaglia <castaglia>
- * NEWS, src/cmd.c, src/main.c:
- Bug#3714 - ftpwho/ftptop are not showing command arguments (e.g.
- downloaded file name).
+ * 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-15 17:24 castaglia
+2011-11-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm:
- Making some of the PORT tests a little more resilient.
+ * contrib/mod_wrap2/configure: Updated mod_wrap2 configure.
-2011-11-15 17:19 castaglia
+2011-11-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm:
- Update DELE unit tests to run better on MacOSX.
+ * 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-15 17:13 castaglia
+2011-11-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm:
- Updating RMD tests to hopefully pass better on my MacOSX machine.
+ * 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-15 17:11 castaglia
+2011-11-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MKD.pm:
- Updating MKD tests to hopefully pass better on my MacOSX machine.
+ * 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-15 17:00 castaglia
+2011-11-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/PWD.pm:
- Fixing the PWD tests so that they work properly on MacOSX.
+ * 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-15 14:20 castaglia
+2011-11-01 castaglia <castaglia>
- * NEWS, src/log.c:
- Bug#3646 - Debug logging to stderr should include timestamps and
- PID.
+ * RELEASE_NOTES: Updated release notes.
-2011-11-15 13:10 castaglia
+2011-11-01 castaglia <castaglia>
- * doc/contrib/mod_quotatab.html:
- Adding in missing "Context" descriptions for some of the
- mod_quotatab directives.
+ * configure: Updated configure.
-2011-11-15 11:12 castaglia
+2011-11-01 castaglia <castaglia>
- * contrib/.cvsignore:
- Ignore the generated Makefile.
+ * configure.in, m4/proftpd.m4: Start tweaking the configure script
+ to work better in cross-compiling situations.
-2011-11-15 08:13 castaglia
+2011-10-31 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Missing <br> tag.
+ * tests/Makefile.in: Make sure to build the response unit tests, and
+ include them in the api-tests binary.
-2011-11-15 08:12 castaglia
+2011-10-31 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Missing closing </code> tags.
+ * 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-11-14 14:13 castaglia
+2011-10-24 castaglia <castaglia>
- * src/inet.c:
- Use the IPV6_TCLASS value for IPv6 connections for setting the
- Type-Of-Service (TOS) bits, where available.
+ * 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-11-13 18:53 castaglia
+2011-10-24 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.
+ * 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-11-11 15:14 castaglia
+2011-10-24 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3713 - mod_tls cannot be compiled using Openssl 0.9.6.
+ * 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-11-11 10:19 castaglia
+2011-10-18 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Try to fix the broken .spec file (broken because rpmbuild doesn't
- understand basic Unix config file formats, apparently).
+ * doc/contrib/mod_sftp.html: Mention that mod_sftp does not honor
+ the ListOptions directive.
-2011-11-11 10:18 castaglia
+2011-10-17 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Updated .spec file. Have I mentioned how much I dislike rpmbuild
- and .spec file "idiosyncrasies"?
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Adding
+ mod_rewrite regression test for rewriting backslashes to slashes.
-2011-11-11 10:00 castaglia
+2011-10-17 castaglia <castaglia>
- * include/version.h:
- Updating version for CVS.
+ * doc/howto/Rewrite.html: Adding new mod_rewrite example, for
+ converting backslashes to slashes.
-2011-11-11 09:59 castaglia
+2011-10-13 castaglia <castaglia>
- * RELEASE_NOTES:
- Adding the CVE identifier for Bug#3711 to the release notes, for
- future reference.
+ * 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-11-11 09:27 castaglia
+2011-10-12 castaglia <castaglia>
- * ChangeLog:
- Updating ChangeLog.
+ * doc/contrib/mod_sftp.html: Updated SFTPOptions documentation to
+ mention new IgnoreSFTPSetTimes option (Bug#3706).
-2011-11-11 09:24 castaglia
+2011-10-12 castaglia <castaglia>
- * RELEASE_NOTES, contrib/dist/rpm/proftpd.spec, include/version.h,
- NEWS:
- Preparing to release 1.3.4a.
+ * 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-11-10 15:51 castaglia
+2011-10-10 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes.
+ * NEWS, RELEASE_NOTES: Fuller description in NEWS for Bug#3704, and
+ mention the new TLSOption in the release notes.
-2011-11-10 15:51 castaglia
+2011-10-10 castaglia <castaglia>
- * NEWS:
- Bug#3712 - mod_wrap2/mod_load build errors: missing config.h.
- (Patches committed earlier today.)
+ * doc/contrib/mod_tls.html: Documenting the new NoEmptyFragments
+ TLSOption.
-2011-11-10 09:41 castaglia
+2011-10-10 castaglia <castaglia>
- * include/version.h:
- Updated trunk version in CVS.
+ * NEWS, contrib/mod_tls.c: Bug#3704 - Enable OpenSSL countermeasure
+ against SSLv3/TLSv1 BEAST attacks.
-2011-11-10 09:13 castaglia
+2011-10-06 castaglia <castaglia>
- * contrib/: mod_load/Makefile.in, mod_wrap2/Makefile.in:
- Fixing the Makefiles for mod_load and mod_wrap2.
+ * configure: Updated configure for Bug#3192.
-2011-11-10 09:12 castaglia
+2011-10-06 castaglia <castaglia>
- * contrib/: mod_load/Makefile.in, 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.
+ * NEWS, config.h.in, configure.in, contrib/mod_sql_postgres.c:
+ Bug#3192 - PQescapeStringConn() needs a better check.
-2011-11-10 08:43 castaglia
+2011-10-06 castaglia <castaglia>
- * contrib/dist/rpm/: proftpd.spec:
- Trying to fix the release_cand_version macro in the .spec file.
+ * configure: Updated configure for Bug#3669.
-2011-11-10 08:10 castaglia
+2011-10-06 castaglia <castaglia>
- * contrib/dist/rpm/xinetd:
- Fixed comment in xinetd config file.
+ * 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-11-10 08:08 castaglia
+2011-10-06 castaglia <castaglia>
- * contrib/dist/rpm/xinetd:
- Fixed comment in xinetd.
+ * configure: Updated configure for Bug#3702.
-2011-11-09 14:39 castaglia
+2011-10-06 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating for 1.3.3g release.
+ * NEWS, configure.in: Bug#3702 - ProFTPD with mod_sql_mysql dies of
+ "Alarm clock" on FreeBSD.
-2011-11-09 14:37 castaglia
+2011-10-04 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * 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-11-09 14:35 castaglia
+2011-10-04 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating for 1.3.4 release.
+ * 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-11-09 09:47 castaglia
+2011-09-29 castaglia <castaglia>
- * NEWS:
- Updating NEWS, getting ready for release.
+ * contrib/mod_sftp/date.c: Bug#3650 - Update the FSF address.
-2011-11-09 09:47 castaglia
+2011-09-27 castaglia <castaglia>
- * NEWS, RELEASE_NOTES:
- Updating NEWS, release notes, getting ready for release.
+ * 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-11-09 09:40 castaglia
+2011-09-26 castaglia <castaglia>
- * RELEASE_NOTES:
- Minor formatting consistency fix.
+ * include/version.h: Updated version for CVS status.
-2011-11-09 09:40 castaglia
+2011-09-26 castaglia <castaglia>
- * RELEASE_NOTES:
- Updated release notes.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Update the
+ versions for RC3.
-2011-11-09 09:36 castaglia
+2011-09-26 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes.
+ * NEWS: Update NEWS with the release date.
-2011-11-09 09:34 castaglia
+2011-09-26 castaglia <castaglia>
- * NEWS, src/main.c:
- Backport of fix for Bug#3711 to 1.3.3 branch.
+ * ChangeLog: Updated ChangeLog.
-2011-11-09 09:32 castaglia
+2011-09-26 castaglia <castaglia>
- * NEWS, src/main.c:
- Bug#3711 - Response pool use-after-free memory corruption error.
+ * RELEASE_NOTES: Updated release notes.
-2011-11-08 11:03 castaglia
+2011-09-26 castaglia <castaglia>
- * tests/api/response.c:
- Adding more unit tests for the Response API, including a
- demonstration of Bug#3711.
+ * 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-11-08 10:20 castaglia
+2011-09-25 castaglia <castaglia>
- * contrib/dist/rpm/xinetd:
- Updating the xinetd config file for the RPM package, as per
- Bug#3640.
+ * 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-11-07 14:42 castaglia
+2011-09-24 castaglia <castaglia>
- * RELEASE_NOTES:
- Updated release notes to mention the RPM/.spec changes.
+ * 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-11-07 14:41 castaglia
+2011-09-24 castaglia <castaglia>
- * contrib/dist/rpm/: basic-pam.conf, proftpd.spec:
- More updates for Bug#3640, reworking the proftpd.spec file and
- related config files.
+ * 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-11-07 14:25 castaglia
+2011-09-24 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".
+ * src/main.c: More tricks to preserve the errno value through the
+ command dispatch mechanism.
- This involves a fairly large reworking of the .spec file, and
- adding new files expected by the .spec file.
+2011-09-24 castaglia <castaglia>
-2011-11-06 14:25 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.
- * contrib/mod_load/configure:
- Updated mod_load configure.
+2011-09-24 castaglia <castaglia>
-2011-11-06 14:19 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Fixing
+ broken unit tests.
- * .cvsignore:
- Ignore the auto-generated module-libs.txt file.
+2011-09-24 castaglia <castaglia>
-2011-11-06 14:16 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.
- * contrib/mod_load/: Makefile.in, configure.in, mod_load.c,
- mod_load.c.in:
- Updating the mod_load configure/Makefiles to use the
- $(MODULE_LIBS_FILE) mechanism.
+2011-09-24 castaglia <castaglia>
-2011-11-06 13:58 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).
- * contrib/mod_wrap2/configure:
- Updated mod_wrap2 configure.
+2011-09-24 castaglia <castaglia>
-2011-11-06 13:56 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix broken
+ mod_sql_sqlite unit tests.
- * contrib/mod_wrap2/: Makefile.in, configure.in, mod_wrap2.c,
- 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-09-24 castaglia <castaglia>
-2011-11-06 13:37 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Relax some of
+ the heuristics, allowing some of the unit tests to pass more
+ regularly.
- * 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.
+2011-09-24 castaglia <castaglia>
- 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.
+ * contrib/mod_rewrite.c: Fix a regression in the RewriteHome
+ feature, where it wasn't working at all.
- I'll be updating the mod_wrap2 configure/Makefile files to use
- this mechanism shortly.
+2011-09-24 castaglia <castaglia>
-2011-11-05 16:01 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm: Minor style
+ updates; no functional change.
- * 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-09-24 castaglia <castaglia>
-2011-11-03 10:12 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Expect to
+ handle a "File too large" error response as well in these unit
+ tests.
- * 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-09-24 castaglia <castaglia>
-2011-11-01 07:04 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm: Fix broken unit
+ test.
- * RELEASE_NOTES:
- Updated release notes.
+2011-09-24 castaglia <castaglia>
-2011-10-31 23:16 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Add a different
+ expected error message, fixing the unit test on a Linux system.
- * configure:
- Updated configure.
+2011-09-24 castaglia <castaglia>
-2011-10-31 23:13 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.
- * configure.in, m4/proftpd.m4:
- Start tweaking the configure script to work better in
- cross-compiling situations.
+2011-09-24 castaglia <castaglia>
-2011-10-31 11:39 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.
- * tests/Makefile.in:
- Make sure to build the response unit tests, and include them in
- the api-tests binary.
+2011-09-24 castaglia <castaglia>
-2011-10-31 11:38 castaglia
+ * tests/tests.pl: Don't run the mod_sftp_sql unit tests unless that
+ module, too, is loaded.
- * tests/api/: response.c, stubs.c, tests.c, tests.h:
- Start working on API-level regression tests for the Response API.
+2011-09-24 castaglia <castaglia>
-2011-10-24 16:06 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: More places to
+ catch data connection timeouts.
- * 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-09-24 castaglia <castaglia>
-2011-10-24 15:59 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.
- * 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-09-24 castaglia <castaglia>
-2011-10-23 19:31 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm,
+ tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: More places to
+ catch data connection timeouts.
- * tests/: tests.pl, t/config/listoptions.t,
- t/lib/ProFTPD/Tests/Config/ListOptions.pm:
- Start working on regression tests for the ListOptions directive,
- spurred by some questions about it in the online forums.
+2011-09-24 castaglia <castaglia>
-2011-10-18 07:52 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.
- * doc/contrib/mod_sftp.html:
- Mention that mod_sftp does not honor the ListOptions directive.
+2011-09-23 castaglia <castaglia>
-2011-10-17 16:43 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Adding mod_rewrite regression test for rewriting backslashes to
- slashes.
+2011-09-23 castaglia <castaglia>
-2011-10-17 11:25 castaglia
+ * tests/api/scoreboard.c: Fixing pr_scoreboard_scrub() unit test so
+ that it passes properly.
- * doc/howto/Rewrite.html:
- Adding new mod_rewrite example, for converting backslashes to
- slashes.
+2011-09-21 castaglia <castaglia>
-2011-10-13 09:23 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.
- * 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-09-21 castaglia <castaglia>
-2011-10-12 10:17 castaglia
+ * tests/t/lib/ProFTPD/Tests/Telnet.pm: Adding regression test for
+ Bug#3697.
- * doc/contrib/mod_sftp.html:
- Updated SFTPOptions documentation to mention new
- IgnoreSFTPSetTimes option (Bug#3706).
+2011-09-21 castaglia <castaglia>
-2011-10-12 10:15 castaglia
+ * NEWS, src/netio.c: Bug#3697 - Filenames with embedded IAC do not
+ get processed correctly.
- * 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-09-21 castaglia <castaglia>
-2011-10-10 14:08 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Regression test
+ for Bug#3696.
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Backport of fix for Bug#3704 to 1.3.3 branch.
+2011-09-21 castaglia <castaglia>
-2011-10-10 14:05 castaglia
+ * NEWS, include/proftpd.h, modules/mod_log.c, src/main.c: Bug#3696 -
+ ExtendedLog not getting written on timeouts.
- * NEWS, RELEASE_NOTES:
- Fuller description in NEWS for Bug#3704, and mention the new
- TLSOption in the release notes.
+2011-09-21 castaglia <castaglia>
-2011-10-10 14:02 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.
- * doc/contrib/mod_tls.html:
- Documenting the new NoEmptyFragments TLSOption.
+2011-09-09 castaglia <castaglia>
-2011-10-10 13:56 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).
- * NEWS, contrib/mod_tls.c:
- Bug#3704 - Enable OpenSSL countermeasure against SSLv3/TLSv1
- BEAST attacks.
+2011-09-09 castaglia <castaglia>
-2011-10-06 09:00 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.
- * configure:
- Updated configure for Bug#3192.
+2011-09-06 castaglia <castaglia>
-2011-10-06 08:56 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.
- * NEWS, config.h.in, configure.in, contrib/mod_sql_postgres.c:
- Bug#3192 - PQescapeStringConn() needs a better check.
+2011-09-06 castaglia <castaglia>
-2011-10-06 08:33 castaglia
+ * src/memcache.c: Pedantically fix more compiler warnings.
- * configure:
- Updated configure for Bug#3669.
+2011-09-05 castaglia <castaglia>
-2011-10-06 08:27 castaglia
+ * doc/contrib/mod_sql.html: Fix HTML markup.
- * 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-09-05 castaglia <castaglia>
-2011-10-05 18:05 castaglia
+ * contrib/mod_tls_memcache.c: Address a few compiler warnings.
- * NEWS, src/timers.c:
- Backport of fix for Bug#3702. For the 1.3.3 branch, a different
- fix is used, since the necessary configure code is not present in
- this branch.
+2011-09-05 castaglia <castaglia>
-2011-10-05 18:04 castaglia
+ * contrib/mod_tls.c: Fix typo causing compiler warninga about
+ "statement with no effect".
- * configure:
- Updated configure for Bug#3702.
+2011-09-05 castaglia <castaglia>
-2011-10-05 17:59 castaglia
+ * src/trace.c: Fix compiler error when compiling with
+ --disable-trace; the pr_trace_vsmg() function was not implemented in
+ that case.
- * NEWS, configure.in:
- Bug#3702 - ProFTPD with mod_sql_mysql dies of "Alarm clock" on
- FreeBSD.
+2011-09-02 castaglia <castaglia>
-2011-10-04 13:59 castaglia
+ * contrib/README, contrib/mod_quotatab_ldap.ldif,
+ contrib/mod_quotatab_ldap.schema: Bug#3678 - Include LDAP schema for
+ mod_quotatab_ldap.
- * src/: main.c, support.c, timers.c:
- Add checking of the return values for calling signal(2),
- sigaction(2), and siginterrupt(2), and logging of any errors.
+2011-09-02 castaglia <castaglia>
-2011-10-03 22:27 castaglia
+ * doc/contrib/mod_exec.html: Adding mod_exec FAQ.
- * 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-08-19 castaglia <castaglia>
-2011-09-29 07:17 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.
- * contrib/mod_sftp/date.c:
- Bug#3650 - Update the FSF address.
+2011-08-16 castaglia <castaglia>
-2011-09-26 20:57 castaglia
+ * src/trace.c: Quell compiler warning on some systems by using an
+ explicit typecast.
- * 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-08-16 castaglia <castaglia>
-2011-09-26 09:41 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.
- * ChangeLog:
- Updating ChangeLog.
+2011-08-13 castaglia <castaglia>
-2011-09-26 09:40 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).
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Updated files for release of 1.3.3f.
+2011-08-13 castaglia <castaglia>
-2011-09-26 08:53 castaglia
+ * NEWS, src/response.c: Bug#3685 - NULL pointer dereference after an
+ idle timeout.
- * include/version.h:
- Updated version for CVS status.
+2011-08-12 castaglia <castaglia>
-2011-09-26 08:15 castaglia
+ * configure: Updated configure.
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Update the versions for RC3.
+2011-08-12 castaglia <castaglia>
-2011-09-26 08:14 castaglia
+ * NEWS, configure.in: Bug#3681 - Non POSIX test constructions in
+ autoconf script.
- * NEWS:
- Update NEWS with the release date.
+2011-08-08 castaglia <castaglia>
-2011-09-26 08:08 castaglia
+ * contrib/mod_tls.c: Reduce the OpenSSL memory usage for SSL
+ connections (if OpenSSL-1.0.0a or later are used).
- * ChangeLog:
- Updated ChangeLog.
+2011-08-05 castaglia <castaglia>
-2011-09-26 08:05 castaglia
+ * doc/contrib/mod_sftp.html: Update the SFTPOptions
+ IgnoreSFTPUploadPerms description to mention directory creation, as
+ per Bug#3680.
- * RELEASE_NOTES:
- Updated release notes.
+2011-08-05 castaglia <castaglia>
-2011-09-26 08:00 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.
- * 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-08-05 castaglia <castaglia>
-2011-09-24 19:50 castaglia
+ * contrib/mod_radius.c: Better implementation of the
+ NAS-IPv6-Address functionality for Bug#3679.
- * 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-08-04 castaglia <castaglia>
-2011-09-24 14:56 castaglia
+ * doc/contrib/mod_radius.html: Mention that mod_radius might use
+ NAS-IPv6-Address in the mod_radius docs.
- * 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-08-04 castaglia <castaglia>
-2011-09-24 12:54 castaglia
+ * NEWS, contrib/mod_radius.c: Bug#3679 - Support NAS-IPv6-Address
+ RADIUS attribute.
- * 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-08-04 castaglia <castaglia>
-2011-09-24 12:52 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.
- * src/main.c:
- More tricks to preserve the errno value through the command
- dispatch mechanism.
+2011-08-03 castaglia <castaglia>
-2011-09-24 12:12 castaglia
+ * doc/contrib/mod_radius.html: Update the RadiusNASIdentifier docs
+ to mention that it will use "ssh2" for SFTP/SCP sessions.
- * 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-08-03 castaglia <castaglia>
-2011-09-24 10:33 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm:
- Fixing broken unit tests.
+2011-08-02 castaglia <castaglia>
-2011-09-23 23:44 castaglia
+ * src/scoreboard.c: Fix compiler warning about shadowed variable.
- * 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-08-02 castaglia <castaglia>
-2011-09-23 23:38 castaglia
+ * configure: Updated configure.
- * 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-08-02 castaglia <castaglia>
-2011-09-23 22:59 castaglia
+ * NEWS, configure.in: Bug#3675 - Automatically disable sendfile
+ support for AIX systems.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Fix broken mod_sql_sqlite unit tests.
+2011-08-02 castaglia <castaglia>
-2011-09-23 22:42 castaglia
+ * contrib/mod_sftp/mod_sftp.c: Fix the compilation of mod_sftp.c
+ (Bug#3677).
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Relax some of the heuristics, allowing some of the unit tests to
- pass more regularly.
+2011-08-02 castaglia <castaglia>
-2011-09-23 22:33 castaglia
+ * src/regexp.c: Remove unused variable.
- * contrib/mod_rewrite.c:
- Fix a regression in the RewriteHome feature, where it wasn't
- working at all.
+2011-08-01 castaglia <castaglia>
-2011-09-23 22:33 castaglia
+ * src/main.c: Defend against possible null cmd_rec argument in
+ pr_cmd_dispatch_phase().
- * tests/t/lib/ProFTPD/Tests/Config/RewriteHome.pm:
- Minor style updates; no functional change.
+2011-07-31 castaglia <castaglia>
-2011-09-23 22:18 castaglia
+ * NEWS, modules/mod_ctrls.c: Bug#3674 - After running "proftpd -t"
+ command, ftpdctl commands no longer work.
- * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm:
- Expect to handle a "File too large" error response as well in
- these unit tests.
+2011-07-26 castaglia <castaglia>
-2011-09-23 22:16 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.
- * tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm:
- Fix broken unit test.
+2011-07-10 castaglia <castaglia>
-2011-09-23 22:14 castaglia
+ * doc/contrib/mod_tls.html: Updated mod_tls
+ AllowClientRenegotiations TLSOption description to mention
+ CVE-2011-1437.
- * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm:
- Add a different expected error message, fixing the unit test on a
- Linux system.
+2011-07-10 castaglia <castaglia>
-2011-09-23 22:09 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3671 - TLSOption
+ AllowClientRenegotiations to be unconditionally required for
+ client-initiated renegotiations.
- * 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-07-10 castaglia <castaglia>
-2011-09-23 22:05 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm: Adding
+ regression tests for Bug#3670.
- * 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-07-10 castaglia <castaglia>
-2011-09-23 18:19 castaglia
+ * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#3670 - WrapDenyMsg not
+ displayed when using mod_wrap2 + mod_sftp.
- * tests/tests.pl:
- Don't run the mod_sftp_sql unit tests unless that module, too, is
- loaded.
+2011-07-09 castaglia <castaglia>
-2011-09-23 18:13 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- More places to catch data connection timeouts.
+2011-07-09 castaglia <castaglia>
-2011-09-23 18:07 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.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- More places to catch data connection timeouts.
+2011-07-06 castaglia <castaglia>
-2011-09-23 18:01 castaglia
+ * doc/modules/mod_facts.html: Adding MLSD/MLST FAQ from forums.
- * tests/t/lib/ProFTPD/Tests/Config/: TimeoutNoTransfer.pm,
- FTPAccess/RETR.pm:
- More places to catch data connection timeouts.
+2011-07-02 castaglia <castaglia>
-2011-09-23 17:56 castaglia
+ * NEWS, src/scoreboard.c: Bug#3668 - File descriptor leak during
+ scoreboard scrubbing.
- * tests/t/lib/ProFTPD/Tests/Config/: MaxRetrieveFileSize.pm,
- MaxStoreFileSize.pm:
- More places to catch data connection timeouts.
+2011-07-01 castaglia <castaglia>
-2011-09-23 17:46 castaglia
+ * doc/modules/mod_core.html: Add description of the GroupOwner
+ directive, updated for Bug#3665, to the mod_core HTML docs.
- * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm:
- More places to catch data connection timeouts.
+2011-07-01 castaglia <castaglia>
-2011-09-23 17:42 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.
- * tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm:
- More places to catch data connection timeouts.
+2011-06-30 jwm <jwm>
-2011-09-23 17:38 castaglia
+ * NEWS: mention the mod_ldap configuration directive overhaul
- * tests/t/lib/ProFTPD/Tests/Commands/: LIST.pm, MLSD.pm, NLST.pm,
- RETR.pm, 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-06-21 castaglia <castaglia>
-2011-09-23 16:28 castaglia
+ * NEWS, src/scoreboard.c: Bug#3667 - Scoreboard scrubbing can block
+ daemon process for long periods of time.
- * tests/t/lib/ProFTPD/Tests/: Commands/APPE.pm, Commands/LIST.pm,
- Config/ShowSymlinks.pm, Modules/mod_ban.pm, Modules/mod_sftp.pm,
- Modules/mod_sql_sqlite.pm:
- Trying to fix/quell Perl warnings emitted while running the
- testsuite.
+2011-06-17 castaglia <castaglia>
-2011-09-23 09:54 castaglia
+ * doc/contrib/mod_sftp.html: Minor updates to the mod_sftp docs for
+ SFTPCiphers, SFTPDigests, and SFTPOptions.
- * tests/api/scoreboard.c:
- Fixing pr_scoreboard_scrub() unit test so that it passes
- properly.
+2011-06-17 castaglia <castaglia>
-2011-09-21 08:30 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.
- * 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-06-17 castaglia <castaglia>
-2011-09-21 07:50 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.
- * NEWS, src/netio.c:
- Backport of fix for Bug#3697 to 1.3.3 branch.
+2011-06-14 castaglia <castaglia>
-2011-09-21 07:49 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Bug#3664 -
+ mod_sftp does not update process title.
- * tests/t/lib/ProFTPD/Tests/Telnet.pm:
- Adding regression test for Bug#3697.
+2011-06-10 castaglia <castaglia>
-2011-09-21 07:48 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).
- * NEWS, src/netio.c:
- Bug#3697 - Filenames with embedded IAC do not get processed
- correctly.
+2011-06-10 castaglia <castaglia>
-2011-09-20 22:40 castaglia
+ * src/scoreboard.c: If we can't open the ScoreboardFile during
+ scrubbing, make sure we log the proper error reason for it.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Regression test for Bug#3696.
+2011-06-06 castaglia <castaglia>
-2011-09-20 22:40 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm: Add HideNoAccess
+ regression test, trying to reproduce an issue described on
+ forums.proftpd.org.
- * NEWS, include/proftpd.h, modules/mod_log.c, src/main.c:
- Bug#3696 - ExtendedLog not getting written on timeouts.
+2011-06-05 castaglia <castaglia>
-2011-09-20 22:03 castaglia
+ * modules/mod_delay.c: Remove now-unnecessary blank line in 'ftpdctl
+ delay info' response.
- * 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-06-05 castaglia <castaglia>
-2011-09-09 11:13 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.
- * 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-06-05 castaglia <castaglia>
-2011-09-09 10:59 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.
- * 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-06-05 castaglia <castaglia>
-2011-09-06 14:14 castaglia
+ * NEWS, modules/mod_delay.c: Bug#3663 - TimeoutLogin cannot
+ interrupt mod_delay as it should.
- * 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-06-03 castaglia <castaglia>
-2011-09-06 10:21 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Add mod_deflate
+ regression test showing read/compress of chunks of upload data.
- * src/memcache.c:
- Pedantically fix more compiler warnings.
+2011-06-03 castaglia <castaglia>
-2011-09-05 13:07 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm: Fix mod_deflate
+ regression tests broken by the addition of the ScoreboardMutex.
- * doc/contrib/mod_sql.html:
- Fix HTML markup.
+2011-05-27 castaglia <castaglia>
-2011-09-05 12:26 castaglia
+ * doc/modules/mod_core.html: Add docs for the PassivePorts directive
+ to the bundled HTML mod_core doc.
- * contrib/mod_tls_memcache.c:
- Address a few compiler warnings.
+2011-05-27 castaglia <castaglia>
-2011-09-05 12:20 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.
- * contrib/mod_tls.c:
- Fix typo causing compiler warninga about "statement with no
- effect".
+2011-05-27 castaglia <castaglia>
-2011-09-05 12:19 castaglia
+ * src/fsio.c: More caching/setting of errno properly, and fixing a
+ minor memory leak.
- * src/trace.c:
- Fix compiler error when compiling with --disable-trace; the
- pr_trace_vsmg() function was not implemented in that case.
+2011-05-26 castaglia <castaglia>
-2011-09-02 10:55 castaglia
+ * modules/mod_core.c: Properly cache/set the errno value before
+ returning PR_ERROR.
- * contrib/: README, mod_quotatab_ldap.ldif,
- mod_quotatab_ldap.schema:
- Bug#3678 - Include LDAP schema for mod_quotatab_ldap.
+2011-05-26 castaglia <castaglia>
-2011-09-02 10:23 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.
- * doc/contrib/mod_exec.html:
- Adding mod_exec FAQ.
+2011-05-26 castaglia <castaglia>
-2011-08-19 09:51 castaglia
+ * NEWS, contrib/mod_quotatab.c, contrib/mod_site_misc.c: Bug#3660 -
+ SITE MKDIR/RMDIR should update quota tallies properly.
- * 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-05-26 castaglia <castaglia>
-2011-08-16 09:13 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.
- * src/trace.c:
- Quell compiler warning on some systems by using an explicit
- typecast.
+2011-05-26 castaglia <castaglia>
-2011-08-16 09:13 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.
- * 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-05-26 castaglia <castaglia>
-2011-08-13 12:28 castaglia
+ * contrib/mod_sql.c: Fix some strncasecmp(3) cases in mod_sql, and
+ convert other strcasecmp(3) to strncasecmp(3).
- * 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-05-26 castaglia <castaglia>
-2011-08-13 12:24 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.
- * NEWS, src/response.c:
- Bug#3685 - NULL pointer dereference after an idle timeout.
+2011-05-26 castaglia <castaglia>
-2011-08-12 10:46 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.
- * configure:
- Updated configure.
+2011-05-25 castaglia <castaglia>
-2011-08-12 10:41 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).
- * NEWS, configure.in:
- Bug#3681 - Non POSIX test constructions in autoconf script.
+2011-05-25 castaglia <castaglia>
-2011-08-07 18:50 castaglia
+ * contrib/mod_quotatab.c: Fix up some minor nits in mod_quotatab,
+ found while working on Bug#3641.
- * contrib/mod_tls.c:
- Reduce the OpenSSL memory usage for SSL connections (if
- OpenSSL-1.0.0a or later are used).
+2011-05-25 castaglia <castaglia>
-2011-08-05 15:49 castaglia
+ * modules/mod_xfer.c: Set errno before returning PR_ERROR.
- * doc/contrib/mod_sftp.html:
- Update the SFTPOptions IgnoreSFTPUploadPerms description to
- mention directory creation, as per Bug#3680.
+2011-05-25 castaglia <castaglia>
-2011-08-05 15:48 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.
- * 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-05-24 castaglia <castaglia>
-2011-08-05 10:21 castaglia
+ * contrib/install-sh: Adding install-sh script for contrib/ area.
- * contrib/mod_radius.c:
- Better implementation of the NAS-IPv6-Address functionality for
- Bug#3679.
+2011-05-24 castaglia <castaglia>
-2011-08-04 15:34 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.
- * doc/contrib/mod_radius.html:
- Mention that mod_radius might use NAS-IPv6-Address in the
- mod_radius docs.
+2011-05-24 castaglia <castaglia>
-2011-08-04 15:32 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).
- * NEWS, contrib/mod_radius.c:
- Bug#3679 - Support NAS-IPv6-Address RADIUS attribute.
+2011-05-24 castaglia <castaglia>
-2011-08-04 14:15 castaglia
+ * contrib/mod_sftp/scp.c: Remove redundant setting of the
+ POSIXLY_CORRECT environment variable.
- * 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-05-24 castaglia <castaglia>
-2011-08-03 14:45 castaglia
+ * doc/contrib/mod_ctrls_admin.html: Documenting the -n 'ftpdctl
+ kick' option, added for Bug#3555.
- * doc/contrib/mod_radius.html:
- Update the RadiusNASIdentifier docs to mention that it will use
- "ssh2" for SFTP/SCP sessions.
+2011-05-24 castaglia <castaglia>
-2011-08-03 14:43 castaglia
+ * NEWS, contrib/mod_ctrls_admin.c: Bug#3555 - Support optional
+ maximum number of clients to be disconnected via 'ftpdctl kick'.
- * 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-05-23 castaglia <castaglia>
-2011-08-02 15:09 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).
- * src/scoreboard.c:
- Fix compiler warning about shadowed variable.
+2011-05-23 castaglia <castaglia>
-2011-08-02 12:16 castaglia
+ * contrib/mod_wrap2/configure: Updated mod_wrap2 configure.
- * configure:
- Updated configure.
+2011-05-23 castaglia <castaglia>
-2011-08-02 12:12 castaglia
+ * configure.in, contrib/mod_wrap2/configure.in: Updating FSF
+ address, per Bug#3650.
- * NEWS, configure.in:
- Bug#3675 - Automatically disable sendfile support for AIX
- systems.
+2011-05-23 castaglia <castaglia>
-2011-08-02 11:24 castaglia
+ * contrib/ftpasswd, contrib/ftpmail, contrib/ftpquota, src/prxs.in:
+ Updated FSF address, per Bug#3650.
- * contrib/mod_sftp/mod_sftp.c:
- Fix the compilation of mod_sftp.c (Bug#3677).
+2011-05-23 castaglia <castaglia>
-2011-08-02 10:10 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.
- * src/regexp.c:
- Remove unused variable.
+2011-05-23 castaglia <castaglia>
-2011-08-01 11:44 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>
- * src/main.c:
- Defend against possible null cmd_rec argument in
- pr_cmd_dispatch_phase().
+ * 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-07-31 15:07 castaglia
+2011-05-23 castaglia <castaglia>
- * NEWS, modules/mod_ctrls.c:
- Bug#3674 - After running "proftpd -t" command, ftpdctl commands
- no longer work.
+ * COPYING: Updating FSF address, per Bug#3650.
-2011-07-26 14:14 castaglia
+2011-05-20 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.
+ * 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-07-10 11:06 castaglia
+2011-05-20 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Updated mod_tls AllowClientRenegotiations TLSOption description
- to mention CVE-2011-1437.
+ * contrib/mod_tls.c: Clarify the certificate revocation callback
+ code a little, and add some comments on edge cases to handle better.
-2011-07-10 11:03 castaglia
+2011-05-20 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3671 - TLSOption AllowClientRenegotiations to be
- unconditionally required for client-initiated renegotiations.
+ * 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-07-10 09:43 castaglia
+2011-05-20 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm:
- Adding regression tests for Bug#3670.
+ * 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-07-10 09:42 castaglia
+2011-05-20 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/mod_sftp.c:
- Bug#3670 - WrapDenyMsg not displayed when using mod_wrap2 +
- mod_sftp.
+ * 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-07-09 10:57 castaglia
+2011-05-19 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp.pm,
- t/lib/ProFTPD/Tests/Modules/mod_sftp/wrap2.pm,
- t/modules/mod_sftp/wrap2.t:
- Breaking out the mod_sftp+mod_wrap2 unit tests into their own
- separate file of test cases.
+ * NEWS, contrib/mod_tls.c: Bug#3658 - TLSVerifyOrder directive is
+ broken.
-2011-07-09 10:44 castaglia
+2011-05-19 castaglia <castaglia>
- * contrib/mod_sftp/: auth-publickey.c, kex.c:
- Adding comments for my future reference, for when I start adding
- X509 support to mod_sftp.
+ * 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-07-06 10:14 castaglia
+2011-05-18 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Adding MLSD/MLST FAQ from forums.
+ * 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-07-02 16:09 castaglia
+2011-05-18 castaglia <castaglia>
- * NEWS, src/scoreboard.c:
- Bug#3668 - File descriptor leak during scoreboard scrubbing.
+ * 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-07-01 11:34 castaglia
+2011-05-18 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Add description of the GroupOwner directive, updated for
- Bug#3665, to the mod_core HTML docs.
+ * 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-07-01 11:03 castaglia
+2011-05-18 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3665 - GID of new files are inherited from parent directory
- on FreeBSD.
+ * 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.
- The GroupOwner directive is enhanced to use "~" as "GID of
- logged-in user", to work around the FreeBSD-specific behavior.
+2011-05-18 castaglia <castaglia>
-2011-06-30 05:20 jwm
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Update the
+ group quota regression test to use the fixed table files.
- * NEWS: mention the mod_ldap configuration directive overhaul
+2011-05-18 castaglia <castaglia>
-2011-06-21 11:01 castaglia
+ * : Fixing the group quota file-based tables for the
+ mod_quotatab_file regression test.
- * NEWS, src/scoreboard.c:
- Bug#3667 - Scoreboard scrubbing can block daemon process for long
- periods of time.
+2011-05-18 castaglia <castaglia>
-2011-06-17 16:28 castaglia
+ * : Adding the limit/tally file tables for the ALL regression test.
- * doc/contrib/mod_sftp.html:
- Minor updates to the mod_sftp docs for SFTPCiphers, SFTPDigests,
- and SFTPOptions.
+2011-05-18 castaglia <castaglia>
-2011-06-17 15:55 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).
- * 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-05-18 castaglia <castaglia>
-2011-06-17 10:53 castaglia
+ * configure: Updated configure.
- * 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-05-18 castaglia <castaglia>
-2011-06-14 15:25 castaglia
+ * configure.in: Fix --disable-strip logic.
- * NEWS, contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c:
- Bug#3664 - mod_sftp does not update process title.
+2011-05-18 castaglia <castaglia>
-2011-06-09 19:57 castaglia
+ * doc/contrib/mod_wrap2.html: Fix typos in the mod_wrap2 docs.
- * 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-05-18 castaglia <castaglia>
-2011-06-09 18:32 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.
- * src/scoreboard.c:
- If we can't open the ScoreboardFile during scrubbing, make sure
- we log the proper error reason for it.
+2011-05-17 castaglia <castaglia>
-2011-06-05 18:59 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#3656 - Prefer "File too big" error
+ message for MaxStoreFilesize.
- * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm:
- Add HideNoAccess regression test, trying to reproduce an issue
- described on forums.proftpd.org.
+2011-05-16 castaglia <castaglia>
-2011-06-05 16:18 castaglia
+ * modules/mod_xfer.c: Another typo.
- * modules/mod_delay.c:
- Remove now-unnecessary blank line in 'ftpdctl delay info'
- response.
+2011-05-16 castaglia <castaglia>
-2011-06-05 16:17 castaglia
+ * modules/mod_xfer.c: Typo.
- * 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.
+2011-05-15 castaglia <castaglia>
- Second, make the output from 'ftpdctl delay info' a little
- prettier.
+ * contrib/mod_sftp/packet.c: Leaving notes for myself about the use
+ of TCP_CORK/TCP_NOPUSH when sending SSH messages.
-2011-06-05 15:45 castaglia
+2011-05-15 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.
+ * 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-06-05 10:15 castaglia
+2011-05-15 castaglia <castaglia>
- * NEWS, modules/mod_delay.c:
- Bug#3663 - TimeoutLogin cannot interrupt mod_delay as it should.
+ * 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-06-03 16:15 castaglia
+2011-05-13 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm:
- Add mod_deflate regression test showing read/compress of chunks
- of upload data.
+ * contrib/mod_sftp/mod_sftp.c: Provide better error message for
+ SFTPClientMatch values configured to be zero.
-2011-06-03 09:53 castaglia
+2011-05-13 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_deflate.pm:
- Fix mod_deflate regression tests broken by the addition of the
- ScoreboardMutex.
+ * NEWS, src/main.c: Bug#3653 - Segfault with "DefaultServer off" and
+ no matching server for incoming IP address.
-2011-05-26 20:13 castaglia
+2011-05-13 castaglia <castaglia>
- * doc/modules/mod_core.html:
- Add docs for the PassivePorts directive to the bundled HTML
- mod_core doc.
+ * configure: Updated configure.
-2011-05-26 20:03 castaglia
+2011-05-13 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.
+ * configure.in: Renaming --enable-symbols configure option, added
+ for Bug#3651, to be --disable-strip (which is what OpenSSH uses).
-2011-05-26 17:38 castaglia
+2011-05-13 castaglia <castaglia>
- * src/fsio.c:
- More caching/setting of errno properly, and fixing a minor memory
- leak.
+ * doc/contrib/mod_sftp.html: Typo.
-2011-05-26 16:41 castaglia
+2011-05-13 castaglia <castaglia>
- * modules/mod_core.c:
- Properly cache/set the errno value before returning PR_ERROR.
+ * contrib/mod_sftp/keys.c: Fix typo in comment.
-2011-05-26 16:15 castaglia
+2011-05-11 castaglia <castaglia>
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_quotatab/site_misc.pm,
- t/modules/mod_quotatab/site_misc.t:
- Adding regression tests for Bug#3660.
+ * doc/howto/TLS.html: Added TLS FAQ/example config for requring FTPS
+ for remote clients but allowing just FTP for local clients.
-2011-05-26 16:14 castaglia
+2011-05-11 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c, contrib/mod_site_misc.c:
- Bug#3660 - SITE MKDIR/RMDIR should update quota tallies properly.
+ * contrib/mod_wrap.c: Additional fixes for Bug#3652.
-2011-05-26 16:08 castaglia
+2011-05-11 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.
+ * 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-26 16:08 castaglia
+2011-05-09 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.
+ * NEWS, contrib/mod_wrap.c: Bug#3652 - TCPAccessSyslogLevel
+ directive broken by Bug#3317.
-2011-05-26 14:48 castaglia
+2011-05-08 castaglia <castaglia>
- * contrib/mod_sql.c:
- Fix some strncasecmp(3) cases in mod_sql, and convert other
- strcasecmp(3) to strncasecmp(3).
+ * configure: Updated configure.
-2011-05-26 14:46 castaglia
+2011-05-08 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.
+ * 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-26 11:47 castaglia
+2011-05-08 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.
+ * 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-25 16:56 castaglia
+2011-05-05 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).
+ * modules/mod_facts.c: Update mod_facts to use the new defines for
+ the MFF and MFMT commands.
-2011-05-25 16:54 castaglia
+2011-05-05 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Fix up some minor nits in mod_quotatab, found while working on
- Bug#3641.
+ * 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-25 16:51 castaglia
+2011-05-05 castaglia <castaglia>
- * modules/mod_xfer.c:
- Set errno before returning PR_ERROR.
+ * modules/mod_ls.c: Remove now-unused variable declaration.
-2011-05-25 09:50 castaglia
+2011-05-04 castaglia <castaglia>
- * NEWS, contrib/mod_ifsession.c:
- Bug#3659 - Segmentation fault if there is regex <IfUser> section
- in a <VirtualHost> section.
+ * 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-24 18:15 castaglia
+2011-05-03 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.
+ * 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-24 14:38 castaglia
+2011-05-02 castaglia <castaglia>
- * contrib/install-sh:
- Adding install-sh script for contrib/ area.
+ * contrib/mod_quotatab_sql.c, contrib/mod_sql_passwd.c: More
+ idiomatic check for DECLINED/null results.
-2011-05-24 14:00 castaglia
+2011-05-01 jwm <jwm>
- * 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.
+ * Makefile.in: - execute the clean target in tests/, too - remove some Makefiles on distclean that were sneaking their way
+ into release tarballs
- 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-01 castaglia <castaglia>
-2011-05-24 13:55 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.
- * contrib/mod_sftp/: Makefile.in, auth.c, channel.c, channel.h,
- date.c, date.h, mod_sftp.c, mod_sftp.h.in:
- Adding support for builtin date(1) command, for speed tests
- related to authentication (versus file transfers via SFTP/SCP).
+2011-04-30 castaglia <castaglia>
-2011-05-24 10:06 castaglia
+ * lib/tpl.c: Fixing nits in libtpl found by Apple's clang static
+ source code analysis tool.
- * contrib/mod_sftp/scp.c:
- Remove redundant setting of the POSIXLY_CORRECT environment
- variable.
+2011-04-30 castaglia <castaglia>
-2011-05-23 17:06 castaglia
+ * modules/mod_delay.c: Fix nit found by Apple's clang static source
+ code analysis tool.
- * doc/contrib/mod_ctrls_admin.html:
- Documenting the -n 'ftpdctl kick' option, added for Bug#3555.
+2011-04-30 castaglia <castaglia>
-2011-05-23 17:04 castaglia
+ * src/pool.c: Adding comment describing why the logic in
+ null_alloc() is as intended, for future reference.
- * NEWS, contrib/mod_ctrls_admin.c:
- Bug#3555 - Support optional maximum number of clients to be
- disconnected via 'ftpdctl kick'.
+2011-04-30 castaglia <castaglia>
-2011-05-23 16:23 castaglia
+ * modules/mod_facts.c: Fix up minor nits pointed out by Apple'c
+ clang static code analysis tool.
- * contrib/mod_ban.c, contrib/mod_tls.c, contrib/mod_sftp/scp.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-04-29 castaglia <castaglia>
-2011-05-23 14:32 castaglia
+ * modules/mod_auth.c: Paranoidly guard against possible NULL pointer
+ dereference (found by Klocwork static source code analysis).
- * contrib/mod_wrap2/configure:
- Updated mod_wrap2 configure.
+2011-04-29 castaglia <castaglia>
-2011-05-23 14:29 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#3649 - MaxStoreFileSize can be
+ bypassed using REST/APPE.
- * configure.in, contrib/mod_wrap2/configure.in:
- Updating FSF address, per Bug#3650.
+2011-04-29 castaglia <castaglia>
-2011-05-23 14:25 castaglia
+ * modules/mod_log.c: Code/style clarity.
- * contrib/ftpasswd, contrib/ftpmail, contrib/ftpquota, src/prxs.in:
+2011-04-29 castaglia <castaglia>
- Updated FSF address, per Bug#3650.
+ * modules/mod_facts.c: Typo.
-2011-05-23 14:22 castaglia
+2011-04-29 castaglia <castaglia>
- * 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, COPYING, doc/license.txt:
- Updating FSF address, per Bug#3650.
+ * src/fsio.c: Fix issue highlighted by Klocwork's static source code
+ analysis.
-2011-05-23 14:11 castaglia
+2011-04-29 castaglia <castaglia>
- * modules/: mod_auth.c, mod_auth_file.c, mod_auth_pam.c,
- mod_auth_unix.c, mod_cap.c, mod_core.c, mod_ctrls.c, mod_delay.c,
- mod_dso.c, mod_facl.c, mod_facts.c, mod_ident.c, mod_lang.c,
- mod_log.c, mod_ls.c, mod_memcache.c, mod_site.c, mod_xfer.c:
- Updated FSF address, per Bug#3650.
+ * modules/mod_ls.c: Fix issue highlighted by Klocwork's static
+ source code analysis.
-2011-05-23 14:08 castaglia
+2011-04-28 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:
- Updated FSF address, per Bug#3650.
-
-2011-05-23 14:03 castaglia
-
- * contrib/mod_sftp/: auth-hostbased.c, auth-kbdint.c,
- auth-password.c, auth-publickey.c, auth.c, channel.c, cipher.c,
- compress.c, crypto.c, disconnect.c, display.c, fxp.c, interop.c,
- kbdint.c, kex.c, keys.c, keystore.c, mac.c, misc.c, mod_sftp.c,
- msg.c, packet.c, rfc4716.c, scp.c, service.c, session.c, tap.c,
- utf8.c:
- Updating FSF address, per Bug#3650.
-
-2011-05-23 13:56 castaglia
-
- * contrib/: mod_ban.c, mod_copy.c, mod_ctrls_admin.c,
- mod_deflate.c, mod_dynmasq.c, mod_exec.c, mod_ifsession.c,
- mod_ifversion.c, mod_ldap.c, mod_qos.c, mod_quotatab.c,
- mod_quotatab_file.c, mod_quotatab_ldap.c, mod_quotatab_radius.c,
- mod_quotatab_sql.c, mod_radius.c, mod_ratio.c, mod_readme.c,
- mod_rewrite.c, mod_sftp_pam.c, mod_sftp_sql.c, mod_shaper.c,
- mod_site_misc.c, mod_sql.c, mod_sql_mysql.c, mod_sql_odbc.c,
- mod_sql_passwd.c, mod_sql_postgres.c, mod_sql_sqlite.c,
- mod_tls_memcache.c, mod_tls_shmcache.c, mod_unique_id.c,
- mod_wrap.c, mod_wrap2_file.c, mod_wrap2_sql.c,
- mod_load/mod_load.c.in, mod_wrap2/mod_wrap2.c:
- Updating FSF address, per Bug#3650.
-
-2011-05-23 13:50 castaglia
-
- * tests/api/: array.c, class.c, cmd.c, env.c, event.c, expr.c,
- feat.c, modules.c, netacl.c, netaddr.c, pool.c, regexp.c,
- scoreboard.c, sets.c, stash.c, str.c, stubs.c, table.c, tests.c,
- timers.c, var.c, version.c:
- Updating FSF address, per Bug#3650.
-
-2011-05-23 13:44 castaglia
-
- * contrib/mod_quotatab.h, contrib/mod_sql.h, contrib/mod_tls.h,
- contrib/mod_sftp/mod_sftp.h.in, contrib/mod_wrap2/mod_wrap2.h.in,
- lib/getopt.h, tests/api/tests.h, 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 13:40 castaglia
-
- * contrib/mod_sftp/: auth.h, channel.h, cipher.h, compress.h,
- crypto.h, disconnect.h, display.h, fxp.h, interop.h, kbdint.h,
- kex.h, keys.h, keystore.h, mac.h, misc.h, msg.h, packet.h,
- rfc4716.h, scp.h, service.h, session.h, ssh2.h, tap.h, utf8.h:
- Updating FSF address, per Bug#3650.
-
-2011-05-23 13:35 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Adding
+ regression test for Bug#3649.
- * 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-04-26 castaglia <castaglia>
-2011-05-23 13:25 castaglia
+ * doc/modules/mod_xfer.html: Filling in the descriptions for
+ MaxRetrieveFileSize and MaxStoreFileSize in the mod_xfer HTML docs.
- * COPYING:
- Updating FSF address, per Bug#3650.
+2011-04-22 castaglia <castaglia>
-2011-05-20 15:00 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).
- * 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-04-22 castaglia <castaglia>
-2011-05-20 14:55 castaglia
+ * doc/contrib/mod_tls.html, doc/howto/TLS.html: A few minor
+ improvements to the mod_tls docs.
- * contrib/mod_tls.c:
- Clarify the certificate revocation callback code a little, and
- add some comments on edge cases to handle better.
+2011-04-22 castaglia <castaglia>
-2011-05-20 11:16 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.)
- * 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).
+2011-04-21 castaglia <castaglia>
- Reworked the OCSP verification code so that it works properly.
+ * NEWS, src/main.c: Bug#3644 - Disable signal handling for exiting
+ session processes.
-2011-05-20 11:14 castaglia
+2011-04-21 castaglia <castaglia>
- * tests/t/: etc/modules/mod_tls/NOTES,
- lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding regression tests for the TLSVerifyOrder directive, for
- both 'crl' and 'ocsp' (separately).
+ * doc/howto/Tracing.html: Fix broken URL.
- Updates NOTES to mention how to generate certs with OCSP
- attributes, running OpenSSL's ocsp(1) as responder (and client),
- issues found, etc.
+2011-04-20 castaglia <castaglia>
-2011-05-20 11:02 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.
- * tests/t/etc/modules/mod_tls/: ocsp-ca.pem, ocsp-client.pem,
- ocsp-server.pem, ocsp-https-ca.pem, ocsp-https-client.pem,
- ocsp-https-server.pem:
- Adding certs/files for OCSP verification tests.
+2011-04-20 castaglia <castaglia>
-2011-05-19 15:56 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").
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3658.
+2011-04-20 castaglia <castaglia>
-2011-05-19 15:56 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.
- * NEWS, contrib/mod_tls.c:
- Bug#3658 - TLSVerifyOrder directive is broken.
+2011-04-20 castaglia <castaglia>
-2011-05-19 11:26 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.
- * 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-04-19 castaglia <castaglia>
-2011-05-18 13:35 castaglia
+ * modules/mod_auth_pam.c: Typo.
- * 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-04-19 castaglia <castaglia>
-2011-05-18 13:23 castaglia
+ * doc/contrib/mod_sql_odbc.html: Improved the mod_sql_odbc docs a
+ little.
- * 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-04-19 castaglia <castaglia>
-2011-05-18 13:22 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.
- * tests/t/etc/modules/mod_tls/: crl-ca-revoked.pem, crl-ca.pem,
- crl-client-cert.pem, crl-server-cert.pem:
- Added new CA, server/client certs, and CRL PEM files for the CRL
- revocation regression test.
+2011-04-19 castaglia <castaglia>
- Updated the NOTES file with instructions on how to generate the
- above files.
+ * contrib/mod_sql_odbc.c: Fix some issues found in mod_sql_odbc
+ while working on some regression tests for it.
-2011-05-18 10:29 castaglia
+2011-04-19 castaglia <castaglia>
- * tests/t/etc/modules/mod_quotatab_file/: NOTES, ftpquota.limittab,
- ftpquota.tallytab:
- Remove the broken file tables for the group quota test. Add
- notes for how the file tables were generated, for future
- reference.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Unless explicitly set, use
+ a TimeoutLinger value of 1 in the testsuite.
-2011-05-18 10:24 castaglia
+2011-04-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm:
- Update the group quota regression test to use the fixed table
- files.
+ * 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-05-18 10:22 castaglia
+2011-04-15 castaglia <castaglia>
- * tests/t/etc/modules/mod_quotatab_file/: ftpquota-group-limit.tab,
- ftpquota-group-tally.tab:
- Fixing the group quota file-based tables for the
- mod_quotatab_file regression test.
+ * 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-05-18 10:15 castaglia
+2011-04-15 castaglia <castaglia>
- * tests/t/etc/modules/mod_quotatab_file/: ftpquota-all-limit.tab,
- ftpquota-all-tally.tab:
- Adding the limit/tally file tables for the ALL regression test.
+ * 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-05-18 10:13 castaglia
+2011-04-15 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).
+ * contrib/mod_sftp/fxp.c: Another conversion from strchr(3) to
+ memchr(3).
-2011-05-18 08:18 castaglia
+2011-04-14 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-05-18 08:13 castaglia
+2011-04-14 castaglia <castaglia>
- * configure.in:
- Fix --disable-strip logic.
+ * contrib/mod_sftp/channel.c: Add trace logging of when we invoke a
+ channel's finish handler.
-2011-05-17 22:46 castaglia
+2011-04-14 castaglia <castaglia>
- * doc/contrib/mod_wrap2.html:
- Fix typos in the mod_wrap2 docs.
+ * 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-05-17 22:23 castaglia
+2011-04-14 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.
+ * 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-05-17 10:25 castaglia
+2011-04-14 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#3656 - Prefer "File too big" error message for
- MaxStoreFilesize.
+ * src/scoreboard.c: Watch for, and log, any short writes when
+ updating a scoreboard entry.
-2011-05-16 10:42 castaglia
+2011-04-14 castaglia <castaglia>
- * modules/mod_xfer.c:
- Another typo.
+ * contrib/mod_exec.c: Fixed compiler issue in previous change; need
+ to provide all the proper arguments to a printf() style function.
-2011-05-16 09:12 castaglia
+2011-04-14 castaglia <castaglia>
- * modules/mod_xfer.c:
- Typo.
+ * 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-05-15 16:04 castaglia
+2011-04-14 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Leaving notes for myself about the use of TCP_CORK/TCP_NOPUSH
- when sending SSH messages.
+ * contrib/mod_rewrite.c: Slightly better logging of mod_rewrite's
+ file test operators and the path against which they are being
+ evaluated.
-2011-05-15 16:03 castaglia
+2011-04-14 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Adding
+ another reproduction recipe for Bug#3643 to the testsuite.
-2011-05-15 15:54 castaglia
+2011-04-14 castaglia <castaglia>
- * contrib/mod_sftp/: packet.c, packet.h, 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.
+ * doc/modules/mod_core.html: Add docs for the TimeoutLinger
+ directive.
- 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-04-14 castaglia <castaglia>
-2011-05-13 12:00 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm: Adding
+ regression test for Bug#3643.
- * contrib/mod_sftp/mod_sftp.c:
- Provide better error message for SFTPClientMatch values
- configured to be zero.
+2011-04-13 castaglia <castaglia>
-2011-05-13 08:56 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.
- * NEWS, src/main.c:
- Bug#3653 - Segfault with "DefaultServer off" and no matching
- server for incoming IP address.
+2011-04-13 castaglia <castaglia>
-2011-05-13 08:34 castaglia
+ * configure: Updated configure.
- * configure:
- Updated configure.
+2011-04-13 castaglia <castaglia>
-2011-05-13 08:29 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.
- * configure.in:
- Renaming --enable-symbols configure option, added for Bug#3651,
- to be --disable-strip (which is what OpenSSH uses).
+2011-04-12 castaglia <castaglia>
-2011-05-12 21:40 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#3642 - Segfault seen in mod_sql_mysql
+ if "SQLAuthenticate groupsetfast" used.
- * doc/contrib/mod_sftp.html:
- Typo.
+2011-04-12 castaglia <castaglia>
-2011-05-12 20:38 castaglia
+ * contrib/mod_sql_mysql.c: Typo.
- * contrib/mod_sftp/keys.c:
- Fix typo in comment.
+2011-04-12 castaglia <castaglia>
-2011-05-11 09:09 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.
- * doc/howto/TLS.html:
- Added TLS FAQ/example config for requring FTPS for remote clients
- but allowing just FTP for local clients.
+2011-04-09 castaglia <castaglia>
-2011-05-10 19:14 castaglia
+ * NEWS, contrib/mod_copy.c, contrib/mod_quotatab.c: Bug#3641 - SITE
+ CPFR/CPTO does not update quota tally.
- * contrib/mod_wrap.c:
- Backport of the additional fixes for Bug#3652.
+2011-04-09 castaglia <castaglia>
-2011-05-10 19:14 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.
- * contrib/mod_wrap.c:
- Additional fixes for Bug#3652.
+2011-04-07 castaglia <castaglia>
-2011-05-10 17:38 castaglia
+ * modules/mod_auth.c: Scrub the memory holding the password received
+ from the client when done processing the PASS command.
- * 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-04-07 castaglia <castaglia>
-2011-05-09 13:37 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.
- * NEWS, contrib/mod_wrap.c:
- Backport of fix for Bug#3652 to 1.3.3 branch.
+2011-04-06 castaglia <castaglia>
-2011-05-09 13:36 castaglia
+ * doc/howto/Chroot.html: Adding more chroot-related FAQs to the
+ Chroot howto.
- * NEWS, contrib/mod_wrap.c:
- Bug#3652 - TCPAccessSyslogLevel directive broken by Bug#3317.
+2011-04-06 castaglia <castaglia>
-2011-05-08 12:27 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.
- * configure:
- Updated configure.
+2011-04-06 castaglia <castaglia>
-2011-05-08 12:25 castaglia
+ * doc/modules/mod_dso.html: Typo.
- * configure.in:
- Backport of addition of --enable-symbols configure option to
- 1.3.3 branch, for Bug#3651.
+2011-04-06 castaglia <castaglia>
-2011-05-08 12:24 castaglia
+ * doc/modules/mod_auth.html: Add docs for the UserPassword
+ directive, including examples.
- * contrib/: mod_load/Makefile.in, mod_sftp/Makefile.in,
- mod_wrap2/Makefile.in:
- Backport of changes for Bug#3651 to 1.3.3 branch.
+2011-04-06 castaglia <castaglia>
-2011-05-08 11:03 castaglia
+ * NEWS, src/netio.c: Bug#3639 - Avoid spinning proftpd process if
+ read(2) returns EAGAIN.
- * configure:
- Updated configure.
+2011-04-06 castaglia <castaglia>
-2011-05-08 10:47 castaglia
+ * RELEASE_NOTES: Forgot to mention the new ProcessTitles directive
+ in the release notes for 1.3.4rc2.
- * configure.in:
- Adding --enable-symbols configure option, to generate proftpd
- code which is not stripped of code symbols at install time
- (Bug#3651).
+2011-04-06 castaglia <castaglia>
-2011-05-07 18:18 castaglia
+ * doc/modules/mod_ctrls.html: Fix typos in mod_ctrls docs.
- * contrib/: mod_load/Makefile.in, mod_sftp/Makefile.in,
- mod_wrap2/Makefile.in:
- Minor cleanups of paths, removing some double-slash occurrences
- (pointed out in Bug#3651).
+2011-04-05 castaglia <castaglia>
-2011-05-05 15:55 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.
- * modules/mod_facts.c:
- Update mod_facts to use the new defines for the MFF and MFMT
- commands.
+2011-04-05 castaglia <castaglia>
-2011-05-05 15:54 castaglia
+ * NEWS, include/regexp.h, src/memcache.c: Bug#3637 - Enforce pcre
+ and libmemcached version requirements.
- * 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-04-04 castaglia <castaglia>
-2011-05-05 15:34 castaglia
+ * tests/api/stubs.c: Fix API testsuite compilation when
+ --enable-pcre configure option is used.
- * modules/mod_ls.c:
- Remove now-unused variable declaration.
+2011-04-01 castaglia <castaglia>
-2011-05-04 14:45 castaglia
+ * include/version.h: Setting version back to CVS status, with
+ increased version number for next release.
- * 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-04-01 castaglia <castaglia>
-2011-05-02 17:18 castaglia
+ * ChangeLog: Updated ChangeLog.
- * 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-04-01 castaglia <castaglia>
-2011-05-02 11:07 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Getting
+ ready to release 1.3.4rc2.
- * contrib/: mod_quotatab_sql.c, mod_sql_passwd.c:
- More idiomatic check for DECLINED/null results.
+2011-04-01 castaglia <castaglia>
-2011-05-01 09:41 jwm
+ * locale/proftpd.pot: Updated the template of strings to be
+ translated.
- * Makefile.in: - execute the clean target in tests/, too - remove
- some Makefiles on distclean that were sneaking their way into
- release tarballs
+2011-04-01 castaglia <castaglia>
-2011-04-30 21:32 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.
- * contrib/mod_ban.c, contrib/mod_deflate.c,
- contrib/mod_quotatab_sql.c, contrib/mod_rewrite.c,
- contrib/mod_sql.c, contrib/mod_sql_passwd.c, contrib/mod_tls.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, 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-01 castaglia <castaglia>
-2011-04-30 16:04 castaglia
+ * locale/files.txt: Updating list of localisable files.
- * lib/tpl.c:
- Fixing nits in libtpl found by Apple's clang static source code
- analysis tool.
+2011-03-31 castaglia <castaglia>
-2011-04-30 15:46 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.
- * modules/mod_delay.c:
- Fix nit found by Apple's clang static source code analysis tool.
+2011-03-30 castaglia <castaglia>
-2011-04-30 15:42 castaglia
+ * doc/howto/ConfigurationTricks.html: Add mention of proftpd's
+ support for simple directory hashing using the %u variable to the
+ ConfigurationTricks howto.
- * src/pool.c:
- Adding comment describing why the logic in null_alloc() is as
- intended, for future reference.
+2011-03-30 castaglia <castaglia>
-2011-04-30 15:29 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.
- * modules/mod_facts.c:
- Fix up minor nits pointed out by Apple'c clang static code
- analysis tool.
+2011-03-30 castaglia <castaglia>
-2011-04-29 15:47 castaglia
+ * doc/modules/mod_core.html: Add docs for the TCPBacklog directive.
- * modules/mod_auth.c:
- Paranoidly guard against possible NULL pointer dereference (found
- by Klocwork static source code analysis).
+2011-03-30 castaglia <castaglia>
-2011-04-29 15:32 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.
- * NEWS, modules/mod_xfer.c:
- Bug#3649 - MaxStoreFileSize can be bypassed using REST/APPE.
+2011-03-30 castaglia <castaglia>
-2011-04-29 11:57 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.
- * modules/mod_log.c:
- Code/style clarity.
+2011-03-29 castaglia <castaglia>
-2011-04-29 11:27 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.
- * modules/mod_facts.c:
- Typo.
+2011-03-29 castaglia <castaglia>
-2011-04-29 11:25 castaglia
+ * RELEASE_NOTES: Mention a few more addressed issues in the release
+ notes.
- * src/fsio.c:
- Fix issue highlighted by Klocwork's static source code analysis.
+2011-03-29 castaglia <castaglia>
-2011-04-29 11:15 castaglia
+ * RELEASE_NOTES: Finishing up the release notes for 1.3.4rc2.
- * modules/mod_ls.c:
- Fix issue highlighted by Klocwork's static source code analysis.
+2011-03-29 castaglia <castaglia>
-2011-04-27 21:08 castaglia
+ * doc/modules/mod_log.html: Mention the new EXIT ExtendedLog
+ "command class" in the mod_log docs.
- * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm:
- Adding regression test for Bug#3649.
+2011-03-29 castaglia <castaglia>
-2011-04-26 09:10 castaglia
+ * doc/modules/mod_core.html: Adding docs for the PathAllowFilter and
+ PathDenyFilter directives.
- * doc/modules/mod_xfer.html:
- Filling in the descriptions for MaxRetrieveFileSize and
- MaxStoreFileSize in the mod_xfer HTML docs.
+2011-03-29 castaglia <castaglia>
-2011-04-22 09:08 castaglia
+ * doc/modules/mod_core.html: Add docs for the TransferLog directive.
- * 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-03-29 castaglia <castaglia>
-2011-04-21 22:21 castaglia
+ * doc/modules/mod_log.html: Minor doc tweaks.
- * doc/: contrib/mod_tls.html, howto/TLS.html:
- A few minor improvements to the mod_tls docs.
+2011-03-28 castaglia <castaglia>
-2011-04-21 19:49 castaglia
+ * doc/howto/Compiling.html: Mention the new --enable-memcache and
+ --enable-pcre configure options in the Compiling howto.
- * 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.
+2011-03-28 castaglia <castaglia>
- 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.)
+ * doc/modules/mod_memcache.html: Updating mod_memcache docs a little
+ more.
-2011-04-21 09:31 castaglia
+2011-03-28 castaglia <castaglia>
- * NEWS, src/main.c:
- Backport of fix for Bug#3644 to 1.3.3 branch.
+ * 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-04-21 09:27 castaglia
+2011-03-26 castaglia <castaglia>
- * NEWS, src/main.c:
- Bug#3644 - Disable signal handling for exiting session processes.
+ * 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-04-21 08:59 castaglia
+2011-03-26 castaglia <castaglia>
- * doc/howto/Tracing.html:
- Fix broken URL.
+ * 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-04-20 09:13 castaglia
+2011-03-26 castaglia <castaglia>
- * contrib/mod_exec.c, doc/contrib/mod_exec.html:
- Disable the sendStdout ExecOption completely for SSH2 sessions,
- if possible.
+ * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Remove commented-out
+ config.
- Update the docs for sendStdout to mention that this option, for
- SSH2 sessions, is a bad idea.
+2011-03-26 castaglia <castaglia>
-2011-04-20 09:11 castaglia
+ * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Refining the regression
+ test for Bug#3610.
- * 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-03-26 castaglia <castaglia>
-2011-04-20 09:10 castaglia
+ * src/main.c: Add trace logging of the entire time it takes to
+ handle a SIGHUP/restart.
- * 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-03-25 castaglia <castaglia>
-2011-04-20 09:08 castaglia
+ * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: The regression test for
+ Bug#3610 requires a proftpd with the mod_sql module.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp/exec.pm,
- t/modules/mod_sftp/exec.t:
- Adding unit tests for mod_exec/mod_sftp interoperability.
+2011-03-25 castaglia <castaglia>
-2011-04-19 16:52 castaglia
+ * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm: Adding reproduction
+ recipe/regression test for Bug#3610.
- * modules/mod_auth_pam.c:
- Typo.
+2011-03-25 castaglia <castaglia>
-2011-04-19 15:23 castaglia
+ * src/dirtree.c: Provide more legible trace logging of the
+ config_type value for a config_rec.
- * doc/contrib/mod_sql_odbc.html:
- Improved the mod_sql_odbc docs a little.
+2011-03-25 castaglia <castaglia>
-2011-04-19 15:18 castaglia
+ * src/trace.c: Fix compiler warning.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sql_odbc.pm,
- t/modules/mod_sql_odbc.t:
- Add unit tests for mod_sql_odbc.
+2011-03-25 castaglia <castaglia>
-2011-04-19 15:14 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.
- * contrib/mod_sql_odbc.c:
- Fix some issues found in mod_sql_odbc while working on some
- regression tests for it.
+2011-03-25 castaglia <castaglia>
-2011-04-19 09:42 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.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Unless explicitly set, use a TimeoutLinger value of 1 in the
- testsuite.
+2011-03-24 castaglia <castaglia>
-2011-04-15 10:34 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.
- * 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-03-24 castaglia <castaglia>
-2011-04-15 09:34 castaglia
+ * doc/modules/mod_core.html: Adding docs for the new TraceOptions
+ directive.
- * 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-03-24 castaglia <castaglia>
-2011-04-15 09:27 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).
- * 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-03-24 castaglia <castaglia>
-2011-04-14 17:14 castaglia
+ * NEWS, RELEASE_NOTES, include/trace.h, modules/mod_core.c,
+ src/trace.c: Bug#3631 - Support TraceOptions directive, for altering
+ TraceLog format slightly.
- * contrib/mod_sftp/fxp.c:
- Another conversion from strchr(3) to memchr(3).
+2011-03-24 castaglia <castaglia>
-2011-04-14 16:38 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#3632 - mod_sql should log
+ "unrecoverable database error" at a higher priority.
- * 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-03-24 castaglia <castaglia>
-2011-04-14 16:27 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.
- * contrib/mod_sftp/channel.c:
- Add trace logging of when we invoke a channel's finish handler.
+2011-03-24 castaglia <castaglia>
-2011-04-14 16:15 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.
- * 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-03-24 castaglia <castaglia>
-2011-04-14 15:30 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.
- * 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-03-24 castaglia <castaglia>
-2011-04-14 14:43 castaglia
+ * contrib/mod_rewrite.c: Update mod_rewrite to use pr_cmd_strcmp()
+ where appropriate.
- * src/scoreboard.c:
- Watch for, and log, any short writes when updating a scoreboard
- entry.
+2011-03-23 castaglia <castaglia>
-2011-04-14 14:34 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.
- * src/scoreboard.c:
- Backport some of the more defensive checks from trunk, especially
- checking for failed lseek(2) calls in the Scoreboard code.
+2011-03-23 castaglia <castaglia>
-2011-04-14 14:18 castaglia
+ * src/inet.c: Merging more fixes from the FreeBSD ports tree, which
+ were neglected to be reported upstream. Sigh.
- * contrib/mod_exec.c:
- Fixed compiler issue in previous change; need to provide all the
- proper arguments to a printf() style function.
+2011-03-23 castaglia <castaglia>
-2011-04-14 13:42 castaglia
+ * NEWS, src/throttle.c: Bug#3628 - Unnecessarily verbose "warning:
+ unable to throttle bandwidth: Interrupted system call".
- * 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-03-22 castaglia <castaglia>
-2011-04-14 11:36 castaglia
+ * configure: Updated configure.
- * contrib/mod_rewrite.c:
- Slightly better logging of mod_rewrite's file test operators and
- the path against which they are being evaluated.
+2011-03-22 castaglia <castaglia>
-2011-04-14 11:28 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).
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm:
- Adding another reproduction recipe for Bug#3643 to the testsuite.
+2011-03-22 castaglia <castaglia>
-2011-04-14 10:59 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.
- * doc/modules/mod_core.html:
- Add docs for the TimeoutLinger directive.
+2011-03-22 castaglia <castaglia>
-2011-04-13 17:34 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm:
- Adding regression test for Bug#3643.
+2011-03-22 castaglia <castaglia>
-2011-04-13 14:32 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.
- * 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-03-22 castaglia <castaglia>
-2011-04-13 11:11 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.
- * configure:
- Updated configure.
+2011-03-22 castaglia <castaglia>
-2011-04-13 11:00 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.
- * configure.in:
- Adding better handling of invalid/unexpected --with-X configure
- values.
+2011-03-22 castaglia <castaglia>
-2011-04-13 10:37 castaglia
+ * contrib/mod_tls.c: Start using trace logging for some of the
+ mod_tls actions, especially those during server startup.
- * configure:
- Updated configure.
+2011-03-22 castaglia <castaglia>
-2011-04-13 10:32 castaglia
+ * contrib/mod_tls.c: Additional fix for Bug#3624.
- * 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-03-22 castaglia <castaglia>
-2011-04-12 15:48 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.
- * NEWS, contrib/mod_sql.c:
- Backport of fix for Bug#3642 to 1.3.3 branch.
+2011-03-22 castaglia <castaglia>
-2011-04-12 15:47 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.
- * NEWS, contrib/mod_sql.c:
- Bug#3642 - Segfault seen in mod_sql_mysql if "SQLAuthenticate
- groupsetfast" used.
+2011-03-22 castaglia <castaglia>
-2011-04-12 14:20 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Regression
+ test for Bug#3625.
- * contrib/mod_sql_mysql.c:
- Typo.
+2011-03-21 castaglia <castaglia>
-2011-04-11 17:54 castaglia
+ * configure: Updated configure.
- * 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-03-21 castaglia <castaglia>
-2011-04-09 13:26 castaglia
+ * configure.in: Check for headers that platforms often want for
+ their backtrace(2) functions, before checking for the backtrace(2)
+ function itself.
- * NEWS, contrib/mod_copy.c, contrib/mod_quotatab.c:
- Bug#3641 - SITE CPFR/CPTO does not update quota tally.
+2011-03-21 castaglia <castaglia>
-2011-04-09 13:25 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding regression
+ test for the %f LogFormat variable and the SFTP REMOVE request.
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_quotatab/copy.pm,
- t/modules/mod_quotatab/copy.t:
- Added regression tests for mod_copy/mod_quotatab, for Bug#3641.
+2011-03-21 castaglia <castaglia>
-2011-04-06 22:19 castaglia
+ * NEWS, src/scoreboard.c: Bug#3623 - Truncated client name saved in
+ ScoreboardFile.
- * modules/mod_auth.c:
- Scrub the memory holding the password received from the client
- when done processing the PASS command.
+2011-03-21 castaglia <castaglia>
-2011-04-06 22:03 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.
- * 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-03-21 castaglia <castaglia>
-2011-04-06 13:52 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#3625 - mod_ifsession rules
+ using regular expressions do not work.
- * doc/howto/Chroot.html:
- Adding more chroot-related FAQs to the Chroot howto.
+2011-03-21 castaglia <castaglia>
-2011-04-06 13:48 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3624 - Plaintext command injection in
+ FTPS support.
- * tests/: tests.pl, t/config/defaultroot.t,
- t/lib/ProFTPD/Tests/Config/DefaultRoot.pm:
- Adding regression tests for various DefaultRoot configurations
- involving symlinks.
+2011-03-21 castaglia <castaglia>
-2011-04-06 11:23 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm: Adding regression
+ tests for Bug#3622.
- * doc/modules/mod_dso.html:
- Typo.
+2011-03-21 castaglia <castaglia>
-2011-04-06 10:54 castaglia
+ * NEWS, modules/mod_delay.c: Bug#3622 - mod_delay sometimes logs
+ "unable to load DelayTable into memory".
- * doc/modules/mod_auth.html:
- Add docs for the UserPassword directive, including examples.
+2011-03-21 castaglia <castaglia>
-2011-04-06 10:16 castaglia
+ * src/session.c: Don't try to stash session disconnect notes in the
+ session.notes table if that table does not exit.
- * NEWS, src/netio.c:
- Backport of fix for Bug#3639 to 1.3.3 branch.
+2011-03-21 castaglia <castaglia>
-2011-04-06 10:16 castaglia
+ * src/main.c: If the session exits because of a signal, use
+ pr_session_disconnect() to set this end-of-session code.
- * NEWS, src/netio.c:
- Bug#3639 - Avoid spinning proftpd process if read(2) returns
- EAGAIN.
+2011-03-21 castaglia <castaglia>
-2011-04-06 01:09 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.
- * RELEASE_NOTES:
- Forgot to mention the new ProcessTitles directive in the release
- notes for 1.3.4rc2.
+2011-03-21 castaglia <castaglia>
-2011-04-05 19:25 castaglia
+ * utils/scoreboard.c: Adding explicit off_t typecasts in the utility
+ code for reading the scoreboard.
- * doc/modules/mod_ctrls.html:
- Fix typos in mod_ctrls docs.
+2011-03-21 castaglia <castaglia>
-2011-04-05 15:20 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).
- * doc/: howto/Compiling.html, 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-03-21 castaglia <castaglia>
-2011-04-05 15:18 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.
- * NEWS, include/regexp.h, src/memcache.c:
- Bug#3637 - Enforce pcre and libmemcached version requirements.
+2011-03-21 castaglia <castaglia>
-2011-04-04 12:04 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.
- * tests/api/stubs.c:
- Fix API testsuite compilation when --enable-pcre configure option
- is used.
+2011-03-21 castaglia <castaglia>
-2011-04-01 09:43 castaglia
+ * contrib/mod_quotatab.c: Reset errno after delaying after a failed
+ lock poll.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating for 1.3.3e release.
+2011-03-21 castaglia <castaglia>
-2011-04-01 09:42 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.
- * include/version.h:
- Setting version back to CVS status, with increased version number
- for next release.
+2011-03-20 castaglia <castaglia>
-2011-04-01 09:27 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.
- * ChangeLog:
- Updated ChangeLog.
+2011-03-20 castaglia <castaglia>
-2011-04-01 09:27 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.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Getting ready to release 1.3.4rc2.
+2011-03-20 castaglia <castaglia>
-2011-04-01 09:23 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.
- * locale/proftpd.pot:
- Updated the template of strings to be translated.
+2011-03-20 castaglia <castaglia>
-2011-04-01 09:15 castaglia
+ * modules/mod_delay.c: Re-register any 'delay' ftpdctl actions upon
+ restart.
- * 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-03-20 castaglia <castaglia>
-2011-04-01 08:52 castaglia
+ * doc/contrib/mod_sql.html: Adding documentation for the new
+ SQLNamedConnectInfo directive.
- * locale/files.txt:
- Updating list of localisable files.
+2011-03-20 castaglia <castaglia>
-2011-03-31 15:17 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.
- * NEWS, contrib/mod_sftp/keys.c:
- Backport of fix for Bug#3634 to 1.3.3 branch.
+2011-03-20 castaglia <castaglia>
-2011-03-31 15:17 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.
- * 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-20 castaglia <castaglia>
-2011-03-30 15:27 castaglia
+ * src/cmd.c: Make the Command API a little more bullet-proof by
+ trying catch some invalid arguments of various sorts.
- * doc/howto/ConfigurationTricks.html:
- Add mention of proftpd's support for simple directory hashing
- using the %u variable to the ConfigurationTricks howto.
+2011-03-20 castaglia <castaglia>
-2011-03-30 14:51 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).
- * 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-20 castaglia <castaglia>
-2011-03-30 13:50 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.
- * doc/modules/mod_core.html:
- Add docs for the TCPBacklog directive.
+2011-03-19 castaglia <castaglia>
-2011-03-30 11:40 castaglia
+ * NEWS, modules/mod_xfer.c,
+ tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm: Bug#3574 - Better
+ handling of ALLO command.
- * 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-19 castaglia <castaglia>
-2011-03-30 10:48 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.
- * 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-19 castaglia <castaglia>
-2011-03-29 16:28 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.
- * 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-19 castaglia <castaglia>
-2011-03-29 10:53 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).
- * RELEASE_NOTES:
- Updating release notes for 1.3.3e.
+2011-03-19 castaglia <castaglia>
-2011-03-29 10:52 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.
- * RELEASE_NOTES:
- Mention a few more addressed issues in the release notes.
+2011-03-19 castaglia <castaglia>
-2011-03-29 10:44 castaglia
+ * contrib/mod_rewrite.c: Update the proftpd version required by
+ mod_rewrite.
- * RELEASE_NOTES:
- Finishing up the release notes for 1.3.4rc2.
+2011-03-19 castaglia <castaglia>
-2011-03-29 10:40 castaglia
+ * contrib/mod_exec.c: Updating mod_exec to use the new pr_cmd_cmp()
+ API.
- * doc/modules/mod_log.html:
- Mention the new EXIT ExtendedLog "command class" in the mod_log
- docs.
+2011-03-19 castaglia <castaglia>
-2011-03-29 10:33 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.
- * doc/modules/mod_core.html:
- Adding docs for the PathAllowFilter and PathDenyFilter
- directives.
+2011-03-19 castaglia <castaglia>
-2011-03-29 09:51 castaglia
+ * src/data.c: Use pr_cmd_cmp() when handling any commands read from
+ the control channel during a data transfer as well.
- * doc/modules/mod_core.html:
- Add docs for the TransferLog directive.
+2011-03-19 castaglia <castaglia>
-2011-03-29 09:42 castaglia
+ * contrib/mod_rewrite.c: Update mod_rewrite to use pr_cmd_cmp()
+ where possible.
- * doc/modules/mod_log.html:
- Minor doc tweaks.
+2011-03-19 castaglia <castaglia>
-2011-03-28 15:49 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#3262 - Allow SQL
+ logging to separate database/server.
- * doc/howto/Compiling.html:
- Mention the new --enable-memcache and --enable-pcre configure
- options in the Compiling howto.
+2011-03-19 castaglia <castaglia>
-2011-03-28 15:38 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.
- * doc/modules/mod_memcache.html:
- Updating mod_memcache docs a little more.
+2011-03-19 castaglia <castaglia>
-2011-03-27 23:03 castaglia
+ * src/table.c: Minor improvement: compare the first key character
+ before calling strncmp(3).
- * 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-19 castaglia <castaglia>
-2011-03-25 22:32 castaglia
+ * src/log.c, src/trace.c: Trying to reduce the number of times that
+ we call strlen(3) while logging.
- * 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-19 castaglia <castaglia>
-2011-03-25 17:49 castaglia
+ * src/event.c: Fix issue with Bug#3619 fix (hooray for
+ unit/regression tests, which caught this issue).
- * NEWS, contrib/mod_exec.c, contrib/mod_ifsession.c,
- contrib/mod_sql.c, include/dirtree.h:
- Backport of fix for Bug#3610 to 1.3.3 branch.
+2011-03-19 castaglia <castaglia>
-2011-03-25 17:43 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix broken
+ ExtendedLog test due to typo.
- * 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.
+2011-03-19 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Fix a few minor
+ issues in the mod_sftp testsuite.
- 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-19 castaglia <castaglia>
-2011-03-25 17:23 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Adding more
+ regression tests for various LogFormat variables in various flows.
- * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm:
- Remove commented-out config.
+2011-03-19 castaglia <castaglia>
-2011-03-25 17:21 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.
- * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm:
- Refining the regression test for Bug#3610.
+2011-03-18 castaglia <castaglia>
-2011-03-25 17:17 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.
- * src/main.c:
- Add trace logging of the entire time it takes to handle a
- SIGHUP/restart.
+2011-03-18 castaglia <castaglia>
-2011-03-25 11:42 castaglia
+ * src/table.c: Avoid an unnecessary strncmp(3) if the key lengths
+ aren't the same.
- * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm:
- The regression test for Bug#3610 requires a proftpd with the
- mod_sql module.
+2011-03-18 castaglia <castaglia>
-2011-03-25 09:56 castaglia
+ * src/stash.c: Fix the mess of symbol lookups which I committed last
+ night. Much more legible now -- and it works properly, too.
- * tests/t/lib/ProFTPD/Tests/Signals/HUP.pm:
- Adding reproduction recipe/regression test for Bug#3610.
+2011-03-17 castaglia <castaglia>
-2011-03-25 09:51 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.
- * src/dirtree.c:
- Provide more legible trace logging of the config_type value for a
- config_rec.
+2011-03-17 castaglia <castaglia>
-2011-03-24 21:11 castaglia
+ * modules/mod_auth.c: Wrong length argument for strncmp() here.
- * src/trace.c:
- Fix compiler warning.
+2011-03-17 castaglia <castaglia>
-2011-03-24 18:24 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.
- * doc/: contrib/mod_sftp.html, 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-17 castaglia <castaglia>
-2011-03-24 18:14 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.
- * 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-17 castaglia <castaglia>
-2011-03-24 15:51 castaglia
+ * modules/mod_auth.c: More strcmp(3) -> strncmp(3) conversions where
+ fixed-length strings are used.
- * 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-17 castaglia <castaglia>
-2011-03-24 15:13 castaglia
+ * modules/mod_xfer.c: More strcmp(3) -> strncmp(3) conversions where
+ fixed-length strings are used.
- * doc/modules/mod_core.html:
- Adding docs for the new TraceOptions directive.
+2011-03-17 castaglia <castaglia>
-2011-03-24 14:58 castaglia
+ * modules/mod_core.c: More strcmp() -> strncmp() conversions where
+ fixed-length strings are used.
- * tests/: tests.pl, t/config/traceoptions.t,
- t/lib/ProFTPD/Tests/Config/TraceOptions.pm:
- Adding regression tests for the TraceOptions directive
- (Bug#3631).
+2011-03-17 castaglia <castaglia>
-2011-03-24 14:57 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).
- * 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-17 castaglia <castaglia>
-2011-03-24 12:10 castaglia
+ * modules/mod_ctrls.c: Starting work on converting modules which use
+ strcmp(3) on fixed-length strings to using strncmp(3) instead.
- * NEWS, contrib/mod_sql.c:
- Backport of fix for Bug#3632 to 1.3.3 branch.
+2011-03-17 castaglia <castaglia>
-2011-03-24 12:09 castaglia
+ * src/ctrls.c: Missed some spots in ctrls.c where strcmp(3) was
+ being called on fixed-length strings.
- * NEWS, contrib/mod_sql.c:
- Bug#3632 - mod_sql should log "unrecoverable database error" at a
- higher priority.
+2011-03-17 castaglia <castaglia>
-2011-03-24 08:35 castaglia
+ * src/ctrls.c, src/main.c: Changing more instances of strcmp(3) on
+ fixed strings to use strncmp(3) instead.
- * 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-17 castaglia <castaglia>
-2011-03-23 22:23 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.
- * 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-17 castaglia <castaglia>
-2011-03-23 22:17 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).
- * NEWS, contrib/mod_sftp/mod_sftp.c:
- Backport of fix for Bug#3630 to 1.3.3 branch.
+2011-03-17 castaglia <castaglia>
-2011-03-23 22:15 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).
- * 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-17 castaglia <castaglia>
-2011-03-23 21:42 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.
- * contrib/mod_rewrite.c:
- Update mod_rewrite to use pr_cmd_strcmp() where appropriate.
+2011-03-17 castaglia <castaglia>
-2011-03-23 10:46 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.
- * 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-17 castaglia <castaglia>
-2011-03-23 09:37 castaglia
+ * src/filter.c: Convert unnecessary strcmp(3) on fixed strings to
+ strncmp(3).
- * src/inet.c:
- Merging in more patches from the FreeBSD ports tree.
+2011-03-17 castaglia <castaglia>
-2011-03-23 09:36 castaglia
+ * src/stash.c: Eliminate one more strcmp(3) during symbol lookups.
- * src/inet.c:
- Merging more fixes from the FreeBSD ports tree, which were
- neglected to be reported upstream. Sigh.
+2011-03-17 castaglia <castaglia>
-2011-03-23 09:22 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.
- * NEWS, src/throttle.c:
- Backport of fix for Bug#3628 to 1.3.3 branch.
+2011-03-17 castaglia <castaglia>
-2011-03-23 09:22 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.
- * NEWS, src/throttle.c:
- Bug#3628 - Unnecessarily verbose "warning: unable to throttle
- bandwidth: Interrupted system call".
+2011-03-17 castaglia <castaglia>
-2011-03-22 15:20 castaglia
+ * src/stash.c: Make sure we handle the case of zero-length symbol
+ names properly, too. Just to be sure.
- * configure:
- Updated configure.
+2011-03-17 castaglia <castaglia>
-2011-03-22 15:16 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.
- * 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-17 castaglia <castaglia>
-2011-03-22 12:03 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).
- * NEWS, contrib/mod_sql.c:
- Backport of fix for Bug#3627 to 1.3.3 branch.
+2011-03-17 castaglia <castaglia>
-2011-03-22 12:02 castaglia
+ * doc/modules/mod_log.html: Add docs for the new %H LogFormat
+ variable.
- * 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-17 castaglia <castaglia>
-2011-03-22 11:44 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.
- * 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-17 castaglia <castaglia>
-2011-03-22 11:36 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.
- * 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-17 castaglia <castaglia>
-2011-03-22 10:54 castaglia
+ * RELEASE_NOTES: More added docs.
- * tests/t/: etc/modules/mod_tls/NOTES,
- 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-17 castaglia <castaglia>
-2011-03-22 10:53 castaglia
+ * doc/utils/ftpdctl.html: Add HTML version of the ftpdctl man page.
- * tests/t/etc/modules/mod_tls/: server-cert-passwd.pem,
- 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-17 castaglia <castaglia>
-2011-03-22 10:51 castaglia
+ * doc/utils/ftpscrub.html, doc/utils/ftptop.html: Adding HTML
+ versions of the man pages for ftpscrub and ftptop.
- * contrib/mod_tls.c:
- Start using trace logging for some of the mod_tls actions,
- especially those during server startup.
+2011-03-17 castaglia <castaglia>
-2011-03-22 07:55 castaglia
+ * Makefile.in, utils/ftpasswd.1, utils/ftpquota.1: Adding/installing
+ man pages for the ftpasswd and ftpquota utilities.
- * contrib/: mod_tls.c:
- Additional fix for Bug#3624.
+2011-03-17 castaglia <castaglia>
-2011-03-21 20:22 castaglia
+ * utils/ftpmail.1: Typos, formatting fixes.
- * 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-16 castaglia <castaglia>
-2011-03-21 19:40 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.
- * 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-16 castaglia <castaglia>
-2011-03-21 19:01 castaglia
+ * doc/utils/ftpmail.html, doc/utils/index.html: Adding ftpmail docs
+ in utils/ area.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Regression test for Bug#3625.
+2011-03-16 castaglia <castaglia>
-2011-03-21 15:30 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.
- * configure:
- Updated configure.
+2011-03-16 castaglia <castaglia>
-2011-03-21 15:27 castaglia
+ * src/session.c: Ignore EEXIST errors when stashing the disconnect
+ details.
- * configure.in:
- Check for headers that platforms often want for their
- backtrace(2) functions, before checking for the backtrace(2)
- function itself.
+2011-03-16 castaglia <castaglia>
-2011-03-21 15:22 castaglia
+ * contrib/mod_sftp/packet.c: Adding more trace logging of SSH2
+ packet IO.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding regression test for the %f LogFormat variable and the SFTP
- REMOVE request.
+2011-03-16 castaglia <castaglia>
-2011-03-21 14:55 castaglia
+ * contrib/mod_sql.c: Ignore EEXIST errors about stashing values in
+ the session.notes table.
- * NEWS, src/scoreboard.c:
- Backport of fix for Bug#3623 to 1.3.3 branch.
+2011-03-16 castaglia <castaglia>
-2011-03-21 14:55 castaglia
+ * contrib/Makefile.in: Make sure we set the normal
+ ownership/permissions on the installed Perl scripts.
- * NEWS, src/scoreboard.c:
- Bug#3623 - Truncated client name saved in ScoreboardFile.
+2011-03-16 castaglia <castaglia>
-2011-03-21 14:40 castaglia
+ * contrib/Makefile.in: Stop trying to strip symbols from Perl
+ scripts.
- * 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-16 castaglia <castaglia>
-2011-03-21 14:37 castaglia
+ * doc/contrib/mod_sql.html: Mention mod_sql_passwd in the
+ SQLAuthTypes docs.
- * NEWS, contrib/mod_ifsession.c:
- Backport of fix for Bug#3625 to 1.3.3 branch.
+2011-03-16 castaglia <castaglia>
-2011-03-21 14:36 castaglia
+ * doc/howto/SQL.html: Update the SQL howto to mention the
+ mod_sql_passwd module.
- * NEWS, contrib/mod_ifsession.c:
- Bug#3625 - mod_ifsession rules using regular expressions do not
- work.
+2011-03-16 castaglia <castaglia>
-2011-03-21 13:51 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.
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3624 to 1.3.3 branch.
+2011-03-16 castaglia <castaglia>
-2011-03-21 13:50 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.
- * NEWS, contrib/mod_tls.c:
- Bug#3624 - Plaintext command injection in FTPS support.
+2011-03-16 jwm <jwm>
-2011-03-21 11:30 castaglia
+ * configure: rebuild from configure.in
- * tests/t/lib/ProFTPD/Tests/Modules/mod_delay.pm:
- Adding regression tests for Bug#3622.
+2011-03-16 jwm <jwm>
-2011-03-21 08:47 castaglia
+ * 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.
- * NEWS, modules/mod_delay.c:
- Bug#3622 - mod_delay sometimes logs "unable to load DelayTable
- into memory".
+2011-03-16 castaglia <castaglia>
-2011-03-21 08:44 castaglia
+ * configure: Updating configure.
- * NEWS, modules/mod_delay.c:
- Backport of fix for Bug#3622 to 1.3.3 branch.
+2011-03-16 castaglia <castaglia>
-2011-03-20 20:20 castaglia
+ * NEWS: Fix typo.
- * src/session.c:
- Don't try to stash session disconnect notes in the session.notes
- table if that table does not exit.
+2011-03-15 castaglia <castaglia>
-2011-03-20 19:14 castaglia
+ * NEWS, src/scoreboard.c: Bug#3618 - ScoreboardFile locking should
+ be more resilient.
- * src/main.c:
- If the session exits because of a signal, use
- pr_session_disconnect() to set this end-of-session code.
+2011-03-15 castaglia <castaglia>
-2011-03-20 19:01 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.
- * 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-15 castaglia <castaglia>
-2011-03-20 18:45 castaglia
+ * Makefile.in, NEWS, RELEASE_NOTES, configure.in,
+ contrib/Makefile.in: Bug#3616 - Install contrib utilities as part of
+ 'make install' target.
- * utils/scoreboard.c:
- Adding explicit off_t typecasts in the utility code for reading
- the scoreboard.
+2011-03-15 castaglia <castaglia>
-2011-03-20 18:44 castaglia
+ * contrib/mod_sftp/fxp.c: Log the errors when closedir(3) returns an
+ error.
- * 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-15 castaglia <castaglia>
-2011-03-20 18:26 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.)
- * 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-15 castaglia <castaglia>
-2011-03-20 18:03 castaglia
+ * configure: Updating configure.
- * 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-15 castaglia <castaglia>
-2011-03-20 18:01 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.
- * contrib/mod_quotatab.c:
- Reset errno after delaying after a failed lock poll.
+2011-03-14 castaglia <castaglia>
-2011-03-20 17:48 castaglia
+ * doc/modules/mod_log.html: Updated LogFormat description for %w
+ variable.
- * 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-14 castaglia <castaglia>
-2011-03-20 16:55 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.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_delay.pm,
- t/modules/mod_delay.t:
- Start collecting regression tests for the mod_delay module.
+2011-03-12 castaglia <castaglia>
-2011-03-20 16:38 castaglia
+ * contrib/mod_sql.c: Updating mod_sql to use the new
+ pr_session_disconnect() function.
- * 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-12 castaglia <castaglia>
-2011-03-20 13:47 castaglia
+ * contrib/mod_rewrite.c: As part of investigating Bug#3611, I
+ cleaned up some of the mod_rewrite code around FIFOs.
- * 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-12 castaglia <castaglia>
-2011-03-20 13:39 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.
- * modules/mod_delay.c:
- Re-register any 'delay' ftpdctl actions upon restart.
+2011-03-10 castaglia <castaglia>
-2011-03-20 12:24 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.
- * doc/contrib/mod_sql.html:
- Adding documentation for the new SQLNamedConnectInfo directive.
+2011-03-09 castaglia <castaglia>
-2011-03-20 11:54 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.
- * 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-09 castaglia <castaglia>
-2011-03-20 11:01 castaglia
+ * NEWS, src/str.c: Bug#3614 - Malicious module can use sreplace()
+ function to overflow buffer.
- * 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-09 castaglia <castaglia>
-2011-03-19 22:59 castaglia
+ * tests/api/str.c: Add regression test for sreplace() issue from
+ Bug#3614.
- * src/cmd.c:
- Make the Command API a little more bullet-proof by trying catch
- some invalid arguments of various sorts.
+2011-03-09 castaglia <castaglia>
-2011-03-19 22:57 castaglia
+ * tests/api/regexp.c: Update the Regexp unit tests.
- * 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-07 castaglia <castaglia>
-2011-03-19 22:16 castaglia
+ * configure: Updated configure.
- * tests/: Makefile.in, api/cmd.c, api/stubs.c, api/tests.c,
- 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-07 castaglia <castaglia>
-2011-03-19 16:39 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.
- * NEWS, modules/mod_xfer.c,
- tests/t/lib/ProFTPD/Tests/Commands/ALLO.pm:
- Bug#3574 - Better handling of ALLO command.
+2011-03-06 castaglia <castaglia>
-2011-03-19 16:12 castaglia
+ * src/regexp.c: Quell compiler warnings about unused functions when
+ PCRE support is not enabled.
- * 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-05 castaglia <castaglia>
-2011-03-19 16:08 castaglia
+ * src/regexp.c: Typo.
- * 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-05 castaglia <castaglia>
-2011-03-19 16:02 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.
- * contrib/mod_sftp/fxp.c:
- Backport of fix from trunk where an RMDIR could lead to a
- segfault due to a null/uninitialized pointer.
+2011-03-04 castaglia <castaglia>
-2011-03-19 13:26 castaglia
+ * RELEASE_NOTES: Updating the list of new docs.
- * 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-03 castaglia <castaglia>
-2011-03-19 13:25 castaglia
+ * doc/utils/ftpasswd.html, doc/utils/ftpquota.html,
+ doc/utils/index.html: Updating links.
- * 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-03 castaglia <castaglia>
-2011-03-19 12:55 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.
- * contrib/mod_rewrite.c:
- Update the proftpd version required by mod_rewrite.
+2011-03-03 castaglia <castaglia>
-2011-03-19 12:53 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.
- * contrib/mod_exec.c:
- Updating mod_exec to use the new pr_cmd_cmp() API.
+2011-03-03 castaglia <castaglia>
-2011-03-19 12:52 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).
- * 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-03 castaglia <castaglia>
-2011-03-19 12:24 castaglia
+ * NEWS, src/data.c, tests/t/lib/ProFTPD/Tests/Commands/APPE.pm:
+ Bug#3612 - APPE/STOU upload flags erroneously preserved across
+ upload commands.
- * src/data.c:
- Use pr_cmd_cmp() when handling any commands read from the control
- channel during a data transfer as well.
+2011-03-02 castaglia <castaglia>
-2011-03-19 12:17 castaglia
+ * doc/utils/index.html: Start working on an index for docs for the
+ various utilities; these docs also need to be written.
- * contrib/mod_rewrite.c:
- Update mod_rewrite to use pr_cmd_cmp() where possible.
+2011-03-01 castaglia <castaglia>
-2011-03-19 12:13 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support writing <Global>
+ sections in testcase config files.
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#3262 - Allow SQL logging to separate database/server.
+2011-03-01 castaglia <castaglia>
-2011-03-19 12:02 castaglia
+ * doc/modules/mod_facts.html: Add FAQ about ListOptions and the
+ MLSD/MLST commands.
- * 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:
+2011-03-01 castaglia <castaglia>
- pr_cmd_get_id()
- pr_cmd_cmp()
+ * 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.
- 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.
+2011-03-01 castaglia <castaglia>
- This is done with an eye toward reducing wasteful/unnecessary
- strcmp(3) calls throughout the proftpd code base.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Fix the naming and
+ status of the regression test for Bug#3595.
-2011-03-19 11:57 castaglia
+2011-02-28 castaglia <castaglia>
- * src/table.c:
- Minor improvement: compare the first key character before calling
- strncmp(3).
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Adding regression
+ test for Bug#3595.
-2011-03-19 11:44 castaglia
+2011-02-28 castaglia <castaglia>
- * src/: log.c, trace.c:
- Trying to reduce the number of times that we call strlen(3) while
- logging.
+ * 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-03-19 11:32 castaglia
+2011-02-28 castaglia <castaglia>
- * src/: event.c:
- Fix issue with Bug#3619 fix (hooray for unit/regression tests,
- which caught this issue).
+ * configure: Updating the configure script.
-2011-03-19 11:21 castaglia
+2011-02-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Fix broken ExtendedLog test due to typo.
+ * 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-03-19 11:18 castaglia
+2011-02-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Fix a few minor issues in the mod_sftp testsuite.
+ * 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-03-19 10:55 castaglia
+2011-02-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Adding more regression tests for various LogFormat variables in
- various flows.
+ * 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-03-18 19:56 castaglia
+2011-02-28 castaglia <castaglia>
- * contrib/mod_sftp/channel.h:
- Quell the following compiler warning (seen on Mac OSX,
- gcc-4.0.1):
+ * 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().
- warning: this decimal constant is unsigned only in ISO C90
+2011-02-28 castaglia <castaglia>
- when compilign mod_sftp by explicitly marking constants stored in
- a uint32_t with a "UL" suffix.
+ * modules/mod_cap.c, modules/mod_lang.c: Updating more core modules
+ to use pr_session_disconnect().
-2011-03-18 11:22 castaglia
+2011-02-28 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.
+ * 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-03-18 10:33 castaglia
+2011-02-28 castaglia <castaglia>
- * src/table.c:
- Avoid an unnecessary strncmp(3) if the key lengths aren't the
- same.
+ * RELEASE_NOTES, doc/modules/mod_log.html: Mention the new %E
+ LogFormat variable in the release notes and in the mod_log docs.
-2011-03-17 17:03 castaglia
+2011-02-28 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.
+ * 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-03-17 15:16 castaglia
+2011-02-28 castaglia <castaglia>
- * contrib/mod_sftp/: auth-hostbased.c, auth-kbdint.c,
- auth-password.c, auth-publickey.c, auth.c, channel.c, compress.c,
- crypto.c, fxp.c, kex.c, keys.c, mod_sftp.c, scp.c, service.c,
- tap.c:
- Using strncmp(3) instead of strcmp(3) when fixed-length strings
- are used.
+ * 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-03-17 11:30 castaglia
+2011-02-27 castaglia <castaglia>
- * modules/mod_auth.c:
- Wrong length argument for strncmp() here.
+ * 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-03-17 11:15 castaglia
+2011-02-27 castaglia <castaglia>
- * contrib/mod_sftp/: auth.c, crypto.c, fxp.c, mod_sftp.c, tap.c,
- utf8.c:
- Converting strcasecmp(3) on fixed-length strings to
- strncasecmp(3) in mod_sftp.
+ * contrib/mod_load/mod_load.c.in: Update mod_load to use the
+ pr_session_end() function.
-2011-03-17 10:35 castaglia
+2011-02-27 castaglia <castaglia>
- * src/: dirtree.c, log.c, netaddr.c, encode.c, netacl.c, str.c:
- Converting from strcasecmp(3) to strncasecmp(3) where
- fixed-length strings are being used.
+ * 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-03-17 10:24 castaglia
+2011-02-27 castaglia <castaglia>
- * modules/mod_auth.c:
- More strcmp(3) -> strncmp(3) conversions where fixed-length
- strings are used.
+ * 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-03-17 10:16 castaglia
+2011-02-27 castaglia <castaglia>
- * modules/mod_xfer.c:
- More strcmp(3) -> strncmp(3) conversions where fixed-length
- strings are used.
+ * 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-03-17 10:08 castaglia
+2011-02-27 castaglia <castaglia>
- * modules/mod_core.c:
- More strcmp() -> strncmp() conversions where fixed-length strings
- are used.
+ * NEWS, contrib/mod_quotatab.c: Bug#3608 - Make mod_quotatab poll
+ for the QuotaLock file.
-2011-03-17 10:00 castaglia
+2011-02-27 castaglia <castaglia>
- * modules/: mod_facts.c, mod_lang.c:
- Finding more instances of strcmp(3) on fixed-length strings and
- changing them to use strncmp(3).
+ * 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-03-17 09:53 castaglia
+2011-02-27 castaglia <castaglia>
- * modules/mod_ctrls.c:
- Starting work on converting modules which use strcmp(3) on
- fixed-length strings to using strncmp(3) instead.
+ * include/options.h: Mention the possible use of the
+ PR_TUNABLE_RCVBUFSZ and PR_TUNABLE_SNDBUFSZ macros in the comments.
-2011-03-17 09:47 castaglia
+2011-02-27 castaglia <castaglia>
- * src/ctrls.c:
- Missed some spots in ctrls.c where strcmp(3) was being called on
- fixed-length strings.
+ * src/dirtree.c: Minor additional fix to make sure that using the
+ PR_TUNABLE_RCVBUFSZ macro works properly.
-2011-03-17 09:43 castaglia
+2011-02-27 castaglia <castaglia>
- * src/: ctrls.c, main.c:
- Changing more instances of strcmp(3) on fixed strings to use
- strncmp(3) instead.
+ * doc/contrib/mod_wrap2.html: Make sure to mention/document the IPv6
+ netmask rule syntax in the mod_wrap2 docs.
-2011-03-17 09:35 castaglia
+2011-02-27 castaglia <castaglia>
- * src/: dirtree.c, 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 07:10 castaglia
-
- * src/: auth.c, dirtree.c, encode.c:
- Here's a few more minor places where we can use strncmp(3)
- instead of strcmp(3).
-
-2011-03-17 07:05 castaglia
-
- * src/: dirtree.c, fsio.c, mkhome.c, throttle.c:
- Convert a few more places from using strcmp(3) to strncmp(3).
-
-2011-03-17 06:48 castaglia
-
- * src/: filter.c, session.c, stash.c, 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 06:46 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 06:22 castaglia
-
- * src/filter.c:
- Convert unnecessary strcmp(3) on fixed strings to strncmp(3).
-
-2011-03-17 06:18 castaglia
-
- * src/stash.c:
- Eliminate one more strcmp(3) during symbol lookups.
-
-2011-03-17 06:10 castaglia
-
- * src/: session.c, 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 06:02 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-16 22:46 castaglia
-
- * src/stash.c:
- Make sure we handle the case of zero-length symbol names
- properly, too. Just to be sure.
-
-2011-03-16 22:42 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-16 22:31 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-16 20:43 castaglia
-
- * doc/modules/mod_log.html:
- Add docs for the new %H LogFormat variable.
-
-2011-03-16 20:42 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-16 20:05 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-16 18:02 castaglia
-
- * RELEASE_NOTES:
- More added docs.
-
-2011-03-16 18:02 castaglia
-
- * doc/utils/ftpdctl.html:
- Add HTML version of the ftpdctl man page.
-
-2011-03-16 17:52 castaglia
-
- * doc/utils/: ftpscrub.html, ftptop.html:
- Adding HTML versions of the man pages for ftpscrub and ftptop.
-
-2011-03-16 17:14 castaglia
-
- * Makefile.in, utils/ftpasswd.1, utils/ftpquota.1:
- Adding/installing man pages for the ftpasswd and ftpquota
- utilities.
-
-2011-03-16 17:11 castaglia
-
- * utils/ftpmail.1:
- Typos, formatting fixes.
-
-2011-03-16 16:54 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 16:04 castaglia
-
- * doc/utils/: ftpmail.html, index.html:
- Adding ftpmail docs in utils/ area.
-
-2011-03-16 15:38 castaglia
-
- * contrib/mod_sftp/: disconnect.c, packet.c, 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 15:04 castaglia
-
- * src/session.c:
- Ignore EEXIST errors when stashing the disconnect details.
-
-2011-03-16 15:00 castaglia
-
- * contrib/mod_sftp/packet.c:
- Adding more trace logging of SSH2 packet IO.
-
-2011-03-16 14:45 castaglia
-
- * contrib/mod_sql.c:
- Ignore EEXIST errors about stashing values in the session.notes
- table.
-
-2011-03-16 14:22 castaglia
-
- * contrib/Makefile.in:
- Make sure we set the normal ownership/permissions on the
- installed Perl scripts.
-
-2011-03-16 14:18 castaglia
-
- * contrib/Makefile.in:
- Stop trying to strip symbols from Perl scripts.
-
-2011-03-16 12:50 castaglia
-
- * doc/contrib/mod_sql.html:
- Mention mod_sql_passwd in the SQLAuthTypes docs.
-
-2011-03-16 12:07 castaglia
-
- * doc/howto/SQL.html:
- Update the SQL howto to mention the mod_sql_passwd module.
-
-2011-03-16 11:49 castaglia
-
- * doc/: howto/Tracing.html, 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 11:26 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 06:43 jwm
-
- * configure: rebuild from configure.in
-
-2011-03-16 06:42 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-15 23:42 castaglia
-
- * configure:
- Updating configure.
-
-2011-03-15 23:31 castaglia
-
- * NEWS:
- Fix typo.
-
-2011-03-15 16:39 castaglia
-
- * NEWS, src/scoreboard.c:
- Bug#3618 - ScoreboardFile locking should be more resilient.
-
-2011-03-15 15:59 castaglia
-
- * NEWS, src/event.c:
- Backport of fix for Bug#3619 to 1.3.3 branch.
-
-2011-03-15 15:59 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 14:05 castaglia
-
- * NEWS, Makefile.in, RELEASE_NOTES, configure.in,
- contrib/Makefile.in:
- Bug#3616 - Install contrib utilities as part of 'make install'
- target.
-
-2011-03-15 11:51 castaglia
-
- * contrib/mod_sftp/fxp.c:
- Log the errors when closedir(3) returns an error.
-
-2011-03-15 11:45 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-14 22:31 castaglia
-
- * configure:
- Updating configure.
-
-2011-03-14 22:27 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 15:38 castaglia
-
- * doc/modules/mod_log.html:
- Updated LogFormat description for %w variable.
-
-2011-03-14 15:37 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 15:53 castaglia
-
- * contrib/mod_sql.c:
- Updating mod_sql to use the new pr_session_disconnect() function.
-
-2011-03-12 15:49 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 15:45 castaglia
-
- * tests/t/: etc/modules/mod_rewrite/reverse.pl,
- lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Adding reproduction test case for Bug#3611. No bugfix/patch for
- it yet.
-
-2011-03-09 23:28 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 14:28 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 14:15 castaglia
-
- * NEWS, src/str.c:
- Backport of fixes for Bug#3614 to 1.3.3 branch.
-
-2011-03-09 14:10 castaglia
-
- * NEWS, src/str.c:
- Bug#3614 - Malicious module can use sreplace() function to
- overflow buffer.
-
-2011-03-09 10:53 castaglia
-
- * tests/api/str.c:
- Add regression test for sreplace() issue from Bug#3614.
-
-2011-03-09 10:51 castaglia
-
- * tests/api/regexp.c:
- Update the Regexp unit tests.
-
-2011-03-07 10:17 castaglia
-
- * configure:
- Updated configure.
-
-2011-03-07 10:12 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 13:20 castaglia
-
- * src/regexp.c:
- Quell compiler warnings about unused functions when PCRE support
- is not enabled.
-
-2011-03-04 21:29 castaglia
-
- * src/regexp.c:
- Typo.
-
-2011-03-04 21:13 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-03 16:24 castaglia
-
- * RELEASE_NOTES:
- Updating the list of new docs.
-
-2011-03-03 14:17 castaglia
-
- * doc/utils/: ftpasswd.html, ftpquota.html, index.html:
- Updating links.
-
-2011-03-03 14:08 castaglia
-
- * doc/utils/: ftpasswd.html, ftpcount.html, ftpquota.html,
- ftpshut.html, ftpwho.html, index.html:
- Checking in some of the existing HTML docs for utilities.
-
-2011-03-03 13:38 castaglia
-
- * NEWS, RELEASE_NOTES, contrib/mod_ifsession.c,
- contrib/mod_ifversion.c, contrib/mod_quotatab.c,
- contrib/mod_rewrite.c, contrib/mod_site_misc.c,
- contrib/mod_sftp/interop.c, contrib/mod_sftp/mod_sftp.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 09:50 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 09:10 castaglia
-
- * NEWS, src/data.c:
- Backport of fix for Bug#3612 to 1.3.3 branch.
-
-2011-03-03 09:09 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-01 22:32 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 11:22 castaglia
-
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Support writing <Global> sections in testcase config files.
-
-2011-02-28 22:17 castaglia
-
- * doc/modules/mod_facts.html:
- Add FAQ about ListOptions and the MLSD/MLST commands.
-
-2011-02-28 17:58 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-02-28 17:42 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Fix the naming and status of the regression test for Bug#3595.
-
-2011-02-28 11:41 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Adding regression test for Bug#3595.
-
-2011-02-28 10:27 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 10:21 castaglia
-
- * configure:
- Updating the configure script.
-
-2011-02-28 10:15 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-27 23:02 castaglia
-
- * contrib/: mod_ifsession.c, mod_shaper.c, mod_unique_id.c,
- mod_load/mod_load.c.in, mod_sftp/mod_sftp.h.in,
- 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-27 22:54 castaglia
-
- * contrib/: mod_tls.c, mod_sftp/disconnect.c, mod_sftp/interop.c,
- mod_sftp/keys.c, mod_sftp/mod_sftp.c, mod_sftp/packet.c:
- Updating more contrib modules to use pr_session_disconnect().
-
-2011-02-27 22:31 castaglia
-
- * contrib/: mod_ban.c, mod_ifsession.c, mod_shaper.c,
- mod_unique_id.c, mod_load/mod_load.c.in, mod_wrap2/mod_wrap2.c:
- Updating some of the contrib modules to use
- pr_session_disconnect().
-
-2011-02-27 22:17 castaglia
-
- * modules/: mod_cap.c, mod_lang.c:
- Updating more core modules to use pr_session_disconnect().
-
-2011-02-27 22:08 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-27 21:50 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-27 21:48 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-27 18:29 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 13:36 castaglia
-
- * contrib/: mod_shaper.c, mod_sql.c, mod_sql_mysql.c,
- mod_sql_odbc.c, mod_sql_postgres.c, mod_sql_sqlite.c, mod_tls.c,
- mod_unique_id.c, mod_wrap2/mod_wrap2.c:
- Updating the rest of the contrib modules to use the
- pr_session_end() function.
-
-2011-02-27 11:51 castaglia
-
- * contrib/mod_load/mod_load.c.in:
- Update mod_load to use the pr_session_end() function.
-
-2011-02-27 11:47 castaglia
-
- * contrib/: mod_ban.c, mod_ifsession.c, mod_sftp/disconnect.c,
- mod_sftp/interop.c, mod_sftp/keys.c, mod_sftp/mod_sftp.c,
- mod_sftp/packet.c:
- Updating some of the contrib modules to use the pr_session_end()
- function.
-
-2011-02-27 11:40 castaglia
-
- * modules/: mod_auth.c, mod_cap.c, mod_core.c, mod_lang.c:
- Updating the core modules to use the pr_session_end() function.
-
-2011-02-27 11:28 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-26 17:54 castaglia
-
- * NEWS, contrib/mod_quotatab.c:
- Bug#3608 - Make mod_quotatab poll for the QuotaLock file.
-
-2011-02-26 17:30 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-26 17:12 castaglia
-
- * include/options.h:
- Mention the possible use of the PR_TUNABLE_RCVBUFSZ and
- PR_TUNABLE_SNDBUFSZ macros in the comments.
-
-2011-02-26 17:08 castaglia
-
- * src/: dirtree.c:
- Minor additional fix to make sure that using the
- PR_TUNABLE_RCVBUFSZ macro works properly.
-
-2011-02-26 16:58 castaglia
-
- * doc/contrib/mod_wrap2.html:
- Make sure to mention/document the IPv6 netmask rule syntax in the
- mod_wrap2 docs.
-
-2011-02-26 16:54 castaglia
-
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Backport of fix for Bug#3606 to 1.3.3 branch.
-
-2011-02-26 16:53 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 09:06 castaglia
-
- * src/response.c:
- Removed unused variable.
-
-2011-02-25 18:46 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:
- Backport of fix for Bug#3607 to 1.3.3 branch.
-
-2011-02-25 18:33 castaglia
-
- * tests/: tests.pl, t/config/socketoptions.t,
- t/lib/ProFTPD/Tests/Config/SocketOptions.pm:
- Adding regression tests for the SocketOptions directive, per
- Bug#3607.
-
-2011-02-25 18:31 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 12:18 castaglia
-
- * configure:
- Updated configure script.
-
-2011-02-25 12:15 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_site_misc.c, contrib/mod_sftp/interop.c,
- contrib/mod_sftp/mod_sftp.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-24 23:02 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 14:17 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm:
- Add regression test demonstrating netmask syntax for mod_wrap2.
-
-2011-02-23 14:16 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-22 23:04 castaglia
-
- * doc/contrib/: index.html, mod_readme.html:
- Adding HTML doc for the mod_readme module.
-
-2011-02-22 22:49 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm:
- Regression test for matching multiple DisplayReadme files.
-
-2011-02-22 19:14 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-22 18:51 castaglia
-
- * src/response.c:
- Backport fix for R_DUP bug (part of Bug#3605) to 1.3.3 branch.
-
-2011-02-22 18:47 castaglia
-
- * src/response.c: [no log message]
-
-2011-02-22 17:59 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-22 17:58 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm:
- Added regression test for mod_readme's handling of CWD commands.
-
-2011-02-22 17:16 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 11:40 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm:
- Updating the DirFakeMode test to be like the other DirFake*
- directive tests.
-
-2011-02-22 11:34 castaglia
-
- * tests/: tests.pl, t/config/dirfakegroup.t,
- t/config/dirfakeuser.t,
- t/lib/ProFTPD/Tests/Config/DirFakeGroup.pm,
- t/lib/ProFTPD/Tests/Config/DirFakeUser.pm:
- Start adding regression tests for the DirFakeGroup and
- DirFakeUser directives.
-
-2011-02-22 11:27 castaglia
-
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Fix regression caused by changing of default index in
- response_msg() function.
-
-2011-02-22 11:17 castaglia
-
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_readme.pm,
- t/modules/mod_readme.t:
- Adding regression tests for the mod_readme module.
-
-2011-02-22 11:15 castaglia
-
- * contrib/mod_readme.c:
- Fix some of the coding style in the mod_readme module; no
- functional change.
-
-2011-02-22 11:09 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-21 19:41 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm:
- Adding regression test for MaxCommandRate+mod_sftp+mod_ban
- config.
-
-2011-02-21 19:40 castaglia
-
- * contrib/mod_sftp/mod_sftp.c:
- Make sure that when mod_ban bans an SSH2 client, we disconnect
- the client properly.
-
-2011-02-21 19:36 castaglia
-
- * contrib/mod_ban.c:
- Fix mod_ban's handling of the 'core.max-command-rate' event.
-
-2011-02-21 19:20 castaglia
-
- * include/memcache.h, modules/mod_memcache.c, src/memcache.c:
- Clear up any session-wide memcache connection on end of session.
-
-2011-02-21 18:54 castaglia
-
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp.pm,
- t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm,
- t/modules/mod_sftp/ban.t:
- Splitting out the mod_ban-related mod_sftp tests into their own
- file.
-
-2011-02-20 19:08 castaglia
-
- * doc/modules/mod_xfer.html:
- Added docs for TransferRate.
-
-2011-02-20 18:58 castaglia
-
- * doc/modules/mod_xfer.html:
- Still working on more mod_xfer documentation.
-
-2011-02-20 18:57 castaglia
-
- * doc/howto/Sendfile.html:
- More known issues with sendfile(2).
-
-2011-02-20 18:40 castaglia
-
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_ratio.pm,
- t/modules/mod_ratio.t:
- Start of unit tests for mod_ratio; incidentally includes
- regression test for Bug#3600.
-
-2011-02-20 18:36 castaglia
-
- * NEWS, contrib/mod_sql.c, include/display.h, modules/mod_auth.c,
- modules/mod_core.c, src/display.c, src/main.c:
- Backport of fix for Bug#3538, Bug#3600 to 1.3.3 branch.
-
-2011-02-20 18:33 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm:
- Remove development/debugging cruft.
-
-2011-02-20 18:32 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-20 16:46 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 15:14 castaglia
-
- * src/main.c:
- Minor style cleanup; no functional change.
-
-2011-02-20 12:06 castaglia
-
- * doc/modules/: index.html, mod_site.html:
- Start on docs for the mod_site module.
-
-2011-02-20 12:00 castaglia
-
- * doc/modules/mod_log.html:
- Minor typos.
-
-2011-02-20 11:58 castaglia
-
- * doc/modules/: index.html, mod_log.html:
- Adding mod_log docs.
-
-2011-02-20 10:20 castaglia
-
- * doc/modules/mod_auth_unix.html:
- Fixing up the mod_auth_unix docs.
-
-2011-02-20 10:18 castaglia
-
- * doc/modules/mod_auth_file.html:
- Fixing up the mod_auth_file docs.
-
-2011-02-20 10:16 castaglia
-
- * doc/modules/: index.html, mod_auth.html:
- Start working on mod_auth-specific documentation.
-
-2011-02-20 09:45 castaglia
-
- * doc/modules/index.html:
- Add an index page for the core module docs.
-
-2011-02-20 09:30 castaglia
-
- * doc/modules/mod_memcache.html:
- Give example of specifying paths to libmemcached headers/libs in
- the mod_memcache docs.
-
-2011-02-20 09:26 castaglia
-
- * README.modules:
- Update the README.modules file.
-
-2011-02-20 09:23 castaglia
-
- * doc/modules/mod_auth_unix.html:
- Add FAQ about expired passwords, as per Bug#3582.
-
-2011-02-20 09:22 castaglia
-
- * configure:
- Update configure script.
-
-2011-02-20 09:14 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-19 18:27 castaglia
-
- * doc/modules/mod_dso.html:
- Fix the "Compatibility" versions in the mod_dso doc.
-
-2011-02-19 18:21 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-19 18:01 castaglia
-
- * doc/modules/mod_core.html:
- Add documentation for the current Include directive behavior
- (Bug#3588).
-
-2011-02-19 17:48 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-19 17:14 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-19 17:06 castaglia
-
- * RELEASE_NOTES, doc/modules/mod_core.html:
- Documenting the new MaxCommandRate directive (Bug#3565).
-
-2011-02-19 17:00 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 15:15 castaglia
-
- * contrib/mod_sftp/fxp.c:
- Backporting RMDIR logging fixes from trunk.
-
-2011-02-18 15:14 castaglia
-
- * contrib/mod_sftp/fxp.c:
- Additional fixes for logging of RMDIR in ExtendedLog, for
- Bug#3591.
-
-2011-02-17 10:00 castaglia
-
- * contrib/mod_sftp/display.c:
- Forgot to add back the format_size_str() function here.
-
-2011-02-16 18:12 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-16 16:49 castaglia
-
- * RELEASE_NOTES:
- Update release notes.
-
-2011-02-16 16:48 castaglia
-
- * doc/contrib/mod_sftp.html:
- Document the new IgnoreSFTPSetPerms SFTPOption.
-
-2011-02-16 16:46 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 14:21 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 14:19 castaglia
-
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_sftp/rewrite.pm,
- t/modules/mod_sftp/rewrite.t:
- Refactoring the mod_sftp+mod_rewrite tests out to a separate
- file.
-
-2011-02-16 11:10 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 10:33 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-15 22:32 castaglia
-
- * doc/modules/mod_ls.html:
- Start working on mod_ls-specific documentation.
-
-2011-02-15 20:48 castaglia
-
- * tests/: tests.pl, t/config/include.t,
- t/lib/ProFTPD/Tests/Config/Include.pm:
- Add regression tests for the Include directive.
-
-2011-02-15 16:27 castaglia
-
- * doc/contrib/: index.html, mod_tls_memcache.html:
- Adding docs for mod_tls_memcache module.
-
-2011-02-15 16:06 castaglia
-
- * NEWS, RELEASE_NOTES, contrib/mod_tls_memcache.c:
- Adding new mod_tls_memcache module.
-
-2011-02-15 16:04 castaglia
-
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_tls_memcache.pm,
- t/modules/mod_tls_memcache.t:
- Checking in tests for the new mod_tls_memcache module.
-
-2011-02-15 13:35 castaglia
-
- * contrib/: mod_tls_shmcache.c:
- Fix uninitialized pointer warning from Bug#3596.
-
-2011-02-15 13:31 castaglia
-
- * contrib/: mod_shaper.c:
- Fix printf(3) typecast warning from Bug#3596.
-
-2011-02-15 13:29 castaglia
-
- * modules/: mod_delay.c:
- Fix off-by-one compiler warnings from Bug#3596.
-
-2011-02-15 12:07 castaglia
-
- * NEWS, src/prxs.in:
- Backport of fix for Bug#3593 to 1.3.3 branch.
-
-2011-02-15 12:06 castaglia
-
- * NEWS, src/prxs.in:
- Bug#3593 - Using "$shell $libtool" in prxs does not work for all
- shells.
-
-2011-02-15 11:29 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-14 19:19 castaglia
-
- * contrib/mod_sftp/display.c:
- Remove unused function.
-
-2011-02-14 16:59 castaglia
-
- * RELEASE_NOTES:
- Adding release notes for myself, to be fleshed out more fully
- later.
-
-2011-02-14 16:58 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 14:46 castaglia
-
- * doc/modules/mod_auth_unix.html:
- Document the magicTokenChroot AuthUnixOption.
-
-2011-02-14 14:41 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 14:21 castaglia
-
- * contrib/: mod_tls.c, mod_sftp/kex.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-13 16:46 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 09:55 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add mod_sftp unit tests for Bug#3591.
-
-2011-02-13 09:53 castaglia
-
- * NEWS, contrib/mod_sql.c, modules/mod_log.c:
- Bug#3591 - %F LogFormat variable should work for MKD/RMD
- commands.
-
-2011-02-13 09:35 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-12 17:25 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-12 16:31 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-12 16:30 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 10:12 castaglia
-
- * contrib/mod_sftp/channel.h:
- Rather than relying on datatype underflow, explicitly define the
- max channel window size.
-
-2011-02-12 10:11 castaglia
-
- * contrib/mod_sftp/channel.h:
- Rather than relying on datatype underflow, explicitly define the
- max channel window size.
-
-2011-02-12 09:45 castaglia
-
- * src/display.c:
- Backport of fix for Bug#3589 to 1.3.3 branch.
-
-2011-02-12 09:45 castaglia
-
- * src/display.c:
- Bug#3589 - src/display.c doesn't compile on hpux since 1.3.3d.
-
-2011-02-12 09:41 castaglia
-
- * NEWS, contrib/mod_sftp/mod_sftp.c, contrib/mod_sftp/packet.c,
- contrib/mod_sftp/packet.h:
- Backport of fix for Bug#3586 to 1.3.3 branch.
-
-2011-02-12 09:39 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-25 23:21 castaglia
-
- * src/memcache.c:
- Make sure that pr_memcache_set_namespace() with a NULL namespace
- prefix works as we expect.
-
-2011-01-25 22:52 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-25 22:45 castaglia
-
- * contrib/mod_ban.c:
- Make sure we don't leak memory in a few memcache/tpl-related
- error cases.
-
-2011-01-25 17:03 castaglia
-
- * contrib/: mod_sftp/crypto.c, mod_tls.c:
- Use OpenSSL's ERR_remove_thread_state() API when possible, rather
- than the deprecated ERR_remove_state() function.
-
-2011-01-25 10:23 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 10:10 castaglia
-
- * NEWS, contrib/mod_tls.c:
- Bug#3585 - Allow client-requested SSL session renegotiation when
- securely supported.
-
-2011-01-24 23:44 castaglia
-
- * include/memcache.h, src/memcache.c:
- Adding memcache API functions for incrementing/decrementing a
- value stored in memcached.
-
-2011-01-24 09:53 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 21:57 castaglia
-
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_tls_shmcache.pm,
- t/modules/mod_tls_shmcache.t:
- Finally have a regression test for mod_tls_shmcache and SSL
- session caching.
-
-2011-01-23 21:54 castaglia
-
- * contrib/mod_tls_shmcache.c:
- Update mod_tls_shmcache to use trace logging in more places.
-
-2011-01-23 21:53 castaglia
-
- * contrib/mod_tls.c:
- Add logging of when an SSL session is reused/resumed for a
- control connection.
-
-2011-01-23 14:23 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 14:20 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 09:56 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-22 17:38 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-22 16:38 castaglia
-
- * include/memcache.h, modules/mod_memcache.c, src/memcache.c:
- Checkpoint of more of my work on memcache support.
-
-2011-01-21 11:41 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 09:34 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm:
- Add regression tests for the STAT output when ShowSymlinks is
- toggled.
-
-2011-01-21 00:44 castaglia
-
- * src/memcache.c:
- Use the AUTO_EJECT_HOSTS option, although it doesn't seem to be
- working as I expect.
-
-2011-01-21 00:21 castaglia
-
- * src/memcache.c:
- Add better trace logging of the dead memcached server when we can
- detect one.
-
-2011-01-21 00:09 castaglia
-
- * modules/mod_memcache.c:
- Slightly better logging of the libmemcached version being used.
-
-2011-01-20 23:19 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-20 23:15 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-20 19:45 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-20 19:43 castaglia
-
- * tests/: tests.pl, t/config/showsymlinks.t,
- t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm:
- 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-20 16:44 castaglia
-
- * doc/contrib/mod_ban.html:
- Adding stubs for the new BanCache and BanCacheOptions directives.
-
-2011-01-20 16:13 castaglia
-
- * doc/modules/mod_memcache.html:
- More stubs for the mod_memcache documentation.
-
-2011-01-19 21:39 castaglia
-
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_ban/memcache.pm,
- t/modules/mod_ban/memcache.t:
- Adding unit tests that I used for testing out mod_ban when
- configured to use a memcached server.
-
-2011-01-19 21:28 castaglia
-
- * contrib/mod_ban.c:
- And now mod_ban can use memcached for storing/retrieving any ban
- rules!
-
-2011-01-19 20:59 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-19 18:04 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-19 16:52 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm:
- Pedantic style change; no functional change.
-
-2011-01-19 16:45 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm:
- Updated ftpwho unit tests to run properly.
-
-2011-01-19 15:10 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 15:04 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm:
- Fix the HideNoAccess unit test to handle the ScoreboardMutex
- file.
-
-2011-01-19 15:02 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm:
- Fix the DirFakeMode unit tests to handle the ScoreboardMutex
- file.
-
-2011-01-19 14:59 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 14:56 castaglia
-
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Quell more Perl warnings.
-
-2011-01-19 14:47 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 14:42 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 11:28 castaglia
-
- * modules/mod_memcache.c:
- Fix compilation of mod_memcache.
-
-2011-01-19 10:14 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- Update ABOR unit test to handle ScoreboardMutex file.
-
-2011-01-19 10:10 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm:
- Allow more than 2 seconds for the STOU unit tests to run.
-
-2011-01-19 09:10 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/: LIST.pm, MLSD.pm, NLST.pm:
- Update these unit tests so that they work properly.
-
-2011-01-18 23:10 castaglia
-
- * src/memcache.c:
- Fix the compilation for src/memcache.c when --enable-memcache is
- not used.
-
-2011-01-18 18:20 castaglia
-
- * doc/modules/mod_memcache.html:
- Add links to the memcached and libmemcached pages.
-
-2011-01-18 18:12 castaglia
-
- * doc/modules/mod_memcache.html:
- Start working on documentation for the mod_memcache module.
-
-2011-01-18 18:09 castaglia
-
- * doc/modules/mod_ctrls.html:
- Updated mod_ctrls with description of where to find the latest
- version.
-
-2011-01-18 17:59 castaglia
-
- * doc/contrib/mod_sftp_pam.html:
- Updated the mod_sftp_pam docs to mention the new NoInfoMsgs
- SFTPPAMOption.
-
-2011-01-18 17:55 castaglia
-
- * NEWS, contrib/mod_sftp_pam.c:
- Bug#3578 - Ability to suppress sending messages from PAM to
- clients.
-
-2011-01-18 16:36 castaglia
-
- * NEWS, contrib/mod_sftp_pam.c:
- Backport of fix for Bug#3579 to 1.3.3 branch.
-
-2011-01-18 16:36 castaglia
-
- * NEWS, contrib/mod_sftp_pam.c:
- Bug#3579 - mod_sftp_pam may tell client to disable echoing
- erroneously.
-
-2011-01-17 22:27 castaglia
-
- * configure:
- Updated configure.
-
-2011-01-17 22:23 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-17 22:12 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-17 21:29 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 13:17 castaglia
-
- * include/memcache.h, modules/mod_memcache.c, src/memcache.c:
- Fix the handling of the BLOCKING option.
-
-2011-01-17 13:12 castaglia
-
- * include/memcache.h, modules/mod_memcache.c, src/memcache.c:
- More work on memcache support.
-
-2011-01-17 10:26 castaglia
-
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3544 to 1.3.3 branch.
-
-2011-01-17 10:24 castaglia
-
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3544 - mod_sftp closes channel too early after scp download.
-
-2011-01-14 11:11 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 09:27 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 10:13 castaglia
-
- * NEWS, modules/mod_auth_unix.c:
- Backport of fix for Bug#3575 to 1.3.3 branch.
-
-2011-01-13 10:12 castaglia
-
- * NEWS, modules/mod_auth_unix.c:
- Bug#3575 - Process privileges may not handled properly when
- --enable-autoshadow is used.
-
-2011-01-12 11:45 castaglia
-
- * modules/mod_site.c:
- Fix data type warning on Solaris.
-
-2011-01-11 22:58 castaglia
-
- * configure:
- Updated configure.
-
-2011-01-11 22:54 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-11 18:32 castaglia
-
- * src/main.c:
- Use better printf(3) style, and always support a format string,
- even for fixed input strings.
-
-2011-01-11 15:13 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 11:46 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/: ALLO.pm, DELE.pm, MODE.pm,
- NOOP.pm, PASV.pm, PWD.pm, QUIT.pm, RMD.pm, RNFR.pm:
- Removing more unneeded chomp() calls.
-
-2011-01-11 11:43 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/: APPE.pm, CDUP.pm, CWD.pm,
- EPRT.pm, MDTM.pm, SIZE.pm, STOR.pm, STRU.pm, SYST.pm, TYPE.pm:
- Removing unneeded chomp() calls.
-
-2011-01-11 11:39 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_cap.pm, mod_deflate.pm:
- Removing unneeded chomp() calls.
-
-2011-01-11 11:27 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/: AllowOverwrite.pm,
- CommandBufferSize.pm, DefaultChdir.pm, DeleteAbortedStores.pm,
- HiddenStores.pm, Order.pm, RewriteHome.pm:
- Remove unnecessary chomp() calls.
-
-2011-01-11 11:17 castaglia
-
- * tests/: tests.pl, t/commands/site/chmod.t,
- t/lib/ProFTPD/Tests/Commands/SITE/CHMOD.pm:
- Start working on regression tests for the various SITE commands.
-
-2011-01-11 10:07 castaglia
-
- * modules/mod_auth_file.c:
- Fix build of mod_auth_file on systems which have fgetpwent(3).
-
-2011-01-10 16:52 castaglia
-
- * src/fsio.c:
- Style nits; no functional change (other than adding signal
- handling in a while() loop).
-
-2011-01-10 13:57 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 13:38 castaglia
-
- * doc/howto/ConfigurationTricks.html:
- Mention TransferPriority in the ConfigurationTricks howto.
-
-2011-01-08 14:46 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 11:43 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 11:18 castaglia
-
- * modules/mod_auth_file.c:
- Fix a couple of bugs when using ID filtering in the AuthUserFile
- and AuthGroupFile directives.
-
-2011-01-08 11:17 castaglia
-
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_auth_file.pm,
- t/modules/mod_auth_file.t:
- Adding regression tests for the ID, home, and name filtering that
- can be done using AuthUserFile and AuthGroupFile directives.
-
-2011-01-07 17:45 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-07 16:37 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-07 16:21 castaglia
-
- * contrib/mod_sql_passwd.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm:
- Additional refinement from Bug#3500.
-
-2011-01-07 11:03 castaglia
-
- * doc/modules/mod_xfer.html:
- Start working on a mod_xfer doc.
-
-2011-01-07 10:58 castaglia
-
- * doc/modules/mod_core.html:
- Typo.
-
-2011-01-06 10:33 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-05 16:06 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Add regression test for the SQLGroupWhereClause directive.
-
-2011-01-05 11:26 castaglia
-
- * doc/howto/ConnectionACLs.html:
- Typo.
-
-2011-01-05 11:22 castaglia
-
- * doc/howto/ConnectionACLs.html:
- Typo.
-
-2011-01-05 11:12 castaglia
-
- * RELEASE_NOTES:
- Mention the new doc in the release notes.
-
-2011-01-05 11:11 castaglia
-
- * doc/howto/: index.html, ConnectionACLs.html:
- Adding ConnectionACL howto.
-
-2011-01-05 08:36 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 11:48 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 11:41 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 09:47 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 13:52 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/RLimitMemory.pm:
- Another RLimitMemory test; I need to add more such cases here.
-
-2011-01-03 13:40 castaglia
-
- * NEWS, modules/mod_core.c:
- Bug#3571 - RLimitMemory "max" soft/hard limits don't work.
-
-2011-01-03 13:14 castaglia
-
- * tests/: tests.pl, t/config/rlimitmemory.t,
- t/lib/ProFTPD/Tests/Config/RLimitMemory.pm:
- Adding regression tests for the RLimitMemory directive, per
- Bug#3571.
-
-2010-12-28 16:35 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Fix another few Perl warnings.
-
-2010-12-28 16:33 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm:
- Silence another Perl warning.
-
-2010-12-28 16:32 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Quell some Perl compiler warnings.
-
-2010-12-28 16:31 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/REST.pm:
- Remove redundant regression test.
-
-2010-12-27 12:32 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Add regression test for anonymous logins with mod_delay enabled.
-
-2010-12-27 12:22 castaglia
-
- * tests/Makefile.in:
- Make sure that 'make clean' works properly for the API tests.
-
-2010-12-26 21:27 castaglia
-
- * tests/api/timers.c:
- Typo.
-
-2010-12-26 21:23 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-26 21:17 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 14:36 castaglia
-
- * tests/api/timers.c:
- Allow some leeway when dealing with timer-based unit tests.
-
-2010-12-23 14:38 jwm
-
- * README.LDAP: bzr r110: capitalization consistency
-
-2010-12-23 14:37 jwm
-
- * RELEASE_NOTES: forgot to add notice of mod_ldap configuration
- overhaul to the release notes
-
-2010-12-23 14:34 jwm
-
- * README.LDAP: latest README with populated Changes section
-
-2010-12-23 11:17 castaglia
-
- * tests/api/pool.c:
- Fix pool unit test error.
-
-2010-12-21 16:13 castaglia
-
- * doc/howto/Scoreboard.html:
- Updating the Scoreboard howto with descriptions of the types of
- data recorded in the ScoreboardFile.
-
-2010-12-21 11:07 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-20 20:20 castaglia
-
- * modules/mod_ident.c:
- Fix an IdentLookups edge case where we were not closing the fd or
- removing the timer properly.
-
-2010-12-20 20:16 castaglia
-
- * modules/mod_ident.c:
- Typo.
-
-2010-12-20 19:32 castaglia
-
- * src/netio.c:
- Fix the IO event names for writes to "other" types of streams.
-
-2010-12-20 19:31 castaglia
-
- * NEWS, modules/mod_ident.c:
- Bug#3567 - IdentLookups do not work for IPv6 servers.
-
-2010-12-20 16:30 castaglia
-
- * doc/contrib/mod_tls_shmcache.html:
- Adding TLSSessionCache FAQ.
-
-2010-12-20 16:15 castaglia
-
- * doc/modules/mod_core.html:
- Updating mod_core docs with description of ProcessTitles
- directive.
-
-2010-12-20 16:05 castaglia
-
- * NEWS, include/proctitle.h, modules/mod_core.c, src/proctitle.c:
- Bug#3566 - Ability to turn verbose process titles off.
-
-2010-12-20 11:42 castaglia
-
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Config/MaxCommandRate.pm,
- t/config/maxcommandrate.t:
- Adding unit tests for the functionality in Bug#3565.
-
-2010-12-18 11:38 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 10:33 castaglia
-
- * contrib/mod_sql.c:
- Bug#3563 - Fix compiler warnings about possibly uninitialized
- variables.
-
-2010-12-18 10:30 castaglia
-
- * doc/contrib/mod_sftp.html:
- Bug#3564 - Remove the SFTPServices docs, since the directive was
- reworked to be the Protocols directive.
-
-2010-12-17 17:11 castaglia
-
- * include/version.h:
- Updating version.h for the CVS status once more.
-
-2010-12-17 17:11 castaglia
-
- * tests/t/: lib/ProFTPD/Tests/Modules/mod_deflate.pm,
- etc/modules/mod_deflate/test_50mb.bin:
- Remove the 50MB file used for mod_deflate regression testing; no
- need to clutter up the tarball with it.
-
-2010-12-17 16:49 castaglia
-
- * ChangeLog:
- Updated ChangeLog.
-
-2010-12-17 16:47 castaglia
-
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Warming up for the 1.3.3d release.
-
-2010-12-17 16:30 castaglia
-
- * ChangeLog:
- Updating ChangeLog.
-
-2010-12-17 16:28 castaglia
-
- * locale/files.txt:
- Updating the list of files for localization.
-
-2010-12-17 16:26 castaglia
-
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Getting ready to release 1.3.4rc1 (finally).
-
-2010-12-17 16:16 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-17 16:10 castaglia
-
- * configure:
- Updating configure script.
-
-2010-12-17 16:08 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 15:56 castaglia
-
- * src/display.c:
- Fix compile error due to a bad backport.
-
-2010-12-17 15:31 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 15:08 castaglia
-
- * contrib/mod_wrap2/mod_wrap2.h.in:
- Missed checkin for the fix for Bug#3558.
-
-2010-12-17 14:41 castaglia
-
- * RELEASE_NOTES:
- Updating release notes.
-
-2010-12-17 14:39 castaglia
-
- * RELEASE_NOTES:
- Updating the release notes.
-
-2010-12-17 10:40 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-16 20:23 castaglia
-
- * contrib/mod_sql.c:
- Backport of a typo fix for Bug#3536 to the 1.3.3 branch.
-
-2010-12-16 20:23 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-16 20:01 castaglia
-
- * src/response.c:
- Backport the fixes of the Response API.
-
-2010-12-16 20:01 castaglia
-
- * src/response.c:
- Wait to clear the cached last response code/msg values until
- pr_response_clear().
-
-2010-12-16 20:00 castaglia
-
- * src/response.c:
- The last commit broke pr_response_flush(); fix it properly.
-
-2010-12-16 19:40 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-16 19:25 castaglia
-
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3560 to 1.3.3 branch.
-
-2010-12-16 19:24 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-16 19:23 castaglia
-
- * src/response.c:
- Backport the Response API fixes from trunk.
-
-2010-12-16 19:17 castaglia
-
- * src/response.c:
- The mod_sftp testsuite caught some issues in the Response API.
-
-2010-12-16 13:31 castaglia
-
- * contrib/mod_sftp/packet.c:
- Have mod_sftp generate events when it does network IO.
-
-2010-12-16 11:35 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 15:59 castaglia
-
- * src/: data.c, 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 15:41 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 15:37 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-14 19:10 castaglia
-
- * doc/contrib/mod_wrap2.html:
- Added documentation for the new CheckAllNames WrapOption.
-
-2010-12-14 19:07 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-14 18:21 castaglia
-
- * doc/modules/mod_core.html:
- Start working a mod_core.html doc, just like we have for the
- other standard modules.
-
-2010-12-14 18:02 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-14 18:01 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-14 17:39 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-14 17:19 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-14 17:14 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-14 16:58 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-14 16:57 castaglia
-
- * modules/mod_auth.c, modules/mod_core.c, tests/tests.pl,
- tests/t/config/protocols.t,
- tests/t/lib/ProFTPD/Tests/Config/Protocols.pm:
- Bug#3556 - Disable protocol support on per-user/group/class
- basis.
-
-2010-12-14 11:17 castaglia
-
- * doc/contrib/mod_wrap2.html:
- Add documentation for the new WrapOptions directive, and the
- option added for Bug#3508.
-
-2010-12-14 11:06 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 10:26 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-13 22:35 castaglia
-
- * RELEASE_NOTES, doc/contrib/mod_sftp.html:
- Mention the new SFTPServices directive in the docs.
-
-2010-12-13 22:30 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 14:15 castaglia
-
- * tests/: tests.pl, t/config/maxclientsperhost.t,
- t/config/maxconnectionsperhost.t,
- t/lib/ProFTPD/Tests/Config/MaxClientsPerHost.pm,
- t/lib/ProFTPD/Tests/Config/MaxConnectionsPerHost.pm:
- Adding unit tests for the MaxClientsPerHost and
- MaxConnectionsPerHost directives.
-
-2010-12-13 11:50 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 13:06 castaglia
-
- * NEWS, RELEASE_NOTES, contrib/mod_deflate.c, contrib/mod_sql.c,
- contrib/mod_tls.c, contrib/mod_sftp/packet.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 12:58 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 12:38 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 12:37 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 12:12 castaglia
-
- * contrib/mod_deflate.c:
- The cause of Bug#3550 also occurred in the mod_deflate code;
- fixing it here.
-
-2010-12-10 14:38 jwm
-
- * contrib/mod_ldap.c: bzr r108: Handle potential NULL return
- value from crypt(). (Bug #3551)
-
-2010-12-10 11:12 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 11:05 castaglia
-
- * contrib/mod_sftp/: fxp.c, scp.c:
- Make SCP honor/handle the TimeoutNoTransfer and TimeoutStalled
- timeouts properly.
-
-2010-12-10 10:05 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 09:11 castaglia
-
- * modules/mod_xfer.c:
- The message logged for a TimeoutNoTransfer should be
- protocol-specific, and not have "FTP" hardcoded.
-
-2010-12-09 21:52 castaglia
-
- * src/main.c:
- Generate an event for parsed but unhandled/unrecognized commands
- as well.
-
-2010-12-09 21:34 castaglia
-
- * contrib/mod_sftp/: fxp.c, packet.c:
- Generate events when we receive invalid SSH2 packets, and when we
- receive invalid SFTP requests.
-
-2010-12-09 21:29 castaglia
-
- * src/main.c:
- Generate an event whenever an invalid command (i.e. an unparsable
- command) is received from the client.
-
-2010-12-09 21:08 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-08 21:58 castaglia
-
- * contrib/: mod_ban.c, mod_tls.c, mod_sftp/scp.c:
- Updating some macros based on a FreeBSD patch I found online
- (which wasn't passed on upstream to us).
-
-2010-12-08 18:54 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-08 18:45 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-08 17:54 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-08 16:41 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-08 16:41 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-08 16:38 castaglia
-
- * modules/mod_xfer.c:
- Make a reminder comment to myself to handle short writes to disk
- better.
-
-2010-12-08 14:30 castaglia
-
- * NEWS, contrib/mod_sftp/compress.c:
- Backport of fix for Bug#3550 to 1.3.3 branch.
-
-2010-12-08 14:30 castaglia
-
- * NEWS, contrib/mod_sftp/compress.c:
- Bug#3550 - SFTP compressed uploads can cause corrupted uploaded
- files.
-
-2010-12-08 14:28 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 11:59 castaglia
-
- * contrib/mod_sftp/fxp.c:
- Allocate a larger default buffer for incoming packets, to handle
- WRITE packets better.
-
-2010-12-07 16:31 castaglia
-
- * tests/t/: etc/modules/mod_sftp/bug3550.php,
- lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding reproduction recipe for Bug#3550.
-
-2010-12-07 10:22 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 10:18 castaglia
-
- * NEWS, contrib/mod_sql.c, modules/mod_auth_unix.c:
- Backport of fix for Bug#3551 to 1.3.3 branch.
-
-2010-12-07 10:18 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-03 16:10 castaglia
-
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3548 to 1.3.3 branch.
-
-2010-12-03 16:10 castaglia
-
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3548 - Null pointer segfault in mod_sftp when handling
- aborted connection.
-
-2010-12-03 15:00 castaglia
-
- * contrib/: mod_sql_sqlite.c:
- Fix logging of SQL query executing error.
-
-2010-12-03 12:42 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 15:24 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Adding reproduction recipe for Bug#3544.
-
-2010-12-01 10:48 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Adding regression test for Bug#3547.
-
-2010-12-01 10:46 castaglia
-
- * NEWS, contrib/mod_ifsession.c, modules/mod_core.c:
- Backport of fix for Bug#3547 to 1.3.3 branch.
-
-2010-12-01 10:42 castaglia
-
- * NEWS, contrib/mod_ifsession.c, modules/mod_core.c:
- Bug#3547 - Multiple AllowClass directives not handled properly.
-
-2010-11-30 14:57 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 11:26 castaglia
-
- * NEWS, contrib/mod_sql.c:
- Bug#3536 - mod_sql has insufficient bounds checking in
- sql_prepare_where() function.
-
-2010-11-30 11:21 castaglia
-
- * NEWS, contrib/mod_sql.c:
- Bug#3536 - mod_sql has insufficient bounds checking in
- sql_prepare_where() function.
-
-2010-11-22 11:17 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_wrap2_file.pm,
- mod_wrap2_sql.pm:
- Adding unit tests for mod_wrap2 and the WrapOptions directive
- from Bug#3508.
-
-2010-11-22 10:25 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add ExtendedLog RETR test for SFTP downloads.
-
-2010-11-22 10:21 castaglia
-
- * src/log.c:
- Make very sure our logging buffer isn't exceeded.
-
-2010-11-22 10:20 castaglia
-
- * src/log.c:
- Make very sure that our logging buffer isn't exceeded.
-
-2010-11-19 09:57 castaglia
-
- * tests/: tests.pl, t/config/commandbuffersize.t,
- t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm:
- Adding tests for the CommandBufferSize directive.
-
-2010-11-19 09:52 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 11:22 castaglia
-
- * src/timers.c:
- Make sure we reset the dynamic_timerno static variable when
- (re)initializing the Timers API as well.
-
-2010-11-16 11:21 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 11:20 castaglia
-
- * contrib/mod_sftp/: kex.c, 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 10:06 castaglia
-
- * contrib/dist/rpm/proftpd.spec:
- Make sure that mod_facts is listed in the .spec file.
-
-2010-11-16 07:46 castaglia
-
- * src/scoreboard.c:
- Don't forget to delete the ScoreboardMutex file as well.
-
-2010-11-15 14:27 castaglia
-
- * include/scoreboard.h:
- Additional comments for the scoreboard entry fields.
-
-2010-11-14 15:49 castaglia
-
- * NEWS:
- Mention the automatic setting of ScoreboardMutex when
- ScoreboardFile is used.
-
-2010-11-14 15:42 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 15:07 castaglia
-
- * tests/: tests.pl, t/config/transferrate.t,
- t/lib/ProFTPD/Tests/Config/TransferRate.pm:
- Adding unit tests for the TransferRate directive.
-
-2010-11-14 14:27 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-12 16:28 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Adding a few more FTPS regression tests.
-
-2010-11-12 16:22 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm:
- Quell minor perl compiler warning about redeclared variable.
-
-2010-11-11 09:40 castaglia
-
- * modules/mod_site.c:
- Add some trace logging for when SITE CHGRP/CHMOD fail.
-
-2010-11-11 09:38 castaglia
-
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_site.pm,
- t/modules/mod_site.t:
- Start working on regression tests for the mod_site module and its
- SITE commands.
-
-2010-11-10 17:24 castaglia
-
- * doc/howto/Scoreboard.html:
- Add mention of the new ScoreboardMutex directive in the
- Scoreboard howto.
-
-2010-11-10 16:48 castaglia
-
- * RELEASE_NOTES:
- Updating release notes.
-
-2010-11-10 16:48 castaglia
-
- * NEWS, include/scoreboard.h, modules/mod_core.c, src/scoreboard.c:
-
- Bug#3208 - Improve ScoreboardFile performance under load.
-
-2010-11-10 11:24 castaglia
-
- * NEWS, src/dirtree.c:
- Backport of fix for Bug#3530 to the 1.3.3 branch.
-
-2010-11-10 11:23 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 11:20 castaglia
-
- * NEWS:
- Mention the new "OldProtocolCompat" SFTPOption in the NEWS file.
-
-2010-11-10 09:56 castaglia
-
- * NEWS, src/dirtree.c:
- Bug#3526 - CPU usage at 100% when checking HideFiles pattern.
-
-2010-11-09 11:30 castaglia
-
- * doc/howto/Limit.html:
- Add an example of user-specific login denied by a specific IP
- address.
-
-2010-11-09 11:17 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 10:43 castaglia
-
- * NEWS, contrib/mod_quotatab.c:
- Bug#3531 - mod_quotatab contains duplicate EDQUOT errno code.
-
-2010-11-08 18:31 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-08 18:29 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-08 18:13 castaglia
-
- * src/netio.c:
- Stylistic nits; no functional change.
-
-2010-11-08 18:07 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-08 16:43 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Telnet.pm:
- Correct the bug number for this unit/regression test.
-
-2010-11-08 15:24 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm:
- Fix broken mod_copy unit test.
-
-2010-11-08 12:32 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-07 18:33 castaglia
-
- * contrib/mod_sql.c:
- Stylistic nit; no functional change.
-
-2010-11-07 16:57 castaglia
-
- * contrib/mod_sql.c, include/display.h, src/display.c:
- Backport to the 1.3.3 branch of the additional fix for
- SQLShowInfo lines, part of Bug#3423.
-
-2010-11-07 16:50 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-07 16:49 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 15:54 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm:
- Add regression test/reproduction recipe for Bug#3530.
-
-2010-11-07 15:19 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 11:55 castaglia
-
- * NEWS, RELEASE_NOTES, modules/mod_xfer.c:
- Bug#3310 - UseSendfile should be supported in <Directory> and
- .ftpaccess sections.
-
-2010-11-06 11:52 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-05 17:05 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 14:12 castaglia
-
- * tests/: tests.pl, t/config/usesendfile.t,
- t/lib/ProFTPD/Tests/Config/UseSendfile.pm:
- Adding regression tests for the UseSendfile directive, in
- preparation for working on Bug#3310.
-
-2010-11-05 09:34 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm:
- Updating multiline DisplayConnect regression test for changes due
- to Bug#3423.
-
-2010-11-05 09:17 castaglia
-
- * include/: display.h:
- Typo.
-
-2010-11-04 20:26 castaglia
-
- * modules/mod_ls.c:
- The 1.3.3 branch does not have the pr_str_is_fnmatch() function;
- revert to using strpbrk(3).
-
-2010-11-04 20:20 castaglia
-
- * NEWS, modules/mod_ls.c:
- Backport of fix for Bug#3529 to 1.3.3 branch.
-
-2010-11-04 20:20 castaglia
-
- * NEWS, modules/mod_ls.c:
- Bug#3529 - "LIST /*" now lists more than the expected directory.
-
-2010-11-04 19:56 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Adding reproduction recipes/regression tests for Bug#3529.
-
-2010-11-04 19:41 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-04 19:38 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 16:14 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 15:03 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 11:52 castaglia
-
- * NEWS, contrib/mod_sql.c, include/response.h, modules/mod_log.c,
- src/response.c:
- Backport of fix for Bug#3528 to 1.3.3 branch.
-
-2010-11-04 11:51 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 09:51 castaglia
-
- * NEWS, src/log.c:
- Backport of fix for Bug#3525 to 1.3.3 branch.
-
-2010-11-02 09:51 castaglia
-
- * NEWS, src/log.c:
- Bug#3525 - Default syslog logging causes logging to the wrong
- syslog facilities.
-
-2010-11-01 15:16 castaglia
-
- * RELEASE_NOTES:
- Updating release notes.
-
-2010-11-01 11:51 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 09:03 castaglia
-
- * contrib/mod_sftp/: fxp.c, scp.c:
- Set the session.curr_cmd value in mod_sftp, for use by contrib
- modules.
-
-2010-10-29 15:50 castaglia
-
- * contrib/mod_sftp/packet.c:
- Add trace logging of unknown disconnect reason codes.
-
-2010-10-29 15:45 castaglia
-
- * contrib/mod_sftp/: packet.c:
- Make sure we handle unknown disconnect reason code properly
- (Bug#3522).
-
-2010-10-29 15:28 castaglia
-
- * NEWS, contrib/mod_sftp/disconnect.c,
- contrib/mod_sftp/disconnect.h, contrib/mod_sftp/packet.c:
- Backport of fix for Bug#3522 to 1.3.3 branch.
-
-2010-10-29 15:28 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 10:14 castaglia
-
- * NEWS:
- Forgot to update NEWS with the version; will be corrected in the
- released tarball.
-
-2010-10-29 10:09 castaglia
-
- * ChangeLog:
- Updated ChangeLog.
-
-2010-10-29 10:08 castaglia
-
- * RELEASE_NOTES, contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating release notes and version files for the pending 1.3.3c
- release.
-
-2010-10-29 10:03 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 09:51 castaglia
-
- * src/dirtree.c:
- Fix typo in badly backported change which caused compilation
- failure.
-
-2010-10-29 09:35 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 09:31 castaglia
-
- * NEWS, src/netio.c:
- Backport of fix for Bug#3521 to 1.3.3 branch.
-
-2010-10-29 09:30 castaglia
-
- * tests/: tests.pl, t/telnet.t, t/lib/ProFTPD/Tests/Telnet.pm:
- Add regression test for the Telnet IAC handling bug (Bug#3521).
-
-2010-10-29 09:29 castaglia
-
- * NEWS, src/netio.c:
- Bug#3521 - Telnet IAC processing stack overflow.
-
-2010-10-26 20:07 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-26 20:02 castaglia
-
- * tests/: tests.pl, t/config/multilinerfc2228.t,
- t/lib/ProFTPD/Tests/Config/MultilineRFC2228.pm:
- Adding unit tests for the MultilineRFC2228 directive.
-
-2010-10-24 12:12 castaglia
-
- * lib/pr_fnmatch_loop.c:
- Try to avoid more non-gcc compiler unhappiness.
-
-2010-10-24 12:10 castaglia
-
- * lib/pr_fnmatch.c:
- Try to make non-gcc compilers happier by providing a
- __builtin_expect macro definition for them.
-
-2010-10-23 12:46 castaglia
-
- * src/dirtree.c:
- Fix minor issue with handling of escapes in is_fnmatch().
-
-2010-10-23 12:40 castaglia
-
- * include/compat.h:
- Make sure to have a compatibility macro for the renamed
- is_fnmatch() function.
-
-2010-10-23 12:39 castaglia
-
- * tests/api/netacl.c:
- Updated unit tests for NetACL parsing changes.
-
-2010-10-23 12:37 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-21 17:08 castaglia
-
- * RELEASE_NOTES:
- Updating release notes for 1.3.3 branch; need a maint release
- from this soon.
-
-2010-10-21 17:06 castaglia
-
- * NEWS, contrib/mod_site_misc.c:
- Backport of fix for Bug#3519 to 1.3.3 branch.
-
-2010-10-21 17:01 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 11:17 castaglia
-
- * doc/contrib/mod_site_misc.html:
- Updated mod_site_misc docs for new SiteMiscEngine directive.
-
-2010-10-21 11:15 castaglia
-
- * doc/contrib/mod_site_misc.html:
- Update mod_site_misc docs for new SiteMiscEngine directive.
-
-2010-10-21 11:09 castaglia
-
- * NEWS, contrib/mod_site_misc.c:
- Backport of fix for Bug#3518 to 1.3.3 branch.
-
-2010-10-21 11:08 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 16:38 castaglia
-
- * lib/: pr_fnmatch.c, 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 16:02 castaglia
-
- * contrib/: mod_quotatab.c:
- Clear the "have update" flag in a few more places, just to be
- sure.
-
-2010-10-20 15:49 castaglia
-
- * contrib/: mod_quotatab.c:
- Make sure the "have update" flag is cleared properly for DELEs;
- related to Bug#3517.
-
-2010-10-20 15:44 castaglia
-
- * NEWS, contrib/mod_quotatab.c:
- Backport of fix for Bug#3517 to 1.3.3 branch.
-
-2010-10-20 15:43 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 13:39 castaglia
-
- * doc/contrib/mod_sftp.html:
- Mention the space-avaiable SFTP extension in the SFTPExtensions
- doc.
-
-2010-10-20 13:38 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 12:13 castaglia
-
- * lib/: pr_fnmatch.c, 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 16:17 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm:
- Updated unit test for Bug#3484.
-
-2010-10-19 16:14 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 15:18 castaglia
-
- * NEWS, src/netacl.c, src/netaddr.c:
- Bug#3484 - Support range expressions for IP addresses in
- Allow/Deny/From rules.
-
-2010-10-19 15:14 castaglia
-
- * RELEASE_NOTES:
- Mention the upgrade of the bundled fnmatch implementation in the
- release notes.
-
-2010-10-19 15:06 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 14:14 castaglia
-
- * NEWS:
- Updating NEWS for Bug#3514.
-
-2010-10-18 14:13 castaglia
-
- * tests/tests.pl:
- More residue from Bug#3514.
-
-2010-10-18 14:13 castaglia
-
- * tests/t/lib/ProFTPD/TestSuite/Child.pm:
- Strange that these didn't get checked in, as part of Bug#3514.
-
-2010-10-18 14:12 castaglia
-
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Forgot to check this in; it's part of Bug#3514.
-
-2010-10-18 13:52 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/: AccessDenyMsg.pm,
- AccessGrantMsg.pm, AllowOverwrite.pm, AnonRejectPasswords.pm,
- AnonRequirePassword.pm, AuthAliasOnly.pm, AuthGroupFile.pm,
- AuthOrder.pm, AuthUsingAlias.pm, Classes.pm, CreateHome.pm,
- DefaultChdir.pm, DeleteAbortedStores.pm, DirFakeMode.pm,
- DisplayChdir.pm, DisplayConnect.pm, DisplayFileTransfer.pm,
- DisplayLogin.pm, DisplayQuit.pm, GroupOwner.pm, HiddenStores.pm,
- HideFiles.pm, HideGroup.pm, HideNoAccess.pm, HideUser.pm,
- MaxClients.pm, MaxInstances.pm, MaxLoginAttempts.pm,
- MaxRetrieveFileSize.pm, MaxStoreFileSize.pm, Order.pm,
- PathAllowFilter.pm, PathDenyFilter.pm, RequireValidShell.pm,
- RewriteHome.pm, ServerAdmin.pm, ServerIdent.pm,
- StoreUniquePrefix.pm, TimeoutIdle.pm, TimeoutLogin.pm,
- TimeoutNoTransfer.pm, TimeoutSession.pm, TimeoutStalled.pm,
- Trace.pm, UseFtpUsers.pm, UseGlobbing.pm, UserAlias.pm,
- UserOwner.pm, UserPassword.pm:
- Update tests to use base set_up() and tear_down() methods.
-
-2010-10-18 13:11 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/Limit/: Anonymous.pm,
- Filters.pm, LOGIN.pm, MFMT.pm, OPTS.pm, RMD.pm,
- SubDirectories.pm, XMKD.pm:
- Updating tests to use base set_up() and tear_down() methods.
-
-2010-10-18 11:57 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Config/: Directory/Limits.pm,
- Directory/Lookups.pm, Directory/Umask.pm, FTPAccess/DELE.pm,
- FTPAccess/Empty.pm, FTPAccess/Merging.pm, FTPAccess/RETR.pm:
- Updating tests to use base set_up() and tear_down() methods.
-
-2010-10-18 10:43 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Commands/: ABOR.pm, ALLO.pm, APPE.pm,
- CDUP.pm, CWD.pm, DELE.pm, EPRT.pm, EPSV.pm, FEAT.pm, HELP.pm,
- HOST.pm, LIST.pm, MDTM.pm, MFF.pm, MFMT.pm, MKD.pm, MLSD.pm,
- MLST.pm, MODE.pm, NLST.pm, NOOP.pm, PASS.pm, PASV.pm, PORT.pm,
- PWD.pm, QUIT.pm, REST.pm, RETR.pm, RMD.pm, RNFR.pm, RNTO.pm,
- SIZE.pm, STAT.pm, STOR.pm, STOU.pm, STRU.pm, SYST.pm, TYPE.pm,
- USER.pm:
- Updating tests to use base set_up() and tear_down() methods.
-
-2010-10-18 10:26 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_ban.pm, mod_cap.pm,
- mod_copy.pm, mod_ctrls.pm, mod_deflate.pm, mod_exec.pm,
- mod_ifsession.pm, mod_ifversion.pm, mod_lang.pm,
- mod_quotatab_file.pm, mod_quotatab_sql.pm, mod_radius.pm,
- mod_rewrite.pm, mod_sftp_sql.pm, mod_shaper.pm, mod_site_misc.pm,
- mod_sql.pm, mod_sql_passwd.pm, mod_sql_sqlite.pm, mod_tls.pm,
- mod_unique_id.pm, mod_wrap.pm, mod_wrap2_file.pm,
- mod_wrap2_sql.pm:
- Updating tests to use the base set_up() and tear_down() methods.
-
-2010-10-18 09:55 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Logging/: ExtendedLog.pm,
- TransferLog.pm:
- Updating tests to use base set_up() and tear_down() methods.
-
-2010-10-18 09:54 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Updating test to use the base set_up() and tear_down() methods.
-
-2010-10-18 09:52 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Signals/: ABRT.pm, HUP.pm, SEGV.pm,
- TERM.pm:
- Updating tests to use the base set_up() and tear_down() methods.
-
-2010-10-18 09:19 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Bug#3514 - Test suite tmpdir improvements.
-
-2010-10-16 11:48 castaglia
-
- * modules/mod_delay.c:
- Use LONG_MAX as the delay ceiling.
-
-2010-10-16 11:29 castaglia
-
- * contrib/mod_sftp/channel.c:
- Remove now-unused variable, and avoid a verbose compiler warning.
-
-2010-10-16 10:56 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 10:55 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 15:08 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 11:27 jwm
-
- * README.LDAP: update from latest mod_ldap bzr
-
-2010-10-15 11:26 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 15:01 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 14:39 castaglia
-
- * contrib/mod_sftp/: fxp.c:
- Handle quota-related errno values in the OPEN request handler.
-
-2010-10-14 14:31 castaglia
-
- * contrib/: mod_quotatab.c:
- Make sure that the STOR and APPE handlers set errno
- appropriately, when the quota are reached.
-
-2010-10-06 17:10 castaglia
-
- * NEWS, modules/mod_cap.c:
- Backport of fix for Bug#3513 to 1.3.3 branch.
-
-2010-10-06 17:10 castaglia
-
- * NEWS, modules/mod_cap.c:
- Bug#3513 - EPERM error logged unnecessarily for SFTP logins on
- Linux.
-
-2010-10-06 11:54 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 11:45 castaglia
-
- * doc/contrib/mod_tls.html:
- Document the newly added (Bug#3512) CommonNameRequired TLSOption.
-
-2010-10-06 11:43 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 11:39 castaglia
-
- * tests/t/etc/modules/mod_tls/: NOTES, 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 11:13 castaglia
-
- * NEWS, contrib/mod_sql_sqlite.c:
- Backport of fix for Bug#3511 to 1.3.3 branch.
-
-2010-09-29 11:13 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 11:20 jwm
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm: honor $allow_auth
- in ldap_auth() test
-
-2010-09-28 09:56 castaglia
-
- * RELEASE_NOTES:
- Make sure to mention the new NoErrorIfAbsent ListOption, from
- Bug#3506, in the release notes.
-
-2010-09-28 09:49 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-23 17:44 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 14:49 castaglia
-
- * doc/contrib/mod_sql_passwd.html:
- Doc typos (missing line breaks).
-
-2010-09-17 11:00 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 10:56 castaglia
-
- * contrib/mod_tls.c:
- Minor tweaks to the log message about the NoSessionUseRequired
- TLSOptions parameter.
-
-2010-09-16 14:40 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 14:36 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 10:37 castaglia
-
- * RELEASE_NOTES, doc/contrib/mod_sftp.html:
- Add docs for the new SFTPClientAlive directive.
-
-2010-09-15 10:29 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 11:16 castaglia
-
- * modules/mod_delay.c:
- Adding yet more trace logging to mod_delay.
-
-2010-09-14 11:08 castaglia
-
- * modules/mod_delay.c:
- Adding more trace logging to mod_delay.
-
-2010-09-14 10:55 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 16:13 castaglia
-
- * src/mkhome.c:
- Add support for trace logging of some of the CreateHome workings.
-
-2010-09-10 14:07 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-09 15:42 castaglia
-
- * ChangeLog:
- Updated Changelog.
-
-2010-09-09 15:40 castaglia
-
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing to release 1.3.3b.
-
-2010-09-08 12:01 castaglia
-
- * contrib/mod_sftp/kex.c:
- Backport the fixing of the DH_GEX_INIT command class marking as
- AUTH.
-
-2010-09-08 12:01 castaglia
-
- * contrib/mod_sftp/kex.c:
- Fixing marking of DH_GEX_INIT command class to be AUTH.
-
-2010-09-08 10:48 castaglia
-
- * contrib/: mod_ban.c, mod_tls.c, mod_sftp/scp.c:
- Backport the fixing of the getopt() resetting logic for HPUX11.
- Contributed by Steve Vickers.
-
-2010-09-08 10:48 castaglia
-
- * contrib/: mod_ban.c, mod_tls.c, mod_sftp/scp.c:
- Fix the getopt() resetting logic for HPUX11.
+ * 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.
-2010-09-07 12:02 castaglia
+2011-02-26 castaglia <castaglia>
- * modules/mod_auth.c:
- Forgot to allocate space for another pointer in the CreateHome
- config_rec.
+ * src/response.c: Removed unused variable.
-2010-09-07 11:57 castaglia
+2011-02-26 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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.
-2010-09-07 11:54 castaglia
+2011-02-26 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.
+ * 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.
-2010-09-07 11:49 castaglia
+2011-02-25 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).
+ * configure: Updated configure script.
-2010-09-07 11:12 castaglia
+2011-02-25 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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.
-2010-09-07 10:45 castaglia
+2011-02-25 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.
+ * 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.
-2010-09-03 11:51 castaglia
+2011-02-23 castaglia <castaglia>
- * doc/howto/CreateHome.html:
- Updated the CreateHome howto to describe the new 'homegid'
- parameter.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Add regression
+ test demonstrating netmask syntax for mod_wrap2.
-2010-09-03 09:48 castaglia
+2011-02-23 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.
+ * 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.
-2010-09-02 10:42 castaglia
+2011-02-23 castaglia <castaglia>
- * NEWS, src/parser.c,
- tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm:
- Bug#3502 - Support environment variables better in the config
- file.
+ * doc/contrib/index.html, doc/contrib/mod_readme.html: Adding HTML
+ doc for the mod_readme module.
-2010-09-01 14:49 castaglia
+2011-02-23 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm: Regression test
+ for matching multiple DisplayReadme files.
-2010-09-01 13:45 castaglia
+2011-02-23 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.
+ * 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.
-2010-08-31 15:22 jwm
+2011-02-23 castaglia <castaglia>
- * tests/tests.pl: get verbose output from Test::Harness, too
+ * src/response.c: [no log message]
-2010-08-31 15:17 jwm
+2011-02-23 castaglia <castaglia>
- * tests/t/: lib/ProFTPD/Tests/Modules/mod_ldap.pm,
- modules/mod_ldap.t: start mod_ldap test suite
+ * 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.
-2010-08-31 15:01 castaglia
+2011-02-23 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: EPRT.pm, EPSV.pm, PASV.pm,
- PORT.pm:
- Adding more regression tests for the commands involved in
- Bug#3487.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_readme.pm: Added regression
+ test for mod_readme's handling of CWD commands.
-2010-08-31 11:07 castaglia
+2011-02-23 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.
+ * 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.
-2010-08-30 10:43 castaglia
+2011-02-22 castaglia <castaglia>
- * RELEASE_NOTES:
- Preparing release notes for release.
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm: Updating the
+ DirFakeMode test to be like the other DirFake* directive tests.
-2010-08-30 10:41 castaglia
+2011-02-22 castaglia <castaglia>
- * NEWS:
- Removing duplicated entries from the NEWS file in the 1.3.3
- branch.
+ * 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.
-2010-08-30 10:37 castaglia
+2011-02-22 castaglia <castaglia>
- * NEWS, src/auth.c:
- Backport of fix for Bug#3501 to 1.3.3 branch.
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Fix regression caused by
+ changing of default index in response_msg() function.
-2010-08-30 10:37 castaglia
+2011-02-22 castaglia <castaglia>
- * NEWS, src/auth.c:
- Bug#3501 - <Anonymous> logins with "AuthAliasOnly on" still
- handled as anonymous logins.
+ * 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.
-2010-08-27 13:39 castaglia
+2011-02-22 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/AuthAliasOnly.pm:
- Regression/reproduction tests for Bug#3501.
+ * contrib/mod_readme.c: Fix some of the coding style in the
+ mod_readme module; no functional change.
-2010-08-27 13:38 castaglia
+2011-02-22 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Missing testcase tag.
+ * 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.
-2010-08-26 14:50 jwm
+2011-02-22 castaglia <castaglia>
- * contrib/mod_ldap.c: sync with mod_ldap bzr r104: remove
- LDAPQuotas in favor of using the LDAPUsers configuration
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp/ban.pm: Adding
+ regression test for MaxCommandRate+mod_sftp+mod_ban config.
- 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.
+2011-02-22 castaglia <castaglia>
- this seems to cut down on duplicate configuration and hopefully
- continues
- the trend of making mod_ldap easier to configure.
+ * contrib/mod_sftp/mod_sftp.c: Make sure that when mod_ban bans an
+ SSH2 client, we disconnect the client properly.
-2010-08-17 17:10 jwm
+2011-02-22 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r103: fix handling of
- LDAPGroups directive
+ * contrib/mod_ban.c: Fix mod_ban's handling of the
+ 'core.max-command-rate' event.
-2010-08-17 16:46 jwm
+2011-02-22 castaglia <castaglia>
- * 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.
+ * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Clear
+ up any session-wide memcache connection on end of session.
- 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
+2011-02-22 castaglia <castaglia>
-2010-08-16 13:42 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.
- * src/netaddr.c:
- The backported fix for Bug#3494 caused this branch to fail
- compilation, since the pr_netaddr_v6tov4() function does not
- exist in this branch. Fix the issue by adding the necessary
- code.
+2011-02-21 castaglia <castaglia>
-2010-08-14 09:49 castaglia
+ * doc/modules/mod_xfer.html: Added docs for TransferRate.
- * src/main.c:
- Generate a 'core.shutdown' event when the daemon is shutting
- down.
+2011-02-21 castaglia <castaglia>
- 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.
+ * doc/modules/mod_xfer.html: Still working on more mod_xfer
+ documentation.
- Gradually, the generation of the 'core.exit' event at daemon
- shutdown time will be phased out.
+2011-02-21 castaglia <castaglia>
-2010-08-14 09:25 castaglia
+ * doc/howto/Sendfile.html: More known issues with sendfile(2).
- * 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.
+2011-02-21 castaglia <castaglia>
-2010-08-13 14:10 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.
- * contrib/mod_sftp/fxp.c, modules/mod_xfer.c:
- Avoid spurious warnings like:
+2011-02-21 castaglia <castaglia>
- error adding 'mod_xfer.file-modified' note: File exists
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm: Remove
+ development/debugging cruft.
- by ensuring that that note is not in the table before adding it.
+2011-02-21 castaglia <castaglia>
-2010-08-11 07:56 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().
- * 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.
+2011-02-21 castaglia <castaglia>
-2010-08-10 14:23 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.
- * RELEASE_NOTES:
- Updated release notes.
+2011-02-20 castaglia <castaglia>
-2010-08-10 14:22 castaglia
+ * src/main.c: Minor style cleanup; no functional change.
- * doc/contrib/ftpmail.html:
- Update the ftpmail doc with mention of the new --auth
- command-line option.
+2011-02-20 castaglia <castaglia>
-2010-08-10 14:18 castaglia
+ * doc/modules/index.html, doc/modules/mod_site.html: Start on docs
+ for the mod_site module.
- * NEWS, contrib/ftpmail:
- Bug#3495 - Support SMTP authentication in the ftpmail Perl
- script.
+2011-02-20 castaglia <castaglia>
-2010-08-10 10:39 castaglia
+ * doc/modules/mod_log.html: Minor typos.
- * doc/modules/mod_lang.html:
- Start on a FAQ section for the mod_lang docs.
+2011-02-20 castaglia <castaglia>
-2010-08-09 14:17 castaglia
+ * doc/modules/index.html, doc/modules/mod_log.html: Adding mod_log
+ docs.
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Remove development cruft.
+2011-02-20 castaglia <castaglia>
-2010-08-09 14:10 castaglia
+ * doc/modules/mod_auth_unix.html: Fixing up the mod_auth_unix docs.
- * 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.
+2011-02-20 castaglia <castaglia>
-2010-08-09 09:31 castaglia
+ * doc/modules/mod_auth_file.html: Fixing up the mod_auth_file docs.
- * contrib/mod_rewrite.c:
- Fix harmless misspelling.
+2011-02-20 castaglia <castaglia>
-2010-08-06 11:34 castaglia
+ * doc/modules/index.html, doc/modules/mod_auth.html: Start working
+ on mod_auth-specific documentation.
- * 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).
+2011-02-20 castaglia <castaglia>
-2010-08-05 16:43 castaglia
+ * doc/modules/index.html: Add an index page for the core module
+ docs.
- * NEWS, src/netaddr.c:
- Backport of fix for Bug#3494 to 1.3.3 branch.
+2011-02-20 castaglia <castaglia>
-2010-08-05 16:43 castaglia
+ * doc/modules/mod_memcache.html: Give example of specifying paths to
+ libmemcached headers/libs in the mod_memcache docs.
- * NEWS, src/netaddr.c:
- Bug#3494 - Null pointer dereference for IPv6-enabled proftpd when
- no DefaultServer configured.
+2011-02-20 castaglia <castaglia>
- Fix the pr_netaddr_is_loopback() function to properly handle
- IPv4-mapped IPv6 addresses.
+ * README.modules: Update the README.modules file.
-2010-08-04 15:32 castaglia
+2011-02-20 castaglia <castaglia>
- * src/dirtree.c:
- Additional fix needed for Bug#3491.
+ * doc/modules/mod_auth_unix.html: Add FAQ about expired passwords,
+ as per Bug#3582.
-2010-08-04 15:32 castaglia
+2011-02-20 castaglia <castaglia>
- * src/dirtree.c,
- tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm:
- Additional fix, and regression test, for Bug#3491.
+ * configure: Update configure script.
-2010-08-04 11:19 castaglia
+2011-02-20 castaglia <castaglia>
- * tests/: tests.pl, t/config/limit/login.t,
- t/lib/ProFTPD/Tests/Config/Limit/LOGIN.pm:
- Add my regression/unit tests for Bug#3484 to CVS, so that they
- don't get lost in the shuffle.
+ * 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.
-2010-08-03 16:36 castaglia
+2011-02-20 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Some users are still reporting issues with SFTP directory
- listings with the current 1.3.3 branch code. I suspect that this
- change, in addition to the fix for Bug#3481 (already applied)
- might be necessary.
+ * doc/modules/mod_dso.html: Fix the "Compatibility" versions in the
+ mod_dso doc.
-2010-08-03 12:42 jwm
+2011-02-20 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r101 release 2.8.23
+ * 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.
-2010-08-02 17:02 castaglia
+2011-02-20 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.
+ * doc/modules/mod_core.html: Add documentation for the current
+ Include directive behavior (Bug#3588).
-2010-08-02 17:00 castaglia
+2011-02-20 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Updating SFTPOptions doc to mention new MatchKeySubject value,
- added for Bug#3493.
+ * 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.
-2010-08-02 16:57 castaglia
+2011-02-20 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.
+ * 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.
-2010-08-01 10:38 castaglia
+2011-02-20 castaglia <castaglia>
- * NEWS, src/data.c:
- Backport of fix for Bug#3492 to 1.3.3 branch.
+ * RELEASE_NOTES, doc/modules/mod_core.html: Documenting the new
+ MaxCommandRate directive (Bug#3565).
-2010-08-01 10:37 castaglia
+2011-02-20 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.
+ * NEWS, modules/mod_core.c: Bug#3565 - Support a MaxCommandRate, for
+ detecting and throttling clients which are sending commands too
+ quickly.
-2010-07-29 14:20 castaglia
+2011-02-18 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Backport of fix for Bug#3491 to 1.3.3 branch.
+ * contrib/mod_sftp/fxp.c: Additional fixes for logging of RMDIR in
+ ExtendedLog, for Bug#3591.
-2010-07-29 14:19 castaglia
+2011-02-17 castaglia <castaglia>
- * NEWS, src/dirtree.c,
- tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm:
- Bug#3491 - Directory pattern not matching as expected.
+ * contrib/mod_sftp/display.c: Forgot to add back the
+ format_size_str() function here.
-2010-07-27 15:16 castaglia
+2011-02-17 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.
+ * 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.
-2010-07-26 17:38 castaglia
+2011-02-17 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Backport of fix for Bug#3482 to 1.3.3 branch.
+ * RELEASE_NOTES: Update release notes.
-2010-07-26 17:37 castaglia
+2011-02-17 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#3482 - ProFTPD corrupts utmpx log files on FreeBSD 9.0/HEAD.
+ * doc/contrib/mod_sftp.html: Document the new IgnoreSFTPSetPerms
+ SFTPOption.
-2010-07-22 19:22 castaglia
+2011-02-17 castaglia <castaglia>
- * NEWS:
- Typo.
+ * 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.
-2010-07-21 13:23 castaglia
+2011-02-16 castaglia <castaglia>
- * contrib/mod_sftp/interop.c:
- Quell compiler warning about possibly using an uninitialized
- value.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: The
+ mod_rewrite-related mod_sftp tests have been moved out to their own
+ file.
-2010-07-20 09:23 castaglia
+2011-02-16 castaglia <castaglia>
- * NEWS, modules/mod_ls.c, src/data.c:
- Backport of fix for Bug#3487 to 1.3.3 branch.
+ * 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.
-2010-07-20 09:23 castaglia
+2011-02-16 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.
+ * 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.
-2010-07-20 09:14 castaglia
+2011-02-16 castaglia <castaglia>
- * locale/: bg_BG.po, en_US.po, fr_FR.po, it_IT.po, ja_JP.po,
- ko_KR.po, proftpd.pot, ru_RU.po, zh_CN.po, zh_TW.po:
- Fixing 'data tranfer' -> 'data transfer' typo in the localized
- files.
+ * 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.
-2010-07-20 09:12 castaglia
+2011-02-16 castaglia <castaglia>
- * NEWS:
- Typo.
+ * doc/modules/mod_ls.html: Start working on mod_ls-specific
+ documentation.
-2010-07-20 09:12 castaglia
+2011-02-16 castaglia <castaglia>
- * src/data.c:
- Fix typo.
+ * tests/t/config/include.t,
+ tests/t/lib/ProFTPD/Tests/Config/Include.pm, tests/tests.pl: Add
+ regression tests for the Include directive.
-2010-07-16 08:54 castaglia
+2011-02-16 castaglia <castaglia>
- * NEWS, src/main.c:
- Backport of fix for Bug#3485 to 1.3.3 branch.
+ * doc/contrib/index.html, doc/contrib/mod_tls_memcache.html: Adding
+ docs for mod_tls_memcache module.
-2010-07-16 08:53 castaglia
+2011-02-16 castaglia <castaglia>
- * NEWS, src/main.c:
- Bug#3485 - Disabling IPv6 via -4 or --ipv4 command-line options
- does not work.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls_memcache.c: Adding new
+ mod_tls_memcache module.
-2010-07-15 10:28 castaglia
+2011-02-16 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Backport of fix for Bug#3483 to 1.3.3 branch.
+ * 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.
-2010-07-15 09:59 castaglia
+2011-02-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.
+ * contrib/mod_tls_shmcache.c: Fix uninitialized pointer warning from
+ Bug#3596.
-2010-07-14 17:09 castaglia
+2011-02-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).
+ * contrib/mod_shaper.c: Fix printf(3) typecast warning from
+ Bug#3596.
-2010-07-13 14:28 castaglia
+2011-02-15 castaglia <castaglia>
- * doc/contrib/mod_ctrls_admin.html:
- Document the just-added 'ftpdctl debug level' feature.
+ * modules/mod_delay.c: Fix off-by-one compiler warnings from
+ Bug#3596.
-2010-07-13 14:21 castaglia
+2011-02-15 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.
+ * NEWS, src/prxs.in: Bug#3593 - Using "$shell $libtool" in prxs does
+ not work for all shells.
-2010-07-08 09:25 castaglia
+2011-02-15 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3481 to 1.3.3 branch.
+ * 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.
-2010-07-08 09:24 castaglia
+2011-02-15 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Bug#3481 - Problem with SFTP directory listings.
+ * contrib/mod_sftp/display.c: Remove unused function.
-2010-07-06 08:50 castaglia
+2011-02-15 castaglia <castaglia>
- * contrib/mod_sftp/interop.c:
- Backport part of the fix for Bug#3480; in fixing that, I found
- that the interop pattern matching for SSH probes and scanners was
- broken.
+ * RELEASE_NOTES: Adding release notes for myself, to be fleshed out
+ more fully later.
-2010-07-05 10:27 castaglia
+2011-02-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add regression tests for mod_sftp's scanner/probe checks.
+ * 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.
-2010-07-05 10:26 castaglia
+2011-02-14 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Document the new OldProtocolCompat SFTPOption for Bug#3480.
+ * doc/modules/mod_auth_unix.html: Document the magicTokenChroot
+ AuthUnixOption.
-2010-07-05 10:25 castaglia
+2011-02-14 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.
+ * 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).
-2010-07-03 12:51 castaglia
+2011-02-14 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.
+ * 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.
-2010-07-03 11:57 castaglia
+2011-02-14 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.
+ * 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.
-2010-07-03 10:00 castaglia
+2011-02-13 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add mod_sftp unit
+ tests for Bug#3591.
-2010-07-03 09:38 castaglia
+2011-02-13 castaglia <castaglia>
- * configure:
- Updated configure.
+ * NEWS, contrib/mod_sql.c, modules/mod_log.c: Bug#3591 - %F
+ LogFormat variable should work for MKD/RMD commands.
-2010-07-03 09:36 castaglia
+2011-02-13 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.
+ * 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.
-2010-07-02 23:19 castaglia
+2011-02-13 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.
+ * 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.
-2010-07-02 20:11 castaglia
+2011-02-13 castaglia <castaglia>
- * doc/contrib/mod_exec.html:
- Mention the newly added %A variable in the mod_exec docs.
+ * 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).
-2010-07-02 20:09 castaglia
+2011-02-13 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.
+ * 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.
-2010-07-01 08:14 castaglia
+2011-02-12 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * contrib/mod_sftp/channel.h: Rather than relying on datatype
+ underflow, explicitly define the max channel window size.
-2010-07-01 08:14 castaglia
+2011-02-12 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for a release of 1.3.3a.
+ * src/display.c: Bug#3589 - src/display.c doesn't compile on hpux
+ since 1.3.3d.
-2010-07-01 08:06 castaglia
+2011-02-12 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention the SSL_shutdown() fix in the release notes.
+ * 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.
-2010-06-30 09:35 castaglia
+2011-01-26 castaglia <castaglia>
- * tests/: tests.pl, t/config/authorder.t,
- t/lib/ProFTPD/Tests/Config/AuthOrder.pm:
- Add some regression tests for the AuthOrder directive.
+ * src/memcache.c: Make sure that pr_memcache_set_namespace() with a
+ NULL namespace prefix works as we expect.
-2010-06-30 08:57 castaglia
+2011-01-26 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.
+ * 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.
-2010-06-30 08:55 castaglia
+2011-01-26 castaglia <castaglia>
- * modules/mod_core.c:
- Stylistic nits; no functional change.
+ * contrib/mod_ban.c: Make sure we don't leak memory in a few
+ memcache/tpl-related error cases.
-2010-06-29 13:25 castaglia
+2011-01-26 castaglia <castaglia>
- * tests/t/etc/modules/mod_tls/: ca-cert.pem, client-cert.pem,
- server-cert.p12, server-cert.pem:
- Adding new SSL certs for the mod_tls regression tests; these
- certs should be good for 10 years.
+ * 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.
-2010-06-29 13:23 castaglia
+2011-01-25 castaglia <castaglia>
- * tests/t/etc/modules/mod_tls/NOTES:
- Reminder notes to myself for generating the CRL and PKCS12 files.
+ * 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).
-2010-06-29 13:23 castaglia
+2011-01-25 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.
+ * NEWS, contrib/mod_tls.c: Bug#3585 - Allow client-requested SSL
+ session renegotiation when securely supported.
-2010-06-29 07:56 castaglia
+2011-01-25 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_ifversion.pm,
- t/modules/mod_ifversion.t:
- Adding regression tests for mod_ifversion.
+ * include/memcache.h, src/memcache.c: Adding memcache API functions
+ for incrementing/decrementing a value stored in memcached.
-2010-06-29 07:55 castaglia
+2011-01-24 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, doc/contrib/index.html:
- Mention the new mod_ifversion module.
+ * 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.
-2010-06-29 07:52 castaglia
+2011-01-24 castaglia <castaglia>
- * contrib/mod_ifversion.c, doc/contrib/mod_ifversion.html:
- Adding mod_ifversion to the contrib/ modules area.
+ * contrib/mod_tls_shmcache.c: Update mod_tls_shmcache to use trace
+ logging in more places.
-2010-06-28 10:53 castaglia
+2011-01-24 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes, preparing for release.
+ * contrib/mod_tls.c: Add logging of when an SSL session is
+ reused/resumed for a control connection.
-2010-06-28 10:53 castaglia
+2011-01-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Minor formatting tweaks.
+ * 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.
-2010-06-28 10:46 castaglia
+2011-01-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Start fleshing out the RELEASE_NOTES and preparing for a release.
+ * 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.
-2010-06-27 18:45 jwm
+2011-01-23 castaglia <castaglia>
- * contrib/mod_ldap.c: merge r1.86 from HEAD
+ * 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.
-2010-06-27 18:42 jwm
+2011-01-23 castaglia <castaglia>
- * contrib/mod_ldap.c: revert r1.83 in favor of mod_ldap bzr r98
+ * 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.
- 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.
+2011-01-23 castaglia <castaglia>
- 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.
+ * include/memcache.h, modules/mod_memcache.c, src/memcache.c:
+ Checkpoint of more of my work on memcache support.
-2010-06-27 18:36 jwm
+2011-01-21 castaglia <castaglia>
- * contrib/mod_ldap.c: revert r1.82 in favor of mod_ldap bzr r97
+ * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Added regression
+ tests for ShowSymlinks and MLST, using relative symlinked paths in
+ chrooted sessions.
- decline requests for ssh pubkeys if we're not configured to do
- auth.
+2011-01-21 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Config/ShowSymlinks.pm: Add regression
+ tests for the STAT output when ShowSymlinks is toggled.
-2010-06-25 16:29 castaglia
+2011-01-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/: ExtendedLog.pm,
- TransferLog.pm:
- Adding regression tests showing that logging to a full filesystem
- doesn't cause undue problems for proftpd's handling of a session.
+ * src/memcache.c: Use the AUTO_EJECT_HOSTS option, although it
+ doesn't seem to be working as I expect.
-2010-06-25 10:05 castaglia
+2011-01-21 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.
+ * src/memcache.c: Add better trace logging of the dead memcached
+ server when we can detect one.
-2010-06-25 09:55 castaglia
+2011-01-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/REST.pm:
- Accidentally overloaded a function name. Oops.
+ * modules/mod_memcache.c: Slightly better logging of the
+ libmemcached version being used.
-2010-06-23 17:56 castaglia
+2011-01-21 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.
+ * 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.
-2010-06-23 17:55 castaglia
+2011-01-21 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.
+ * 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.
-2010-06-23 09:51 castaglia
+2011-01-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm:
- Remove yet more debugging cruft.
+ * 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.
-2010-06-23 09:47 castaglia
+2011-01-21 castaglia <castaglia>
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm,
- t/config/anonrejectpasswords.t:
- Add regression test for the AnonRejectPasswords directive.
+ * 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.
-2010-06-23 08:39 castaglia
+2011-01-21 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm:
- Remove debugging cruft.
+ * doc/contrib/mod_ban.html: Adding stubs for the new BanCache and
+ BanCacheOptions directives.
-2010-06-23 08:35 castaglia
+2011-01-21 castaglia <castaglia>
- * tests/: tests.pl, t/config/anonrequirepassword.t,
- t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm:
- Add regression tests for the AnonRequirePassword directive.
+ * doc/modules/mod_memcache.html: More stubs for the mod_memcache
+ documentation.
-2010-06-23 07:41 castaglia
+2011-01-20 castaglia <castaglia>
- * NEWS, contrib/mod_sql_sqlite.c:
- Backport of fix for Bug#3474 to 1.3.3 branch.
+ * 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.
-2010-06-23 07:29 castaglia
+2011-01-20 castaglia <castaglia>
- * NEWS, contrib/mod_sql_sqlite.c:
- Bug#3474 - Using SQLite database and SQLLog directive can lead to
- problems under load.
+ * contrib/mod_ban.c: And now mod_ban can use memcached for
+ storing/retrieving any ban rules!
- 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.
+2011-01-20 castaglia <castaglia>
-2010-06-22 17:03 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.
- * doc/modules/mod_auth_unix.html:
- Start on a doc just for mod_auth_unix; we needed a place to
- document the AuthUnixOptions values.
+2011-01-20 castaglia <castaglia>
-2010-06-22 15:03 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.
- * configure:
- Updated configure.
+2011-01-20 castaglia <castaglia>
-2010-06-22 15:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Pedantic style change;
+ no functional change.
- * NEWS, modules/mod_auth_unix.c:
- Backport of fix for Bug#3475 to 1.3.3 branch.
+2011-01-20 castaglia <castaglia>
-2010-06-22 15:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Utils/ftpwho.pm: Updated ftpwho unit
+ tests to run properly.
- * modules/mod_auth_unix.c:
- Forgot to update copyright dates on the modified file.
+2011-01-19 castaglia <castaglia>
-2010-06-22 15:01 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/HideUser.pm: Fix another of the
+ HideUser tests which does require rootprivs to be run.
- * NEWS, modules/mod_auth_unix.c:
- Bug#3475 - Add new 'noGetgrouplist' AuthUnixOption to work around
- buggy libc code.
+2011-01-19 castaglia <castaglia>
-2010-06-22 14:59 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm: Fix the
+ HideNoAccess unit test to handle the ScoreboardMutex file.
- * 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.
+2011-01-19 castaglia <castaglia>
-2010-06-22 14:39 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm: Fix the
+ DirFakeMode unit tests to handle the ScoreboardMutex file.
- * 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.
+2011-01-19 castaglia <castaglia>
-2010-06-22 09:37 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.
- * NEWS, modules/mod_ls.c:
- Backport of fix for Bug#3476 to 1.3.3 branch.
+2011-01-19 castaglia <castaglia>
-2010-06-22 09:36 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Quell more Perl warnings.
- * NEWS, modules/mod_ls.c:
- Bug#3476 - LIST/NLST of path starting with "-" fails.
+2011-01-19 castaglia <castaglia>
-2010-06-22 09:33 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.
- * tests/t/lib/ProFTPD/Tests/Commands/: LIST.pm, NLST.pm:
- Adding reproduction recipes/regression tests for Bug#3476.
+2011-01-19 castaglia <castaglia>
-2010-06-22 09:09 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm: Only run the
+ UseFtpUsers tests on a system which has the /etc/ftpusers file.
- * doc/contrib/mod_sftp.html:
- Add FAQ about "line too long" authorized key errors.
+2011-01-19 castaglia <castaglia>
-2010-06-22 06:59 castaglia
+ * modules/mod_memcache.c: Fix compilation of mod_memcache.
- * contrib/: mod_wrap2_sql.c:
- Additional fixes for Bug#3471.
+2011-01-19 castaglia <castaglia>
-2010-06-21 22:14 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Update ABOR unit test
+ to handle ScoreboardMutex file.
- * configure:
- Updated configure.
+2011-01-19 castaglia <castaglia>
-2010-06-21 22:11 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: Allow more than 2
+ seconds for the STOU unit tests to run.
- * configure.in:
- Add a --disable-getgrouplist configure option, to disable use of
- the getgrouplist(3) function, hopefully working around Bug#3475.
+2011-01-19 castaglia <castaglia>
-2010-06-21 13:31 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.
- * 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.
+2011-01-19 castaglia <castaglia>
-2010-06-21 10:33 castaglia
+ * src/memcache.c: Fix the compilation for src/memcache.c when
+ --enable-memcache is not used.
- * doc/contrib/mod_sftp.html:
- Add SFTP FAQ about using Tectia/ssh.com host keys with mod_sftp.
+2011-01-19 castaglia <castaglia>
-2010-06-21 08:00 castaglia
+ * doc/modules/mod_memcache.html: Add links to the memcached and
+ libmemcached pages.
- * doc/contrib/mod_sftp.html:
- Make it clearer in the mod_sftp docs that the modules does not
- support shell access.
+2011-01-19 castaglia <castaglia>
-2010-06-21 07:45 castaglia
+ * doc/modules/mod_memcache.html: Start working on documentation for
+ the mod_memcache module.
- * 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.
+2011-01-19 castaglia <castaglia>
-2010-06-21 07:37 castaglia
+ * doc/modules/mod_ctrls.html: Updated mod_ctrls with description of
+ where to find the latest version.
- * tests/t/: etc/modules/mod_sftp/authorized_rsa16384_keys,
- etc/modules/mod_sftp/test_rsa16384_key,
- etc/modules/mod_sftp/test_rsa16384_key.pub,
- lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add SFTP publickey authentication test using 16384-bit RSA key.
+2011-01-19 castaglia <castaglia>
-2010-06-20 09:42 castaglia
+ * doc/contrib/mod_sftp_pam.html: Updated the mod_sftp_pam docs to
+ mention the new NoInfoMsgs SFTPPAMOption.
- * contrib/mod_sql_sqlite.c:
- Fix the "busy loop" mod_sql_sqlite logging; we were logging the
- wrong variable for the error message. Oops.
+2011-01-19 castaglia <castaglia>
-2010-06-20 09:26 castaglia
+ * NEWS, contrib/mod_sftp_pam.c: Bug#3578 - Ability to suppress
+ sending messages from PAM to clients.
- * 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.
+2011-01-19 castaglia <castaglia>
-2010-06-19 19:59 castaglia
+ * NEWS, contrib/mod_sftp_pam.c: Bug#3579 - mod_sftp_pam may tell
+ client to disable echoing erroneously.
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Add regression test for Bug#3283.
+2011-01-18 castaglia <castaglia>
-2010-06-19 18:40 castaglia
+ * configure: Updated configure.
- * 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.
+2011-01-18 castaglia <castaglia>
-2010-06-19 13:45 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.
- * doc/howto/ListOptions.html:
- Include the new options (-c, -u) from Bug#3396 in the ListOptions
- howto.
+2011-01-18 castaglia <castaglia>
-2010-06-19 13:42 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.
- * NEWS, modules/mod_ls.c,
- tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Bug#3396 - Support -c and -u LIST options.
+2011-01-18 castaglia <castaglia>
-2010-06-19 12:09 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.
- * 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.
+2011-01-17 castaglia <castaglia>
-2010-06-19 11:59 castaglia
+ * include/memcache.h, modules/mod_memcache.c, src/memcache.c: Fix
+ the handling of the BLOCKING option.
- * NEWS, contrib/mod_ldap.c:
- Backport of fix for Bug#3424 to 1.3.3 branch.
+2011-01-17 castaglia <castaglia>
-2010-06-19 11:58 castaglia
+ * include/memcache.h, modules/mod_memcache.c, src/memcache.c: More
+ work on memcache support.
- * NEWS, contrib/mod_ldap.c:
- Bug#3424 - Bad LDAP lookup can cause mod_ldap segfault under some
- conditions.
+2011-01-17 castaglia <castaglia>
- Handle a NULL result from pr_ldap_getpwnam() in the
- handle_ldap_getgroups() function.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3544 - mod_sftp closes channel
+ too early after scp download.
-2010-06-19 11:47 castaglia
+2011-01-14 castaglia <castaglia>
- * contrib/mod_ldap.c:
- Quell compiler warning about an uninitialized pointer.
+ * 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.
-2010-06-19 11:41 castaglia
+2011-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Add regression test (and correct configuration) for Bug#3166.
+ * NEWS, modules/mod_facts.c,
+ tests/t/lib/ProFTPD/Tests/Commands/MFMT.pm: Bug#3577 - MFMT can fail
+ due to utimes(2) peculiarities.
-2010-06-19 11:06 castaglia
+2011-01-13 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add unit test for hostbased SSH2 authentication.
+ * NEWS, modules/mod_auth_unix.c: Bug#3575 - Process privileges may
+ not handled properly when --enable-autoshadow is used.
-2010-06-17 11:08 castaglia
+2011-01-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add mod_sftp regression tests for Bug#3472.
+ * modules/mod_site.c: Fix data type warning on Solaris.
-2010-06-17 11:06 castaglia
+2011-01-12 castaglia <castaglia>
- * tests/t/etc/modules/mod_sftp/: authorized_dsa2048_keys,
- authorized_dsa4096_keys, authorized_dsa8192_keys,
- authorized_rsa4096_keys, authorized_rsa8192_keys,
- test_dsa2048_key, test_dsa2048_key.pub, test_dsa4096_key,
- test_dsa4096_key.pub, test_dsa8192_key, test_dsa8192_key.pub,
- test_rsa4096_key, test_rsa4096_key.pub, test_rsa8192_key,
- test_rsa8192_key.pub:
- Adding more RSA and DSA keys of increasing sizes, for the
- mod_sftp regression tests.
+ * configure: Updated configure.
-2010-06-17 10:57 castaglia
+2011-01-12 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth-publickey.c:
- Backport of fix for Bug#3472 to 1.3.3 branch.
+ * 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.
-2010-06-17 10:56 castaglia
+2011-01-12 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth-publickey.c:
- Bug#3472 - mod_sftp publickey authentication fails for large
- keys.
+ * src/main.c: Use better printf(3) style, and always support a
+ format string, even for fixed input strings.
-2010-06-17 08:13 castaglia
+2011-01-11 castaglia <castaglia>
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Backport of fix for Bug#3471 to 1.3.3 branch.
+ * 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>
-2010-06-17 08:13 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.
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Bug#3471 - Null values in allow/deny rules causes mod_wrap2 to
- segfault.
+2011-01-10 castaglia <castaglia>
-2010-06-15 13:46 castaglia
+ * doc/howto/ConfigurationTricks.html: Mention TransferPriority in
+ the ConfigurationTricks howto.
- * NEWS, contrib/mod_ifsession.c:
- Backport of fix for Bug#3467 to 1.3.3 branch.
+2011-01-08 castaglia <castaglia>
-2010-06-15 13:45 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.
- * NEWS, contrib/mod_ifsession.c:
- Bug#3467 - mod_ifsession does not merge <Directory> blocks
- properly.
+2011-01-08 castaglia <castaglia>
-2010-06-15 09:58 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.
- * NEWS, src/support.c:
- Backport of fix for Bug#3469 to 1.3.3 branch.
+2011-01-08 castaglia <castaglia>
-2010-06-15 09:58 castaglia
+ * modules/mod_auth_file.c: Fix a couple of bugs when using ID
+ filtering in the AuthUserFile and AuthGroupFile directives.
- * 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 ('~').
+2011-01-08 castaglia <castaglia>
-2010-06-15 09:52 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.
- * 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).
+2011-01-08 castaglia <castaglia>
-2010-06-15 09:02 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.
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3470 to 1.3.3 branch.
+2011-01-08 castaglia <castaglia>
-2010-06-15 09:01 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.
- * 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.
+2011-01-08 castaglia <castaglia>
-2010-06-14 11:45 castaglia
+ * contrib/mod_sql_passwd.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Additional
+ refinement from Bug#3500.
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3465 to 1.3.3 branch.
+2011-01-07 castaglia <castaglia>
-2010-06-14 11:44 castaglia
+ * doc/modules/mod_xfer.html: Start working on a mod_xfer doc.
- * NEWS, contrib/mod_tls.c:
- Bug#3465 - SIGSEGV at LIST after CCC.
+2011-01-07 castaglia <castaglia>
-2010-06-14 11:16 castaglia
+ * doc/modules/mod_core.html: Typo.
- * src/main.c:
- Backport of stacktrace logging fix from trunk.
+2011-01-06 castaglia <castaglia>
-2010-06-14 11:15 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.
- * 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.
+2011-01-06 castaglia <castaglia>
-2010-06-14 07:46 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add
+ regression test for the SQLGroupWhereClause directive.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- More regression tests for Bug#3467.
+2011-01-05 castaglia <castaglia>
-2010-06-11 17:03 castaglia
+ * doc/howto/ConnectionACLs.html: Typo.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Add regression test for Bug#3467.
+2011-01-05 castaglia <castaglia>
-2010-06-11 17:02 castaglia
+ * doc/howto/ConnectionACLs.html: Typo.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Add regression test for Bug#3465.
+2011-01-05 castaglia <castaglia>
-2010-06-11 15:42 castaglia
+ * RELEASE_NOTES: Mention the new doc in the release notes.
- * NEWS, contrib/mod_ifsession.c:
- Bug#3466 - mod_ifsession does not check for properly closed
- <IfUser> contexts.
+2011-01-05 castaglia <castaglia>
-2010-06-11 14:37 castaglia
+ * doc/howto/ConnectionACLs.html, doc/howto/index.html: Adding
+ ConnectionACL howto.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm:
- Add an <IfGroup> test.
+2011-01-05 castaglia <castaglia>
-2010-05-30 17:33 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.
- * contrib/mod_sftp/fxp.c:
- Fix Bug#3464 by removing code (related to Bug#3413) that should
- not be in the 1.3.3 branch.
+2011-01-04 castaglia <castaglia>
-2010-05-27 10:50 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.
- * NEWS, contrib/ftpasswd:
- Backport of fix for Bug#3463 to 1.3.3 branch.
+2011-01-04 castaglia <castaglia>
-2010-05-27 10:50 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.
- * NEWS, contrib/ftpasswd:
- Bug#3463 - ftpasswd script's --delete-group option does not work.
+2011-01-04 castaglia <castaglia>
-2010-05-27 09:22 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.
- * NEWS, contrib/ftpasswd:
- Backport of fix for Bug#3462 to 1.3.3 branch.
+2011-01-03 castaglia <castaglia>
-2010-05-27 09:22 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/RLimitMemory.pm: Another
+ RLimitMemory test; I need to add more such cases here.
- * NEWS, contrib/ftpasswd:
- Bug#3462 - ftpasswd script's --delete-user option does not work.
+2011-01-03 castaglia <castaglia>
-2010-05-25 10:56 castaglia
+ * NEWS, modules/mod_core.c: Bug#3571 - RLimitMemory "max" soft/hard
+ limits don't work.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Update mod_sftp .ftpaccess unit test to check for regressions of
- Bug#3460.
+2011-01-03 castaglia <castaglia>
-2010-05-25 10:55 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.
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3460 to 1.3.3 branch.
+2010-12-29 castaglia <castaglia>
-2010-05-25 10:54 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Fix another few
+ Perl warnings.
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3460 - REALPATH SFTP request can cause improperly cached
- directory configuration.
+2010-12-29 castaglia <castaglia>
-2010-05-25 09:59 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DisplayChdir.pm: Silence another
+ Perl warning.
- * 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-12-29 castaglia <castaglia>
-2010-05-25 08:08 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Quell some Perl
+ compiler warnings.
- * tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm:
- Add more DefaultChdir tests.
+2010-12-29 castaglia <castaglia>
-2010-05-25 07:46 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Remove redundant
+ regression test.
- * tests/: tests.pl, t/config/defaultchdir.t,
- t/lib/ProFTPD/Tests/Config/DefaultChdir.pm:
- Start on regression tests for the DefaultChdir config directive.
+2010-12-27 castaglia <castaglia>
-2010-05-25 07:38 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logins.pm: Add regression test for
+ anonymous logins with mod_delay enabled.
- * NEWS, src/auth.c:
- Bug#3431 - Ensure that timezone info files are opened prior to
- chroot.
+2010-12-27 castaglia <castaglia>
-2010-05-25 07:31 castaglia
+ * tests/Makefile.in: Make sure that 'make clean' works properly for
+ the API tests.
- * 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-12-27 castaglia <castaglia>
-2010-05-24 16:34 castaglia
+ * tests/api/timers.c: Typo.
- * 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-12-27 castaglia <castaglia>
-2010-05-24 13:38 castaglia
+ * tests/api/netacl.c: More places in the API testsuite where we
+ might need to handle 'localhost.localdomain' as well as just
+ 'localhost'.
- * 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-12-27 castaglia <castaglia>
-2010-05-24 11:29 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'.
- * NEWS, contrib/mod_radius.c:
- Backport of fix for Bug#3459 to 1.3.3 branch.
+2010-12-26 castaglia <castaglia>
-2010-05-24 11:29 castaglia
+ * tests/api/timers.c: Allow some leeway when dealing with
+ timer-based unit tests.
- * NEWS, contrib/mod_radius.c:
- Bug#3459 - mod_radius segfaults during incorrect login due to
- stale data.
+2010-12-23 jwm <jwm>
-2010-05-24 11:12 castaglia
+ * README.LDAP: bzr r110: capitalization consistency
- * contrib/mod_radius.c:
- Quell compiler warnings about unused strtoul(3) return values.
+2010-12-23 jwm <jwm>
-2010-05-20 11:16 castaglia
+ * RELEASE_NOTES: forgot to add notice of mod_ldap configuration
+ overhaul to the release notes
- * 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-12-23 jwm <jwm>
-2010-05-19 18:04 castaglia
+ * README.LDAP: latest README with populated Changes section
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add a couple more SQL-related configuration tests to the mod_sftp
- suite.
+2010-12-23 castaglia <castaglia>
-2010-05-18 14:43 castaglia
+ * tests/api/pool.c: Fix pool unit test error.
- * NEWS, contrib/mod_sftp/crypto.c:
- Backport of fix for Bug#3458 to 1.3.3 branch.
+2010-12-22 castaglia <castaglia>
-2010-05-18 14:43 castaglia
+ * doc/howto/Scoreboard.html: Updating the Scoreboard howto with
+ descriptions of the types of data recorded in the ScoreboardFile.
- * NEWS, contrib/mod_sftp/crypto.c:
- Bug#3458 - mod_sftp incorrectly performs OpenSSL cleanup.
+2010-12-21 castaglia <castaglia>
-2010-05-18 14:01 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).
- * tests/: tests.pl, t/config/maxclients.t,
- t/lib/ProFTPD/Tests/Config/MaxClients.pm:
- Start adding regression/feature tests for the MaxClients
- directive.
+2010-12-21 castaglia <castaglia>
-2010-05-06 09:12 castaglia
+ * modules/mod_ident.c: Fix an IdentLookups edge case where we were
+ not closing the fd or removing the timer properly.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add regression tests for uploading/downloading empty dirs via
- SCP.
+2010-12-21 castaglia <castaglia>
-2010-05-05 18:37 castaglia
+ * modules/mod_ident.c: Typo.
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3456 to 1.3.3 branch.
+2010-12-21 castaglia <castaglia>
-2010-05-05 18:37 castaglia
+ * src/netio.c: Fix the IO event names for writes to "other" types of
+ streams.
- * 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-12-21 castaglia <castaglia>
-2010-05-05 17:17 castaglia
+ * NEWS, modules/mod_ident.c: Bug#3567 - IdentLookups do not work for
+ IPv6 servers.
- * contrib/mod_sftp/channel.c:
- Minor nit about the proper plurality in a trace message.
+2010-12-21 castaglia <castaglia>
-2010-05-05 16:59 castaglia
+ * doc/contrib/mod_tls_shmcache.html: Adding TLSSessionCache FAQ.
- * 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-12-21 castaglia <castaglia>
-2010-05-05 16:51 castaglia
+ * doc/modules/mod_core.html: Updating mod_core docs with description
+ of ProcessTitles directive.
- * include/support.h, src/support.c:
- Missed some spots in the exists() functions where the path string
- should also be constified.
+2010-12-21 castaglia <castaglia>
-2010-05-05 16:46 castaglia
+ * NEWS, include/proctitle.h, modules/mod_core.c, src/proctitle.c:
+ Bug#3566 - Ability to turn verbose process titles off.
- * include/support.h, src/support.c:
- Constify the arguments the *exists() functions.
+2010-12-20 castaglia <castaglia>
-2010-05-04 13:48 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.
- * NEWS, locale/Makefile.in:
- Backport of fix for Bug#3454 to 1.3.3 branch.
+2010-12-18 jwm <jwm>
-2010-05-04 13:48 castaglia
+ * 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
- * NEWS, locale/Makefile.in:
- Bug#3454 - msgfmt(1) options used for generating NLS files are
- not compatible with Solaris' msgfmt.
+2010-12-18 castaglia <castaglia>
-2010-05-02 11:18 castaglia
+ * contrib/mod_sql.c: Bug#3563 - Fix compiler warnings about possibly
+ uninitialized variables.
- * 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-12-18 castaglia <castaglia>
-2010-05-02 11:15 castaglia
+ * doc/contrib/mod_sftp.html: Bug#3564 - Remove the SFTPServices
+ docs, since the directive was reworked to be the Protocols
+ directive.
- * modules/mod_xfer.c:
- Log, at debug level 8, if an APPE command is blocked because of a
- <Limit> configuration.
+2010-12-18 castaglia <castaglia>
-2010-05-01 12:19 castaglia
+ * include/version.h: Updating version.h for the CVS status once
+ more.
- * contrib/mod_sftp/fxp.c:
- Make a note about better reporting of incomplete uploads, where
- possible.
+2010-12-18 castaglia <castaglia>
-2010-04-28 21:03 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.
- * 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-12-18 castaglia <castaglia>
-2010-04-28 17:41 castaglia
+ * ChangeLog: Updating ChangeLog.
- * 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-12-18 castaglia <castaglia>
-2010-04-28 17:06 castaglia
+ * locale/files.txt: Updating the list of files for localization.
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3452 for 1.3.3 branch.
+2010-12-18 castaglia <castaglia>
-2010-04-28 17:05 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Getting
+ ready to release 1.3.4rc1 (finally).
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3452 - mod_sftp does not advertise its supported SFTP
- extensions for protocol version 5.
+2010-12-18 castaglia <castaglia>
- 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.
+ * modules/mod_xfer.c: Add some portability checks for strtof(3), and
+ make sure that the UseSendfile directive handler checks the macros.
-2010-04-28 14:00 castaglia
+2010-12-18 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3451 to 1.3.3 branch.
+ * configure: Updating configure script.
-2010-04-28 14:00 castaglia
+2010-12-18 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3451 - WinSCP can't upload files using protocol version 5
- with mod_sftp.
+ * 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-04-28 08:58 castaglia
+2010-12-17 castaglia <castaglia>
- * src/main.c:
- Stylistic changes; no functional changes.
+ * 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-04-27 17:23 castaglia
+2010-12-17 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.
+ * contrib/mod_wrap2/mod_wrap2.h.in: Missed checkin for the fix for
+ Bug#3558.
-2010-04-27 17:12 castaglia
+2010-12-17 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3450 to the 1.3.3 branch.
+ * RELEASE_NOTES: Updating the release notes.
-2010-04-27 17:11 castaglia
+2010-12-17 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.
+ * 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-04-27 16:27 castaglia
+2010-12-17 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.
+ * contrib/mod_sql.c: The mod_sql_sqlite testsuite caught a
+ regression caused by a typo in the fix for Bug#3536.
-2010-04-27 14:52 castaglia
+2010-12-17 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add regression test for Bug#3425.
+ * src/response.c: Wait to clear the cached last response code/msg
+ values until pr_response_clear().
-2010-04-27 11:46 castaglia
+2010-12-17 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c:
- Correct a comment.
+ * src/response.c: The last commit broke pr_response_flush(); fix it
+ properly.
-2010-04-27 11:43 castaglia
+2010-12-17 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3449 to 1.3.3 branch.
+ * 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-04-27 11:42 castaglia
+2010-12-17 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 11:33 castaglia
-
- * NEWS, contrib/mod_sftp/fxp.c:
- Backport of fix for Bug#3448 to 1.3.3 branch.
-
-2010-04-27 11:33 castaglia
-
- * NEWS:
- Bug#3448 - Ensure that STAT/LSTAT/FSTAT SFTP requests do not use
- cached/stale data.
-
-2010-04-27 09:31 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Remove debugging cruft.
-
-2010-04-27 09:26 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 10:44 castaglia
-
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3447 to 1.3.3 branch.
-
-2010-04-26 10:44 castaglia
+ 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.
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3447 - mod_sftp can become confused during large recursive
- SCP uploads.
+2010-12-17 castaglia <castaglia>
-2010-04-25 16:55 castaglia
+ * src/response.c: The mod_sftp testsuite caught some issues in the
+ Response API.
- * contrib/mod_shaper.c:
- Add trace logging, using the "lock" trace channel, of
- mod_shaper's locking of its ShaperTable.
+2010-12-16 castaglia <castaglia>
-2010-04-25 13:34 castaglia
+ * contrib/mod_sftp/packet.c: Have mod_sftp generate events when it
+ does network IO.
- * 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-12-16 castaglia <castaglia>
-2010-04-24 20:21 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.
- * contrib/mod_sftp/scp.c:
- Remove unused strlen(3) call.
+2010-12-15 castaglia <castaglia>
-2010-04-24 13:26 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.
- * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm:
- Add unit test for CreateHome's skel parameter.
+2010-12-15 castaglia <castaglia>
-2010-04-23 09:10 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.
- * src/: dirtree.c:
- Use updated patch for Bug#3446.
+2010-12-15 castaglia <castaglia>
-2010-04-23 09:05 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).
- * NEWS, src/dirtree.c:
- Backport of fix for Bug#3446 to 1.3.3 branch.
+2010-12-15 castaglia <castaglia>
-2010-04-23 09:05 castaglia
+ * doc/contrib/mod_wrap2.html: Added documentation for the new
+ CheckAllNames WrapOption.
- * NEWS, src/dirtree.c:
- Bug#3446 - .ftpaccess ignored in some cases.
+2010-12-15 castaglia <castaglia>
- 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-22 17:54 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 09:15 castaglia
-
- * doc/howto/Limit.html:
- Add an example of blocking renames.
-
-2010-04-21 11:15 castaglia
-
- * doc/contrib/mod_sftp.html:
- Typo.
-
-2010-04-21 11:13 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.
- * doc/contrib/mod_sftp.html:
- Add a "Known Client Issues" section to the mod_sftp docs.
+2010-12-15 castaglia <castaglia>
-2010-04-20 09:49 castaglia
+ * doc/modules/mod_core.html: Start working a mod_core.html doc, just
+ like we have for the other standard modules.
- * contrib/mod_sftp/mod_sftp.c:
- Fix bug in the fix for Bug#3444 that was committed yesterday.
+2010-12-15 castaglia <castaglia>
-2010-04-19 20:44 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.
- * NEWS, modules/mod_core.c:
- Bug#3443 - Deprecate the DisplayGoAway directive.
+2010-12-15 castaglia <castaglia>
-2010-04-19 20:26 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.
- * NEWS:
- Make sure the NEWS file tracks the correct bug title for
- Bug#3445.
+2010-12-15 castaglia <castaglia>
-2010-04-19 20:23 castaglia
+ * modules/mod_auth.c: Make sure that the disconnecting of a client
+ because of the Protocols config happens at the right time.
- * 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-12-15 castaglia <castaglia>
-2010-04-19 20:21 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.
- * contrib/mod_sftp/kex.c:
- Update the copyright date for this file.
+2010-12-15 castaglia <castaglia>
-2010-04-19 20:20 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.
- * 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.
+2010-12-15 castaglia <castaglia>
- 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.
+ * 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-04-19 18:09 castaglia
+2010-12-15 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Make sure the statcache is cleared when handling STAT/FSTAT/LSTAT
- requests.
+ * 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-04-19 16:30 castaglia
+2010-12-14 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.
+ * doc/contrib/mod_wrap2.html: Add documentation for the new
+ WrapOptions directive, and the option added for Bug#3508.
-2010-04-19 15:16 castaglia
+2010-12-14 castaglia <castaglia>
- * contrib/mod_sftp/mod_sftp.h.in:
- Update copyright date in the header, since we've modified the
- file this year.
+ * 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-04-19 15:16 castaglia
+2010-12-14 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.
+ * 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-04-19 13:10 castaglia
+2010-12-14 castaglia <castaglia>
- * doc/howto/Logging.html:
- Add Logging FAQ about logging xferlog data to syslog.
+ * RELEASE_NOTES, doc/contrib/mod_sftp.html: Mention the new
+ SFTPServices directive in the docs.
-2010-04-18 11:42 castaglia
+2010-12-14 castaglia <castaglia>
- * contrib/mod_sftp/utf8.c, src/encode.c:
- More notes to myself regarding possible encoding failures and
- their causes.
+ * 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-04-17 12:07 castaglia
+2010-12-13 castaglia <castaglia>
- * tests/: tests.pl, t/config/serveradmin.t,
- t/lib/ProFTPD/Tests/Config/ServerAdmin.pm:
- Add regression tests for the ServerAdmin directive.
+ * 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-04-17 11:52 castaglia
+2010-12-13 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.
+ * 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-04-17 10:27 castaglia
+2010-12-11 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.
+ * 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.
- Add a regression test for this DisplayChdir configuration,
- providing that the time_t storage change still works properly.
+2010-12-11 castaglia <castaglia>
-2010-04-17 10:15 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.
- * tests/: tests.pl, t/config/displaychdir.t,
- t/lib/ProFTPD/Tests/Config/DisplayChdir.pm,
- t/lib/ProFTPD/Tests/Config/DisplayLogin.pm:
- Added regression tests for DisplayChdir, and updated DisplayLogin
- tests, both as part of Bug#3423.
+2010-12-11 castaglia <castaglia>
-2010-04-17 10:11 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.
- * modules/mod_core.c, src/display.c:
- Backported the additional fixes for Bug#3423, handling single
- line DisplayLogin and DisplayChdir files, and multiline
- DisplayChdir files.
+2010-12-11 castaglia <castaglia>
-2010-04-17 10:10 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.
- * modules/mod_core.c, src/display.c:
- Additional fixes for Bug#3423, handling single line DisplayLogin
- and DisplayChdir files, and multiline DisplayChdir files.
+2010-12-11 castaglia <castaglia>
-2010-04-16 17:21 castaglia
+ * contrib/mod_deflate.c: The cause of Bug#3550 also occurred in the
+ mod_deflate code; fixing it here.
- * 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-12-10 jwm <jwm>
-2010-04-16 15:22 castaglia
+ * contrib/mod_ldap.c: bzr r108: Handle potential NULL return value from crypt(). (Bug #3551)
- * contrib/mod_radius.c, contrib/mod_rewrite.c, contrib/mod_sql.c,
- contrib/mod_sftp/scp.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-12-10 castaglia <castaglia>
-2010-04-16 10:52 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.
- * modules/mod_ls.c:
- Coding style nits; no functional change.
+2010-12-10 castaglia <castaglia>
-2010-04-16 10:45 castaglia
+ * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Make SCP
+ honor/handle the TimeoutNoTransfer and TimeoutStalled timeouts
+ properly.
- * doc/howto/Logging.html:
- Mention the configure option for Bug#3436 in the Logging howto's
- section on FIFOs.
+2010-12-10 castaglia <castaglia>
-2010-04-14 14:27 castaglia
+ * contrib/mod_sftp/fxp.c: Listing a directory via SFTP should reset
+ the TimeoutNoTransfer timer, as is done for FTP sessions.
- * NEWS, modules/mod_core.c, src/dirtree.c, tests/tests.pl,
- tests/t/config/limit/opts.t,
- tests/t/lib/ProFTPD/Tests/Config/Limit/OPTS.pm:
- Bug#3438 - <Limit> configuration cannot be applied to OPTS
- command.
+2010-12-10 castaglia <castaglia>
-2010-04-14 14:04 castaglia
+ * modules/mod_xfer.c: The message logged for a TimeoutNoTransfer
+ should be protocol-specific, and not have "FTP" hardcoded.
- * NEWS, src/encode.c:
- Backport of fix for Bug#3439 to 1.3.3 branch.
+2010-12-10 castaglia <castaglia>
-2010-04-14 14:04 castaglia
+ * src/main.c: Generate an event for parsed but
+ unhandled/unrecognized commands as well.
- * NEWS, src/encode.c:
- Bug#3439 - Encoding fails if an NLS-enabled proftpd starts in a
- UTF8 locale.
+2010-12-10 castaglia <castaglia>
-2010-04-14 08:53 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.
- * src/main.c:
- Stylistic nit.
+2010-12-10 castaglia <castaglia>
-2010-04-14 08:39 castaglia
+ * src/main.c: Generate an event whenever an invalid command (i.e. an
+ unparsable command) is received from the client.
- * 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-12-10 castaglia <castaglia>
-2010-04-13 18:20 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.
- * contrib/mod_sftp/scp.c:
- Silly typos in comment; no functional change.
+2010-12-09 castaglia <castaglia>
-2010-04-13 16:06 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).
- * NEWS, contrib/mod_tls.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Backport of fix for Bug#3437 to 1.3.3 branch.
+2010-12-09 castaglia <castaglia>
-2010-04-13 16:06 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.
- * 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-12-09 castaglia <castaglia>
-2010-04-13 15:00 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.
- * configure:
- Updated configure for Bug#3436.
+2010-12-09 castaglia <castaglia>
-2010-04-13 14:57 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).
- * NEWS, config.h.in, configure.in, src/log.c:
- Backport of fix for Bug#3436 to 1.3.3 branch.
+2010-12-09 castaglia <castaglia>
-2010-04-13 14:57 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.
- * 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-12-09 castaglia <castaglia>
-2010-04-13 09:39 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.
- * contrib/mod_sftp/utf8.c, src/encode.c:
- Remove unused variables, and quell compiler warnings about
- "incompatible pointer types" on FreeBSD.
+2010-12-09 castaglia <castaglia>
-2010-04-13 08:35 castaglia
+ * modules/mod_xfer.c: Make a reminder comment to myself to handle
+ short writes to disk better.
- * 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-12-08 castaglia <castaglia>
-2010-04-12 17:14 castaglia
+ * NEWS, contrib/mod_sftp/compress.c: Bug#3550 - SFTP compressed
+ uploads can cause corrupted uploaded files.
- * contrib/mod_sftp/utf8.c, src/encode.c:
- Additional part of fix for Bug#3435.
+2010-12-08 castaglia <castaglia>
-2010-04-12 16:25 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add another
+ regression test for Bug#3550, this one using compressed SFTP
+ downloads.
- * NEWS, contrib/mod_sftp/utf8.c, src/encode.c:
- Backport of fix for Bug#3435 to 1.3.3 branch.
+2010-12-08 castaglia <castaglia>
-2010-04-12 16:24 castaglia
+ * contrib/mod_sftp/fxp.c: Allocate a larger default buffer for
+ incoming packets, to handle WRITE packets better.
- * NEWS, contrib/mod_sftp/utf8.c, src/encode.c:
- Bug#3435 - Encoding/decoding conversion can cause CPU spike.
+2010-12-08 castaglia <castaglia>
-2010-04-12 16:04 castaglia
+ * tests/t/etc/modules/mod_sftp/bug3550.php,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding reproduction
+ recipe for Bug#3550.
- * contrib/mod_sftp/utf8.c, src/encode.c:
- Make sure we reset any state contained in iconv_t before calling
- iconv(3).
+2010-12-07 castaglia <castaglia>
-2010-04-12 15:42 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.
- * 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-12-07 castaglia <castaglia>
-2010-04-12 15:35 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).
- * src/trace.c:
- Prevent a recurrence of Bug#3434 by treating a trace message
- level of zero as an invalid parameter.
+2010-12-04 castaglia <castaglia>
-2010-04-12 14:10 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3548 - Null pointer segfault in
+ mod_sftp when handling aborted connection.
- * src/fsio.c:
- Include the number of bytes being read/written in the trace
- messages for the read()/write() callbacks.
+2010-12-03 castaglia <castaglia>
-2010-04-12 13:57 castaglia
+ * contrib/mod_sql_sqlite.c: Fix logging of SQL query executing
+ error.
- * 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.
+2010-12-03 castaglia <castaglia>
- 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.
+ * 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-04-12 11:59 castaglia
+2010-12-02 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c, src/fsio.c:
- Bug#3434 - TraceLog contains messages even with "Trace DEFAULT:0"
- configured.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Adding reproduction
+ recipe for Bug#3544.
-2010-04-12 10:09 castaglia
+2010-12-01 castaglia <castaglia>
- * NEWS, contrib/mod_exec.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Backport of fix for Bug#3432 to 1.3.3 branch.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Adding
+ regression test for Bug#3547.
-2010-04-12 10:09 castaglia
+2010-12-01 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.
+ * NEWS, contrib/mod_ifsession.c, modules/mod_core.c: Bug#3547 -
+ Multiple AllowClass directives not handled properly.
-2010-04-12 09:13 castaglia
+2010-11-30 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3427 to 1.3.3 branch.
+ * 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-04-12 09:12 castaglia
+2010-11-30 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3427 - mod_sftp does not handle recursive SCP uploads
- properly.
+ * NEWS, contrib/mod_sql.c: Bug#3536 - mod_sql has insufficient
+ bounds checking in sql_prepare_where() function.
-2010-04-11 17:26 castaglia
+2010-11-22 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Add mod_sftp FAQ about UserOwner/GroupOwner, and the need to use
- the RootRevoke directive.
+ * 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-04-11 17:14 castaglia
+2010-11-22 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add ExtendedLog
+ RETR test for SFTP downloads.
-2010-04-11 15:47 castaglia
+2010-11-22 castaglia <castaglia>
- * modules/mod_xfer.c:
- Minor style nits in stor_chown(); no functional changes.
+ * src/log.c: Make very sure that our logging buffer isn't exceeded.
-2010-04-11 14:50 castaglia
+2010-11-19 castaglia <castaglia>
- * doc/howto/Tracing.html:
- Add a FAQ/example to the Tracing howto describing how to use
- Trace in mod_ifsession sections.
+ * tests/t/config/commandbuffersize.t,
+ tests/t/lib/ProFTPD/Tests/Config/CommandBufferSize.pm,
+ tests/tests.pl: Adding tests for the CommandBufferSize directive.
-2010-04-11 14:44 castaglia
+2010-11-19 castaglia <castaglia>
- * NEWS, modules/mod_core.c, tests/tests.pl, tests/t/config/trace.t,
- tests/t/lib/ProFTPD/Tests/Config/Trace.pm:
- Bug#3428 - Honor the Trace directive in mod_ifsession sections.
+ * 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).
- Unit/regression tests for this feature have also been added to
- the testsuite.
+2010-11-16 castaglia <castaglia>
-2010-04-09 14:50 castaglia
+ * src/timers.c: Make sure we reset the dynamic_timerno static
+ variable when (re)initializing the Timers API as well.
- * NEWS, contrib/mod_sftp/scp.c:
- Backport of fix for Bug#3425 to 1.3.3 branch.
+2010-11-16 castaglia <castaglia>
-2010-04-09 14:49 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.
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3425 - Improperly constructed destination paths for SCP
- uploads.
+2010-11-16 castaglia <castaglia>
-2010-04-09 11:26 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.
- * NEWS, contrib/mod_sftp/auth.c:
- Backport of fix for Bug#3426 to 1.3.3 branch.
+2010-11-16 castaglia <castaglia>
-2010-04-09 11:25 castaglia
+ * contrib/dist/rpm/proftpd.spec: Make sure that mod_facts is listed
+ in the .spec file.
- * NEWS, contrib/mod_sftp/auth.c:
- Bug#3426 - mod_sftp does not log to TransferLog by default.
+2010-11-16 castaglia <castaglia>
-2010-04-09 09:13 castaglia
+ * src/scoreboard.c: Don't forget to delete the ScoreboardMutex file
+ as well.
- * contrib/mod_sftp/scp.c:
- Backport of errno caching, so that the proper error is reported.
+2010-11-15 castaglia <castaglia>
-2010-04-09 09:12 castaglia
+ * include/scoreboard.h: Additional comments for the scoreboard entry
+ fields.
- * contrib/mod_sftp/scp.c:
- Cache errno in a few more places, so that the proper error is
- reported.
+2010-11-14 castaglia <castaglia>
-2010-04-08 17:48 castaglia
+ * NEWS: Mention the automatic setting of ScoreboardMutex when
+ ScoreboardFile is used.
- * 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-11-14 castaglia <castaglia>
-2010-04-08 16:05 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.
- * src/mkhome.c:
- Stylistic cleanup/changes; no functional changes.
+2010-11-14 castaglia <castaglia>
-2010-04-08 15:58 castaglia
+ * tests/t/config/transferrate.t,
+ tests/t/lib/ProFTPD/Tests/Config/TransferRate.pm, tests/tests.pl:
+ Adding unit tests for the TransferRate directive.
- * doc/howto/CreateHome.html:
- Typo.
+2010-11-14 castaglia <castaglia>
-2010-04-07 16:47 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.
- * 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-11-13 castaglia <castaglia>
-2010-04-07 16:30 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Adding a few more
+ FTPS regression tests.
- * 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-11-13 castaglia <castaglia>
-2010-04-07 16:30 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_site.pm: Quell minor perl
+ compiler warning about redeclared variable.
- * NEWS, include/display.h, modules/mod_auth.c, modules/mod_core.c,
- modules/mod_xfer.c, src/display.c, src/main.c:
- Backport of fix for Bug#3423 to 1.3.3 branch.
+2010-11-11 castaglia <castaglia>
-2010-04-07 16:29 castaglia
+ * modules/mod_site.c: Add some trace logging for when SITE
+ CHGRP/CHMOD fail.
- * 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-11-11 castaglia <castaglia>
-2010-04-07 15:55 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.
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_deflate.pm, mod_exec.pm,
- mod_quotatab_sql.pm, mod_sql_sqlite.pm, 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-11-11 castaglia <castaglia>
-2010-04-07 15:52 castaglia
+ * doc/howto/Scoreboard.html: Add mention of the new ScoreboardMutex
+ directive in the Scoreboard howto.
- * tests/t/lib/ProFTPD/Tests/: Config/FTPAccess/Empty.pm,
- Config/FTPAccess/Merging.pm, Config/FTPAccess/RETR.pm,
- Logging/ExtendedLog.pm, Logging/TransferLog.pm:
- Use a timeout of 30 secs when reading from data connections, to
- avoid spurious testsuite errors.
+2010-11-11 castaglia <castaglia>
-2010-04-07 15:49 castaglia
+ * RELEASE_NOTES: Updating release notes.
- * tests/t/lib/ProFTPD/Tests/Config/: DirFakeMode.pm,
- DisplayFileTransfer.pm, HiddenStores.pm, HideFiles.pm,
- HideGroup.pm, HideNoAccess.pm, HideUser.pm,
- MaxRetrieveFileSize.pm, TimeoutNoTransfer.pm, TimeoutStalled.pm,
- UseGlobbing.pm:
- Use a timeout of 30 secs when reading from a data connection;
- this avoids spurious testsuite errors.
+2010-11-11 castaglia <castaglia>
-2010-04-07 15:45 castaglia
+ * NEWS, include/scoreboard.h, modules/mod_core.c, src/scoreboard.c:
+ Bug#3208 - Improve ScoreboardFile performance under load.
- * tests/t/lib/ProFTPD/Tests/Commands/: ABOR.pm, LIST.pm, MLSD.pm,
- NLST.pm, REST.pm, RETR.pm:
- When reading from a data connection, use a timeout of 30 secs;
- this helps prevent/avoid spurious testsuite errors.
+2010-11-10 castaglia <castaglia>
-2010-04-07 15:35 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.
- * src/main.c:
- Add trace logging of when the response chains are flushed during
- the command dispatch cycle.
+2010-11-10 castaglia <castaglia>
-2010-04-05 16:51 castaglia
+ * NEWS: Mention the new "OldProtocolCompat" SFTPOption in the NEWS
+ file.
- * utils/ftpcount.c:
- Fix a pedantic memory leak spotted by cppcheck. Also fixes the
- code style in a few places.
+2010-11-09 castaglia <castaglia>
-2010-04-05 16:13 castaglia
+ * doc/howto/Limit.html: Add an example of user-specific login denied
+ by a specific IP address.
- * contrib/mod_sftp/: mac.c:
- Scrub the key memory area before freeing it.
+2010-11-09 castaglia <castaglia>
-2010-04-05 15:26 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.
- * contrib/mod_sftp/: mac.c:
- Running cppcheck found a memory leak where we aren't freeing up
- malloc()'d memory on MAC errors.
+2010-11-09 castaglia <castaglia>
-2010-04-05 11:18 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#3531 - mod_quotatab contains
+ duplicate EDQUOT errno code.
- * 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-11-09 castaglia <castaglia>
-2010-04-04 16:57 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.
- * contrib/mod_sftp/mod_sftp.h.in:
- Add more explanation about the assumptions involved in
- registering an 'exec' channel handler.
+2010-11-09 castaglia <castaglia>
-2010-04-04 16:56 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm: Start adding
+ tests for the mod_sql_passwd functionality requested in Bug#3500.
- * contrib/mod_sftp/channel.c:
- Add more trace logging around the searching and invoking of
- registered 'exec' channel handlers.
+2010-11-09 castaglia <castaglia>
-2010-04-02 17:52 castaglia
+ * src/netio.c: Stylistic nits; no functional change.
- * src/main.c:
- Make sure that premature SIGALRMs don't kill us; we want to
- ignore SIGALRM unless we've registered a timer.
+2010-11-09 castaglia <castaglia>
-2010-04-02 15:29 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.
- * 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-11-09 castaglia <castaglia>
-2010-04-01 18:31 castaglia
+ * tests/t/lib/ProFTPD/Tests/Telnet.pm: Correct the bug number for
+ this unit/regression test.
- * modules/mod_lang.c:
- Log the reason why the LANG command is denied after a client has
- authenticated.
+2010-11-08 castaglia <castaglia>
-2010-04-01 11:35 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm: Fix broken mod_copy
+ unit test.
- * NEWS, contrib/mod_tls.c:
- Backport of fix for Bug#3419 to 1.3.3 branch.
+2010-11-08 castaglia <castaglia>
-2010-04-01 11:34 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.
- * NEWS, contrib/mod_tls.c:
- Bug#3419 - SSL_shutdown() errors with openssl-0.9.8m.
+2010-11-08 castaglia <castaglia>
-2010-03-31 15:41 castaglia
+ * contrib/mod_sql.c: Stylistic nit; no functional change.
- * doc/contrib/mod_sftp.html:
- Update the mod_sftp doc, removing DirFakeUser/DirFakeGroup from
- the list of unsupported features.
+2010-11-08 castaglia <castaglia>
-2010-03-31 15:40 castaglia
+ * contrib/mod_sql.c, include/display.h, src/display.c: Fixing
+ regression in handling of SQLShowInfo, caused by fix for Bug#3423.
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3413 - Support DirFakeUser, DirFakeGroup for SFTP
- connections.
+2010-11-08 castaglia <castaglia>
-2010-03-31 10:38 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.
- * 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.
+2010-11-07 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Config/HideGroup.pm: Add regression
+ test/reproduction recipe for Bug#3530.
-2010-03-31 10:37 castaglia
+2010-11-07 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/auth.c:
- Backport of fix for Bug#3421 to the 1.3.3 branch.
+ * 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-03-31 09:22 castaglia
+2010-11-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Add regression test for Bug#3420.
+ * NEWS, RELEASE_NOTES, modules/mod_xfer.c: Bug#3310 - UseSendfile
+ should be supported in <Directory> and .ftpaccess sections.
-2010-03-30 14:20 castaglia
+2010-11-06 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.
+ * 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-03-30 14:17 castaglia
+2010-11-06 castaglia <castaglia>
- * NEWS, src/table.c:
- Backport of fix for Bug#3418 to the 1.3.3 maintenance branch.
+ * tests/t/lib/ProFTPD/Tests/Config/UseSendfile.pm: Adding a bunch of
+ UseSendfile tests for the functionality being added for Bug#3310.
-2010-03-30 14:17 castaglia
+2010-11-05 castaglia <castaglia>
- * NEWS, src/table.c:
- Bug#3418 - %U sometimes showing up as "(none)" in ExtendedLog.
+ * 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.
- 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-11-05 castaglia <castaglia>
-2010-03-30 10:00 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: Updating
+ multiline DisplayConnect regression test for changes due to
+ Bug#3423.
- * tests/t/: etc/modules/mod_deflate/proftpd.bin,
- lib/ProFTPD/Tests/Modules/mod_deflate.pm:
- Removing extraneous mod_deflate test file; updating tests for new
- location as part of normal testsuite.
+2010-11-05 castaglia <castaglia>
-2010-03-25 10:37 castaglia
+ * include/display.h: Typo.
- * NEWS, utils/ftpcount.c, utils/ftpscrub.c, utils/ftptop.c,
- utils/ftpwho.c, utils/misc.c, utils/utils.h:
- Backport of patch for Bug#3417 to 1.3.3 branch.
+2010-11-05 castaglia <castaglia>
-2010-03-25 10:37 castaglia
+ * NEWS, modules/mod_ls.c: Bug#3529 - "LIST /*" now lists more than
+ the expected directory.
- * 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-11-05 castaglia <castaglia>
-2010-03-22 16:24 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding reproduction
+ recipes/regression tests for Bug#3529.
- * contrib/mod_tls.c:
- Backport of the handling of WANT_READ/WANT_WRITE error codes from
- SSL_shutdown().
+2010-11-05 castaglia <castaglia>
-2010-03-22 16:24 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?).
- * src/scoreboard.c:
- Backport the fix of a possible fd leak when scrubbing the
- scoreboard.
+2010-11-05 castaglia <castaglia>
-2010-03-22 16:21 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.
- * src/scoreboard.c:
- Make sure we don't leak an fd when scrubbing the scoreboard and
- we fail to lock the entire scoreboard.
+2010-11-04 castaglia <castaglia>
-2010-03-19 14:21 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm: Add unit
+ test for reproducing the slow/CPU-eating behavior indicated in
+ Bug#3526.
- * 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-11-04 castaglia <castaglia>
-2010-03-19 14:19 castaglia
+ * src/dirtree.c: Cleanup some stylistic nits found in src/dirtree.c,
+ found while investigating Bug#3526. Also add some necessary signal
+ handling.
- * doc/howto/DisplayFiles.html:
- Add a FAQ about Display files whose names contain spaces.
+2010-11-04 castaglia <castaglia>
-2010-03-19 09:36 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.
- * 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-11-02 castaglia <castaglia>
-2010-03-18 10:49 castaglia
+ * NEWS, src/log.c: Bug#3525 - Default syslog logging causes logging
+ to the wrong syslog facilities.
- * NEWS, contrib/mod_dynmasq.c:
- Bug#3411 - Support ftpdctl action to manually request a
- mod_dynmasq refresh.
+2010-11-01 castaglia <castaglia>
-2010-03-17 13:52 castaglia
+ * RELEASE_NOTES: Updating release notes.
- * NEWS, modules/mod_facts.c,
- tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm:
- Bug#3318 - MLSD should indicate symlinks if ShowSymlinks is
- enabled.
+2010-11-01 castaglia <castaglia>
-2010-03-15 11:32 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.
- * doc/contrib/mod_sftp.html:
- Another mod_sftp FAQ.
+2010-10-30 castaglia <castaglia>
-2010-03-13 17:52 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.
- * src/wtmp.c:
- Forgot to update the copyright date on this file.
+2010-10-29 castaglia <castaglia>
-2010-03-13 17:51 castaglia
+ * contrib/mod_sftp/packet.c: Add trace logging of unknown disconnect
+ reason codes.
- * NEWS, src/wtmp.c:
- Bug#3409 - Build failure on newer FreeBSD due to utmp/utmpx
- system changes.
+2010-10-29 castaglia <castaglia>
-2010-03-13 17:46 castaglia
+ * contrib/mod_sftp/packet.c: Make sure we handle unknown disconnect
+ reason code properly (Bug#3522).
- * NEWS, src/wtmp.c:
- Bug#3409 - Build failure on newer FreeBSD due to utmp/utmpx
- system changes.
+2010-10-29 castaglia <castaglia>
-2010-03-13 16:52 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.
- * 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-10-29 castaglia <castaglia>
-2010-03-13 16:47 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.
- * 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-10-29 castaglia <castaglia>
-2010-03-13 16:46 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.
- * include/memcache.h:
- Fix some pesky compiler warnings about shadowed 'pool'
- declarations.
+2010-10-29 castaglia <castaglia>
-2010-03-12 17:41 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).
- * 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-10-29 castaglia <castaglia>
-2010-03-11 16:34 castaglia
+ * NEWS, src/netio.c: Bug#3521 - Telnet IAC processing stack
+ overflow.
- * NEWS, modules/mod_core.c:
- Bug#3412 - Include files not included after restart due to
- permissions.
+2010-10-27 castaglia <castaglia>
-2010-03-11 16:15 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.
- * configure:
- Updated configure.
+2010-10-27 castaglia <castaglia>
-2010-03-11 16:13 castaglia
+ * tests/t/config/multilinerfc2228.t,
+ tests/t/lib/ProFTPD/Tests/Config/MultilineRFC2228.pm,
+ tests/tests.pl: Adding unit tests for the MultilineRFC2228
+ directive.
- * 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-10-24 castaglia <castaglia>
-2010-03-11 10:12 castaglia
+ * lib/pr_fnmatch_loop.c: Try to avoid more non-gcc compiler
+ unhappiness.
- * contrib/mod_deflate.c:
- Missing break statements.
+2010-10-24 castaglia <castaglia>
-2010-03-10 11:24 castaglia
+ * lib/pr_fnmatch.c: Try to make non-gcc compilers happier by
+ providing a __builtin_expect macro definition for them.
- * contrib/mod_copy.c:
- Updated mod_copy to reflect the xferlog_write() changes.
+2010-10-23 castaglia <castaglia>
-2010-03-10 11:21 castaglia
+ * include/compat.h: Make sure to have a compatibility macro for the
+ renamed is_fnmatch() function.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_copy.pm,
- t/modules/mod_copy.t:
- Added unit/regression tests for mod_copy.
+2010-10-23 castaglia <castaglia>
-2010-03-10 11:20 castaglia
+ * tests/api/netacl.c: Updated unit tests for NetACL parsing changes.
- * NEWS, RELEASE_NOTES, contrib/mod_copy.c,
- doc/contrib/mod_copy.html:
- Added mod_copy to the contrib modules area.
+2010-10-23 castaglia <castaglia>
-2010-03-10 11:14 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.
- * 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-10-22 castaglia <castaglia>
-2010-03-10 09:23 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.
- * 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-10-21 castaglia <castaglia>
-2010-03-10 09:04 castaglia
+ * doc/contrib/mod_site_misc.html: Update mod_site_misc docs for new
+ SiteMiscEngine directive.
- * NEWS, contrib/mod_radius.c:
- Bug#3371 - Group limits in <LIMIT LOGIN> blocks won't work with
- RADIUS-supplied groups.
+2010-10-21 castaglia <castaglia>
-2010-03-10 08:53 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.
- * NEWS, contrib/mod_radius.c:
- Bug#3373 - RadiusGroupInfo should not require that both names and
- IDs be VSAs.
+2010-10-20 castaglia <castaglia>
-2010-03-10 08:43 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.
- * doc/contrib/mod_ban.html:
- Update mod_ban docs to include mention of new -s command-line
- option for ban/permit ftpdctl actions.
+2010-10-20 castaglia <castaglia>
-2010-03-10 08:14 castaglia
+ * contrib/mod_quotatab.c: Clear the "have update" flag in a few more
+ places, just to be sure.
- * 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-10-20 castaglia <castaglia>
-2010-03-10 07:59 castaglia
+ * contrib/mod_quotatab.c: Make sure the "have update" flag is
+ cleared properly for DELEs; related to Bug#3517.
- * tests/: tests.pl, t/etc/modules/mod_deflate/proftpd.bin,
- t/etc/modules/mod_deflate/test_50mb.bin,
- t/etc/modules/mod_deflate/zmode.pdf,
- t/lib/ProFTPD/Tests/Modules/mod_deflate.pm,
- t/modules/mod_deflate.t:
- Adding unit/regression tests for mod_deflate.
+2010-10-20 castaglia <castaglia>
-2010-03-10 07:56 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.
- * NEWS, RELEASE_NOTES, contrib/mod_deflate.c,
- doc/contrib/mod_deflate.html:
- Adding mod_deflate to the contrib module area.
+2010-10-20 castaglia <castaglia>
-2010-03-10 07:54 castaglia
+ * doc/contrib/mod_sftp.html: Mention the space-avaiable SFTP
+ extension in the SFTPExtensions doc.
- * contrib/mod_sql.c:
- There's no reason for the caches used by mod_sql to be visible
- outside of that file.
+2010-10-20 castaglia <castaglia>
-2010-03-10 07:07 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>
- * NEWS, contrib/mod_tls.c:
- Bug#3374 - TLSVerifyClient and TLSOptions NoCertRequest are
- incompatible.
+ * README.LDAP: update from latest mod_ldap bzr
-2010-03-10 06:52 castaglia
+2010-10-15 jwm <jwm>
- * 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.
+ * 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-03-09 22:03 castaglia
+2010-10-14 jwm <jwm>
- * src/inet.c:
- Removed development/debug logging.
+ * 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-03-09 11:39 castaglia
+2010-10-14 castaglia <castaglia>
- * configure:
- Updated configure.
+ * contrib/mod_sftp/fxp.c: Handle quota-related errno values in the
+ OPEN request handler.
-2010-03-09 11:37 castaglia
+2010-10-14 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.
+ * contrib/mod_quotatab.c: Make sure that the STOR and APPE handlers
+ set errno appropriately, when the quota are reached.
-2010-03-08 18:38 castaglia
+2010-10-07 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.
+ * NEWS, modules/mod_cap.c: Bug#3513 - EPERM error logged
+ unnecessarily for SFTP logins on Linux.
- 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.
+2010-10-06 castaglia <castaglia>
- 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.
+ * 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-03-08 17:48 castaglia
+2010-10-06 castaglia <castaglia>
- * src/inet.c:
- Use the proper socket option level consistently when setting the
- TCP_NODELAY option.
+ * doc/contrib/mod_tls.html: Document the newly added (Bug#3512)
+ CommonNameRequired TLSOption.
-2010-03-08 14:17 castaglia
+2010-10-06 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-03-08 14:13 castaglia
+2010-10-06 castaglia <castaglia>
- * NEWS, config.h.in, configure.in, include/conf.h:
- Bug#3408 - Use <termios.h> instead of <sys/termios.h> where
- possible.
+ * 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-03-08 14:12 castaglia
+2010-09-29 castaglia <castaglia>
- * NEWS:
- Forgot to keep the NEWS file up-to-date in the 1.3.3 branch.
+ * 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-03-08 11:18 castaglia
+2010-09-28 jwm <jwm>
- * configure:
- Updated configure.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm: honor $allow_auth
+ in ldap_auth() test
-2010-03-08 11:15 castaglia
+2010-09-28 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#2768 - Provide --with-mysql-config/--with-postgres-config
- build options.
+ * RELEASE_NOTES: Make sure to mention the new NoErrorIfAbsent
+ ListOption, from Bug#3506, in the release notes.
-2010-03-08 10:28 castaglia
+2010-09-28 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.
+ 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-03-08 09:30 castaglia
+2010-09-24 castaglia <castaglia>
- * NEWS, include/netaddr.h, src/inet.c, src/netaddr.c:
- Bug#2196 - Handle IPv4-mapped IPv6 addresses as IPv4 addresses.
+ * doc/contrib/mod_sftp.html: Update the mod_sftp docs to note that
+ all SFTPOptions must appear on the same line.
-2010-03-06 11:32 castaglia
+2010-09-20 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.
+ * doc/contrib/mod_sql_passwd.html: Doc typos (missing line breaks).
-2010-03-06 10:28 castaglia
+2010-09-17 castaglia <castaglia>
- * src/stash.c:
- Remove some development/testing cruft.
+ * 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-03-06 10:01 castaglia
+2010-09-17 castaglia <castaglia>
- * tests/: Makefile.in, api/modules.c, api/stash.c, api/tests.c,
- api/tests.h:
- Updated API tests to reflect changed location of stash code.
+ * contrib/mod_tls.c: Minor tweaks to the log message about the
+ NoSessionUseRequired TLSOptions parameter.
-2010-03-06 09:42 castaglia
+2010-09-16 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.
+ * 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-03-06 09:26 castaglia
+2010-09-16 castaglia <castaglia>
- * src/modules.c:
- Removed unused/dead callback typedef.
+ * 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-03-05 15:08 castaglia
+2010-09-15 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#3393 - Specify the <VirtualHost> when using 'ban' or 'permit'
- ftpdctl actions.
+ * RELEASE_NOTES, doc/contrib/mod_sftp.html: Add docs for the new
+ SFTPClientAlive directive.
-2010-03-05 14:40 castaglia
+2010-09-15 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.
+ * 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-03-04 15:26 castaglia
+2010-09-14 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#3392 - Display <VirtualHost> information in 'ban info'
- ftpdctl action response.
+ * modules/mod_delay.c: Adding yet more trace logging to mod_delay.
-2010-03-04 15:18 castaglia
+2010-09-14 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Add a little more trace logging to the handling of SSH2 channel
- data.
+ * modules/mod_delay.c: Adding more trace logging to mod_delay.
-2010-03-04 15:14 castaglia
+2010-09-14 castaglia <castaglia>
- * contrib/mod_sftp/msg.c:
- Initialize these variables pedantically.
+ * 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-03-04 15:05 castaglia
+2010-09-13 castaglia <castaglia>
- * contrib/mod_sftp/msg.c:
- Log data lengths as unsigned longs for size_t, not unsigned ints.
+ * src/mkhome.c: Add support for trace logging of some of the
+ CreateHome workings.
-2010-03-04 14:11 castaglia
+2010-09-10 castaglia <castaglia>
- * doc/contrib/mod_qos.html:
- Adding documentation for mod_qos (Bug#3353).
+ * 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-03-04 13:57 castaglia
+2010-09-08 castaglia <castaglia>
- * README.modules, RELEASE_NOTES:
- Update docs with mention of mod_qos.
+ * contrib/mod_sftp/kex.c: Fixing marking of DH_GEX_INIT command
+ class to be AUTH.
-2010-03-04 13:52 castaglia
+2010-09-08 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.
+ * contrib/mod_ban.c, contrib/mod_sftp/scp.c, contrib/mod_tls.c: Fix
+ the getopt() resetting logic for HPUX11.
-2010-03-04 09:29 castaglia
+2010-09-07 castaglia <castaglia>
- * tests/api/: scoreboard.c, str.c:
- Update failing scoreboard API test. Add new sreplace API test.
+ * modules/mod_auth.c: Forgot to allocate space for another pointer
+ in the CreateHome config_rec.
-2010-03-04 09:27 castaglia
+2010-09-07 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.
+ * configure: Updated configure.
-2010-03-03 17:27 castaglia
+2010-09-07 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.
+ * 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-03-03 17:25 castaglia
+2010-09-07 castaglia <castaglia>
- * src/dirtree.c:
- Avoid compiler warning about uninitialized variable.
+ * 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-03-03 17:15 castaglia
+2010-09-07 castaglia <castaglia>
- * modules/mod_core.c:
- Avoid compiler warning about unitialized variable.
+ * configure: Updated configure.
-2010-03-03 16:30 castaglia
+2010-09-07 castaglia <castaglia>
- * src/throttle.c:
- Remove an unused variable.
+ * 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-03-03 15:10 castaglia
+2010-09-03 castaglia <castaglia>
- * contrib/mod_quotatab_file.c, contrib/mod_shaper.c,
- contrib/mod_sftp/rfc4716.c, modules/mod_delay.c,
- src/scoreboard.c, utils/scoreboard.c:
- Check the lseek(2) return value in more places.
+ * doc/howto/CreateHome.html: Updated the CreateHome howto to
+ describe the new 'homegid' parameter.
-2010-03-03 09:40 castaglia
+2010-09-03 castaglia <castaglia>
- * include/options.h:
- 4K for an environ variable value might be a bit excessive; let's
- use 2K.
+ * 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-03-03 08:56 castaglia
+2010-09-02 castaglia <castaglia>
- * include/options.h, src/env.c, src/proctitle.c:
- Set a limit on the maximum length of environment variable values.
+ * NEWS, src/parser.c,
+ tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm: Bug#3502 - Support
+ environment variables better in the config file.
-2010-03-03 08:24 castaglia
+2010-09-01 castaglia <castaglia>
- * NEWS, src/fsio.c, tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm:
- Backport of fix (and regression tests) for Bug#3354.
+ * 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-03-03 08:23 castaglia
+2010-09-01 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.
+ * 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-03-02 17:01 castaglia
+2010-08-31 jwm <jwm>
- * NEWS, src/log.c:
- Bug#3404 - SyslogLevel not applied to SystemLog.
+ * tests/tests.pl: get verbose output from Test::Harness, too
-2010-03-02 16:54 castaglia
+2010-08-31 jwm <jwm>
- * NEWS, contrib/mod_sftp/mod_sftp.c:
- Bug#3405 - Multiple SFTPAuthorizedUserKeys stores causes segfault
- on 64-bit platforms.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ldap.pm,
+ tests/t/modules/mod_ldap.t: start mod_ldap test suite
-2010-03-02 16:53 castaglia
+2010-08-31 castaglia <castaglia>
- * contrib/mod_sftp/rfc4716.c:
- Backport of the fix for handling of errno such that the proper
- error is logged when we fail to open a file-based authorized keys
- file.
+ * 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-03-02 16:53 castaglia
+2010-08-31 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.
+ * 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-03-02 11:03 castaglia
+2010-08-30 castaglia <castaglia>
- * doc/contrib/mod_sftp_sql.html:
- Update the mod_sftp_sql doc to mention where to find the latest
- version.
+ * NEWS, src/auth.c: Bug#3501 - <Anonymous> logins with
+ "AuthAliasOnly on" still handled as anonymous logins.
-2010-03-02 10:36 castaglia
+2010-08-27 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#3339 - Support ban rule for clients which login too
- frequently.
+ * tests/t/lib/ProFTPD/Tests/Config/AuthAliasOnly.pm:
+ Regression/reproduction tests for Bug#3501.
-2010-03-02 10:24 castaglia
+2010-08-27 castaglia <castaglia>
- * NEWS, locale/Makefile.in, locale/ja_JP.po:
- Bug#3400 - Add Japanese translation.
+ * tests/t/lib/ProFTPD/Tests/Logins.pm: Missing testcase tag.
-2010-03-02 10:24 castaglia
+2010-08-26 jwm <jwm>
- * locale/ja_JP.po: file ja_JP.po was added on branch B1_3_3 on
- 2010-03-02 18:24:24 +0000
+ * 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-03-02 10:07 castaglia
+2010-08-18 jwm <jwm>
- * NEWS, modules/mod_facts.c:
- Bug#3403 - File upload followed by MLSD leads to wrong file size
- entries in TransferLog.
+ * contrib/mod_ldap.c: mod_ldap bzr r103: fix handling of LDAPGroups directive
-2010-03-02 09:52 castaglia
+2010-08-17 jwm <jwm>
- * NEWS, contrib/mod_tls.c:
- Bug#3402 - mod_tls does not compile with pre-0.9.7 OpenSSL due to
- Bug#3349.
+ * 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-03-02 09:33 castaglia
+2010-08-14 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/crypto.c:
- Bug#3401 - mod_sftp does not compile with pre-0.9.7 OpenSSL.
+ * 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-02-28 09:13 jwm
+2010-08-14 castaglia <castaglia>
- * 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
+ * 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-02-24 18:16 castaglia
+2010-08-13 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.
+ * 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-02-24 17:49 castaglia
+2010-08-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Limit/MFMT.pm:
- Remove development cruft.
+ * 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-02-24 16:51 castaglia
+2010-08-10 castaglia <castaglia>
- * doc/howto/Versioning.html:
- Fix typo, update example.
+ * RELEASE_NOTES: Updated release notes.
-2010-02-24 15:21 castaglia
+2010-08-10 castaglia <castaglia>
- * NEWS, modules/mod_facts.c,
- tests/t/lib/ProFTPD/Tests/Commands/MLST.pm:
- Bug#3302 - MLST response should include full path name.
+ * doc/contrib/ftpmail.html: Update the ftpmail doc with mention of
+ the new --auth command-line option.
-2010-02-24 15:19 castaglia
+2010-08-10 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.
+ * NEWS, contrib/ftpmail: Bug#3495 - Support SMTP authentication in
+ the ftpmail Perl script.
-2010-02-24 15:18 castaglia
+2010-08-10 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3365 - First certificate in TLSCertificateChainFile is
- skipped.
+ * doc/modules/mod_lang.html: Start on a FAQ section for the mod_lang
+ docs.
-2010-02-24 15:14 castaglia
+2010-08-09 castaglia <castaglia>
- * NEWS, contrib/mod_site_misc.c, modules/mod_facts.c,
- tests/tests.pl, tests/t/config/limit/mfmt.t,
- tests/t/lib/ProFTPD/Tests/Config/Limit/MFMT.pm:
- Bug#3399 - <Limit> statement does not restore access to MFMT
- commands.
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Remove development
+ cruft.
-2010-02-24 11:14 castaglia
+2010-08-09 castaglia <castaglia>
- * doc/contrib/index.html:
- Updated index of contrib module docs.
+ * 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-02-24 10:38 castaglia
+2010-08-09 castaglia <castaglia>
- * include/version.h:
- Updated for CVS.
+ * contrib/mod_rewrite.c: Fix harmless misspelling.
-2010-02-24 09:58 castaglia
+2010-08-06 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * 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-02-24 09:54 castaglia
+2010-08-05 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Preparing for release of 1.3.3-stable.
+ * 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-02-24 09:25 castaglia
+2010-08-04 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * src/dirtree.c,
+ tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Additional fix,
+ and regression test, for Bug#3491.
-2010-02-24 09:24 castaglia
+2010-08-04 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Preparing for release of 1.3.2e.
+ * 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-02-24 08:48 castaglia
+2010-08-03 jwm <jwm>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Quell Perl interpreter warnings about redeclared variables.
+ * contrib/mod_ldap.c: mod_ldap bzr r101 release 2.8.23
-2010-02-24 08:46 castaglia
+2010-08-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Quell some Perl interpreter warnings about redeclared variables.
+ * 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-02-24 08:20 castaglia
+2010-08-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Quell Perl interpreter warning about "useless use of private
- variable in void context".
+ * doc/contrib/mod_sftp.html: Updating SFTPOptions doc to mention new
+ MatchKeySubject value, added for Bug#3493.
-2010-02-23 10:01 castaglia
+2010-08-02 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.
+ * 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>
-2010-02-23 09:06 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.
- * modules/mod_ls.c:
- Make sure that the pluralization of "paths" matches the count
- displayed in the log message.
+2010-07-29 castaglia <castaglia>
-2010-02-22 09:01 castaglia
+ * NEWS, src/dirtree.c,
+ tests/t/lib/ProFTPD/Tests/Config/Directory/Umask.pm: Bug#3491 -
+ Directory pattern not matching as expected.
- * NEWS, contrib/mod_ban.c:
- Bug#3389 - Cannot create mod_ban whitelists using <Class> and
- <IfClass> sections.
+2010-07-27 castaglia <castaglia>
-2010-02-22 08:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: More feature
+ tests for mod_wrap2, based on questions from the online forums.
- * 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.
+2010-07-27 castaglia <castaglia>
- The solution to this is simple: make a deep copy.
+ * NEWS, modules/mod_auth.c: Bug#3482 - ProFTPD corrupts utmpx log
+ files on FreeBSD 9.0/HEAD.
-2010-02-21 14:34 castaglia
+2010-07-23 castaglia <castaglia>
- * contrib/mod_sftp/rfc4716.c:
- Support use of FIFOs as SFTPAuthorized{Host,User}Keys files.
+ * NEWS: Typo.
-2010-02-21 11:51 castaglia
+2010-07-21 castaglia <castaglia>
- * src/inet.c:
- Log if getsockname(2) returns an error.
+ * contrib/mod_sftp/interop.c: Quell compiler warning about possibly
+ using an uninitialized value.
-2010-02-21 10:04 castaglia
+2010-07-20 castaglia <castaglia>
- * src/dirtree.c:
- Handle an edge case/regression from the fix for Bug#3337.
+ * 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-02-21 10:04 castaglia
+2010-07-20 castaglia <castaglia>
- * src/dirtree.c:
- Handle an edge case/regression from Bug#3337.
+ * 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-02-19 10:23 castaglia
+2010-07-20 castaglia <castaglia>
- * contrib/mod_tls.c:
- Slightly better logging of SSL session reuse for data
- connections.
+ * NEWS: Typo.
-2010-02-19 09:57 castaglia
+2010-07-20 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.
+ * src/data.c: Fix typo.
-2010-02-19 09:47 castaglia
+2010-07-16 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Fix some of the compiler warnings mentioned in Bug#3394.
+ * NEWS, src/main.c: Bug#3485 - Disabling IPv6 via -4 or --ipv4
+ command-line options does not work.
-2010-02-17 10:06 castaglia
+2010-07-15 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.
+ * 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-02-17 08:07 castaglia
+2010-07-15 castaglia <castaglia>
- * doc/howto/Limit.html:
- Add blocking of STAT to "blind directory" example, per Bug#3391.
+ * 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-02-15 15:28 castaglia
+2010-07-13 castaglia <castaglia>
- * doc/howto/SQL.html:
- Add SQL FAQ about encrypting the connections between mod_sql and
- the backend database server.
+ * doc/contrib/mod_ctrls_admin.html: Document the just-added 'ftpdctl
+ debug level' feature.
-2010-02-15 14:03 castaglia
+2010-07-13 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.
+ * contrib/mod_ctrls_admin.c: Make it possible to use 'ftpdctl debug
+ level' to query the currently set DebugLevel of the running daemon.
-2010-02-15 11:32 castaglia
+2010-07-08 castaglia <castaglia>
- * configure:
- Updated configure.
+ * NEWS, contrib/mod_sftp/fxp.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Bug#3481 - Problem
+ with SFTP directory listings.
-2010-02-15 11:22 castaglia
+2010-07-05 castaglia <castaglia>
- * configure.in:
- The various library directories need to be included in the
- `proftpd -V' output as well.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression
+ tests for mod_sftp's scanner/probe checks.
-2010-02-15 09:45 castaglia
+2010-07-05 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Backport the fix for Bug#3342.
+ * doc/contrib/mod_sftp.html: Document the new OldProtocolCompat
+ SFTPOption for Bug#3480.
-2010-02-15 08:36 castaglia
+2010-07-05 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.
+ * 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-02-13 16:36 castaglia
+2010-07-03 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.
+ * 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-02-13 16:19 castaglia
+2010-07-03 castaglia <castaglia>
- * src/modules.c:
- Comment corrections.
+ * 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-02-12 17:45 castaglia
+2010-07-03 castaglia <castaglia>
- * include/version.h:
- Updated version for CVS.
+ * 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-02-12 17:09 castaglia
+2010-07-03 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * configure: Updated configure.
-2010-02-12 17:08 castaglia
+2010-07-03 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Updates for the 1.3.3rc4 release.
+ * 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-02-12 16:53 castaglia
+2010-07-03 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * 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-02-12 16:52 castaglia
+2010-07-03 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Updates for 1.3.2d release.
+ * doc/contrib/mod_exec.html: Mention the newly added %A variable in
+ the mod_exec docs.
-2010-02-12 16:37 castaglia
+2010-07-03 castaglia <castaglia>
- * RELEASE_NOTES:
- Preparing release notes for another RC.
+ * NEWS, contrib/mod_exec.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Bug#3479 - Support
+ anonymous username variable in mod_exec.
-2010-02-12 16:13 castaglia
+2010-06-30 castaglia <castaglia>
- * RELEASE_NOTES:
- Start updating the 1.3.2 release notes for a maintenance release.
+ * 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-02-11 14:44 castaglia
+2010-06-30 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).
+ * 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-02-11 14:36 castaglia
+2010-06-30 castaglia <castaglia>
- * src/dirtree.c:
- Minor code style cleanup, no functional change.
+ * modules/mod_core.c: Stylistic nits; no functional change.
-2010-02-11 14:35 castaglia
+2010-06-29 castaglia <castaglia>
- * src/netacl.c:
- More trace logging of comparison of netacls.
+ * 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-02-10 22:30 castaglia
+2010-06-29 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.
+ * tests/t/etc/modules/mod_tls/NOTES: Reminder notes to myself for
+ generating the CRL and PKCS12 files.
-2010-02-10 15:29 castaglia
+2010-06-29 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.
+ * 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-02-10 13:45 castaglia
+2010-06-29 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.
+ * 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-02-10 12:54 castaglia
+2010-06-29 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.
+ * NEWS, RELEASE_NOTES, doc/contrib/index.html: Mention the new
+ mod_ifversion module.
-2010-02-10 12:50 castaglia
+2010-06-29 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.
+ * contrib/mod_ifversion.c, doc/contrib/mod_ifversion.html: Adding
+ mod_ifversion to the contrib/ modules area.
-2010-02-10 11:39 castaglia
+2010-06-28 castaglia <castaglia>
- * doc/howto/Compiling.html:
- Slightly better/fuller example.
+ * RELEASE_NOTES: Minor formatting tweaks.
-2010-02-10 11:24 castaglia
+2010-06-28 castaglia <castaglia>
- * configure:
- Updated configure.
+ * RELEASE_NOTES: Start fleshing out the RELEASE_NOTES and preparing
+ for a release.
-2010-02-10 11:21 castaglia
+2010-06-28 jwm <jwm>
- * 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).
+ * 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-02-10 11:20 castaglia
+2010-06-28 jwm <jwm>
- * modules/mod_delay.c:
- Quell compiler warning about unreachable code. Prepare mod_delay
- for acting properly when compiled as a DSO module.
+ * 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-02-10 11:19 castaglia
+2010-06-25 castaglia <castaglia>
- * modules/mod_facl.c:
- Remove duplicate registration of module unload listener in
- mod_facl.
+ * 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-02-10 11:12 castaglia
+2010-06-25 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.
+ * 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-02-10 10:34 castaglia
+2010-06-25 castaglia <castaglia>
- * contrib/mod_sftp/: interop.c, interop.h, keystore.c, keystore.h,
- mod_sftp.c, rfc4716.c, 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Accidentally
+ overloaded a function name. Oops.
-2010-02-10 10:31 castaglia
+2010-06-24 castaglia <castaglia>
- * contrib/: mod_wrap2_file.c, mod_wrap2_sql.c,
- mod_wrap2/mod_wrap2.c, mod_wrap2/mod_wrap2.h.in:
- 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.
+ * 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-02-10 10:27 castaglia
+2010-06-24 castaglia <castaglia>
- * contrib/mod_tls.c:
- Quell some compiler warnings about unreachable code.
+ * 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-02-10 10:26 castaglia
+2010-06-23 castaglia <castaglia>
- * contrib/mod_sql.c:
- Unregister the registered authtype handlers upon module unload.
+ * tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm: Remove
+ yet more debugging cruft.
-2010-02-10 10:24 castaglia
+2010-06-23 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Set the prev pointer properly when registering a quotatab
- backend.
+ * tests/t/config/anonrejectpasswords.t,
+ tests/t/lib/ProFTPD/Tests/Config/AnonRejectPasswords.pm,
+ tests/tests.pl: Add regression test for the AnonRejectPasswords
+ directive.
-2010-02-10 09:29 castaglia
+2010-06-23 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.
+ * tests/t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm: Remove
+ debugging cruft.
-2010-02-09 18:16 castaglia
+2010-06-23 castaglia <castaglia>
- * src/bindings.c:
- When getting a listening connection, handle cases where an IP
- address string can't be returned for some reason.
+ * tests/t/config/anonrequirepassword.t,
+ tests/t/lib/ProFTPD/Tests/Config/AnonRequirePassword.pm,
+ tests/tests.pl: Add regression tests for the AnonRequirePassword
+ directive.
-2010-02-09 17:05 castaglia
+2010-06-23 castaglia <castaglia>
- * contrib/mod_dynmasq.c:
- Forgot to update the copyright date on this file, since it's been
- modified this year.
+ * 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-02-09 17:03 castaglia
+2010-06-23 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c, contrib/mod_dynmasq.c:
- Backport of Bug#3387 to the 1.3.2 branch for mod_ban and
- mod_dynmasq.
+ * 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-02-09 17:01 castaglia
+2010-06-22 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.
+ * configure: Updated configure.
- 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-06-22 castaglia <castaglia>
-2010-02-09 12:08 castaglia
+ * modules/mod_auth_unix.c: Forgot to update copyright dates on the
+ modified file.
- * src/timers.c:
- Paranoid checking for NULL parameters for a trace message in the
- Timers API.
+2010-06-22 castaglia <castaglia>
-2010-02-09 07:53 castaglia
+ * NEWS, modules/mod_auth_unix.c: Bug#3475 - Add new 'noGetgrouplist'
+ AuthUnixOption to work around buggy libc code.
- * 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-06-22 castaglia <castaglia>
-2010-02-08 15:12 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.
- * 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-06-22 castaglia <castaglia>
-2010-02-08 15:01 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.
- * 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-06-22 castaglia <castaglia>
-2010-02-08 13:54 castaglia
+ * NEWS, modules/mod_ls.c: Bug#3476 - LIST/NLST of path starting with
+ "-" fails.
- * src/fsio.c:
- More defensive programming: check for cases where
- lookup_fs_file() returns NULL, and Do The Right Thing(tm).
+2010-06-22 castaglia <castaglia>
-2010-02-08 13:27 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.
- * 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-06-22 castaglia <castaglia>
-2010-02-08 13:14 castaglia
+ * doc/contrib/mod_sftp.html: Add FAQ about "line too long"
+ authorized key errors.
- * 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-06-22 castaglia <castaglia>
-2010-02-08 12:00 castaglia
+ * contrib/mod_wrap2_sql.c: Additional fixes for Bug#3471.
- * 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-06-22 castaglia <castaglia>
-2010-02-08 11:45 castaglia
+ * configure: Updated configure.
- * src/trace.c:
- Prevent long trace log lines from trampling each other by
- truncating and adding a terminating newline properly.
+2010-06-22 castaglia <castaglia>
-2010-02-08 09:28 castaglia
+ * configure.in: Add a --disable-getgrouplist configure option, to
+ disable use of the getgrouplist(3) function, hopefully working
+ around Bug#3475.
- * contrib/mod_sftp/packet.c:
- Make sure we don't try to read in more data than can fit in our
- packet buffer.
+2010-06-21 castaglia <castaglia>
-2010-02-07 10:50 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.
- * configure:
- Updated configure.
+2010-06-21 castaglia <castaglia>
-2010-02-07 10:45 castaglia
+ * doc/contrib/mod_sftp.html: Add SFTP FAQ about using Tectia/ssh.com
+ host keys with mod_sftp.
- * configure.in:
- Make sure that compiler optimizations are disabled when
- --enable-devel is used.
+2010-06-21 castaglia <castaglia>
-2010-02-07 10:36 castaglia
+ * doc/contrib/mod_sftp.html: Make it clearer in the mod_sftp docs
+ that the modules does not support shell access.
- * 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-06-21 castaglia <castaglia>
-2010-02-05 17:38 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.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Make sure that config_write() can handle Anonymous sections which
- contain nested Directory or Limit sections.
+2010-06-21 castaglia <castaglia>
-2010-02-04 16:32 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.
- * src/event.c:
- Include the memory address of the event callback being invoked in
- the trace message about event handling.
+2010-06-20 castaglia <castaglia>
-2010-02-04 11:26 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.
- * doc/contrib/mod_sftp_sql.html:
- Update the schema examples for storing SSH keys; include indices
- in the example schema.
+2010-06-20 castaglia <castaglia>
-2010-02-04 09:24 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.
- * src/pool.c:
- Make the name of the oom pool walking function be 'oom_printf',
- just to be very clear.
+2010-06-20 castaglia <castaglia>
-2010-02-04 09:14 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Add
+ regression test for Bug#3283.
- * 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.
+2010-06-20 castaglia <castaglia>
- 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.
+ * 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-02-03 20:08 castaglia
+2010-06-19 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.
+ * doc/howto/ListOptions.html: Include the new options (-c, -u) from
+ Bug#3396 in the ListOptions howto.
- Left myself a comment to this effect, so that I'm not tempted to
- make the same mistake again in the future.
+2010-06-19 castaglia <castaglia>
-2010-02-03 20:02 castaglia
+ * NEWS, modules/mod_ls.c,
+ tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Bug#3396 - Support -c
+ and -u LIST options.
- * 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-06-19 castaglia <castaglia>
-2010-02-03 20:00 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.
- * 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-06-19 castaglia <castaglia>
-2010-02-03 19:42 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.
- * 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-06-19 castaglia <castaglia>
-2010-02-03 19:23 castaglia
+ * contrib/mod_ldap.c: Quell compiler warning about an uninitialized
+ pointer.
- * NEWS, contrib/mod_sftp/scp.c:
- Bug#3386 - Downloading via SCP can stall due to rekeying.
+2010-06-19 castaglia <castaglia>
-2010-02-03 19:12 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Add
+ regression test (and correct configuration) for Bug#3166.
- * contrib/mod_sftp/scp.c:
- Typo.
+2010-06-19 castaglia <castaglia>
-2010-02-03 18:46 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for
+ hostbased SSH2 authentication.
- * contrib/mod_sftp/scp.c:
- Add some minor logging of the progress being made on the sending
- of data for a file via SCP.
+2010-06-17 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add mod_sftp
+ regression tests for Bug#3472.
-2010-02-03 18:15 castaglia
+2010-06-17 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/channel.c:
- Bug#3385 - Memory leak during SCP download.
+ * 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-02-03 17:03 castaglia
+2010-06-17 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.
+ * NEWS, contrib/mod_sftp/auth-publickey.c: Bug#3472 - mod_sftp
+ publickey authentication fails for large keys.
- With these two changes, downloading via SCP a largish (700 MB)
- file finally worked, without hanging the scp(1) OpenSSH client.
+2010-06-17 castaglia <castaglia>
-2010-02-03 15:42 castaglia
+ * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3471 - Null values in
+ allow/deny rules causes mod_wrap2 to segfault.
- * contrib/mod_sftp/tap.c:
- Make "SFTPTrafficPolicy none" work; it was hanging if that
- setting had been explicitly configured in the proftpd.conf.
+2010-06-15 castaglia <castaglia>
- 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 13:45 castaglia
-
- * src/child.c:
- If sending a signal to the child/session process fails, log the
- reason via trace logging.
-
-2010-02-03 13:31 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 11:11 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 09:15 castaglia
-
- * contrib/mod_sftp/fxp.c:
- Quell compiler warnings about unused return values.
-
-2010-02-02 16:56 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-02 16:29 castaglia
-
- * contrib/mod_sftp/keys.c:
- Quell compiler warnings about unreachable code; no functional
- change.
-
-2010-02-02 15:06 jwm
-
- * contrib/mod_ldap.c: revno: 93 message: add ssh public key
- support (for mod_sftp_ldap) from TJ Saunders <tj at castaglia.org>
-
-2010-02-02 15:02 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 at 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 at 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 14:14 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 14:09 castaglia
-
- * RELEASE_NOTES:
- Update the release notes; it's almost time for release.
-
-2010-02-01 11:30 castaglia
-
- * doc/contrib/mod_sql_passwd.html:
- Updating mod_sql_passwd docs with description of new
- SQLPasswordUserSalt directive.
-
-2010-02-01 11:20 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#3467 - mod_ifsession does not
+ merge <Directory> blocks properly.
- * 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-06-15 castaglia <castaglia>
-2010-02-01 10:40 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 ('~').
- * NEWS, contrib/mod_radius.c:
- Bug#3381 - RADIUS authentication broken on 64-bit platforms.
+2010-06-15 castaglia <castaglia>
-2010-01-31 13:12 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).
- * 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-06-15 castaglia <castaglia>
-2010-01-31 13:06 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.
- * 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-06-14 castaglia <castaglia>
-2010-01-31 12:34 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3465 - SIGSEGV at LIST after CCC.
- * contrib/: mod_sftp/crypto.c, 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-06-14 castaglia <castaglia>
-2010-01-29 11:00 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.
- * 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-06-14 castaglia <castaglia>
-2010-01-29 10:56 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: More
+ regression tests for Bug#3467.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Add a function for getting the version of the current proftpd
- (using `proftpd -V').
+2010-06-12 castaglia <castaglia>
-2010-01-26 15:59 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Add regression
+ test for Bug#3467.
- * src/support.c:
- Add a counter for signal blocking/unblocking, to handle nested
- calls. Also added trace logging for signal blocking/unblocking.
+2010-06-12 castaglia <castaglia>
-2010-01-26 11:50 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add regression test
+ for Bug#3465.
- * src/timers.c:
- Use proper pluralization in the timer trace messages.
+2010-06-11 castaglia <castaglia>
-2010-01-26 08:51 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#3466 - mod_ifsession does not
+ check for properly closed <IfUser> contexts.
- * 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-06-11 castaglia <castaglia>
-2010-01-26 08:41 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ifsession.pm: Add an
+ <IfGroup> test.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Add unit test for a "SQLLog EXIT" configuration.
+2010-05-27 castaglia <castaglia>
-2010-01-23 13:43 castaglia
+ * NEWS, contrib/ftpasswd: Bug#3463 - ftpasswd script's
+ --delete-group option does not work.
- * configure:
- Update configure.
+2010-05-27 castaglia <castaglia>
-2010-01-23 13:39 castaglia
+ * NEWS, contrib/ftpasswd: Bug#3462 - ftpasswd script's --delete-user
+ option does not work.
- * 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-05-25 castaglia <castaglia>
-2010-01-23 11:29 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Update mod_sftp
+ .ftpaccess unit test to check for regressions of Bug#3460.
- * 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-05-25 castaglia <castaglia>
-2010-01-23 10:42 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3460 - REALPATH SFTP request can
+ cause improperly cached directory configuration.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm:
- Adding more regression tests for mod_wrap2/mod_wrap2_file.
+2010-05-25 castaglia <castaglia>
-2010-01-23 10:42 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.
- * 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-05-25 castaglia <castaglia>
-2010-01-23 10:31 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DefaultChdir.pm: Add more
+ DefaultChdir tests.
- * 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-05-25 castaglia <castaglia>
-2010-01-22 14:16 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.
- * src/netaddr.c:
- Make sure that the errno value is preserved in failure cases in
- pr_netaddr_get_addr().
+2010-05-25 castaglia <castaglia>
-2010-01-21 09:37 castaglia
+ * NEWS, src/auth.c: Bug#3431 - Ensure that timezone info files are
+ opened prior to chroot.
- * 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-05-25 castaglia <castaglia>
-2010-01-20 10:11 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.
- * contrib/mod_ban.c:
- Removed some unnecessary logging.
+2010-05-24 castaglia <castaglia>
-2010-01-19 10:59 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.
- * 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-05-24 castaglia <castaglia>
-2010-01-19 08:52 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).
- * NEWS, contrib/mod_tls.c:
- Bug#3375 - Minor SIGHUP-based memory leak in mod_tls.
+2010-05-24 castaglia <castaglia>
-2010-01-19 08:43 castaglia
+ * NEWS, contrib/mod_radius.c: Bug#3459 - mod_radius segfaults during
+ incorrect login due to stale data.
- * 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-05-24 castaglia <castaglia>
-2010-01-19 08:37 castaglia
+ * contrib/mod_radius.c: Quell compiler warnings about unused
+ strtoul(3) return values.
- * 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-05-20 castaglia <castaglia>
-2010-01-18 16:03 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.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp_sql.pm,
- t/modules/mod_sftp_sql.t:
- Add unit tests for mod_sftp_sql.
+2010-05-20 castaglia <castaglia>
-2010-01-16 18:49 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add a couple more
+ SQL-related configuration tests to the mod_sftp suite.
- * 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-05-18 castaglia <castaglia>
-2010-01-16 17:38 castaglia
+ * NEWS, contrib/mod_sftp/crypto.c: Bug#3458 - mod_sftp incorrectly
+ performs OpenSSL cleanup.
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_wrap2_file.pm,
- 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-05-18 castaglia <castaglia>
-2010-01-15 14:08 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.
- * NEWS, contrib/mod_radius.c:
- Backported fix for Bug#3372 to the 1.3.2 branch.
+2010-05-06 castaglia <castaglia>
-2010-01-15 14:05 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression
+ tests for uploading/downloading empty dirs via SCP.
- * contrib/mod_radius.c:
- Update the copyright dates in mod_radius.c, since the code has
- changed.
+2010-05-06 castaglia <castaglia>
-2010-01-15 14:05 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.
- * NEWS, contrib/mod_radius.c:
- Bug#3372 - ProFTPD crashes when retrying a failed login with
- mod_radius being used.
+2010-05-06 castaglia <castaglia>
-2010-01-11 07:57 castaglia
+ * contrib/mod_sftp/channel.c: Minor nit about the proper plurality
+ in a trace message.
- * doc/contrib/mod_sftp_sql.html:
- Use HTML entity encoding for angle brackets; more browsers like
- this.
+2010-05-05 castaglia <castaglia>
-2010-01-10 17:16 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.
- * 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-05-05 castaglia <castaglia>
-2010-01-10 13:50 castaglia
+ * include/support.h, src/support.c: Missed some spots in the
+ exists() functions where the path string should also be constified.
- * src/scoreboard.c:
- Whitespace/coding style change, no functional change. Update the
- copyright date.
+2010-05-05 castaglia <castaglia>
-2010-01-10 13:49 castaglia
+ * include/support.h, src/support.c: Constify the arguments the
+ *exists() functions.
- * src/scoreboard.c:
- Whitespace/style change, no functional change.
+2010-05-04 castaglia <castaglia>
-2010-01-10 13:10 castaglia
+ * NEWS, locale/Makefile.in: Bug#3454 - msgfmt(1) options used for
+ generating NLS files are not compatible with Solaris' msgfmt.
- * configure:
- Updated configure.
+2010-05-02 castaglia <castaglia>
-2010-01-10 13:05 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.
- * NEWS, config.h.in, configure.in, contrib/mod_ban.c,
- contrib/mod_ctrls_admin.c, include/scoreboard.h,
- src/scoreboard.c:
- Backported fix for Bug#3370 to 1.3.2 branch.
+2010-05-02 castaglia <castaglia>
-2010-01-10 12:08 castaglia
+ * modules/mod_xfer.c: Log, at debug level 8, if an APPE command is
+ blocked because of a <Limit> configuration.
- * 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-05-01 castaglia <castaglia>
-2010-01-10 12:06 castaglia
+ * contrib/mod_sftp/fxp.c: Make a note about better reporting of
+ incomplete uploads, where possible.
- * configure:
- Updated configure.
+2010-04-29 castaglia <castaglia>
-2010-01-10 12:01 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.
- * 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-04-29 castaglia <castaglia>
-2010-01-08 10:53 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.
- * 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-04-29 castaglia <castaglia>
-2010-01-08 10:20 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.
- * 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-04-28 castaglia <castaglia>
-2010-01-08 10:03 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3451 - WinSCP can't upload files
+ using protocol version 5 with mod_sftp.
- * 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-04-28 castaglia <castaglia>
-2010-01-07 14:45 castaglia
+ * src/main.c: Stylistic changes; no functional changes.
- * src/dirtree.c:
- Backport the fix for the "find_config() can return wrong
- config_rec" bug from trunk.
+2010-04-28 castaglia <castaglia>
-2010-01-07 11:59 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.
- * 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-04-28 castaglia <castaglia>
-2010-01-07 11:22 castaglia
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3450 - mod_sftp does not
+ properly handle the O_APPEND flag in a SFTP OPEN request.
- * 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.
+2010-04-27 castaglia <castaglia>
- The rest of this change simply alters the coding style to make
- future debugging in that section of code easier.
+ * 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-01-06 15:30 castaglia
+2010-04-27 castaglia <castaglia>
- * doc/contrib/mod_ctrls_admin.html:
- Add example of using new 'ftpdctl restart count' functionality.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test
+ for Bug#3425.
-2010-01-06 15:24 castaglia
+2010-04-27 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.
+ * contrib/mod_sftp/fxp.c: Correct a comment.
-2010-01-06 15:05 castaglia
+2010-04-27 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.
+ * 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-01-05 16:41 castaglia
+2010-04-27 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Add SFTP FAQ about <Limit SITE_CHMOD> and SFTP uploads.
+ * NEWS: Bug#3448 - Ensure that STAT/LSTAT/FSTAT SFTP requests do not
+ use cached/stale data.
-2010-01-05 15:17 castaglia
+2010-04-27 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Remove debugging
+ cruft.
-2010-01-04 10:16 castaglia
+2010-04-27 castaglia <castaglia>
- * contrib/mod_wrap2/mod_wrap2.c:
- Fix broken checks added yesterday. Also quell compiler warnings
- about unreachable code.
+ * 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-01-04 09:58 castaglia
+2010-04-26 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.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3447 - mod_sftp can become
+ confused during large recursive SCP uploads.
-2010-01-03 13:08 castaglia
+2010-04-25 castaglia <castaglia>
- * contrib/mod_wrap2/mod_wrap2.c:
- Cleanup of some of the coding style in mod_wrap2 to be more
- legible.
+ * contrib/mod_shaper.c: Add trace logging, using the "lock" trace
+ channel, of mod_shaper's locking of its ShaperTable.
-2010-01-03 13:05 castaglia
+2010-04-25 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.
+ * 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.
-2009-12-28 12:32 castaglia
+2010-04-25 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.
+ * contrib/mod_sftp/scp.c: Remove unused strlen(3) call.
-2009-12-28 12:12 castaglia
+2010-04-24 castaglia <castaglia>
- * doc/howto/TLS.html:
- Fix typos.
+ * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Add unit test for
+ CreateHome's skel parameter.
-2009-12-23 15:46 castaglia
+2010-04-23 castaglia <castaglia>
- * doc/contrib/mod_wrap.html:
- The libnsl library isn't needed for mod_wrap on Mac OSX, either.
+ * src/dirtree.c: Use updated patch for Bug#3446.
-2009-12-19 17:19 castaglia
+2010-04-23 castaglia <castaglia>
- * src/fsio.c:
- Rather than testing for CYGWIN to use the O_BINARY flag, just
- test for the O_BINARY flag directly.
+ * 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.
-2009-12-18 09:40 castaglia
+2010-04-23 castaglia <castaglia>
- * contrib/mod_tls_shmcache.c:
- Fix compiler warning.
+ * 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.
- Rename the 'core.exit' event listener to be more accurate (it's a
- shutdown listener in some cases, not a session-exit listener).
+2010-04-22 castaglia <castaglia>
-2009-12-18 09:36 castaglia
+ * doc/howto/Limit.html: Add an example of blocking renames.
- * NEWS, contrib/mod_tls_shmcache.c:
- Bug#3359 - mod_tls_shmcache segfaults during syntax check.
+2010-04-21 castaglia <castaglia>
-2009-12-15 15:24 castaglia
+ * doc/contrib/mod_sftp.html: Typo.
- * Makefile.in, NEWS:
- Bug#3356 - Build timestamp using date(1) can fail depending on
- environment.
+2010-04-21 castaglia <castaglia>
-2009-12-15 14:31 castaglia
+ * doc/contrib/mod_sftp.html: Add a "Known Client Issues" section to
+ the mod_sftp docs.
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3357 - mod_sftp fails to compile on AIX.
+2010-04-20 castaglia <castaglia>
-2009-12-15 10:56 castaglia
+ * contrib/mod_sftp/mod_sftp.c: Fix bug in the fix for Bug#3444 that
+ was committed yesterday.
- * NEWS, contrib/mod_tls.c:
- Bug#3358 - mod_tls doesn't compile with pre-0.9.7 openssl.
+2010-04-20 castaglia <castaglia>
-2009-12-14 22:22 castaglia
+ * NEWS, modules/mod_core.c: Bug#3443 - Deprecate the DisplayGoAway
+ directive.
- * modules/mod_xfer.c:
- Typo.
+2010-04-20 castaglia <castaglia>
-2009-12-14 17:13 castaglia
+ * NEWS: Make sure the NEWS file tracks the correct bug title for
+ Bug#3445.
- * contrib/mod_shaper.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_shaper.pm:
- Fix a problem in mod_shaper, noted in this forums post:
+2010-04-20 castaglia <castaglia>
- http://forums.proftpd.org/smf/index.php/topic,1628.0.html
+ * 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.
- 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.
+2010-04-20 castaglia <castaglia>
- 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.
+ * contrib/mod_sftp/kex.c: Update the copyright date for this file.
-2009-12-14 16:37 castaglia
+2010-04-20 castaglia <castaglia>
- * contrib/mod_shaper.c:
- Fix compiler warnings about unreachable code, and rename an event
- listener to be more appropriately named.
+ * 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.
-2009-12-14 13:29 castaglia
+2010-04-20 castaglia <castaglia>
- * doc/contrib/mod_wrap.html:
- Adding more examples of paranoid libwrap log messages.
+ * contrib/mod_sftp/fxp.c: Make sure the statcache is cleared when
+ handling STAT/FSTAT/LSTAT requests.
-2009-12-14 12:48 castaglia
+2010-04-19 castaglia <castaglia>
- * doc/howto/TLS.html:
- Another SSL/TLS FAQ.
+ * 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.
-2009-12-14 10:53 castaglia
+2010-04-19 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.
+ * contrib/mod_sftp/mod_sftp.h.in: Update copyright date in the
+ header, since we've modified the file this year.
-2009-12-14 10:39 castaglia
+2010-04-19 castaglia <castaglia>
- * contrib/mod_tls.c:
- Clear up compiler warnings about unreachable code in mod_tls. No
- functional change.
+ * 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.
-2009-12-14 09:37 castaglia
+2010-04-19 castaglia <castaglia>
- * doc/howto/Stopping.html:
- Fixing up the Stopping howto, and adding an example Mac OSX
- launchd plist config.
+ * doc/howto/Logging.html: Add Logging FAQ about logging xferlog data
+ to syslog.
-2009-12-13 12:17 castaglia
+2010-04-18 castaglia <castaglia>
- * utils/ftptop.c:
- Quell compiler warnings about unreachable code.
+ * contrib/mod_sftp/utf8.c, src/encode.c: More notes to myself
+ regarding possible encoding failures and their causes.
-2009-12-13 11:31 castaglia
+2010-04-17 castaglia <castaglia>
- * contrib/mod_tls.c:
- Drat. Forgot one of the SSL/TLS renegotiation backport changes
- from trunk. Without this, data transfers might be improperly
- detected as renegotiations and denied.
+ * tests/t/config/serveradmin.t,
+ tests/t/lib/ProFTPD/Tests/Config/ServerAdmin.pm, tests/tests.pl: Add
+ regression tests for the ServerAdmin directive.
-2009-12-11 16:47 castaglia
+2010-04-17 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.
+ * 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.
- 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.
+2010-04-17 castaglia <castaglia>
-2009-12-11 15:09 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.
- * src/table.c:
- Clean up some "code will never be executed" warnings.
+2010-04-17 castaglia <castaglia>
-2009-12-11 15:03 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.
- * 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.
+2010-04-17 castaglia <castaglia>
-2009-12-10 20:44 castaglia
+ * modules/mod_core.c, src/display.c: Additional fixes for Bug#3423,
+ handling single line DisplayLogin and DisplayChdir files, and
+ multiline DisplayChdir files.
- * doc/howto/: Versioning.html, index.html:
- Finally got around to writing up the version naming conventions
- that are currently used for ProFTPD releases.
+2010-04-17 castaglia <castaglia>
-2009-12-10 19:16 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.
- * contrib/mod_tls.c:
- Be a little more verbose in the error messages logged for
- SSL_accept() failures.
+2010-04-16 castaglia <castaglia>
-2009-12-10 17:06 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.
- * doc/modules/mod_lang.html:
- Typo.
+2010-04-16 castaglia <castaglia>
-2009-12-10 15:06 castaglia
+ * modules/mod_ls.c: Coding style nits; no functional change.
- * include/version.h:
- Update the CVS version.
+2010-04-16 castaglia <castaglia>
-2009-12-10 14:49 castaglia
+ * doc/howto/Logging.html: Mention the configure option for Bug#3436
+ in the Logging howto's section on FIFOs.
- * doc/contrib/mod_sql.html:
- Typo.
+2010-04-14 castaglia <castaglia>
-2009-12-10 12:04 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.
- * ChangeLog:
- Update the ChangeLog.
+2010-04-14 castaglia <castaglia>
-2009-12-10 12:03 castaglia
+ * NEWS, src/encode.c: Bug#3439 - Encoding fails if an NLS-enabled
+ proftpd starts in a UTF8 locale.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing to release 1.3.3rc3 today.
+2010-04-14 castaglia <castaglia>
-2009-12-10 10:34 castaglia
+ * src/main.c: Stylistic nit.
- * ChangeLog:
- Updated ChangeLog.
+2010-04-14 castaglia <castaglia>
-2009-12-10 10:33 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.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing to release 1.3.2c today.
+2010-04-14 castaglia <castaglia>
-2009-12-10 10:24 castaglia
+ * contrib/mod_sftp/scp.c: Silly typos in comment; no functional
+ change.
- * 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.
+2010-04-13 castaglia <castaglia>
-2009-12-10 09:59 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.
- * contrib/mod_wrap.c:
- Specify the module version data in the module structure for
- mod_wrap.
+2010-04-13 castaglia <castaglia>
-2009-12-10 09:45 castaglia
+ * configure: Updated configure for Bug#3436.
- * NEWS, modules/mod_auth.c, modules/mod_auth_file.c:
- Backported fixes for Bug#3347 and Bug#3351.
+2010-04-13 castaglia <castaglia>
-2009-12-10 09:45 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.
- * NEWS, modules/mod_auth.c:
- Bug#3351 - Nonchrooted logins on HPUX do not get proper UID/GID.
+2010-04-13 castaglia <castaglia>
-2009-12-10 09:40 castaglia
+ * contrib/mod_sftp/utf8.c, src/encode.c: Remove unused variables,
+ and quell compiler warnings about "incompatible pointer types" on
+ FreeBSD.
- * NEWS, modules/mod_auth_file.c, tests/tests.pl,
- tests/t/config/authgroupfile.t,
- tests/t/lib/ProFTPD/Tests/Config/AuthGroupFile.pm:
- Bug#3347 - mod_auth_file handles 'getgroups' request incorrectly.
+2010-04-13 castaglia <castaglia>
-2009-12-10 08:26 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.
- * src/: support.c:
- Updated fix for Bug#3350.
+2010-04-13 castaglia <castaglia>
-2009-12-10 07:52 castaglia
+ * contrib/mod_sftp/utf8.c, src/encode.c: Additional part of fix for
+ Bug#3435.
- * NEWS, src/support.c:
- Bug#3350 - Segfault caused by scrubbing zero-length portion of
- memory.
+2010-04-12 castaglia <castaglia>
-2009-12-09 15:45 castaglia
+ * NEWS, contrib/mod_sftp/utf8.c, src/encode.c: Bug#3435 -
+ Encoding/decoding conversion can cause CPU spike.
- * 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.
+2010-04-12 castaglia <castaglia>
-2009-12-09 15:44 castaglia
+ * contrib/mod_sftp/utf8.c, src/encode.c: Make sure we reset any
+ state contained in iconv_t before calling iconv(3).
- * src/expr.c:
- Fix the logic for iterating over session.groups, and handling
- NULL names, in the pr_expr_eval_group_or() function as well.
+2010-04-12 castaglia <castaglia>
-2009-12-09 15:41 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.
- * 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.
+2010-04-12 castaglia <castaglia>
-2009-12-09 15:40 castaglia
+ * src/trace.c: Prevent a recurrence of Bug#3434 by treating a trace
+ message level of zero as an invalid parameter.
- * src/expr.c, tests/api/expr.c:
- Fix a segfault uncovered by Michael, where the
- pr_expr_eval_group_and() function didn't handle a NULL group name
- in the middle of the session.groups list.
+2010-04-12 castaglia <castaglia>
-2009-12-09 13:39 castaglia
+ * src/fsio.c: Include the number of bytes being read/written in the
+ trace messages for the read()/write() callbacks.
- * NEWS, contrib/mod_tls.c:
- Bug#3349 - SSL_SESSION_cmp not available in OpenSSL 1.0.0 betas.
+2010-04-12 castaglia <castaglia>
-2009-12-09 11:55 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.
- * contrib/mod_tls.c:
- Backport of a mod_tls fix to handle checking of "is this a
- renegotiation" only for control connections, not data
- connections.
+2010-04-12 castaglia <castaglia>
-2009-12-09 11:52 castaglia
+ * NEWS, modules/mod_xfer.c, src/fsio.c: Bug#3434 - TraceLog contains
+ messages even with "Trace DEFAULT:0" configured.
- * 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.
+2010-04-12 castaglia <castaglia>
- Also quell a compiler warning using a typecast;
- OpenSSL-1.0.0-betaN uses more const'd types than previously.
+ * 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.
-2009-12-09 11:49 castaglia
+2010-04-12 castaglia <castaglia>
- * contrib/mod_tls.c:
- Make sure that mod_tls can compile against OpenSSL-1.0.0-betaN,
- which does not have the UNSAFE_LEGACY_RENEGOTIATION flag (it uses
- something different).
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3427 - mod_sftp does not handle
+ recursive SCP uploads properly.
-2009-12-09 09:25 castaglia
+2010-04-12 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.
+ * doc/contrib/mod_sftp.html: Add mod_sftp FAQ about
+ UserOwner/GroupOwner, and the need to use the RootRevoke directive.
-2009-12-08 16:51 castaglia
+2010-04-12 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.
+ * 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.
-2009-12-07 16:24 castaglia
+2010-04-11 castaglia <castaglia>
- * doc/contrib/mod_ban.html:
- Add a FAQ about creating whitelists for mod_ban.
+ * modules/mod_xfer.c: Minor style nits in stor_chown(); no
+ functional changes.
-2009-12-07 15:24 castaglia
+2010-04-11 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.
+ * doc/howto/Tracing.html: Add a FAQ/example to the Tracing howto
+ describing how to use Trace in mod_ifsession sections.
-2009-12-07 15:02 castaglia
+2010-04-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Commands/ALLO.pm, Commands/APPE.pm,
- Commands/CDUP.pm, Commands/EPRT.pm, Commands/EPSV.pm,
- Commands/MDTM.pm, Commands/MODE.pm, Commands/NOOP.pm,
- Commands/PASS.pm, Commands/PASV.pm, Commands/PWD.pm,
- Commands/QUIT.pm, Commands/RNFR.pm, Commands/RNTO.pm,
- Commands/SIZE.pm, Commands/STOU.pm, Commands/STRU.pm,
- Config/DeleteAbortedStores.pm, Config/FTPAccess/DELE.pm,
- Commands/SYST.pm, Commands/TYPE.pm, Commands/USER.pm:
- Updating more testsuite tests to use the consistent `tests.log'
- log file.
+ * 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.
-2009-12-07 14:33 castaglia
+2010-04-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Config/AllowOverwrite.pm,
- Config/GroupOwner.pm, Config/MaxInstances.pm,
- Config/MaxRetrieveFileSize.pm, Config/MaxStoreFileSize.pm,
- Config/Order.pm, Config/RequireValidShell.pm,
- Config/StoreUniquePrefix.pm, Config/TimeoutNoTransfer.pm,
- Config/TimeoutSession.pm, Config/TimeoutStalled.pm,
- Config/UseFtpUsers.pm, Config/UserOwner.pm, Signals/ABRT.pm,
- Signals/HUP.pm, Signals/SEGV.pm, Signals/TERM.pm:
- Updating more of the testsuite tests to use `tests.log' as their
- output logging file, for consistency.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3425 - Improperly constructed
+ destination paths for SCP uploads.
-2009-12-07 08:44 castaglia
+2010-04-09 castaglia <castaglia>
- * RELEASE_NOTES:
- Work on preparing the release notes for 1.3.3rc3.
+ * NEWS, contrib/mod_sftp/auth.c: Bug#3426 - mod_sftp does not log to
+ TransferLog by default.
-2009-12-07 08:20 castaglia
+2010-04-09 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Correct the %description sections in proftpd.spec.
+ * contrib/mod_sftp/scp.c: Cache errno in a few more places, so that
+ the proper error is reported.
-2009-12-06 09:19 castaglia
+2010-04-09 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().
+ * 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.
-2009-12-06 09:08 castaglia
+2010-04-08 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.
+ * src/mkhome.c: Stylistic cleanup/changes; no functional changes.
-2009-12-05 15:48 castaglia
+2010-04-08 castaglia <castaglia>
- * doc/contrib/mod_sql_passwd.html:
- Updated the mod_sql_passwd doc to mention support of SHA256 and
- SHA512 passwords.
+ * doc/howto/CreateHome.html: Typo.
-2009-12-05 15:46 castaglia
+2010-04-07 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.
+ * modules/mod_core.c: With the fix for Bug#3423, the adding a
+ trailing blank line to the DisplayQuit message is no longer
+ necessary.
-2009-12-03 13:45 castaglia
+2010-04-07 castaglia <castaglia>
- * utils/scoreboard.c:
- Fix an "unreachable code" compiler warning, and clean up the code
- stylistically.
+ * tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm: Update the
+ DisplayLogin regression test to match the current behavior, as per
+ changes for Bug#3423.
-2009-12-02 19:57 castaglia
+2010-04-07 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.
+ * 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.
-2009-12-02 19:30 castaglia
+2010-04-07 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/REST.pm:
- Add a test for resuming downloads of >4GB files as well.
+ * 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.
-2009-12-02 18:49 castaglia
+2010-04-07 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/REST.pm:
- Add unit test for FileZilla's REST behavior over 2GB.
+ * 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.
- Modify all tests to output to the 'tests.log' file.
+2010-04-07 castaglia <castaglia>
-2009-12-01 20:45 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.
- * modules/mod_xfer.c:
- Typos.
+2010-04-07 castaglia <castaglia>
-2009-12-01 20:38 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Fix broken mod_ban+mod_ifsession test.
+2010-04-07 castaglia <castaglia>
-2009-12-01 19:59 castaglia
+ * src/main.c: Add trace logging of when the response chains are
+ flushed during the command dispatch cycle.
- * src/display.c:
- The displaying of multiline Display files was leaving off the
- last line in the file; now fixed.
+2010-04-05 castaglia <castaglia>
-2009-12-01 19:56 castaglia
+ * utils/ftpcount.c: Fix a pedantic memory leak spotted by cppcheck.
+ Also fixes the code style in a few places.
- * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm:
- Fix the DELE unit tests to handle different strerror(3) strings.
+2010-04-05 castaglia <castaglia>
-2009-12-01 11:39 castaglia
+ * contrib/mod_sftp/mac.c: Scrub the key memory area before freeing
+ it.
- * 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.
+2010-04-05 castaglia <castaglia>
-2009-12-01 10:10 castaglia
+ * contrib/mod_sftp/mac.c: Running cppcheck found a memory leak where
+ we aren't freeing up malloc()'d memory on MAC errors.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands/RMD.pm,
- 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.
+2010-04-05 castaglia <castaglia>
-2009-11-30 09:26 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.
- * contrib/mod_sftp/channel.c, doc/contrib/mod_sftp.html:
- Handle multiple SFTPAcceptEnv directives if configured.
+2010-04-04 castaglia <castaglia>
- Add docs for the SFTPAcceptEnv directive.
+ * contrib/mod_sftp/mod_sftp.h.in: Add more explanation about the
+ assumptions involved in registering an 'exec' channel handler.
-2009-11-26 11:18 castaglia
+2010-04-04 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Include EINVAL in the list of errno values we expect to see from
- PRE_CMD handlers.
+ * contrib/mod_sftp/channel.c: Add more trace logging around the
+ searching and invoking of registered 'exec' channel handlers.
-2009-11-26 10:47 castaglia
+2010-04-03 castaglia <castaglia>
- * modules/mod_xfer.c:
- Make sure that the PRE_CMD handlers for RETR, APPE, and STOR set
- appropriate errno values.
+ * src/main.c: Make sure that premature SIGALRMs don't kill us; we
+ want to ignore SIGALRM unless we've registered a timer.
- Remove some code that would never be executed.
+2010-04-02 castaglia <castaglia>
-2009-11-26 10:38 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.
- * 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.
+2010-04-02 castaglia <castaglia>
-2009-11-24 09:29 castaglia
+ * modules/mod_lang.c: Log the reason why the LANG command is denied
+ after a client has authenticated.
- * 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.
+2010-04-01 castaglia <castaglia>
-2009-11-23 14:35 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3419 - SSL_shutdown() errors with
+ openssl-0.9.8m.
- * src/dirtree.c:
- Added note for myself for the future, about why <Directory>
- patterns aren't matching as I had assumed they would.
+2010-03-31 castaglia <castaglia>
-2009-11-22 14:18 castaglia
+ * doc/contrib/mod_sftp.html: Update the mod_sftp doc, removing
+ DirFakeUser/DirFakeGroup from the list of unsupported features.
- * 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.
+2010-03-31 castaglia <castaglia>
- This also fixes a warning about unreachable code, and adds a
- preemptive guard against trying to call memcpy(2) with a zero
- length.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3413 - Support DirFakeUser,
+ DirFakeGroup for SFTP connections.
-2009-11-22 13:46 castaglia
+2010-03-31 castaglia <castaglia>
- * contrib/mod_sftp/: kex.c, mod_sftp.c, packet.c:
- Close the SFTPLog descriptor at session exit. Initialize some
- buffers (keeps Valgrind from whining about them).
+ * 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.
-2009-11-22 13:44 castaglia
+2010-03-31 castaglia <castaglia>
- * modules/mod_auth.c:
- Close the scoreboard descriptor at session exit.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add regression test
+ for Bug#3420.
-2009-11-22 13:30 castaglia
+2010-03-30 castaglia <castaglia>
- * contrib/mod_sftp/kex.c:
- Forgot the return statement.
+ * 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.
-2009-11-22 11:46 castaglia
+2010-03-30 castaglia <castaglia>
- * contrib/mod_sftp/: kex.c, kex.h, 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.
+ * 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.
-2009-11-22 11:34 castaglia
+2010-03-30 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.
+ * 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.
-2009-11-20 20:55 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.
+2010-03-25 castaglia <castaglia>
- 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.
+ * 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.
- Include MLSD in the list of commands which can trigger data
- transfers, and thus fall under the "TLSRequired data" checks.
+2010-03-22 castaglia <castaglia>
-2009-11-20 06:40 jwm
+ * src/scoreboard.c: Make sure we don't leak an fd when scrubbing the
+ scoreboard and we fail to lock the entire scoreboard.
- * contrib/mod_ldap.c: release 2.8.21, with backports from bzr
- trunk:
+2010-03-19 castaglia <castaglia>
- 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:
+ * 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.
- 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.
+2010-03-19 castaglia <castaglia>
- 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
+ * doc/howto/DisplayFiles.html: Add a FAQ about Display files whose
+ names contain spaces.
- bzr r77, r78: Bug 3301 - LDAP server failover does not work
- when ldap_initialize() is available
+2010-03-19 castaglia <castaglia>
- fix LDAP server failover by implementing our own failover
- mechanism instead
- of relying on the LDAP SDK's.
+ * 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.
- 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:
+2010-03-18 castaglia <castaglia>
- 'LDAPServer "127.0.0.1 172.16.0.5"
+ * NEWS, contrib/mod_dynmasq.c: Bug#3411 - Support ftpdctl action to
+ manually request a mod_dynmasq refresh.
- was passed to ldap_initailize() as:
+2010-03-17 castaglia <castaglia>
- ldap://127.0.0.1 172.16.0.5/
+ * NEWS, modules/mod_facts.c,
+ tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Bug#3318 - MLSD should
+ indicate symlinks if ShowSymlinks is enabled.
- 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.
+2010-03-15 castaglia <castaglia>
- 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).
+ * doc/contrib/mod_sftp.html: Another mod_sftp FAQ.
- 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.
+2010-03-14 castaglia <castaglia>
- 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.
+ * src/wtmp.c: Forgot to update the copyright date on this file.
-2009-11-19 21:10 castaglia
+2010-03-14 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.
+ * NEWS, src/wtmp.c: Bug#3409 - Build failure on newer FreeBSD due to
+ utmp/utmpx system changes.
- 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.
+2010-03-14 castaglia <castaglia>
-2009-11-19 20:53 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.
- * modules/mod_ls.c:
- Fix up some of the code style in mod_ls.
+2010-03-14 castaglia <castaglia>
- Add handling of signals in the while() loops which iterate over
- globbed paths.
+ * 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.
- Removed the '{' character from the glob character checks; it is
- not a glob(3) character.
+2010-03-14 castaglia <castaglia>
-2009-11-19 15:09 castaglia
+ * include/memcache.h: Fix some pesky compiler warnings about
+ shadowed 'pool' declarations.
- * doc/contrib/mod_sftp.html:
- Try to make the requirement of using ssh-keygen to convert public
- keys to RFC4716 format clearer.
+2010-03-13 castaglia <castaglia>
-2009-11-19 10:55 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.
- * NEWS, src/bindings.c:
- Bug#3306 - ECONNREFUSED while handling SIGHUP.
+2010-03-12 castaglia <castaglia>
-2009-11-18 21:29 castaglia
+ * NEWS, modules/mod_core.c: Bug#3412 - Include files not included
+ after restart due to permissions.
- * lib/libltdl/.cvsignore:
- More auto-generated files to ignore.
+2010-03-12 castaglia <castaglia>
-2009-11-18 19:04 castaglia
+ * configure: Updated configure.
- * configure:
- Updated configure.
+2010-03-12 castaglia <castaglia>
-2009-11-18 18:58 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.
- * configure.in:
- Handle empty CONFIG_SHELL values.
+2010-03-11 castaglia <castaglia>
-2009-11-18 18:47 castaglia
+ * contrib/mod_deflate.c: Missing break statements.
- * configure:
- Updated configure.
+2010-03-10 castaglia <castaglia>
-2009-11-18 18:45 castaglia
+ * contrib/mod_copy.c: Updated mod_copy to reflect the
+ xferlog_write() changes.
- * configure.in:
- Although it looks like LTDL_INIT(convenience) and
- LTDL_CONVENIENCE are the same, they are not. So we need to use
- both.
+2010-03-10 castaglia <castaglia>
-2009-11-18 18:18 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.
- * Makefile.in:
- Comment out the target that might cause the machine to re-run
- autoconf.
+2010-03-10 castaglia <castaglia>
-2009-11-18 17:47 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_copy.c,
+ doc/contrib/mod_copy.html: Added mod_copy to the contrib modules
+ area.
- * configure:
- Updated configure.
+2010-03-10 castaglia <castaglia>
-2009-11-18 17:40 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.
- * configure.in:
- More libtool-2.2.4 tweaking fun.
+2010-03-10 castaglia <castaglia>
-2009-11-18 17:33 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.
- * configure:
- Updated configure.
+2010-03-10 castaglia <castaglia>
-2009-11-18 17:30 castaglia
+ * NEWS, contrib/mod_radius.c: Bug#3371 - Group limits in <LIMIT
+ LOGIN> blocks won't work with RADIUS-supplied groups.
- * lib/libltdl/m4/ltdl.m4:
- In order to avoid the very, very annoying error of:
+2010-03-10 castaglia <castaglia>
- configure: error: conditional "INSTALL_LTDL" was never defined.
- Usually this means that the macro was only invoked
- conditionally.
+ * NEWS, contrib/mod_radius.c: Bug#3373 - RadiusGroupInfo should not
+ require that both names and IDs be VSAs.
- 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.
+2010-03-10 castaglia <castaglia>
-2009-11-18 13:51 castaglia
+ * doc/contrib/mod_ban.html: Update mod_ban docs to include mention
+ of new -s command-line option for ban/permit ftpdctl actions.
- * configure:
- Updated configure.
+2010-03-10 castaglia <castaglia>
-2009-11-18 13:48 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.
- * Make.rules.in, configure.in:
- More libtool-2.2.4 tweaks, with help from Bob Friesenhahn.
+2010-03-10 castaglia <castaglia>
-2009-11-18 13:46 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.
- * aclocal.m4:
- Re-create our aclocal.m4 using the aclocal tool.
+2010-03-10 castaglia <castaglia>
-2009-11-18 09:48 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_deflate.c,
+ doc/contrib/mod_deflate.html: Adding mod_deflate to the contrib
+ module area.
- * configure:
- Updated configure.
+2010-03-10 castaglia <castaglia>
-2009-11-18 09:45 castaglia
+ * contrib/mod_sql.c: There's no reason for the caches used by
+ mod_sql to be visible outside of that file.
- * 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.
+2010-03-10 castaglia <castaglia>
-2009-11-18 09:39 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3374 - TLSVerifyClient and TLSOptions
+ NoCertRequest are incompatible.
- * Makefile.in, configure.in:
- More wrestling with libtool-2.2.4. I am *really* not liking this
- 2.2.x release series.
+2010-03-10 castaglia <castaglia>
-2009-11-17 23:01 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.
- * contrib/mod_sftp/fxp.c:
- Quelling compiler warnings.
+2010-03-10 castaglia <castaglia>
-2009-11-17 22:38 castaglia
+ * src/inet.c: Removed development/debug logging.
- * NEWS, modules/mod_core.c:
- Bug#3342 - FEAT response contains LF without preceding CR.
+2010-03-09 castaglia <castaglia>
-2009-11-17 20:08 castaglia
+ * configure: Updated configure.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Config/Limit/RMD.pm,
- t/config/limit/rmd.t:
- Add regression test demonstrating how to make an undeletable
- directory using the <Limit> + Filter approach.
+2010-03-09 castaglia <castaglia>
-2009-11-17 16:52 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.
- * doc/contrib/mod_sftp.html:
- Update mod_sftp doc so that it's hopefully less confusing.
+2010-03-09 castaglia <castaglia>
-2009-11-17 14:55 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>
- * 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.
+ * configure: Updated configure.
-2009-11-17 11:28 castaglia
+2010-03-08 castaglia <castaglia>
- * NEWS:
- Bug#3331 - Update bundled libtool to 2.2.4.
+ * NEWS, config.h.in, configure.in, include/conf.h: Bug#3408 - Use
+ <termios.h> instead of <sys/termios.h> where possible.
-2009-11-17 11:27 castaglia
+2010-03-08 castaglia <castaglia>
- * configure:
- Updated configure.
+ * configure: Updated configure.
-2009-11-17 11:20 castaglia
+2010-03-08 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.
+ * NEWS, configure.in: Bug#2768 - Provide
+ --with-mysql-config/--with-postgres-config build options.
-2009-11-17 11:19 castaglia
+2010-03-08 castaglia <castaglia>
- * lib/libltdl/.cvsignore:
- One more libtool file to ignore.
+ * 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.
-2009-11-17 11:18 castaglia
+2010-03-08 castaglia <castaglia>
- * lib/libltdl/.cvsignore:
- More files to ignore with this new version of libtool.
+ * NEWS, include/netaddr.h, src/inet.c, src/netaddr.c: Bug#2196 -
+ Handle IPv4-mapped IPv6 addresses as IPv4 addresses.
-2009-11-17 10:46 castaglia
+2010-03-06 castaglia <castaglia>
- * lib/libltdl/ltdl.c:
- Backport the patch for the bugs found in libtool-2.2.6 to this
- 2.2.4 version.
+ * 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.
-2009-11-17 10:44 castaglia
+2010-03-06 castaglia <castaglia>
- * lib/libltdl/: Makefile.in, acinclude.m4, argz.c, config.guess,
- config.sub, install-sh, ltmain.sh, missing:
- Bug#3331 - Update bundled libtool to 2.2.4.
+ * src/stash.c: Remove some development/testing cruft.
-2009-11-17 10:33 castaglia
+2010-03-06 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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.
-2009-11-17 10:25 castaglia
+2010-03-06 castaglia <castaglia>
- * 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/configure,
- lib/libltdl/configure.ac, 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/slist.c,
- 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/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/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,
- aclocal.m4, ltmain.sh, configure.in, modules/mod_dso.c:
- Bug#3331 - Update bundled libtool to 2.2.4.
+ * 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.
-2009-11-17 10:12 castaglia
+2010-03-06 castaglia <castaglia>
- * config.guess, config.sub:
- Updating the config.guess and config.sub helper scripts.
+ * src/modules.c: Removed unused/dead callback typedef.
-2009-11-17 10:01 castaglia
+2010-03-05 castaglia <castaglia>
- * install-sh:
- Updated the install-sh script.
+ * NEWS, contrib/mod_ban.c: Bug#3393 - Specify the <VirtualHost> when
+ using 'ban' or 'permit' ftpdctl actions.
-2009-11-17 09:36 castaglia
+2010-03-05 castaglia <castaglia>
- * doc/howto/Timestamps.html:
- Mention MFMT in the Timestamps howto.
+ * 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.
-2009-11-16 20:38 castaglia
+2010-03-04 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Add the SFTP Extensions Draft to the list.
+ * NEWS, contrib/mod_ban.c: Bug#3392 - Display <VirtualHost>
+ information in 'ban info' ftpdctl action response.
-2009-11-15 22:12 castaglia
+2010-03-04 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Locking down more environment variables from SSH2 client
- tweaking.
+ * contrib/mod_sftp/channel.c: Add a little more trace logging to the
+ handling of SSH2 channel data.
-2009-11-15 21:48 castaglia
+2010-03-04 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Add more barred environment variables to the list.
+ * contrib/mod_sftp/msg.c: Initialize these variables pedantically.
-2009-11-15 21:41 castaglia
+2010-03-04 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Don't allow SSH2 clients to change the TZ environment variable,
- either.
+ * contrib/mod_sftp/msg.c: Log data lengths as unsigned longs for
+ size_t, not unsigned ints.
-2009-11-15 21:40 castaglia
+2010-03-04 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Add a few more environment variables that SSH2 clients are barred
- from sending/overriding in their session.
+ * doc/contrib/mod_qos.html: Adding documentation for mod_qos
+ (Bug#3353).
-2009-11-15 21:16 castaglia
+2010-03-04 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Adding some notes for my future self.
+ * README.modules, RELEASE_NOTES: Update docs with mention of
+ mod_qos.
-2009-11-15 21:14 castaglia
+2010-03-04 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.
+ * 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.
-2009-11-15 19:56 castaglia
+2010-03-04 castaglia <castaglia>
- * src/dirtree.c:
- Simpler fix for Bug#3337.
+ * tests/api/scoreboard.c, tests/api/str.c: Update failing scoreboard
+ API test. Add new sreplace API test.
-2009-11-15 12:18 castaglia
+2010-03-04 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.
+ * 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.
-2009-11-15 12:13 castaglia
+2010-03-04 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Include the sticky bit when sending/receiving files/directories.
+ * 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.
-2009-11-14 16:27 castaglia
+2010-03-04 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3337 - <Directory> sections with a trailing directory name of
- one character have <Limit> problems. This is a regression caused
- by Bug#3146.
+ * src/dirtree.c: Avoid compiler warning about uninitialized
+ variable.
-2009-11-14 16:23 castaglia
+2010-03-04 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.
+ * modules/mod_core.c: Avoid compiler warning about unitialized
+ variable.
-2009-11-14 15:29 castaglia
+2010-03-04 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.
+ * src/throttle.c: Remove an unused variable.
-2009-11-14 14:57 castaglia
+2010-03-03 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.
+ * 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.
-2009-11-14 12:40 castaglia
+2010-03-03 castaglia <castaglia>
- * configure:
- Updated configure script.
+ * include/options.h: 4K for an environ variable value might be a bit
+ excessive; let's use 2K.
-2009-11-14 12:37 castaglia
+2010-03-03 castaglia <castaglia>
- * configure.in:
- Add use of the -Wunreachable-code compiler flag, where supported,
- when --enable-devel is used.
+ * include/options.h, src/env.c, src/proctitle.c: Set a limit on the
+ maximum length of environment variable values.
- Make the use of the AC_DEFINE macro more consistent by providing
- the optional message in more places.
+2010-03-03 castaglia <castaglia>
-2009-11-14 12:13 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.
- * m4/proftpd.m4:
- Try to make the use of the AC_DEFINE macro more consistent with
- other occurrences by supplying a message.
+2010-03-03 castaglia <castaglia>
-2009-11-14 11:15 castaglia
+ * NEWS, src/log.c: Bug#3404 - SyslogLevel not applied to SystemLog.
- * 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.
+2010-03-03 castaglia <castaglia>
-2009-11-14 10:23 castaglia
+ * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#3405 - Multiple
+ SFTPAuthorizedUserKeys stores causes segfault on 64-bit platforms.
- * modules/mod_core.c:
- Add trace logging of the pr_netacl_t objects created via other
- config directives.
+2010-03-03 castaglia <castaglia>
-2009-11-13 17:16 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.
- * 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.
+2010-03-02 castaglia <castaglia>
-2009-11-13 10:59 castaglia
+ * doc/contrib/mod_sftp_sql.html: Update the mod_sftp_sql doc to
+ mention where to find the latest version.
- * doc/contrib/mod_sql.html:
- Fix typo in mod_sql docs.
+2010-03-02 castaglia <castaglia>
- Add description of the interaction between the
- useNormalizedGroupSchema SQLOption and custom SQLGroupInfo
- queries.
+ * NEWS, contrib/mod_ban.c: Bug#3339 - Support ban rule for clients
+ which login too frequently.
-2009-11-13 10:29 castaglia
+2010-03-02 castaglia <castaglia>
- * contrib/mod_sql_mysql.c:
- Typo.
+ * NEWS, locale/Makefile.in, locale/ja_JP.po: Bug#3400 - Add Japanese
+ translation.
-2009-11-13 10:26 castaglia
+2010-03-02 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c:
- Bug#3333 - mod_sql_mysql should support calling stored procedures
- better.
+ * NEWS, modules/mod_facts.c: Bug#3403 - File upload followed by MLSD
+ leads to wrong file size entries in TransferLog.
-2009-11-13 09:19 castaglia
+2010-03-02 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.
+ * NEWS, contrib/mod_tls.c: Bug#3402 - mod_tls does not compile with
+ pre-0.9.7 OpenSSL due to Bug#3349.
-2009-11-13 07:56 castaglia
+2010-03-02 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.
+ * NEWS, contrib/mod_sftp/crypto.c: Bug#3401 - mod_sftp does not
+ compile with pre-0.9.7 OpenSSL.
-2009-11-12 23:34 castaglia
+2010-02-28 jwm <jwm>
- * contrib/mod_sftp/fxp.c:
- Make sure that we only send defined flag values in the
- statvfs at openssh.com extension response.
+ * 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
-2009-11-12 18:29 castaglia
+2010-02-25 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.
+ * 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.
-2009-11-12 09:24 castaglia
+2010-02-25 castaglia <castaglia>
- * doc/contrib/mod_ban.html:
- Adding a mod_ban FAQ, cleaning up a minor nit.
+ * tests/t/lib/ProFTPD/Tests/Config/Limit/MFMT.pm: Remove development
+ cruft.
-2009-11-11 09:51 castaglia
+2010-02-25 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.
+ * doc/howto/Versioning.html: Fix typo, update example.
-2009-11-10 09:32 castaglia
+2010-02-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm:
- Add more tests for the fix for Bug#3077.
+ * NEWS, modules/mod_facts.c,
+ tests/t/lib/ProFTPD/Tests/Commands/MLST.pm: Bug#3302 - MLST response
+ should include full path name.
-2009-11-10 09:23 castaglia
+2010-02-24 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.
+ * 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.
-2009-11-09 22:11 castaglia
+2010-02-24 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.
+ * NEWS, contrib/mod_tls.c: Bug#3365 - First certificate in
+ TLSCertificateChainFile is skipped.
-2009-11-09 21:02 castaglia
+2010-02-24 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).
+ * 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.
-2009-11-09 17:08 castaglia
+2010-02-24 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.
+ * doc/contrib/index.html: Updated index of contrib module docs.
-2009-11-09 17:03 castaglia
+2010-02-24 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Bug#3328 - Failed database transaction can cause mod_quotatab to
- loop endlessly.
+ * include/version.h: Updated for CVS.
-2009-11-09 16:40 castaglia
+2010-02-24 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Add mod_quotatab test for RETR byte limits.
+ * ChangeLog: Updated ChangeLog.
-2009-11-09 14:09 castaglia
+2010-02-24 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.
+ * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
+ include/version.h: Preparing for release of 1.3.3-stable.
-2009-11-09 10:34 castaglia
+2010-02-24 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Quell Perl
+ interpreter warnings about redeclared variables.
-2009-11-09 09:26 castaglia
+2010-02-24 castaglia <castaglia>
- * contrib/mod_tls.c:
- Backport the change to mod_tls that removes the daemon-exit
- listener from the session process.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Quell some Perl
+ interpreter warnings about redeclared variables.
-2009-11-08 22:46 castaglia
+2010-02-24 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.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Quell Perl
+ interpreter warning about "useless use of private variable in void
+ context".
-2009-11-08 22:41 castaglia
+2010-02-23 castaglia <castaglia>
- * contrib/: mod_quotatab.c, 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.
+ * 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.
-2009-11-08 20:40 castaglia
+2010-02-23 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.
+ * modules/mod_ls.c: Make sure that the pluralization of "paths"
+ matches the count displayed in the log message.
-2009-11-08 19:51 castaglia
+2010-02-22 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.
+ * NEWS, contrib/mod_ban.c: Bug#3389 - Cannot create mod_ban
+ whitelists using <Class> and <IfClass> sections.
-2009-11-08 19:47 castaglia
+2010-02-22 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.
+ * 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.
-2009-11-08 18:18 castaglia
+2010-02-21 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.
+ * contrib/mod_sftp/rfc4716.c: Support use of FIFOs as
+ SFTPAuthorized{Host,User}Keys files.
-2009-11-08 17:27 castaglia
+2010-02-21 castaglia <castaglia>
- * RELEASE_NOTES, doc/contrib/mod_sftp.html:
- Mention the new SFTP extensions, and the SFTPExtensions
- directive, in the release notes.
+ * src/inet.c: Log if getsockname(2) returns an error.
- Update the mod_sftp doc to cover the SFTPExtensions directive.
+2010-02-21 castaglia <castaglia>
-2009-11-08 16:50 castaglia
+ * src/dirtree.c: Handle an edge case/regression from Bug#3337.
- * 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).
+2010-02-19 castaglia <castaglia>
-2009-11-08 16:48 castaglia
+ * contrib/mod_tls.c: Slightly better logging of SSL session reuse
+ for data connections.
- * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm:
- Add unit test for DELEs on symlinks.
+2010-02-19 castaglia <castaglia>
-2009-11-08 13:23 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.
- * contrib/mod_sftp/: fxp.c, fxp.h, 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.
+2010-02-19 castaglia <castaglia>
- Thus this patch introduces a new SFTPExtensions directive.
+ * contrib/mod_sftp/fxp.c: Fix some of the compiler warnings
+ mentioned in Bug#3394.
-2009-11-08 12:43 castaglia
+2010-02-17 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Update the list of SFTP extensions supported by mod_sftp.
+ * 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.
-2009-11-08 12:37 castaglia
+2010-02-17 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3320 - Support the "copy-file" SFTP extension.
+ * doc/howto/Limit.html: Add blocking of STAT to "blind directory"
+ example, per Bug#3391.
-2009-11-08 12:25 castaglia
+2010-02-15 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.
+ * doc/howto/SQL.html: Add SQL FAQ about encrypting the connections
+ between mod_sql and the backend database server.
-2009-11-08 11:58 castaglia
+2010-02-15 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
+ * 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.
- Also some stylistic changes.
+2010-02-15 castaglia <castaglia>
-2009-11-08 11:20 castaglia
+ * configure: Updated configure.
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3321 - Support the "check-file-name" and "check-file-handle"
- SFTP extensions.
+2010-02-15 castaglia <castaglia>
-2009-11-07 19:41 castaglia
+ * configure.in: The various library directories need to be included
+ in the `proftpd -V' output as well.
- * contrib/mod_sftp/configure:
- Updated mod_sftp's configure script.
+2010-02-15 castaglia <castaglia>
-2009-11-07 19:28 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.
- * contrib/mod_sftp/: configure.in, mod_sftp.h.in:
- Add checks for support for SHA256 and SHA512 in OpenSSL to
- mod_sftp's configure script.
+2010-02-14 castaglia <castaglia>
-2009-11-07 14:41 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.
- * 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.
+2010-02-14 castaglia <castaglia>
-2009-11-07 14:40 castaglia
+ * src/modules.c: Comment corrections.
- * contrib/mod_sftp/fxp.c:
- Minor refinement to the version-select SFTP extension
- implementation.
+2010-02-13 castaglia <castaglia>
-2009-11-07 14:34 castaglia
+ * include/version.h: Updated version for CVS.
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3322 - Support the "version-select" SFTP extension.
+2010-02-13 castaglia <castaglia>
-2009-11-07 12:11 castaglia
+ * ChangeLog: Updated ChangeLog.
- * NEWS, contrib/mod_tls_shmcache.c:
- Bug#3326 - Shared memory segment used for session cache should be
- protected via mlock(2).
+2010-02-13 castaglia <castaglia>
-2009-11-07 11:46 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Updates
+ for the 1.3.3rc4 release.
- * NEWS, contrib/mod_tls_shmcache.c:
- Bug#3327 - Clear external SSL session caches on server
- restart/shutdown.
+2010-02-13 castaglia <castaglia>
-2009-11-07 10:46 castaglia
+ * RELEASE_NOTES: Preparing release notes for another RC.
- * 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.
+2010-02-11 castaglia <castaglia>
-2009-11-06 19:45 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).
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3324 - Vulnerability in SSL/TLS protocol during renegotiation
- (CVE-2009-3555).
+2010-02-11 castaglia <castaglia>
-2009-11-06 19:44 castaglia
+ * src/dirtree.c: Minor code style cleanup, no functional change.
- * RELEASE_NOTES:
- Typo.
+2010-02-11 castaglia <castaglia>
-2009-11-06 19:41 castaglia
+ * src/netacl.c: More trace logging of comparison of netacls.
- * doc/contrib/mod_tls.html:
- Mention that server-initiated SSL session renegotiations are
- still honored when possible.
+2010-02-11 castaglia <castaglia>
-2009-11-06 19:39 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression
+ tests for uploading and downloading zero-length files via SFTP and
+ SCP.
- * 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.
+2010-02-10 castaglia <castaglia>
-2009-11-06 19:36 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.
- * NEWS, configure.in:
- Bug#3311 - configure script should automatically detect when -ldl
- is needed by OpenSSL.
+2010-02-10 castaglia <castaglia>
-2009-11-06 18:42 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.
- * 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.
+2010-02-10 castaglia <castaglia>
-2009-11-06 18:01 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.
- * contrib/mod_tls.c:
- Handle signals in the diagnostic callback.
+2010-02-10 castaglia <castaglia>
-2009-11-06 17:52 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.
- * contrib/mod_tls.c:
- More work towards Bug#3324 - allow server-initiated session
- renegotiations whilst rejecting client-initiated session
- renegotiations.
+2010-02-10 castaglia <castaglia>
-2009-11-06 17:11 castaglia
+ * doc/howto/Compiling.html: Slightly better/fuller example.
- * doc/contrib/mod_tls.html:
- Document the new AllowClientRenegotiations TLSOption.
+2010-02-10 castaglia <castaglia>
-2009-11-06 17:06 castaglia
+ * configure: Updated configure.
- * RELEASE_NOTES:
- Update the release notes.
+2010-02-10 castaglia <castaglia>
-2009-11-06 16:55 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).
- * NEWS, contrib/mod_tls.c:
- Bug#3324 - Vulnerability in SSL/TLS protocol during renegotiation
- (CVE-2009-3555).
+2010-02-10 castaglia <castaglia>
-2009-11-06 16:53 castaglia
+ * modules/mod_delay.c: Quell compiler warning about unreachable
+ code. Prepare mod_delay for acting properly when compiled as a DSO
+ module.
- * doc/howto/TLS.html:
- Add a TLS FAQ, inspired by Bug#3247 (and its ensuing duplicates).
+2010-02-10 castaglia <castaglia>
-2009-11-06 10:57 castaglia
+ * modules/mod_facl.c: Remove duplicate registration of module unload
+ listener in mod_facl.
- * 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).
+2010-02-10 castaglia <castaglia>
-2009-11-06 10:52 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.
- * contrib/mod_tls.c:
- Allow "TLSRenegotiate off" as a synonym for "TLSRenegotiate
- none".
+2010-02-10 castaglia <castaglia>
-2009-11-06 10:46 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.
- * 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.
+2010-02-10 castaglia <castaglia>
-2009-11-06 10:12 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.
- * contrib/mod_tls.c:
- Ignore EAGAIN errors when the EnableDiags TLSOption is used; they
- just clutter up the TLSLog.
+2010-02-10 castaglia <castaglia>
-2009-11-06 07:47 castaglia
+ * contrib/mod_tls.c: Quell some compiler warnings about unreachable
+ code.
- * 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.
+2010-02-10 castaglia <castaglia>
-2009-11-05 17:56 castaglia
+ * contrib/mod_sql.c: Unregister the registered authtype handlers
+ upon module unload.
- * 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.
+2010-02-10 castaglia <castaglia>
-2009-11-05 16:09 castaglia
+ * contrib/mod_quotatab.c: Set the prev pointer properly when
+ registering a quotatab backend.
- * contrib/mod_tls.c:
- Minor reordering of the logged SSL/TLS end-of-connection stats;
- this way the cache-related stats appear together.
+2010-02-10 castaglia <castaglia>
-2009-11-05 10:24 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.
- * modules/mod_ls.c:
- Make sure that we can handle symlinks whose target paths are long
- (e.g. longer than 1K).
+2010-02-10 castaglia <castaglia>
-2009-11-05 09:46 castaglia
+ * src/bindings.c: When getting a listening connection, handle cases
+ where an IP address string can't be returned for some reason.
- * contrib/mod_sql_passwd.c, contrib/mod_sftp/fxp.c,
- contrib/mod_sftp/keys.c, contrib/mod_sftp/scp.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.
+2010-02-10 castaglia <castaglia>
-2009-11-05 09:40 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.
- * contrib/: mod_sftp_pam.c, mod_sftp/auth.h, mod_sftp/keystore.c,
- mod_sftp/mod_sftp.h.in:
- Clean up a few warts and warnings.
+2010-02-09 castaglia <castaglia>
-2009-11-04 21:37 castaglia
+ * src/timers.c: Paranoid checking for NULL parameters for a trace
+ message in the Timers API.
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Adding unit test for LIST output of a symlink when ShowSymlinks
- is enabled.
+2010-02-09 castaglia <castaglia>
-2009-11-04 18:19 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).
- * 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.
+2010-02-08 castaglia <castaglia>
-2009-11-04 18:17 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.
- * tests/: tests.pl, t/config/classes.t,
- t/lib/ProFTPD/Tests/Config/Classes.pm:
- Adding unit tests for various <Class> configurations and rules.
+2010-02-08 castaglia <castaglia>
-2009-11-04 15:24 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.
- * 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.
+2010-02-08 castaglia <castaglia>
-2009-11-04 15:02 castaglia
+ * src/fsio.c: More defensive programming: check for cases where
+ lookup_fs_file() returns NULL, and Do The Right Thing(tm).
- * RELEASE_NOTES, doc/modules/mod_cap.html, modules/mod_cap.c:
- Support adding the CAP_FOWNER capability.
+2010-02-08 castaglia <castaglia>
-2009-11-04 13:09 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.
- * RELEASE_NOTES:
- Mention support for the OpenSSH extensions in the release notes.
+2010-02-08 castaglia <castaglia>
-2009-11-04 13:07 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.
- * contrib/mod_sftp/fxp.c, doc/contrib/mod_sftp.html:
- Added support for the posix-rename at openssh.com OpenSSH SFTP
- extension.
+2010-02-08 castaglia <castaglia>
-2009-11-04 12:51 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.
- * contrib/mod_sftp/fxp.c:
- When handling RENAME SFTP requests, make sure to update the
- scoreboard with the name of "RENAME", not "REALPATH". Sheesh.
+2010-02-08 castaglia <castaglia>
-2009-11-04 12:27 castaglia
+ * src/trace.c: Prevent long trace log lines from trampling each
+ other by truncating and adding a terminating newline properly.
- * 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.
+2010-02-08 castaglia <castaglia>
-2009-11-04 12:19 castaglia
+ * contrib/mod_sftp/packet.c: Make sure we don't try to read in more
+ data than can fit in our packet buffer.
- * NEWS, contrib/mod_wrap.c, include/log.h, src/log.c:
- Bug#3317 - mod_wrap/libwrap should honor SyslogFacility setting.
+2010-02-07 castaglia <castaglia>
-2009-11-04 11:07 castaglia
+ * configure: Updated configure.
- * 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.
+2010-02-07 castaglia <castaglia>
- Mention the support for OpenSSH's "statvfs at openssh.com" and
- "fstatvfs at openssh.com" SFTP extensions.
+ * configure.in: Make sure that compiler optimizations are disabled
+ when --enable-devel is used.
-2009-11-04 10:49 castaglia
+2010-02-07 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Document the use of the SSH_CONNECTION environment variable.
+ * 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.
-2009-11-04 10:48 castaglia
+2010-02-06 castaglia <castaglia>
- * contrib/mod_sftp/mod_sftp.c:
- Set the SSH_CONNECTION environment variable, using the same
- format as OpenSSH.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Make sure that
+ config_write() can handle Anonymous sections which contain nested
+ Directory or Limit sections.
-2009-11-04 10:01 castaglia
+2010-02-05 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.
+ * src/event.c: Include the memory address of the event callback
+ being invoked in the trace message about event handling.
-2009-11-04 09:50 castaglia
+2010-02-04 castaglia <castaglia>
- * NEWS, contrib/mod_sftp_pam.c, contrib/mod_sftp/auth.c,
- contrib/mod_sftp/auth.h:
- Bug#3316 - Messages from PAM modules are ignored when
- authenticating SSH clients via 'keyboard-interactive'.
+ * doc/contrib/mod_sftp_sql.html: Update the schema examples for
+ storing SSH keys; include indices in the example schema.
-2009-11-03 11:12 castaglia
+2010-02-04 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Mention the %u variable in the SFTPAuthorizedUserKeys directive
- description.
+ * src/pool.c: Make the name of the oom pool walking function be
+ 'oom_printf', just to be very clear.
-2009-11-03 11:03 castaglia
+2010-02-04 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.
+ * 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.
-2009-11-03 10:15 castaglia
+2010-02-04 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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.
-2009-11-03 10:09 castaglia
+2010-02-04 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.
+ * 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.
-2009-11-03 00:09 castaglia
+2010-02-04 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c, fxp.h:
- Added support for the statvfs at openss.com and fstatvfs at openssh.com
- OpenSSH SFTP extensions.
+ * 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.
-2009-11-02 22:39 castaglia
+2010-02-04 castaglia <castaglia>
- * NEWS:
- Pedantic correction: lseek(2), not lseek(3).
+ * 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".
-2009-11-02 22:37 castaglia
+2010-02-04 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/scp.c, modules/mod_xfer.c:
- Bug#3314 - Downloading from FIFOs via SFTP/SCP fails.
+ * NEWS, contrib/mod_sftp/scp.c: Bug#3386 - Downloading via SCP can
+ stall due to rekeying.
-2009-11-02 22:35 castaglia
+2010-02-04 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/fxp.c:
- Bug#3313 - Uploading via SFTP to FIFOs fails due to illegal
- lseek(3), truncate(2) calls.
+ * contrib/mod_sftp/scp.c: Typo.
-2009-11-02 22:32 castaglia
+2010-02-04 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.
+ * 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.
-2009-11-02 22:28 castaglia
+2010-02-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- On some platforms, ENXIO has a string representation of "Device
- not configured".
+ * NEWS, contrib/mod_sftp/channel.c: Bug#3385 - Memory leak during
+ SCP download.
-2009-11-02 20:10 castaglia
+2010-02-04 castaglia <castaglia>
- * contrib/mod_sftp/packet.c:
- Adding reminder notes/comments for my future self.
+ * 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.
-2009-11-02 19:53 castaglia
+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 at 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 at 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 at 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>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Remove duplicate unit test entry from the list.
+ * 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.
-2009-11-02 19:48 castaglia
+2010-02-01 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.
+ * NEWS, contrib/mod_radius.c: Bug#3381 - RADIUS authentication
+ broken on 64-bit platforms.
-2009-11-02 19:22 castaglia
+2010-01-31 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.
+ * 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.
-2009-11-02 19:01 castaglia
+2010-01-31 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).
+ * 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.
-2009-11-02 18:31 castaglia
+2010-01-31 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.
+ * 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.
-2009-11-02 17:28 castaglia
+2010-01-29 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.
+ * NEWS, modules/mod_log.c,
+ tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Bug#3383 -
+ ExtendedLog variables for protocol and version not handled properly.
-2009-11-02 16:26 castaglia
+2010-01-29 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.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add a function for getting
+ the version of the current proftpd (using `proftpd -V').
-2009-11-02 16:26 castaglia
+2010-01-26 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.)
+ * src/support.c: Add a counter for signal blocking/unblocking, to
+ handle nested calls. Also added trace logging for signal
+ blocking/unblocking.
-2009-11-02 16:25 castaglia
+2010-01-26 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).
+ * src/timers.c: Use proper pluralization in the timer trace
+ messages.
-2009-10-30 16:36 castaglia
+2010-01-26 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap.pm:
- Adding unit tests for more of mod_wrap's directives.
+ * 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.
-2009-10-30 15:37 castaglia
+2010-01-26 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_wrap.pm,
- t/modules/mod_wrap.t:
- Start of unit tests for the mod_wrap module.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add unit test
+ for a "SQLLog EXIT" configuration.
-2009-10-30 10:30 castaglia
+2010-01-23 castaglia <castaglia>
- * locale/fr_FR.po:
- Bug#3309 - Fix whitespace in MLST response when using the fr_FR
- locale.
+ * configure: Update configure.
-2009-10-29 09:53 castaglia
+2010-01-23 castaglia <castaglia>
- * RELEASE_NOTES, locale/Makefile.in, locale/zh_TW.po:
- Wei-Lun Chao contributed a Taiwan translation for proftpd.
+ * 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).
-2009-10-29 09:52 castaglia
+2010-01-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention new Taiwan translation in release notes.
+ * 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.
-2009-10-29 09:52 castaglia
+2010-01-23 castaglia <castaglia>
- * locale/: Makefile.in, zh_TW.po:
- Wei-Lun Chao contributed a Taiwanese translation for proftpd.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm: Adding more
+ regression tests for mod_wrap2/mod_wrap2_file.
-2009-10-29 08:24 castaglia
+2010-01-23 castaglia <castaglia>
- * contrib/mod_sftp/cipher.c:
- Quell compiler warnings about mismatched data types.
+ * 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.
-2009-10-28 14:48 castaglia
+2010-01-23 castaglia <castaglia>
- * src/auth.c:
- Fixing another part of Bug#3307.
+ * src/netaddr.c: When resolving names to addresses via
+ getaddrinfo(3), give getaddrinfo() the hint that we're only
+ interested in TCP, not UDP.
-2009-10-28 14:46 castaglia
+2010-01-22 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logins.pm:
- Adding more regression tests (and improving existing tests) for
- Bug#3307.
+ * src/netaddr.c: Make sure that the errno value is preserved in
+ failure cases in pr_netaddr_get_addr().
-2009-10-27 09:45 castaglia
+2010-01-21 castaglia <castaglia>
- * NEWS, src/auth.c, tests/t/lib/ProFTPD/Tests/Logins.pm:
- Bug#3307 - All FTP logins treated as anonymous logins.
+ * doc/howto/Upgrade.html: Update the Upgrade howto to use -d10
+ rather than -d9; more information is better when testing a version
+ for upgrading.
-2009-10-26 16:01 castaglia
+2010-01-20 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.
+ * contrib/mod_ban.c: Removed some unnecessary logging.
-2009-10-26 15:12 castaglia
+2010-01-19 castaglia <castaglia>
- * modules/mod_log.c:
- Add some additional room for other ExtendedLog data.
+ * 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.
-2009-10-26 15:09 castaglia
+2010-01-19 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).
+ * NEWS, contrib/mod_tls.c: Bug#3375 - Minor SIGHUP-based memory leak
+ in mod_tls.
-2009-10-26 08:39 castaglia
+2010-01-19 castaglia <castaglia>
- * doc/howto/: Nonroot.html, index.html:
- Add the nonroot howto to the collection.
+ * 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).
-2009-10-23 09:28 castaglia
+2010-01-19 castaglia <castaglia>
- * NEWS, lib/pr-syslog.c:
- Bug#3305 - Emulate Solaris 10 syslog "header" on Solaris 10
- servers.
+ * 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.
-2009-10-23 09:16 castaglia
+2010-01-19 castaglia <castaglia>
- * src/main.c:
- Initialize the xerrno variable, to quell a compiler warning.
+ * 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.
-2009-10-21 17:40 castaglia
+2010-01-17 castaglia <castaglia>
- * src/inet.c:
- Pedantic comment typo correction.
+ * 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.
-2009-10-21 10:26 castaglia
+2010-01-17 castaglia <castaglia>
- * tests/: tests.pl, t/config/hidenoaccess.t,
- t/lib/ProFTPD/Tests/Config/HideNoAccess.pm:
- Add unit test for the HideNoAccess directive.
+ * 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.
-2009-10-21 09:42 castaglia
+2010-01-15 castaglia <castaglia>
- * doc/howto/Scoreboard.html:
- Add scoreboard FAQ about "bad version (too old)" errors.
+ * contrib/mod_radius.c: Update the copyright dates in mod_radius.c,
+ since the code has changed.
-2009-10-21 09:39 castaglia
+2010-01-15 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Added mod_sftp FAQ about ListOptions.
+ * NEWS, contrib/mod_radius.c: Bug#3372 - ProFTPD crashes when
+ retrying a failed login with mod_radius being used.
-2009-10-21 08:05 castaglia
+2010-01-11 castaglia <castaglia>
- * contrib/mod_tls.c:
- Cleanly shutdown the SSL/TLS session (if there is one) for
- TimeoutLogin as well.
+ * doc/contrib/mod_sftp_sql.html: Use HTML entity encoding for angle
+ brackets; more browsers like this.
-2009-10-20 18:41 castaglia
+2010-01-11 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.
+ * 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.
-2009-10-20 17:24 castaglia
+2010-01-10 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3303 - FileZilla reports "Server did not properly shut down
- TLS connection" after TimeoutIdle triggered..
+ * src/scoreboard.c: Whitespace/coding style change, no functional
+ change. Update the copyright date.
-2009-10-20 14:58 castaglia
+2010-01-10 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Markup error.
+ * 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.
-2009-10-20 14:47 castaglia
+2010-01-10 castaglia <castaglia>
- * include/version.h:
- Bumped version to what will become 1.3.3rc3.
+ * configure: Updated configure.
-2009-10-20 14:13 castaglia
+2010-01-10 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Getting versions ready for 1.3.3rc2 release.
+ * 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.
-2009-10-20 14:11 castaglia
+2010-01-08 castaglia <castaglia>
- * NEWS:
- Mention the release date for 1.3.3rc2.
+ * 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.
-2009-10-20 11:52 castaglia
+2010-01-08 castaglia <castaglia>
- * RELEASE_NOTES:
- Typos, corrections.
+ * 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.
-2009-10-20 11:46 castaglia
+2010-01-08 castaglia <castaglia>
- * ChangeLog:
- Updated the ChangeLog.
+ * contrib/mod_ban.c: Report the server ID for a ban entry in the
+ BanLog; it helps differentiate what would otherwise look like
+ duplicates.
-2009-10-20 10:58 castaglia
+2010-01-07 castaglia <castaglia>
- * ChangeLog:
- Updated the ChangeLog.
+ * 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)".
-2009-10-20 10:30 castaglia
+2010-01-07 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Readying the release of 1.3.2b.
+ * 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.
-2009-10-20 10:03 castaglia
+2010-01-06 castaglia <castaglia>
- * RELEASE_NOTES:
- Adding more to the release notes, getting them ready for the
- release of RC2.
+ * doc/contrib/mod_ctrls_admin.html: Add example of using new
+ 'ftpdctl restart count' functionality.
-2009-10-19 18:11 castaglia
+2010-01-06 castaglia <castaglia>
- * contrib/mod_sql_postgres.c:
- Minor tweaks to the Postgres NLS/encoding code.
+ * 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.
-2009-10-19 17:19 castaglia
+2010-01-06 castaglia <castaglia>
- * RELEASE_NOTES:
- Point out a potential hazard with the delayed-open database
- connection policy and logging-only database configs.
+ * 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.
-2009-10-19 15:07 castaglia
+2010-01-06 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.
+ * doc/contrib/mod_sftp.html: Add SFTP FAQ about <Limit SITE_CHMOD>
+ and SFTP uploads.
-2009-10-19 14:58 castaglia
+2010-01-05 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.
+ * NEWS, modules/mod_auth.c,
+ tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm: Bug#3362 -
+ Regression in handling of MaxLoginAttempts in 1.3.3rc1.
-2009-10-19 14:08 castaglia
+2010-01-04 castaglia <castaglia>
- * doc/howto/NAT.html:
- Fixed URL to IP Masquerade howto doc.
+ * contrib/mod_wrap2/mod_wrap2.c: Fix broken checks added yesterday.
+ Also quell compiler warnings about unreachable code.
-2009-10-14 16:45 castaglia
+2010-01-04 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.
+ * doc/howto/Authentication.html: Updated Authentication howto,
+ removing mention of deprecated AuthPAMAuthoritative directive and
+ updating URLs to point to the www.proftpd.org docs.
-2009-10-14 11:49 castaglia
+2010-01-03 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Helps if we provide the data type for variables.
+ * contrib/mod_wrap2/mod_wrap2.c: Cleanup of some of the coding style
+ in mod_wrap2 to be more legible.
-2009-10-14 11:35 castaglia
+2010-01-03 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.
+ * 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-10-14 11:31 castaglia
+2009-12-28 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.)
+ * 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-10-14 10:54 castaglia
+2009-12-28 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm:
- Fixing quietly broken MLSD unit tests; they were using the wrong
- regex.
+ * doc/howto/TLS.html: Fix typos.
-2009-10-13 08:30 castaglia
+2009-12-23 castaglia <castaglia>
- * modules/: mod_core.c, mod_xfer.c:
- Found a few more cases where errno could be trampled by
- pr_trace_msg(), and thus requires brief caching.
+ * doc/contrib/mod_wrap.html: The libnsl library isn't needed for
+ mod_wrap on Mac OSX, either.
-2009-10-12 16:52 jwm
+2009-12-20 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r70: 2.8.20 release
+ * src/fsio.c: Rather than testing for CYGWIN to use the O_BINARY
+ flag, just test for the O_BINARY flag directly.
-2009-10-12 16:51 jwm
+2009-12-18 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r68: ldap_server and ldap_port
- should be defined in the !(openldap LDAP_VENDOR_VERSION >= 192)
- case
+ * 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).
- mod_ldap bzr r67: bump version date
+2009-12-18 castaglia <castaglia>
- mod_ldap bzr r66: fix reversed logic when keeping server/port
- settings for non-ldap_initialize() SDKs.
+ * NEWS, contrib/mod_tls_shmcache.c: Bug#3359 - mod_tls_shmcache
+ segfaults during syntax check.
- 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.
+2009-12-15 castaglia <castaglia>
- 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
+ * Makefile.in, NEWS: Bug#3356 - Build timestamp using date(1) can
+ fail depending on environment.
-2009-10-12 16:11 castaglia
+2009-12-15 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.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3357 - mod_sftp fails to compile
+ on AIX.
-2009-10-07 13:38 castaglia
+2009-12-15 castaglia <castaglia>
- * NEWS, modules/mod_auth_unix.c:
- Bug#3300 - Support disabling use of S_RLOGIN when calling AIX
- loginrestrictions().
+ * NEWS, contrib/mod_tls.c: Bug#3358 - mod_tls doesn't compile with
+ pre-0.9.7 openssl.
-2009-10-07 11:37 castaglia
+2009-12-15 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Add a little more description of the sftpUTF8ProtocolVersion
- config setting.
+ * modules/mod_xfer.c: Typo.
-2009-10-06 08:44 castaglia
+2009-12-15 castaglia <castaglia>
- * doc/howto/ServerType.html:
- Add a FAQ about another cause of slow/timed out logins.
+ * 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-10-05 16:26 castaglia
+2009-12-15 castaglia <castaglia>
- * contrib/mod_sql.c:
- Add more info to the mod_sql logs when handling (and looking up)
- named queries.
+ * contrib/mod_shaper.c: Fix compiler warnings about unreachable
+ code, and rename an event listener to be more appropriately named.
-2009-10-05 15:52 castaglia
+2009-12-14 castaglia <castaglia>
- * contrib/mod_sql.c:
- When processing named queries, log the named query being
- processed.
+ * doc/contrib/mod_wrap.html: Adding more examples of paranoid
+ libwrap log messages.
-2009-10-05 15:47 castaglia
+2009-12-14 castaglia <castaglia>
- * contrib/: mod_shaper.c, mod_rewrite.c:
- Quell compiler warnings.
+ * doc/howto/TLS.html: Another SSL/TLS FAQ.
-2009-10-05 15:23 castaglia
+2009-12-14 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.
+ * 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-10-05 14:21 castaglia
+2009-12-14 castaglia <castaglia>
- * modules/mod_core.c:
- Just to be defensive, make sure that the EISDIR errno value
- exists before using it.
+ * contrib/mod_tls.c: Clear up compiler warnings about unreachable
+ code in mod_tls. No functional change.
-2009-10-05 14:07 castaglia
+2009-12-14 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.
+ * doc/howto/Stopping.html: Fixing up the Stopping howto, and adding
+ an example Mac OSX launchd plist config.
-2009-10-05 13:57 castaglia
+2009-12-13 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm:
- Uncomment line to delete log file.
+ * utils/ftptop.c: Quell compiler warnings about unreachable code.
-2009-10-05 09:59 castaglia
+2009-12-12 castaglia <castaglia>
- * src/main.c:
- Fix the settings displayed so that we show either ncurses or
- ncursesw, but not both (related to Bug#3213).
+ * 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-10-05 09:52 castaglia
+2009-12-11 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.
+ * src/table.c: Clean up some "code will never be executed" warnings.
-2009-10-04 18:06 castaglia
+2009-12-11 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.
+ * 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-10-04 12:52 castaglia
+2009-12-11 castaglia <castaglia>
- * NEWS, src/scoreboard.c, utils/ftptop.c:
- Bug#3214 - ftpwho/ftptop truncate UTF8 strings due to byte,
- versus character, lengths.
+ * 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-10-04 12:51 castaglia
+2009-12-11 castaglia <castaglia>
- * configure:
- Updated configure (for Bug#3213).
+ * contrib/mod_tls.c: Be a little more verbose in the error messages
+ logged for SSL_accept() failures.
-2009-10-04 12:47 castaglia
+2009-12-11 castaglia <castaglia>
- * NEWS, config.h.in, configure.in, src/main.c:
- Bug#3213 - Use locale-sensitive libncursesw library for ftptop
- where available.
+ * doc/modules/mod_lang.html: Typo.
-2009-10-03 17:54 castaglia
+2009-12-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Add unit test for the iPAddressRequired TLSOption.
+ * include/version.h: Update the CVS version.
-2009-10-03 17:41 castaglia
+2009-12-10 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.
+ * doc/contrib/mod_sql.html: Typo.
-2009-10-03 17:23 castaglia
+2009-12-10 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.
+ * ChangeLog: Update the ChangeLog.
-2009-10-03 12:46 castaglia
+2009-12-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Add a unit test for the StdEnvVars TLSOption.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ to release 1.3.3rc3 today.
-2009-10-03 12:35 castaglia
+2009-12-10 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}".)
+ * 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-10-03 12:03 castaglia
+2009-12-10 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.
+ * contrib/mod_wrap.c: Specify the module version data in the module
+ structure for mod_wrap.
-2009-10-03 09:35 castaglia
+2009-12-10 castaglia <castaglia>
- * contrib/mod_sql_passwd.c:
- Quell compiler warnings, too.
+ * NEWS, modules/mod_auth.c: Bug#3351 - Nonchrooted logins on HPUX do
+ not get proper UID/GID.
-2009-10-03 09:34 castaglia
+2009-12-10 castaglia <castaglia>
- * contrib/mod_sql_passwd.c:
- Typo.
+ * 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-10-02 16:38 castaglia
+2009-12-10 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.
+ * src/support.c: Updated fix for Bug#3350.
+
+2009-12-10 castaglia <castaglia>
-2009-10-02 14:26 castaglia
+ * NEWS, src/support.c: Bug#3350 - Segfault caused by scrubbing
+ zero-length portion of memory.
- * RELEASE_NOTES, doc/contrib/mod_sql.html:
- Update docs to reflect Bug#3290.
+2009-12-09 castaglia <castaglia>
-2009-10-02 14:22 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.
- * 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-12-09 castaglia <castaglia>
-2009-10-01 14:38 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.
- * doc/contrib/mod_ban.html:
- Forgot to mention MaxLoginAttempts as one of the events handled
- by BanOnEvent.
+2009-12-09 castaglia <castaglia>
-2009-10-01 09:18 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3349 - SSL_SESSION_cmp not available
+ in OpenSSL 1.0.0 betas.
- * doc/contrib/mod_quotatab.html:
- Clarify the string to which a configured QuotaExcludeFilter is
- applied.
+2009-12-09 castaglia <castaglia>
-2009-10-01 09:13 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.
- * NEWS, contrib/mod_quotatab.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Bug#3298 - QuotaExcludeFilter directive ignored by mod_quotatab.
+2009-12-09 castaglia <castaglia>
-2009-10-01 08:45 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.
- * doc/contrib/mod_quotatab.html:
- Typo.
+2009-12-09 castaglia <castaglia>
-2009-10-01 08:25 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.
- * 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-12-08 castaglia <castaglia>
-2009-09-30 17:33 castaglia
+ * doc/contrib/mod_ban.html: Add a FAQ about creating whitelists for
+ mod_ban.
- * locale/files.txt:
- Remove a few duplicates (caused by symlinks and a working copy)
- from the list.
+2009-12-07 castaglia <castaglia>
-2009-09-30 17:26 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.
- * locale/: Makefile.in, files.txt:
- Updated locale/files.txt.
+2009-12-07 castaglia <castaglia>
-2009-09-30 17:12 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.
- * contrib/mod_rewrite.c:
- Quell compiler warning.
+2009-12-07 castaglia <castaglia>
-2009-09-30 15:23 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>
- * doc/contrib/mod_sql_passwd.html:
- Provide an example config using a salt file in the Usage section.
+ * 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-09-30 15:21 castaglia
+2009-12-05 castaglia <castaglia>
- * contrib/mod_sql_passwd.c:
- Fix bad grammar in a comment.
+ * doc/contrib/mod_sql_passwd.html: Updated the mod_sql_passwd doc to
+ mention support of SHA256 and SHA512 passwords.
-2009-09-30 15:18 castaglia
+2009-12-05 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.
+ * 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-09-30 14:05 castaglia
+2009-12-03 castaglia <castaglia>
- * doc/contrib/mod_sql_passwd.html:
- Document the SQLPasswordSaltFile directive.
+ * utils/scoreboard.c: Fix an "unreachable code" compiler warning,
+ and clean up the code stylistically.
-2009-09-30 13:51 castaglia
+2009-12-03 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.
+ * 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-09-30 11:03 castaglia
+2009-12-03 castaglia <castaglia>
- * contrib/mod_tls.c:
- Make sure that mod_tls does not cleanup OpenSSL if mod_sql_passwd
- is in use.
+ * tests/t/lib/ProFTPD/Tests/Commands/REST.pm: Add a test for
+ resuming downloads of >4GB files as well.
-2009-09-29 14:46 castaglia
+2009-12-03 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.
+ * 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-09-29 13:53 castaglia
+2009-12-02 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm:
- Update regression test function names to match the names listed.
+ * modules/mod_xfer.c: Typos.
-2009-09-29 13:50 castaglia
+2009-12-02 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3297 - Symlinks to directories which end in trailing slashes
- may not be handled properly.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Fix broken
+ mod_ban+mod_ifsession test.
-2009-09-29 13:49 castaglia
+2009-12-02 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm:
- Regression tests for Bug#3297.
+ * src/display.c: The displaying of multiline Display files was
+ leaving off the last line in the file; now fixed.
-2009-09-29 10:09 castaglia
+2009-12-02 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Fix the DELE unit
+ tests to handle different strerror(3) strings.
-2009-09-28 14:27 castaglia
+2009-12-01 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#3295 - proftpd segfaults when STAT is used with ListOptions
- "-1".
+ * 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-09-28 14:24 castaglia
+2009-12-01 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Commands/STAT.pm,
- t/commands/stat.t:
- Adding unit tests for the STAT command.
+ * 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-09-28 14:22 castaglia
+2009-11-30 castaglia <castaglia>
- * modules/mod_auth.c:
- If we have trouble resolving the chroot path, make sure we log
- the reason why.
+ * contrib/mod_sftp/channel.c, doc/contrib/mod_sftp.html: Handle
+ multiple SFTPAcceptEnv directives if configured. Add docs for the SFTPAcceptEnv directive.
-2009-09-28 13:38 castaglia
+2009-11-26 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.
+ * contrib/mod_sftp/fxp.c: Include EINVAL in the list of errno values
+ we expect to see from PRE_CMD handlers.
-2009-09-28 11:55 castaglia
+2009-11-26 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.)
+ * 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-09-28 10:07 castaglia
+2009-11-26 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.
+ * 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-09-26 16:52 castaglia
+2009-11-24 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.
+ * 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-09-24 17:42 castaglia
+2009-11-20 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Mention the 3des-ctr cipher in the SFTPCiphers doc.
+ * 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-09-24 17:25 castaglia
+2009-11-19 castaglia <castaglia>
+
+ * lib/libltdl/.cvsignore: More auto-generated files to ignore.
+
+2009-11-19 castaglia <castaglia>
- * contrib/mod_sftp/: crypto.c, mod_sftp.h.in:
- Add support for the 3des-ctr cipher; tested using PuTTy-0.60.
+ * configure: Updated configure.
-2009-09-23 09:19 castaglia
+2009-11-19 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.
+ * configure.in: Handle empty CONFIG_SHELL values.
-2009-09-23 09:01 castaglia
+2009-11-19 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention custom HiddenStores prefixes in the release notes.
+ * configure: Updated configure.
-2009-09-23 09:00 castaglia
+2009-11-19 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c,
- tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm:
- Bug#3294 - Support configurable HiddenStores prefixes.
+ * 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-09-22 09:23 castaglia
+2009-11-19 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.
+ * Makefile.in: Comment out the target that might cause the machine
+ to re-run autoconf.
-2009-09-21 16:50 castaglia
+2009-11-19 castaglia <castaglia>
- * src/inet.c:
- Pre-emptively update the code for Mac OSX 10.6 machines.
+ * configure: Updated configure.
-2009-09-21 15:55 castaglia
+2009-11-19 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.
+ * configure.in: More libtool-2.2.4 tweaking fun.
-2009-09-21 14:06 castaglia
+2009-11-19 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).
+ * configure: Updated configure.
-2009-09-18 14:15 castaglia
+2009-11-19 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Cut-n-pasto.
+ * 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-09-17 14:33 castaglia
+2009-11-18 castaglia <castaglia>
- * tests/: tests.pl, t/config/limit/anonymous.t,
- t/lib/ProFTPD/Tests/Config/Limit/Anonymous.pm:
- 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.
+ * configure: Updated configure.
-2009-09-17 13:54 castaglia
+2009-11-18 castaglia <castaglia>
- * doc/howto/Chroot.html:
- Add FAQ about using multiple DefaultRoot directives at the same
- time.
+ * Make.rules.in, configure.in: More libtool-2.2.4 tweaks, with help
+ from Bob Friesenhahn.
-2009-09-17 10:30 castaglia
+2009-11-18 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.
+ * aclocal.m4: Re-create our aclocal.m4 using the aclocal tool.
-2009-09-17 10:16 castaglia
+2009-11-18 castaglia <castaglia>
- * contrib/mod_sftp/mod_sftp.h.in:
- Forgot to include the blowfish header.
+ * configure: Updated configure.
-2009-09-16 22:57 castaglia
+2009-11-18 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Make sure that blowfish-ctr is listed in the docs.
+ * 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-09-16 22:54 castaglia
+2009-11-18 castaglia <castaglia>
- * contrib/mod_sftp/crypto.c:
- Add support for the blowfish-ctr cipher from RFC4344.
+ * Makefile.in, configure.in: More wrestling with libtool-2.2.4. I
+ am *really* not liking this 2.2.x release series.
-2009-09-16 20:57 castaglia
+2009-11-18 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Add support for issuing the HOST command in the testsuite client.
+ * contrib/mod_sftp/fxp.c: Quelling compiler warnings.
-2009-09-16 13:51 castaglia
+2009-11-18 castaglia <castaglia>
- * contrib/mod_sftp/: cipher.c, keys.c, mac.c:
- Clean up some minor compiler warnings.
+ * NEWS, modules/mod_core.c: Bug#3342 - FEAT response contains LF
+ without preceding CR.
-2009-09-16 13:47 castaglia
+2009-11-18 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.)
+ * 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-09-16 10:26 castaglia
+2009-11-18 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.
+ * doc/contrib/mod_sftp.html: Update mod_sftp doc so that it's
+ hopefully less confusing.
-2009-09-16 09:32 castaglia
+2009-11-17 castaglia <castaglia>
- * src/privs.c:
- Make the "SETUP PRIVS" log message be at DEBUG9, like the other
- debug log messages generated when manipulating privs.
+ * 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-09-16 08:09 castaglia
+2009-11-17 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).
+ * NEWS: Bug#3331 - Update bundled libtool to 2.2.4.
-2009-09-15 23:18 castaglia
+2009-11-17 castaglia <castaglia>
- * contrib/mod_sftp/crypto.c:
- Pedantic comment typo correction.
+ * configure: Updated configure.
-2009-09-15 23:12 castaglia
+2009-11-17 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-09-15 23:09 castaglia
+2009-11-17 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.
+ * lib/libltdl/.cvsignore: One more libtool file to ignore.
-2009-09-15 17:12 castaglia
+2009-11-17 castaglia <castaglia>
- * contrib/mod_sftp/: cipher.c, mac.c:
- Minor adjustment to the debug logging of packet dumps, so that
- they are easier to pick out of the SFTPLog file.
+ * lib/libltdl/.cvsignore: More files to ignore with this new version
+ of libtool.
-2009-09-15 16:18 castaglia
+2009-11-17 castaglia <castaglia>
- * modules/mod_core.c, src/dirtree.c, src/modules.c:
- Various stylistic cleanups generated while pursuing strange
- segfault.
+ * lib/libltdl/ltdl.c: Backport the patch for the bugs found in
+ libtool-2.2.6 to this 2.2.4 version.
-2009-09-15 16:10 castaglia
+2009-11-17 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.
+ * lib/libltdl/Makefile.in, lib/libltdl/argz.c: Bug#3331 - Update
+ bundled libtool to 2.2.4.
-2009-09-15 08:17 castaglia
+2009-11-17 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.
+ * configure: Updated configure.
-2009-09-14 23:28 castaglia
+2009-11-17 castaglia <castaglia>
- * tests/t/: commands/host.t, lib/ProFTPD/Tests/Commands/HOST.pm:
- Start working on unit tests for the HOST command, as part of
- Bug#3289.
+ * 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-09-14 13:44 castaglia
+2009-11-17 castaglia <castaglia>
- * src/session.c:
- When marking a session as idle, make sure that session.user is
- non-NULL; if not, using "(authenticating)".
+ * config.guess, config.sub: Updating the config.guess and config.sub
+ helper scripts.
-2009-09-14 11:58 castaglia
+2009-11-17 castaglia <castaglia>
- * src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm:
+ * install-sh: Updated the install-sh script.
- Set the errno appropriately for implicit denies.
+2009-11-17 castaglia <castaglia>
-2009-09-14 10:46 castaglia
+ * doc/howto/Timestamps.html: Mention MFMT in the Timestamps howto.
- * doc/howto/Filters.html:
- Add example config for using AllowFilter to only allow specific
- filename extensions in a directory.
+2009-11-17 castaglia <castaglia>
-2009-09-14 10:15 castaglia
+ * doc/contrib/mod_sftp.html: Add the SFTP Extensions Draft to the
+ list.
- * 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-11-16 castaglia <castaglia>
-2009-09-11 22:05 castaglia
+ * contrib/mod_sftp/channel.c: Locking down more environment
+ variables from SSH2 client tweaking.
- * 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-11-16 castaglia <castaglia>
-2009-09-09 16:44 castaglia
+ * contrib/mod_sftp/channel.c: Add more barred environment variables
+ to the list.
- * 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-11-16 castaglia <castaglia>
-2009-09-09 16:27 castaglia
+ * contrib/mod_sftp/channel.c: Don't allow SSH2 clients to change the
+ TZ environment variable, either.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Looks like newer libssh2 versions have addressed some issues,
- though not all.
+2009-11-16 castaglia <castaglia>
-2009-09-09 14:15 castaglia
+ * contrib/mod_sftp/channel.c: Add a few more environment variables
+ that SSH2 clients are barred from sending/overriding in their
+ session.
- * doc/contrib/mod_sql_passwd.html:
- Be sure to list the additional SQLAuthTypes provided by
- mod_sql_passwd.
+2009-11-16 castaglia <castaglia>
-2009-09-09 11:47 castaglia
+ * contrib/mod_sftp/fxp.c: Adding some notes for my future self.
- * RELEASE_NOTES, doc/contrib/mod_sql_passwd.html:
- Adding documentation for mod_sql_passwd.
+2009-11-16 castaglia <castaglia>
-2009-09-09 11:45 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.
- * doc/contrib/mod_sql.html:
- Adding the required notice for using OpenSSL.
+2009-11-16 castaglia <castaglia>
-2009-09-09 11:22 castaglia
+ * src/dirtree.c: Simpler fix for Bug#3337.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sql_passwd.pm,
- t/modules/mod_sql_passwd.t:
- Added unit tests for the mod_sql_passwd module.
+2009-11-15 castaglia <castaglia>
-2009-09-09 11:17 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.
- * 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-11-15 castaglia <castaglia>
-2009-09-08 13:48 castaglia
+ * contrib/mod_sftp/scp.c: Include the sticky bit when
+ sending/receiving files/directories.
- * contrib/mod_sftp/auth.c:
- Add trace logging of the list of SSH2 authentication methods that
- are offered to the client.
+2009-11-15 castaglia <castaglia>
-2009-09-08 13:39 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.
- * 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-11-14 castaglia <castaglia>
-2009-09-08 13:35 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.
- * modules/mod_auth.c:
- Clear the auth-only module list after authentication has
- succeeded.
+2009-11-14 castaglia <castaglia>
-2009-09-08 13:34 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.
- * 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-11-14 castaglia <castaglia>
-2009-09-08 11:39 castaglia
+ * configure: Updated configure script.
- * 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-11-14 castaglia <castaglia>
-2009-09-08 10:38 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.
- * 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-11-14 castaglia <castaglia>
-2009-09-08 10:28 castaglia
+ * m4/proftpd.m4: Try to make the use of the AC_DEFINE macro more
+ consistent with other occurrences by supplying a message.
- * 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-11-14 castaglia <castaglia>
-2009-09-08 10:25 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.
- * modules/mod_lang.c:
- Skip the "." and ".." directory entries when scanning the
- LangPath directory.
+2009-11-14 castaglia <castaglia>
-2009-09-07 15:21 castaglia
+ * modules/mod_core.c: Add trace logging of the pr_netacl_t objects
+ created via other config directives.
- * NEWS:
- Forgot to update the NEWS file.
+2009-11-14 castaglia <castaglia>
-2009-09-07 15:20 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.
- * src/inet.c:
- Don't re-declare a variable that's already in scope.
+2009-11-13 castaglia <castaglia>
- Be paranoid, and only avoid ENOPROTOOPT errors if that errno is
- actually defined on the system.
+ * 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-09-07 15:17 castaglia
+2009-11-13 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.
+ * contrib/mod_sql_mysql.c: Typo.
-2009-09-06 19:03 castaglia
+2009-11-13 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Quell a few compiler printf warnings by using explicit typecasts.
+ * NEWS, contrib/mod_sql_mysql.c: Bug#3333 - mod_sql_mysql should
+ support calling stored procedures better.
-2009-09-06 18:37 castaglia
+2009-11-13 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.
+ * 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.
- 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.
+2009-11-13 castaglia <castaglia>
- 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.
+ * 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.
- 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-11-13 castaglia <castaglia>
-2009-09-06 18:24 castaglia
+ * contrib/mod_sftp/fxp.c: Make sure that we only send defined flag
+ values in the statvfs at openssh.com extension response.
- * 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-11-13 castaglia <castaglia>
-2009-09-04 22:39 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.
- * src/encode.c:
- Need to set the LC_NUMERIC locale back to "C" after calling
- setlocale() using LC_ALL.
+2009-11-12 castaglia <castaglia>
-2009-09-04 22:35 castaglia
+ * doc/contrib/mod_ban.html: Adding a mod_ban FAQ, cleaning up a
+ minor nit.
- * 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-11-11 castaglia <castaglia>
-2009-09-04 15:26 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.
- * doc/howto/ConfigFile.html:
- Specifically mention that proftpd switches to the UID/GID of the
- logged-in user.
+2009-11-10 castaglia <castaglia>
-2009-09-04 15:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm: Add more
+ tests for the fix for Bug#3077.
- * 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-11-10 castaglia <castaglia>
-2009-09-04 15:01 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.
- * src/encode.c:
- Fix segfault found by the mod_lang unit tests.
+2009-11-10 castaglia <castaglia>
-2009-09-04 10:16 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.
- * RELEASE_NOTES:
- Update release notes with note about scoreboard format change;
- need to expand on this at release time, of course.
+2009-11-10 castaglia <castaglia>
-2009-09-04 10:13 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).
- * 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'.
+2009-11-10 castaglia <castaglia>
- Bug#3286 - Client command field in scoreboard entry too short for
- SSH2/SFTP commands.
+ * 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.
- These changes are combined in one change, in order to rev the
- scoreboard format version only once for these format changes.
+2009-11-10 castaglia <castaglia>
-2009-09-02 15:30 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#3328 - Failed database
+ transaction can cause mod_quotatab to loop endlessly.
- * 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-11-10 castaglia <castaglia>
-2009-09-02 11:13 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add
+ mod_quotatab test for RETR byte limits.
- * 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-11-09 castaglia <castaglia>
-2009-09-02 10:58 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.
- * 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-11-09 castaglia <castaglia>
-2009-09-01 11:39 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.
- * NEWS, modules/mod_xfer.c:
- Bug#3287 - MaxTransfersPerHost, MaxTransfersPerUser directives
- not supported properly.
+2009-11-09 castaglia <castaglia>
-2009-09-01 10:18 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.
- * doc/contrib/mod_sftp.html:
- Add SFTP FAQ about CBC cipher mode attacks.
+2009-11-09 castaglia <castaglia>
-2009-09-01 10:04 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.
- * contrib/mod_sftp/: mod_sftp.h.in, packet.c, ssh2.h:
- Implement the recommended countermeasure for mitigating the SSH2
- plaintext recovery attack against CBC mode ciphers described in
- CPNI-957037:
+2009-11-09 castaglia <castaglia>
- http://www.cpni.gov.uk/Docs/Vulnerability_Advisory_SSH.txt
+ * 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.
- 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-11-09 castaglia <castaglia>
-2009-08-31 13:40 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.
- * doc/howto/Controls.html:
- Updating URLs and such in Controls howto.
+2009-11-09 castaglia <castaglia>
-2009-08-31 11:47 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.
- * 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-11-09 castaglia <castaglia>
-2009-08-31 11:43 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.
- * contrib/mod_sftp/packet.c:
- Handle a few more types of errors that we might encounter while
- reading from a socket.
+2009-11-09 castaglia <castaglia>
-2009-08-30 11:49 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.
- * src/session.c:
- Getting ready to support the "publickey" SSH2 subsystem
- (RFC4819).
+2009-11-09 castaglia <castaglia>
-2009-08-28 10:33 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).
- * NEWS, RELEASE_NOTES, src/dirtree.c:
- Bug#3279 - .ftpaccess configurations not merged properly with
- existing configuration.
+2009-11-09 castaglia <castaglia>
-2009-08-28 09:20 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/DELE.pm: Add unit test for
+ DELEs on symlinks.
- * 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-11-08 castaglia <castaglia>
-2009-08-28 09:14 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.
- * 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-11-08 castaglia <castaglia>
-2009-08-28 07:50 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 11:46 castaglia
+ * doc/contrib/mod_sftp.html: Update the list of SFTP extensions
+ supported by mod_sftp.
- * src/inet.c:
- Update the copyright year range, since we just updated this file.
-
-2009-08-27 11:45 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-27 11:38 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 10:23 castaglia
-
- * contrib/mod_sftp/: channel.c, 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-25 22:23 castaglia
+2009-11-08 castaglia <castaglia>
- * contrib/mod_sftp/: packet.c, tap.c, 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).
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3320 - Support the "copy-file"
+ SFTP extension.
-2009-08-25 09:59 castaglia
+2009-11-08 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.
+ * 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-08-25 08:59 castaglia
+2009-11-08 castaglia <castaglia>
- * contrib/mod_sftp/: kex.c, tap.c, tap.h:
- Rename the 'cbc-mode' TAP policy to 'rogaway', to be more clear
- (and interesting).
+ * 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-08-24 22:07 castaglia
+2009-11-08 castaglia <castaglia>
- * contrib/mod_sftp/: kex.c, mod_sftp.c, tap.c, 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.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3321 - Support the
+ "check-file-name" and "check-file-handle" SFTP extensions.
-2009-08-24 17:24 castaglia
+2009-11-08 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Adding comment/note to myself for future tweaking.
+ * contrib/mod_sftp/configure: Updated mod_sftp's configure script.
-2009-08-23 19:16 castaglia
+2009-11-08 castaglia <castaglia>
- * contrib/mod_sftp/: channel.c, channel.h, 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.
+ * 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.
- 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-11-07 castaglia <castaglia>
-2009-08-23 16:58 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.
- * 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.
+2009-11-07 castaglia <castaglia>
- 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.
+ * contrib/mod_sftp/fxp.c: Minor refinement to the version-select
+ SFTP extension implementation.
-2009-08-21 19:57 castaglia
+2009-11-07 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.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3322 - Support the
+ "version-select" SFTP extension.
-2009-08-19 14:20 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 14:18 castaglia
-
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add unit test for DefaultChdir config in mod_sftp.
-
-2009-08-19 11:30 castaglia
+2009-11-07 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.
+ * NEWS, contrib/mod_tls_shmcache.c: Bug#3326 - Shared memory segment
+ used for session cache should be protected via mlock(2).
-2009-08-14 19:55 castaglia
+2009-11-07 castaglia <castaglia>
- * tests/: tests.pl, t/config/ftpaccess/merging.t,
- t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm,
- t/lib/ProFTPD/Tests/Config/FTPAccess/Merging.pm:
- Adding unit tests derived from investigations into Bug#3279.
+ * NEWS, contrib/mod_tls_shmcache.c: Bug#3327 - Clear external SSL
+ session caches on server restart/shutdown.
-2009-08-14 19:43 castaglia
+2009-11-07 castaglia <castaglia>
- * src/dirtree.c:
- Sigh; fix the spacing in these HideFiles log messages again.
+ * 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-08-14 18:57 castaglia
+2009-11-07 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.
+ * RELEASE_NOTES: Typo.
-2009-08-14 08:46 castaglia
+2009-11-07 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.
+ * doc/contrib/mod_tls.html: Mention that server-initiated SSL
+ session renegotiations are still honored when possible.
-2009-08-14 07:36 castaglia
+2009-11-07 castaglia <castaglia>
- * src/dirtree.c:
- Fix the spacing of the log messages about negated (or not)
- HideFiles directives.
+ * 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-08-13 14:31 castaglia
+2009-11-07 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).
+ * NEWS, configure.in: Bug#3311 - configure script should
+ automatically detect when -ldl is needed by OpenSSL.
-2009-08-13 14:12 castaglia
+2009-11-07 castaglia <castaglia>
- * NEWS, contrib/mod_radius.c, modules/mod_xfer.c, src/data.c:
- Bug#3278 - Aborted data transfers not reflected in RADIUS
- accounting.
+ * 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-08-13 13:54 castaglia
+2009-11-07 castaglia <castaglia>
- * tests/t/: lib/ProFTPD/Tests/Modules/mod_radius.pm,
- 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.
+ * contrib/mod_tls.c: Handle signals in the diagnostic callback.
-2009-08-13 12:09 castaglia
+2009-11-07 castaglia <castaglia>
- * contrib/mod_radius.c:
- Fix compiler warnings about signedness mismatches.
+ * contrib/mod_tls.c: More work towards Bug#3324 - allow
+ server-initiated session renegotiations whilst rejecting
+ client-initiated session renegotiations.
-2009-08-12 15:16 castaglia
+2009-11-07 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.)
+ * doc/contrib/mod_tls.html: Document the new
+ AllowClientRenegotiations TLSOption.
-2009-08-12 15:13 castaglia
+2009-11-07 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.
+ * RELEASE_NOTES: Update the release notes.
-2009-08-12 14:16 castaglia
+2009-11-07 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.
+ * NEWS, contrib/mod_tls.c: Bug#3324 - Vulnerability in SSL/TLS
+ protocol during renegotiation (CVE-2009-3555).
-2009-08-11 08:27 castaglia
+2009-11-07 castaglia <castaglia>
- * doc/howto/Authentication.html:
- Orthographic correction.
+ * doc/howto/TLS.html: Add a TLS FAQ, inspired by Bug#3247 (and its
+ ensuing duplicates).
-2009-08-10 10:05 castaglia
+2009-11-06 castaglia <castaglia>
- * NEWS:
- Had the bug number wrong; should be Bug#3252, not Bug#3272.
+ * 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-08-10 10:01 castaglia
+2009-11-06 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#3272 - %F/%f Display variables can report wrong size on
- 64-bit systems.
+ * contrib/mod_tls.c: Allow "TLSRenegotiate off" as a synonym for
+ "TLSRenegotiate none".
-2009-08-06 13:48 castaglia
+2009-11-06 castaglia <castaglia>
- * contrib/mod_sftp/rfc4716.c:
- Quibble, quibble.
+ * 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-08-06 11:17 castaglia
+2009-11-06 castaglia <castaglia>
- * contrib/mod_sftp/rfc4716.c:
- Thinko.
+ * contrib/mod_tls.c: Ignore EAGAIN errors when the EnableDiags
+ TLSOption is used; they just clutter up the TLSLog.
-2009-08-06 10:27 castaglia
+2009-11-06 castaglia <castaglia>
- * contrib/mod_tls.c:
- Add a function to get a printable version of a suspicious dNSName
- value; related to Bug#3275.
+ * 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-08-06 09:58 castaglia
+2009-11-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.
+ * 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-08-05 15:08 castaglia
+2009-11-06 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.
+ * contrib/mod_tls.c: Minor reordering of the logged SSL/TLS
+ end-of-connection stats; this way the cache-related stats appear
+ together.
-2009-08-05 15:03 castaglia
+2009-11-05 castaglia <castaglia>
- * src/encode.c: [no log message]
+ * modules/mod_ls.c: Make sure that we can handle symlinks whose
+ target paths are long (e.g. longer than 1K).
-2009-08-05 14:03 castaglia
+2009-11-05 castaglia <castaglia>
- * modules/mod_lang.c:
- Try to make for better, more informative error messages if we
- fail to set the locale.
+ * 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-08-05 10:31 castaglia
+2009-11-05 castaglia <castaglia>
- * src/data.c:
- We handle signals in pr_data_xfer() when writiing; we should do
- the same when reading.
+ * 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-08-05 08:07 castaglia
+2009-11-05 castaglia <castaglia>
- * modules/mod_lang.c:
- Declaring the curr_locale variable in the right scope helps to
- make the code actually compile properly.
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Adding unit test for
+ LIST output of a symlink when ShowSymlinks is enabled.
-2009-08-05 06:34 castaglia
+2009-11-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.
+ * 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-08-04 10:34 castaglia
+2009-11-05 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Document the new "noReconnect" SQLOption added as part of
- Bug#3270.
+ * 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-08-04 10:32 castaglia
+2009-11-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.
+ * 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-08-04 08:59 castaglia
+2009-11-04 castaglia <castaglia>
- * NEWS, contrib/mod_sftp/utf8.c, src/encode.c:
- Bug#3272 - Avoid encoding if to/from charsets are the same.
+ * RELEASE_NOTES, doc/modules/mod_cap.html, modules/mod_cap.c:
+ Support adding the CAP_FOWNER capability.
-2009-08-04 08:53 castaglia
+2009-11-04 castaglia <castaglia>
- * NEWS, src/support.c:
- Bug#3274 - Timestamp formatting in TransferLog needs padded
- day-of-month.
+ * RELEASE_NOTES: Mention support for the OpenSSH extensions in the
+ release notes.
-2009-08-02 15:08 castaglia
+2009-11-04 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.
+ * contrib/mod_sftp/fxp.c, doc/contrib/mod_sftp.html: Added support
+ for the posix-rename at openssh.com OpenSSH SFTP extension.
-2009-08-02 14:44 castaglia
+2009-11-04 castaglia <castaglia>
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Report on the database client and server versions, when known.
+ * 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-07-30 09:03 castaglia
+2009-11-04 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Fix compilation error on AIX5.
+ * 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-07-29 13:59 castaglia
+2009-11-04 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.
+ * NEWS, contrib/mod_wrap.c, include/log.h, src/log.c: Bug#3317 -
+ mod_wrap/libwrap should honor SyslogFacility setting.
-2009-07-28 21:41 castaglia
+2009-11-04 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Add unit test for LIST command for Bug#3254.
+ * 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 at openssh.com" and
+ "fstatvfs at openssh.com" SFTP extensions.
-2009-07-28 09:20 castaglia
+2009-11-04 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:
+ * doc/contrib/mod_sftp.html: Document the use of the SSH_CONNECTION
+ environment variable.
- http://forums.proftpd.org/smf/index.php/topic,3971.0.html
+2009-11-04 castaglia <castaglia>
- Hopefully this change works around the issue and still preserves
- the desired functionality.
+ * contrib/mod_sftp/mod_sftp.c: Set the SSH_CONNECTION environment
+ variable, using the same format as OpenSSH.
-2009-07-27 08:29 castaglia
+2009-11-04 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.)
+ * 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-07-27 08:25 castaglia
+2009-11-04 castaglia <castaglia>
- * contrib/mod_sftp/channel.c:
- Missed one change from the weekend's mod_sftp hacking.
+ * 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-07-26 18:00 castaglia
+2009-11-03 castaglia <castaglia>
- * contrib/mod_sftp/: channel.c, channel.h, fxp.c, fxp.h,
- mod_sftp.h.in, scp.c, 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.)
+ * doc/contrib/mod_sftp.html: Mention the %u variable in the
+ SFTPAuthorizedUserKeys directive description.
-2009-07-25 20:16 castaglia
+2009-11-03 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.
+ * 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-07-24 10:31 castaglia
+2009-11-03 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.
+ * configure: Updated configure.
-2009-07-23 10:45 castaglia
+2009-11-03 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.
+ * 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-07-23 08:18 castaglia
+2009-11-03 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.
+ * contrib/mod_sftp/fxp.c, contrib/mod_sftp/fxp.h: Added support for
+ the statvfs at openss.com and fstatvfs at openssh.com OpenSSH SFTP
+ extensions.
-2009-07-23 08:07 castaglia
+2009-11-03 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Add unit test for handling of DELE in mod_quotatab.
+ * NEWS: Pedantic correction: lseek(2), not lseek(3).
-2009-07-23 08:04 castaglia
+2009-11-03 castaglia <castaglia>
- * doc/howto/Quotas.html:
- Add another quota FAQ.
+ * NEWS, contrib/mod_sftp/scp.c, modules/mod_xfer.c: Bug#3314 -
+ Downloading from FIFOs via SFTP/SCP fails.
-2009-07-23 07:37 castaglia
+2009-11-03 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.
+ * NEWS, contrib/mod_sftp/fxp.c: Bug#3313 - Uploading via SFTP to
+ FIFOs fails due to illegal lseek(3), truncate(2) calls.
- Add unit test for the "[NC]" RewriteCondition flags.
+2009-11-03 castaglia <castaglia>
-2009-07-22 20:11 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.
- * NEWS, contrib/mod_rewrite.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Bug#3269 - RewriteCondition OR/ornext flag does not work.
+2009-11-03 castaglia <castaglia>
-2009-07-22 19:34 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: On some platforms,
+ ENXIO has a string representation of "Device not configured".
- * 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-11-03 castaglia <castaglia>
-2009-07-22 14:37 castaglia
+ * contrib/mod_sftp/packet.c: Adding reminder notes/comments for my
+ future self.
- * 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-11-03 castaglia <castaglia>
-2009-07-22 09:57 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Remove duplicate
+ unit test entry from the list.
- * modules/mod_delay.c:
- Add paranoid check that an array pointer is non-null before we
- use it.
+2009-11-03 castaglia <castaglia>
-2009-07-21 16:38 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.
- * 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-11-03 castaglia <castaglia>
-2009-07-21 16:21 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.
- * contrib/mod_sql.c:
- Make sure that mod_sql logs the corresponding "leaving func"
- message in some cases; it wasn't doing so.
+2009-11-03 castaglia <castaglia>
-2009-07-21 15:20 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).
- * 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-11-03 castaglia <castaglia>
-2009-07-21 15:06 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.
- * 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-11-03 castaglia <castaglia>
-2009-07-21 15:01 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.
- * 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-11-03 castaglia <castaglia>
-2009-07-21 09:26 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.
- * contrib/dist/rpm/proftpd.spec:
- Attempt to add support for mod_sftp to the .spec file.
+2009-11-03 castaglia <castaglia>
-2009-07-21 08:47 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.)
- * 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-11-03 castaglia <castaglia>
-2009-07-20 21:58 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).
- * 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-10-30 castaglia <castaglia>
-2009-07-20 21:32 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_wrap.pm: Adding unit tests
+ for more of mod_wrap's directives.
- * 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-10-30 castaglia <castaglia>
-2009-07-20 17:25 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.
- * contrib/mod_sftp/fxp.c:
- More explanatory comments, for my future reference.
+2009-10-30 castaglia <castaglia>
-2009-07-20 17:19 castaglia
+ * locale/fr_FR.po: Bug#3309 - Fix whitespace in MLST response when
+ using the fr_FR locale.
- * contrib/mod_sftp/fxp.c:
- Add comment describing the implementation of the RENAME handler,
- and how it is technically nonconformant in particular cases.
+2009-10-29 castaglia <castaglia>
-2009-07-20 17:11 castaglia
+ * RELEASE_NOTES, locale/Makefile.in, locale/zh_TW.po: Wei-Lun Chao
+ contributed a Taiwan translation for proftpd.
- * contrib/mod_sftp/fxp.c:
- Still trying to properly map the V5 OPEN flags/bitmasks to
- open(2) flags.
+2009-10-29 castaglia <castaglia>
-2009-07-20 14:07 castaglia
+ * contrib/mod_sftp/cipher.c: Quell compiler warnings about
+ mismatched data types.
- * 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-10-28 castaglia <castaglia>
-2009-07-20 11:43 castaglia
+ * src/auth.c: Fixing another part of Bug#3307.
- * 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-10-28 castaglia <castaglia>
-2009-07-20 11:33 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logins.pm: Adding more regression tests
+ (and improving existing tests) for Bug#3307.
- * 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-10-27 castaglia <castaglia>
-2009-07-20 11:22 castaglia
+ * NEWS, src/auth.c, tests/t/lib/ProFTPD/Tests/Logins.pm: Bug#3307 -
+ All FTP logins treated as anonymous logins.
- * 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-10-26 castaglia <castaglia>
-2009-07-20 08:41 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.
- * doc/contrib/mod_sftp.html:
- Removed duplicated text.
+2009-10-26 castaglia <castaglia>
-2009-07-19 19:37 castaglia
+ * modules/mod_log.c: Add some additional room for other ExtendedLog
+ data.
- * contrib/mod_sftp/keys.c:
- Update the handling of the SFTPPassPhraseProvider config with
- tweaks found from working on mod_exec.
+2009-10-26 castaglia <castaglia>
-2009-07-19 18:13 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).
- * 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-10-26 castaglia <castaglia>
-2009-07-19 17:18 castaglia
+ * doc/howto/Nonroot.html, doc/howto/index.html: Add the nonroot
+ howto to the collection.
- * NEWS, src/auth.c:
- Bug#2070 - AuthAliasOnly off in <Global> section kills anonymous
- logins.
+2009-10-23 castaglia <castaglia>
-2009-07-19 17:17 castaglia
+ * NEWS, lib/pr-syslog.c: Bug#3305 - Emulate Solaris 10 syslog
+ "header" on Solaris 10 servers.
- * 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-10-23 castaglia <castaglia>
-2009-07-19 17:08 castaglia
+ * src/main.c: Initialize the xerrno variable, to quell a compiler
+ warning.
- * tests/t/lib/ProFTPD/Tests/: Config/Limit/SubDirectories.pm,
- Logging/ExtendedLog.pm:
- Fix variable redeclarations, and soothe the savage Perl
- interpreter beast.
+2009-10-22 castaglia <castaglia>
-2009-07-19 16:35 castaglia
+ * src/inet.c: Pedantic comment typo correction.
- * tests/: tests.pl, t/config/authaliasonly.t,
- t/lib/ProFTPD/Tests/Config/AuthAliasOnly.pm:
- Add unit tests for the AuthAliasOnly directive, including a test
- which reproduces Bug#2070.
+2009-10-21 castaglia <castaglia>
-2009-07-19 15:23 castaglia
+ * tests/t/config/hidenoaccess.t,
+ tests/t/lib/ProFTPD/Tests/Config/HideNoAccess.pm, tests/tests.pl:
+ Add unit test for the HideNoAccess directive.
- * tests/: tests.pl, t/config/authusingalias.t,
- t/lib/ProFTPD/Tests/Config/AuthUsingAlias.pm:
- Add unit tests for the AuthUsingAlias directive.
+2009-10-21 castaglia <castaglia>
-2009-07-19 14:24 castaglia
+ * doc/howto/Scoreboard.html: Add scoreboard FAQ about "bad version
+ (too old)" errors.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Utils/ftpwho.pm,
- t/utils/ftpwho.t:
- Start adding unit tests for the ftpwho utility.
+2009-10-21 castaglia <castaglia>
-2009-07-19 13:18 castaglia
+ * doc/contrib/mod_sftp.html: Added mod_sftp FAQ about ListOptions.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Utils/ftpcount.pm,
- t/utils/ftpcount.t:
- Start of unit tests for the ftpcount utility.
+2009-10-21 castaglia <castaglia>
-2009-07-19 12:11 castaglia
+ * contrib/mod_tls.c: Cleanly shutdown the SSL/TLS session (if there
+ is one) for TimeoutLogin as well.
- * 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-10-21 castaglia <castaglia>
-2009-07-19 12:07 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Add unit test for the ExecOnRestart directive.
+2009-10-21 castaglia <castaglia>
-2009-07-19 12:06 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3303 - FileZilla reports "Server did
+ not properly shut down TLS connection" after TimeoutIdle triggered..
- * contrib/mod_exec.c:
- Add handling of signals to some while() loops.
+2009-10-20 castaglia <castaglia>
-2009-07-18 15:58 castaglia
+ * doc/contrib/mod_tls.html: Markup error.
- * 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-10-20 castaglia <castaglia>
-2009-07-18 12:50 castaglia
+ * include/version.h: Bumped version to what will become 1.3.3rc3.
- * doc/contrib/mod_exec.html:
- Fix typos, update mod_exec doc to point to local copy of Logging
- howto.
+2009-10-20 castaglia <castaglia>
-2009-07-18 12:38 castaglia
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Getting versions
+ ready for 1.3.3rc2 release.
- * tests/: tests.pl, t/config/useglobbing.t,
- t/lib/ProFTPD/Tests/Config/UseGlobbing.pm:
- Add unit test for the UseGlobbing directive.
+2009-10-20 castaglia <castaglia>
-2009-07-18 12:29 castaglia
+ * NEWS: Mention the release date for 1.3.3rc2.
- * tests/: tests.pl, t/config/userpassword.t,
- t/lib/ProFTPD/Tests/Config/UserPassword.pm:
- Add unit test for the UserPassword directive.
+2009-10-20 castaglia <castaglia>
-2009-07-17 18:51 castaglia
+ * RELEASE_NOTES: Typos, corrections.
- * doc/howto/TLS.html:
- Update the TLS howto FAQ regarding implicit FTPS to reflect the
- addition of implicit FTPS support (in Bug#3266).
+2009-10-20 castaglia <castaglia>
-2009-07-17 18:48 castaglia
+ * ChangeLog: Updated the ChangeLog.
- * 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-10-20 castaglia <castaglia>
-2009-07-17 09:35 castaglia
+ * RELEASE_NOTES: Adding more to the release notes, getting them
+ ready for the release of RC2.
- * 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-10-20 castaglia <castaglia>
-2009-07-16 18:16 castaglia
+ * contrib/mod_sql_postgres.c: Minor tweaks to the Postgres
+ NLS/encoding code.
- * modules/mod_ctrls.c:
- If ControlsEngine is set to 'off', then we should not try to
- listen on the ControlsSocket.
+2009-10-20 castaglia <castaglia>
-2009-07-16 18:10 castaglia
+ * RELEASE_NOTES: Point out a potential hazard with the delayed-open
+ database connection policy and logging-only database configs.
- * 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-10-19 castaglia <castaglia>
-2009-07-16 14:28 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.
- * configure:
- Forgot to check in the updated configure script.
+2009-10-19 castaglia <castaglia>
-2009-07-16 13:47 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.
- * doc/howto/Umask.html:
- Add a FAQ to the Umask howto explaining why proftpd does not
- allow uploading of files with execute permissions.
+2009-10-19 castaglia <castaglia>
-2009-07-16 11:15 castaglia
+ * doc/howto/NAT.html: Fixed URL to IP Masquerade howto doc.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_shaper.pm,
- t/modules/mod_shaper.t:
- Start adding unit/regression tests for the mod_shaper module.
+2009-10-14 castaglia <castaglia>
-2009-07-16 10:52 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.
- * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm:
- Add unit test for CreateHome's 'dirmode' parameter.
+2009-10-14 castaglia <castaglia>
-2009-07-15 14:59 castaglia
+ * modules/mod_auth_unix.c: Helps if we provide the data type for
+ variables.
- * 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-10-14 castaglia <castaglia>
-2009-07-15 14:41 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.
- * contrib/mod_sftp/fxp.c:
- Use the SFTP session's pool, rather than the Response API pool,
- for adding our status codes.
+2009-10-14 castaglia <castaglia>
-2009-07-15 14:25 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.)
- * 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-10-14 castaglia <castaglia>
-2009-07-15 09:37 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/MLSD.pm: Fixing quietly broken
+ MLSD unit tests; they were using the wrong regex.
- * contrib/mod_sftp/fxp.c:
- Simplify the obtaining of proper open(2) flags when handling
- version 5 (and higher) SFTP OPEN requests.
+2009-10-13 castaglia <castaglia>
-2009-07-14 22:59 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.
- * 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-10-12 jwm <jwm>
-2009-07-14 22:58 castaglia
+ * contrib/mod_ldap.c: mod_ldap bzr r70: 2.8.20 release
- * 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-10-12 jwm <jwm>
-2009-07-14 15:40 castaglia
+ * 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
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add unit test for the %s LogFormat variable in ExtendedLogs for
- SFTP requests.
+2009-10-12 castaglia <castaglia>
-2009-07-14 14:31 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.
- * 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-10-07 castaglia <castaglia>
-2009-07-14 11:46 castaglia
+ * NEWS, modules/mod_auth_unix.c: Bug#3300 - Support disabling use of
+ S_RLOGIN when calling AIX loginrestrictions().
- * 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-10-07 castaglia <castaglia>
-2009-07-14 09:27 castaglia
+ * doc/contrib/mod_sftp.html: Add a little more description of the
+ sftpUTF8ProtocolVersion config setting.
- * 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-10-06 castaglia <castaglia>
-2009-07-09 00:18 castaglia
+ * doc/howto/ServerType.html: Add a FAQ about another cause of
+ slow/timed out logins.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Add unit tests for ExecOnError.
+2009-10-05 castaglia <castaglia>
-2009-07-09 00:17 castaglia
+ * contrib/mod_sql.c: Add more info to the mod_sql logs when handling
+ (and looking up) named queries.
- * 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-10-05 castaglia <castaglia>
-2009-07-08 18:32 castaglia
+ * contrib/mod_sql.c: When processing named queries, log the named
+ query being processed.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Add unit test for ExecOnExit.
+2009-10-05 castaglia <castaglia>
-2009-07-08 18:29 castaglia
+ * contrib/mod_rewrite.c, contrib/mod_shaper.c: Quell compiler
+ warnings.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm:
- Adding more mod_exec unit tests, including one for the "%{...}"
- variable support.
+2009-10-05 castaglia <castaglia>
-2009-07-08 18:27 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.
- * contrib/mod_exec.c:
- Add support for the Variables API-style "%{...}" variables to
- mod_exec's variable interpolation. For example, you could now
- do:
+2009-10-05 castaglia <castaglia>
- ExecOnExit /bin/bash -c "echo %{total_bytes_out} >>
- bytes-downloaded.txt"
+ * modules/mod_core.c: Just to be defensive, make sure that the
+ EISDIR errno value exists before using it.
- and it would work properly.
+2009-10-05 castaglia <castaglia>
-2009-07-08 18:12 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.
- * contrib/mod_exec.c:
- Fix off-by-one error which caused mod_exec to log all but the
- last parameter when calling exec.
+2009-10-05 castaglia <castaglia>
-2009-07-08 18:11 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm: Uncomment
+ line to delete log file.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_exec.pm,
- t/modules/mod_exec.t:
- Start working on unit tests for the mod_exec module.
+2009-10-05 castaglia <castaglia>
-2009-07-08 16:43 castaglia
+ * src/main.c: Fix the settings displayed so that we show either
+ ncurses or ncursesw, but not both (related to Bug#3213).
- * lib/sstrncpy.c:
- Catch a possible null pointer exception in sstrncpy(), if the src
- pointer provided by the caller is null.
+2009-10-05 castaglia <castaglia>
-2009-07-08 13:29 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.
- * 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-10-05 castaglia <castaglia>
-2009-07-08 11:16 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.
- * 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-10-04 castaglia <castaglia>
-2009-07-08 11:06 castaglia
+ * NEWS, src/scoreboard.c, utils/ftptop.c: Bug#3214 - ftpwho/ftptop
+ truncate UTF8 strings due to byte, versus character, lengths.
- * 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-10-04 castaglia <castaglia>
-2009-07-06 08:28 castaglia
+ * configure: Updated configure (for Bug#3213).
- * NEWS, src/dirtree.c:
- Bug#3221 - Fixed regression causing command-line -D/--define
- options not to work.
+2009-10-04 castaglia <castaglia>
-2009-07-05 20:13 castaglia
+ * NEWS, config.h.in, configure.in, src/main.c: Bug#3213 - Use
+ locale-sensitive libncursesw library for ftptop where available.
- * NEWS, modules/mod_auth.c:
- Bug#2758 - ProFTPD doesn't always pay attention to AccessDenyMsg.
+2009-10-04 castaglia <castaglia>
-2009-07-05 20:11 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add unit test for
+ the iPAddressRequired TLSOption.
- * tests/: tests.pl, t/config/accessdenymsg.t,
- t/lib/ProFTPD/Tests/Config/AccessDenyMsg.pm:
- Add unit tests for the AccessDenyMsg config directive.
+2009-10-04 castaglia <castaglia>
-2009-07-05 19:35 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.
- * tests/: tests.pl, t/config/accessgrantmsg.t,
- t/lib/ProFTPD/Tests/Config/AccessGrantMsg.pm:
- Add unit tests for the AccessGrantMsg config directive.
+2009-10-04 castaglia <castaglia>
-2009-07-05 19:15 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.
- * tests/: tests.pl, t/config/useralias.t,
- t/lib/ProFTPD/Tests/Config/UserAlias.pm:
- Add unit tests for the UserAlias config directive.
+2009-10-03 castaglia <castaglia>
-2009-07-05 12:36 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Add a unit test for
+ the StdEnvVars TLSOption.
- * 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-10-03 castaglia <castaglia>
-2009-07-04 19:02 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}".)
- * 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-10-03 castaglia <castaglia>
-2009-07-04 18:48 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.
- * contrib/mod_sftp/scp.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- The mod_sftp module was not honoring a configuration like:
+2009-10-03 castaglia <castaglia>
- <Limit WRITE>
- DenyAll
- </Limit>
+ * contrib/mod_sql_passwd.c: Quell compiler warnings, too.
- <Directory ~/*/*>
- <Limit STOR>
- AllowAll
- </Limit>
- </Directory>
+2009-10-03 castaglia <castaglia>
- 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.
+ * contrib/mod_sql_passwd.c: Typo.
- 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-10-02 castaglia <castaglia>
-2009-07-03 18:33 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.
- * 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.
+2009-10-02 castaglia <castaglia>
- By the time the signal handlers were being installed (i.e. after
- parsing) this would not have been possible.
+ * RELEASE_NOTES, doc/contrib/mod_sql.html: Update docs to reflect
+ Bug#3290.
-2009-07-03 18:02 castaglia
+2009-10-02 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.
+ * 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-07-03 17:34 castaglia
+2009-10-01 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.
+ * doc/contrib/mod_ban.html: Forgot to mention MaxLoginAttempts as
+ one of the events handled by BanOnEvent.
- The cmd_rec.class field needed to be set on the SSH2 and SFTP
- cmd_recs used.
+2009-10-01 castaglia <castaglia>
-2009-07-03 16:02 castaglia
+ * doc/contrib/mod_quotatab.html: Clarify the string to which a
+ configured QuotaExcludeFilter is applied.
- * NEWS, contrib/mod_sftp/mod_sftp.c:
- Bug#3263 - Supplying optional SFTPRekey timeout parameter causes
- segmentation fault.
+2009-10-01 castaglia <castaglia>
-2009-07-01 11:18 castaglia
+ * NEWS, contrib/mod_quotatab.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Bug#3298 -
+ QuotaExcludeFilter directive ignored by mod_quotatab.
- * doc/contrib/mod_sql.html:
- Mention that --enable-openssl can be used to enable the OpenSSL
- SQLAuthType.
+2009-10-01 castaglia <castaglia>
-2009-06-30 20:22 castaglia
+ * doc/contrib/mod_quotatab.html: Typo.
- * include/version.h:
- Update the version.h file for the next RC release.
+2009-10-01 castaglia <castaglia>
-2009-06-30 19:50 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.
- * ChangeLog:
- Updated ChangeLog.
+2009-10-01 castaglia <castaglia>
-2009-06-30 19:50 castaglia
+ * locale/files.txt: Remove a few duplicates (caused by symlinks and
+ a working copy) from the list.
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Updating the files for the release of 1.3.3rc1.
+2009-10-01 castaglia <castaglia>
-2009-06-30 18:43 castaglia
+ * locale/Makefile.in, locale/files.txt: Updated locale/files.txt.
- * ChangeLog:
- Updated change log for 1.3.2a.
+2009-10-01 castaglia <castaglia>
-2009-06-30 18:41 castaglia
+ * contrib/mod_rewrite.c: Quell compiler warning.
- * contrib/dist/rpm/proftpd.spec:
- Update the version in the RPM spec file.
+2009-09-30 castaglia <castaglia>
-2009-06-30 18:38 castaglia
+ * doc/contrib/mod_sql_passwd.html: Provide an example config using a
+ salt file in the Usage section.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Update mod_tls unit tests to reflect behavior of newer
- Net::FTPSSL Perl module.
+2009-09-30 castaglia <castaglia>
-2009-06-30 18:29 castaglia
+ * contrib/mod_sql_passwd.c: Fix bad grammar in a comment.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Quell Perl interpreter warnings about redeclared variables.
+2009-09-30 castaglia <castaglia>
-2009-06-30 18:29 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Remove unit test for bug not fixed in this release. Quell Perl
- interpreter warnings about redeclared variables.
+2009-09-30 castaglia <castaglia>
-2009-06-30 18:17 castaglia
+ * doc/contrib/mod_sql_passwd.html: Document the SQLPasswordSaltFile
+ directive.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- More handling of spelling differences across systems.
+2009-09-30 castaglia <castaglia>
-2009-06-30 18:03 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.
- * tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm:
- Cleanup of these older tests.
+2009-09-30 castaglia <castaglia>
-2009-06-30 17:58 castaglia
+ * contrib/mod_tls.c: Make sure that mod_tls does not cleanup OpenSSL
+ if mod_sql_passwd is in use.
- * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm:
- Account for spelling differences among different systems.
+2009-09-29 castaglia <castaglia>
-2009-06-30 17:57 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.
- * 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-09-29 castaglia <castaglia>
-2009-06-30 17:49 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Update regression test
+ function names to match the names listed.
- * 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.)
+2009-09-29 castaglia <castaglia>
- The code was also not properly honoring the seldom-used
- "MaxLoginAttempts none".
+ * NEWS, src/fsio.c: Bug#3297 - Symlinks to directories which end in
+ trailing slashes may not be handled properly.
- Adjust MaxLoginAttempts unit tests accordingly.
+2009-09-29 castaglia <castaglia>
-2009-06-30 17:27 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/CWD.pm: Regression tests for
+ Bug#3297.
- * modules/mod_xfer.c:
- Backport of segfault fix when a data transfer is aborted by a
- client.
+2009-09-29 castaglia <castaglia>
-2009-06-30 17:27 castaglia
+ * doc/howto/Timestamps.html: Attempt to highlight that unexpected
+ timestamps in directory listings are affected by the TimesGMT
+ directive, not by chrooted processes.
- * 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-09-28 castaglia <castaglia>
-2009-06-30 17:26 castaglia
+ * NEWS, modules/mod_ls.c: Bug#3295 - proftpd segfaults when STAT is
+ used with ListOptions "-1".
- * modules/mod_xfer.c:
- Fix possible segfault (picked up by a unit test) when a data
- transfer is aborted.
+2009-09-28 castaglia <castaglia>
-2009-06-30 16:55 castaglia
+ * tests/t/commands/stat.t,
+ tests/t/lib/ProFTPD/Tests/Commands/STAT.pm, tests/tests.pl: Adding
+ unit tests for the STAT command.
- * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- Typo.
+2009-09-28 castaglia <castaglia>
-2009-06-30 16:45 castaglia
+ * modules/mod_auth.c: If we have trouble resolving the chroot path,
+ make sure we log the reason why.
- * 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-09-28 castaglia <castaglia>
-2009-06-30 16:43 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.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Typo.
+2009-09-28 castaglia <castaglia>
-2009-06-30 16:31 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.)
- * src/help.c:
- Actually make the code do what the comment (correctly) says it
- does.
+2009-09-28 castaglia <castaglia>
-2009-06-30 15:46 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.
- * RELEASE_NOTES:
- Updating release notes for 1.3.2a maintenance release.
+2009-09-26 castaglia <castaglia>
-2009-06-30 15:38 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.
- * RELEASE_NOTES:
- Mention the support for TimeoutLogin for the BanOnEvent
- directive.
+2009-09-25 castaglia <castaglia>
-2009-06-30 14:20 castaglia
+ * doc/contrib/mod_sftp.html: Mention the 3des-ctr cipher in the
+ SFTPCiphers doc.
- * 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-09-25 castaglia <castaglia>
-2009-06-30 14:05 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.
- * RELEASE_NOTES, doc/contrib/mod_sql.html:
- Working on documentation for new/changed features for the
- upcoming 1.3.3rc1 release.
+2009-09-23 castaglia <castaglia>
-2009-06-30 10:22 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.
- * NEWS, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c:
- Bug#3243 - Broken support for AllowOverride per user/group/class
- conditionals.
+2009-09-23 castaglia <castaglia>
-2009-06-30 10:09 castaglia
+ * RELEASE_NOTES: Mention custom HiddenStores prefixes in the release
+ notes.
- * modules/mod_cap.c:
- Use pr_module_exists() consistently; it more accurately describes
- the check that is being made.
+2009-09-23 castaglia <castaglia>
-2009-06-30 10:00 castaglia
+ * NEWS, modules/mod_xfer.c,
+ tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Bug#3294 - Support
+ configurable HiddenStores prefixes.
- * NEWS, doc/modules/mod_cap.html, modules/mod_cap.c:
- Bug#3257 - CAP_AUDIT_WRITE capability needed for some PAM
- modules.
+2009-09-22 castaglia <castaglia>
-2009-06-30 09:53 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.
- * NEWS, doc/modules/mod_cap.html, modules/mod_cap.c:
- Bug#3257 - CAP_AUDIT_WRITE capability needed for some PAM
- modules.
+2009-09-21 castaglia <castaglia>
-2009-06-30 09:48 castaglia
+ * src/inet.c: Pre-emptively update the code for Mac OSX 10.6
+ machines.
- * contrib/mod_sql_sqlite.c:
- Backport the SQLite fix for mod_sql_sqlite, so that if a new
- enough version of SQLite is used, mod_sql_sqlite will be able to
- support SQLLog directives in a chrooted session.
+2009-09-21 castaglia <castaglia>
-2009-06-30 09:44 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.
- * contrib/: mod_sql_mysql.c, mod_sql_odbc.c, mod_sql_postgres.c,
- mod_sql_sqlite.c:
- Bug#3259 - Adding second database connection causes segfault.
+2009-09-21 castaglia <castaglia>
-2009-06-30 09:42 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).
- * contrib/mod_sql_odbc.c:
- Fix some compiler warnings about shadowed variables in
- mod_sql_odbc.
+2009-09-18 castaglia <castaglia>
-2009-06-30 09:41 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Cut-n-pasto.
- * contrib/: mod_sql_mysql.c, mod_sql_odbc.c, mod_sql_postgres.c,
- 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-09-17 castaglia <castaglia>
-2009-06-30 09:04 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.
- * tests/: tests.pl, t/config/limit/subdirs.t,
- t/lib/ProFTPD/Tests/Config/Limit/SubDirectories.pm:
- Add unit test demonstrating how Bug#3077 can cause some
- unexpected <Limit> configurations, due to need to handle the
- X-variant commands.
+2009-09-17 castaglia <castaglia>
-2009-06-29 17:50 castaglia
+ * doc/howto/Chroot.html: Add FAQ about using multiple DefaultRoot
+ directives at the same time.
- * NEWS, contrib/mod_tls.c, modules/mod_xfer.c, 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-09-17 castaglia <castaglia>
- Bug#3258 - Log cluttered with "using sendfile capability"
- messages.
+ * 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.
- Bug#3261 - Badly formatted TLSRenegotiate directive causes
- proftpd to hang.
+2009-09-17 castaglia <castaglia>
-2009-06-29 17:33 castaglia
+ * contrib/mod_sftp/mod_sftp.h.in: Forgot to include the blowfish
+ header.
- * contrib/mod_tls.c:
- Fix a bug in mod_tls' parsing of the TLSRenegotiate directive, as
- per:
+2009-09-17 castaglia <castaglia>
- https://bugzilla.redhat.com/show_bug.cgi?id=476847
+ * doc/contrib/mod_sftp.html: Make sure that blowfish-ctr is listed
+ in the docs.
- No one was nice enough to report that bug in the ProFTPD
- Bugzilla, though.
+2009-09-17 castaglia <castaglia>
-2009-06-29 16:02 castaglia
+ * contrib/mod_sftp/crypto.c: Add support for the blowfish-ctr cipher
+ from RFC4344.
- * contrib/: mod_sql.c, mod_sql_postgres.c:
- Bug#3251 - mod_sql_postgres should be more verbose when failing
- the "Backend" SQLAuthType check.
+2009-09-17 castaglia <castaglia>
-2009-06-29 13:36 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add support for issuing the
+ HOST command in the testsuite client.
- * contrib/mod_sql_mysql.c:
- Stylistic nits; no functional change.
+2009-09-16 castaglia <castaglia>
-2009-06-29 10:18 castaglia
+ * contrib/mod_sftp/cipher.c, contrib/mod_sftp/keys.c,
+ contrib/mod_sftp/mac.c: Clean up some minor compiler warnings.
- * NEWS, modules/mod_xfer.c:
- Bug#3258 - Log cluttered with "using sendfile capability"
- messages.
+2009-09-16 castaglia <castaglia>
-2009-06-29 10:10 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.)
- * 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-09-16 castaglia <castaglia>
-2009-06-28 22:31 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.
- * 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.
+2009-09-16 castaglia <castaglia>
- Add an accompanying unit test for the chrooted behavior of
- mod_sql_sqlite.
+ * src/privs.c: Make the "SETUP PRIVS" log message be at DEBUG9, like
+ the other debug log messages generated when manipulating privs.
-2009-06-25 13:35 castaglia
+2009-09-16 castaglia <castaglia>
- * doc/howto/SQL.html:
- Replace the URLs to castaglia.org with URLs to proftpd.org.
+ * 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-06-24 16:44 castaglia
+2009-09-16 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.
+ * contrib/mod_sftp/crypto.c: Pedantic comment typo correction.
-2009-06-23 16:15 castaglia
+2009-09-16 castaglia <castaglia>
- * RELEASE_NOTES:
- Update the release notes; I still need to flesh out the
- descriptions more before doing the 1.3.3rc1 release.
+ * configure: Updated configure.
-2009-06-22 13:54 castaglia
+2009-09-16 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.
+ * 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-06-22 11:10 castaglia
+2009-09-16 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.
+ * 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-06-22 10:54 castaglia
+2009-09-15 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.
+ * modules/mod_core.c, src/dirtree.c, src/modules.c: Various
+ stylistic cleanups generated while pursuing strange segfault.
-2009-06-22 10:48 castaglia
+2009-09-15 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.
+ * 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.
- 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-09-15 castaglia <castaglia>
-2009-06-22 10:44 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.
- * src/fsio.c:
- Include utimes(2), futimes(3) in the debug output for a
- registered FS object.
+2009-09-15 castaglia <castaglia>
-2009-06-22 09:54 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.
- * doc/howto/Limit.html:
- Mention that the parsing rules for AllowUser pertain to DenyUser
- as well.
+2009-09-14 castaglia <castaglia>
-2009-06-21 12:19 castaglia
+ * src/session.c: When marking a session as idle, make sure that
+ session.user is non-NULL; if not, using "(authenticating)".
- * NEWS, contrib/mod_tls.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Bug#3247 - "TLSRequired auth" and "TLSOptions AllowPerUser" are
- incompatible.
+2009-09-14 castaglia <castaglia>
-2009-06-21 12:14 castaglia
+ * src/dirtree.c, tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm:
+ Set the errno appropriately for implicit denies.
- * 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-09-14 castaglia <castaglia>
-2009-06-21 12:05 castaglia
+ * doc/howto/Filters.html: Add example config for using AllowFilter
+ to only allow specific filename extensions in a directory.
- * 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-09-14 castaglia <castaglia>
-2009-06-21 11:57 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.
- * tests/: tests.pl, t/config/ftpaccess/empty.t,
- t/lib/ProFTPD/Tests/Config/FTPAccess/Empty.pm:
- Add unit test for an empty .ftpaccess file, for
- investigating/regressing Bug#3240.
+2009-09-12 castaglia <castaglia>
-2009-06-20 19:24 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.
- * 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-09-09 castaglia <castaglia>
-2009-06-20 14:49 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.
- * 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-09-09 castaglia <castaglia>
-2009-06-20 13:33 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Looks like newer
+ libssh2 versions have addressed some issues, though not all.
- * 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-09-09 castaglia <castaglia>
-2009-06-20 11:42 castaglia
+ * doc/contrib/mod_sql_passwd.html: Be sure to list the additional
+ SQLAuthTypes provided by mod_sql_passwd.
- * contrib/mod_sftp/mod_sftp.c:
- When mod_sftp handles a restart, it needs to clear any
- passphrases held in memory.
+2009-09-09 castaglia <castaglia>
-2009-06-19 17:54 castaglia
+ * RELEASE_NOTES, doc/contrib/mod_sql_passwd.html: Adding
+ documentation for mod_sql_passwd.
- * 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-09-09 castaglia <castaglia>
-2009-06-19 17:29 castaglia
+ * doc/contrib/mod_sql.html: Adding the required notice for using
+ OpenSSL.
- * 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-09-09 castaglia <castaglia>
-2009-06-19 17:15 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.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_cap.pm,
- t/modules/mod_cap.t:
- Start on unit tests for the mod_cap module.
+2009-09-09 castaglia <castaglia>
-2009-06-19 11:55 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.
- * tests/: tests.pl, t/config/allowoverwrite.t,
- t/lib/ProFTPD/Tests/Config/AllowOverwrite.pm: Add unit tests for
- the AllowOverwrite directive.
+2009-09-08 castaglia <castaglia>
-2009-06-18 17:32 castaglia
+ * contrib/mod_sftp/auth.c: Add trace logging of the list of SSH2
+ authentication methods that are offered to the client.
- * 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-09-08 castaglia <castaglia>
-2009-06-10 14:48 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.
- * configure:
- Updated configure.
+2009-09-08 castaglia <castaglia>
-2009-06-10 14:44 castaglia
+ * modules/mod_auth.c: Clear the auth-only module list after
+ authentication has succeeded.
- * 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-09-08 castaglia <castaglia>
-2009-06-10 09:18 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.
- * NEWS, contrib/mod_ban.c, doc/contrib/mod_ban.html:
- Bug#3249 - mod_ban support for TimeoutLogin.
+2009-09-08 castaglia <castaglia>
-2009-06-09 09:07 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).
- * 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-09-08 castaglia <castaglia>
-2009-06-09 09:05 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.
- * modules/mod_core.c:
- Add debug logging when the SITE CHMOD/CHGRP commands are denied
- because of <Limit> sections in the configuration.
+2009-09-08 castaglia <castaglia>
-2009-06-03 11:42 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).
- * contrib/mod_sftp/auth.c:
- Make sure that any configured SFTPDisplayBanner is only sent once
- to the connecting client.
+2009-09-08 castaglia <castaglia>
-2009-06-03 10:28 castaglia
+ * modules/mod_lang.c: Skip the "." and ".." directory entries when
+ scanning the LangPath directory.
- * contrib/mod_sftp/keys.c:
- Add a missing PRIVS_RELINQUISH call. Adjust spacing in that same
- area, so that the formatting is consistent.
+2009-09-07 castaglia <castaglia>
-2009-05-28 13:13 castaglia
+ * NEWS: Forgot to update the NEWS file.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add test case to make sure that RootLogin works properly in
- mod_sftp.
+2009-09-07 castaglia <castaglia>
-2009-05-27 16:10 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Fix typo in mod_rewrite PORT rewriting config.
+2009-09-07 castaglia <castaglia>
-2009-05-27 16:09 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.
- * doc/howto/Rewrite.html:
- Fix typo/omission in Rewrite howto.
+2009-09-07 castaglia <castaglia>
-2009-05-27 11:31 castaglia
+ * contrib/mod_quotatab.c: Quell a few compiler printf warnings by
+ using explicit typecasts.
- * 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-09-07 castaglia <castaglia>
-2009-05-27 09:14 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.
- * contrib/dist/rpm/proftpd.logrotate:
- Bug#3245 - proftpd.logrotate assumes location of `kill' command.
- Simply rely on PATH to find the appropriate location.
+2009-09-07 castaglia <castaglia>
-2009-05-22 14:15 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).
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Add test showing that a file with leading whitespace in its name
- can be downloaded.
+2009-09-05 castaglia <castaglia>
-2009-05-22 10:35 castaglia
+ * src/encode.c: Need to set the LC_NUMERIC locale back to "C" after
+ calling setlocale() using LC_ALL.
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Yet more redundant variables removed.
+2009-09-05 castaglia <castaglia>
-2009-05-22 10:34 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.
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm:
- More redundant variables removed.
+2009-09-04 castaglia <castaglia>
-2009-05-22 10:28 castaglia
+ * doc/howto/ConfigFile.html: Specifically mention that proftpd
+ switches to the UID/GID of the logged-in user.
- * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm:
- Remove another redundant variable declaration.
+2009-09-04 castaglia <castaglia>
-2009-05-22 10:22 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'.
- * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm:
- Remove redundant variable declaration.
+2009-09-04 castaglia <castaglia>
-2009-05-20 14:00 castaglia
+ * src/encode.c: Fix segfault found by the mod_lang unit tests.
- * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm:
- Add unit test demonstrating that upload a file whose name begins
- with whitespace is possible.
+2009-09-04 castaglia <castaglia>
- Update all tests to use 'tests.log' as the logfile name.
+ * RELEASE_NOTES: Update release notes with note about scoreboard
+ format change; need to expand on this at release time, of course.
-2009-05-19 14:38 castaglia
+2009-09-04 castaglia <castaglia>
- * tests/t/: lib/ProFTPD/Tests/Modules/mod_ifsession.pm,
- modules/mod_ifsession.t:
- Start working on unit tests for mod_ifsession's functionality.
- This first test is inspired/used for verifying Bug#3243.
+ * 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-05-19 14:36 castaglia
+2009-09-02 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.
+ * 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-05-19 09:23 castaglia
+2009-09-02 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.
+ * 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-05-18 14:16 castaglia
+2009-09-02 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.
+ * 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-05-18 09:11 castaglia
+2009-09-01 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.
+ * NEWS, modules/mod_xfer.c: Bug#3287 - MaxTransfersPerHost,
+ MaxTransfersPerUser directives not supported properly.
-2009-05-14 17:29 castaglia
+2009-09-01 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.
+ * doc/contrib/mod_sftp.html: Add SFTP FAQ about CBC cipher mode
+ attacks.
-2009-05-14 17:19 castaglia
+2009-09-01 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.
+ * 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-05-14 14:51 castaglia
+2009-08-31 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c, 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.
+ * doc/howto/Controls.html: Updating URLs and such in Controls howto.
-2009-05-14 14:46 castaglia
+2009-08-31 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c, scp.c: [no log message]
+ * 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-05-14 12:22 castaglia
+2009-08-31 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.
+ * contrib/mod_sftp/packet.c: Handle a few more types of errors that
+ we might encounter while reading from a socket.
-2009-05-14 12:21 castaglia
+2009-08-30 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- This adds support for HiddenStores, DeleteAbortedStores, and
- 'incomplete' TransferLog entries to SCP.
+ * src/session.c: Getting ready to support the "publickey" SSH2
+ subsystem (RFC4819).
-2009-05-14 12:18 castaglia
+2009-08-28 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Cut-n-paste error.
+ * NEWS, RELEASE_NOTES, src/dirtree.c: Bug#3279 - .ftpaccess
+ configurations not merged properly with existing configuration.
-2009-05-14 11:48 castaglia
+2009-08-28 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Add a trace message for renaming of a HiddenStores file.
+ * 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-05-14 09:56 castaglia
+2009-08-28 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- HiddenStores is now supported by mod_sftp.
+ * 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-05-14 09:48 castaglia
+2009-08-19 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Added unit tests for 'incomplete' TransferLog entries via SFTP.
+ * 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>
-2009-05-14 09:44 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for
+ DefaultChdir config in mod_sftp.
- * 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).
+2009-08-19 castaglia <castaglia>
- 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).
+ * 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-05-13 16:19 castaglia
+2009-08-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Added regression tests for HiddenStores and DeleteAbortedStores
- via SFTP uploads.
+ * 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-05-13 16:18 castaglia
+2009-08-15 castaglia <castaglia>
- * contrib/mod_sftp/: channel.c, channel.h, fxp.c, mod_sftp.c:
- Added support for the HiddenStores and DeleteAbortedStores
- directives for SFTP.
+ * src/dirtree.c: Sigh; fix the spacing in these HideFiles log
+ messages again.
-2009-05-13 11:13 castaglia
+2009-08-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add tests for TransferLog entries generated from
- downloading/uploading via SCP.
+ * 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-05-13 09:41 castaglia
+2009-08-14 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.
+ * 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-05-13 09:41 castaglia
+2009-08-14 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.
+ * src/dirtree.c: Fix the spacing of the log messages about negated
+ (or not) HideFiles directives.
-2009-05-13 09:31 castaglia
+2009-08-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.
+ * 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-05-11 11:58 castaglia
+2009-08-13 castaglia <castaglia>
- * RELEASE_NOTES:
- Warn of the change to the values in the service-name field of the
- TransferLog.
+ * NEWS, contrib/mod_radius.c, modules/mod_xfer.c, src/data.c:
+ Bug#3278 - Aborted data transfers not reflected in RADIUS
+ accounting.
-2009-05-11 11:07 castaglia
+2009-08-13 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.
+ * 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-05-11 10:33 castaglia
+2009-08-13 castaglia <castaglia>
- * tests/Makefile.in:
- Make sure the privs.o code is linked into the API tests.
+ * contrib/mod_radius.c: Fix compiler warnings about signedness
+ mismatches.
-2009-05-11 10:18 castaglia
+2009-08-12 castaglia <castaglia>
- * tests/Makefile.in:
- Separate the API and the running tests into two separate make
- targets.
+ * 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-05-11 09:59 castaglia
+2009-08-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add regression test for the TransferLog delete file entries for
- SFTP.
+ * 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-05-11 09:58 castaglia
+2009-08-12 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Make sure that deleting a file via SFTP generates the proper
- TransferLog entry.
+ * 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-05-09 10:02 castaglia
+2009-08-11 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.
+ * doc/howto/Authentication.html: Orthographic correction.
-2009-05-08 16:14 castaglia
+2009-08-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Added unit test for the TransferLog generated by downloading a
- file via sftp.
+ * NEWS: Had the bug number wrong; should be Bug#3252, not Bug#3272.
-2009-05-08 16:13 castaglia
+2009-08-10 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".
+ * NEWS, src/fsio.c: Bug#3272 - %F/%f Display variables can report
+ wrong size on 64-bit systems.
-2009-05-06 10:38 castaglia
+2009-08-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.
+ * contrib/mod_sftp/rfc4716.c: Quibble, quibble.
-2009-05-04 16:31 castaglia
+2009-08-06 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.
+ * contrib/mod_sftp/rfc4716.c: Thinko.
-2009-05-03 13:13 castaglia
+2009-08-06 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Fix the handling of recursive uploads of directories via SCP; it
- was completely broken.
+ * contrib/mod_tls.c: Add a function to get a printable version of a
+ suspicious dNSName value; related to Bug#3275.
-2009-05-03 12:18 castaglia
+2009-08-06 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.
+ * 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-05-02 16:15 castaglia
+2009-08-05 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.
+ * 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-05-02 11:48 castaglia
+2009-08-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Added unit tests for the 'OpenSSL' SQLAuthType.
+ * src/encode.c: [no log message]
-2009-05-01 08:47 castaglia
+2009-08-05 castaglia <castaglia>
- * doc/howto/ListOptions.html:
- Mention the new -B ListOption.
+ * modules/mod_lang.c: Try to make for better, more informative error
+ messages if we fail to set the locale.
-2009-05-01 08:42 castaglia
+2009-08-05 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.
+ * src/data.c: We handle signals in pr_data_xfer() when writiing; we
+ should do the same when reading.
-2009-04-30 14:18 castaglia
+2009-08-05 castaglia <castaglia>
- * src/main.c:
- Add trace logging for when the 'requires_auth' check fails.
+ * modules/mod_lang.c: Declaring the curr_locale variable in the
+ right scope helps to make the code actually compile properly.
-2009-04-30 14:10 castaglia
+2009-08-05 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.
+ * 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-04-30 11:54 castaglia
+2009-08-04 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).
+ * doc/contrib/mod_sql.html: Document the new "noReconnect" SQLOption
+ added as part of Bug#3270.
-2009-04-29 22:50 castaglia
+2009-08-04 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.
+ * 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-04-29 16:32 castaglia
+2009-08-04 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.
+ * NEWS, contrib/mod_sftp/utf8.c, src/encode.c: Bug#3272 - Avoid
+ encoding if to/from charsets are the same.
-2009-04-29 11:14 castaglia
+2009-08-04 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.
+ * NEWS, src/support.c: Bug#3274 - Timestamp formatting in
+ TransferLog needs padded day-of-month.
-2009-04-29 09:09 castaglia
+2009-08-02 castaglia <castaglia>
- * modules/mod_ls.c:
- Quell compiler warnings about unused variables when --enable-nls
- is used.
+ * 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-04-28 15:53 castaglia
+2009-08-02 castaglia <castaglia>
- * include/version.h:
- Update the version number and string, and mark this as a
- maintenance branch/version.
+ * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Report on the
+ database client and server versions, when known.
-2009-04-28 15:50 castaglia
+2009-07-30 castaglia <castaglia>
- * NEWS, locale/Makefile.in, locale/bg_BG.po, locale/fr_FR.po,
- locale/ko_KR.po:
- Added Bulgarian, French, Korean translations.
+ * contrib/mod_sftp/fxp.c: Fix compilation error on AIX5.
-2009-04-28 15:44 castaglia
+2009-07-29 castaglia <castaglia>
- * NEWS, src/ctrls.c, src/event.c:
- Backport fix for Bug#3179.
+ * 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-04-28 15:33 castaglia
+2009-07-29 castaglia <castaglia>
- * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c,
- src/main.c:
- Backport fix for Bug#3221.
+ * tests/t/lib/ProFTPD/Tests/Commands/LIST.pm: Add unit test for LIST
+ command for Bug#3254.
-2009-04-28 15:26 castaglia
+2009-07-28 castaglia <castaglia>
- * doc/contrib/mod_exec.html:
- Include the %w variable in the mentioned list of supported
- variables.
+ * 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-04-28 15:24 castaglia
+2009-07-27 castaglia <castaglia>
- * doc/contrib/: mod_exec.html, mod_shaper.html:
- Update the mod_exec and mod_shaper docs.
+ * 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-04-28 15:22 castaglia
+2009-07-27 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.
+ * contrib/mod_sftp/channel.c: Missed one change from the weekend's
+ mod_sftp hacking.
-2009-04-28 15:20 castaglia
+2009-07-27 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Backport fix for Bug#3203.
+ * 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-04-28 15:18 castaglia
+2009-07-26 castaglia <castaglia>
- * NEWS, README.modules, RELEASE_NOTES, contrib/mod_exec.c,
- doc/contrib/mod_exec.html:
- Added mod_exec to contrib modules.
+ * 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-04-28 14:52 castaglia
+2009-07-24 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Backport fix for Bug#3196.
+ * 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-04-28 14:49 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, contrib/mod_wrap2_sql.c:
- Backport fix for Bug#3215.
+ * 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-04-28 14:34 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Backport fix for Bug#3234.
+ * 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-04-28 14:17 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Backported fix for Bug#3190.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add unit
+ test for handling of DELE in mod_quotatab.
-2009-04-28 14:11 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Backport fixes for Bug#3184.
+ * doc/howto/Quotas.html: Add another quota FAQ.
-2009-04-28 14:04 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, modules/mod_auth.c, src/main.c:
- Backport fix for Bug#3183.
+ * 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-04-28 13:22 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, src/prxs.in:
- Backported fix for Bug#3188.
+ * NEWS, contrib/mod_rewrite.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Bug#3269 -
+ RewriteCondition OR/ornext flag does not work.
-2009-04-28 13:10 castaglia
+2009-07-23 castaglia <castaglia>
- * NEWS, contrib/mod_sql_postgres.c:
- Backported fix for Bug#3176.
+ * 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-04-28 12:58 castaglia
+2009-07-22 castaglia <castaglia>
- * NEWS, contrib/mod_sql_postgres.c:
- Backported fix for Bug#3123.
+ * 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-04-28 12:45 castaglia
+2009-07-22 castaglia <castaglia>
- * src/main.c:
- Backporting bugfixes:
+ * modules/mod_delay.c: Add paranoid check that an array pointer is
+ non-null before we use it.
- + Handle restart parsing errors better.
- + Clear the signal bitflag before processing the signal, not
- after. This
- was causing some crashes due to endless loops during a
- restart.
+2009-07-21 castaglia <castaglia>
-2009-04-28 12:41 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.
- * src/auth.c:
- Backport the fix for the first UID/GID lookup failing to return
- the name.
+2009-07-21 castaglia <castaglia>
-2009-04-28 11:35 castaglia
+ * contrib/mod_sql.c: Make sure that mod_sql logs the corresponding
+ "leaving func" message in some cases; it wasn't doing so.
- * modules/mod_core.c, modules/mod_ls.c, src/dirtree.c:
- Backporting bugfixes from trunk; these particular changes do not
- have an associated bug number.
+2009-07-21 castaglia <castaglia>
-2009-04-27 23:34 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.
- * doc/howto/TLS.html:
- Add TLS FAQ about whether FTPS protects both control and data
- connections (it does).
+2009-07-21 castaglia <castaglia>
-2009-04-27 23:26 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).
- * doc/contrib/mod_sftp.html:
- Added SFTP FAQ about having an SFTP-only proftpd.
+2009-07-21 castaglia <castaglia>
-2009-04-27 23:22 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.
- * tests/tests.pl:
- Run the DisplayQuit tests as part of the testsuite.
+2009-07-21 castaglia <castaglia>
-2009-04-27 23:21 castaglia
+ * contrib/dist/rpm/proftpd.spec: Attempt to add support for mod_sftp
+ to the .spec file.
- * tests/t/lib/ProFTPD/Tests/Config/DisplayQuit.pm:
- Adding tests for the DisplayQuit directive.
+2009-07-21 castaglia <castaglia>
-2009-04-27 16:10 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.
- * NEWS, README.modules, RELEASE_NOTES, contrib/mod_shaper.c,
- doc/contrib/mod_shaper.html:
- Add mod_shaper to the contrib/ modules.
+2009-07-21 castaglia <castaglia>
-2009-04-25 14:25 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.
- * 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-07-21 castaglia <castaglia>
-2009-04-25 14:14 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.
- * 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-07-21 castaglia <castaglia>
-2009-04-24 13:48 castaglia
+ * contrib/mod_sftp/fxp.c: More explanatory comments, for my future
+ reference.
- * modules/mod_core.c:
- Fix another unsafe use of sizeof() on a pointer.
+2009-07-21 castaglia <castaglia>
-2009-04-24 13:45 castaglia
+ * contrib/mod_sftp/fxp.c: Add comment describing the implementation
+ of the RENAME handler, and how it is technically nonconformant in
+ particular cases.
- * src/dirtree.c:
- Fix unsafe sizeof(); it was being used on a pointer, not on a
- static buffer.
+2009-07-21 castaglia <castaglia>
-2009-04-24 10:38 castaglia
+ * contrib/mod_sftp/fxp.c: Still trying to properly map the V5 OPEN
+ flags/bitmasks to open(2) flags.
- * contrib/mod_sftp/fxp.c:
- Increase the allocated buffer size for a READDIR response, and
- try to be smarter about the buffer size.
+2009-07-20 castaglia <castaglia>
-2009-04-24 10:18 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.
- * 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-07-20 castaglia <castaglia>
-2009-04-24 09:55 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.
- * 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-07-20 castaglia <castaglia>
-2009-04-24 09:48 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.
- * contrib/mod_sftp/auth.c:
- No need to acquire root privs explicitly before dropping them.
+2009-07-20 castaglia <castaglia>
-2009-04-24 09:44 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.
- * 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.
+2009-07-20 castaglia <castaglia>
- 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.
+ * doc/contrib/mod_sftp.html: Removed duplicated text.
- Minor stylistic cleanup is also part of this change.
+2009-07-20 castaglia <castaglia>
-2009-04-24 08:46 castaglia
+ * contrib/mod_sftp/keys.c: Update the handling of the
+ SFTPPassPhraseProvider config with tweaks found from working on
+ mod_exec.
- * 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-07-20 castaglia <castaglia>
-2009-04-23 17:31 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.
- * configure:
- Updated configure.
+2009-07-20 castaglia <castaglia>
-2009-04-23 17:24 castaglia
+ * NEWS, src/auth.c: Bug#2070 - AuthAliasOnly off in <Global> section
+ kills anonymous logins.
- * configure.in:
- Automatically set the PR_USE_OPENSSL define if mod_sftp is
- requested, just as we do when mod_tls is requested.
+2009-07-20 castaglia <castaglia>
-2009-04-23 16:57 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.
- * contrib/mod_ctrls_admin.c:
- Quell a compiler warning about a declared but not used variable.
+2009-07-20 castaglia <castaglia>
-2009-04-23 15:02 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.
- * contrib/mod_quotatab.c:
- The mod_quotatab module really should report when it fails to
- open the configured QuotaLog for any reason.
+2009-07-19 castaglia <castaglia>
-2009-04-22 22:40 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.
- * 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-07-19 castaglia <castaglia>
-2009-04-22 22:26 castaglia
+ * tests/t/config/authusingalias.t,
+ tests/t/lib/ProFTPD/Tests/Config/AuthUsingAlias.pm, tests/tests.pl:
+ Add unit tests for the AuthUsingAlias directive.
- * tests/t/lib/ProFTPD/Tests/Commands/: LIST.pm, NLST.pm:
- Update the unit tests for Bug#3032 to only run if NLS support is
- not enabled.
+2009-07-19 castaglia <castaglia>
-2009-04-22 21:40 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.
- * modules/mod_ls.c:
- Forgot to add the NLS conditional to the handling of NLST as
- well.
+2009-07-19 castaglia <castaglia>
-2009-04-22 21:24 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.
- * 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-07-19 castaglia <castaglia>
-2009-04-22 20:25 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.
- * NEWS, src/inet.c:
- Bug#3237 - "error setting IPV6_V6ONLY: Protocol not available"
- message filling up log file.
+2009-07-19 castaglia <castaglia>
- The change was to not try to set the IPV6_V6ONLY socket option on
- an IPv4-mapped IPv6 address.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit test for
+ the ExecOnRestart directive.
-2009-04-21 16:45 castaglia
+2009-07-19 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Quell more compiler warnings about possbily using variables
- before they have been initialized.
+ * contrib/mod_exec.c: Add handling of signals to some while() loops.
-2009-04-21 16:31 castaglia
+2009-07-18 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.
+ * 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-04-21 16:30 castaglia
+2009-07-18 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Actually use the lock type given by the caller. Ouch.
+ * doc/contrib/mod_exec.html: Fix typos, update mod_exec doc to point
+ to local copy of Logging howto.
-2009-04-21 16:20 castaglia
+2009-07-18 castaglia <castaglia>
- * contrib/mod_sftp/kex.c:
- Handle "SFTPCompression off" properly.
+ * tests/t/config/useglobbing.t,
+ tests/t/lib/ProFTPD/Tests/Config/UseGlobbing.pm, tests/tests.pl: Add
+ unit test for the UseGlobbing directive.
-2009-04-21 16:01 castaglia
+2009-07-18 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- More changes to the QuotaLock lock operation handling, trying to
- avoid spinning in a loop too tightly.
+ * tests/t/config/userpassword.t,
+ tests/t/lib/ProFTPD/Tests/Config/UserPassword.pm, tests/tests.pl:
+ Add unit test for the UserPassword directive.
-2009-04-21 15:21 castaglia
+2009-07-18 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Make sure that the variables are initialised, when handling
- REALPATH requests, before a permissions check.
+ * doc/howto/TLS.html: Update the TLS howto FAQ regarding implicit
+ FTPS to reflect the addition of implicit FTPS support (in Bug#3266).
-2009-04-21 14:59 castaglia
+2009-07-18 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Retry the lock operation on the QuotaLock for EAGAIN as well.
+ * 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-04-20 20:26 castaglia
+2009-07-17 castaglia <castaglia>
- * tests/: tests.pl, t/config/displayfiletransfer.t,
- t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm:
- Add unit tests for the DisplayFileTransfer directive.
+ * 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-04-20 15:11 castaglia
+2009-07-17 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.
+ * modules/mod_ctrls.c: If ControlsEngine is set to 'off', then we
+ should not try to listen on the ControlsSocket.
-2009-04-20 09:55 castaglia
+2009-07-17 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Document the sftpUTF8ProtocolVersion SFTPClientMatch attribute.
+ * 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-04-20 09:52 castaglia
+2009-07-16 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c, fxp.h, interop.c, 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.
+ * configure: Forgot to check in the updated configure script.
-2009-04-17 16:19 castaglia
+2009-07-16 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Clarify when the various SSH2 authentication methods are offered.
- Fix a typo.
+ * doc/howto/Umask.html: Add a FAQ to the Umask howto explaining why
+ proftpd does not allow uploading of files with execute permissions.
-2009-04-17 11:51 castaglia
+2009-07-16 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.
+ * 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-04-16 17:51 castaglia
+2009-07-16 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).
+ * tests/t/lib/ProFTPD/Tests/Config/CreateHome.pm: Add unit test for
+ CreateHome's 'dirmode' parameter.
-2009-04-15 14:03 castaglia
+2009-07-15 castaglia <castaglia>
- * doc/howto/Filters.html:
- Add the example PathAllowFilter that only allows printable
- characters.
+ * 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-04-15 13:57 castaglia
+2009-07-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.
+ * contrib/mod_sftp/fxp.c: Use the SFTP session's pool, rather than
+ the Response API pool, for adding our status codes.
-2009-04-15 11:20 castaglia
+2009-07-15 castaglia <castaglia>
- * doc/howto/Filters.html:
- Give an example of using PathDenyFilter to prevent filenames
- which contain non-printable characters.
+ * 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-04-15 11:15 castaglia
+2009-07-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.
+ * contrib/mod_sftp/fxp.c: Simplify the obtaining of proper open(2)
+ flags when handling version 5 (and higher) SFTP OPEN requests.
-2009-04-14 11:53 castaglia
+2009-07-15 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.
+ * 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-04-14 11:47 castaglia
+2009-07-15 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.)
+ * 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-04-14 11:45 castaglia
+2009-07-14 castaglia <castaglia>
- * NEWS, modules/mod_delay.c:
- Bug#3230 - Differentiate among protocol connections in
- DelayTable.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit test for
+ the %s LogFormat variable in ExtendedLogs for SFTP requests.
-2009-04-14 11:39 castaglia
+2009-07-14 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Update the list of config directives that are not supported by
- mod_sftp.
+ * 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-04-14 11:38 castaglia
+2009-07-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.
+ * 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-04-13 11:49 castaglia
+2009-07-14 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-04-13 11:47 castaglia
+2009-07-09 castaglia <castaglia>
- * configure.in:
- Add a check for --with-modules=mod_dso, and warn the admin to use
- --enable-dso instead.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit tests for
+ ExecOnError.
-2009-04-10 08:58 castaglia
+2009-07-09 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-04-10 08:55 castaglia
+2009-07-09 castaglia <castaglia>
- * configure.in:
- Typo.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Add unit test for
+ ExecOnExit.
-2009-04-09 08:59 castaglia
+2009-07-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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_exec.pm: Adding more
+ mod_exec unit tests, including one for the "%{...}" variable
+ support.
-2009-04-09 08:44 castaglia
+2009-07-09 castaglia <castaglia>
- * modules/mod_facts.c:
- Clean up some of the logging when opendir(3) fails when handling
- MLSD.
+ * 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-04-09 08:33 castaglia
+2009-07-09 castaglia <castaglia>
- * src/timers.c:
- Add trace logging when timers are reset.
+ * contrib/mod_exec.c: Fix off-by-one error which caused mod_exec to
+ log all but the last parameter when calling exec.
-2009-04-08 22:06 castaglia
+2009-07-09 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c,
- tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- mod_sftp now honors DirFakeMode.
+ * 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-04-08 20:48 castaglia
+2009-07-08 castaglia <castaglia>
- * tests/: tests.pl, t/config/dirfakemode.t,
- t/lib/ProFTPD/Tests/Config/DirFakeMode.pm:
- Add unit test for the DirFakeMode directive.
+ * lib/sstrncpy.c: Catch a possible null pointer exception in
+ sstrncpy(), if the src pointer provided by the caller is null.
-2009-04-08 20:27 castaglia
+2009-07-08 castaglia <castaglia>
- * contrib/mod_sftp/: fxp.c, scp.c:
- Set the session.xfer.direction variable when using SFTP or SCP.
+ * 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-04-08 11:56 castaglia
+2009-07-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).
+ * 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-04-07 19:48 castaglia
+2009-07-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.
+ * 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-04-07 18:44 castaglia
+2009-07-06 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Directory/: Limits.pm, Umask.pm:
+ * NEWS, modules/mod_auth.c: Bug#2758 - ProFTPD doesn't always pay
+ attention to AccessDenyMsg.
- Fix more unit tests to run properly as root.
+2009-07-06 castaglia <castaglia>
-2009-04-07 10:15 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.
- * contrib/mod_tls.c:
- Typo/bug.
+2009-07-06 castaglia <castaglia>
-2009-04-07 08:42 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.
- * src/ftpdctl.c:
- Include the privs.h header so as to avoid compiler warnings about
- the pr_privs* functions not being previously declared.
+2009-07-06 castaglia <castaglia>
-2009-04-07 08:41 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.
- * contrib/mod_ctrls_admin.c:
- Use the proper number of arguments for pr_ctrls_log(), and avoid
- pedantic compiler warnings/errors.
+2009-07-05 castaglia <castaglia>
-2009-04-06 17:11 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.
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm:
- Another set of tests to clean up so that they run properly when
- root.
+2009-07-05 castaglia <castaglia>
-2009-04-06 17:03 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.
- * tests/t/lib/ProFTPD/Tests/Config/: HideFiles.pm, Limit/XMKD.pm:
- More cleanup of unit tests that don't work properly when run as
- root.
+2009-07-05 castaglia <castaglia>
-2009-04-06 17:03 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).
- * modules/mod_core.c:
- Fix bug introduced by the patch for Bug#2067. Style cleanup
- there, too.
+2009-07-04 castaglia <castaglia>
-2009-04-06 16:18 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.
- * tests/t/lib/ProFTPD/Tests/Config/: Order.pm, PathAllowFilter.pm,
- PathDenyFilter.pm, ServerIdent.pm, TimeoutIdle.pm:
- Fixup more test cases so run properly when run as root.
+2009-07-04 castaglia <castaglia>
-2009-04-06 16:08 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.
- * 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-07-04 castaglia <castaglia>
-2009-04-06 15:47 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.
- * 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-07-03 castaglia <castaglia>
-2009-04-06 15:41 castaglia
+ * NEWS, contrib/mod_sftp/mod_sftp.c: Bug#3263 - Supplying optional
+ SFTPRekey timeout parameter causes segmentation fault.
- * doc/howto/Tracing.html, src/trace.c:
- Add the "privs" logging channel to the default list of channels.
+2009-07-01 castaglia <castaglia>
-2009-04-06 15:32 castaglia
+ * doc/contrib/mod_sql.html: Mention that --enable-openssl can be
+ used to enable the OpenSSL SQLAuthType.
- * 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.
+2009-07-01 castaglia <castaglia>
- 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.
+ * include/version.h: Update the version.h file for the next RC
+ release.
-2009-04-06 15:28 castaglia
+2009-07-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logging/ExtendedLog.pm,
- Modules/mod_ctrls.pm:
- Fix a few more tests which fail when run with root privs.
+ * ChangeLog: Updated ChangeLog.
-2009-04-06 15:22 castaglia
+2009-07-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/: MFF.pm, 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.
+ * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
+ include/version.h: Updating the files for the release of 1.3.3rc1.
-2009-04-06 15:13 castaglia
+2009-07-01 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logins.pm, Commands/ABOR.pm,
- Commands/FEAT.pm, Commands/HELP.pm, Commands/MFF.pm,
- Commands/MFMT.pm, Config/Directory/Umask.pm,
- Logging/ExtendedLog.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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Update mod_tls unit
+ tests to reflect behavior of newer Net::FTPSSL Perl module.
-2009-04-05 10:56 castaglia
+2009-07-01 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Quell Perl
+ interpreter warnings about redeclared variables.
-2009-04-05 10:47 castaglia
+2009-07-01 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: More
+ handling of spelling differences across systems.
-2009-04-05 09:34 castaglia
+2009-07-01 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-03 21:42 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-03 21:38 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm: Cleanup of these
+ older tests.
- * NEWS, contrib/mod_quotatab.c, contrib/mod_quotatab.h,
- contrib/mod_quotatab_sql.c:
- Bug#3086 - mod_quotatab write locking is ineffective.
+2009-07-01 castaglia <castaglia>
-2009-04-03 16:04 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm: Account for
+ spelling differences among different systems.
- * contrib/: mod_ban.c, mod_tls.c, mod_sftp/scp.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.
+2009-07-01 castaglia <castaglia>
- 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.
+ * 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-04-03 14:23 castaglia
+2009-07-01 castaglia <castaglia>
- * doc/howto/Compiling.html:
- Mention the --with-lastlog configure option, and use an unordered
- list for the main/popular configure options.
+ * 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-04-03 14:03 castaglia
+2009-07-01 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.
+ * 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-04-03 10:09 castaglia
+2009-07-01 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.
+ * modules/mod_xfer.c: Fix possible segfault (picked up by a unit
+ test) when a data transfer is aborted.
-2009-04-03 07:30 castaglia
+2009-06-30 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Fix compilation errors when HAVE_LOGINRESTRICTIONS (AIX platform,
- mostly) is defined.
+ * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Typo.
-2009-04-01 16:09 castaglia
+2009-06-30 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3233 - Dynamic config causes many copies of static configs to
- be merged.
+ * 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-04-01 15:41 castaglia
+2009-06-30 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.
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Typo.
-2009-04-01 15:36 castaglia
+2009-06-30 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#3234 - SSL connections can cause 100% CPU usage.
+ * src/help.c: Actually make the code do what the comment (correctly)
+ says it does.
- 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-06-30 castaglia <castaglia>
-2009-03-31 07:45 castaglia
+ * RELEASE_NOTES: Mention the support for TimeoutLogin for the
+ BanOnEvent directive.
- * 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-06-30 castaglia <castaglia>
-2009-03-30 23:34 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.
- * 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.
+2009-06-30 castaglia <castaglia>
- Hopefully this does not cause other strange library/link
- order-related issues.
+ * RELEASE_NOTES, doc/contrib/mod_sql.html: Working on documentation
+ for new/changed features for the upcoming 1.3.3rc1 release.
-2009-03-30 20:27 castaglia
+2009-06-30 castaglia <castaglia>
- * modules/mod_lang.c:
- Missed a dir_check() call which needs to pass the cmd_rec
- pointer, not just the command name.
+ * NEWS, modules/mod_auth.c, modules/mod_core.c, src/dirtree.c:
+ Bug#3243 - Broken support for AllowOverride per user/group/class
+ conditionals.
-2009-03-30 16:16 castaglia
+2009-06-30 castaglia <castaglia>
- * src/log.c:
- Add some sane errno values if pr_log_openfile() fails in some
- cases.
+ * modules/mod_cap.c: Use pr_module_exists() consistently; it more
+ accurately describes the check that is being made.
-2009-03-30 11:43 castaglia
+2009-06-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.
+ * NEWS, doc/modules/mod_cap.html, modules/mod_cap.c: Bug#3257 -
+ CAP_AUDIT_WRITE capability needed for some PAM modules.
- 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-06-30 castaglia <castaglia>
-2009-03-30 11:31 castaglia
+ * contrib/mod_sql_odbc.c: Fix some compiler warnings about shadowed
+ variables in mod_sql_odbc.
- * doc/howto/Rewrite.html:
- Another good mod_rewrite example.
+2009-06-30 castaglia <castaglia>
-2009-03-28 17:51 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.
- * NEWS, contrib/mod_wrap.c, contrib/mod_wrap2/mod_wrap2.c:
- Bug#3209 - mod_wrap2 should support the 'spawn' feature (or
- equivalent) of tcpwrappers.
+2009-06-30 castaglia <castaglia>
- 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.
+ * 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-03-28 17:39 castaglia
+2009-06-30 castaglia <castaglia>
- * doc/contrib/mod_wrap.html:
- Add mod_wrap FAQ about Bugs #2629, #2787, #3209.
+ * 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-03-28 12:26 castaglia
+2009-06-29 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.
+ * 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-03-27 11:44 castaglia
+2009-06-29 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- More futzing with the path resolution for SCP uploading.
+ * contrib/mod_sql_mysql.c: Stylistic nits; no functional change.
-2009-03-27 10:26 castaglia
+2009-06-29 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.
+ * NEWS, modules/mod_xfer.c: Bug#3258 - Log cluttered with "using
+ sendfile capability" messages.
-2009-03-27 10:23 castaglia
+2009-06-29 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-03-27 10:15 castaglia
+2009-06-29 castaglia <castaglia>
- * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c:
- Bug#3231 - Use getgrset(3) on AIX to emulate getgrouplist(3).
+ * 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-03-26 13:20 castaglia
+2009-06-25 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.
+ * doc/howto/SQL.html: Replace the URLs to castaglia.org with URLs to
+ proftpd.org.
-2009-03-26 09:44 castaglia
+2009-06-24 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Typo.
+ * 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-03-25 22:18 castaglia
+2009-06-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Another note about use of the %{protocol} variable.
+ * RELEASE_NOTES: Update the release notes; I still need to flesh out
+ the descriptions more before doing the 1.3.3rc1 release.
-2009-03-25 18:47 castaglia
+2009-06-22 castaglia <castaglia>
- * contrib/mod_sftp/scp.c:
- Fix SCP uploading to handle an OpenSSH scp client invocations
- like:
+ * 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.
- scp <file> <addr>:
- scp <file> <addr>:.
+2009-06-22 castaglia <castaglia>
- 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".
+ * 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-03-25 09:02 castaglia
+2009-06-22 castaglia <castaglia>
- * doc/howto/SQL.html:
- Mention that the discussion about userset/usersetfast holds true
- for groupset/groupsetfast as well.
+ * 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-03-24 23:37 castaglia
+2009-06-22 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.)
+ * 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-03-24 23:08 castaglia
+2009-06-22 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.
+ * src/fsio.c: Include utimes(2), futimes(3) in the debug output for
+ a registered FS object.
-2009-03-24 23:05 castaglia
+2009-06-22 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.
+ * doc/howto/Limit.html: Mention that the parsing rules for AllowUser
+ pertain to DenyUser as well.
-2009-03-24 22:41 castaglia
+2009-06-21 castaglia <castaglia>
- * doc/howto/SQL.html:
- Add a SQL FAQ about the 'userset' and 'usersetfast'
- SQLAuthenticate options.
+ * NEWS, contrib/mod_tls.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm: Bug#3247 -
+ "TLSRequired auth" and "TLSOptions AllowPerUser" are incompatible.
-2009-03-24 22:30 castaglia
+2009-06-21 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.
+ * 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-03-24 22:03 castaglia
+2009-06-21 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.
+ * 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.
- Fixing this required supporting a couple of other SQLNamedQuery
- names, optional, to handle the 'userset' and 'usersetfast' cases.
+2009-06-21 castaglia <castaglia>
-2009-03-24 10:50 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.
- * RELEASE_NOTES:
- Don't forget to mention the new %{protocol} variable in the
- release notes.
+2009-06-21 castaglia <castaglia>
-2009-03-23 23:23 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.
- * NEWS, contrib/mod_quotatab.c, contrib/mod_ratio.c,
- contrib/mod_site_misc.c, contrib/mod_tls.c,
- contrib/mod_sftp/auth.c, contrib/mod_sftp/fxp.c,
- contrib/mod_sftp/scp.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/tests.pl,
- tests/t/config/limit/filters.t,
- tests/t/lib/ProFTPD/Tests/Config/Limit/Filters.pm:
- Bug#2067 - Allow/Deny Filters should be supported in the <Limit>
- context.
-
-2009-03-23 14:27 castaglia
+2009-06-20 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.
+ * 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.
- 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-06-20 castaglia <castaglia>
-2009-03-22 19:04 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.
- * doc/contrib/mod_rewrite.html:
- Update the mod_rewrite docs to mention the Bug#3028 fix.
+2009-06-20 castaglia <castaglia>
-2009-03-22 18:59 castaglia
+ * contrib/mod_sftp/mod_sftp.c: When mod_sftp handles a restart, it
+ needs to clear any passphrases held in memory.
- * 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-06-20 castaglia <castaglia>
-2009-03-22 18:15 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.
- * 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.
+2009-06-20 castaglia <castaglia>
- 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.
+ * 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-03-22 18:12 castaglia
+2009-06-20 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.
+ * 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.
- Add a unit test using LIST -C, also for such tests.
+2009-06-19 castaglia <castaglia>
-2009-03-22 11:46 castaglia
+ * tests/t/config/allowoverwrite.t,
+ tests/t/lib/ProFTPD/Tests/Config/AllowOverwrite.pm, tests/tests.pl:
+ Add unit tests for the AllowOverwrite directive.
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm:
- More work on the <Directory>-related performance tests.
+2009-06-19 castaglia <castaglia>
-2009-03-21 21:47 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.
- * src/: cmd.c, 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.)
+2009-06-10 castaglia <castaglia>
- 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.
+ * configure: Updated configure.
-2009-03-21 21:13 castaglia
+2009-06-10 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.
+ * 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-03-21 20:31 castaglia
+2009-06-10 castaglia <castaglia>
- * src/main.c:
- Quell compiler warning.
+ * NEWS, contrib/mod_ban.c, doc/contrib/mod_ban.html: Bug#3249 -
+ mod_ban support for TimeoutLogin.
-2009-03-21 18:38 castaglia
+2009-06-09 castaglia <castaglia>
- * doc/howto/Globbing.html:
- Updating the Globbing howto to mention the tunable name
- changes/additions.
+ * 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-03-21 18:30 castaglia
+2009-06-09 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.
+ * modules/mod_core.c: Add debug logging when the SITE CHMOD/CHGRP
+ commands are denied because of <Limit> sections in the
+ configuration.
-2009-03-21 18:27 castaglia
+2009-06-03 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Commands/LIST.pm,
- t/lib/ProFTPD/Tests/Commands/NLST.pm:
- 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.
+ * contrib/mod_sftp/auth.c: Make sure that any configured
+ SFTPDisplayBanner is only sent once to the connecting client.
-2009-03-21 18:11 castaglia
+2009-06-03 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).
+ * contrib/mod_sftp/keys.c: Add a missing PRIVS_RELINQUISH call.
+ Adjust spacing in that same area, so that the formatting is
+ consistent.
- 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-05-28 castaglia <castaglia>
-2009-03-21 16:08 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add test case to
+ make sure that RootLogin works properly in mod_sftp.
- * 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-05-27 castaglia <castaglia>
-2009-03-20 21:01 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Fix typo in
+ mod_rewrite PORT rewriting config.
- * src/pool.c:
- Optimize for the most common case; this is frequently called
- function.
+2009-05-27 castaglia <castaglia>
-2009-03-20 16:03 castaglia
+ * doc/howto/Rewrite.html: Fix typo/omission in Rewrite howto.
- * 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-05-27 castaglia <castaglia>
-2009-03-20 16:02 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.
- * contrib/mod_sftp/: disconnect.c, disconnect.h:
- Clean up the disconnect trace log message a little when the
- __FUNC__ (or equivalent) macro is not supported by the compiler.
+2009-05-27 castaglia <castaglia>
-2009-03-20 12:01 castaglia
+ * contrib/dist/rpm/proftpd.logrotate: Bug#3245 - proftpd.logrotate
+ assumes location of `kill' command. Simply rely on PATH to find the
+ appropriate location.
- * 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-05-22 castaglia <castaglia>
-2009-03-20 09:58 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Add test showing that
+ a file with leading whitespace in its name can be downloaded.
- * doc/howto/ASCII.html:
- Add a FAQ about why the ASCII mode restriction was placed on the
- SIZE command.
+2009-05-22 castaglia <castaglia>
-2009-03-19 17:03 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Yet more
+ redundant variables removed.
- * modules/mod_core.c:
- Make sure that any stat cache is cleared when answering a SIZE
- command.
+2009-05-22 castaglia <castaglia>
-2009-03-19 10:09 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: More redundant
+ variables removed.
- * contrib/mod_sftp/configure:
- Updated mod_sftp's configure.
+2009-05-22 castaglia <castaglia>
-2009-03-19 10:02 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm: Remove another
+ redundant variable declaration.
- * contrib/mod_sftp/: configure.in, crypto.c, 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-05-22 castaglia <castaglia>
-2009-03-18 23:04 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/PORT.pm: Remove redundant
+ variable declaration.
- * contrib/mod_sftp/: auth-hostbased.c, auth-kbdint.c,
- auth-password.c, auth-publickey.c, auth.c, 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-05-20 castaglia <castaglia>
-2009-03-18 22:51 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.
- * 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-05-19 castaglia <castaglia>
-2009-03-18 22:39 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add unit tests for the SCP+mod_rewrite cases.
+2009-05-19 castaglia <castaglia>
-2009-03-18 22:39 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.
- * contrib/mod_sftp/: channel.c, fxp.c, scp.c:
- Make sure that mod_rewrite can be applied to SCP commands as
- well.
+2009-05-19 castaglia <castaglia>
-2009-03-18 22:00 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.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Unit tests validating the use of mod_rewrite to rewrite SFTP
- requests.
+2009-05-18 castaglia <castaglia>
-2009-03-18 21:58 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.
- * contrib/mod_rewrite.c:
- Add a comment about why there's a test for a SYMLINK command in
- mod_rewrite.
+2009-05-18 castaglia <castaglia>
-2009-03-18 21:57 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.
- * contrib/: mod_rewrite.c, 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-05-15 castaglia <castaglia>
-2009-03-18 18:40 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.
- * doc/howto/Compiling.html:
- Match the example configure options to their surrounding text.
+2009-05-15 castaglia <castaglia>
-2009-03-18 16:48 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.
- * doc/contrib/mod_rewrite.html:
- Updated mod_rewrite docs to cover the %{ENV:var} syntax.
+2009-05-14 castaglia <castaglia>
-2009-03-18 16:32 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.
- * 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-05-14 castaglia <castaglia>
-2009-03-18 11:08 castaglia
+ * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: [no log message]
- * 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-05-14 castaglia <castaglia>
-2009-03-18 09:03 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.
- * NEWS, contrib/mod_ban.c:
- Bug#3187 - Inconsistent mod_ban logging and display when using
- "BanEngine off" in an <IfClass> configuration.
+2009-05-14 castaglia <castaglia>
-2009-03-18 09:01 castaglia
+ * contrib/mod_sftp/scp.c: This adds support for HiddenStores,
+ DeleteAbortedStores, and 'incomplete' TransferLog entries to SCP.
- * 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-05-14 castaglia <castaglia>
-2009-03-17 22:34 castaglia
+ * contrib/mod_sftp/fxp.c: Cut-n-paste error.
- * 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-05-14 castaglia <castaglia>
-2009-03-17 17:23 castaglia
+ * contrib/mod_sftp/fxp.c: Add a trace message for renaming of a
+ HiddenStores file.
- * 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-05-14 castaglia <castaglia>
-2009-03-17 16:47 castaglia
+ * doc/contrib/mod_sftp.html: HiddenStores is now supported by
+ mod_sftp.
- * doc/howto/Limit.html:
- Update the Limit docs to mention MLSD and MLST.
+2009-05-14 castaglia <castaglia>
-2009-03-16 23:09 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added unit tests
+ for 'incomplete' TransferLog entries via SFTP.
- * 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-05-14 castaglia <castaglia>
-2009-03-16 22:36 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).
- * 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-05-13 castaglia <castaglia>
-2009-03-16 17:16 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added regression
+ tests for HiddenStores and DeleteAbortedStores via SFTP uploads.
- * NEWS, RELEASE_NOTES, src/bindings.c:
- Bug#2680 - Add support for <VirtualHost 0.0.0.0>.
+2009-05-13 castaglia <castaglia>
-2009-03-16 16:26 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.
- * 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-05-13 castaglia <castaglia>
-2009-03-16 09:47 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add tests for
+ TransferLog entries generated from downloading/uploading via SCP.
- * 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-05-13 castaglia <castaglia>
-2009-03-14 10:59 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.
- * 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-05-13 castaglia <castaglia>
-2009-03-13 13:38 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.
- * doc/howto/Quotas.html:
- Another common cause of quota tallies not being updated.
+2009-05-13 castaglia <castaglia>
-2009-03-13 08:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm: Add regression
+ test for the 14-digit version of the SITE UTIME command.
- * 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-05-11 castaglia <castaglia>
-2009-03-12 15:20 castaglia
+ * RELEASE_NOTES: Warn of the change to the values in the
+ service-name field of the TransferLog.
- * configure:
- Updated configure.
+2009-05-11 castaglia <castaglia>
-2009-03-12 15:17 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.
- * configure.in:
- Guard against empty --with-FOO arguments; these lead to strange
- build failures such as:
+2009-05-11 castaglia <castaglia>
- configure: error: source file './modules/d_ident.c' cannot be
- found -- aborting
+ * tests/Makefile.in: Make sure the privs.o code is linked into the
+ API tests.
-2009-03-12 10:43 castaglia
+2009-05-11 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.
+ * tests/Makefile.in: Separate the API and the running tests into two
+ separate make targets.
-2009-03-12 10:23 castaglia
+2009-05-11 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Updating the proftpd.spec to match Bug#2613.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add regression test
+ for the TransferLog delete file entries for SFTP.
-2009-03-12 10:13 castaglia
+2009-05-11 castaglia <castaglia>
- * configure:
- Updated configure.
+ * contrib/mod_sftp/fxp.c: Make sure that deleting a file via SFTP
+ generates the proper TransferLog entry.
-2009-03-12 10:11 castaglia
+2009-05-09 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, configure.in:
- Bug#2613 - Configure script should not append '/proftpd' to the
- --localstatedir.
+ * 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-03-11 20:36 castaglia
+2009-05-08 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Added unit test for
+ the TransferLog generated by downloading a file via sftp.
-2009-03-11 19:57 castaglia
+2009-05-08 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.
+ * 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-03-11 19:55 castaglia
+2009-05-06 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.
+ * 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-03-11 09:34 castaglia
+2009-05-04 castaglia <castaglia>
- * contrib/mod_tls.c:
- Stylistic cleanups in tls_verify_crl().
+ * 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-03-11 09:33 castaglia
+2009-05-03 castaglia <castaglia>
- * tests/t/: etc/modules/mod_tls/ca-crl.pem,
- etc/modules/mod_tls/client-cert.pem,
- 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.)
+ * contrib/mod_sftp/scp.c: Fix the handling of recursive uploads of
+ directories via SCP; it was completely broken.
-2009-03-11 07:59 castaglia
+2009-05-03 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).
+ * 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-03-10 21:52 castaglia
+2009-05-02 castaglia <castaglia>
- * doc/contrib/mod_wrap2_sql.html:
- Fix the mod_wrap2_sql documentation, thanks to Szymon Juraszczyk.
+ * 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-03-10 21:50 castaglia
+2009-05-02 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Added unit
+ tests for the 'OpenSSL' SQLAuthType.
-2009-03-10 16:26 castaglia
+2009-05-01 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.
+ * doc/howto/ListOptions.html: Mention the new -B ListOption.
-2009-03-10 09:59 castaglia
+2009-05-01 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.
+ * 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-03-10 00:00 castaglia
+2009-04-30 castaglia <castaglia>
- * RELEASE_NOTES, doc/contrib/mod_tls_shmcache.html:
- Added docs for mod_tls_shmcache.html.
+ * src/main.c: Add trace logging for when the 'requires_auth' check
+ fails.
-2009-03-09 23:53 castaglia
+2009-04-30 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.
+ * 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-03-09 23:52 castaglia
+2009-04-30 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Typo.
+ * 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-03-09 23:28 castaglia
+2009-04-30 castaglia <castaglia>
- * RELEASE_NOTES, doc/contrib/mod_tls.html:
- Add docs for the NoSessionReuseRequired TLSOption added in
- Bug#3210.
+ * 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-03-09 23:26 castaglia
+2009-04-29 castaglia <castaglia>
- * contrib/mod_tls.c:
- Typo.
+ * 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-03-09 23:17 castaglia
+2009-04-29 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#3210 - Data transfers protected by SSL/TLS should reuse the
- control connection SSL session.
+ * 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-03-09 23:06 castaglia
+2009-04-29 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention the new directives and module. Fuller descriptions will
- be added later.
+ * modules/mod_ls.c: Quell compiler warnings about unused variables
+ when --enable-nls is used.
-2009-03-09 23:04 castaglia
+2009-04-28 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Update the mod_tls docs to include TLSControlsACLs,
- TLSSessionCache, and the new mod_tls ftpdctl actions.
+ * doc/contrib/mod_exec.html: Include the %w variable in the
+ mentioned list of supported variables.
-2009-03-09 23:02 castaglia
+2009-04-28 castaglia <castaglia>
- * contrib/mod_tls.c:
- Include the name of the external session cache in the 'clear' and
- 'remove' action outputs.
+ * doc/contrib/mod_exec.html, doc/contrib/mod_shaper.html: Update the
+ mod_exec and mod_shaper docs.
-2009-03-09 22:55 castaglia
+2009-04-28 castaglia <castaglia>
- * contrib/mod_tls_shmcache.c:
- Add some identifying information about the module itself in the
- status output.
+ * contrib/mod_exec.c: The mod_exec module was not registering for
+ the proper event name for handling the unloading of the module.
-2009-03-09 22:28 castaglia
+2009-04-28 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).
+ * NEWS, README.modules, RELEASE_NOTES, contrib/mod_exec.c,
+ doc/contrib/mod_exec.html: Added mod_exec to contrib modules.
-2009-03-09 22:13 castaglia
+2009-04-28 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.
+ * doc/howto/TLS.html: Add TLS FAQ about whether FTPS protects both
+ control and data connections (it does).
-2009-03-09 22:10 castaglia
+2009-04-28 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c, contrib/mod_tls.h:
- Bug#3207 - Support for SSL/TLS session caching across
- processes/machines.
+ * doc/contrib/mod_sftp.html: Added SFTP FAQ about having an
+ SFTP-only proftpd.
-2009-03-09 20:11 castaglia
+2009-04-28 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).
+ * tests/tests.pl: Run the DisplayQuit tests as part of the
+ testsuite.
-2009-03-09 19:47 castaglia
+2009-04-28 castaglia <castaglia>
- * doc/howto/Limit.html:
- Add another example <Limit> config, for a read-only account.
+ * tests/t/lib/ProFTPD/Tests/Config/DisplayQuit.pm: Adding tests for
+ the DisplayQuit directive.
-2009-03-09 16:04 castaglia
+2009-04-27 castaglia <castaglia>
- * contrib/mod_ban.c:
- Pedantic ANSI C compilers might complain about the trailing
- comma.
+ * NEWS, README.modules, RELEASE_NOTES, contrib/mod_shaper.c,
+ doc/contrib/mod_shaper.html: Add mod_shaper to the contrib/ modules.
-2009-03-09 10:26 castaglia
+2009-04-25 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).
+ * 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-03-09 09:26 castaglia
+2009-04-25 castaglia <castaglia>
- * doc/howto/Limit.html:
- Example <Limit> config of making a directory undeletable, but
- allowing its subdirectories to be deletable.
+ * 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-03-09 09:07 castaglia
+2009-04-24 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.
+ * modules/mod_core.c: Fix another unsafe use of sizeof() on a
+ pointer.
-2009-03-08 18:43 castaglia
+2009-04-24 castaglia <castaglia>
- * contrib/mod_tls.c:
- Typo.
+ * src/dirtree.c: Fix unsafe sizeof(); it was being used on a
+ pointer, not on a static buffer.
-2009-03-08 18:29 castaglia
+2009-04-24 castaglia <castaglia>
- * contrib/mod_tls.c:
- If the EnableDiags TLSOption is enabled, log some SSL session
- stats when the session ends.
+ * contrib/mod_sftp/fxp.c: Increase the allocated buffer size for a
+ READDIR response, and try to be smarter about the buffer size.
-2009-03-07 19:16 castaglia
+2009-04-24 castaglia <castaglia>
- * contrib/mod_ban.c:
- Typo.
+ * 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-03-06 22:12 castaglia
+2009-04-24 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.
+ * 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-03-06 19:49 castaglia
+2009-04-24 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.
+ * contrib/mod_sftp/auth.c: No need to acquire root privs explicitly
+ before dropping them.
-2009-03-06 18:00 castaglia
+2009-04-24 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.
+ * 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-03-06 16:25 castaglia
+2009-04-24 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec:
- Bug#2985 - Newest .spec file requires relatively current version
- of RPM.
+ * 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-03-06 12:10 castaglia
+2009-04-24 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.
+ * configure: Updated configure.
-2009-03-05 15:17 castaglia
+2009-04-24 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.
+ * configure.in: Automatically set the PR_USE_OPENSSL define if
+ mod_sftp is requested, just as we do when mod_tls is requested.
-2009-03-05 15:16 castaglia
+2009-04-23 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- The mod_sftp modules DOES support UseLastlog now.
+ * contrib/mod_ctrls_admin.c: Quell a compiler warning about a
+ declared but not used variable.
-2009-03-05 15:15 castaglia
+2009-04-23 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.
+ * contrib/mod_quotatab.c: The mod_quotatab module really should
+ report when it fails to open the configured QuotaLog for any reason.
- Also log to the "fileperms" log channel if pr_fsio_readlink()
- fails when handling a READLINK request.
+2009-04-23 castaglia <castaglia>
-2009-03-05 13:29 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.
- * src/dirtree.c:
- Minor stylistic cleanups.
+2009-04-23 castaglia <castaglia>
-2009-03-05 13:18 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.
- * 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).
+2009-04-23 castaglia <castaglia>
- 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'.
+ * modules/mod_ls.c: Forgot to add the NLS conditional to the
+ handling of NLST as well.
-2009-03-05 13:13 castaglia
+2009-04-23 castaglia <castaglia>
- * RELEASE_NOTES:
- Updated release notes with info about RewriteHome.
+ * 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-03-05 13:09 castaglia
+2009-04-23 castaglia <castaglia>
- * tests/: tests.pl, t/config/rewritehome.t,
- t/lib/ProFTPD/Tests/Config/RewriteHome.pm:
- Added unit test for the new RewriteHome configuration directive.
+ * 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-03-05 10:56 castaglia
+2009-04-21 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c, include/auth.h, modules/mod_auth.c,
- src/auth.c:
- Bug#3167 - Support rewriting of home directories.
+ * contrib/mod_sftp/fxp.c: Quell more compiler warnings about
+ possbily using variables before they have been initialized.
-2009-03-04 23:08 castaglia
+2009-04-21 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.
+ * 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-03-04 22:01 castaglia
+2009-04-21 castaglia <castaglia>
- * contrib/mod_rewrite.c, contrib/mod_wrap2_file.c,
- contrib/mod_sftp/rfc4716.c, include/fsio.h, src/display.c,
- src/fsio.c, modules/mod_facts.c, src/netio.c, src/parser.c,
- modules/mod_ls.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.
+ * contrib/mod_quotatab.c: Actually use the lock type given by the
+ caller. Ouch.
-2009-03-04 21:24 castaglia
+2009-04-21 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.
+ * contrib/mod_sftp/kex.c: Handle "SFTPCompression off" properly.
-2009-03-04 20:57 castaglia
+2009-04-21 castaglia <castaglia>
- * modules/mod_auth_pam.c:
- I finally got tired of seeing this compiler warning:
+ * contrib/mod_quotatab.c: More changes to the QuotaLock lock
+ operation handling, trying to avoid spinning in a loop too tightly.
- mod_auth_pam.c:88: warning: function declaration isn't a
- prototype
+2009-04-21 castaglia <castaglia>
- 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.
+ * contrib/mod_sftp/fxp.c: Make sure that the variables are
+ initialised, when handling REALPATH requests, before a permissions
+ check.
-2009-03-04 16:33 castaglia
+2009-04-21 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.
+ * contrib/mod_quotatab.c: Retry the lock operation on the QuotaLock
+ for EAGAIN as well.
- 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-04-21 castaglia <castaglia>
-2009-03-04 12:15 castaglia
+ * tests/t/config/displayfiletransfer.t,
+ tests/t/lib/ProFTPD/Tests/Config/DisplayFileTransfer.pm,
+ tests/tests.pl: Add unit tests for the DisplayFileTransfer
+ directive.
- * src/dirtree.c:
- Corrected stale/misleading comment.
+2009-04-20 castaglia <castaglia>
-2009-03-04 10:44 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.
- * 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-04-20 castaglia <castaglia>
-2009-03-04 10:30 castaglia
+ * doc/contrib/mod_sftp.html: Document the sftpUTF8ProtocolVersion
+ SFTPClientMatch attribute.
- * contrib/mod_sftp/interop.c:
- Include the SSH2 client version info in the TraceLog.
+2009-04-20 castaglia <castaglia>
-2009-03-04 10:10 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.
- * contrib/mod_sftp/keys.c:
- Add trace logging for channel "ssh2", level 17, of reasons why
- key mismatches occur.
+2009-04-17 castaglia <castaglia>
-2009-03-04 09:42 castaglia
+ * doc/contrib/mod_sftp.html: Clarify when the various SSH2
+ authentication methods are offered. Fix a typo.
- * 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-04-17 castaglia <castaglia>
-2009-03-04 09:41 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.
- * contrib/mod_sftp/: crypto.c, kex.c, mac.c:
- Make mod_sftp compile properly when dealing with older versions
- of OpenSSL (e.g. OpenSSL versions older than 0.9.7).
+2009-04-17 castaglia <castaglia>
-2009-03-04 08:21 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).
- * NEWS, src/prxs.in:
- Bug#3204 - Better support for installation and libs in prxs.
+2009-04-15 castaglia <castaglia>
-2009-03-03 22:47 castaglia
+ * doc/howto/Filters.html: Add the example PathAllowFilter that only
+ allows printable characters.
- * contrib/mod_sftp/: channel.c, fxp.c:
- Include more info in the dispatched cmd_recs, e.g. channel IDs.
+2009-04-15 castaglia <castaglia>
-2009-03-03 22:11 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.
- * doc/howto/ServerType.html:
- Add a real xinetd config example to the ServerType howto, rather
- than having the broken UserGuide link.
+2009-04-15 castaglia <castaglia>
-2009-03-03 22:06 castaglia
+ * doc/howto/Filters.html: Give an example of using PathDenyFilter to
+ prevent filenames which contain non-printable characters.
- * 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-04-15 castaglia <castaglia>
-2009-03-03 16:57 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.
- * doc/modules/mod_delay.html:
- Add some mod_delay FAQs.
+2009-04-14 castaglia <castaglia>
-2009-03-03 15:41 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.
- * NEWS, contrib/mod_sql.c:
- Bug#3203 - Missing SQL backend modules can lead to null pointer
- segfault in mod_sql.
+2009-04-14 castaglia <castaglia>
-2009-03-03 10:29 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.)
- * 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-04-14 castaglia <castaglia>
-2009-03-03 09:06 castaglia
+ * NEWS, modules/mod_delay.c: Bug#3230 - Differentiate among protocol
+ connections in DelayTable.
- * contrib/mod_wrap2/mod_wrap2.c:
- String formatting fixed, as per Bug#3197.
+2009-04-14 castaglia <castaglia>
-2009-03-02 23:59 castaglia
+ * doc/contrib/mod_sftp.html: Update the list of config directives
+ that are not supported by mod_sftp.
- * 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-04-14 castaglia <castaglia>
-2009-03-02 23:59 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.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3196 - mod_quotatab does not honor last group in supplemental
- group list.
+2009-04-13 castaglia <castaglia>
-2009-03-02 23:47 castaglia
+ * configure: Updated configure.
- * tests/: tests.pl,
- t/etc/modules/mod_quotatab_file/ftpquota.limittab,
- t/etc/modules/mod_quotatab_file/ftpquota.tallytab,
- t/lib/ProFTPD/Tests/Modules/mod_quotatab_file.pm,
- t/modules/mod_quotatab_file.t:
- Add a unit test for mod_quotatab_file.
+2009-04-13 castaglia <castaglia>
-2009-03-02 15:48 castaglia
+ * configure.in: Add a check for --with-modules=mod_dso, and warn the
+ admin to use --enable-dso instead.
- * 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-04-10 castaglia <castaglia>
-2009-03-02 09:56 castaglia
+ * configure: Updated configure.
- * include/support.h:
- Remove the declaration of the now-obsolete set_protocol_name()
- function.
+2009-04-10 castaglia <castaglia>
-2009-03-02 09:22 castaglia
+ * configure.in: Typo.
- * RELEASE_NOTES:
- Mention the Korean translation.
+2009-04-09 castaglia <castaglia>
-2009-03-02 09:21 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.
- * locale/: Makefile.in, ko_KR.po:
- Bug#3194 - Add Korean translation.
+2009-04-09 castaglia <castaglia>
-2009-03-02 09:21 castaglia
+ * modules/mod_facts.c: Clean up some of the logging when opendir(3)
+ fails when handling MLSD.
- * locale/ko_KR.po: file ko_KR.po was added on branch B1_3_2 on
- 2009-04-28 22:50:22 +0000
+2009-04-09 castaglia <castaglia>
-2009-02-27 14:32 castaglia
+ * src/timers.c: Add trace logging when timers are reset.
- * contrib/mod_sftp/kex.c:
- Copy the client-sent language lists out of the kex pool, not out
- of the packet pool.
+2009-04-09 castaglia <castaglia>
-2009-02-26 16:23 castaglia
+ * contrib/mod_sftp/fxp.c,
+ tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: mod_sftp now honors
+ DirFakeMode.
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm:
- Add unit tests for the one-hostkey-only mod_sftp configurations.
+2009-04-09 castaglia <castaglia>
-2009-02-26 16:22 castaglia
+ * tests/t/config/dirfakemode.t,
+ tests/t/lib/ProFTPD/Tests/Config/DirFakeMode.pm, tests/tests.pl: Add
+ unit test for the DirFakeMode directive.
- * doc/contrib/mod_sftp.html:
- Update the mod_sftp docs to mention that only one SFTPHostKey is
- now required.
+2009-04-09 castaglia <castaglia>
-2009-02-26 16:20 castaglia
+ * contrib/mod_sftp/fxp.c, contrib/mod_sftp/scp.c: Set the
+ session.xfer.direction variable when using SFTP or SCP.
- * contrib/mod_sftp/: kex.c, keys.c, keys.h, 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.
+2009-04-08 castaglia <castaglia>
- 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.
+ * 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-02-26 15:14 castaglia
+2009-04-08 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.
+ * 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-02-26 14:35 castaglia
+2009-04-08 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.
+ * 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-02-26 14:04 castaglia
+2009-04-07 castaglia <castaglia>
- * locale/fr_FR.po:
- Updated French translation from the translator.
+ * contrib/mod_tls.c: Typo/bug.
-2009-02-26 14:04 castaglia
+2009-04-07 castaglia <castaglia>
- * locale/fr_FR.po: file fr_FR.po was added on branch B1_3_2 on
- 2009-04-28 22:50:22 +0000
+ * src/ftpdctl.c: Include the privs.h header so as to avoid compiler
+ warnings about the pr_privs* functions not being previously
+ declared.
-2009-02-26 13:43 castaglia
+2009-04-07 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.
+ * contrib/mod_ctrls_admin.c: Use the proper number of arguments for
+ pr_ctrls_log(), and avoid pedantic compiler warnings/errors.
-2009-02-26 12:31 castaglia
+2009-04-07 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.
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Another set of
+ tests to clean up so that they run properly when root.
-2009-02-21 18:49 castaglia
+2009-04-07 castaglia <castaglia>
- * contrib/mod_sftp/fxp.c:
- Update mod_sftp so that it too uses the new
- pr_filter_allow_path() function.
+ * 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-02-21 18:48 castaglia
+2009-04-07 castaglia <castaglia>
- * contrib/mod_sftp/utf8.c:
- Fix the compilation of mod_sftp when --enable-nls is NOT used.
+ * modules/mod_core.c: Fix bug introduced by the patch for Bug#2067.
+ Style cleanup there, too.
-2009-02-21 17:51 castaglia
+2009-04-06 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.
+ * 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-02-21 16:28 castaglia
+2009-04-06 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.
+ * 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.
- 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-04-06 castaglia <castaglia>
-2009-02-21 16:24 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.
- * utils/.cvsignore:
- Ignore the generated ftpscrub.8 man page in CVS commands.
+2009-04-06 castaglia <castaglia>
-2009-02-21 16:22 castaglia
+ * doc/howto/Tracing.html, src/trace.c: Add the "privs" logging
+ channel to the default list of channels.
- * src/log.c:
- Implement pr_log_writefile() so that it calls
- pr_log_vwritefile(), just like the other module logging functions
- do.
+2009-04-06 castaglia <castaglia>
-2009-02-21 16:09 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.
- * tests/: tests.pl, t/config/pathallowfilter.t,
- t/config/pathdenyfilter.t,
- t/lib/ProFTPD/Tests/Config/PathAllowFilter.pm,
- t/lib/ProFTPD/Tests/Config/PathDenyFilter.pm:
- Added unit tests for the PathAllowFilter and PathDenyFilter
- directives. Will be adding more tests for this directives,
- involving other FTP commands, soon.
+2009-04-06 castaglia <castaglia>
-2009-02-20 22:19 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.
- * 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?
+2009-04-06 castaglia <castaglia>
- 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.
+ * 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.
- 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-04-06 castaglia <castaglia>
-2009-02-20 22:14 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.
- * 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-04-05 castaglia <castaglia>
-2009-02-20 22:11 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.
- * .cvsignore:
- Add the new ftpscrub utility to the cvs ignore list.
+2009-04-05 castaglia <castaglia>
-2009-02-20 17:13 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.
- * contrib/mod_tls.c:
- Be a little paranoid, and keep X509_NAME_oneline() from using the
- entire buffer; reserve one character for NUL.
+2009-04-05 castaglia <castaglia>
-2009-02-20 14:47 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>
- * 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.
+ * NEWS, contrib/mod_quotatab.c, contrib/mod_quotatab.h,
+ contrib/mod_quotatab_sql.c: Bug#3086 - mod_quotatab write locking is
+ ineffective.
-2009-02-20 09:19 castaglia
+2009-04-03 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.
+ * 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-02-19 09:45 castaglia
+2009-04-03 castaglia <castaglia>
- * src/ftpscrub.c, utils/ftpscrub.c:
- Forgot to move the ftpscrub.c source from from src/ to utils/,
- along with the its man pages and build rules.
+ * doc/howto/Compiling.html: Mention the --with-lastlog configure
+ option, and use an unordered list for the main/popular configure
+ options.
-2009-02-19 09:34 castaglia
+2009-04-03 castaglia <castaglia>
- * contrib/mod_sftp/: mod_sftp.c, utf8.c, 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.
+ * 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-02-18 13:55 castaglia
+2009-04-03 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.
+ * 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-02-18 13:40 castaglia
+2009-04-03 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/mod_auth_unix.c: Fix compilation errors when
+ HAVE_LOGINRESTRICTIONS (AIX platform, mostly) is defined.
-2009-02-18 13:40 castaglia
+2009-04-01 castaglia <castaglia>
- * src/Makefile.in, src/ftpscrub.8.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/.
+ * NEWS, src/dirtree.c: Bug#3233 - Dynamic config causes many copies
+ of static configs to be merged.
-2009-02-18 13:33 castaglia
+2009-04-01 castaglia <castaglia>
- * NEWS, Make.rules.in, Makefile.in, configure.in,
- modules/mod_core.c, src/Makefile.in, src/ftpscrub.8.in,
- src/ftpscrub.c, utils/Makefile.in, utils/scoreboard.c,
- utils/utils.h:
- Bug#3129 - Support configurable scoreboard scrubbing.
+ * 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-02-18 13:24 castaglia
+2009-04-01 castaglia <castaglia>
- * contrib/mod_sql_postgres.c:
- Minor OCD reordering.
+ * 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-02-18 10:54 castaglia
+2009-03-31 castaglia <castaglia>
- * contrib/mod_sftp/disconnect.h:
- Helps if the comment matches the code.
+ * 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-02-18 10:53 castaglia
+2009-03-31 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.
+ * 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-02-18 10:24 castaglia
+2009-03-31 castaglia <castaglia>
- * src/wtmp.c:
- Finally get rid of these compiler warnings:
+ * modules/mod_lang.c: Missed a dir_check() call which needs to pass
+ the cmd_rec pointer, not just the command name.
- wtmp.c:38: warning: unused variable `ut'
- wtmp.c:39: warning: unused variable `fd'
+2009-03-30 castaglia <castaglia>
- on Solaris systems.
+ * src/log.c: Add some sane errno values if pr_log_openfile() fails
+ in some cases.
-2009-02-18 10:01 castaglia
+2009-03-30 castaglia <castaglia>
- * NEWS, contrib/mod_sql_postgres.c:
- Bug#3176 - Postgres chokes on standard charset names.
+ * 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-02-17 10:26 castaglia
+2009-03-30 castaglia <castaglia>
- * Makefile.in, NEWS:
- Bug#3189 - Linker errors occur when using "make -j" parallel
- builds.
+ * doc/howto/Rewrite.html: Another good mod_rewrite example.
-2009-02-17 09:06 castaglia
+2009-03-29 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.
+ * 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-02-16 21:59 castaglia
+2009-03-29 castaglia <castaglia>
- * RELEASE_NOTES, doc/contrib/mod_tls.html:
- Update the docs for the new PKCS#12 file support in mod_tls.
+ * doc/contrib/mod_wrap.html: Add mod_wrap FAQ about Bugs #2629,
+ #2787, #3209.
-2009-02-16 21:51 castaglia
+2009-03-28 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c,
- tests/t/etc/modules/mod_tls/server-cert.p12,
- tests/t/lib/ProFTPD/Tests/Modules/mod_tls.pm:
- Bug#3111 - Support SSL/TLS server certificates stored in PKCS#12
- files.
+ * 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-02-16 21:30 castaglia
+2009-03-27 castaglia <castaglia>
- * NEWS, configure:
- Bug#3154 - Update bundled libtool version. The bundled libltdl
- version has been updated to libtool-1.5.26.
+ * contrib/mod_sftp/scp.c: More futzing with the path resolution for
+ SCP uploading.
-2009-02-16 21:27 castaglia
+2009-03-27 castaglia <castaglia>
- * aclocal.m4, ltmain.sh:
- More towards Bug#3154.
+ * 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-02-16 21:26 castaglia
+2009-03-27 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.)
+ * configure: Updated configure.
-2009-02-16 21:22 castaglia
+2009-03-27 castaglia <castaglia>
- * lib/libltdl/: COPYING.LIB, Makefile.am, Makefile.in,
- acinclude.m4, aclocal.m4, config.guess, config.sub, configure,
- configure.ac, install-sh, ltdl.c, ltdl.h, ltmain.sh, missing:
- Bug#3154 - Update bundled libtool version.
+ * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#3231
+ - Use getgrset(3) on AIX to emulate getgrouplist(3).
-2009-02-16 21:07 castaglia
+2009-03-26 castaglia <castaglia>
- * src/Makefile.in:
- Clean up the other generated files from the src directory (i.e.
- the man pages).
+ * 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-02-16 20:13 castaglia
+2009-03-26 castaglia <castaglia>
- * src/Makefile.in:
- Clean up the generated prxs script.
+ * doc/contrib/mod_sftp.html: Typo.
-2009-02-16 17:29 castaglia
+2009-03-26 castaglia <castaglia>
- * doc/contrib/mod_sftp.html:
- Add hrefs to the individual SFTP FAQs.
+ * RELEASE_NOTES: Another note about use of the %{protocol} variable.
- Added FAQ about using mod_sftp as an OpenSSH subsystem.
+2009-03-26 castaglia <castaglia>
-2009-02-16 10:45 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".
- * src/prxs.in:
- Give the prxs tool a --help option.
+2009-03-25 castaglia <castaglia>
-2009-02-16 10:32 castaglia
+ * doc/howto/SQL.html: Mention that the discussion about
+ userset/usersetfast holds true for groupset/groupsetfast as well.
- * NEWS, src/prxs.in:
- Bug#3188 - prxs broken due to typo.
+2009-03-25 castaglia <castaglia>
-2009-02-16 09:46 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.)
- * contrib/: mod_load/.cvsignore, mod_sftp/.cvsignore,
- mod_wrap2/.cvsignore:
- Ignore libtool object files (*.lo) in CVS commands.
+2009-03-25 castaglia <castaglia>
-2009-02-15 19:14 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix the test
+ case for Bug#3149 slightly, to avoid any DNS issues.
- * 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-03-25 castaglia <castaglia>
-2009-02-15 18:51 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.
- * include/support.h:
- Forgot to remove the old make_arg_str() declaration.
+2009-03-25 castaglia <castaglia>
-2009-02-15 16:44 castaglia
+ * doc/howto/SQL.html: Add a SQL FAQ about the 'userset' and
+ 'usersetfast' SQLAuthenticate options.
- * 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.
+2009-03-25 castaglia <castaglia>
- 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.
+ * 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-02-15 15:34 castaglia
+2009-03-25 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm:
- Add regression tests for the BanEngine behavior added in
- Bug#3186.
+ * 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-02-15 15:32 castaglia
+2009-03-24 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#3186 - Support use of <IfClass> directive with mod_ban.
+ * RELEASE_NOTES: Don't forget to mention the new %{protocol}
+ variable in the release notes.
-2009-02-14 19:15 castaglia
+2009-03-24 castaglia <castaglia>
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Bug#3185 - mod_wrap2 does not honour partial DNS name in access
- files.
+ * 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-02-14 16:27 castaglia
+2009-03-23 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).
+ * 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.
- 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-03-23 castaglia <castaglia>
-2009-02-14 15:35 castaglia
+ * doc/contrib/mod_rewrite.html: Update the mod_rewrite docs to
+ mention the Bug#3028 fix.
- * 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.
+2009-03-23 castaglia <castaglia>
- 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.
+ * 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-02-14 14:33 castaglia
+2009-03-23 castaglia <castaglia>
- * contrib/: mod_quotatab.c, mod_radius.c, mod_sql.c, mod_tls.c,
- mod_sftp/mod_sftp.c, mod_wrap2/mod_wrap2.c:
- When unloading modules which can have their own logs, make sure
- that those log descriptors are closed.
+ * 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-02-14 13:16 castaglia
+2009-03-23 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/: mod_wrap2_file.pm,
- mod_wrap2_sql.pm:
- Add separate mod_wrap2 deny table tests for IP addresses and DNS
- names.
+ * 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-02-13 22:02 castaglia
+2009-03-22 castaglia <castaglia>
- * src/session.c:
- Use a plain unadorned "ssh" as the TTY name in case of SSH
- sessions.
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Lookups.pm: More work
+ on the <Directory>-related performance tests.
-2009-02-13 21:06 castaglia
+2009-03-22 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.
+ * 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.
- Update mod_sftp to honor WtmpLog and UseLastlog.
+2009-03-22 castaglia <castaglia>
-2009-02-13 21:01 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.
- * contrib/mod_sql.c:
- Constify one of the functions, and deal with the consequences.
+2009-03-22 castaglia <castaglia>
-2009-02-13 19:59 castaglia
+ * src/main.c: Quell compiler warning.
- * Make.rules.in, contrib/mod_sql.c, contrib/mod_tls.c,
- contrib/mod_sftp/fxp.c, contrib/mod_sftp/mod_sftp.c,
- contrib/mod_sftp/scp.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.
+2009-03-22 castaglia <castaglia>
- Bug#3183 proved that the construction of the pseudo-ttyname, used
- in WtmpLog and PAM authentication, should be consolidated, and
- this has been done.
+ * doc/howto/Globbing.html: Updating the Globbing howto to mention
+ the tunable name changes/additions.
- 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-03-22 castaglia <castaglia>
-2009-02-13 15:43 castaglia
+ * include/options.h, lib/glibc-glob.c, src/main.c: Add new
+ PR_TUNABLE_GLOBBING_MAX_MATCHES tunable, as part of Bug#2821.
- * contrib/: mod_sftp_pam.c, mod_sftp_sql.c:
- Update the copyright dates for these modules.
+2009-03-22 castaglia <castaglia>
-2009-02-13 15:41 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.
- * contrib/mod_sftp/: auth-hostbased.c, auth-kbdint.c,
- auth-password.c, auth-publickey.c, auth.c, auth.h, blacklist.c,
- blacklist.h, channel.c, channel.h, cipher.c, cipher.h,
- compress.c, compress.h, crypto.c, crypto.h, disconnect.c,
- disconnect.h, fxp.c, fxp.h, interop.c, interop.h, kbdint.c,
- kbdint.h, kex.c, kex.h, keys.c, keys.h, keystore.c, keystore.h,
- mac.c, mac.h, mod_sftp.c, mod_sftp.h.in, msg.c, msg.h, packet.c,
- packet.h, rfc4716.c, rfc4716.h, scp.c, scp.h, service.c,
- service.h, session.c, session.h, ssh2.h, tap.c, tap.h, utf8.c,
- utf8.h:
- Add the Id keyword to the source files.
+2009-03-22 castaglia <castaglia>
-2009-02-13 15:09 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.
- * src/netaddr.c:
- Quell a compiler warning about const-ness.
+2009-03-21 castaglia <castaglia>
-2009-02-13 15:07 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.
- * contrib/mod_sftp/: keys.c, keys.h:
- Forgot the keys.[ch] files for mod_sftp.
+2009-03-21 castaglia <castaglia>
-2009-02-13 14:20 castaglia
+ * src/pool.c: Optimize for the most common case; this is frequently
+ called function.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_sftp.pm,
- t/modules/mod_sftp.t:
- Adding the mod_sftp testsuite.
+2009-03-20 castaglia <castaglia>
-2009-02-13 14:17 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.
- * tests/t/etc/modules/mod_sftp/: authorized_dsa_keys,
- authorized_rsa_keys, ssh_host_dsa_key, ssh_host_dsa_key.pub,
- ssh_host_rsa_key, ssh_host_rsa_key.pub, test_dsa_key,
- test_dsa_key.pub, test_rsa_key, test_rsa_key.pub:
- Adding some of the files used by the mod_sftp unit tests.
+2009-03-20 castaglia <castaglia>
-2009-02-13 14:03 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.
- * contrib/mod_sftp/mod_sftp.c:
- Make sure that, when unloaded, mod_sftp unregisters all event
- handlers, and scrubs any keys from memory.
+2009-03-20 castaglia <castaglia>
-2009-02-13 13:51 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.
- * NEWS, README.modules, RELEASE_NOTES:
- Add mention of the added mod_sftp et al modules.
+2009-03-20 castaglia <castaglia>
-2009-02-13 13:45 castaglia
+ * doc/howto/ASCII.html: Add a FAQ about why the ASCII mode
+ restriction was placed on the SIZE command.
- * 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 13:43 castaglia
-
- * contrib/mod_sftp/: .cvsignore, Makefile.in, auth-hostbased.c,
- auth-kbdint.c, auth-password.c, auth-publickey.c, auth.c, auth.h,
- blacklist.c, blacklist.dat, blacklist.h, channel.c, channel.h,
- cipher.c, cipher.h, compress.c, compress.h, config.guess,
- config.sub, configure, configure.in, crypto.c, crypto.h,
- dhparams.pem, disconnect.c, disconnect.h, fxp.c, fxp.h,
- install-sh, interop.c, interop.h, kbdint.c, kbdint.h, kex.c,
- kex.h, keystore.c, keystore.h, mac.c, mac.h, mod_sftp.c,
- mod_sftp.h.in, msg.c, msg.h, packet.c, packet.h, rfc4716.c,
- rfc4716.h, scp.c, scp.h, service.c, service.h, session.c,
- session.h, ssh2.h, tap.c, tap.h, utf8.c, utf8.h:
- Adding mod_sftp to the contrib modules.
-
-2009-02-13 09:11 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 08:04 castaglia
-
- * NEWS, src/dirtree.c:
- Bug#3184 - When started in a chroot, proftpd fails to set
- transfer buffer size.
-
-2009-02-12 14:41 castaglia
-
- * doc/howto/DNS.html:
- Mention the new -S command-line option in the DNS howto's FAQ
- section.
-
-2009-02-12 14:32 castaglia
+2009-03-20 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.
+ * modules/mod_core.c: Make sure that any stat cache is cleared when
+ answering a SIZE command.
-2009-02-12 13:36 castaglia
+2009-03-19 castaglia <castaglia>
- * contrib/mod_quotatab_file.c:
- Handle possible interruptions of readv(2) and writev(2) in
- mod_quotatab_file.
+ * contrib/mod_sftp/configure: Updated mod_sftp's configure.
-2009-02-12 12:13 castaglia
+2009-03-19 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:
+ * 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.
- 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.
+2009-03-19 castaglia <castaglia>
- Removed older compatibility macros for the log functions from
- compat.h.
+ * 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.
- 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-03-19 castaglia <castaglia>
-2009-02-12 12:02 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.
- * .cvsignore, contrib/.cvsignore, contrib/mod_load/.cvsignore,
- contrib/mod_wrap2/.cvsignore:
- Minor refinement of the .libs exclusion.
+2009-03-19 castaglia <castaglia>
-2009-02-12 12:01 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit tests for
+ the SCP+mod_rewrite cases.
- * .cvsignore, contrib/.cvsignore, contrib/mod_load/.cvsignore,
- contrib/mod_wrap2/.cvsignore:
- Ignore .la files and the .libs/ directory.
+2009-03-19 castaglia <castaglia>
-2009-02-12 11:13 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.
- * NEWS, modules/mod_auth.c, src/main.c:
- Bug#3183 - Incorrect logging to wtmp.
+2009-03-19 castaglia <castaglia>
-2009-02-11 22:47 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Unit tests
+ validating the use of mod_rewrite to rewrite SFTP requests.
- * tests/: tests.pl, t/config/hidegroup.t, t/config/hideuser.t,
- t/lib/ProFTPD/Tests/Config/HideGroup.pm,
- t/lib/ProFTPD/Tests/Config/HideUser.pm:
- Adding testcases for the HideUser and HideGroup directives.
+2009-03-19 castaglia <castaglia>
-2009-02-11 22:46 castaglia
+ * contrib/mod_rewrite.c: Add a comment about why there's a test for
+ a SYMLINK command in mod_rewrite.
- * NEWS, modules/mod_core.c, src/dirtree.c:
- Bug#2720 - HideUser/HideGroup should be more flexible.
+2009-03-19 castaglia <castaglia>
-2009-02-11 21:31 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.
- * NEWS, src/ctrls.c, src/event.c:
- Bug#3179 - Restarted proftpd using mod_shaper will segfault.
+2009-03-19 castaglia <castaglia>
-2009-02-11 21:04 castaglia
+ * doc/howto/Compiling.html: Match the example configure options to
+ their surrounding text.
- * 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-03-18 castaglia <castaglia>
-2009-02-11 12:03 castaglia
+ * doc/contrib/mod_rewrite.html: Updated mod_rewrite docs to cover
+ the %{ENV:var} syntax.
- * contrib/mod_ban.c:
- Avoid unsightly error messages like this when shutting down a
- proftpd using mod_ban:
+2009-03-18 castaglia <castaglia>
- mod_ban/0.5.3: error removing shmid -1: No such file or
- directory
+ * 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.
- by actually checking that the shmid is greater than -1 before
- attempting to remove it.
+2009-03-18 castaglia <castaglia>
-2009-02-11 11:49 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.
- * 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-03-18 castaglia <castaglia>
-2009-02-11 10:44 castaglia
+ * NEWS, contrib/mod_ban.c: Bug#3187 - Inconsistent mod_ban logging
+ and display when using "BanEngine off" in an <IfClass>
+ configuration.
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Bug#3178 - mod_wrap2 does not handle IPv4-mapped IPv6 addresses.
+2009-03-18 castaglia <castaglia>
-2009-02-10 22:56 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.
- * 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-03-18 castaglia <castaglia>
-2009-02-10 21:57 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.
- * NEWS, src/main.c,
- tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm:
- Bug#2728 - Support for variables in ServerIdent directive.
+2009-03-18 castaglia <castaglia>
-2009-02-10 13:57 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).
- * 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>.
+2009-03-17 castaglia <castaglia>
- Update the distributed sample configs to use <IfModule> guards
- around IdentLookups.
+ * doc/howto/Limit.html: Update the Limit docs to mention MLSD and
+ MLST.
-2009-02-09 16:39 castaglia
+2009-03-17 castaglia <castaglia>
- * contrib/mod_tls.c:
- If we can't set the certificate-related environment variables,
- log the reason why.
+ * 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-02-09 16:31 castaglia
+2009-03-17 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#3170 - RewriteMap unescape URL encoding broken by
- RewriteCondition backreference handling.
+ * 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-02-09 16:05 castaglia
+2009-03-17 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.
+ * NEWS, RELEASE_NOTES, src/bindings.c: Bug#2680 - Add support for
+ <VirtualHost 0.0.0.0>.
-2009-02-09 15:27 castaglia
+2009-03-16 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm:
- Add regression test for Bug#3156.
+ * 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-02-09 15:27 castaglia
+2009-03-16 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#3156 - Allow resumed downloads when HiddenStore is in effect.
+ * 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-02-09 10:51 castaglia
+2009-03-14 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.
+ * 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-02-09 09:58 castaglia
+2009-03-13 castaglia <castaglia>
- * RELEASE_NOTES, locale/Makefile.in, locale/bg_BG.po:
- Added Bulgarian translation, courtesy of Georgi D. Sotirov.
+ * doc/howto/Quotas.html: Another common cause of quota tallies not
+ being updated.
-2009-02-09 09:58 castaglia
+2009-03-13 castaglia <castaglia>
- * locale/bg_BG.po: file bg_BG.po was added on branch B1_3_2 on
- 2009-04-28 22:50:22 +0000
+ * 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-02-09 09:21 castaglia
+2009-03-12 castaglia <castaglia>
- * contrib/mod_sql_postgres.c:
- Fix compile error.
+ * configure: Updated configure.
-2009-02-05 15:19 castaglia
+2009-03-12 castaglia <castaglia>
- * locale/en_US.po:
- Updated English translation.
+ * 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-02-05 14:52 castaglia
+2009-03-12 castaglia <castaglia>
- * doc/modules/mod_cap.html:
- Another mod_cap-related FAQ.
+ * 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-02-05 14:41 castaglia
+2009-03-12 castaglia <castaglia>
- * modules/mod_core.c:
- Remove vestigal IdentLookups handling left by mistake in
- mod_core.
+ * contrib/dist/rpm/proftpd.spec: Updating the proftpd.spec to match
+ Bug#2613.
-2009-02-05 14:40 castaglia
+2009-03-12 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_ident.c:
- Bug#3155 - Change the IdentLookups default to 'off'.
+ * configure: Updated configure.
-2009-02-05 14:33 castaglia
+2009-03-12 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.
+ * NEWS, RELEASE_NOTES, configure.in: Bug#2613 - Configure script
+ should not append '/proftpd' to the --localstatedir.
-2009-02-05 14:26 castaglia
+2009-03-12 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Bug#3133 - mod_facts should advertise TVFS support in the FEAT
- response.
+ * 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-02-05 14:23 castaglia
+2009-03-12 castaglia <castaglia>
- * NEWS, contrib/mod_sql_postgres.c:
- Bug#3123 - Use PQescapeStringConn() rather than PQescapeString().
+ * 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-02-05 14:06 castaglia
+2009-03-12 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_auth.c, src/auth.c:
- Bug#2894 - Deprecate the AnonymousGroup directive.
+ * 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-02-05 13:49 castaglia
+2009-03-11 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.
+ * contrib/mod_tls.c: Stylistic cleanups in tls_verify_crl().
-2009-02-05 13:36 castaglia
+2009-03-11 castaglia <castaglia>
- * locale/: Makefile.in, proftpd.pot:
- Updated the `find' command used to create the files.txt input for
- creating a new .pot. Updated the current proftpd.pot.
+ * 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-02-05 12:18 castaglia
+2009-03-11 castaglia <castaglia>
- * locale/: Makefile.in, fr_FR.po:
- Added French translation.
+ * 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-02-05 11:39 castaglia
+2009-03-11 castaglia <castaglia>
- * include/version.h:
- On to the 1.3.3 release cycle!
+ * doc/contrib/mod_wrap2_sql.html: Fix the mod_wrap2_sql
+ documentation, thanks to Szymon Juraszczyk.
-2009-02-05 10:59 castaglia
+2009-03-11 castaglia <castaglia>
- * ChangeLog:
- Updating ChangeLog for 1.3.2.
+ * 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-02-05 10:58 castaglia
+2009-03-10 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating versions for the 1.3.2 release.
+ * 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-02-05 10:56 castaglia
+2009-03-10 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes.
+ * 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-02-05 10:53 castaglia
+2009-03-10 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c:
- Bug#3173 - Encoding-dependent SQL injection vulnerability.
+ * RELEASE_NOTES, doc/contrib/mod_tls_shmcache.html: Added docs for
+ mod_tls_shmcache.html.
-2009-02-03 09:43 castaglia
+2009-03-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm:
- Added testcase for Bug#3171.
+ * 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-02-03 09:42 castaglia
+2009-03-10 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#3171 - ExtendedLog should log full SITE command using %m.
+ * doc/contrib/mod_tls.html: Typo.
-2009-02-02 11:47 castaglia
+2009-03-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Added testcase for Bug#3170.
+ * RELEASE_NOTES, doc/contrib/mod_tls.html: Add docs for the
+ NoSessionReuseRequired TLSOption added in Bug#3210.
-2009-02-02 11:46 castaglia
+2009-03-10 castaglia <castaglia>
- * doc/howto/Rewrite.html:
- Give examples for handling non-ASCII characters in RewriteRule
- expressions.
+ * contrib/mod_tls.c: Typo.
-2009-02-02 10:46 castaglia
+2009-03-10 castaglia <castaglia>
- * doc/contrib/mod_rewrite.html:
- Clarify exactly what type of encoding is unescaped by
- mod_rewrite's unescape RewriteMap.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#3210 - Data transfers
+ protected by SSL/TLS should reuse the control connection SSL
+ session.
-2009-02-02 10:35 castaglia
+2009-03-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm:
- Added testcase for Bug#3169.
+ * RELEASE_NOTES: Mention the new directives and module. Fuller
+ descriptions will be added later.
-2009-02-02 10:34 castaglia
+2009-03-10 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#3169 - Multiple RewriteRules for the same RewriteCondition
- not processed properly.
+ * doc/contrib/mod_tls.html: Update the mod_tls docs to include
+ TLSControlsACLs, TLSSessionCache, and the new mod_tls ftpdctl
+ actions.
-2009-01-30 09:58 castaglia
+2009-03-10 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.
+ * contrib/mod_tls.c: Include the name of the external session cache
+ in the 'clear' and 'remove' action outputs.
-2009-01-29 16:14 castaglia
+2009-03-10 castaglia <castaglia>
- * tests/api/pool.c:
- Fix a test that was failing due to a thinko.
+ * contrib/mod_tls_shmcache.c: Add some identifying information about
+ the module itself in the status output.
-2009-01-29 08:40 castaglia
+2009-03-10 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).
+ * 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-01-28 09:56 castaglia
+2009-03-10 castaglia <castaglia>
- * modules/mod_auth.c:
- Missed a few places in need of translation.
+ * 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-01-27 16:19 castaglia
+2009-03-10 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.
+ * NEWS, contrib/mod_tls.c, contrib/mod_tls.h: Bug#3207 - Support for
+ SSL/TLS session caching across processes/machines.
-2009-01-27 15:29 castaglia
+2009-03-10 castaglia <castaglia>
- * src/scoreboard.c:
- Missed a spot.
+ * 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-01-27 15:23 castaglia
+2009-03-10 castaglia <castaglia>
- * src/scoreboard.c:
- Cache the errno value when using pr_trace_msg(), since that
- function can change the errno value.
+ * doc/howto/Limit.html: Add another example <Limit> config, for a
+ read-only account.
-2009-01-26 13:56 castaglia
+2009-03-09 castaglia <castaglia>
- * modules/mod_lang.c:
- When "UseEncoding off" is configured, *really* disable encoding.
+ * contrib/mod_ban.c: Pedantic ANSI C compilers might complain about
+ the trailing comma.
-2009-01-26 12:57 castaglia
+2009-03-09 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.
+ * 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).
- Added a FAQ about TLSCertificateChainFile, mostly for my own
- reference; it's a bit confusing as to when such a thing is
- useful.
+2009-03-09 castaglia <castaglia>
-2009-01-26 09:35 castaglia
+ * doc/howto/Limit.html: Example <Limit> config of making a directory
+ undeletable, but allowing its subdirectories to be deletable.
- * contrib/mod_tls.c:
- Fix two minor issues in mod_tls:
+2009-03-09 castaglia <castaglia>
- 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.)
+ * 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.
- 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-03-09 castaglia <castaglia>
-2009-01-24 19:24 jwm
+ * contrib/mod_tls.c: Typo.
- * 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 at noc.uoa.gr>.
- http://forums.proftpd.org/smf/index.php/topic,3562.0.html
+2009-03-09 castaglia <castaglia>
-2009-01-23 15:52 castaglia
+ * contrib/mod_tls.c: If the EnableDiags TLSOption is enabled, log
+ some SSL session stats when the session ends.
- * include/version.h:
- Back to a CVS version.
+2009-03-08 castaglia <castaglia>
-2009-01-23 15:02 castaglia
+ * contrib/mod_ban.c: Typo.
- * ChangeLog:
- Updating ChangeLog for 1.3.2rc4.
+2009-03-07 castaglia <castaglia>
-2009-01-23 14:59 castaglia
+ * contrib/mod_sftp/kbdint.c: Need to return -1, not zero, if we fail
+ to unregister a 'keyboard-interactive' driver for some reason.
- * NEWS, RELEASE_NOTES:
- Updating NEWS, release notes for 1.3.2rc4.
+2009-03-07 castaglia <castaglia>
-2009-01-23 14:58 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.
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for 1.3.2rc4.
+2009-03-07 castaglia <castaglia>
-2009-01-23 09:30 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.
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Fixup some tests which were failing because the default config
- changed the value of AllowOverride.
+2009-03-07 castaglia <castaglia>
-2009-01-22 11:25 castaglia
+ * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec: Bug#2985 -
+ Newest .spec file requires relatively current version of RPM.
- * doc/contrib/mod_sql.html:
- Add some links for easier cross-referencing.
+2009-03-06 castaglia <castaglia>
-2009-01-21 16:30 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.
- * src/support.c:
- Make pr_gmtime() behave like pr_localtime() with regard to the
- use of the given memory pool.
+2009-03-05 castaglia <castaglia>
- Increase the buffer size used in pr_strtime(), just to be certain
- that we have enough room.
+ * 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-01-16 18:10 castaglia
+2009-03-05 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.
+ * doc/contrib/mod_sftp.html: The mod_sftp modules DOES support
+ UseLastlog now.
-2009-01-15 23:10 castaglia
+2009-03-05 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention the Compiling howto.
+ * 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-01-15 23:09 castaglia
+2009-03-05 castaglia <castaglia>
- * doc/howto/: Compiling.html, index.html:
- Finally finished a howto on compiling proftpd.
+ * src/dirtree.c: Minor stylistic cleanups.
-2009-01-15 18:53 castaglia
+2009-03-05 castaglia <castaglia>
- * INSTALL:
- Typos.
+ * 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-01-14 13:44 castaglia
+2009-03-05 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Typo.
+ * RELEASE_NOTES: Updated release notes with info about RewriteHome.
-2009-01-14 09:39 castaglia
+2009-03-05 castaglia <castaglia>
- * src/main.c:
- Use "microsecs", as it is less confusing to admins.
+ * 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-01-13 09:38 castaglia
+2009-03-05 castaglia <castaglia>
- * src/main.c:
- Copy the signo of a terminating signal a little earlierin the
- handler.
+ * NEWS, contrib/mod_rewrite.c, include/auth.h, modules/mod_auth.c,
+ src/auth.c: Bug#3167 - Support rewriting of home directories.
-2009-01-12 15:41 castaglia
+2009-03-05 castaglia <castaglia>
- * doc/howto/Vhost.html:
- Add another vhost FAQ.
+ * 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-01-12 09:47 castaglia
+2009-03-05 castaglia <castaglia>
- * src/fsio.c:
- Add trace logging of any statvfs()/statfs() errors.
+ * 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-01-08 18:30 castaglia
+2009-03-05 castaglia <castaglia>
- * src/main.c:
- Log segfaults in the TraceLog using the 'signal' channel.
+ * 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-01-08 12:21 castaglia
+2009-03-05 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.
+ * 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-01-07 23:36 castaglia
+2009-03-05 castaglia <castaglia>
- * contrib/mod_sql.c:
- Typo.
+ * 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-01-07 23:32 castaglia
+2009-03-04 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.
+ * src/dirtree.c: Corrected stale/misleading comment.
-2009-01-07 10:25 castaglia
+2009-03-04 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.
+ * 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-01-06 10:51 castaglia
+2009-03-04 castaglia <castaglia>
- * src/auth.c:
- Typo.
+ * contrib/mod_sftp/interop.c: Include the SSH2 client version info
+ in the TraceLog.
-2009-01-05 20:20 castaglia
+2009-03-04 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.
+ * contrib/mod_sftp/keys.c: Add trace logging for channel "ssh2",
+ level 17, of reasons why key mismatches occur.
-2009-01-05 17:35 castaglia
+2009-03-04 castaglia <castaglia>
- * doc/howto/Vhost.html:
- I realized that the Vhost howto didn't mention the "already in
- use" warning message, and should.
+ * 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-01-05 09:29 castaglia
+2009-03-04 castaglia <castaglia>
- * contrib/: mod_ldap.c, 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).
+ * 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-01-03 18:10 castaglia
+2009-03-04 castaglia <castaglia>
- * contrib/: mod_ldap.c, 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.
+ * NEWS, src/prxs.in: Bug#3204 - Better support for installation and
+ libs in prxs.
-2009-01-03 17:14 castaglia
+2009-03-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().
+ * contrib/mod_sftp/channel.c, contrib/mod_sftp/fxp.c: Include more
+ info in the dispatched cmd_recs, e.g. channel IDs.
-2009-01-02 11:38 castaglia
+2009-03-04 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.
+ * doc/howto/ServerType.html: Add a real xinetd config example to the
+ ServerType howto, rather than having the broken UserGuide link.
-2009-01-01 16:31 castaglia
+2009-03-04 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.
+ * 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.
-2008-12-31 11:51 castaglia
+2009-03-04 castaglia <castaglia>
- * contrib/mod_tls.c:
- Remove unnecessary character.
+ * doc/modules/mod_delay.html: Add some mod_delay FAQs.
-2008-12-31 09:53 castaglia
+2009-03-03 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#3159 - mod_rewrite build fails due to missing mode argument
- in open(2) call.
+ * NEWS, contrib/mod_sql.c: Bug#3203 - Missing SQL backend modules
+ can lead to null pointer segfault in mod_sql.
-2008-12-30 17:02 castaglia
+2009-03-03 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.
+ * 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.
-2008-12-30 13:39 castaglia
+2009-03-03 castaglia <castaglia>
- * doc/howto/NAT.html:
- Update NAT howto with ipf example.
+ * contrib/mod_wrap2/mod_wrap2.c: String formatting fixed, as per
+ Bug#3197.
-2008-12-30 13:32 castaglia
+2009-03-03 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).
+ * 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.
-2008-12-24 00:05 castaglia
+2009-03-03 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.
+ * NEWS, contrib/mod_quotatab.c: Bug#3196 - mod_quotatab does not
+ honor last group in supplemental group list.
-2008-12-23 15:34 castaglia
+2009-03-03 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.
+ * 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.
-2008-12-23 11:46 castaglia
+2009-03-02 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.
+ * 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.
-2008-12-23 11:29 castaglia
+2009-03-02 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:
+ * include/support.h: Remove the declaration of the now-obsolete
+ set_protocol_name() function.
- setlocale(LC_ALL, "");
+2009-03-02 castaglia <castaglia>
- 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.
+ * RELEASE_NOTES: Mention the Korean translation.
-2008-12-22 22:41 castaglia
+2009-03-02 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.
+ * locale/Makefile.in, locale/ko_KR.po: Bug#3194 - Add Korean
+ translation.
-2008-12-22 22:29 castaglia
+2009-02-27 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.
+ * contrib/mod_sftp/kex.c: Copy the client-sent language lists out of
+ the kex pool, not out of the packet pool.
-2008-12-22 09:25 castaglia
+2009-02-27 castaglia <castaglia>
- * contrib/mod_tls.c:
- Explicit cast to quell compiler warnings about signedness
- differences.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sftp.pm: Add unit tests for
+ the one-hostkey-only mod_sftp configurations.
-2008-12-21 15:25 castaglia
+2009-02-27 castaglia <castaglia>
- * src/encode.c:
- Try to reduce confusion when we didn't detect iconv() (no
- HAVE_ICONV), but we did detect <iconv.h>.
+ * doc/contrib/mod_sftp.html: Update the mod_sftp docs to mention
+ that only one SFTPHostKey is now required.
-2008-12-21 14:17 castaglia
+2009-02-27 castaglia <castaglia>
- * doc/howto/Quotas.html:
- Add FAQ about how mod_quotatab handles file overwrites/appends.
+ * 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.
-2008-12-21 11:53 castaglia
+2009-02-26 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.
+ * 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.
-2008-12-21 00:57 castaglia
+2009-02-26 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).
+ * 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.
-2008-12-20 16:55 castaglia
+2009-02-26 castaglia <castaglia>
- * src/table.c:
- Fix some edge cases that could lead to segfaults.
+ * locale/fr_FR.po: Updated French translation from the translator.
-2008-12-18 15:05 castaglia
+2009-02-26 castaglia <castaglia>
- * src/dirtree.c:
- Make sure that the cmd_rec returned by pr_cmd_alloc() has an
- instantiated cmd->notes table.
+ * 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.
-2008-12-18 10:00 castaglia
+2009-02-26 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Fix typos.
+ * 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.
-2008-12-17 15:44 castaglia
+2009-02-22 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.
+ * contrib/mod_sftp/fxp.c: Update mod_sftp so that it too uses the
+ new pr_filter_allow_path() function.
-2008-12-17 14:20 castaglia
+2009-02-22 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.
+ * contrib/mod_sftp/utf8.c: Fix the compilation of mod_sftp when
+ --enable-nls is NOT used.
-2008-12-17 10:18 castaglia
+2009-02-22 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add a FAQ about the OpenSSL header/library version mismatch
- warning.
+ * 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.
-2008-12-17 09:46 castaglia
+2009-02-22 castaglia <castaglia>
- * NEWS, modules/mod_facl.c:
- Bug#3150 - mod_facl erroneously assumes no permissions, rather
- than all permissions, in some cases.
+ * 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.
-2008-12-16 19:37 castaglia
+2009-02-22 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.
+ * utils/.cvsignore: Ignore the generated ftpscrub.8 man page in CVS
+ commands.
-2008-12-16 16:24 castaglia
+2009-02-22 castaglia <castaglia>
- * doc/contrib/mod_wrap2_file.html:
- Clean up the example mod_wrap2_file configs a little.
+ * src/log.c: Implement pr_log_writefile() so that it calls
+ pr_log_vwritefile(), just like the other module logging functions
+ do.
-2008-12-16 15:47 castaglia
+2009-02-22 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.)
+ * 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.
-2008-12-16 15:43 castaglia
+2009-02-21 castaglia <castaglia>
- * src/: log.c, trace.c:
- Quell some compiler warnings on Solaris by using explicit casts,
- and by explicitly encompassing the tertiary expressions for those
- casts.
+ * 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.
-2008-12-15 22:23 castaglia
+2009-02-21 castaglia <castaglia>
- * src/dirtree.c:
- Forgot to handle the case, in build_dyn_config(), where the path
- was just "/".
+ * 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).
-2008-12-15 17:38 castaglia
+2009-02-21 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.
+ * .cvsignore: Add the new ftpscrub utility to the cvs ignore list.
-2008-12-15 16:37 castaglia
+2009-02-21 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.
+ * contrib/mod_tls.c: Be a little paranoid, and keep
+ X509_NAME_oneline() from using the entire buffer; reserve one
+ character for NUL.
-2008-12-15 16:36 castaglia
+2009-02-20 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.
+ * 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.
-2008-12-14 14:51 castaglia
+2009-02-20 castaglia <castaglia>
- * doc/howto/Tracing.html:
- Mention the trick of disabling some of the default trace
- channels.
+ * 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.
-2008-12-14 14:48 castaglia
+2009-02-19 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.
+ * utils/ftpscrub.c: Forgot to move the ftpscrub.c source from from
+ src/ to utils/, along with the its man pages and build rules.
-2008-12-13 22:45 castaglia
+2009-02-19 castaglia <castaglia>
- * doc/howto/Sendfile.html:
- Correct the grammar.
+ * 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.
-2008-12-12 23:46 castaglia
+2009-02-18 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.
+ * RELEASE_NOTES, doc/howto/Scoreboard.html: Mention the
+ ScoreboardScrub directive in the release notes, and update the
+ Scoreboard howto to mention this new directive.
-2008-12-12 23:12 castaglia
+2009-02-18 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).
+ * configure: Updated configure.
-2008-12-12 20:49 castaglia
+2009-02-18 castaglia <castaglia>
- * src/dirtree.c:
- Add handling of signals in a potentially long-running while loop
- (especially if recursion is requested).
+ * 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/.
-2008-12-12 18:20 castaglia
+2009-02-18 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.
+ * 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.
-2008-12-12 13:30 castaglia
+2009-02-18 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Fix the text for better legibility.
+ * contrib/mod_sql_postgres.c: Minor OCD reordering.
-2008-12-12 13:26 castaglia
+2009-02-18 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Mention that the SQL{Group,User}WhereClause directives support
- the same variables as SQLNamedQuery.
+ * contrib/mod_sftp/disconnect.h: Helps if the comment matches the
+ code.
-2008-12-12 11:41 castaglia
+2009-02-18 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Added test for the SQLUserWhereClause directive.
+ * 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.
-2008-12-12 08:45 castaglia
+2009-02-18 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.
+ * 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.
-2008-12-12 08:41 castaglia
+2009-02-18 castaglia <castaglia>
- * tests/t/: config/directory.t, config/directory/lookups.t,
- lib/ProFTPD/Tests/Config/Directory.pm,
- lib/ProFTPD/Tests/Config/Directory/Lookups.pm:
- Renamed the <Directory> lookups test code to Directory::Lookups.
+ * NEWS, contrib/mod_sql_postgres.c: Bug#3176 - Postgres chokes on
+ standard charset names.
-2008-12-11 17:07 castaglia
+2009-02-17 castaglia <castaglia>
- * tests/t/: config/directory.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.)
+ * Makefile.in, NEWS: Bug#3189 - Linker errors occur when using "make
+ -j" parallel builds.
-2008-12-11 12:52 castaglia
+2009-02-17 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.
+ * 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.
-2008-12-11 12:45 castaglia
+2009-02-17 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.
+ * RELEASE_NOTES, doc/contrib/mod_tls.html: Update the docs for the
+ new PKCS#12 file support in mod_tls.
-2008-12-11 12:41 castaglia
+2009-02-17 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm:
- Fix Perl warnings about redeclared variables.
+ * 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.
-2008-12-11 12:25 castaglia
+2009-02-17 castaglia <castaglia>
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm,
- Tests/Config/FTPAccess/DELE.pm, 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.
+ * NEWS, configure: Bug#3154 - Update bundled libtool version. The
+ bundled libltdl version has been updated to libtool-1.5.26.
-2008-12-11 12:22 castaglia
+2009-02-17 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.)
+ * aclocal.m4, ltmain.sh: More towards Bug#3154.
-2008-12-11 12:19 castaglia
+2009-02-17 castaglia <castaglia>
- * modules/mod_core.c:
- Style cleanups in the <Directory> config handler.
+ * 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.)
-2008-12-11 10:59 castaglia
+2009-02-17 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).
+ * 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.
-2008-12-11 10:42 castaglia
+2009-02-17 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm:
- Quell some Perl warnings about redeclared variables.
+ * src/Makefile.in: Clean up the other generated files from the src
+ directory (i.e. the man pages).
-2008-12-10 22:40 castaglia
+2009-02-17 castaglia <castaglia>
- * modules/mod_lang.c:
- Stupid thinko: If "OPTS UTF8 on" is sent, do not disable encoding
- by the FS functions.
+ * src/Makefile.in: Clean up the generated prxs script.
-2008-12-10 22:33 castaglia
+2009-02-17 castaglia <castaglia>
- * modules/mod_lang.c:
- Fix some of the problems found in mod_lang using the testsuite.
+ * doc/contrib/mod_sftp.html: Add hrefs to the individual SFTP FAQs. Added FAQ about using mod_sftp as an OpenSSH subsystem.
-2008-12-10 22:33 castaglia
+2009-02-16 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/FEAT.pm,
- t/lib/ProFTPD/Tests/Modules/mod_lang.pm, t/modules/mod_lang.t:
- 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.
+ * src/prxs.in: Give the prxs tool a --help option.
-2008-12-10 21:44 castaglia
+2009-02-16 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.
+ * NEWS, src/prxs.in: Bug#3188 - prxs broken due to typo.
-2008-12-10 20:49 castaglia
+2009-02-16 castaglia <castaglia>
- * modules/mod_core.c:
- Stylistic nit cleanup.
+ * contrib/mod_load/.cvsignore, contrib/mod_sftp/.cvsignore,
+ contrib/mod_wrap2/.cvsignore: Ignore libtool object files (*.lo) in
+ CVS commands.
-2008-12-10 20:41 castaglia
+2009-02-16 castaglia <castaglia>
- * modules/mod_delay.c:
- Clean up some stylistic nits in mod_delay.
+ * 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).
-2008-12-10 20:33 castaglia
+2009-02-16 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.
+ * include/support.h: Forgot to remove the old make_arg_str()
+ declaration.
- 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).
+2009-02-16 castaglia <castaglia>
- Favor RLIMIT_DATA over RLIMIT_AS.
+ * 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.
-2008-12-10 14:40 castaglia
+2009-02-15 castaglia <castaglia>
- * doc/howto/Directory.html:
- Add another FAQ for the Directory howto, covering preventing a
- directory from being renamed.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_ban.pm: Add regression tests
+ for the BanEngine behavior added in Bug#3186.
-2008-12-10 14:28 castaglia
+2009-02-15 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).
+ * NEWS, contrib/mod_ban.c: Bug#3186 - Support use of <IfClass>
+ directive with mod_ban.
-2008-12-10 14:03 castaglia
+2009-02-15 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Add a couple of test cases for HideFiles, using the per-user
- parameters.
+ * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3185 - mod_wrap2 does not
+ honour partial DNS name in access files.
-2008-12-10 13:43 castaglia
+2009-02-15 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_unique_id.pm,
- t/modules/mod_unique_id.t:
- Added test for the mod_unique_id module.
+ * 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).
-2008-12-10 11:50 castaglia
+2009-02-14 castaglia <castaglia>
- * doc/howto/Chroot.html:
- Add FAQ about DefaultRoot and NFS mounts.
+ * 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>
-2008-12-10 11:25 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.
- * tests/t/lib/ProFTPD/Tests/Config/: GroupOwner.pm, UserOwner.pm:
- Switch these tests to use the new 'norootprivs' test class,
- rather than having the tests do that check themselves.
+2009-02-14 castaglia <castaglia>
-2008-12-10 11:23 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.
- * 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.
+2009-02-14 castaglia <castaglia>
-2008-12-10 11:17 castaglia
+ * src/session.c: Use a plain unadorned "ssh" as the TTY name in case
+ of SSH sessions.
- * tests/: tests.pl, t/config/order.t,
- t/lib/ProFTPD/Tests/Config/Order.pm:
- Added tests for the Order directive.
+2009-02-14 castaglia <castaglia>
-2008-12-10 11:07 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.
- * tests/: tests.pl, t/config/storeuniqueprefix.t,
- t/lib/ProFTPD/Tests/Config/StoreUniquePrefix.pm:
- Added test for the StoreUniquePrefix directive.
+2009-02-14 castaglia <castaglia>
-2008-12-10 10:57 castaglia
+ * contrib/mod_sql.c: Constify one of the functions, and deal with
+ the consequences.
- * doc/howto/Scoreboard.html:
- Mention the "ScoreboardFile /dev/null" trick.
+2009-02-14 castaglia <castaglia>
-2008-12-10 10:49 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.
- * tests/: tests.pl, t/config/deleteabortedstores.t,
- t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm:
- Added test for the DeleteAbortedStores directive.
+2009-02-13 castaglia <castaglia>
-2008-12-10 10:46 castaglia
+ * contrib/mod_sftp_pam.c, contrib/mod_sftp_sql.c: Update the
+ copyright dates for these modules.
- * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm:
- Remove debugging cruft.
+2009-02-13 castaglia <castaglia>
-2008-12-10 10:43 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>
- * tests/: tests.pl, t/config/hiddenstores.t,
- t/lib/ProFTPD/Tests/Config/HiddenStores.pm,
- t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Added unit test for the HiddenStores functionality. Added more
- <Limit> cases.
+ * 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>
-2008-12-09 23:26 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.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_ctrls.pm,
- t/modules/mod_ctrls.t:
- Start on tests for mod_ctrls.
+2009-02-12 castaglia <castaglia>
-2008-12-09 22:54 castaglia
+ * contrib/mod_quotatab_file.c: Handle possible interruptions of
+ readv(2) and writev(2) in mod_quotatab_file.
- * contrib/mod_site_misc.c:
- Avoid descriptor leak by closing the directory descriptor before
- returning from site_misc_delete_dir().
+2009-02-12 castaglia <castaglia>
-2008-12-09 22:53 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>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_site_misc.pm,
- t/modules/mod_site_misc.t:
- Added basic tests for the various SITE commands offered by
- mod_site_misc.
+ * .cvsignore, contrib/.cvsignore, contrib/mod_load/.cvsignore,
+ contrib/mod_wrap2/.cvsignore: Minor refinement of the .libs
+ exclusion.
-2008-12-09 22:35 castaglia
+2009-02-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Pass along any other arguments for custom SITE commands.
+ * .cvsignore, contrib/.cvsignore, contrib/mod_load/.cvsignore,
+ contrib/mod_wrap2/.cvsignore: Ignore .la files and the .libs/
+ directory.
-2008-12-09 22:13 castaglia
+2009-02-12 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/TestSuite/Utils.pm:
- 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:
+ * NEWS, modules/mod_auth.c, src/main.c: Bug#3183 - Incorrect logging
+ to wtmp.
- # cd /path/to/mod_sftp/tests
- # perl ~/path/to/proftpd/tests.pl t/modules/mod_sftp.t
+2009-02-12 castaglia <castaglia>
- This will help (me, anyway) when developing new modules, without
- having to write the new module test code in the proftpd source
- tree.
+ * 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.
-2008-12-09 14:58 castaglia
+2009-02-12 castaglia <castaglia>
- * modules/mod_core.c:
- Remove redundant "<Directory>:" in error message displayed when
- proftpd detects a duplicate <Directory> configuration.
+ * NEWS, modules/mod_core.c, src/dirtree.c: Bug#2720 -
+ HideUser/HideGroup should be more flexible.
-2008-12-09 14:56 castaglia
+2009-02-12 castaglia <castaglia>
- * doc/howto/Directory.html:
- Add FAQ about matching multiple <Directory> sections to the same
- path, and which section wins.
+ * NEWS, src/ctrls.c, src/event.c: Bug#3179 - Restarted proftpd using
+ mod_shaper will segfault.
-2008-12-09 14:14 castaglia
+2009-02-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Regression tests for Bug#3147.
+ * 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.
-2008-12-09 14:13 castaglia
+2009-02-11 castaglia <castaglia>
- * NEWS, modules/mod_core.c, src/dirtree.c:
- Bug#3147 - Comma-delimited commands in <Limit> sections not
- handled properly.
+ * 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.
-2008-12-09 11:11 castaglia
+2009-02-11 castaglia <castaglia>
- * doc/howto/Tracing.html:
- Mention the "directory" log channel, added as part of the fix for
- Bug#3146.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add a
+ testcase for the SQLLog directive and the handling of the %{time}
+ variable.
-2008-12-09 11:09 castaglia
+2009-02-11 castaglia <castaglia>
- * tests/: tests.pl, t/config/directory/limits.t,
- t/lib/ProFTPD/Tests/Config/Directory/Limits.pm:
- Added regression tests for Bug#3146.
+ * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3178 - mod_wrap2 does not
+ handle IPv4-mapped IPv6 addresses.
-2008-12-09 11:08 castaglia
+2009-02-11 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3146 - <Directory> paths using glob characters may not match
- as expected.
+ * 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.
-2008-12-09 09:32 castaglia
+2009-02-11 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.
+ * NEWS, src/main.c, tests/t/lib/ProFTPD/Tests/Config/ServerIdent.pm:
+ Bug#2728 - Support for variables in ServerIdent directive.
-2008-12-08 17:22 castaglia
+2009-02-10 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.
+ * 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.
-2008-12-08 16:42 castaglia
+2009-02-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Added mod_quotatab_sql tests for uploads and the 'all' limit.
+ * contrib/mod_tls.c: If we can't set the certificate-related
+ environment variables, log the reason why.
-2008-12-08 16:18 castaglia
+2009-02-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Added mod_quotatab_sql tests for uploads and class quota.
+ * NEWS, contrib/mod_rewrite.c: Bug#3170 - RewriteMap unescape URL
+ encoding broken by RewriteCondition backreference handling.
-2008-12-08 12:20 castaglia
+2009-02-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm:
- Added mod_quotatab_sql tests for uploads and group quota.
+ * 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.
-2008-12-08 11:25 castaglia
+2009-02-09 castaglia <castaglia>
- * tests/: tests.pl,
- t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm,
- t/modules/mod_quotatab_sql.t:
- Start of some tests for mod_quotatab_sql; there are *many* more
- tests for this module to come.
+ * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Add regression
+ test for Bug#3156.
-2008-12-08 09:54 castaglia
+2009-02-09 castaglia <castaglia>
- * tests/: tests.pl, t/config/groupowner.t,
- t/lib/ProFTPD/Tests/Config/GroupOwner.pm:
- Added tests for the GroupOwner directive.
+ * NEWS, modules/mod_xfer.c: Bug#3156 - Allow resumed downloads when
+ HiddenStore is in effect.
-2008-12-08 09:53 castaglia
+2009-02-09 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Allow zero IDs in the AuthUserFile and AuthGroupFile files.
+ * 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.
-2008-12-08 09:32 castaglia
+2009-02-09 castaglia <castaglia>
- * tests/: tests.pl, t/config/userowner.t,
- t/lib/ProFTPD/Tests/Config/UserOwner.pm:
- Added tests for the UserOwner directive.
+ * RELEASE_NOTES, locale/Makefile.in, locale/bg_BG.po: Added
+ Bulgarian translation, courtesy of Georgi D. Sotirov.
-2008-12-08 09:26 castaglia
+2009-02-09 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.
+ * contrib/mod_sql_postgres.c: Fix compile error.
-2008-12-08 07:48 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Handle arrayrefs within hashrefs properly when writing out the
- config.
+ * locale/en_US.po: Updated English translation.
-2008-12-07 21:00 castaglia
+2009-02-05 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.
+ * doc/modules/mod_cap.html: Another mod_cap-related FAQ.
-2008-12-07 20:59 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Signals/ABRT.pm,
- t/lib/ProFTPD/Tests/Signals/SEGV.pm, t/signals/abrt.t,
- t/signals/segv.t:
- Added unit tests for the handling of SIGABRT and SIGSEGV in the
- daemon process.
+ * modules/mod_core.c: Remove vestigal IdentLookups handling left by
+ mistake in mod_core.
-2008-12-07 20:35 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Permit empty usernames, passwords (useful for certain tests).
+ * NEWS, RELEASE_NOTES, modules/mod_ident.c: Bug#3155 - Change the
+ IdentLookups default to 'off'.
-2008-12-07 20:00 castaglia
+2009-02-05 castaglia <castaglia>
- * doc/howto/TLS.html:
- Update the TLSProtocol example in light of Bug#3107.
+ * NEWS, contrib/mod_sql_sqlite.c, doc/contrib/mod_sql_sqlite.html:
+ Bug#3128 - mod_sql_sqlite should use transactions for INSERT/UPDATE
+ statements.
-2008-12-07 19:27 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Commands/MKD.pm, Commands/MLST.pm,
- Commands/USER.pm, Config/HideFiles.pm:
- Cleaning up some test cases so that all pass when run as root,
- and that there are no Perl compiler warnings.
+ * NEWS, modules/mod_facts.c: Bug#3133 - mod_facts should advertise
+ TVFS support in the FEAT response.
-2008-12-07 19:05 castaglia
+2009-02-05 castaglia <castaglia>
- * src/dirtree.c:
- Loosen the paranoid parameter sanity check in dir_hide_file() a
- little.
+ * NEWS, contrib/mod_sql_postgres.c: Bug#3123 - Use
+ PQescapeStringConn() rather than PQescapeString().
-2008-12-07 19:01 castaglia
+2009-02-05 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.
+ * NEWS, RELEASE_NOTES, modules/mod_auth.c, src/auth.c: Bug#2894 -
+ Deprecate the AnonymousGroup directive.
-2008-12-07 17:57 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm:
- Adding regression test for Bug#2461.
+ * 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.
-2008-12-07 17:20 castaglia
+2009-02-05 castaglia <castaglia>
- * NEWS, locale/Makefile.in, locale/ru_RU.po:
- Bug#3065 - Russian translation for proftpd.
+ * 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.
-2008-12-07 16:47 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/: tests.pl, t/config/directory/umask.t,
- t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Config/Directory/Umask.pm:
- 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.
+ * locale/Makefile.in, locale/fr_FR.po: Added French translation.
-2008-12-07 15:59 castaglia
+2009-02-05 castaglia <castaglia>
- * doc/howto/Directory.html:
- Update the Directory howto to mention that <Directory> sections
- apply recursively (see Bug#2677).
+ * include/version.h: On to the 1.3.3 release cycle!
-2008-12-07 15:41 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/: tests.pl, t/config/ftpaccess/dele.t,
- t/lib/ProFTPD/Tests/Config/FTPAccess/DELE.pm:
- Add regression tests for Bug#2321.
+ * ChangeLog: Updating ChangeLog for 1.3.2.
-2008-12-07 15:07 castaglia
+2009-02-05 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.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Updating
+ versions for the 1.3.2 release.
-2008-12-07 14:55 castaglia
+2009-02-05 castaglia <castaglia>
- * tests/: tests.pl, t/config/ftpaccess/retr.t,
- t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm:
- Added regression tests for Bug#2038, which doesn't seem to happen
- anymore.
+ * RELEASE_NOTES: Updating release notes.
-2008-12-07 12:56 castaglia
+2009-02-05 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.
+ * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c:
+ Bug#3173 - Encoding-dependent SQL injection vulnerability.
-2008-12-07 12:54 castaglia
+2009-02-03 castaglia <castaglia>
- * tests/tests.pl:
- Add the mod_tls testcase to the testsuite.
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm: Added testcase
+ for Bug#3171.
-2008-12-07 12:54 castaglia
+2009-02-03 castaglia <castaglia>
- * tests/t/: etc/modules/mod_tls/ca-cert.pem,
- etc/modules/mod_tls/server-cert.pem,
- 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.
+ * NEWS, modules/mod_log.c: Bug#3171 - ExtendedLog should log full
+ SITE command using %m.
-2008-12-07 12:31 castaglia
+2009-02-02 castaglia <castaglia>
- * doc/howto/TLS.html:
- Fix typos in TLS howto.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Added testcase
+ for Bug#3170.
-2008-12-07 12:16 castaglia
+2009-02-02 castaglia <castaglia>
- * tests/t/: lib/ProFTPD/Tests/Modules/mod_tls.pm,
- 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.
+ * doc/howto/Rewrite.html: Give examples for handling non-ASCII
+ characters in RewriteRule expressions.
-2008-12-06 19:38 castaglia
+2009-02-02 castaglia <castaglia>
- * doc/howto/CreateHome.html:
- Update the CreateHome howto with an example of the feature added
- by Bug#3040.
+ * doc/contrib/mod_rewrite.html: Clarify exactly what type of
+ encoding is unescaped by mod_rewrite's unescape RewriteMap.
-2008-12-06 19:31 castaglia
+2009-02-02 castaglia <castaglia>
- * tests/: tests.pl, t/config/createhome.t,
- t/lib/ProFTPD/Tests/Config/CreateHome.pm:
- Add tests verifying the fix for Bug#3040; more CreateHome tests
- are needed.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm: Added testcase
+ for Bug#3169.
-2008-12-06 19:29 castaglia
+2009-02-02 castaglia <castaglia>
- * NEWS, modules/mod_auth.c, src/mkhome.c:
- Bug#3040 - Support for CreateHome parent directories owned by
- user.
+ * NEWS, contrib/mod_rewrite.c: Bug#3169 - Multiple RewriteRules for
+ the same RewriteCondition not processed properly.
-2008-12-06 18:50 castaglia
+2009-01-30 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.
+ * 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.
-2008-12-06 16:35 castaglia
+2009-01-30 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention the Sendfile, Rewrite howtos in the release notes.
+ * tests/api/pool.c: Fix a test that was failing due to a thinko.
-2008-12-06 16:33 castaglia
+2009-01-29 castaglia <castaglia>
- * doc/howto/Rewrite.html:
- Remove extraneous header.
+ * 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).
-2008-12-06 16:24 castaglia
+2009-01-28 castaglia <castaglia>
- * doc/howto/Rewrite.html:
- Make the URLs in the doc be relative to the rest of the docs.
+ * modules/mod_auth.c: Missed a few places in need of translation.
-2008-12-06 16:19 castaglia
+2009-01-28 castaglia <castaglia>
- * doc/howto/: Rewrite.html, index.html:
- Adding a rewrite howto to the collection.
+ * 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.
-2008-12-06 14:12 castaglia
+2009-01-27 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Logging/TransferLog.pm,
- t/logging/transferlog.t:
- Added unit tests for the TransferLog format.
+ * src/scoreboard.c: Missed a spot.
-2008-12-04 14:01 castaglia
+2009-01-27 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.
+ * src/scoreboard.c: Cache the errno value when using pr_trace_msg(),
+ since that function can change the errno value.
-2008-12-04 13:45 castaglia
+2009-01-26 castaglia <castaglia>
- * NEWS, contrib/mod_dynmasq.c:
- Bug#3144 - mod_dynmasq returns same IP address, even though
- actual IP address has changed.
+ * modules/mod_lang.c: When "UseEncoding off" is configured, *really*
+ disable encoding.
-2008-12-04 13:35 castaglia
+2009-01-26 castaglia <castaglia>
- * src/inet.c:
- After closing a connection, make sure the various fields are
- reset to NULL/-1 as appropriate.
+ * 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.
-2008-12-03 22:55 castaglia
+2009-01-26 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.
+ * 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.)
-2008-12-03 22:45 castaglia
+2009-01-25 jwm <jwm>
- * 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).
+ * 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 at noc.uoa.gr>.
+ http://forums.proftpd.org/smf/index.php/topic,3562.0.html
-2008-12-03 21:49 castaglia
+2009-01-23 castaglia <castaglia>
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm,
- 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.
+ * include/version.h: Back to a CVS version.
-2008-12-03 09:58 castaglia
+2009-01-23 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.
+ * ChangeLog: Updating ChangeLog for 1.3.2rc4.
-2008-12-03 00:41 castaglia
+2009-01-23 castaglia <castaglia>
- * tests/: tests.pl, t/commands/mff.t, t/commands/mfmt.t,
- t/lib/ProFTPD/Tests/Commands/MFF.pm,
- t/lib/ProFTPD/Tests/Commands/MFMT.pm:
- Add some tests (not exhaustive) for the MFMT and MFF commands.
+ * NEWS, RELEASE_NOTES: Updating NEWS, release notes for 1.3.2rc4.
-2008-12-03 00:40 castaglia
+2009-01-23 castaglia <castaglia>
- * NEWS, modules/mod_facts.c:
- Bug#3142 - "Invalid number of arguments MFMT" due to spaces in
- path argument.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for
+ 1.3.2rc4.
-2008-12-03 00:14 castaglia
+2009-01-23 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Support use of <Limit> sections in the testcase config files.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Fixup some tests
+ which were failing because the default config changed the value of
+ AllowOverride.
-2008-12-03 00:10 castaglia
+2009-01-22 castaglia <castaglia>
- * tests/: tests.pl, t/config/limit/xmkd.t,
- t/lib/ProFTPD/Tests/Config/Limit/XMKD.pm:
- Begin the collection of unit tests for various <Limit>
- configurations.
+ * doc/contrib/mod_sql.html: Add some links for easier
+ cross-referencing.
-2008-12-03 00:06 castaglia
+2009-01-22 castaglia <castaglia>
- * doc/modules/mod_facts.html:
- Updated URL to Draft for MFF/MFMT commands.
+ * 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.
-2008-12-02 21:09 castaglia
+2009-01-17 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm,
- t/logging/extendedlog.t:
- Add regression tests for Bug#3137.
+ * 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.
-2008-12-02 21:06 castaglia
+2009-01-16 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c, src/data.c:
- Bug#3137 - ProFTPD does not log filename %f for uploaded files.
+ * RELEASE_NOTES: Mention the Compiling howto.
-2008-11-26 09:21 castaglia
+2009-01-16 castaglia <castaglia>
- * tests/: tests.pl, t/commands/mlsd.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/MLSD.pm:
- Adding tests for the MLSD command.
+ * doc/howto/Compiling.html, doc/howto/index.html: Finally finished a
+ howto on compiling proftpd.
-2008-11-26 09:18 castaglia
+2009-01-16 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).
+ * INSTALL: Typos.
-2008-11-24 16:41 castaglia
+2009-01-14 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Add the methods for the MLSD, MLST, MFF, MFMT commands.
+ * doc/contrib/mod_tls.html: Typo.
-2008-11-24 16:39 castaglia
+2009-01-14 castaglia <castaglia>
- * tests/: tests.pl, t/commands/mlst.t,
- t/lib/ProFTPD/Tests/Commands/MLST.pm:
- Adding tests for the MLST command.
+ * src/main.c: Use "microsecs", as it is less confusing to admins.
-2008-11-24 14:37 castaglia
+2009-01-13 castaglia <castaglia>
- * tests/: tests.pl, t/config/maxinstances.t,
- t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Config/MaxInstances.pm:
- Added test for the MaxInstances directive.
+ * src/main.c: Copy the signo of a terminating signal a little
+ earlierin the handler.
-2008-11-22 15:23 castaglia
+2009-01-12 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.
+ * doc/howto/Vhost.html: Add another vhost FAQ.
-2008-11-22 08:25 castaglia
+2009-01-12 castaglia <castaglia>
- * src/fsio.c:
- Add signal handling in the potentially long-running while loops
- of the filesystem path resolution functions.
+ * src/fsio.c: Add trace logging of any statvfs()/statfs() errors.
-2008-11-21 23:07 castaglia
+2009-01-09 castaglia <castaglia>
- * NEWS, contrib/mod_ratio.c:
- Bug#1636 - GroupRatio does not check user's supplemental group
- membership.
+ * src/main.c: Log segfaults in the TraceLog using the 'signal'
+ channel.
-2008-11-21 20:45 castaglia
+2009-01-08 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_rewrite.pm,
- t/modules/mod_rewrite.t:
- Added some unit tests for the mod_rewrite module. There will be
- many more to come for this module.
+ * 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.
-2008-11-21 20:44 castaglia
+2009-01-08 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#2915 - mod_rewrite does not work well for SITE commands.
+ * contrib/mod_sql.c: Typo.
-2008-11-21 19:12 castaglia
+2009-01-08 castaglia <castaglia>
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Add a site() method, for sending arbitrary SITE commands.
+ * 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.
-2008-11-21 17:31 castaglia
+2009-01-07 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.
+ * 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.
-2008-11-21 16:57 castaglia
+2009-01-06 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Signals/HUP.pm,
- t/lib/ProFTPD/Tests/Signals/TERM.pm, t/signals/hup.t:
- Add unit tests for the HUP signal, at least for the daemon
- process.
+ * src/auth.c: Typo.
-2008-11-21 16:11 castaglia
+2009-01-06 castaglia <castaglia>
- * doc/howto/: Sendfile.html, index.html:
- Adding doc covering sendfile and its issues.
+ * 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.
-2008-11-20 21:54 castaglia
+2009-01-06 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.
+ * doc/howto/Vhost.html: I realized that the Vhost howto didn't
+ mention the "already in use" warning message, and should.
-2008-11-20 15:17 castaglia
+2009-01-05 castaglia <castaglia>
- * include/version.h:
- Updating version for CVS.
+ * 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).
-2008-11-20 14:28 castaglia
+2009-01-04 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * 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.
-2008-11-20 14:26 castaglia
+2009-01-04 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for RC3 release.
+ * 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().
-2008-11-20 14:23 castaglia
+2009-01-02 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes, preparing for release.
+ * 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.
-2008-11-20 13:59 castaglia
+2009-01-02 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.
+ * 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-11-20 11:50 castaglia
+2008-12-31 castaglia <castaglia>
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm,
- Tests/Modules/mod_wrap2_file.pm, Tests/Modules/mod_wrap2_sql.pm,
- 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.
+ * contrib/mod_tls.c: Remove unnecessary character.
-2008-11-20 01:11 castaglia
+2008-12-31 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_ban.pm,
- t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm,
- t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm,
- t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm:
- Retrofit the module-specific unit tests to use test-specific
- scratch directories. That should be all of the existing tests.
+ * NEWS, contrib/mod_rewrite.c: Bug#3159 - mod_rewrite build fails
+ due to missing mode argument in open(2) call.
-2008-11-20 00:27 castaglia
+2008-12-31 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- Quell Perl warnings about redeclared variables.
+ * 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-11-20 00:18 castaglia
+2008-12-30 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logins.pm, Commands/ABOR.pm,
- Commands/APPE.pm, Commands/LIST.pm, Commands/NLST.pm,
- Commands/RETR.pm, Commands/STOR.pm, Commands/STOU.pm,
- Config/DisplayConnect.pm, Config/DisplayLogin.pm,
- Config/HideFiles.pm, Config/MaxLoginAttempts.pm,
- Config/MaxRetrieveFileSize.pm, Config/MaxStoreFileSize.pm,
- Config/RequireValidShell.pm, Config/ServerIdent.pm,
- Config/TimeoutIdle.pm, Config/TimeoutLogin.pm,
- Config/TimeoutNoTransfer.pm, Config/TimeoutSession.pm,
- Config/TimeoutStalled.pm, Config/UseFtpUsers.pm, Signals/TERM.pm:
+ * doc/howto/NAT.html: Update NAT howto with ipf example.
- Retrofitted more of the testsuite to use more individualized
- per-test scratch directories.
+2008-12-30 castaglia <castaglia>
-2008-11-19 20:19 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).
- * contrib/mod_ban.c:
- Minor nits and improvements to mod_ban; no real functional
- changes.
+2008-12-24 castaglia <castaglia>
-2008-11-19 16:35 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.
- * tests/t/lib/ProFTPD/Tests/: Logins.pm, Commands/ALLO.pm,
- Commands/CDUP.pm, Commands/CWD.pm, Commands/DELE.pm,
- Commands/EPRT.pm, Commands/EPSV.pm, Commands/FEAT.pm,
- Commands/HELP.pm, Commands/MDTM.pm, Commands/MKD.pm,
- Commands/MODE.pm, Commands/NOOP.pm, Commands/PASS.pm,
- Commands/PASV.pm, Commands/PORT.pm, Commands/PWD.pm,
- Commands/QUIT.pm, Commands/REST.pm, Commands/RMD.pm,
- Commands/RNFR.pm, Commands/RNTO.pm, Commands/SIZE.pm,
- Commands/STRU.pm, Commands/SYST.pm, Commands/TYPE.pm,
- Commands/USER.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-12-23 castaglia <castaglia>
-2008-11-19 11:13 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.
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm, Tests/Commands/ABOR.pm:
+2008-12-23 castaglia <castaglia>
- 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.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_lang.pm: Add test verifying
+ that mod_lang picks up and handles the LANG environment variable
+ properly.
- 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-12-23 castaglia <castaglia>
-2008-11-19 10:21 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.
- * 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-12-23 castaglia <castaglia>
-2008-11-19 10:07 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.
- * NEWS, src/data.c:
- Bug#3135 - Aborting a download can lead to segfault in some
- cases.
+2008-12-23 castaglia <castaglia>
-2008-11-19 01:44 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.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_ban.pm,
- t/modules/mod_ban.t:
- Added start of unit tests for the mod_ban module.
+2008-12-22 castaglia <castaglia>
-2008-11-19 01:42 castaglia
+ * contrib/mod_tls.c: Explicit cast to quell compiler warnings about
+ signedness differences.
- * 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-12-21 castaglia <castaglia>
-2008-11-19 01:13 castaglia
+ * src/encode.c: Try to reduce confusion when we didn't detect
+ iconv() (no HAVE_ICONV), but we did detect <iconv.h>.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Signals/TERM.pm,
- t/signals/term.t:
- 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-12-21 castaglia <castaglia>
-2008-11-19 00:58 castaglia
+ * doc/howto/Quotas.html: Add FAQ about how mod_quotatab handles file
+ overwrites/appends.
- * 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-12-21 castaglia <castaglia>
-2008-11-18 19:54 castaglia
+ * src/auth.c: The key comparators for the UID/GID cache tables need
+ to return zero if the keys match, not 1. Oops.
- * configure:
- Updated configure.
+2008-12-21 castaglia <castaglia>
-2008-11-18 19:51 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).
- * Make.rules.in, Makefile.in, configure.in, locale/Makefile.in:
- Properly honor the --localedir configure option.
+2008-12-21 castaglia <castaglia>
-2008-11-18 19:31 castaglia
+ * src/table.c: Fix some edge cases that could lead to segfaults.
- * src/encode.c:
- Comment typo.
+2008-12-18 castaglia <castaglia>
-2008-11-18 11:29 castaglia
+ * src/dirtree.c: Make sure that the cmd_rec returned by
+ pr_cmd_alloc() has an instantiated cmd->notes table.
- * 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-12-18 castaglia <castaglia>
-2008-11-17 09:31 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Fix typos.
- * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- Be sure to clean up the generated log file.
+2008-12-17 castaglia <castaglia>
-2008-11-17 08:59 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.
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Commands/ABOR.pm:
- After all the work done on Bug#3131, these ABOR unit tests should
- definitely be checked in and added to the testsuite.
+2008-12-17 castaglia <castaglia>
-2008-11-16 18:32 castaglia
+ * contrib/mod_quotatab.c: It's not necessarily safe to use equality
+ comparisons with floats; better to use less-than/greater-than
+ instead.
- * NEWS:
- Remove duplicate bug entry.
+2008-12-17 castaglia <castaglia>
-2008-11-16 17:49 castaglia
+ * doc/howto/TLS.html: Add a FAQ about the OpenSSL header/library
+ version mismatch warning.
- * 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-12-17 castaglia <castaglia>
-2008-11-16 17:42 castaglia
+ * NEWS, modules/mod_facl.c: Bug#3150 - mod_facl erroneously assumes
+ no permissions, rather than all permissions, in some cases.
- * 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-12-17 castaglia <castaglia>
-2008-11-16 12:35 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.
- * NEWS, src/main.c:
- Bug#3073 - Command arguments not decoded properly in some places.
+2008-12-17 castaglia <castaglia>
-2008-11-15 14:53 castaglia
+ * doc/contrib/mod_wrap2_file.html: Clean up the example
+ mod_wrap2_file configs a little.
- * configure:
- Updated configure.
+2008-12-16 castaglia <castaglia>
-2008-11-15 14:37 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.)
- * RELEASE_NOTES:
- Mention the change in TimeoutLinger default value in the release
- notes.
+2008-12-16 castaglia <castaglia>
-2008-11-15 14:34 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.
- * 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-12-16 castaglia <castaglia>
-2008-11-14 20:26 castaglia
+ * src/dirtree.c: Forgot to handle the case, in build_dyn_config(),
+ where the path was just "/".
- * tests/t/lib/ProFTPD/Tests/Commands/: EPRT.pm, 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-12-16 castaglia <castaglia>
-2008-11-14 20:23 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.
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Allow the epsv() method to take an optional protocol number, as
- allowed in the EPSV command.
+2008-12-16 castaglia <castaglia>
-2008-11-14 19:31 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.
- * 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-12-16 castaglia <castaglia>
-2008-11-14 19:23 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.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Quell Perl warning about redeclared variable.
+2008-12-14 castaglia <castaglia>
-2008-11-14 19:21 castaglia
+ * doc/howto/Tracing.html: Mention the trick of disabling some of the
+ default trace channels.
- * 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-12-14 castaglia <castaglia>
-2008-11-14 18:01 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.
- * NEWS, src/data.c, src/netio.c:
- Bug#3131 - Session process uses 100% CPU after aborted transfer.
+2008-12-14 castaglia <castaglia>
-2008-11-14 14:40 castaglia
+ * doc/howto/Sendfile.html: Correct the grammar.
- * tests/Makefile.in:
- Fix typo.
+2008-12-13 castaglia <castaglia>
-2008-11-14 11:58 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.
- * 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-12-13 castaglia <castaglia>
-2008-11-14 11:35 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).
- * NEWS, src/main.c:
- Bug#3132 - Handling of SIGABRT signal leads to endless loop.
+2008-12-13 castaglia <castaglia>
-2008-11-14 10:25 castaglia
+ * src/dirtree.c: Add handling of signals in a potentially
+ long-running while loop (especially if recursion is requested).
- * src/: main.c, 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.
+2008-12-13 castaglia <castaglia>
- 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.
+ * 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-11-13 12:00 castaglia
+2008-12-12 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.
+ * doc/contrib/mod_sql.html: Fix the text for better legibility.
-2008-11-13 00:15 castaglia
+2008-12-12 castaglia <castaglia>
- * tests/t/: commands/abor.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.
+ * doc/contrib/mod_sql.html: Mention that the
+ SQL{Group,User}WhereClause directives support the same variables as
+ SQLNamedQuery.
-2008-11-12 08:33 castaglia
+2008-12-12 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_wrap2_sql.pm,
- t/modules/mod_wrap2_sql.t:
- Added unit tests for mod_wrap2_sql.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Added test
+ for the SQLUserWhereClause directive.
-2008-11-11 22:45 castaglia
+2008-12-12 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/Tests/Modules/mod_wrap2_file.pm,
- t/modules/mod_wrap2_file.t:
- Add unit tests for mod_wrap2_file.
+ * 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-11-11 09:42 castaglia
+2008-12-12 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.
+ * 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-11-11 09:25 castaglia
+2008-12-12 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/: Logins.pm, Commands/ALLO.pm,
- Commands/APPE.pm, Commands/CDUP.pm, Commands/CWD.pm,
- Commands/DELE.pm, Commands/EPRT.pm, Commands/EPSV.pm,
- Commands/FEAT.pm, Commands/HELP.pm, Commands/LIST.pm,
- Commands/MDTM.pm, Commands/MKD.pm, Commands/MODE.pm,
- Commands/NOOP.pm, Commands/PASS.pm, Commands/PASV.pm,
- Commands/PORT.pm, Commands/PWD.pm, Commands/QUIT.pm,
- Commands/REST.pm, Commands/RNFR.pm, Commands/SIZE.pm,
- Commands/STRU.pm, Commands/SYST.pm, Commands/TYPE.pm,
- Commands/USER.pm, Config/DisplayConnect.pm,
- Config/DisplayLogin.pm, Config/MaxLoginAttempts.pm,
- Config/ServerIdent.pm:
- Remove unnecessary import of module-related functions.
+ * 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-11-10 21:35 castaglia
+2008-12-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.
+ * 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-11-10 14:14 castaglia
+2008-12-11 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.
+ * 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-11-10 14:13 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Config/: MaxRetrieveFileSize.pm,
- MaxStoreFileSize.pm:
- Quell Perl compiler warnings about re-declared variables.
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Fix Perl
+ warnings about redeclared variables.
-2008-11-08 14:56 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/: tests.pl, t/config/maxretrievefilesize.t,
- t/config/maxstorefilesize.t,
- t/lib/ProFTPD/Tests/Config/MaxRetrieveFileSize.pm,
- t/lib/ProFTPD/Tests/Config/MaxStoreFileSize.pm:
- Added unit tests for the MaxRetrieveFileSize and MaxStoreFileSize
- directives.
+ * 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-11-08 13:32 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/: tests.pl, t/config/requirevalidshell.t,
- t/config/useftpusers.t,
- t/lib/ProFTPD/Tests/Config/RequireValidShell.pm,
- t/lib/ProFTPD/Tests/Config/UseFtpUsers.pm:
- Added unit tests for the RequireValidShell and UseFtpUsers
- directives.
+ * 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-11-08 12:58 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/: tests.pl, t/config/timeoutidle.t,
- t/config/timeoutlogin.t, t/config/timeoutnotransfer.t,
- t/config/timeoutsession.t, t/config/timeoutstalled.t,
- t/lib/ProFTPD/Tests/Config/TimeoutIdle.pm,
- t/lib/ProFTPD/Tests/Config/TimeoutLogin.pm,
- t/lib/ProFTPD/Tests/Config/TimeoutNoTransfer.pm,
- t/lib/ProFTPD/Tests/Config/TimeoutSession.pm,
- t/lib/ProFTPD/Tests/Config/TimeoutStalled.pm:
- Added unit tests for the various Timeout directives.
+ * modules/mod_core.c: Style cleanups in the <Directory> config
+ handler.
-2008-11-07 15:31 castaglia
+2008-12-11 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.
+ * 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-11-07 15:25 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm:
- The STOU tests now pass when run both as root and as non-root.
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Quell some
+ Perl warnings about redeclared variables.
-2008-11-07 15:21 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm:
- Update the STOR tests to pass when run as root and as non-root.
+ * modules/mod_lang.c: Stupid thinko: If "OPTS UTF8 on" is sent, do
+ not disable encoding by the FS functions.
-2008-11-07 15:17 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm:
- Make sure the RNTO tests pass when run as root and as non-root.
+ * modules/mod_lang.c: Fix some of the problems found in mod_lang
+ using the testsuite.
-2008-11-07 15:13 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm:
- Adjust the RMD tests to pass when run as root and as non-root.
+ * 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-11-07 15:10 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Make the RETR tests pass when run as both root and non-root.
+ * 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-11-07 15:06 castaglia
+2008-12-11 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm:
- Update the NLST tests to pass when run as root and as non-root.
+ * modules/mod_core.c: Stylistic nit cleanup.
-2008-11-07 15:00 castaglia
+2008-12-11 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.
+ * modules/mod_delay.c: Clean up some stylistic nits in mod_delay.
-2008-11-07 14:57 castaglia
+2008-12-11 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.
+ * 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-11-07 14:50 castaglia
+2008-12-10 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.
+ * doc/howto/Directory.html: Add another FAQ for the Directory howto,
+ covering preventing a directory from being renamed.
-2008-11-07 14:43 castaglia
+2008-12-10 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.
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Some cases
+ where directory/file renaming works (as expected) or is denied (as
+ expected).
-2008-11-07 11:35 castaglia
+2008-12-10 castaglia <castaglia>
- * doc/howto/Testing.html:
- Mention that some integration tests are skipped if not run with
- root privs.
+ * tests/t/lib/ProFTPD/Tests/Config/HideFiles.pm: Add a couple of
+ test cases for HideFiles, using the per-user parameters.
-2008-11-07 11:23 castaglia
+2008-12-10 castaglia <castaglia>
- * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm:
- Add a regression test for Bug#2922.
+ * 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-11-07 10:37 castaglia
+2008-12-10 castaglia <castaglia>
- * tests/t/: lib/ProFTPD/TestSuite/FTP.pm,
- lib/ProFTPD/TestSuite/Utils.pm,
- lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm,
- modules/mod_sql_sqlite.t:
- Adding some regressions tests for Bugs #3116, #3124, and #3126.
+ * doc/howto/Chroot.html: Add FAQ about DefaultRoot and NFS mounts.
-2008-11-06 13:47 castaglia
+2008-12-10 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#3130 - HideFiles can cause segfault.
+ * 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-11-06 13:46 castaglia
+2008-12-10 castaglia <castaglia>
- * tests/: tests.pl, t/config/hidefiles.t,
- t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Config/HideFiles.pm:
- Added unit test for reproducing Bug#3130 (and preventing
- regressions).
+ * 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-11-05 23:46 castaglia
+2008-12-10 castaglia <castaglia>
- * tests/: tests.pl, t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Modules/mod_sql.pm,
- t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm,
- t/modules/mod_sql.t, t/modules/mod_sql_sqlite.t:
- 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).
+ * tests/t/config/order.t,
+ tests/t/lib/ProFTPD/Tests/Config/Order.pm, tests/tests.pl: Added
+ tests for the Order directive.
- 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-12-10 castaglia <castaglia>
-2008-11-05 18:46 castaglia
+ * tests/t/config/storeuniqueprefix.t,
+ tests/t/lib/ProFTPD/Tests/Config/StoreUniquePrefix.pm,
+ tests/tests.pl: Added test for the StoreUniquePrefix directive.
- * doc/howto/Testing.html:
- Update the Testing howto to reflect changes made to the 'make
- check' target.
+2008-12-10 castaglia <castaglia>
-2008-11-05 18:45 castaglia
+ * doc/howto/Scoreboard.html: Mention the "ScoreboardFile /dev/null"
+ trick.
- * tests/: .cvsignore, Makefile.in, t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/STOU.pm:
- Run the integration tests after the API tests, as part of the
- 'make check' target.
+2008-12-10 castaglia <castaglia>
- 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).
+ * tests/t/config/deleteabortedstores.t,
+ tests/t/lib/ProFTPD/Tests/Config/DeleteAbortedStores.pm,
+ tests/tests.pl: Added test for the DeleteAbortedStores directive.
-2008-11-05 18:28 castaglia
+2008-12-10 castaglia <castaglia>
- * doc/howto/index.html:
- Add a link to the Testing howto in the howto index.
+ * tests/t/lib/ProFTPD/Tests/Config/HiddenStores.pm: Remove debugging
+ cruft.
-2008-11-05 18:27 castaglia
+2008-12-10 castaglia <castaglia>
- * doc/howto/Testing.html:
- The Testing howto is now in a mostly usable form.
+ * 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-11-05 18:23 castaglia
+2008-12-10 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.
+ * 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-11-05 17:38 castaglia
+2008-12-10 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.
+ * contrib/mod_site_misc.c: Avoid descriptor leak by closing the
+ directory descriptor before returning from site_misc_delete_dir().
-2008-11-03 11:27 castaglia
+2008-12-10 castaglia <castaglia>
- * contrib/mod_sql_sqlite.c:
- Explain why sqlite3_shutdown() is not called when the
- mod_sql_sqlite module is being unloaded.
+ * 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-11-03 10:46 castaglia
+2008-12-10 castaglia <castaglia>
- * contrib/mod_sql_sqlite.c:
- Stylistic nits; no functional change.
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Pass along any other
+ arguments for custom SITE commands.
-2008-11-03 09:55 castaglia
+2008-12-10 castaglia <castaglia>
- * NEWS, contrib/mod_sql_sqlite.c:
- Bug#3126 - Segfault in mod_sql_sqlite when user belongs to
- multiple groups.
+ * 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-10-31 13:15 castaglia
+2008-12-09 castaglia <castaglia>
- * NEWS, contrib/mod_ldap.c, contrib/mod_sql.c, src/log.c:
- Bug#2767 - gcc 4.0/amd64 warnings.
+ * modules/mod_core.c: Remove redundant "<Directory>:" in error
+ message displayed when proftpd detects a duplicate <Directory>
+ configuration.
-2008-10-31 10:38 castaglia
+2008-12-09 castaglia <castaglia>
- * NEWS, include/fsio.h, src/fsio.c:
- Bug#3092 - FSIO API needs mechanism for allowing registered FS
- handlers to permit atomic renames.
+ * doc/howto/Directory.html: Add FAQ about matching multiple
+ <Directory> sections to the same path, and which section wins.
-2008-10-30 16:38 castaglia
+2008-12-09 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.
+ * tests/t/lib/ProFTPD/Tests/Config/Directory/Limits.pm: Regression
+ tests for Bug#3147.
- 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-12-09 castaglia <castaglia>
-2008-10-29 15:07 castaglia
+ * NEWS, modules/mod_core.c, src/dirtree.c: Bug#3147 -
+ Comma-delimited commands in <Limit> sections not handled properly.
- * RELEASE_NOTES:
- Start prepping the RC3 release notes.
+2008-12-09 castaglia <castaglia>
-2008-10-28 10:22 castaglia
+ * doc/howto/Tracing.html: Mention the "directory" log channel, added
+ as part of the fix for Bug#3146.
- * 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-12-09 castaglia <castaglia>
-2008-10-28 10:19 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.
- * 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-12-09 castaglia <castaglia>
-2008-10-27 18:02 castaglia
+ * NEWS, src/dirtree.c: Bug#3146 - <Directory> paths using glob
+ characters may not match as expected.
- * doc/howto/Testing.html:
- Adding slightly more substance to the Testing howto; hopefully I
- can muster the motivation to finish it later tonight.
+2008-12-09 castaglia <castaglia>
-2008-10-27 17:48 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Add checks
+ of the tally values for more of the upload quotatab tests.
- * 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-12-09 castaglia <castaglia>
-2008-10-27 17:46 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.
- * include/inet.h, src/inet.c:
- Remove the pr_inet_associate() function; nothing was using it.
+2008-12-09 castaglia <castaglia>
-2008-10-27 15:35 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added
+ mod_quotatab_sql tests for uploads and the 'all' limit.
- * NEWS, contrib/mod_sql.c:
- Bug#3124 - mod_sql improperly substitutes variables in user/group
- names.
+2008-12-09 castaglia <castaglia>
-2008-10-21 11:03 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added
+ mod_quotatab_sql tests for uploads and class quota.
- * configure:
- Updated configure.
+2008-12-08 castaglia <castaglia>
-2008-10-21 11:01 castaglia
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_quotatab_sql.pm: Added
+ mod_quotatab_sql tests for uploads and group quota.
- * NEWS, config.h.in, configure.in, src/encode.c:
- Bug#3122: iconv() not detected properly on FreeBSD when
- --enable-nls is used.
+2008-12-08 castaglia <castaglia>
-2008-10-20 09:08 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.
- * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm:
- Make sure that the PASS unit tests expected the proper response
- message.
+2008-12-08 castaglia <castaglia>
-2008-10-20 08:14 castaglia
+ * tests/t/config/groupowner.t,
+ tests/t/lib/ProFTPD/Tests/Config/GroupOwner.pm, tests/tests.pl:
+ Added tests for the GroupOwner directive.
- * include/glibc-glob.h:
- Fix compiler detection to deal with other compilers.
+2008-12-08 castaglia <castaglia>
-2008-10-19 17:45 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Allow zero IDs in the
+ AuthUserFile and AuthGroupFile files.
- * tests/: tests.pl, t/config/maxloginattempts.t,
- t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm:
- Added unit tests for the MaxLoginAttempts directive.
+2008-12-08 castaglia <castaglia>
-2008-10-19 17:02 castaglia
+ * tests/t/config/userowner.t,
+ tests/t/lib/ProFTPD/Tests/Config/UserOwner.pm, tests/tests.pl: Added
+ tests for the UserOwner directive.
- * locale/: en_US.po, it_IT.po, proftpd.pot, zh_CN.po:
- Removing redundant (and now absent) entry for "Login incorrect";
- there is already a "Login incorrect." (note the period) entry.
+2008-12-08 castaglia <castaglia>
-2008-10-19 17:01 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.
- * 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-12-08 castaglia <castaglia>
-2008-10-19 16:59 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Handle arrayrefs within
+ hashrefs properly when writing out the config.
- * modules/mod_auth.c:
- Fixed failed login message to be consistent with other instances
- of the "Login incorrect" string.
+2008-12-08 castaglia <castaglia>
-2008-10-19 16:41 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.
- * tests/t/lib/ProFTPD/Tests/Commands/: EPSV.pm, PASV.pm:
- Make the regexes tigher for checking the expected EPSV and PASV
- responses.
+2008-12-08 castaglia <castaglia>
-2008-10-19 12:48 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.
- * tests/: tests.pl, t/commands/eprt.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/EPRT.pm:
- Added tests for the EPRT command.
+2008-12-08 castaglia <castaglia>
-2008-10-19 12:31 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Permit empty usernames,
+ passwords (useful for certain tests).
- * tests/: tests.pl, t/commands/epsv.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/EPSV.pm:
- Added tests for the EPSV command.
+2008-12-08 castaglia <castaglia>
-2008-10-19 12:23 castaglia
+ * doc/howto/TLS.html: Update the TLSProtocol example in light of
+ Bug#3107.
- * tests/: tests.pl, t/commands/feat.t, t/commands/help.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/FEAT.pm,
- t/lib/ProFTPD/Tests/Commands/HELP.pm:
- Added tests for the FEAT and HELP commands.
+2008-12-08 castaglia <castaglia>
-2008-10-19 12:02 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.
- * tests/: tests.pl, t/commands/pass.t, t/commands/user.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/PASS.pm,
- t/lib/ProFTPD/Tests/Commands/USER.pm:
- Added tests for the USER and PASS commands.
+2008-12-08 castaglia <castaglia>
-2008-10-19 11:36 castaglia
+ * src/dirtree.c: Loosen the paranoid parameter sanity check in
+ dir_hide_file() a little.
- * tests/: tests.pl, t/config/displaylogin.t,
- t/lib/ProFTPD/Tests/Config/DisplayLogin.pm:
- Added tests for the DisplayLogin directive.
+2008-12-08 castaglia <castaglia>
-2008-10-18 19:04 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.
- * tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm:
- Forgot to clean up a test file that's outside of the tmp/
- directory.
+2008-12-08 castaglia <castaglia>
-2008-10-18 18:50 castaglia
+ * tests/t/lib/ProFTPD/Tests/Config/FTPAccess/RETR.pm: Adding
+ regression test for Bug#2461.
- * tests/: tests.pl, t/config/displayconnect.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Config/DisplayConnect.pm:
- Added tests for the DisplayConnect directive.
+2008-12-08 castaglia <castaglia>
-2008-10-18 17:38 castaglia
+ * NEWS, locale/Makefile.in, locale/ru_RU.po: Bug#3065 - Russian
+ translation for proftpd.
- * tests/: tests.pl, t/config/serverident.t,
- t/lib/ProFTPD/Tests/Config/ServerIdent.pm:
- Added first unit tests for config directives; we're starting with
- ServerIdent.
+2008-12-08 castaglia <castaglia>
-2008-10-18 16:20 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.
- * tests/: tests.pl, t/commands/appe.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/APPE.pm:
- Added tests for the APPE command.
+2008-12-07 castaglia <castaglia>
-2008-10-18 16:12 castaglia
+ * doc/howto/Directory.html: Update the Directory howto to mention
+ that <Directory> sections apply recursively (see Bug#2677).
- * tests/: tests.pl, t/commands/stou.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/LIST.pm,
- t/lib/ProFTPD/Tests/Commands/NLST.pm,
- t/lib/ProFTPD/Tests/Commands/RETR.pm,
- t/lib/ProFTPD/Tests/Commands/STOR.pm,
- t/lib/ProFTPD/Tests/Commands/STOU.pm:
- Added tests for the STOU command. Cleaned up handling of FTP
- response messages.
+2008-12-07 castaglia <castaglia>
-2008-10-18 14:58 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.
- * tests/: tests.pl, t/commands/stor.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/STOR.pm:
- Added some tests for the STOR command.
+2008-12-07 castaglia <castaglia>
-2008-10-18 14:48 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.
- * 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-12-07 castaglia <castaglia>
-2008-10-18 13:43 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.
- * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Remove copy-n-pasted code from the RETR tests, and make them work
- more reliably.
+2008-12-07 castaglia <castaglia>
-2008-10-18 12:59 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.
- * 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-12-07 castaglia <castaglia>
-2008-10-17 17:24 castaglia
+ * tests/tests.pl: Add the mod_tls testcase to the testsuite.
- * tests/: tests.pl, t/commands/retr.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/LIST.pm,
- t/lib/ProFTPD/Tests/Commands/NLST.pm,
- t/lib/ProFTPD/Tests/Commands/RETR.pm:
- Add some basic tests of the RETR command.
+2008-12-07 castaglia <castaglia>
-2008-10-17 14:27 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.
- * tests/: tests.pl, t/commands/list.t,
- t/lib/ProFTPD/TestSuite/FTP.pm, t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Commands/LIST.pm:
- Start of tests for the LIST command; expect more in the future.
+2008-12-07 castaglia <castaglia>
-2008-10-17 08:25 castaglia
+ * doc/howto/TLS.html: Fix typos in TLS howto.
- * contrib/mod_wrap2/mod_wrap2.c:
- Fix Bug#3120 for the WrapGroupTables and WrapUserTables
- directives as well.
+2008-12-07 castaglia <castaglia>
-2008-10-17 08:16 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.
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Bug#3120 - WrapTables not allowed in <Anonymous> context.
+2008-12-07 castaglia <castaglia>
-2008-10-15 19:04 castaglia
+ * doc/howto/CreateHome.html: Update the CreateHome howto with an
+ example of the feature added by Bug#3040.
- * tests/t/lib/ProFTPD/Tests/: Logins.pm, Commands/ALLO.pm,
- Commands/CDUP.pm, Commands/CWD.pm, Commands/DELE.pm,
- Commands/MDTM.pm, Commands/MKD.pm, Commands/MODE.pm,
- Commands/NOOP.pm, Commands/PASV.pm, Commands/PORT.pm,
- Commands/PWD.pm, Commands/QUIT.pm, Commands/REST.pm,
- Commands/RMD.pm, Commands/SIZE.pm, Commands/STRU.pm,
- Commands/SYST.pm, Commands/TYPE.pm:
- Updated tests to use server_wait().
+2008-12-07 castaglia <castaglia>
-2008-10-15 16:55 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.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, TestSuite/Utils.pm,
- Tests/Commands/NLST.pm, Tests/Commands/RNFR.pm,
- 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-12-07 castaglia <castaglia>
-2008-10-15 10:18 castaglia
+ * NEWS, modules/mod_auth.c, src/mkhome.c: Bug#3040 - Support for
+ CreateHome parent directories owned by user.
- * configure:
- Updated configure.
+2008-12-07 castaglia <castaglia>
-2008-10-15 10:12 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.
- * NEWS, config.h.in, configure.in:
- Bug#3119 - Search for libcap2 in addition to libcap for mod_cap
- support.
+2008-12-07 castaglia <castaglia>
-2008-10-15 09:31 castaglia
+ * RELEASE_NOTES: Mention the Sendfile, Rewrite howtos in the release
+ notes.
- * 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-12-07 castaglia <castaglia>
-2008-10-14 16:23 castaglia
+ * doc/howto/Rewrite.html: Remove extraneous header.
- * 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-12-07 castaglia <castaglia>
-2008-10-14 15:28 castaglia
+ * doc/howto/Rewrite.html: Make the URLs in the doc be relative to
+ the rest of the docs.
- * contrib/mod_ifsession.c:
- Fix compilation error.
+2008-12-07 castaglia <castaglia>
-2008-10-13 23:24 castaglia
+ * doc/howto/Rewrite.html, doc/howto/index.html: Adding a rewrite
+ howto to the collection.
- * 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-12-06 castaglia <castaglia>
-2008-10-13 23:20 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/TransferLog.pm,
+ tests/t/logging/transferlog.t, tests/tests.pl: Added unit tests for
+ the TransferLog format.
- * 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-12-04 castaglia <castaglia>
-2008-10-13 23:03 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.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Add a function that encapsulates the server-wait part of the
- tests, including a timeout.
+2008-12-04 castaglia <castaglia>
-2008-10-13 21:25 castaglia
+ * NEWS, contrib/mod_dynmasq.c: Bug#3144 - mod_dynmasq returns same
+ IP address, even though actual IP address has changed.
- * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm:
- Looks like some of the errno strings differ across platforms and
- versions.
+2008-12-04 castaglia <castaglia>
-2008-10-13 18:11 castaglia
+ * src/inet.c: After closing a connection, make sure the various
+ fields are reset to NULL/-1 as appropriate.
- * tests/: tests.pl, t/commands/nlst.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/NLST.pm:
- Added tests for NLST; still more tests to be added.
+2008-12-04 castaglia <castaglia>
-2008-10-13 17:35 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.
- * tests/t/lib/ProFTPD/TestSuite/Utils.pm:
- Make sure that lingering processes, if not killed properly, are
- timed out quickly.
+2008-12-04 castaglia <castaglia>
-2008-10-13 16:24 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).
- * tests/: tests.pl, t/commands/rest.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/REST.pm:
- Added tests for the REST command.
+2008-12-04 castaglia <castaglia>
-2008-10-13 16:06 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.
- * tests/: tests.pl, t/commands/quit.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/QUIT.pm:
- Added test for the QUIT command.
+2008-12-03 castaglia <castaglia>
-2008-10-13 15:52 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.
- * tests/: tests.pl, t/commands/rnfr.t, t/commands/rnto.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/RNFR.pm,
- t/lib/ProFTPD/Tests/Commands/RNTO.pm:
- Added tests for the RNFR, RNTO commands.
+2008-12-03 castaglia <castaglia>
-2008-10-13 15:36 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.
- * modules/mod_core.c:
- Preserve the actual errno value if the renaming fails; it was
- getting trounced in subsequent function calls.
+2008-12-03 castaglia <castaglia>
-2008-10-13 14:57 castaglia
+ * NEWS, modules/mod_facts.c: Bug#3142 - "Invalid number of arguments
+ MFMT" due to spaces in path argument.
- * tests/: tests.pl, t/commands/noop.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/NOOP.pm:
- Added test for the NOOP command.
+2008-12-03 castaglia <castaglia>
-2008-10-13 14:50 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Support use of <Limit>
+ sections in the testcase config files.
- * tests/: tests.pl, t/commands/port.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/PORT.pm:
- Add tests for the PORT command.
+2008-12-03 castaglia <castaglia>
-2008-10-13 13:05 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.
- * tests/t/lib/ProFTPD/TestSuite/FTP.pm:
- Fixed regex matching of ALLO response code leading digit.
+2008-12-03 castaglia <castaglia>
-2008-10-13 13:02 castaglia
+ * doc/modules/mod_facts.html: Updated URL to Draft for MFF/MFMT
+ commands.
- * tests/: tests.pl, t/commands/allo.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/ALLO.pm:
- Added test for the ALLO command.
+2008-12-03 castaglia <castaglia>
-2008-10-13 12:38 castaglia
+ * tests/t/lib/ProFTPD/Tests/Logging/ExtendedLog.pm,
+ tests/t/logging/extendedlog.t, tests/tests.pl: Add regression tests
+ for Bug#3137.
- * tests/: tests.pl, t/commands/stru.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/STRU.pm:
- Added tests for the STRU command.
+2008-12-03 castaglia <castaglia>
-2008-10-13 10:59 castaglia
+ * NEWS, modules/mod_xfer.c, src/data.c: Bug#3137 - ProFTPD does not
+ log filename %f for uploaded files.
- * tests/: tests.pl, t/commands/mode.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/MODE.pm:
- Add tests for the MODE command.
+2008-11-26 castaglia <castaglia>
-2008-10-13 10:13 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.
- * tests/: tests.pl, t/commands/pasv.t,
- t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/Tests/Commands/PASV.pm:
- Added tests for the PASV command.
+2008-11-26 castaglia <castaglia>
-2008-10-13 08:49 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).
- * tests/: tests.pl, t/commands.t, t/commands/cdup.t,
- t/commands/cwd.t, t/commands/dele.t, t/commands/mdtm.t,
- t/commands/mkd.t, t/commands/pwd.t, t/commands/rmd.t,
- t/commands/size.t, t/commands/syst.t, t/commands/type.t,
- t/lib/ProFTPD/Tests/Commands.pm,
- t/lib/ProFTPD/Tests/Commands/CDUP.pm,
- t/lib/ProFTPD/Tests/Commands/CWD.pm,
- t/lib/ProFTPD/Tests/Commands/DELE.pm,
- t/lib/ProFTPD/Tests/Commands/MDTM.pm,
- t/lib/ProFTPD/Tests/Commands/MKD.pm,
- t/lib/ProFTPD/Tests/Commands/PWD.pm,
- t/lib/ProFTPD/Tests/Commands/RMD.pm,
- t/lib/ProFTPD/Tests/Commands/SIZE.pm,
- t/lib/ProFTPD/Tests/Commands/SYST.pm,
- t/lib/ProFTPD/Tests/Commands/TYPE.pm:
- 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-11-25 castaglia <castaglia>
-2008-10-12 18:03 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add the methods for the
+ MLSD, MLST, MFF, MFMT commands.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands.pm:
- Added tests for the TYPE, MDTM, and SIZE commands.
+2008-11-25 castaglia <castaglia>
-2008-10-12 17:07 castaglia
+ * tests/t/commands/mlst.t,
+ tests/t/lib/ProFTPD/Tests/Commands/MLST.pm, tests/tests.pl: Adding
+ tests for the MLST command.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands.pm:
- Added tests for the DELE command.
+2008-11-24 castaglia <castaglia>
-2008-10-12 16:55 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.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands.pm,
- Tests/Logins.pm:
- Added command test cases where failures (for different reasons)
- are expected.
+2008-11-22 castaglia <castaglia>
-2008-10-12 15:27 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.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands.pm:
- Added tests for the MKD, XMKD, RMD, and XRMD commands.
+2008-11-22 castaglia <castaglia>
-2008-10-12 15:14 castaglia
+ * src/fsio.c: Add signal handling in the potentially long-running
+ while loops of the filesystem path resolution functions.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, TestSuite/Utils.pm,
- Tests/Commands.pm, 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-11-22 castaglia <castaglia>
-2008-10-12 14:00 castaglia
+ * NEWS, contrib/mod_ratio.c: Bug#1636 - GroupRatio does not check
+ user's supplemental group membership.
- * tests/t/lib/ProFTPD/: TestSuite/FTP.pm, Tests/Commands.pm:
- Fixed use of assertions when checking response codes and
- messages.
+2008-11-22 castaglia <castaglia>
- Added tests for the XPWD, CWD, and XCWD commands.
+ * 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-10-12 13:30 castaglia
+2008-11-22 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.
+ * NEWS, contrib/mod_rewrite.c: Bug#2915 - mod_rewrite does not work
+ well for SITE commands.
-2008-10-12 13:18 castaglia
+2008-11-22 castaglia <castaglia>
- * tests/: tests.pl, t/commands.t, t/lib/ProFTPD/TestSuite/FTP.pm,
- t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Commands.pm:
- Start of test cases for the various FTP commands; PWD is simple,
- so it was first.
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Add a site() method, for
+ sending arbitrary SITE commands.
- Also add support for writing AuthUserFiles and AuthGroupFiles;
- this makes it easier to log into the running proftpd without
- requiring root privs.
+2008-11-22 castaglia <castaglia>
-2008-10-12 12:12 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.
- * tests/t/lib/ProFTPD/TestSuite/: FTP.pm, 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-11-22 castaglia <castaglia>
-2008-10-11 14:35 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.
- * tests/t/lib/ProFTPD/: TestSuite/Utils.pm, Tests/Logins.pm:
- Fix the anonymous login test (it should fail, unless run with
- root privs).
+2008-11-22 castaglia <castaglia>
- Have defaults for the common config directives. Exclude tests
- which require root privs unless we are being run with root privs.
+ * doc/howto/Sendfile.html, doc/howto/index.html: Adding doc covering
+ sendfile and its issues.
-2008-10-11 13:37 castaglia
+2008-11-21 castaglia <castaglia>
- * tests/: tests.pl, t/logins.t, t/lib/ProFTPD/TestSuite/Child.pm,
- t/lib/ProFTPD/TestSuite/FTP.pm, t/lib/ProFTPD/TestSuite/Utils.pm,
- t/lib/ProFTPD/Tests/Logins.pm:
- Start of a collection of unit tests against a running proftpd
- server, using Perl.
+ * 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-10-11 08:58 castaglia
+2008-11-20 castaglia <castaglia>
- * modules/mod_facts.c:
- Fixed bug handling the MFMT command; found by a user in the
- online forums.
+ * include/version.h: Updating version for CVS.
-2008-10-08 09:55 castaglia
+2008-11-20 castaglia <castaglia>
- * doc/howto/: Translations.html, index.html:
- Adding a Translation mini-howto.
+ * ChangeLog: Updated ChangeLog.
-2008-10-07 15:48 castaglia
+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>
- * doc/modules/mod_lang.html:
- Typo.
+ * configure: Updated configure.
-2008-10-07 10:43 castaglia
+2008-11-19 castaglia <castaglia>
- * tests/: .cvsignore, Makefile.in, api/.cvsignore, 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.
+ * Make.rules.in, Makefile.in, configure.in, locale/Makefile.in:
+ Properly honor the --localedir configure option.
-2008-10-07 10:10 castaglia
+2008-11-19 castaglia <castaglia>
- * tests/api/.cvsignore:
- Add .cvsignore file for the new tests/api/ directory.
+ * src/encode.c: Comment typo.
-2008-10-06 23:17 castaglia
+2008-11-18 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.
+ * 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-10-06 11:36 castaglia
+2008-11-17 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/ABOR.pm: Be sure to clean up
+ the generated log file.
-2008-10-06 11:16 castaglia
+2008-11-17 castaglia <castaglia>
- * tests/: Makefile.in, array.c, class.c, env.c, event.c, expr.c,
- feat.c, modules.c, netacl.c, netaddr.c, pool.c, regexp.c,
- scoreboard.c, sets.c, str.c, stubs.c, table.c, tests.c, tests.h,
- timers.c, var.c, version.c, api/array.c, api/class.c, api/env.c,
- api/event.c, api/expr.c, api/feat.c, api/modules.c, api/netacl.c,
- api/netaddr.c, api/pool.c, api/regexp.c, api/scoreboard.c,
- api/sets.c, api/str.c, api/stubs.c, api/table.c, api/tests.c,
- api/tests.h, api/timers.c, api/var.c, 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.
+ * 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-10-06 10:20 castaglia
+2008-11-17 castaglia <castaglia>
- * NEWS, src/auth.c:
- Bug#3117 - Authentication improperly allowed (Bug#2922
- regression).
+ * NEWS: Remove duplicate bug entry.
-2008-10-06 08:54 castaglia
+2008-11-17 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.
+ * 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-10-06 08:47 castaglia
+2008-11-17 castaglia <castaglia>
- * contrib/mod_ldap.c:
- When mod_ldap is initialized, print out the LDAP vendor and LDAP
- API version.
+ * 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-10-06 08:19 jwm
+2008-11-16 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r58: typo
+ * NEWS, src/main.c: Bug#3073 - Command arguments not decoded
+ properly in some places.
-2008-10-06 08:11 jwm
+2008-11-15 castaglia <castaglia>
- * 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.
+ * configure: Updated configure.
- 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-11-15 castaglia <castaglia>
-2008-10-05 18:44 castaglia
+ * RELEASE_NOTES: Mention the change in TimeoutLinger default value
+ in the release notes.
- * 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-11-15 castaglia <castaglia>
-2008-10-04 18:48 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.
- * modules/mod_auth_pam.c:
- Correct some of the terms in the trace messages from the PAM
- conversation callback.
+2008-11-15 castaglia <castaglia>
-2008-10-04 16:55 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.
- * modules/mod_auth_pam.c:
- Be less strict about AuthPAMOptions, and use case-insensitive
- checks.
+2008-11-15 castaglia <castaglia>
-2008-10-04 16:23 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Allow the epsv() method to
+ take an optional protocol number, as allowed in the EPSV command.
- * modules/mod_core.c:
- Fix typo which made for a rather confusing comment.
+2008-11-15 castaglia <castaglia>
-2008-10-04 15:15 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.
- * NEWS, contrib/mod_sql.c:
- Bug#3116 - SQLNegativeCache with no group info can cause
- segfault.
+2008-11-15 castaglia <castaglia>
-2008-10-04 10:14 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Quell Perl warning about
+ redeclared variable.
- * src/: main.c, 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-11-15 castaglia <castaglia>
-2008-10-03 22:43 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.
- * src/class.c:
- Tag any pools allocated for class definitions.
+2008-11-15 castaglia <castaglia>
-2008-10-03 22:38 castaglia
+ * NEWS, src/data.c, src/netio.c: Bug#3131 - Session process uses
+ 100% CPU after aborted transfer.
- * src/pool.c:
- Fix the mechanism used to count the number of sub-pools in a
- pool; it was not recursing properly.
+2008-11-14 castaglia <castaglia>
-2008-10-03 22:23 castaglia
+ * tests/Makefile.in: Fix typo.
- * src/timers.c:
- It's high time the Timers API had its own memory pool, rather
- than using permanent_pool directly.
+2008-11-14 castaglia <castaglia>
-2008-10-03 22:03 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.
- * 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-11-14 castaglia <castaglia>
-2008-10-03 22:01 castaglia
+ * NEWS, src/main.c: Bug#3132 - Handling of SIGABRT signal leads to
+ endless loop.
- * src/pool.c:
- Prettify, and update, the messages emitted when debugging pool
- usage.
+2008-11-14 castaglia <castaglia>
-2008-10-03 22:00 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.
- * 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-11-13 castaglia <castaglia>
-2008-10-03 21:53 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Fix the feature-checking
+ code so that tests using a "feature_X" class are properly handled.
- * 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-11-13 castaglia <castaglia>
-2008-10-03 21:01 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.
- * src/help.c:
- Minor label nit.
+2008-11-12 castaglia <castaglia>
-2008-10-03 18:10 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.
- * 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-11-12 castaglia <castaglia>
-2008-10-03 16:10 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.
- * 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-11-11 castaglia <castaglia>
-2008-10-02 13:53 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.
- * modules/mod_auth.c:
- Minor change to test SourceForge's commit mail.
+2008-11-11 castaglia <castaglia>
-2008-10-02 10:06 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.
- * 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-11-11 castaglia <castaglia>
-2008-10-01 16:30 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.
- * contrib/mod_tls.c:
- Minor tweaks to allow TLSPassPhraseProvider to work properly on
- Mac OSX. Shouldn't harm anything.
+2008-11-10 castaglia <castaglia>
-2008-09-30 22:49 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.
- * 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-11-10 castaglia <castaglia>
-2008-09-30 13:43 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.
- * src/: main.c, trace.c:
- Add trace logging of when the various signals are handled.
+2008-11-08 castaglia <castaglia>
- 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.
+ * 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-09-30 01:00 castaglia
+2008-11-08 castaglia <castaglia>
- * contrib/mod_dynmasq.c:
- Reduce the log verbosity of mod_dynmasq more, as per user
- request.
+ * 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-09-29 16:02 castaglia
+2008-11-08 castaglia <castaglia>
- * src/support.c: [no log message]
+ * 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-09-29 09:07 castaglia
+2008-11-07 castaglia <castaglia>
- * contrib/mod_dynmasq.c:
- Change the logging of mod_dynmasq slightly, so that it does not
- spam the system log with messages.
+ * 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-09-26 13:57 castaglia
+2008-11-07 castaglia <castaglia>
- * src/response.c:
- Add trace logging of the responses that are added, not just when
- the responses are flushed to the client.
+ * tests/t/lib/ProFTPD/Tests/Commands/STOU.pm: The STOU tests now
+ pass when run both as root and as non-root.
-2008-09-25 15:24 castaglia
+2008-11-07 castaglia <castaglia>
- * src/main.c:
- Include the version status (e.g. "CVS", "devel", "stable") in the
- -V output, as well as the build timestamp.
+ * tests/t/lib/ProFTPD/Tests/Commands/STOR.pm: Update the STOR tests
+ to pass when run as root and as non-root.
-2008-09-22 22:52 castaglia
+2008-11-07 castaglia <castaglia>
- * INSTALL:
- Update the mailing list info in the INSTALL file.
+ * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Make sure the RNTO
+ tests pass when run as root and as non-root.
-2008-09-22 21:40 castaglia
+2008-11-07 castaglia <castaglia>
- * tests/array.c:
- Add unit test for the clear_array() function added in 1.3.2rc2.
+ * tests/t/lib/ProFTPD/Tests/Commands/RMD.pm: Adjust the RMD tests to
+ pass when run as root and as non-root.
-2008-09-20 13:18 castaglia
+2008-11-07 castaglia <castaglia>
- * NEWS, src/main.c, src/netio.c:
- Bug#3115 - Cross-site request forgery.
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Make the RETR tests
+ pass when run as both root and non-root.
-2008-09-19 08:39 castaglia
+2008-11-07 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#3114 - Bad handling of uid/gid parameters for CreateHome.
+ * tests/t/lib/ProFTPD/Tests/Commands/NLST.pm: Update the NLST tests
+ to pass when run as root and as non-root.
-2008-09-17 14:45 castaglia
+2008-11-07 castaglia <castaglia>
- * contrib/mod_sql.c:
- Quell a few more compiler warnings about signedness.
+ * 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-09-17 11:36 castaglia
+2008-11-07 castaglia <castaglia>
- * include/version.h:
- Bump to RC3 in CVS.
+ * 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-09-17 09:48 castaglia
+2008-11-07 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * 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-09-17 09:47 castaglia
+2008-11-07 castaglia <castaglia>
- * NEWS:
- Update release date in NEWS.
+ * tests/t/lib/ProFTPD/Tests/Commands/APPE.pm: Rework the APPE tests
+ so that they always pass, whether run as root or not.
-2008-09-17 09:46 castaglia
+2008-11-07 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for the release of 1.3.2rc2.
+ * doc/howto/Testing.html: Mention that some integration tests are
+ skipped if not run with root privs.
-2008-09-16 17:15 castaglia
+2008-11-07 castaglia <castaglia>
- * RELEASE_NOTES:
- Update the release notes with the highlights of the upcoming RC2
- release.
+ * tests/t/lib/ProFTPD/Tests/Modules/mod_sql_sqlite.pm: Add a
+ regression test for Bug#2922.
-2008-09-12 10:35 castaglia
+2008-11-07 castaglia <castaglia>
- * modules/mod_auth.c:
- Minor formatting nit; I prefer to have strings from clients (e.g.
- user names) enclosed in quotes.
+ * 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-09-12 10:08 castaglia
+2008-11-06 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#3112 - Uploaded files are not removed if close() fails.
+ * NEWS, src/dirtree.c: Bug#3130 - HideFiles can cause segfault.
-2008-09-10 23:12 castaglia
+2008-11-06 castaglia <castaglia>
- * contrib/mod_tls.c:
- Stir in some additional entropy, using the secret passphrases of
- certs as sources.
+ * 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-09-10 19:00 castaglia
+2008-11-06 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.
+ * 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-09-10 18:20 castaglia
+2008-11-06 castaglia <castaglia>
- * contrib/mod_ban.c:
- Turns out that Mac OSX has the same semantics, with regard to
- reuse of getopt(3), as FreeBSD.
+ * doc/howto/Testing.html: Update the Testing howto to reflect
+ changes made to the 'make check' target.
-2008-09-08 23:24 castaglia
+2008-11-06 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.
+ * 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-09-08 21:00 castaglia
+2008-11-06 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).
+ * doc/howto/index.html: Add a link to the Testing howto in the howto
+ index.
-2008-09-08 16:49 castaglia
+2008-11-06 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.
+ * doc/howto/Testing.html: The Testing howto is now in a mostly
+ usable form.
-2008-09-08 13:56 castaglia
+2008-11-06 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.
+ * 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-09-08 13:54 castaglia
+2008-11-06 castaglia <castaglia>
- * contrib/mod_tls.c:
- Avoid cleaning up OpenSSL state if mod_sftp is present as well.
+ * tests/api/tests.c: Make sure that the testsuite log name is kept
+ in sync with what is displayed in the error message.
-2008-09-08 12:51 jwm
+2008-11-03 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r55: high time for a 2.8.19
- release
+ * contrib/mod_sql_sqlite.c: Explain why sqlite3_shutdown() is not
+ called when the mod_sql_sqlite module is being unloaded.
-2008-09-08 12:40 jwm
+2008-11-03 castaglia <castaglia>
- * contrib/mod_ldap.c: mod_ldap bzr r54: log message wording fix
+ * contrib/mod_sql_sqlite.c: Stylistic nits; no functional change.
-2008-09-08 12:26 jwm
+2008-11-03 castaglia <castaglia>
- * 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)
+ * NEWS, contrib/mod_sql_sqlite.c: Bug#3126 - Segfault in
+ mod_sql_sqlite when user belongs to multiple groups.
-2008-09-07 23:52 castaglia
+2008-10-31 castaglia <castaglia>
- * include/pool.h, src/pool.c:
- Add a clear_array() function, for clearing/resetting an
- array_header.
+ * NEWS, contrib/mod_ldap.c, contrib/mod_sql.c, src/log.c: Bug#2767 -
+ gcc 4.0/amd64 warnings.
-2008-09-07 17:47 castaglia
+2008-10-31 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.
+ * NEWS, include/fsio.h, src/fsio.c: Bug#3092 - FSIO API needs
+ mechanism for allowing registered FS handlers to permit atomic
+ renames.
-2008-09-07 16:58 castaglia
+2008-10-30 castaglia <castaglia>
- * contrib/mod_tls.c:
- Refresh the builtin 2048-bit DH group.
+ * 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-09-07 16:42 castaglia
+2008-10-29 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.
+ * RELEASE_NOTES: Start prepping the RC3 release notes.
-2008-09-07 16:40 castaglia
+2008-10-28 castaglia <castaglia>
- * src/main.c:
- Quell some compiler complaints about formatting.
+ * 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-09-04 09:42 castaglia
+2008-10-28 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.
+ * 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-09-04 09:27 castaglia
+2008-10-28 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#3109 - Errors with file uploads logged but not reported to
- clients.
+ * doc/howto/Testing.html: Adding slightly more substance to the
+ Testing howto; hopefully I can muster the motivation to finish it
+ later tonight.
-2008-09-03 18:49 castaglia
+2008-10-28 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.
+ * 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-09-03 17:30 castaglia
+2008-10-28 castaglia <castaglia>
- * src/: inet.c, log.c, main.c, scoreboard.c, trace.c:
- Change a few more places to using the cached session.pid, if
- available.
+ * include/inet.h, src/inet.c: Remove the pr_inet_associate()
+ function; nothing was using it.
-2008-09-03 11:19 castaglia
+2008-10-27 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.
+ * NEWS, contrib/mod_sql.c: Bug#3124 - mod_sql improperly substitutes
+ variables in user/group names.
-2008-09-03 09:49 castaglia
+2008-10-21 castaglia <castaglia>
- * include/fsio.h, src/fsio.c:
- Add a pr_find_fs() function, for retrieving a registered FS
- object by name.
+ * configure: Updated configure.
-2008-09-02 09:00 castaglia
+2008-10-21 castaglia <castaglia>
- * configure:
- Updated configure.
+ * NEWS, config.h.in, configure.in, src/encode.c: Bug#3122: iconv()
+ not detected properly on FreeBSD when --enable-nls is used.
-2008-09-02 08:54 castaglia
+2008-10-20 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.
+ * tests/t/lib/ProFTPD/Tests/Commands/PASS.pm: Make sure that the
+ PASS unit tests expected the proper response message.
-2008-09-01 14:10 castaglia
+2008-10-20 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.
+ * include/glibc-glob.h: Fix compiler detection to deal with other
+ compilers.
-2008-09-01 12:26 castaglia
+2008-10-20 castaglia <castaglia>
- * doc/howto/DSO.html:
- Updated DSO howto with mention of prxs.
+ * tests/t/config/maxloginattempts.t,
+ tests/t/lib/ProFTPD/Tests/Config/MaxLoginAttempts.pm,
+ tests/tests.pl: Added unit tests for the MaxLoginAttempts directive.
-2008-09-01 12:05 castaglia
+2008-10-20 castaglia <castaglia>
- * NEWS, doc/modules/mod_facts.html, modules/mod_facts.c:
- Bug#3108 - Support removing MLST from FEAT list.
+ * 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-08-29 17:11 castaglia
+2008-10-20 castaglia <castaglia>
- * contrib/mod_tls.c:
- Prettify some of the error messages emitted if the configuration
- is not correct.
+ * 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-08-29 17:06 castaglia
+2008-10-19 castaglia <castaglia>
- * contrib/mod_tls.c:
- Fix typos in fix for Bug#3107.
+ * modules/mod_auth.c: Fixed failed login message to be consistent
+ with other instances of the "Login incorrect" string.
-2008-08-29 17:04 castaglia
+2008-10-19 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c, doc/contrib/mod_tls.html:
- Bug#3107 - TLSProtocol supports misleading "SSLv23" parameter.
+ * 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-08-29 10:44 castaglia
+2008-10-19 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.
+ * 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-08-27 17:47 castaglia
+2008-10-19 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-08-27 17:06 castaglia
+2008-10-19 castaglia <castaglia>
- * include/data.h:
- Update copyright dates in just-modified header.
+ * 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-08-27 17:05 castaglia
+2008-10-19 castaglia <castaglia>
- * NEWS, config.h.in, configure.in, include/data.h, src/data.c:
- Bug#3106 - Add support for Mac OSX 10.5 sendfile.
+ * 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-08-27 14:31 castaglia
+2008-10-19 castaglia <castaglia>
- * locale/Makefile.in:
- Do not remove the .po files when cleaning the locale/ directory.
+ * tests/t/config/displaylogin.t,
+ tests/t/lib/ProFTPD/Tests/Config/DisplayLogin.pm, tests/tests.pl:
+ Added tests for the DisplayLogin directive.
-2008-08-27 10:09 jwm
+2008-10-19 castaglia <castaglia>
- * 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?)
+ * tests/t/lib/ProFTPD/Tests/Config/DisplayConnect.pm: Forgot to
+ clean up a test file that's outside of the tmp/ directory.
-2008-08-27 10:09 jwm
+2008-10-19 castaglia <castaglia>
- * 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
+ * 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.
- proftpd bug 3097
+2008-10-19 castaglia <castaglia>
-2008-08-27 10:08 jwm
+ * 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.
- * contrib/mod_ldap.c: use the configured ldap_port in
- "connected..." debug message, not LDAP_PORT
+2008-10-18 castaglia <castaglia>
-2008-08-27 10:08 jwm
+ * 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.
- * contrib/mod_ldap.c: * Define LDAP_SCOPE_DEFAULT if not defined
- by the SDK, fixing compilation
- with (recent?) Sun LDAP headers.
+2008-10-18 castaglia <castaglia>
-2008-08-27 10:08 jwm
+ * 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.
- * contrib/mod_ldap.c: * Fix compilation with old LDAP SDKs
- (LDAP_API_VERSION < 2000). Thanks to
- Saju Paul <saju.paul at messageway.com>.
+2008-10-18 castaglia <castaglia>
-2008-08-25 19:47 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.
- * src/prxs.in:
- Add license to prxs. Support use of LIBTOOL environment variable
- to direct prxs to use a different libtool, if necessary.
+2008-10-18 castaglia <castaglia>
-2008-08-25 15:32 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.
- * src/inet.c:
- Extend the hack used for active ports to Mac OS 10.5 as well.
+2008-10-18 castaglia <castaglia>
-2008-08-25 15:22 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/RETR.pm: Remove copy-n-pasted
+ code from the RETR tests, and make them work more reliably.
- * configure:
- Updated configure.
+2008-10-18 castaglia <castaglia>
-2008-08-25 15:19 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.
- * 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-10-18 castaglia <castaglia>
-2008-08-25 15:16 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.
- * lib/pr-syslog.c:
- Extend the fix for Bug#3104 to Mac OS 10.5 (i.e. DARWIN9) as
- well.
+2008-10-17 castaglia <castaglia>
-2008-08-24 12:57 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.
- * 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-10-17 castaglia <castaglia>
-2008-08-23 17:30 castaglia
+ * contrib/mod_wrap2/mod_wrap2.c: Fix Bug#3120 for the
+ WrapGroupTables and WrapUserTables directives as well.
- * NEWS, lib/pr-syslog.c:
- Bug#3104 - Syslog logging does not work on Mac OS X.
+2008-10-17 castaglia <castaglia>
-2008-08-23 17:23 castaglia
+ * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#3120 - WrapTables not
+ allowed in <Anonymous> context.
- * NEWS, modules/mod_auth.c:
- Bug#2564 - Improper logging of "max connections per host".
+2008-10-16 castaglia <castaglia>
-2008-08-23 13:05 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().
- * NEWS, contrib/mod_sql.c, doc/contrib/mod_sql.html:
- Bug#2537 - mod_sql does not support %{...}t variable.
+2008-10-15 castaglia <castaglia>
-2008-08-22 19:57 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).
- * 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-10-15 castaglia <castaglia>
-2008-08-22 19:49 castaglia
+ * configure: Updated configure.
- * lib/libcap/libcap.h:
- Fix typo (missing backslash).
+2008-10-15 castaglia <castaglia>
-2008-08-22 18:18 castaglia
+ * NEWS, config.h.in, configure.in: Bug#3119 - Search for libcap2 in
+ addition to libcap for mod_cap support.
- * src/display.c:
- A temporary pool was being allocated from session.pool for each
- Display file, and was not being cleaned up. Tsk.
+2008-10-15 castaglia <castaglia>
-2008-08-22 09:35 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".
- * 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-10-14 castaglia <castaglia>
-2008-08-21 00:03 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.
- * NEWS, src/log.c:
- Bug#3098 - Socket descriptor leak when using syslog logging,
- especially at SyslogLevel 'notice' or higher.
+2008-10-14 castaglia <castaglia>
-2008-08-20 11:23 castaglia
+ * contrib/mod_ifsession.c: Fix compilation error.
- * contrib/mod_site_misc.c:
- Add signal handling to a while() loop.
+2008-10-14 castaglia <castaglia>
-2008-08-20 11:02 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.
- * contrib/mod_load/Makefile.in:
- Make the mod_load Makefile consistent with other contrib module
- Makefiles.
+2008-10-14 castaglia <castaglia>
-2008-08-20 11:00 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.
- * 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-10-14 castaglia <castaglia>
-2008-08-18 15:05 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Add a function that
+ encapsulates the server-wait part of the tests, including a timeout.
- * NEWS, modules/mod_core.c, modules/mod_xfer.c:
- Bug#3030 - GroupOwner should work for all groups.
+2008-10-14 castaglia <castaglia>
-2008-08-18 13:55 castaglia
+ * tests/t/lib/ProFTPD/Tests/Commands/RNTO.pm: Looks like some of the
+ errno strings differ across platforms and versions.
- * 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-10-14 castaglia <castaglia>
-2008-08-18 13:50 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.
- * NEWS, contrib/ftpmail, doc/contrib/ftpmail.html:
- Bug#3100 - Support ftpmail options for sending emails only for
- specific users.
+2008-10-14 castaglia <castaglia>
-2008-08-18 11:52 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/Utils.pm: Make sure that lingering
+ processes, if not killed properly, are timed out quickly.
- * doc/howto/Tracing.html:
- Mention the new "fileperms" trace log channel in the Trace
- logging howto.
+2008-10-13 castaglia <castaglia>
-2008-08-18 11:48 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.
- * NEWS, modules/mod_core.c, modules/mod_xfer.c:
- Bug#3099 - Add trace logging of filesystem permission errors.
+2008-10-13 castaglia <castaglia>
-2008-08-18 11:46 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.
- * contrib/mod_wrap2/.cvsignore:
- Ignore autoconf-generated cache file.
+2008-10-13 castaglia <castaglia>
-2008-08-15 22:26 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.
- * 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-10-13 castaglia <castaglia>
-2008-08-15 20:56 castaglia
+ * modules/mod_core.c: Preserve the actual errno value if the
+ renaming fails; it was getting trounced in subsequent function
+ calls.
- * 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-10-13 castaglia <castaglia>
-2008-08-15 16:41 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.
- * src/throttle.c:
- Include signal.h, for the signal-masking function declarations.
+2008-10-13 castaglia <castaglia>
-2008-08-15 15:16 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.
- * doc/contrib/: index.html, mod_ldap.html:
- Start a doc covering the mod_ldap directives.
+2008-10-13 castaglia <castaglia>
-2008-08-15 13:15 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm: Fixed regex matching of ALLO
+ response code leading digit.
- * configure:
- Updated configure.
+2008-10-13 castaglia <castaglia>
-2008-08-15 13:13 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.
- * configure.in:
- Be sure to include all of the libraries that the proftpd
- executable is linked against in the `proftpd -V' output.
+2008-10-13 castaglia <castaglia>
-2008-08-15 11:18 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.
- * contrib/mod_sql_sqlite.c:
- Log if there was an error closing the SQLite database as well.
+2008-10-13 castaglia <castaglia>
-2008-08-15 11:12 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.
- * contrib/mod_sql_sqlite.c:
- Log the error, if there is one, when opening the SQLite database
- file.
+2008-10-13 castaglia <castaglia>
-2008-08-15 09:14 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.
- * 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-10-13 castaglia <castaglia>
-2008-08-14 14:23 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.
- * 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-10-13 castaglia <castaglia>
-2008-08-12 17:51 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm,
+ tests/t/lib/ProFTPD/Tests/Commands.pm: Added tests for the TYPE,
+ MDTM, and SIZE commands.
- * 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-10-13 castaglia <castaglia>
-2008-08-12 13:56 castaglia
+ * tests/t/lib/ProFTPD/TestSuite/FTP.pm,
+ tests/t/lib/ProFTPD/Tests/Commands.pm: Added tests for the DELE
+ command.
- * NEWS, contrib/mod_tls.c:
- Bug#3095 - TLSPassphraseProvider port number truncated. Fixed by
- using 'sizeof(nbuf)', not 'sizeof(buf)', in the snprintf() call.
+2008-10-12 castaglia <castaglia>
-2008-08-12 11:54 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.
- * 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-10-12 castaglia <castaglia>
-2008-08-11 13:52 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.
- * 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-10-12 castaglia <castaglia>
-2008-08-11 11:39 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.
- * configure:
- Updated configure.
+2008-10-12 castaglia <castaglia>
-2008-08-11 11:33 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.
- * Make.rules.in, Makefile.in, NEWS, configure.in:
- Bug#3074 - Support configure option for pkgconfig .pc file
- install location.
+2008-10-12 castaglia <castaglia>
-2008-08-10 12:02 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.
- * contrib/mod_sql_sqlite.c:
- Use root privs when opening the file configured for SQLite use.
+2008-10-12 castaglia <castaglia>
-2008-08-10 11:37 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.
- * configure:
- Updated configure.
+2008-10-12 castaglia <castaglia>
-2008-08-10 11:29 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.
- * 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-10-11 castaglia <castaglia>
-2008-08-06 11:00 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.
- * contrib/mod_tls.c:
- Quell a compiler warning about signedness with an explicit cast.
+2008-10-11 castaglia <castaglia>
-2008-08-06 10:00 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.
- * 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-10-11 castaglia <castaglia>
-2008-08-06 09:57 castaglia
+ * modules/mod_facts.c: Fixed bug handling the MFMT command; found by
+ a user in the online forums.
- * configure:
- Updated configure.
+2008-10-08 castaglia <castaglia>
-2008-08-06 09:55 castaglia
+ * doc/howto/Translations.html, doc/howto/index.html: Adding a
+ Translation mini-howto.
- * 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-10-07 castaglia <castaglia>
-2008-07-30 09:37 castaglia
+ * doc/modules/mod_lang.html: Typo.
- * NEWS, contrib/mod_tls.c:
- Bug#3094 - Perform unidirectional SSL/TLS shutdown on data
- connections.
+2008-10-07 castaglia <castaglia>
-2008-07-17 14:01 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.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3036 - Quota information not persisted if session ends
- abruptly.
+2008-10-07 castaglia <castaglia>
-2008-07-17 13:51 castaglia
+ * tests/api/.cvsignore: Add .cvsignore file for the new tests/api/
+ directory.
- * contrib/mod_quotatab.h:
- Remove stale and misleading comment; confstreams were an
- interesting idea, but will not be added.
+2008-10-07 castaglia <castaglia>
-2008-07-16 14:38 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.
- * doc/modules/mod_cap.html:
- Add a FAQ about the libcap1 warning (regarding 32-bit
- capabilities), and how to address the warning.
+2008-10-06 castaglia <castaglia>
-2008-06-18 20:22 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.
- * modules/mod_auth.c:
- Replace the specific "FTP login timed out" with the more generic
- "Session timed out".
+2008-10-06 castaglia <castaglia>
-2008-06-18 10:29 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.
- * NEWS, modules/mod_core.c:
- Bug#3077 - Transparently handle the X-variant commands when
- checking <Limit> permissions.
+2008-10-06 castaglia <castaglia>
-2008-06-16 18:01 castaglia
+ * NEWS, src/auth.c: Bug#3117 - Authentication improperly allowed
+ (Bug#2922 regression).
- * include/compat.h:
- Minor formatting change, no functional change.
+2008-10-06 castaglia <castaglia>
-2008-06-16 14:56 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.
- * 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-10-06 castaglia <castaglia>
-2008-06-16 09:43 castaglia
+ * contrib/mod_ldap.c: When mod_ldap is initialized, print out the
+ LDAP vendor and LDAP API version.
- * src/main.c:
- Always remove the scoreboard entry when handling a termination
- signal, not just when we receive SIGSEGV.
+2008-10-06 jwm <jwm>
-2008-06-16 09:25 castaglia
+ * contrib/mod_ldap.c: mod_ldap bzr r58: typo
- * 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-10-06 jwm <jwm>
-2008-06-16 09:21 castaglia
+ * 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
- * contrib/mod_ban.c:
- Update to use newer PR_LOG_ macros.
+2008-10-06 castaglia <castaglia>
-2008-06-13 19:40 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.
- * 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-10-05 castaglia <castaglia>
-2008-06-13 18:26 castaglia
+ * modules/mod_auth_pam.c: Correct some of the terms in the trace
+ messages from the PAM conversation callback.
- * tests/str.c:
- Add unit test for the pr_str_get_word() function.
+2008-10-04 castaglia <castaglia>
-2008-06-13 18:13 castaglia
+ * modules/mod_auth_pam.c: Be less strict about AuthPAMOptions, and
+ use case-insensitive checks.
- * 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-10-04 castaglia <castaglia>
-2008-06-13 17:28 castaglia
+ * modules/mod_core.c: Fix typo which made for a rather confusing
+ comment.
- * tests/: modules.c, tests.h:
- Fill in unit tests for the Module API functions.
+2008-10-04 castaglia <castaglia>
-2008-06-13 17:27 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#3116 - SQLNegativeCache with no group
+ info can cause segfault.
- * src/modules.c:
- Clean up a few more style nits, and guard against bad arguments,
- in the Module API.
+2008-10-04 castaglia <castaglia>
-2008-06-13 16:23 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.
- * tests/modules.c:
- Add unit tests for the Stash API.
+2008-10-04 castaglia <castaglia>
-2008-06-13 16:22 castaglia
+ * src/class.c: Tag any pools allocated for class definitions.
- * src/modules.c:
- Fix a few minor bugs and nits in the Stash API, discovered while
- writing unit tests for those functions.
+2008-10-04 castaglia <castaglia>
-2008-06-13 11:36 castaglia
+ * src/pool.c: Fix the mechanism used to count the number of
+ sub-pools in a pool; it was not recursing properly.
- * tests/: .cvsignore, 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-10-04 castaglia <castaglia>
-2008-06-13 11:34 castaglia
+ * src/timers.c: It's high time the Timers API had its own memory
+ pool, rather than using permanent_pool directly.
- * 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-10-04 castaglia <castaglia>
-2008-06-12 18:30 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.
- * tests/: Makefile.in, modules.c, stubs.c, tests.c, tests.h:
- Add stubs for units tests for the APIs (stash, module) in the
- modules.c source file.
+2008-10-04 castaglia <castaglia>
-2008-06-12 15:57 castaglia
+ * src/pool.c: Prettify, and update, the messages emitted when
+ debugging pool usage.
- * 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-10-04 castaglia <castaglia>
-2008-06-12 14:29 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.
- * tests/scoreboard.c:
- Fill in the remaining unit tests for the Scoreboard API.
+2008-10-04 castaglia <castaglia>
-2008-06-12 14:19 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.
- * 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-10-04 castaglia <castaglia>
-2008-06-12 10:05 castaglia
+ * src/help.c: Minor label nit.
- * contrib/mod_load/: .cvsignore, mod_load.c.in:
- Fix function definition. Add more entries of autogenerated
- files, to be ignored by CVS.
+2008-10-04 castaglia <castaglia>
-2008-06-10 20:48 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.
- * tests/.cvsignore:
- More files to be ignored by CVS in the tests/ directory.
+2008-10-03 castaglia <castaglia>
-2008-06-10 20:48 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.
- * tests/scoreboard.c:
- Fill in more of the unit tests for the Scoreboard API.
+2008-10-02 castaglia <castaglia>
-2008-06-10 20:47 castaglia
+ * modules/mod_auth.c: Minor change to test SourceForge's commit
+ mail.
- * src/scoreboard.c:
- Fix some minor bugs found in the Scoreboard API while working on
- unit tests.
+2008-10-02 castaglia <castaglia>
-2008-06-10 09:29 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.
- * 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-10-01 castaglia <castaglia>
-2008-06-05 17:47 castaglia
+ * contrib/mod_tls.c: Minor tweaks to allow TLSPassPhraseProvider to
+ work properly on Mac OSX. Shouldn't harm anything.
- * src/scoreboard.c:
- Add better argument checking in pr_set_scoreboard().
+2008-10-01 castaglia <castaglia>
-2008-06-05 17:46 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.
- * tests/: Makefile.in, scoreboard.c, stubs.c, tests.c, tests.h:
- Start writing unit tests for the Scoreboard API.
+2008-09-30 castaglia <castaglia>
-2008-06-05 17:43 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.
- * tests/sets.c:
- Avoid a compiler warning about a shadowed variable in the
- testsuite.
+2008-09-30 castaglia <castaglia>
-2008-06-05 14:34 castaglia
+ * contrib/mod_dynmasq.c: Reduce the log verbosity of mod_dynmasq
+ more, as per user request.
- * 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-09-29 castaglia <castaglia>
-2008-06-05 09:48 castaglia
+ * src/support.c: [no log message]
- * tests/stubs.c:
- Forgot to include these variables for unit tests.
+2008-09-29 castaglia <castaglia>
-2008-06-05 01:02 castaglia
+ * contrib/mod_dynmasq.c: Change the logging of mod_dynmasq slightly,
+ so that it does not spam the system log with messages.
- * tests/str.c:
- Add unit tests for the newly added functions to the String API.
+2008-09-26 castaglia <castaglia>
-2008-06-05 01:01 castaglia
+ * src/response.c: Add trace logging of the responses that are added,
+ not just when the responses are flushed to the client.
- * 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-09-25 castaglia <castaglia>
-2008-06-05 00:48 castaglia
+ * src/main.c: Include the version status (e.g. "CVS", "devel",
+ "stable") in the -V output, as well as the build timestamp.
- * src/throttle.c:
- Make sure to explicit require a TRUE return value from the
- pr_expr_* calls.
+2008-09-23 castaglia <castaglia>
-2008-06-05 00:42 castaglia
+ * INSTALL: Update the mailing list info in the INSTALL file.
- * tests/: Makefile.in, expr.c, regexp.c, tests.c, tests.h:
- Add unit tests for the Regexp API, and unit test stubs for the
- Expression API.
+2008-09-23 castaglia <castaglia>
-2008-06-04 21:13 castaglia
+ * tests/array.c: Add unit test for the clear_array() function added
+ in 1.3.2rc2.
- * src/: class.c, netacl.c:
- Bug#3083 - Multiple issues with handling of <Class> definitions.
+2008-09-20 castaglia <castaglia>
-2008-06-04 21:11 castaglia
+ * NEWS, src/main.c, src/netio.c: Bug#3115 - Cross-site request
+ forgery.
- * tests/: Makefile.in, class.c, netacl.c, tests.c, tests.h:
- Added unit tests for the NetACL and Class APIs.
+2008-09-19 castaglia <castaglia>
-2008-06-04 21:02 castaglia
+ * NEWS, modules/mod_auth.c: Bug#3114 - Bad handling of uid/gid
+ parameters for CreateHome.
- * doc/howto/Classes.html:
- Add more material to the Classes howto, covering the Satisfy
- directive and giving some examples.
+2008-09-17 castaglia <castaglia>
-2008-06-04 20:00 castaglia
+ * contrib/mod_sql.c: Quell a few more compiler warnings about
+ signedness.
- * 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-09-17 castaglia <castaglia>
-2008-06-04 18:57 castaglia
+ * include/version.h: Bump to RC3 in CVS.
- * 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-09-17 castaglia <castaglia>
-2008-06-04 15:43 castaglia
+ * ChangeLog: Updated ChangeLog.
- * 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-09-17 castaglia <castaglia>
-2008-06-02 15:29 castaglia
+ * NEWS: Update release date in NEWS.
- * NEWS, doc/howto/Tracing.html, src/trace.c:
- Bug#3082 - Use "DEFAULT" keyword instead of "ALL" for Trace
- directive.
+2008-09-17 castaglia <castaglia>
-2008-05-20 07:35 castaglia
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for
+ the release of 1.3.2rc2.
- * 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-09-17 castaglia <castaglia>
-2008-05-17 13:05 castaglia
+ * RELEASE_NOTES: Update the release notes with the highlights of the
+ upcoming RC2 release.
- * src/throttle.c:
- Make sure that the signal-handling functions (e.g. sigemptyset())
- can be properly found on some platforms (e.g. Solaris).
+2008-09-12 castaglia <castaglia>
-2008-05-14 19:51 castaglia
+ * modules/mod_auth.c: Minor formatting nit; I prefer to have strings
+ from clients (e.g. user names) enclosed in quotes.
- * modules/mod_core.c:
- Make sure that we honor the TimeoutIdle directive *before*
- authentication, as well as after.
+2008-09-12 castaglia <castaglia>
-2008-05-13 22:51 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#3112 - Uploaded files are not
+ removed if close() fails.
- * 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-09-11 castaglia <castaglia>
-2008-05-12 22:41 castaglia
+ * contrib/mod_tls.c: Stir in some additional entropy, using the
+ secret passphrases of certs as sources.
- * 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.
+2008-09-11 castaglia <castaglia>
- 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().
+ * 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-05-12 10:22 castaglia
+2008-09-11 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.
+ * contrib/mod_ban.c: Turns out that Mac OSX has the same semantics,
+ with regard to reuse of getopt(3), as FreeBSD.
-2008-05-12 10:16 castaglia
+2008-09-09 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/Makefile.in: Cycle through a single combined list of
+ subdirectories in which to invoke the `install' target, rather than
+ two separate lists.
-2008-05-12 10:11 castaglia
+2008-09-09 castaglia <castaglia>
- * configure.in, modules/mod_dso.c:
- Make sure we use the libltdl shipped with proftpd, not the system
- libltdl.
+ * 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-05-11 18:23 castaglia
+2008-09-08 castaglia <castaglia>
- * modules/mod_xfer.c:
- Found more while loops without signal handling. Tsk tsk.
+ * 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-05-11 13:40 castaglia
+2008-09-08 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.
+ * 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-05-10 19:36 castaglia
+2008-09-08 castaglia <castaglia>
- * src/main.c:
- Make a lowercased version of the protocol name, in
- set_protocol_name(), for use in the WtmpLog entry.
+ * contrib/mod_tls.c: Avoid cleaning up OpenSSL state if mod_sftp is
+ present as well.
-2008-05-08 08:28 castaglia
+2008-09-08 jwm <jwm>
- * modules/mod_core.c:
- As it turns out, the <Limit> section can handles commands for
- more than just FTP.
+ * contrib/mod_ldap.c: mod_ldap bzr r55: high time for a 2.8.19 release
-2008-05-08 08:06 castaglia
+2008-09-08 jwm <jwm>
- * contrib/mod_load/mod_load.c.in:
- Mark a string used by mod_load as localisable.
+ * contrib/mod_ldap.c: mod_ldap bzr r54: log message wording fix
-2008-05-07 23:49 castaglia
+2008-09-08 jwm <jwm>
- * 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.
+ * 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-05-07 23:16 castaglia
+2008-09-08 castaglia <castaglia>
- * src/main.c:
- Stylistic nits, no functional change.
+ * include/pool.h, src/pool.c: Add a clear_array() function, for
+ clearing/resetting an array_header.
-2008-05-07 22:29 castaglia
+2008-09-08 castaglia <castaglia>
- * src/main.c:
- Always have signal handling in while loops.
+ * 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-05-07 08:14 castaglia
+2008-09-07 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec:
- Bug#3076 - RPM build failing on 64 bit OS due to incomplete
- .spec.
+ * contrib/mod_tls.c: Refresh the builtin 2048-bit DH group.
-2008-05-06 10:42 castaglia
+2008-09-07 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.
+ * 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-05-06 10:01 castaglia
+2008-09-07 castaglia <castaglia>
- * doc/howto/Authentication.html:
- Typo.
+ * src/main.c: Quell some compiler complaints about formatting.
-2008-05-06 09:33 castaglia
+2008-09-04 castaglia <castaglia>
- * configure:
- Updated configure.
+ * src/encode.c: If the selected locale does not support the Telnet
+ IAC character, be sure that the toggled setting is not overwritten.
-2008-05-06 09:30 castaglia
+2008-09-04 castaglia <castaglia>
- * configure.in, config.h.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.
+ * NEWS, modules/mod_xfer.c: Bug#3109 - Errors with file uploads
+ logged but not reported to clients.
- Update the mod_facts and mod_site_misc modules, which used
- utime(2) directly, to call these new FSIO APIs.
+2008-09-04 castaglia <castaglia>
-2008-05-06 00:23 castaglia
+ * src/parser.c: Get rid of small function that is only used in one
+ place; simply move the code into the calling function.
- * 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-09-04 castaglia <castaglia>
-2008-05-05 22:19 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.
- * 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-09-03 castaglia <castaglia>
-2008-05-05 22:17 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.
- * src/main.c:
- If sending responses in pr_cmd_dispatch_phase(), be sure to flush
- the correct response chain.
+2008-09-03 castaglia <castaglia>
-2008-05-05 22:13 castaglia
+ * include/fsio.h, src/fsio.c: Add a pr_find_fs() function, for
+ retrieving a registered FS object by name.
- * 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-09-02 castaglia <castaglia>
-2008-05-05 21:31 castaglia
+ * configure: Updated configure.
- * 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.
+2008-09-02 castaglia <castaglia>
- 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.
+ * 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-05-05 21:11 castaglia
+2008-09-01 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.
+ * 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-04-28 08:14 castaglia
+2008-09-01 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.
+ * doc/howto/DSO.html: Updated DSO howto with mention of prxs.
-2008-04-25 17:20 castaglia
+2008-09-01 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.
+ * NEWS, doc/modules/mod_facts.html, modules/mod_facts.c: Bug#3108 -
+ Support removing MLST from FEAT list.
-2008-04-25 09:41 castaglia
+2008-08-30 castaglia <castaglia>
- * NEWS, locale/Makefile.in, locale/zh_CN.po:
- Adding Chinese translation.
+ * contrib/mod_tls.c: Prettify some of the error messages emitted if
+ the configuration is not correct.
-2008-04-17 18:18 castaglia
+2008-08-30 castaglia <castaglia>
- * configure:
- Updated configure.
+ * contrib/mod_tls.c: Fix typos in fix for Bug#3107.
-2008-04-17 18:14 castaglia
+2008-08-30 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.
+ * NEWS, contrib/mod_tls.c, doc/contrib/mod_tls.html: Bug#3107 -
+ TLSProtocol supports misleading "SSLv23" parameter.
-2008-04-16 19:13 castaglia
+2008-08-29 castaglia <castaglia>
- * NEWS:
- Had wrong bug number for IPv6-by-default change.
+ * 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-04-16 19:11 castaglia
+2008-08-28 castaglia <castaglia>
- * configure:
- Updating configure.
+ * configure: Updated configure.
-2008-04-16 19:06 castaglia
+2008-08-28 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.
+ * include/data.h: Update copyright dates in just-modified header.
-2008-04-16 09:27 castaglia
+2008-08-28 castaglia <castaglia>
- * NEWS:
- Forgot to mention the release date for 1.3.2rc1 in the NEWS file.
+ * NEWS, config.h.in, configure.in, include/data.h, src/data.c:
+ Bug#3106 - Add support for Mac OSX 10.5 sendfile.
-2008-04-16 09:26 castaglia
+2008-08-27 castaglia <castaglia>
- * include/version.h:
- Update version for CVS.
+ * locale/Makefile.in: Do not remove the .po files when cleaning the
+ locale/ directory.
-2008-04-15 19:06 castaglia
+2008-08-27 jwm <jwm>
- * Makefile.in:
- Clean up the locale/Makefile when handling the 'distclean'
- target.
+ * 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-04-15 17:30 castaglia
+2008-08-27 jwm <jwm>
- * ChangeLog:
- Updating ChangeLog.
+ * 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-04-15 17:29 castaglia
+2008-08-27 jwm <jwm>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing to release 1.3.2rc1.
+ * contrib/mod_ldap.c: use the configured ldap_port in "connected..."
+ debug message, not LDAP_PORT
-2008-04-15 17:26 castaglia
+2008-08-27 jwm <jwm>
- * 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.
+ * contrib/mod_ldap.c: * Define LDAP_SCOPE_DEFAULT if not defined by the SDK, fixing
+ compilation with (recent?) Sun LDAP headers.
-2008-04-15 15:38 castaglia
+2008-08-27 jwm <jwm>
- * 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.
+ * contrib/mod_ldap.c: * Fix compilation with old LDAP SDKs (LDAP_API_VERSION < 2000).
+ Thanks to Saju Paul <saju.paul at messageway.com>.
-2008-04-15 13:51 castaglia
+2008-08-26 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes.
+ * src/prxs.in: Add license to prxs. Support use of LIBTOOL
+ environment variable to direct prxs to use a different libtool, if
+ necessary.
-2008-04-11 18:07 castaglia
+2008-08-25 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.
+ * src/inet.c: Extend the hack used for active ports to Mac OS 10.5
+ as well.
-2008-04-10 08:04 castaglia
+2008-08-25 castaglia <castaglia>
- * doc/howto/Limit.html:
- Mention that within <Limit> sections, limits are applied only
- based on names, not on IDs.
+ * configure: Updated configure.
-2008-04-09 10:03 castaglia
+2008-08-25 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.
+ * 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-04-08 16:34 castaglia
+2008-08-25 castaglia <castaglia>
- * locale/it_IT.po:
- Updated Italian translation.
+ * lib/pr-syslog.c: Extend the fix for Bug#3104 to Mac OS 10.5 (i.e.
+ DARWIN9) as well.
-2008-04-05 14:05 castaglia
+2008-08-24 castaglia <castaglia>
- * locale/proftpd.pot:
- Fill in some descriptive details in the .pot file header.
+ * 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-04-05 13:47 castaglia
+2008-08-24 castaglia <castaglia>
- * configure:
- Updated configure.
+ * NEWS, lib/pr-syslog.c: Bug#3104 - Syslog logging does not work on
+ Mac OS X.
-2008-04-05 13:44 castaglia
+2008-08-24 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).
+ * NEWS, modules/mod_auth.c: Bug#2564 - Improper logging of "max
+ connections per host".
-2008-04-05 12:46 castaglia
+2008-08-23 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.
+ * NEWS, contrib/mod_sql.c, doc/contrib/mod_sql.html: Bug#2537 -
+ mod_sql does not support %{...}t variable.
-2008-04-04 20:22 castaglia
+2008-08-23 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.
+ * 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-04-04 20:11 castaglia
+2008-08-23 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.
+ * lib/libcap/libcap.h: Fix typo (missing backslash).
-2008-04-04 18:56 castaglia
+2008-08-23 castaglia <castaglia>
- * locale/Makefile.in:
- Make sure that all .po files pass the msgfmt format check.
+ * src/display.c: A temporary pool was being allocated from
+ session.pool for each Display file, and was not being cleaned up.
+ Tsk.
-2008-04-04 18:39 castaglia
+2008-08-22 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.
+ * 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-04-04 18:29 castaglia
+2008-08-21 castaglia <castaglia>
- * locale/: en.po, it.po:
- Remove the vestiges of the renamed .po files.
+ * NEWS, src/log.c: Bug#3098 - Socket descriptor leak when using
+ syslog logging, especially at SyslogLevel 'notice' or higher.
-2008-04-04 18:26 castaglia
+2008-08-20 castaglia <castaglia>
- * locale/: Makefile.in, en_US.po, 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.
+ * contrib/mod_site_misc.c: Add signal handling to a while() loop.
-2008-04-04 18:03 castaglia
+2008-08-20 castaglia <castaglia>
- * locale/proftpd.pot:
- Updated proftpd.pot to reflect changed line numbers.
+ * contrib/mod_load/Makefile.in: Make the mod_load Makefile
+ consistent with other contrib module Makefiles.
-2008-04-04 18:01 castaglia
+2008-08-20 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().
+ * 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-04-04 17:49 castaglia
+2008-08-18 castaglia <castaglia>
- * locale/it.po:
- Fix msgfmt format check warning in it.po.
+ * NEWS, modules/mod_core.c, modules/mod_xfer.c: Bug#3030 -
+ GroupOwner should work for all groups.
-2008-04-04 14:14 castaglia
+2008-08-18 castaglia <castaglia>
- * locale/proftpd.pot:
- Update proftpd.pot with the strings to be translated from
- mod_quotatab.
+ * 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-04-04 14:13 castaglia
+2008-08-18 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Tag a few more strings that need to be translated, when
- displaying quota limit/tallies to clients.
+ * NEWS, contrib/ftpmail, doc/contrib/ftpmail.html: Bug#3100 -
+ Support ftpmail options for sending emails only for specific users.
-2008-04-04 11:37 castaglia
+2008-08-18 castaglia <castaglia>
- * locale/: Makefile.in, en.po, it.po:
- Add it.po (courtesy of Frankie) and en.po for default
- translations.
+ * doc/howto/Tracing.html: Mention the new "fileperms" trace log
+ channel in the Trace logging howto.
-2008-04-04 10:52 castaglia
+2008-08-18 castaglia <castaglia>
- * locale/: Makefile.in, files.txt, proftpd.pot:
- Update the list of files to include contrib modules, and updated
- the .pot file accordingly.
+ * NEWS, modules/mod_core.c, modules/mod_xfer.c: Bug#3099 - Add trace
+ logging of filesystem permission errors.
-2008-04-04 10:47 castaglia
+2008-08-18 castaglia <castaglia>
- * contrib/: mod_quotatab.c, mod_radius.c, mod_readme.c,
- mod_site_misc.c, mod_tls.c, mod_wrap2/mod_wrap2.c:
- Add tags for the response strings which need to be
- localised/translated in the contrib modules.
+ * contrib/mod_wrap2/.cvsignore: Ignore autoconf-generated cache
+ file.
-2008-04-04 10:44 castaglia
+2008-08-16 castaglia <castaglia>
- * contrib/mod_wrap2/.cvsignore:
- More files to be ignored by CVS.
+ * 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-04-04 10:21 castaglia
+2008-08-16 castaglia <castaglia>
- * modules/mod_lang.c:
- Delay the call to setlocale() until the postparse event, after we
- have called bindtextdomain().
+ * 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-04-04 10:16 castaglia
+2008-08-15 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.
+ * src/throttle.c: Include signal.h, for the signal-masking function
+ declarations.
-2008-04-03 18:13 castaglia
+2008-08-15 castaglia <castaglia>
- * locale/Makefile.in:
- When installing locale .mo files, actually do the installation
- into the proper directory structure.
+ * doc/contrib/index.html, doc/contrib/mod_ldap.html: Start a doc
+ covering the mod_ldap directives.
-2008-04-03 18:12 castaglia
+2008-08-15 castaglia <castaglia>
- * modules/mod_lang.c:
- When requesting a locale change, it helps to actually use the
- locale provided by the caller. Sheesh.
+ * configure: Updated configure.
-2008-04-03 18:01 castaglia
+2008-08-15 castaglia <castaglia>
- * modules/mod_lang.c:
- Hook up handling of LangPath and LangDefault, and start trying to
- actually use the configured locale message catalogs.
+ * configure.in: Be sure to include all of the libraries that the
+ proftpd executable is linked against in the `proftpd -V' output.
-2008-04-03 15:08 castaglia
+2008-08-15 castaglia <castaglia>
- * configure:
- Updated configure.
+ * contrib/mod_sql_sqlite.c: Log if there was an error closing the
+ SQLite database as well.
-2008-04-03 15:01 castaglia
+2008-08-15 castaglia <castaglia>
- * configure.in:
- Fix the handling of the PR_LOCALE_DIR macro, so that it properly
- substitutes the variables.
+ * contrib/mod_sql_sqlite.c: Log the error, if there is one, when
+ opening the SQLite database file.
-2008-04-03 10:50 castaglia
+2008-08-15 castaglia <castaglia>
- * locale/: Makefile.in, proftpd.pot:
- Provide a .pot file as a starting point for translators.
+ * 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-04-03 09:03 castaglia
+2008-08-14 castaglia <castaglia>
- * locale/Makefile.in:
- Older msginit versions do not support the --sort-by-file option.
- Also, do not run msgfmt if msginit fails.
+ * 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-04-03 08:56 castaglia
+2008-08-13 castaglia <castaglia>
- * locale/.cvsignore:
- Ignore a few other generated files in the locale/ directory.
+ * 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-04-03 08:55 castaglia
+2008-08-12 castaglia <castaglia>
- * locale/files.txt:
- Update the list of files from which to extract strings via
- xgettext.
+ * NEWS, contrib/mod_tls.c: Bug#3095 - TLSPassphraseProvider port
+ number truncated. Fixed by using 'sizeof(nbuf)', not 'sizeof(buf)',
+ in the snprintf() call.
-2008-04-02 20:21 castaglia
+2008-08-12 castaglia <castaglia>
- * src/encode.c:
- Fix typo which breaks the solution for Bug#3064.
+ * 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-04-02 20:18 castaglia
+2008-08-11 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.
+ * 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-04-02 20:14 castaglia
+2008-08-11 castaglia <castaglia>
- * NEWS, include/encode.h, src/encode.c, src/netio.c:
- Bug#3064 - Better handling of 0xFF character for Cyrillic,
- non-UTF8 charsets.
+ * configure: Updated configure.
-2008-04-02 19:33 castaglia
+2008-08-11 castaglia <castaglia>
- * modules/mod_lang.c:
- Bug#3063 - proftpd fails to start if LC_ALL environment variable
- is wrong.
+ * Make.rules.in, Makefile.in, NEWS, configure.in: Bug#3074 - Support
+ configure option for pkgconfig .pc file install location.
-2008-04-02 19:02 castaglia
+2008-08-10 castaglia <castaglia>
- * NEWS:
- Bug#3056 - Support non-UTF8 encoding and character sets.
+ * contrib/mod_sql_sqlite.c: Use root privs when opening the file
+ configured for SQLite use.
-2008-04-02 18:57 castaglia
+2008-08-10 castaglia <castaglia>
- * doc/howto/Tracing.html:
- The log channel name changed from "utf8" to "encode".
+ * configure: Updated configure.
-2008-04-02 18:54 castaglia
+2008-08-10 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.
+ * 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-04-02 18:34 castaglia
+2008-08-06 castaglia <castaglia>
- * Make.rules.in, include/conf.h, include/encode.h, include/fsio.h,
- include/utf8.h, modules/mod_core.c, modules/mod_lang.c,
- src/encode.c, src/fsio.c, src/main.c, src/trace.c, src/utf8.c:
- Bug#3056 - Support non-UTF8 encoding and character sets.
+ * contrib/mod_tls.c: Quell a compiler warning about signedness with
+ an explicit cast.
-2008-03-31 18:15 castaglia
+2008-08-06 castaglia <castaglia>
- * doc/: contrib/mod_quotatab.html, 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).
+ * 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-03-27 11:28 castaglia
+2008-08-06 castaglia <castaglia>
- * src/scoreboard.c:
- In addition to logging the PID of the blocking lock owner, log
- the type of blocking lock (read/write).
+ * configure: Updated configure.
-2008-03-26 23:24 castaglia
+2008-08-06 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.
+ * 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-03-26 23:04 castaglia
+2008-07-30 castaglia <castaglia>
- * contrib/mod_wrap2_sql.c:
- Replace some "magic numbers" with macros, and increase
- legibility.
+ * NEWS, contrib/mod_tls.c: Bug#3094 - Perform unidirectional SSL/TLS
+ shutdown on data connections.
-2008-03-26 19:30 castaglia
+2008-07-17 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.
+ * NEWS, contrib/mod_quotatab.c: Bug#3036 - Quota information not
+ persisted if session ends abruptly.
-2008-03-26 19:06 castaglia
+2008-07-17 castaglia <castaglia>
- * contrib/mod_wrap2_sql.c:
- Clear up a temporary pool before exiting early.
+ * contrib/mod_quotatab.h: Remove stale and misleading comment;
+ confstreams were an interesting idea, but will not be added.
-2008-03-26 18:57 castaglia
+2008-07-16 castaglia <castaglia>
- * contrib/mod_wrap2/mod_wrap2.c:
- Quell compiler warning about partially-declared callback function
- signature.
+ * doc/modules/mod_cap.html: Add a FAQ about the libcap1 warning
+ (regarding 32-bit capabilities), and how to address the warning.
-2008-03-26 18:47 castaglia
+2008-06-19 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab_sql.c:
- Bug#3061 - Segfault in mod_quotatab_sql if the SQL query returns
- NULL bytes/files values.
+ * modules/mod_auth.c: Replace the specific "FTP login timed out"
+ with the more generic "Session timed out".
-2008-03-26 18:00 castaglia
+2008-06-18 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.
+ * NEWS, modules/mod_core.c: Bug#3077 - Transparently handle the
+ X-variant commands when checking <Limit> permissions.
-2008-03-26 15:33 castaglia
+2008-06-17 castaglia <castaglia>
- * src/scoreboard.c:
- Add trace logging of scoreboard locking.
+ * include/compat.h: Minor formatting change, no functional change.
-2008-03-26 14:13 castaglia
+2008-06-16 castaglia <castaglia>
- * src/scoreboard.c, utils/scoreboard.c:
- Bug#3057 - ftptop can lock scoreboard, blocking proftpd. Try not
- to lock as aggressively in ftptop.
+ * 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-03-25 15:20 castaglia
+2008-06-16 castaglia <castaglia>
- * NEWS, src/utf8.c:
- Bug#3059 - Wrong handling of UTF8 conversions.
+ * src/main.c: Always remove the scoreboard entry when handling a
+ termination signal, not just when we receive SIGSEGV.
-2008-03-25 10:14 castaglia
+2008-06-16 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#3058 - Handling of OPTS command results in badly set values
- in code.
+ * 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-03-21 14:01 castaglia
+2008-06-16 castaglia <castaglia>
- * tests/tests.c:
- Clarify that the tests.log file can be found in the tests/
- directory.
+ * contrib/mod_ban.c: Update to use newer PR_LOG_ macros.
-2008-03-20 14:56 castaglia
+2008-06-14 castaglia <castaglia>
- * src/netaddr.c:
- Unit tests caught regression where a NULL buffer was not being
- checked properly. Yay unit testing!
+ * 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-03-20 14:17 castaglia
+2008-06-14 castaglia <castaglia>
- * .cvsignore:
- Ignore the generated proftpd.pc file.
+ * tests/str.c: Add unit test for the pr_str_get_word() function.
-2008-03-19 14:16 castaglia
+2008-06-14 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.
+ * 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-03-19 14:01 castaglia
+2008-06-14 castaglia <castaglia>
- * configure:
- Updated configure.
+ * tests/modules.c, tests/tests.h: Fill in unit tests for the Module
+ API functions.
-2008-03-19 13:59 castaglia
+2008-06-14 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.
+ * src/modules.c: Clean up a few more style nits, and guard against
+ bad arguments, in the Module API.
-2008-03-17 09:40 castaglia
+2008-06-13 castaglia <castaglia>
- * contrib/mod_tls.c:
- Protect some OCSP-specific code with checks against the OpenSSL
- version.
+ * tests/modules.c: Add unit tests for the Stash API.
-2008-03-17 09:33 castaglia
+2008-06-13 castaglia <castaglia>
- * contrib/mod_tls.c:
- Make checking of the verification mechanism names (CRL, OCSP)
- case-insensitive.
+ * src/modules.c: Fix a few minor bugs and nits in the Stash API,
+ discovered while writing unit tests for those functions.
-2008-03-17 09:32 castaglia
+2008-06-13 castaglia <castaglia>
- * RELEASE_NOTES:
- Be sure to mention TLSVerifyOrder in the release notes.
+ * 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-03-17 09:15 castaglia
+2008-06-13 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Add docs for the new TLSVerifyOrder directive.
+ * 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-03-17 09:02 castaglia
+2008-06-13 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#2840 - Online Certificate Status Protocol (OCSP) support.
+ * 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-03-17 08:19 castaglia
+2008-06-12 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".
+ * 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-03-15 12:12 castaglia
+2008-06-12 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.
+ * tests/scoreboard.c: Fill in the remaining unit tests for the
+ Scoreboard API.
-2008-03-14 15:27 castaglia
+2008-06-12 castaglia <castaglia>
- * contrib/mod_sql_odbc.c:
- Check for the FreeTDS driver; if so, use TOP instead of LIMIT.
+ * 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-03-13 15:44 castaglia
+2008-06-12 castaglia <castaglia>
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Use pcalloc() rather than palloc() in the database backend
- modules. Fix some inconsistent style while there.
+ * 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-03-13 15:35 castaglia
+2008-06-11 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.
+ * tests/.cvsignore: More files to be ignored by CVS in the tests/
+ directory.
-2008-03-13 10:27 castaglia
+2008-06-11 castaglia <castaglia>
- * doc/contrib/mod_sql_odbc.html:
- Update instructions for configuring proftpd for using ODBC
- libraries.
+ * tests/scoreboard.c: Fill in more of the unit tests for the
+ Scoreboard API.
-2008-03-13 09:43 castaglia
+2008-06-11 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.
+ * src/scoreboard.c: Fix some minor bugs found in the Scoreboard API
+ while working on unit tests.
- 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-06-10 castaglia <castaglia>
-2008-03-11 15:28 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.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3051 - mod_quotatab incorrectly reduces file count on rename.
+2008-06-06 castaglia <castaglia>
-2008-03-11 10:39 castaglia
+ * src/scoreboard.c: Add better argument checking in
+ pr_set_scoreboard().
- * configure:
- Updated configure.
+2008-06-06 castaglia <castaglia>
-2008-03-11 10:35 castaglia
+ * tests/Makefile.in, tests/scoreboard.c, tests/stubs.c,
+ tests/tests.c, tests/tests.h: Start writing unit tests for the
+ Scoreboard API.
- * RELEASE_NOTES:
- Mention the pkgconfig file.
+2008-06-06 castaglia <castaglia>
-2008-03-11 10:31 castaglia
+ * tests/sets.c: Avoid a compiler warning about a shadowed variable
+ in the testsuite.
- * Make.rules.in, Makefile.in, configure.in, lib/Makefile.in:
- When installing proftpd, be sure to install the libsupp library
- as well.
+2008-06-05 castaglia <castaglia>
- 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.
+ * 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.
- These changes are for Bug #2991.
+2008-06-05 castaglia <castaglia>
-2008-03-08 11:52 castaglia
+ * tests/stubs.c: Forgot to include these variables for unit tests.
- * 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-06-05 castaglia <castaglia>
-2008-03-07 21:16 castaglia
+ * tests/str.c: Add unit tests for the newly added functions to the
+ String API.
- * contrib/mod_tls.c:
- If FIPS mode is requested, and the OpenSSL installation doesn't
- support FIPS, log a warning.
+2008-06-05 castaglia <castaglia>
-2008-03-07 21:12 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.
- * Makefile.in, NEWS, RELEASE_NOTES, contrib/mod_tls.c,
- contrib/mod_load/Makefile.in, 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-06-05 castaglia <castaglia>
-2008-03-05 19:08 castaglia
+ * src/throttle.c: Make sure to explicit require a TRUE return value
+ from the pr_expr_* calls.
- * NEWS, RELEASE_NOTES:
- Add mention of ftpmail in the NEWS and in the release notes.
+2008-06-05 castaglia <castaglia>
-2008-03-05 19:06 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.
- * contrib/ftpmail, doc/contrib/ftpmail.html:
- Added ftpmail, a Perl script which reads a TransferLog FIFO and
- sends automatic email notifications for uploads.
+2008-06-05 castaglia <castaglia>
-2008-03-03 18:05 castaglia
+ * src/class.c, src/netacl.c: Bug#3083 - Multiple issues with
+ handling of <Class> definitions.
- * doc/contrib/mod_ban.html:
- Update docs for the BanOnEvent directive.
+2008-06-05 castaglia <castaglia>
-2008-03-03 18:01 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.
- * NEWS, contrib/mod_ban.c:
- Bug#3047 - BanOnEvent should support optional ban message.
+2008-06-05 castaglia <castaglia>
-2008-03-03 09:13 castaglia
+ * doc/howto/Classes.html: Add more material to the Classes howto,
+ covering the Satisfy directive and giving some examples.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3045 - "QuotaOptions ScanOnLogin" does not work for 'class'
- or 'all' limits.
+2008-06-05 castaglia <castaglia>
-2008-03-03 08:26 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.
- * NEWS, contrib/mod_wrap2_file.c:
- Bug#3048 - mod_wrap2_file should support comma-delimited lists of
- clients.
+2008-06-05 castaglia <castaglia>
-2008-03-03 08:21 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).
- * modules/mod_core.c:
- Make the message about an AuthOrder module with no auth handlers
- a little more explicit.
+2008-06-04 castaglia <castaglia>
-2008-02-25 11:05 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.
- * src/inet.c:
- Forgot to remove the old pr_inet_validate() function from inet.c.
+2008-06-02 castaglia <castaglia>
-2008-02-24 14:25 castaglia
+ * NEWS, doc/howto/Tracing.html, src/trace.c: Bug#3082 - Use
+ "DEFAULT" keyword instead of "ALL" for Trace directive.
- * tests/: Makefile.in, netaddr.c, stubs.c, tests.c, tests.h:
- Adding unit tests for the Netaddr API. Note that some of the
- tests still need to be filled in.
+2008-05-20 castaglia <castaglia>
-2008-02-24 14:23 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.
- * src/netaddr.c:
- Fix minor bugs in the Netaddr API.
+2008-05-17 castaglia <castaglia>
-2008-02-24 12:35 castaglia
+ * src/throttle.c: Make sure that the signal-handling functions (e.g.
+ sigemptyset()) can be properly found on some platforms (e.g.
+ Solaris).
- * 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-05-15 castaglia <castaglia>
-2008-02-23 17:53 castaglia
+ * modules/mod_core.c: Make sure that we honor the TimeoutIdle
+ directive *before* authentication, as well as after.
- * src/log.c:
- Set errno when appropriate, and catch a corner case where the
- caller might provide a null format string.
+2008-05-14 castaglia <castaglia>
-2008-02-20 14:09 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.
- * src/log.c:
- Log if ftruncate(3) fails.
+2008-05-13 castaglia <castaglia>
-2008-02-20 14:07 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().
- * 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-05-12 castaglia <castaglia>
-2008-02-20 14:01 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.
- * 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-05-12 castaglia <castaglia>
-2008-02-20 13:59 castaglia
+ * configure: Updated configure.
- * 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-05-12 castaglia <castaglia>
-2008-02-20 10:47 castaglia
+ * configure.in, modules/mod_dso.c: Make sure we use the libltdl
+ shipped with proftpd, not the system libltdl.
- * 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-05-12 castaglia <castaglia>
-2008-02-19 08:42 castaglia
+ * modules/mod_xfer.c: Found more while loops without signal
+ handling. Tsk tsk.
- * NEWS, modules/mod_delay.c:
- Bug#3044 - Segfault if mod_delay fails to load DelayTable.
+2008-05-11 castaglia <castaglia>
-2008-02-18 18:31 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.
- * tests/: Makefile.in, tests.c, tests.h, version.c:
- Add unit tests for the new Version API functions.
+2008-05-11 castaglia <castaglia>
-2008-02-18 18:29 castaglia
+ * src/main.c: Make a lowercased version of the protocol name, in
+ set_protocol_name(), for use in the WtmpLog entry.
- * 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-05-08 castaglia <castaglia>
-2008-02-18 13:45 castaglia
+ * modules/mod_core.c: As it turns out, the <Limit> section can
+ handles commands for more than just FTP.
- * include/log.h:
- Use gcc's varargs checking for printf-like statements for the
- pr_log_auth() function.
+2008-05-08 castaglia <castaglia>
-2008-02-18 13:26 castaglia
+ * contrib/mod_load/mod_load.c.in: Mark a string used by mod_load as
+ localisable.
- * tests/: Makefile.in, event.c, tests.c, tests.h:
- Added unit tests for the Event API.
+2008-05-08 castaglia <castaglia>
-2008-02-18 13:25 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.
- * 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-05-08 castaglia <castaglia>
-2008-02-17 18:58 castaglia
+ * src/main.c: Stylistic nits, no functional change.
- * tests/: Makefile.in, feat.c, tests.c, tests.h:
- Add unit tests for the Feat API.
+2008-05-08 castaglia <castaglia>
-2008-02-17 18:56 castaglia
+ * src/main.c: Always have signal handling in while loops.
- * 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-05-07 castaglia <castaglia>
-2008-02-17 18:15 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec: Bug#3076 - RPM build failing
+ on 64 bit OS due to incomplete .spec.
- * tests/: Makefile.in, tests.c, tests.h, var.c:
- Add unit tests for the Var API.
+2008-05-06 castaglia <castaglia>
-2008-02-17 18:13 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.
- * 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-05-06 castaglia <castaglia>
-2008-02-17 13:27 castaglia
+ * doc/howto/Authentication.html: Typo.
- * tests/tests.c:
- Slightly more elegant way of iterating over all of the
- testsuites, without needing to use strcmp().
+2008-05-06 castaglia <castaglia>
-2008-02-17 13:19 castaglia
+ * configure: Updated configure.
- * tests/: Makefile.in, table.c, tests.c, tests.h:
- Add unit tests for the Table API.
+2008-05-06 castaglia <castaglia>
-2008-02-17 13:17 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.
- * src/table.c:
- Fix a few minor bugs related to checking for improper arguments.
+2008-05-06 castaglia <castaglia>
-2008-02-16 20:15 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.
- * doc/howto/Testing.html:
- Start of a doc that will describe ProFTPD's burgeoning testsuite,
- and how to use it.
+2008-05-06 castaglia <castaglia>
-2008-02-16 19:26 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.
- * 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-05-06 castaglia <castaglia>
-2008-02-16 18:44 castaglia
+ * src/main.c: If sending responses in pr_cmd_dispatch_phase(), be
+ sure to flush the correct response chain.
- * 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-05-06 castaglia <castaglia>
-2008-02-16 18:11 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.
- * tests/: Makefile.in, stubs.c, tests.c, tests.h, timers.c:
- Adding unit tests for the Timers API.
+2008-05-06 castaglia <castaglia>
-2008-02-16 18:06 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.
- * 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-05-06 castaglia <castaglia>
-2008-02-16 17:01 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.
- * tests/: Makefile.in, sets.c, tests.c, tests.h:
- Adding unit tests for the Sets API.
+2008-04-28 castaglia <castaglia>
-2008-02-16 16:59 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.
- * 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-04-26 castaglia <castaglia>
-2008-02-16 12:46 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.
- * 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-04-25 castaglia <castaglia>
-2008-02-15 21:36 castaglia
+ * NEWS, locale/Makefile.in, locale/zh_CN.po: Adding Chinese
+ translation.
- * tests/str.c:
- Fill in the unit test for the sstrncpy() function.
+2008-04-18 castaglia <castaglia>
-2008-02-15 21:18 castaglia
+ * configure: Updated configure.
- * tests/: .cvsignore, array.c, env.c, str.c, 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-04-18 castaglia <castaglia>
-2008-02-15 17:44 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.
- * doc/contrib/mod_quotatab.html:
- Properly close the line item.
+2008-04-17 castaglia <castaglia>
-2008-02-15 17:37 castaglia
+ * NEWS: Had wrong bug number for IPv6-by-default change.
- * 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-04-17 castaglia <castaglia>
-2008-02-15 07:41 castaglia
+ * configure: Updating configure.
- * doc/howto/CreateHome.html:
- Start a FAQ for CreateHome questions.
+2008-04-17 castaglia <castaglia>
-2008-02-14 09:07 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.
- * doc/howto/CreateHome.html:
- List the uid and gid parameters of CreateHome, and talk about
- them a little.
+2008-04-16 castaglia <castaglia>
-2008-02-14 07:15 castaglia
+ * NEWS: Forgot to mention the release date for 1.3.2rc1 in the NEWS
+ file.
- * doc/howto/TLS.html:
- Add TLS FAQ on removing cert key passphrases.
+2008-04-16 castaglia <castaglia>
-2008-02-13 18:23 castaglia
+ * include/version.h: Update version for CVS.
- * 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-04-16 castaglia <castaglia>
-2008-02-13 09:23 castaglia
+ * Makefile.in: Clean up the locale/Makefile when handling the
+ 'distclean' target.
- * tests/.cvsignore:
- Ignore generated files.
+2008-04-16 castaglia <castaglia>
-2008-02-13 09:14 castaglia
+ * ChangeLog: Updating ChangeLog.
- * configure:
- Updated configure.
+2008-04-16 castaglia <castaglia>
-2008-02-13 09:11 castaglia
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing to
+ release 1.3.2rc1.
- * 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-04-16 castaglia <castaglia>
-2008-02-13 09:10 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.
- * 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-04-15 castaglia <castaglia>
-2008-02-13 08:16 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.
- * tests/str.c:
- Fill in the unit tests for more of the string manipulation
- functions.
+2008-04-15 castaglia <castaglia>
-2008-02-13 08:16 castaglia
+ * RELEASE_NOTES: Updating release notes.
- * src/str.c:
- Fix up the indentation/style in sreplace(). Guard against
- null/bad arguments.
+2008-04-12 castaglia <castaglia>
-2008-02-12 23:49 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.
- * tests/: Makefile.in, env.c, tests.c, tests.h:
- Add unit tests for the Env API.
+2008-04-10 castaglia <castaglia>
-2008-02-12 23:24 castaglia
+ * doc/howto/Limit.html: Mention that within <Limit> sections, limits
+ are applied only based on names, not on IDs.
- * 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-04-09 castaglia <castaglia>
-2008-02-12 23:21 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.
- * tests/: Makefile.in, array.c, tests.c, tests.h:
- Adding unit tests for the Array API.
+2008-04-08 castaglia <castaglia>
-2008-02-12 19:45 castaglia
+ * locale/it_IT.po: Updated Italian translation.
- * src/str.c:
- Guard against NULL arguments in sreplace().
+2008-04-05 castaglia <castaglia>
-2008-02-12 09:04 castaglia
+ * locale/proftpd.pot: Fill in some descriptive details in the .pot
+ file header.
- * configure:
- Updated configure.
+2008-04-05 castaglia <castaglia>
-2008-02-12 08:58 castaglia
+ * configure: Updated configure.
- * configure.in:
- Try to describe the --enable-devel option such that packagers
- won't use it.
+2008-04-05 castaglia <castaglia>
-2008-02-11 07:13 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).
- * configure:
- Updated configure.
+2008-04-05 castaglia <castaglia>
-2008-02-10 20:46 castaglia
+ * modules/mod_core.c: Don't set the UTF8 feature in mod_core; it's
+ already handled by mod_lang. Addresses Bug#3070.
- * 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-04-05 castaglia <castaglia>
-2008-02-10 20:44 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.
- * tests/: Makefile.in, pool.c, str.c, stubs.c, tests.c, tests.h:
- Start of a testsuite for proftpd. Uses the 'check' package; see
+2008-04-05 castaglia <castaglia>
- http://check.sourceforge.net/
+ * 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.
- To enable, compile proftpd using --enable-tests. Then run `make
- check' before installing.
+2008-04-05 castaglia <castaglia>
- Expect to see a lot of activity here, as proftpd gets the
- testsuite its desperately needed for years.
+ * locale/Makefile.in: Make sure that all .po files pass the msgfmt
+ format check.
-2008-02-10 20:37 castaglia
+2008-04-05 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.
+ * 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-02-10 12:14 castaglia
+2008-04-05 castaglia <castaglia>
- * contrib/: mod_ban.c, mod_ctrls_admin.c:
- Updated mod_ban and mod_ctrls_admin to use the re-named
- scoreboard entry reading function.
+ * 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-02-09 18:29 castaglia
+2008-04-05 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.
+ * locale/proftpd.pot: Updated proftpd.pot to reflect changed line
+ numbers.
- Also updated ftpwho and ftptop to properly display uploading,
- downloading, and listing commands (including handling the MLST
- and MLSD commands properly).
+2008-04-05 castaglia <castaglia>
- 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.
+ * 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-02-09 17:17 castaglia
+2008-04-04 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.
+ * locale/proftpd.pot: Update proftpd.pot with the strings to be
+ translated from mod_quotatab.
-2008-01-30 09:26 castaglia
+2008-04-04 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.
+ * contrib/mod_quotatab.c: Tag a few more strings that need to be
+ translated, when displaying quota limit/tallies to clients.
- 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-04-04 castaglia <castaglia>
-2008-01-28 07:38 castaglia
+ * locale/Makefile.in: Add it.po (courtesy of Frankie) and en.po for
+ default translations.
- * 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-04-04 castaglia <castaglia>
-2008-01-24 17:53 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.
- * contrib/mod_wrap.c:
- Quell some compiler warnings in mod_wrap.
+2008-04-04 castaglia <castaglia>
-2008-01-24 17:11 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.
- * src/proctitle.c:
- Silence a compiler warning about unused variables when
- PR_DEVEL_STACK_TRACE is defined.
+2008-04-04 castaglia <castaglia>
-2008-01-24 09:11 castaglia
+ * contrib/mod_wrap2/.cvsignore: More files to be ignored by CVS.
- * 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-04-04 castaglia <castaglia>
-2008-01-23 08:59 castaglia
+ * modules/mod_lang.c: Delay the call to setlocale() until the
+ postparse event, after we have called bindtextdomain().
- * 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-04-04 castaglia <castaglia>
-2008-01-22 20:26 castaglia
+ * include/conf.h: Use dgettext() instead of gettext() when
+ retrieving localised strings, so that we can explicitly specify the
+ domain ("proftpd") to use.
- * 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-04-04 castaglia <castaglia>
-2008-01-21 10:05 castaglia
+ * locale/Makefile.in: When installing locale .mo files, actually do
+ the installation into the proper directory structure.
- * src/main.c:
- Remove some tabs; no functional change.
+2008-04-04 castaglia <castaglia>
-2008-01-21 09:50 castaglia
+ * modules/mod_lang.c: When requesting a locale change, it helps to
+ actually use the locale provided by the caller. Sheesh.
- * RELEASE_NOTES:
- Mention the inclusion of IPv6 support in the default build.
+2008-04-04 castaglia <castaglia>
-2008-01-21 09:48 castaglia
+ * modules/mod_lang.c: Hook up handling of LangPath and LangDefault,
+ and start trying to actually use the configured locale message
+ catalogs.
- * README.IPv6:
- Updated the IPv6 README.
+2008-04-03 castaglia <castaglia>
-2008-01-21 09:48 castaglia
+ * configure: Updated configure.
- * configure:
- Updated configure.
+2008-04-03 castaglia <castaglia>
-2008-01-21 09:44 castaglia
+ * configure.in: Fix the handling of the PR_LOCALE_DIR macro, so that
+ it properly substitutes the variables.
- * NEWS, configure.in, sample-configurations/basic.conf:
- Bug#2577 - IPv6 support should be enabled by default.
+2008-04-03 castaglia <castaglia>
-2008-01-18 11:23 castaglia
+ * locale/Makefile.in, locale/proftpd.pot: Provide a .pot file as a
+ starting point for translators.
- * NEWS, contrib/mod_rewrite.c:
- Bug#3034 - Rewritten command parameters need to be set in
- multiple places.
+2008-04-03 castaglia <castaglia>
-2008-01-18 08:26 castaglia
+ * locale/Makefile.in: Older msginit versions do not support the
+ --sort-by-file option. Also, do not run msgfmt if msginit fails.
- * contrib/mod_ctrls_admin.c:
- Silence compiler warning about unused variable.
+2008-04-03 castaglia <castaglia>
-2008-01-18 08:17 castaglia
+ * locale/.cvsignore: Ignore a few other generated files in the
+ locale/ directory.
- * NEWS, include/netacl.h, src/class.c, src/netacl.c:
- Bug#3033 - Class rules not honoring '!' negation character.
+2008-04-03 castaglia <castaglia>
-2008-01-17 17:01 castaglia
+ * locale/files.txt: Update the list of files from which to extract
+ strings via xgettext.
- * 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-04-03 castaglia <castaglia>
-2008-01-16 18:19 castaglia
+ * src/encode.c: Fix typo which breaks the solution for Bug#3064.
- * 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.)
+2008-04-03 castaglia <castaglia>
- 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.
+ * src/encode.c: Add a few more character sets to the list of those
+ which override the value of the Telnet IAC value.
-2008-01-16 17:42 castaglia
+2008-04-03 castaglia <castaglia>
- * NEWS, src/netaddr.c:
- Bug#3031 - IPv4-mapped IPv6 connections not matched properly
- against IPv4 glob ACLs.
+ * NEWS, include/encode.h, src/encode.c, src/netio.c: Bug#3064 -
+ Better handling of 0xFF character for Cyrillic, non-UTF8 charsets.
-2008-01-15 17:21 castaglia
+2008-04-03 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.
+ * modules/mod_lang.c: Bug#3063 - proftpd fails to start if LC_ALL
+ environment variable is wrong.
-2008-01-15 16:38 castaglia
+2008-04-03 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.:
+ * NEWS: Bug#3056 - Support non-UTF8 encoding and character sets.
- ./configure CFLAGS=-DPR_TUNABLE_EINTR_RETRY_INTERVAL=0.5 ...
+2008-04-03 castaglia <castaglia>
- 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:
+ * doc/howto/Tracing.html: The log channel name changed from "utf8"
+ to "encode".
- main.c:1527: warning: unsigned int format, double arg (arg 3)
+2008-04-03 castaglia <castaglia>
-2008-01-15 10:27 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.
- * 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-04-03 castaglia <castaglia>
-2008-01-15 09:56 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.
- * 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.
+2008-04-01 castaglia <castaglia>
- 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.
+ * 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-01-14 18:26 castaglia
+2008-03-27 castaglia <castaglia>
- * contrib/mod_ratio.c:
- Silence some compiler warnings about uninitialized variables.
+ * src/scoreboard.c: In addition to logging the PID of the blocking
+ lock owner, log the type of blocking lock (read/write).
-2008-01-14 17:21 castaglia
+2008-03-27 castaglia <castaglia>
- * src/data.c:
- Found a few more places where text needs to be marked for
- localisation.
+ * 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-01-14 14:42 castaglia
+2008-03-27 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Update TLSLog description to note requirement about parent
- directory permissions.
+ * contrib/mod_wrap2_sql.c: Replace some "magic numbers" with macros,
+ and increase legibility.
-2008-01-14 07:38 castaglia
+2008-03-27 castaglia <castaglia>
- * include/ftp.h, modules/mod_facts.c:
- Add definitions of the MLSD, MLST commands to ftp.h.
+ * 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-01-12 15:01 castaglia
+2008-03-27 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#3027 - Unmatched backreferences are not handled properly in
- RewriteRules.
+ * contrib/mod_wrap2_sql.c: Clear up a temporary pool before exiting
+ early.
-2008-01-12 14:59 castaglia
+2008-03-27 castaglia <castaglia>
- * contrib/mod_rewrite.c:
- Additional changes needed for the full fix for Bug #3026.
+ * contrib/mod_wrap2/mod_wrap2.c: Quell compiler warning about
+ partially-declared callback function signature.
-2008-01-11 19:28 castaglia
+2008-03-27 castaglia <castaglia>
- * configure:
- Updated configure.
+ * NEWS, contrib/mod_quotatab_sql.c: Bug#3061 - Segfault in
+ mod_quotatab_sql if the SQL query returns NULL bytes/files values.
-2008-01-11 19:25 castaglia
+2008-03-27 castaglia <castaglia>
- * configure.in:
- Copy-n-paste error in configure.in added erroneous line break.
+ * 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-01-11 19:00 castaglia
+2008-03-26 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.
+ * src/scoreboard.c: Add trace logging of scoreboard locking.
-2008-01-11 18:20 castaglia
+2008-03-26 castaglia <castaglia>
- * configure:
- Updated configure.
+ * src/scoreboard.c, utils/scoreboard.c: Bug#3057 - ftptop can lock
+ scoreboard, blocking proftpd. Try not to lock as aggressively in
+ ftptop.
-2008-01-11 18:12 castaglia
+2008-03-25 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>.
+ * NEWS, src/utf8.c: Bug#3059 - Wrong handling of UTF8 conversions.
-2008-01-11 13:55 castaglia
+2008-03-25 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#3026 - RewriteCondition does not negate -d -f -s tests.
+ * NEWS, modules/mod_core.c: Bug#3058 - Handling of OPTS command
+ results in badly set values in code.
-2008-01-11 09:12 castaglia
+2008-03-21 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.
+ * tests/tests.c: Clarify that the tests.log file can be found in the
+ tests/ directory.
-2008-01-10 10:22 castaglia
+2008-03-20 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.
+ * src/netaddr.c: Unit tests caught regression where a NULL buffer
+ was not being checked properly. Yay unit testing!
-2008-01-09 20:24 castaglia
+2008-03-20 castaglia <castaglia>
- * contrib/mod_sql.c:
- Remove the mod_sql code which used to support the (deprecated and
- removed) SQLHomedirOnDemand feature.
+ * .cvsignore: Ignore the generated proftpd.pc file.
-2008-01-09 20:10 castaglia
+2008-03-19 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-01-09 20:08 castaglia
+2008-03-19 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.
+ * configure: Updated configure.
-2008-01-09 10:56 castaglia
+2008-03-19 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.
+ * 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-01-09 08:13 castaglia
+2008-03-17 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.)
+ * contrib/mod_tls.c: Protect some OCSP-specific code with checks
+ against the OpenSSL version.
-2008-01-09 08:06 castaglia
+2008-03-17 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#3025 - Using %b in a SQLNamedQuery does not properly log the
- file size for DELE.
+ * contrib/mod_tls.c: Make checking of the verification mechanism
+ names (CRL, OCSP) case-insensitive.
-2008-01-09 07:28 castaglia
+2008-03-17 castaglia <castaglia>
- * contrib/mod_sql_odbc.c:
- Removed "IMHO" from comment describing Oracle library bug; it's
- been confirmed by Oracle.
+ * RELEASE_NOTES: Be sure to mention TLSVerifyOrder in the release
+ notes.
-2008-01-08 16:06 castaglia
+2008-03-17 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.
+ * doc/contrib/mod_tls.html: Add docs for the new TLSVerifyOrder
+ directive.
- 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-03-17 castaglia <castaglia>
-2008-01-08 16:04 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2840 - Online Certificate Status
+ Protocol (OCSP) support.
- * modules/mod_core.c:
- Explicit cast to avoid compiler warning.
+2008-03-17 castaglia <castaglia>
-2008-01-08 15:27 castaglia
+ * contrib/mod_sql_odbc.c: Use the TOP clause when the driver name is
+ "FreeTDS", or when the driver name contains "SQL Server".
- * 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-03-15 castaglia <castaglia>
-2008-01-08 09:59 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.
- * 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-03-14 castaglia <castaglia>
-2008-01-08 09:58 castaglia
+ * contrib/mod_sql_odbc.c: Check for the FreeTDS driver; if so, use
+ TOP instead of LIMIT.
- * 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-03-13 castaglia <castaglia>
-2008-01-08 09:37 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.
- * 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-03-13 castaglia <castaglia>
-2008-01-07 20:23 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.
- * README.modules, RELEASE_NOTES:
- Mention the new database backend modules: mod_sql_odbc and
- mod_sql_sqlite.
+2008-03-13 castaglia <castaglia>
-2008-01-07 20:21 castaglia
+ * doc/contrib/mod_sql_odbc.html: Update instructions for configuring
+ proftpd for using ODBC libraries.
- * 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-03-13 castaglia <castaglia>
-2008-01-07 20:15 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.
- * 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-03-11 castaglia <castaglia>
-2008-01-07 20:15 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#3051 - mod_quotatab incorrectly
+ reduces file count on rename.
- * NEWS, contrib/mod_sql_odbc.c, doc/contrib/mod_sql_odbc.html:
- Add the mod_sql_odbc module to the contrib area.
+2008-03-11 castaglia <castaglia>
-2008-01-07 20:12 castaglia
+ * configure: Updated configure.
- * configure:
- Updated configure.
+2008-03-11 castaglia <castaglia>
-2008-01-07 20:07 castaglia
+ * RELEASE_NOTES: Mention the pkgconfig file.
- * 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-03-11 castaglia <castaglia>
-2008-01-07 18:38 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.
- * 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.
+2008-03-08 castaglia <castaglia>
- Update docs to mention the SQLBackend name provided by
- mod_sql_sqlite.
+ * 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-01-07 18:31 castaglia
+2008-03-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.
+ * contrib/mod_tls.c: If FIPS mode is requested, and the OpenSSL
+ installation doesn't support FIPS, log a warning.
-2008-01-07 18:21 castaglia
+2008-03-08 castaglia <castaglia>
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Typo.
+ * 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-01-07 18:13 castaglia
+2008-03-06 castaglia <castaglia>
- * configure:
- Updated configure.
+ * NEWS, RELEASE_NOTES: Add mention of ftpmail in the NEWS and in the
+ release notes.
-2008-01-07 18:09 castaglia
+2008-03-06 castaglia <castaglia>
- * configure.in:
- Decided I do not need the leading '$' character in the configure
- invocation string, for I am capricious that way.
+ * contrib/ftpmail, doc/contrib/ftpmail.html: Added ftpmail, a Perl
+ script which reads a TransferLog FIFO and sends automatic email
+ notifications for uploads.
-2008-01-07 18:07 castaglia
+2008-03-04 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.
+ * doc/contrib/mod_ban.html: Update docs for the BanOnEvent
+ directive.
- 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-03-04 castaglia <castaglia>
-2008-01-07 07:35 castaglia
+ * NEWS, contrib/mod_ban.c: Bug#3047 - BanOnEvent should support
+ optional ban message.
- * configure:
- Update configure.
+2008-03-03 castaglia <castaglia>
-2008-01-06 17:56 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#3045 - "QuotaOptions
+ ScanOnLogin" does not work for 'class' or 'all' limits.
- * 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.
+2008-03-03 castaglia <castaglia>
- Remove any mention of long-deprecated directives; they will only
- serve to confuse people at this point in time.
+ * NEWS, contrib/mod_wrap2_file.c: Bug#3048 - mod_wrap2_file should
+ support comma-delimited lists of clients.
-2008-01-06 17:44 castaglia
+2008-03-03 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c:
- Bug#3022 - Timed SQL connections don't reconnect to database.
+ * modules/mod_core.c: Make the message about an AuthOrder module
+ with no auth handlers a little more explicit.
-2008-01-05 15:12 castaglia
+2008-02-25 castaglia <castaglia>
- * README.modules:
- Update README.modules to mention the new modules.
+ * src/inet.c: Forgot to remove the old pr_inet_validate() function
+ from inet.c.
-2008-01-05 13:37 castaglia
+2008-02-24 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.
+ * 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-01-05 13:21 castaglia
+2008-02-24 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.
+ * src/netaddr.c: Fix minor bugs in the Netaddr API.
-2008-01-04 22:40 castaglia
+2008-02-24 castaglia <castaglia>
- * contrib/mod_sql.c:
- Remove the unused add_virtualbool() function.
+ * 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-01-04 22:28 castaglia
+2008-02-24 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.
+ * src/log.c: Set errno when appropriate, and catch a corner case
+ where the caller might provide a null format string.
-2008-01-04 22:26 castaglia
+2008-02-20 castaglia <castaglia>
- * include/conf.h, include/ident.h, src/ident.c: Delete the now
- unused core ident lookup code; this functionality has been moved
- to the mod_ident module, as per Bug#2453.
+ * src/log.c: Log if ftruncate(3) fails.
-2008-01-04 22:23 castaglia
+2008-02-20 castaglia <castaglia>
- * src/xferlog.c:
- Forgot to check in the changes for this file, relating to
- Bug#2453. Without these, the build fails.
+ * 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-01-04 20:55 castaglia
+2008-02-20 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.
+ * 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-01-04 17:29 castaglia
+2008-02-20 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#3023 - Allow uploading to /dev/null.
+ * 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-01-04 17:22 castaglia
+2008-02-20 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-01-04 17:22 castaglia
+2008-02-19 castaglia <castaglia>
- * RELEASE_NOTES, doc/modules/mod_ident.html:
- Update documentation for the new mod_ident module.
+ * NEWS, modules/mod_delay.c: Bug#3044 - Segfault if mod_delay fails
+ to load DelayTable.
-2008-01-04 17:12 castaglia
+2008-02-19 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.
+ * tests/Makefile.in, tests/tests.c, tests/tests.h, tests/version.c:
+ Add unit tests for the new Version API functions.
-2008-01-04 17:01 castaglia
+2008-02-19 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.
+ * 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-01-04 15:22 castaglia
+2008-02-18 castaglia <castaglia>
- * configure:
- Updated configure. (Upgraded to autoconf-2.61 as well.)
+ * include/log.h: Use gcc's varargs checking for printf-like
+ statements for the pr_log_auth() function.
-2008-01-04 15:18 castaglia
+2008-02-18 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.
+ * tests/Makefile.in, tests/event.c, tests/tests.c, tests/tests.h:
+ Added unit tests for the Event API.
-2008-01-04 14:23 castaglia
+2008-02-18 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Fix compiler warning about using the wrong datatype when calling
- getgrouplist(2).
+ * 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-01-04 14:22 castaglia
+2008-02-18 castaglia <castaglia>
- * src/dirtree.c:
- Use socklen_t, not int, for getsockopt(2) calls.
+ * tests/Makefile.in, tests/feat.c, tests/tests.c, tests/tests.h: Add
+ unit tests for the Feat API.
-2008-01-02 20:23 castaglia
+2008-02-18 castaglia <castaglia>
- * configure:
- Updated configure.
+ * 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-01-02 20:21 castaglia
+2008-02-18 castaglia <castaglia>
- * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c:
- Bug#1896 - Check AIX account status.
+ * tests/Makefile.in, tests/tests.c, tests/tests.h, tests/var.c: Add
+ unit tests for the Var API.
-2008-01-02 19:49 castaglia
+2008-02-18 castaglia <castaglia>
- * NEWS, contrib/mod_ratio.c:
- Bug#1973 - mod_ratio uses the too-small int datatype for tracking
- bytes.
+ * 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-01-02 18:52 castaglia
+2008-02-17 castaglia <castaglia>
- * NEWS, contrib/mod_ratio.c:
- Bug#1771 - mod_ratio compile warnings.
+ * tests/tests.c: Slightly more elegant way of iterating over all of
+ the testsuites, without needing to use strcmp().
- Add better formatting, error checking, function definition, etc.
+2008-02-17 castaglia <castaglia>
-2008-01-02 18:13 castaglia
+ * tests/Makefile.in, tests/table.c, tests/tests.c, tests/tests.h:
+ Add unit tests for the Table API.
- * utils/: ftpcount.c, ftpwho.c, misc.c, scoreboard.c, 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-02-17 castaglia <castaglia>
-2008-01-02 18:00 castaglia
+ * src/table.c: Fix a few minor bugs related to checking for improper
+ arguments.
- * modules/mod_facts.c:
- Fix printf(3) format warning in mod_facts.
+2008-02-17 castaglia <castaglia>
-2008-01-02 17:39 castaglia
+ * doc/howto/Testing.html: Start of a doc that will describe
+ ProFTPD's burgeoning testsuite, and how to use it.
- * 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-02-17 castaglia <castaglia>
-2008-01-02 15:17 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.
- * RELEASE_NOTES:
- Mention the new TransferPriority directive.
+2008-02-17 castaglia <castaglia>
-2008-01-02 15:16 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.
- * NEWS, modules/mod_xfer.c:
- Bug#2731 - Add ability to set process priority for file
- transfers.
+2008-02-17 castaglia <castaglia>
-2008-01-02 15:07 castaglia
+ * tests/Makefile.in, tests/stubs.c, tests/tests.c, tests/tests.h,
+ tests/timers.c: Adding unit tests for the Timers API.
- * modules/mod_xfer.c:
- Need to add the name of the timer added, as per the changed Timer
- API.
+2008-02-17 castaglia <castaglia>
-2008-01-02 14:47 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.
- * configure:
- Updated configure.
+2008-02-17 castaglia <castaglia>
-2008-01-02 14:44 castaglia
+ * tests/Makefile.in, tests/sets.c, tests/tests.c, tests/tests.h:
+ Adding unit tests for the Sets API.
- * configure.in:
- Missing quotation mark broke the configure script.
+2008-02-17 castaglia <castaglia>
-2008-01-02 14:43 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.
- * 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-02-16 castaglia <castaglia>
-2008-01-02 10:31 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.
- * NEWS, contrib/mod_sql.c:
- Bug#2889 - Update SQLLog so that RNTO stores the path when using
- the %F variable.
+2008-02-16 castaglia <castaglia>
-2008-01-02 09:58 castaglia
+ * tests/str.c: Fill in the unit test for the sstrncpy() function.
- * NEWS, modules/mod_auth.c, src/auth.c:
- Bug#2997 - Uploading files with "~" causes harmless but annoying
- log message.
+2008-02-16 castaglia <castaglia>
-2008-01-01 09:31 jwm
+ * 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.
- * contrib/mod_ldap.c: happy new year
+2008-02-16 castaglia <castaglia>
-2008-01-01 09:29 jwm
+ * doc/contrib/mod_quotatab.html: Properly close the line item.
- * 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.
+2008-02-16 castaglia <castaglia>
-2007-12-31 14:47 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.
- * 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.
+2008-02-15 castaglia <castaglia>
-2007-12-31 14:33 castaglia
+ * doc/howto/CreateHome.html: Start a FAQ for CreateHome questions.
- * 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.
+2008-02-14 castaglia <castaglia>
-2007-12-31 13:45 castaglia
+ * doc/howto/CreateHome.html: List the uid and gid parameters of
+ CreateHome, and talk about them a little.
- * RELEASE_NOTES, doc/modules/mod_auth_pam.html:
- Updated documentation.
+2008-02-14 castaglia <castaglia>
-2007-12-31 13:37 castaglia
+ * doc/howto/TLS.html: Add TLS FAQ on removing cert key passphrases.
- * NEWS, modules/mod_auth_pam.c:
- Bug#3014 - Optionally set PAM_TTY item when using PAM.
+2008-02-14 castaglia <castaglia>
-2007-12-31 11:39 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.
- * doc/rfc/rfc2640.txt:
- Add RFC2640 to the docs collection.
+2008-02-13 castaglia <castaglia>
-2007-12-31 11:34 castaglia
+ * tests/.cvsignore: Ignore generated files.
- * configure:
- Updated configure.
+2008-02-13 castaglia <castaglia>
-2007-12-31 11:31 castaglia
+ * configure: Updated configure.
- * 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.
+2008-02-13 castaglia <castaglia>
-2007-12-31 11:30 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.
- * 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.
+2008-02-13 castaglia <castaglia>
-2007-12-31 11:19 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.
- * NEWS, modules/mod_xfer.c:
- Bug#3003 - Fallback to normal transmission in case of sendfile
- EOVERFLOW error missing.
+2008-02-13 castaglia <castaglia>
-2007-12-31 11:13 castaglia
+ * tests/str.c: Fill in the unit tests for more of the string
+ manipulation functions.
- * RELEASE_NOTES:
- Updating the release notes.
+2008-02-13 castaglia <castaglia>
-2007-12-31 11:12 castaglia
+ * src/str.c: Fix up the indentation/style in sreplace(). Guard
+ against null/bad arguments.
- * NEWS, modules/mod_auth.c:
- Bug#2894 - Mark the AnonymousGroup directive as deprecated, to be
- removed in a future release.
+2008-02-13 castaglia <castaglia>
-2007-12-31 10:56 castaglia
+ * tests/Makefile.in, tests/env.c, tests/tests.c, tests/tests.h: Add
+ unit tests for the Env API.
- * doc/modules/mod_facts.html:
- Adding documentation (though brief) for the new mod_facts module.
+2008-02-13 castaglia <castaglia>
-2007-12-31 10:47 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).
- * doc/rfc/: draft-ietf-ftpext-mlst-15.txt,
- draft-somers-ftp-mfxx-03.txt, rfc3659.txt:
- Adding RFC3659 (which supercedes an Internet Draft on MLST), and
- adding an Internet Draft defining the MFF and MFMT commands.
+2008-02-13 castaglia <castaglia>
-2007-12-31 10:33 castaglia
+ * tests/Makefile.in, tests/array.c, tests/tests.c, tests/tests.h:
+ Adding unit tests for the Array API.
- * configure:
- Updated configure.
+2008-02-13 castaglia <castaglia>
-2007-12-31 10:28 castaglia
+ * src/str.c: Guard against NULL arguments in sreplace().
- * 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.
+2008-02-12 castaglia <castaglia>
-2007-12-31 09:39 castaglia
+ * configure: Updated configure.
- * NEWS, modules/mod_auth.c:
- Bug#3019 - DisplayLogin in <Anonymous> section not displayed
- properly.
+2008-02-12 castaglia <castaglia>
-2007-12-22 13:17 castaglia
+ * configure.in: Try to describe the --enable-devel option such that
+ packagers won't use it.
- * modules/mod_lang.c: Pedantic correction of indentation, so that
- it is consistent with the style of the rest of the file.
+2008-02-11 castaglia <castaglia>
-2007-12-22 11:26 castaglia
+ * configure: Updated configure.
- * 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.
+2008-02-11 castaglia <castaglia>
-2007-12-17 19:26 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.
- * NEWS, contrib/mod_tls.c:
- Bug#3013 - "TLSOptions AllowPerUser" not working as expected.
+2008-02-11 castaglia <castaglia>
-2007-12-17 18:15 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.
- * modules/mod_site.c:
- Typo.
+2008-02-11 castaglia <castaglia>
-2007-12-17 18:09 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.
- * modules/mod_auth.c:
- Make sure to localise strings sent via pr_response_send().
+2008-02-10 castaglia <castaglia>
-2007-12-15 13:47 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.
- * 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.
+2008-02-10 castaglia <castaglia>
-2007-12-12 13:23 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>
- * NEWS, contrib/mod_site_misc.c, doc/contrib/mod_site_misc.html:
- Bug#3012 - SITE UTIME should support YYYYMMDDhhmmss format.
+ * 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.
-2007-12-10 13:46 castaglia
+2008-01-30 castaglia <castaglia>
- * contrib/mod_tls.c:
- Bug#3011: "TLSRequired !data" configuration does not allow PROT
- C.
+ * 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.
- If the TLSRequired directive policy does not explicitly require
- SSL/TLS protection on the data channel, then allow any PROT C
- requests from clients.
+2008-01-28 castaglia <castaglia>
-2007-11-15 19:16 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.
- * NEWS, src/data.c:
- Bug#3001 - Incomplete downloads not logged properly in
- TransferLog if sendfile is used.
+2008-01-25 castaglia <castaglia>
-2007-11-15 18:15 castaglia
+ * contrib/mod_wrap.c: Quell some compiler warnings in mod_wrap.
- * 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.
+2008-01-25 castaglia <castaglia>
-2007-11-15 09:33 castaglia
+ * src/proctitle.c: Silence a compiler warning about unused variables
+ when PR_DEVEL_STACK_TRACE is defined.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3006 - 'ScanOnLogin' QuotaOption may try to update a
- nonexistent tally record.
+2008-01-24 castaglia <castaglia>
-2007-11-15 09:21 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.
- * NEWS, contrib/mod_quotatab.c:
- Bug#3004 - 'ScanOnLogin' QuotaOption does not honor
- QuotaDirectoryTally directive.
+2008-01-23 castaglia <castaglia>
-2007-11-15 08:38 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.
- * src/main.c:
- Use REG_RIP for 64-bit machines, rather than REG_EIP, if the
- 'stacktrace' --enable-devel configure option is used.
+2008-01-23 castaglia <castaglia>
-2007-11-15 07:15 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.)
- * NEWS, src/data.c, src/netio.c:
- Bug#3005 - OOB abort closes the control connection.
+2008-01-21 castaglia <castaglia>
-2007-10-26 09:02 castaglia
+ * src/main.c: Remove some tabs; no functional change.
- * 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.
+2008-01-21 castaglia <castaglia>
-2007-10-24 22:18 castaglia
+ * RELEASE_NOTES: Mention the inclusion of IPv6 support in the
+ default build.
- * modules/Makefile.in: Be sure to clean up any .a archive files
- around as well.
+2008-01-21 castaglia <castaglia>
-2007-10-22 11:09 castaglia
+ * README.IPv6: Updated the IPv6 README.
- * 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.
+2008-01-21 castaglia <castaglia>
-2007-10-18 09:22 castaglia
+ * configure: Updated configure.
- * NEWS:
- Typo.
+2008-01-21 castaglia <castaglia>
-2007-10-17 08:39 castaglia
+ * NEWS, configure.in, sample-configurations/basic.conf: Bug#2577 -
+ IPv6 support should be enabled by default.
- * NEWS, contrib/mod_tls.c:
- Bug#2996 - Requirement for same OpenSSL header, library version
- in mod_tls too restrictive.
+2008-01-18 castaglia <castaglia>
-2007-10-16 09:29 castaglia
+ * NEWS, contrib/mod_rewrite.c: Bug#3034 - Rewritten command
+ parameters need to be set in multiple places.
- * RELEASE_NOTES:
- Add more release notes fragments, to be filled in more detail
- later.
+2008-01-18 castaglia <castaglia>
-2007-10-16 09:27 castaglia
+ * contrib/mod_ctrls_admin.c: Silence compiler warning about unused
+ variable.
- * NEWS, modules/mod_core.c:
- Bug#2995 - The %f LogFormat variable expanded to same file for
- RNFR and RNTO.
+2008-01-18 castaglia <castaglia>
-2007-10-15 23:12 castaglia
+ * NEWS, include/netacl.h, src/class.c, src/netacl.c: Bug#3033 -
+ Class rules not honoring '!' negation character.
- * src/main.c:
- Add some missing (albeit sometimes unnecessary) 'break'
- statements.
+2008-01-18 castaglia <castaglia>
-2007-10-15 23:07 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.
- * src/main.c:
- Remove crufty unused ElectricFence code.
+2008-01-17 castaglia <castaglia>
-2007-10-15 11:16 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.
- * configure:
- Updated configure.
+2008-01-17 castaglia <castaglia>
-2007-10-15 11:11 castaglia
+ * NEWS, src/netaddr.c: Bug#3031 - IPv4-mapped IPv6 connections not
+ matched properly against IPv4 glob ACLs.
- * 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).
+2008-01-16 castaglia <castaglia>
-2007-10-15 10:53 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.
- * NEWS, modules/mod_log.c:
- Bug#2992 - The %f LogFormat variable expanded improperly to "-"
- for SITE CHMOD.
+2008-01-16 castaglia <castaglia>
-2007-10-15 10:30 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)
- * configure:
- Updated configure.
+2008-01-15 castaglia <castaglia>
-2007-10-15 10:27 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).
- * NEWS, acconfig.h, config.h.in, configure.in:
- Bug#2993 - Unable to compile 1.3.1 on Debian unstable/amd64.
+2008-01-15 castaglia <castaglia>
-2007-10-15 09:51 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.
- * NEWS, RELEASE_NOTES, include/modules.h, src/main.c,
- src/modules.c:
- Bug#2937 - Should list modules (with versions) for modules loaded
- as DSOs.
+2008-01-15 castaglia <castaglia>
-2007-10-15 09:23 castaglia
+ * contrib/mod_ratio.c: Silence some compiler warnings about
+ uninitialized variables.
- * doc/howto/DSO.html:
- Update the DSO doc with better instructions, after having run
- through them myself.
+2008-01-15 castaglia <castaglia>
-2007-10-14 15:59 castaglia
+ * src/data.c: Found a few more places where text needs to be marked
+ for localisation.
- * 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.
+2008-01-14 castaglia <castaglia>
-2007-10-13 18:10 castaglia
+ * doc/contrib/mod_tls.html: Update TLSLog description to note
+ requirement about parent directory permissions.
- * contrib/mod_tls.c: Explicitly cast one of the tls_log() arguments
- to an unsigned int, to silence compilers warning of mismatched
- printf arguments.
+2008-01-14 castaglia <castaglia>
-2007-10-13 17:48 castaglia
+ * include/ftp.h, modules/mod_facts.c: Add definitions of the MLSD,
+ MLST commands to ftp.h.
- * 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.
+2008-01-12 castaglia <castaglia>
-2007-10-12 22:16 castaglia
+ * NEWS, contrib/mod_rewrite.c: Bug#3027 - Unmatched backreferences
+ are not handled properly in RewriteRules.
- * 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.
+2008-01-12 castaglia <castaglia>
-2007-10-12 20:08 castaglia
+ * contrib/mod_rewrite.c: Additional changes needed for the full fix
+ for Bug #3026.
- * configure:
- Update configure.
+2008-01-12 castaglia <castaglia>
-2007-10-12 20:05 castaglia
+ * configure: Updated configure.
- * 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.
+2008-01-12 castaglia <castaglia>
-2007-10-12 18:47 castaglia
+ * configure.in: Copy-n-paste error in configure.in added erroneous
+ line break.
- * 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.
+2008-01-12 castaglia <castaglia>
-2007-10-12 13:40 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.
- * NEWS, contrib/mod_radius.c, include/auth.h, src/auth.c:
- Bug#2989 - Unable to authenticate users if RadiusUserInfo is not
- configured.
+2008-01-12 castaglia <castaglia>
-2007-10-12 09:05 castaglia
+ * configure: Updated configure.
- * contrib/mod_tls.c:
- Style cleanup; no functional changes.
+2008-01-12 castaglia <castaglia>
-2007-10-12 09:01 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>.
- * NEWS, contrib/mod_tls.c:
- Bug#2990 - TLSCryptoDevice does not work.
+2008-01-11 castaglia <castaglia>
-2007-10-11 11:08 castaglia
+ * NEWS, contrib/mod_rewrite.c: Bug#3026 - RewriteCondition does not
+ negate -d -f -s tests.
- * doc/howto/ConfigurationTricks.html:
- Add note about how different PassivePorts are not needed for
- different proftpd instances.
+2008-01-11 castaglia <castaglia>
-2007-10-11 10:07 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.
- * RELEASE_NOTES:
- Mention mod_unique_id in the release notes.
+2008-01-10 castaglia <castaglia>
-2007-10-11 10:06 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.
- * 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.
+2008-01-10 castaglia <castaglia>
-2007-10-11 10:02 castaglia
+ * contrib/mod_sql.c: Remove the mod_sql code which used to support
+ the (deprecated and removed) SQLHomedirOnDemand feature.
- * NEWS, contrib/mod_unique_id.c, doc/contrib/index.html,
- doc/contrib/mod_unique_id.html:
- Added the mod_unique_id contrib module.
+2008-01-10 castaglia <castaglia>
-2007-10-11 09:58 castaglia
+ * configure: Updated configure.
- * contrib/mod_dynmasq.c:
- Use the PR_ macro namespace.
+2008-01-10 castaglia <castaglia>
-2007-10-11 09:47 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.
- * contrib/mod_tls.c:
- Had checking for <Limit> on PROT command in the wrong place.
- Oops.
+2008-01-09 castaglia <castaglia>
-2007-10-11 09:45 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.
- * RELEASE_NOTES, doc/contrib/mod_tls.html:
- Document the new TLSRequired policy configurations.
+2008-01-09 castaglia <castaglia>
-2007-10-11 09:39 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.)
- * NEWS, contrib/mod_tls.c:
- Bug#2968 - Ability to allow protection on control channel, but
- reject protection on data channel.
+2008-01-09 castaglia <castaglia>
-2007-10-11 09:32 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#3025 - Using %b in a SQLNamedQuery
+ does not properly log the file size for DELE.
- * RELEASE_NOTES:
- Start of a new release notes doc for the 1.3.2 series.
+2008-01-09 castaglia <castaglia>
-2007-10-11 09:29 castaglia
+ * contrib/mod_sql_odbc.c: Removed "IMHO" from comment describing
+ Oracle library bug; it's been confirmed by Oracle.
- * doc/contrib/index.html:
- The mod_ban module was not in the contrib index list. Oops.
+2008-01-09 castaglia <castaglia>
-2007-10-11 09:28 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.
- * doc/contrib/mod_dynmasq.html:
- Updating the mod_dynmasq docs for their new home.
+2008-01-09 castaglia <castaglia>
-2007-10-11 09:26 castaglia
+ * modules/mod_core.c: Explicit cast to avoid compiler warning.
- * NEWS, contrib/mod_dynmasq.c, doc/contrib/index.html,
- doc/contrib/mod_dynmasq.html:
- Adding the mod_dynmasq module to the source distribution.
+2008-01-08 castaglia <castaglia>
-2007-10-11 09:23 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).
- * contrib/: INSTALL.mod_wrap, README.mod_wrap:
- Removing obsoleted documentation; this documentation is now
- available in doc/contrib/mod_wrap.html.
+2008-01-08 castaglia <castaglia>
-2007-10-11 09:21 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.
- * doc/howto/: ConfigurationTricks.html, index.html:
- Adding ConfigurationTricks doc to source distribution.
+2008-01-08 castaglia <castaglia>
-2007-10-10 19:37 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.
- * src/ctrls.c:
- Use "credentials" consistently, not the lazy "creds", in log
- messages.
+2008-01-08 castaglia <castaglia>
-2007-10-10 19:35 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.
- * configure:
- Updating configure.
+2008-01-08 castaglia <castaglia>
-2007-10-10 19:31 castaglia
+ * README.modules, RELEASE_NOTES: Mention the new database backend
+ modules: mod_sql_odbc and mod_sql_sqlite.
- * 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.
+2008-01-08 castaglia <castaglia>
-2007-10-10 10:13 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.
- * 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.
+2008-01-08 castaglia <castaglia>
-2007-10-09 20:56 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.
- * 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).
+2008-01-08 castaglia <castaglia>
-2007-10-09 20:44 castaglia
+ * NEWS, contrib/mod_sql_odbc.c, doc/contrib/mod_sql_odbc.html: Add
+ the mod_sql_odbc module to the contrib area.
- * 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.
+2008-01-08 castaglia <castaglia>
-2007-10-09 20:38 castaglia
+ * configure: Updated configure.
- * 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.
+2008-01-08 castaglia <castaglia>
-2007-10-09 19:32 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).
- * 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.
+2008-01-08 castaglia <castaglia>
-2007-10-09 14:56 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.
- * 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.
+2008-01-08 castaglia <castaglia>
-2007-10-09 14:54 castaglia
+ * NEWS, contrib/mod_sql_sqlite.c, doc/contrib/mod_sql_sqlite.html:
+ Add the mod_sql_sqlite module to the contrib area.
- * src/netaddr.c:
- Add trace logging for when comparing netaddrs yields no match,
- for completeness.
+2008-01-08 castaglia <castaglia>
-2007-10-09 10:30 castaglia
+ * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Typo.
- * NEWS, modules/mod_xfer.c:
- Bug#2982 - Support limit on number of simultaneous file transfers
- from one client.
+2008-01-08 castaglia <castaglia>
-2007-10-09 10:24 castaglia
+ * configure: Updated configure.
- * NEWS, contrib/mod_wrap2_file.c:
- Bug#2988 - mod_wrap2_file ignores "ALL" keyword.
+2008-01-08 castaglia <castaglia>
-2007-10-08 11:47 castaglia
+ * configure.in: Decided I do not need the leading '$' character in
+ the configure invocation string, for I am capricious that way.
- * NEWS, src/auth.c:
- Bug#2986 - Authoritative PAM is not honored.
+2008-01-08 castaglia <castaglia>
-2007-10-08 11:22 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.
- * NEWS, contrib/mod_ban.c:
- Bug#2987 - Verbose ban information (i.e. 'ftpdctl ban info -v')
- not working on FreeBSD.
+2008-01-07 castaglia <castaglia>
-2007-10-05 11:36 castaglia
+ * configure: Update configure.
- * doc/contrib/mod_ban.html:
- Document the new ClientConnectRate BanOnEvent rule.
+2008-01-07 castaglia <castaglia>
-2007-10-05 11:33 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.
- * NEWS, contrib/mod_ban.c:
- Bug#2979 - Ability to ban clients which connect too often.
+2008-01-07 castaglia <castaglia>
-2007-10-05 10:33 castaglia
+ * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c:
+ Bug#3022 - Timed SQL connections don't reconnect to database.
- * modules/mod_core.c:
- Removing support for the deprecated DisplayFirstChdir directive;
- it has been replaced with the DisplayChdir directive.
+2008-01-05 castaglia <castaglia>
-2007-10-05 10:25 castaglia
+ * README.modules: Update README.modules to mention the new modules.
- * contrib/mod_sql.c:
- Removing deprecated SQLHomedirOnDemand directive; it has been
- superceded by the CreateHome directive.
+2008-01-05 castaglia <castaglia>
-2007-10-05 10:22 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.
- * modules/mod_xfer.c:
- Removing support for the deprecated HiddenStor directive; it has
- been superceded by the HiddenStores directive.
+2008-01-05 castaglia <castaglia>
-2007-10-05 10:13 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.
- * doc/contrib/mod_ctrls_admin.html:
- Document the new 'dns clear cache' ftpdctl command.
+2008-01-05 castaglia <castaglia>
-2007-10-05 10:08 castaglia
+ * contrib/mod_sql.c: Remove the unused add_virtualbool() function.
- * 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.
+2008-01-05 castaglia <castaglia>
-2007-10-05 10:04 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.
- * src/auth.c:
- Forgot semicolon.
+2008-01-05 castaglia <castaglia>
-2007-10-05 10:00 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.
- * NEWS, include/auth.h, src/auth.c, src/table.c:
- Bug#2984 - mod_auth_file uid2name() does not cache results
- causing slow LIST response.
+2008-01-05 castaglia <castaglia>
-2007-10-05 09:57 castaglia
+ * src/xferlog.c: Forgot to check in the changes for this file,
+ relating to Bug#2453. Without these, the build fails.
- * configure:
- Updating configure.
+2008-01-05 castaglia <castaglia>
-2007-10-05 09:55 castaglia
+ * contrib/mod_ban.c, contrib/mod_wrap.c, modules/mod_auth.c: Fix a
+ few more places where text needs to be localised.
- * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c:
- Bug#2983 - Use getgrouplist(3) for group lookup, if available.
+2008-01-05 castaglia <castaglia>
-2007-10-05 09:48 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#3023 - Allow uploading to /dev/null.
- * NEWS, modules/mod_xfer.c:
- Bug#2969 - Allow APPE after REST.
+2008-01-05 castaglia <castaglia>
-2007-10-05 09:44 castaglia
+ * configure: Updated configure.
- * doc/contrib/mod_tls.html:
- Document the new EnableDiags TLSOption.
+2008-01-05 castaglia <castaglia>
-2007-10-05 09:42 castaglia
+ * RELEASE_NOTES, doc/modules/mod_ident.html: Update documentation
+ for the new mod_ident module.
- * NEWS, contrib/mod_tls.c:
- Bug#2978 - Support more verbose OpenSSL diagnostic logging.
+2008-01-05 castaglia <castaglia>
-2007-10-05 09:40 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.
- * include/version.h:
- Start of a new release cycle (1.3.2).
+2008-01-05 castaglia <castaglia>
-2007-10-05 08:47 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.
- * NEWS:
- Forgot to update NEWS with the release time.
+2008-01-04 castaglia <castaglia>
-2007-10-05 08:40 castaglia
+ * configure: Updated configure. (Upgraded to autoconf-2.61 as
+ well.)
- * ChangeLog:
- Updating the ChangeLog.
+2008-01-04 castaglia <castaglia>
-2007-10-05 08:38 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.
- * doc/: Configuration.html, Configuration.pdf:
- Updating the HTML page with the configuration directives. Also
- added a PDF copy of the same information (thanks Sven!).
+2008-01-04 castaglia <castaglia>
-2007-10-05 08:15 castaglia
+ * modules/mod_auth_unix.c: Fix compiler warning about using the
+ wrong datatype when calling getgrouplist(2).
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Updating version for 1.3.1-stable.
+2008-01-04 castaglia <castaglia>
-2007-10-04 10:04 castaglia
+ * src/dirtree.c: Use socklen_t, not int, for getsockopt(2) calls.
- * contrib/mod_tls.c:
- Log a PID as an explicit unsigned int, not an implicit int.
- Quells a compiler warning about mismatched printf arguments.
+2008-01-03 castaglia <castaglia>
-2007-10-04 10:01 castaglia
+ * configure: Updated configure.
- * src/env.c:
- Quell a compiler warning about casting away the const qualifier,
- on systems which support the putenv(3) function.
+2008-01-03 castaglia <castaglia>
-2007-10-04 09:24 castaglia
+ * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#1896
+ - Check AIX account status.
- * RELEASE_NOTES:
- Updating the release notes, preparing for a release.
+2008-01-03 castaglia <castaglia>
-2007-10-03 19:25 castaglia
+ * NEWS, contrib/mod_ratio.c: Bug#1973 - mod_ratio uses the too-small
+ int datatype for tracking bytes.
- * 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.
+2008-01-03 castaglia <castaglia>
-2007-10-03 18:46 castaglia
+ * NEWS, contrib/mod_ratio.c: Bug#1771 - mod_ratio compile warnings. Add better formatting, error checking, function definition, etc.
- * include/table.h:
- Correct comment in table.h.
+2008-01-03 castaglia <castaglia>
-2007-10-02 15:29 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.
- * doc/howto/TLS.html:
- Add mention of RFC 2228, and URL, to TLS doc.
+2008-01-03 castaglia <castaglia>
-2007-10-01 14:41 castaglia
+ * modules/mod_facts.c: Fix printf(3) format warning in mod_facts.
- * modules/mod_delay.c:
- Update the trace message for the other location in mod_delay
- where the DelayTable is mapped into memory.
+2008-01-03 castaglia <castaglia>
-2007-10-01 14:25 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.
- * modules/mod_delay.c:
- Log the table size, and the table fd, when attempting to map a
- DelayTable into memory.
+2008-01-02 castaglia <castaglia>
-2007-10-01 09:40 castaglia
+ * RELEASE_NOTES: Mention the new TransferPriority directive.
- * doc/modules/mod_delay.html:
- Change to using relative URLs, so that the documentation can be
- used outside of a network connection.
+2008-01-02 castaglia <castaglia>
-2007-10-01 08:14 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2731 - Add ability to set process
+ priority for file transfers.
- * doc/modules/mod_delay.html:
- Add notes about mod_delay usage to the mod_delay documentation.
+2008-01-02 castaglia <castaglia>
-2007-09-30 16:38 castaglia
+ * modules/mod_xfer.c: Need to add the name of the timer added, as
+ per the changed Timer API.
- * src/timers.c: Catch edge case where the timers list may be
- empty/null.
+2008-01-02 castaglia <castaglia>
-2007-09-30 14:05 castaglia
+ * configure: Updated configure.
- * NEWS, src/main.c: Bug#2981 - Command-line long options --ipv4 and
- --ipv6 do not work.
+2008-01-02 castaglia <castaglia>
-2007-09-27 17:53 castaglia
+ * configure.in: Missing quotation mark broke the configure script.
- * 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.:
+2008-01-02 castaglia <castaglia>
- 226 Transfer complete
- 226 Abort successful
+ * 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).
- 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.
+2008-01-02 castaglia <castaglia>
- 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.
+ * NEWS, contrib/mod_sql.c: Bug#2889 - Update SQLLog so that RNTO
+ stores the path when using the %F variable.
-2007-09-27 17:47 castaglia
+2008-01-02 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.
+ * NEWS, modules/mod_auth.c, src/auth.c: Bug#2997 - Uploading files
+ with "~" causes harmless but annoying log message.
-2007-09-27 09:13 castaglia
+2008-01-01 jwm <jwm>
- * modules/mod_xfer.c:
- Add some tracing to aborted transfers.
+ * contrib/mod_ldap.c: happy new year
-2007-09-27 09:04 castaglia
+2008-01-01 jwm <jwm>
- * src/trace.c:
- Add the 'xfer' channel to the list of default trace channels.
+ * 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-09-25 09:27 castaglia
+2007-12-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- No need to report on system call errors of "Success".
+ * 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-09-24 19:16 castaglia
+2007-12-31 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.
+ * 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-09-18 20:22 castaglia
+2007-12-31 castaglia <castaglia>
- * doc/howto/TLS.html:
- Minor formatting tweak.
+ * RELEASE_NOTES, doc/modules/mod_auth_pam.html: Updated
+ documentation.
-2007-09-18 20:14 castaglia
+2007-12-31 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add FAQ about a commonly-seen error in the TLSLog, and how using
- the NoCertRequest TLSOption may help.
+ * NEWS, modules/mod_auth_pam.c: Bug#3014 - Optionally set PAM_TTY
+ item when using PAM.
-2007-09-17 10:36 castaglia
+2007-12-31 castaglia <castaglia>
- * NEWS, modules/Makefile.in:
- Bug#2974 - Install error if multiple modules, using their own
- build script, are built as shared modules.
+ * doc/rfc/rfc2640.txt: Add RFC2640 to the docs collection.
-2007-09-14 09:08 castaglia
+2007-12-31 castaglia <castaglia>
- * modules/mod_core.c:
- When handling an EPSV command, close any existing data connection
- first. Related to Bug #2900.
+ * configure: Updated configure.
-2007-09-13 14:32 castaglia
+2007-12-31 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.
+ * 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-09-13 08:25 castaglia
+2007-12-31 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.
+ * 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.
- Patch suggested by Nigel Kukard a while ago.
+2007-12-31 castaglia <castaglia>
-2007-09-13 08:22 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#3003 - Fallback to normal
+ transmission in case of sendfile EOVERFLOW error missing.
- * 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-12-31 castaglia <castaglia>
-2007-09-13 07:57 castaglia
+ * RELEASE_NOTES: Updating the release notes.
- * modules/mod_dso.c:
- Fix compiler warning about redeclaring a variable if Controls
- support is enabled.
+2007-12-31 castaglia <castaglia>
-2007-09-12 11:08 castaglia
+ * NEWS, modules/mod_auth.c: Bug#2894 - Mark the AnonymousGroup
+ directive as deprecated, to be removed in a future release.
- * doc/howto/Vhost.html:
- Remove mention of the now-deprecated Bind directive.
+2007-12-31 castaglia <castaglia>
-2007-09-11 19:24 castaglia
+ * doc/modules/mod_facts.html: Adding documentation (though brief)
+ for the new mod_facts module.
- * 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-12-31 castaglia <castaglia>
-2007-09-11 15:58 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.
- * modules/mod_dso.c:
- Add trace logging of the succesful loading of modules/files.
+2007-12-31 castaglia <castaglia>
-2007-09-11 10:47 castaglia
+ * configure: Updated configure.
- * 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-12-31 castaglia <castaglia>
-2007-09-10 17:52 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.
- * contrib/mod_sql.c:
- Cast the off_t value of total_xfer_bytes properly, and quell
- warnings from picky compilers.
+2007-12-31 castaglia <castaglia>
-2007-09-10 17:49 castaglia
+ * NEWS, modules/mod_auth.c: Bug#3019 - DisplayLogin in <Anonymous>
+ section not displayed properly.
- * src/log.c:
- When writing to utmp/wtmp logs, we're really not concerned if we
- fail to truncate the file as requested.
+2007-12-22 castaglia <castaglia>
-2007-09-10 17:47 castaglia
+ * modules/mod_lang.c: Pedantic correction of indentation, so that it
+ is consistent with the style of the rest of the file.
- * 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-12-22 castaglia <castaglia>
-2007-09-10 17:44 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.
- * 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-12-18 castaglia <castaglia>
-2007-09-10 17:42 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#3013 - "TLSOptions AllowPerUser" not
+ working as expected.
- * modules/mod_xfer.c:
- Make sure to cast the restart_pos value (an off_t), in order to
- satisfy picky compilers.
+2007-12-18 castaglia <castaglia>
-2007-09-10 15:55 castaglia
+ * modules/mod_site.c: Typo.
- * contrib/dist/rpm/proftpd.spec:
- Fix syntax of RPM options for some modules.
+2007-12-18 castaglia <castaglia>
-2007-09-07 17:13 castaglia
+ * modules/mod_auth.c: Make sure to localise strings sent via
+ pr_response_send().
- * 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-12-15 castaglia <castaglia>
-2007-09-07 09:13 jwm
+ * 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.
- * contrib/mod_ldap.c: Fix anonymous binds when
- draft-ietf-ldapext-ldap-c-api-04 functions are used.
+2007-12-12 castaglia <castaglia>
- Submitted by: Quentin Garnier <cube at cubidou.net>
+ * NEWS, contrib/mod_site_misc.c, doc/contrib/mod_site_misc.html:
+ Bug#3012 - SITE UTIME should support YYYYMMDDhhmmss format.
-2007-09-04 14:14 castaglia
+2007-12-10 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.
+ * 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-08-29 19:00 castaglia
+2007-11-16 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.
+ * NEWS, src/data.c: Bug#3001 - Incomplete downloads not logged
+ properly in TransferLog if sendfile is used.
-2007-08-29 10:47 castaglia
+2007-11-16 castaglia <castaglia>
- * doc/howto/SQL.html:
- Added SQL FAQ about shared library loader errors.
+ * 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-08-24 08:07 castaglia
+2007-11-15 castaglia <castaglia>
- * doc/howto/Debugging.html:
- Mention using `proftpd -V' in the Debugging howto.
+ * NEWS, contrib/mod_quotatab.c: Bug#3006 - 'ScanOnLogin' QuotaOption
+ may try to update a nonexistent tally record.
-2007-08-22 07:50 castaglia
+2007-11-15 castaglia <castaglia>
- * src/: fsio.c, 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.
+ * NEWS, contrib/mod_quotatab.c: Bug#3004 - 'ScanOnLogin' QuotaOption
+ does not honor QuotaDirectoryTally directive.
-2007-08-21 19:00 jwm
+2007-11-15 castaglia <castaglia>
- * contrib/mod_ldap.c: missed version number
+ * src/main.c: Use REG_RIP for 64-bit machines, rather than REG_EIP,
+ if the 'stacktrace' --enable-devel configure option is used.
-2007-08-21 15:36 castaglia
+2007-11-15 castaglia <castaglia>
- * NEWS, lib/sstrncpy.c:
- Bug#2964 - Building RPM fails because of *snprintf trying to be
- redefined.
+ * NEWS, src/data.c, src/netio.c: Bug#3005 - OOB abort closes the
+ control connection.
-2007-08-17 14:41 jwm
+2007-10-26 castaglia <castaglia>
- * contrib/mod_ldap.c: release 2.8.17
+ * 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-08-09 15:56 castaglia
+2007-10-25 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#2963 - Use of -A option for LIST/NLST commands not cleared
- for subsequent commands.
+ * modules/Makefile.in: Be sure to clean up any .a archive files
+ around as well.
-2007-08-09 15:16 castaglia
+2007-10-22 castaglia <castaglia>
- * README.facl:
- Remove extraneous whitespace.
+ * 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-08-03 07:52 castaglia
+2007-10-18 castaglia <castaglia>
- * NEWS, contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c,
- contrib/mod_wrap2/mod_wrap2.c, contrib/mod_wrap2/mod_wrap2.h.in:
- Bug#2958 - mod_wrap2 does not handle multiple rules in access
- files.
+ * NEWS: Typo.
-2007-07-31 15:08 castaglia
+2007-10-17 castaglia <castaglia>
- * modules/mod_auth.c:
- Coding style changes; no functional change.
+ * NEWS, contrib/mod_tls.c: Bug#2996 - Requirement for same OpenSSL
+ header, library version in mod_tls too restrictive.
-2007-07-31 08:17 castaglia
+2007-10-16 castaglia <castaglia>
- * NEWS, modules/mod_delay.c:
- Bug#2955 - Undeclared identifier MAP_FAILED for mod_delay on AIX.
+ * RELEASE_NOTES: Add more release notes fragments, to be filled in
+ more detail later.
-2007-07-24 15:09 castaglia
+2007-10-16 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#2950 - Hostname with multiple IP addresses might cause
- "ai_family not supported" error if IPv6 support enabled.
+ * NEWS, modules/mod_core.c: Bug#2995 - The %f LogFormat variable
+ expanded to same file for RNFR and RNTO.
-2007-07-19 11:12 castaglia
+2007-10-16 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.
+ * src/main.c: Add some missing (albeit sometimes unnecessary)
+ 'break' statements.
-2007-07-18 09:41 castaglia
+2007-10-16 castaglia <castaglia>
- * NEWS, modules/mod_facl.c:
- Bug#2946 - Anonymous logins fail if the mod_facl module is
- enabled.
+ * src/main.c: Remove crufty unused ElectricFence code.
-2007-07-07 07:24 jwm
+2007-10-15 castaglia <castaglia>
- * 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.
+ * configure: Updated configure.
-2007-07-06 15:40 castaglia
+2007-10-15 castaglia <castaglia>
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Correct misspellings.
+ * 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-07-06 09:51 castaglia
+2007-10-15 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c:
- Bug#2944 - mod_sql_mysql fails to compile due to missing
- quotation.
+ * NEWS, modules/mod_log.c: Bug#2992 - The %f LogFormat variable
+ expanded improperly to "-" for SITE CHMOD.
-2007-07-05 08:18 castaglia
+2007-10-15 castaglia <castaglia>
- * NEWS, include/version.h:
- Reset files for 1.3.1rc4.
+ * configure: Updated configure.
-2007-07-04 12:34 castaglia
+2007-10-15 castaglia <castaglia>
- * ChangeLog:
- Updating ChangeLog.
+ * NEWS, acconfig.h, config.h.in, configure.in: Bug#2993 - Unable to
+ compile 1.3.1 on Debian unstable/amd64.
-2007-07-04 12:33 castaglia
+2007-10-15 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for 1.3.1rc3 release.
+ * 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-07-04 12:27 castaglia
+2007-10-15 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating the release notes, getting ready for a release.
+ * doc/howto/DSO.html: Update the DSO doc with better instructions,
+ after having run through them myself.
-2007-07-04 11:08 castaglia
+2007-10-14 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.
+ * 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-07-02 16:20 jwm
+2007-10-14 castaglia <castaglia>
- * 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
+ * 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-07-02 13:27 castaglia
+2007-10-14 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes.
+ * 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-07-02 11:09 castaglia
+2007-10-13 castaglia <castaglia>
- * contrib/mod_wrap2/mod_wrap2.c:
- Make sure that mod_wrap2 honors the runtime UseIPv6 configuration
- directive.
+ * 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-06-28 10:41 castaglia
+2007-10-13 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.
+ * configure: Update configure.
-2007-06-28 08:52 castaglia
+2007-10-13 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().
+ * 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-06-25 15:55 castaglia
+2007-10-13 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.
+ * 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-06-25 10:19 castaglia
+2007-10-12 castaglia <castaglia>
- * NEWS, contrib/mod_ban.c:
- Bug#2942 - BanLog directive does not accept "none" parameter.
+ * NEWS, contrib/mod_radius.c, include/auth.h, src/auth.c: Bug#2989 -
+ Unable to authenticate users if RadiusUserInfo is not configured.
-2007-06-25 08:10 castaglia
+2007-10-12 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#2939 - Anonymous restrictions apply after a failed anonymous
- login followed by a successful normal user login.
+ * contrib/mod_tls.c: Style cleanup; no functional changes.
-2007-06-18 19:04 castaglia
+2007-10-12 castaglia <castaglia>
- * NEWS:
- Fix typos.
+ * NEWS, contrib/mod_tls.c: Bug#2990 - TLSCryptoDevice does not work.
-2007-06-18 14:45 castaglia
+2007-10-11 castaglia <castaglia>
- * doc/howto/Quotas.html:
- Add a FAQ about group quota determination.
+ * doc/howto/ConfigurationTricks.html: Add note about how different
+ PassivePorts are not needed for different proftpd instances.
-2007-06-12 11:57 castaglia
+2007-10-11 castaglia <castaglia>
- * src/auth.c:
- Yet another patch, working on the PAM-related fallout from Bug
- #2922.
+ * RELEASE_NOTES: Mention mod_unique_id in the release notes.
-2007-06-12 10:41 castaglia
+2007-10-11 castaglia <castaglia>
- * modules/mod_auth_file.c:
- Remove some debug logging which inadvertently crept into
- mod_auth_file.
+ * 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-06-11 17:59 castaglia
+2007-10-11 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.
+ * NEWS, contrib/mod_unique_id.c, doc/contrib/index.html,
+ doc/contrib/mod_unique_id.html: Added the mod_unique_id contrib
+ module.
-2007-06-11 08:28 castaglia
+2007-10-11 castaglia <castaglia>
- * NEWS, contrib/mod_wrap2/mod_wrap2.c:
- Bug#2938 - mod_wrap2 does not honor WrapTables for <Anonymous>
- logins.
+ * contrib/mod_dynmasq.c: Use the PR_ macro namespace.
-2007-06-06 17:30 castaglia
+2007-10-11 castaglia <castaglia>
- * contrib/: mod_ifsession.c, mod_rewrite.c:
- Add reporting of the module version for the mod_ifsession and
- mod_rewrite modules.
+ * contrib/mod_tls.c: Had checking for <Limit> on PROT command in the
+ wrong place. Oops.
-2007-06-04 16:53 castaglia
+2007-10-11 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#2935 - DELE command doesn't check file stat result before
- logging.
+ * RELEASE_NOTES, doc/contrib/mod_tls.html: Document the new
+ TLSRequired policy configurations.
-2007-06-03 20:57 jwm
+2007-10-11 castaglia <castaglia>
- * 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.
+ * NEWS, contrib/mod_tls.c: Bug#2968 - Ability to allow protection on
+ control channel, but reject protection on data channel.
-2007-05-30 08:52 castaglia
+2007-10-11 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.
+ * RELEASE_NOTES: Start of a new release notes doc for the 1.3.2
+ series.
-2007-05-25 17:26 castaglia
+2007-10-11 castaglia <castaglia>
- * doc/howto/Quotas.html:
- Add a FAQ about the QuotaExcludeFilter directive.
+ * doc/contrib/index.html: The mod_ban module was not in the contrib
+ index list. Oops.
-2007-05-24 10:17 castaglia
+2007-10-11 castaglia <castaglia>
- * doc/howto/Tracing.html:
- No need for the quotations -- they're a bit much.
+ * doc/contrib/mod_dynmasq.html: Updating the mod_dynmasq docs for
+ their new home.
-2007-05-24 10:15 castaglia
+2007-10-11 castaglia <castaglia>
- * RELEASE_NOTES, doc/howto/Tracing.html, doc/howto/index.html:
- Adding tracing howto.
+ * NEWS, contrib/mod_dynmasq.c, doc/contrib/index.html,
+ doc/contrib/mod_dynmasq.html: Adding the mod_dynmasq module to the
+ source distribution.
-2007-05-24 08:47 castaglia
+2007-10-11 castaglia <castaglia>
- * src/help.c:
- The list of commands displayed for the HELP command was being
- truncated. Fix suggested by Richard Gray.
+ * doc/howto/ConfigurationTricks.html, doc/howto/index.html: Adding
+ ConfigurationTricks doc to source distribution.
-2007-05-23 08:25 castaglia
+2007-10-11 castaglia <castaglia>
- * README.PAM:
- Update the PAM readme with notes for Linux, per Bug#2907.
+ * src/ctrls.c: Use "credentials" consistently, not the lazy "creds",
+ in log messages.
-2007-05-22 14:21 castaglia
+2007-10-11 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.
+ * configure: Updating configure.
-2007-05-22 14:01 castaglia
+2007-10-11 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-05-22 13:54 castaglia
+2007-10-10 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.
+ * 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-05-22 10:45 castaglia
+2007-10-10 castaglia <castaglia>
- * include/options.h:
- Minor style nit. No functional change.
+ * 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-05-21 09:10 castaglia
+2007-10-10 castaglia <castaglia>
- * src/inet.c:
- Use tracing to log if there was a problem using getsockopt() to
- get the IPV6_V6ONLY option.
+ * 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-05-21 09:04 castaglia
+2007-10-10 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#2932 - Syslog contains "error setting IPV6_V6ONLY: Protocol
- not available".
+ * 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-05-21 08:30 castaglia
+2007-10-10 castaglia <castaglia>
- * doc/howto/Directory.html:
- Include RNTO in the list of FTP commands affected by trailing
- "/*" suffixes in <Directory> lines.
+ * 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-05-21 08:19 castaglia
+2007-10-09 castaglia <castaglia>
- * src/auth.c:
- Additional patch for Bug#2922, to check for and use mod_auth_pam
- for authentication, if present (and usable).
+ * 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-05-21 07:39 castaglia
+2007-10-09 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#2890 - SystemLog permission errors on SIGHUP when mod_tls is
- enabled.
+ * src/netaddr.c: Add trace logging for when comparing netaddrs
+ yields no match, for completeness.
-2007-05-18 18:51 castaglia
+2007-10-09 castaglia <castaglia>
- * modules/mod_facl.c:
- Use the event handler defined for the "core.module-unload" event,
- when compiled as a DSO module.
+ * NEWS, modules/mod_xfer.c: Bug#2982 - Support limit on number of
+ simultaneous file transfers from one client.
-2007-05-16 08:25 castaglia
+2007-10-09 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.
+ * NEWS, contrib/mod_wrap2_file.c: Bug#2988 - mod_wrap2_file ignores
+ "ALL" keyword.
-2007-05-15 10:35 castaglia
+2007-10-08 castaglia <castaglia>
- * src/netio.c:
- More work towards Bug#2920. Hopefully this will be the last of
- that particular issue.
+ * NEWS, src/auth.c: Bug#2986 - Authoritative PAM is not honored.
-2007-05-14 19:23 castaglia
+2007-10-08 castaglia <castaglia>
- * modules/mod_xfer.c:
- Short-circuit out of xfer_rate_throttle() early, if the transfer
- has already been aborted.
+ * NEWS, contrib/mod_ban.c: Bug#2987 - Verbose ban information (i.e.
+ 'ftpdctl ban info -v') not working on FreeBSD.
-2007-05-14 19:11 castaglia
+2007-10-05 castaglia <castaglia>
- * doc/howto/Timestamps.html:
- Adjust link to mod_site_misc docs to use the local copy.
+ * doc/contrib/mod_ban.html: Document the new ClientConnectRate
+ BanOnEvent rule.
-2007-05-14 19:08 castaglia
+2007-10-05 castaglia <castaglia>
- * doc/howto/Timestamps.html:
- Start adding a FAQ section about timezones and timestamps.
+ * NEWS, contrib/mod_ban.c: Bug#2979 - Ability to ban clients which
+ connect too often.
-2007-05-14 17:41 castaglia
+2007-10-05 castaglia <castaglia>
- * modules/mod_xfer.c, src/data.c:
- More checks of XFER_ABORTED, in pursuit of a solution for
- Bug#2920.
+ * modules/mod_core.c: Removing support for the deprecated
+ DisplayFirstChdir directive; it has been replaced with the
+ DisplayChdir directive.
-2007-05-14 14:34 castaglia
+2007-10-05 castaglia <castaglia>
- * modules/mod_xfer.c:
- Attempt to handle aborted transfers that were in the midst of
- being throttled.
+ * contrib/mod_sql.c: Removing deprecated SQLHomedirOnDemand
+ directive; it has been superceded by the CreateHome directive.
-2007-05-14 14:31 castaglia
+2007-10-05 castaglia <castaglia>
- * modules/mod_xfer.c:
- Do not block SIGURG (used to abort transfers) when handling
- throttled transfers.
+ * modules/mod_xfer.c: Removing support for the deprecated HiddenStor
+ directive; it has been superceded by the HiddenStores directive.
-2007-05-10 15:47 castaglia
+2007-10-05 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.
+ * doc/contrib/mod_ctrls_admin.html: Document the new 'dns clear
+ cache' ftpdctl command.
-2007-05-10 14:55 castaglia
+2007-10-05 castaglia <castaglia>
- * src/: inet.c, 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.
+ * 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.
- Came out of investigating Bug#2920.
+2007-10-05 castaglia <castaglia>
-2007-05-10 14:49 castaglia
+ * src/auth.c: Forgot semicolon.
- * src/main.c:
- Add tracing of received FTP commands.
+2007-10-05 castaglia <castaglia>
-2007-05-09 10:15 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.
- * contrib/: mod_sql_mysql.c, 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-10-05 castaglia <castaglia>
-2007-05-07 08:35 castaglia
+ * configure: Updating configure.
- * NEWS, modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c:
+2007-10-05 castaglia <castaglia>
- Bug#2864 - DisplayLogin should work regardless of chroot. This
- feature includes DisplayQuit and DisplayTransferFiles as well.
+ * NEWS, config.h.in, configure.in, modules/mod_auth_unix.c: Bug#2983
+ - Use getgrouplist(3) for group lookup, if available.
- 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-10-05 castaglia <castaglia>
-2007-05-04 10:10 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2969 - Allow APPE after REST.
- * NEWS, modules/mod_ls.c:
- Bug#2921 - NLST fails if using POSIX ACLs.
+2007-10-05 castaglia <castaglia>
-2007-05-04 10:05 castaglia
+ * doc/contrib/mod_tls.html: Document the new EnableDiags TLSOption.
- * 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.
+2007-10-05 castaglia <castaglia>
- Hopefully this clears up some of the issues for Bug #2661.
+ * NEWS, contrib/mod_tls.c: Bug#2978 - Support more verbose OpenSSL
+ diagnostic logging.
-2007-04-30 10:47 castaglia
+2007-10-05 castaglia <castaglia>
- * modules/mod_facl.c:
- Fix the initialization of mod_facl's configuration directives.
- Oops.
+ * include/version.h: Start of a new release cycle (1.3.2).
-2007-04-24 09:12 castaglia
+2007-10-05 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).
+ * NEWS: Forgot to update NEWS with the release time.
-2007-04-18 08:31 castaglia
+2007-10-05 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).
+ * ChangeLog: Updating the ChangeLog.
-2007-04-17 14:33 castaglia
+2007-10-05 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.
+ * doc/Configuration.html: Updating the HTML page with the
+ configuration directives. Also added a PDF copy of the same
+ information (thanks Sven!).
-2007-04-17 14:03 castaglia
+2007-10-05 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.
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Updating version
+ for 1.3.1-stable.
-2007-04-15 20:07 castaglia
+2007-10-04 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.
+ * 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-04-02 15:22 castaglia
+2007-10-04 castaglia <castaglia>
- * src/inet.c:
- Allow data transfers on low-numbered sockets to work on SCO Unix.
+ * src/env.c: Quell a compiler warning about casting away the const
+ qualifier, on systems which support the putenv(3) function.
-2007-04-02 09:32 castaglia
+2007-10-04 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.
+ * RELEASE_NOTES: Updating the release notes, preparing for a
+ release.
-2007-03-27 20:49 castaglia
+2007-10-04 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.
+ * 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-03-27 20:33 castaglia
+2007-10-04 castaglia <castaglia>
- * src/parser.c:
- Tag the temporary pool right after its creation, not after it has
- been used.
+ * include/table.h: Correct comment in table.h.
-2007-03-27 20:24 castaglia
+2007-10-02 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2913 - TYPE command does not clear ASCII flag from LIST/NLST
- commands.
+ * doc/howto/TLS.html: Add mention of RFC 2228, and URL, to TLS doc.
-2007-03-27 19:58 castaglia
+2007-10-01 castaglia <castaglia>
- * contrib/mod_rewrite.c:
- Updating coding style in a few places. No functional change.
+ * modules/mod_delay.c: Update the trace message for the other
+ location in mod_delay where the DelayTable is mapped into memory.
-2007-03-26 17:35 castaglia
+2007-10-01 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.
+ * modules/mod_delay.c: Log the table size, and the table fd, when
+ attempting to map a DelayTable into memory.
-2007-03-21 20:54 castaglia
+2007-10-01 castaglia <castaglia>
- * src/dirtree.c:
- Formatting tweaks, no functional change.
+ * doc/modules/mod_delay.html: Change to using relative URLs, so that
+ the documentation can be used outside of a network connection.
-2007-03-09 11:01 castaglia
+2007-10-01 castaglia <castaglia>
- * sample-configurations/: anonymous.conf, basic.conf,
- complex-virtual.conf, mod_sql.conf:
- Update the example config files to use DisplayChdir, rather than
- the deprecated DisplayFirstChdir directive.
+ * doc/modules/mod_delay.html: Add notes about mod_delay usage to the
+ mod_delay documentation.
-2007-03-09 08:20 castaglia
+2007-09-30 castaglia <castaglia>
- * modules/mod_core.c:
- Bar configurations like:
+ * src/timers.c: Catch edge case where the timers list may be
+ empty/null.
- PassivePorts 2222 2222
+2007-09-30 castaglia <castaglia>
- where the max and min port numbers are the same; it's a useless
- configuration.
+ * NEWS, src/main.c: Bug#2981 - Command-line long options --ipv4 and
+ --ipv6 do not work.
-2007-03-06 10:30 castaglia
+2007-09-28 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.
+ * 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-03-06 09:55 castaglia
+2007-09-28 castaglia <castaglia>
- * README.PAM:
- Typo.
+ * 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-03-01 08:07 castaglia
+2007-09-27 castaglia <castaglia>
- * NEWS:
- Fix typo noted by Sven.
+ * modules/mod_xfer.c: Add some tracing to aborted transfers.
-2007-02-21 15:04 jwm
+2007-09-27 castaglia <castaglia>
- * contrib/mod_ldap.c: - bump version - previous commit wrt LDAPAttr
- fetching was submitted by TJ Saunders <tj at castaglia.org>; got a
- little fresh with my editor and missed the paste
+ * src/trace.c: Add the 'xfer' channel to the list of default trace
+ channels.
-2007-02-21 15:02 jwm
+2007-09-25 castaglia <castaglia>
- * contrib/mod_ldap.c: fetch attribute redefinitions (LDAPAttr)
- before using any attribute names, such as when generating the
- default search filters
+ * contrib/mod_tls.c: No need to report on system call errors of
+ "Success".
-2007-02-21 14:58 jwm
+2007-09-25 castaglia <castaglia>
- * contrib/mod_ldap.c: wordwrap, error message tweak
+ * 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-02-20 14:01 castaglia
+2007-09-19 castaglia <castaglia>
- * doc/contrib/: mod_quotatab_radius.html, mod_radius.html:
- Fix the documentation for the RadiusQuotaInfo.
+ * doc/howto/TLS.html: Minor formatting tweak.
-2007-02-20 09:07 castaglia
+2007-09-19 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#2906 - RewriteCondition backreferences not properly
- substituted.
+ * doc/howto/TLS.html: Add FAQ about a commonly-seen error in the
+ TLSLog, and how using the NoCertRequest TLSOption may help.
-2007-02-19 20:46 castaglia
+2007-09-17 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.
+ * NEWS, modules/Makefile.in: Bug#2974 - Install error if multiple
+ modules, using their own build script, are built as shared modules.
-2007-02-19 20:39 castaglia
+2007-09-14 castaglia <castaglia>
- * contrib/mod_quotatab_radius.c: Need to include mod_quotatab.h,
- which includes the ProFTPD headers, before doing the ProFTPD
- version check.
+ * modules/mod_core.c: When handling an EPSV command, close any
+ existing data connection first. Related to Bug #2900.
-2007-02-16 08:36 castaglia
+2007-09-13 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add FAQ about SSL/TLS renegotiations, and how some FTPS clients
- do not handle them well.
+ * 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-02-15 11:02 castaglia
+2007-09-13 castaglia <castaglia>
- * RELEASE_NOTES:
- Note new doc for 1.3.1rc3 release, whenever that is.
+ * 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-02-15 11:00 castaglia
+2007-09-13 castaglia <castaglia>
- * doc/howto/: Timestamps.html, index.html:
- Add a document talking about timestamps and chroots (see Bug
- #2717, Bug #2896).
+ * 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-02-15 09:56 castaglia
+2007-09-13 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/mod_dso.c: Fix compiler warning about redeclaring a
+ variable if Controls support is enabled.
-2007-02-15 09:54 castaglia
+2007-09-12 castaglia <castaglia>
- * lib/pr-syslog.c, src/support.c:
- Use the feature macro to determine if tzname is actually present
- to be guarded.
+ * doc/howto/Vhost.html: Remove mention of the now-deprecated Bind
+ directive.
-2007-02-15 09:52 castaglia
+2007-09-12 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.
+ * 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-02-15 09:48 castaglia
+2007-09-11 castaglia <castaglia>
- * config.h.in, configure.in:
- Be defensive, and add autoconf detection for the tzname,
- timezone, and daylight global variables.
+ * modules/mod_dso.c: Add trace logging of the succesful loading of
+ modules/files.
-2007-02-15 09:01 castaglia
+2007-09-11 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().
+ * 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-02-15 08:54 castaglia
+2007-09-11 castaglia <castaglia>
- * src/log.c:
- Missed a call to localtime(3) that needs to replaced with
- pr_localtime().
+ * contrib/mod_sql.c: Cast the off_t value of total_xfer_bytes
+ properly, and quell warnings from picky compilers.
-2007-02-15 08:46 castaglia
+2007-09-11 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.
+ * src/log.c: When writing to utmp/wtmp logs, we're really not
+ concerned if we fail to truncate the file as requested.
-2007-02-15 08:43 castaglia
+2007-09-11 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.
+ * 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-02-14 17:40 castaglia
+2007-09-11 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.
+ * 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-02-14 17:31 castaglia
+2007-09-11 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.
+ * modules/mod_xfer.c: Make sure to cast the restart_pos value (an
+ off_t), in order to satisfy picky compilers.
- This investigation was prompted by looking into Bug #2896.
+2007-09-10 castaglia <castaglia>
-2007-02-14 17:23 castaglia
+ * contrib/dist/rpm/proftpd.spec: Fix syntax of RPM options for some
+ modules.
- * src/: ftpdctl.c, 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-09-08 castaglia <castaglia>
-2007-02-13 08:29 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.
- * modules/mod_xfer.c:
- Forgot to log one of the reasons for not using sendfile():
- UseSendfile set to 'off'.
+2007-09-07 jwm <jwm>
-2007-02-13 08:17 castaglia
+ * contrib/mod_ldap.c: Fix anonymous binds when
+ draft-ietf-ldapext-ldap-c-api-04 functions are used. Submitted by: Quentin Garnier <cube at cubidou.net>
- * 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-09-04 castaglia <castaglia>
-2007-02-13 08:00 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.
- * src/dirtree.c:
- Fix typo.
+2007-08-30 castaglia <castaglia>
-2007-02-12 11:43 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.
- * 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-08-29 castaglia <castaglia>
-2007-02-12 11:28 castaglia
+ * doc/howto/SQL.html: Added SQL FAQ about shared library loader
+ errors.
- * 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-08-24 castaglia <castaglia>
-2007-02-12 09:16 castaglia
+ * doc/howto/Debugging.html: Mention using `proftpd -V' in the
+ Debugging howto.
- * NEWS, contrib/mod_quotatab.c:
- Bug#2897 - mod_quotatab subtracts size of deleted file from
- bytes-transferred tally.
+2007-08-22 castaglia <castaglia>
-2007-02-08 11:11 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.
- * modules/mod_auth.c:
- Add explanatory comment about checks for session.gids,
- session.groups.
+2007-08-22 jwm <jwm>
-2007-02-08 09:24 castaglia
+ * contrib/mod_ldap.c: missed version number
- * NEWS, modules/mod_auth.c:
- Bug#2893 - ProFTPD can use the wrong group data if the user name
- changes.
+2007-08-21 castaglia <castaglia>
-2007-01-19 15:01 castaglia
+ * NEWS, lib/sstrncpy.c: Bug#2964 - Building RPM fails because of
+ *snprintf trying to be redefined.
- * NEWS, modules/mod_lang.c:
- Bug#2883 - Problem with locale and SQL database queries.
+2007-08-17 jwm <jwm>
-2007-01-19 14:52 castaglia
+ * contrib/mod_ldap.c: release 2.8.17
- * locale/files.txt:
- Update the list of source files in locale/files.txt.
+2007-08-09 castaglia <castaglia>
-2007-01-19 14:51 castaglia
+ * NEWS, modules/mod_ls.c: Bug#2963 - Use of -A option for LIST/NLST
+ commands not cleared for subsequent commands.
- * locale/Makefile.in:
- Fixed typos in command used to generate files.txt.
+2007-08-09 castaglia <castaglia>
-2007-01-19 13:59 castaglia
+ * README.facl: Remove extraneous whitespace.
- * 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-08-03 castaglia <castaglia>
-2007-01-18 08:08 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.
- * src/trace.c:
- The list of channel names should be named 'trace_channels', not
- 'trace_levels'. What was I thinking?
+2007-07-31 castaglia <castaglia>
-2007-01-17 18:48 castaglia
+ * modules/mod_auth.c: Coding style changes; no functional change.
- * NEWS, include/conf.h, include/lastlog.h, include/log.h:
- Bug#2878 - Error compiling proftpd on Solaris 2.9 using
- --with-lastlog.
+2007-07-31 castaglia <castaglia>
-2007-01-17 18:14 castaglia
+ * NEWS, modules/mod_delay.c: Bug#2955 - Undeclared identifier
+ MAP_FAILED for mod_delay on AIX.
- * 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-07-24 castaglia <castaglia>
-2007-01-17 18:11 castaglia
+ * NEWS, src/dirtree.c: Bug#2950 - Hostname with multiple IP
+ addresses might cause "ai_family not supported" error if IPv6
+ support enabled.
- * 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-07-19 castaglia <castaglia>
-2007-01-17 11:50 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.
- * contrib/mod_sql.c:
- Update mod_sql.c to use pr_env_get() rather than getenv(3).
+2007-07-18 castaglia <castaglia>
-2007-01-17 11:38 castaglia
+ * NEWS, modules/mod_facl.c: Bug#2946 - Anonymous logins fail if the
+ mod_facl module is enabled.
- * configure:
- Updated configure.
+2007-07-07 jwm <jwm>
-2007-01-17 11:32 castaglia
+ * 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.
- * contrib/mod_tls.c, configure.in, src/main.c, src/proctitle.c:
- The proper macro to use is PR_USE_DEVEL, not PR_DEVEL.
+2007-07-06 castaglia <castaglia>
-2007-01-17 10:48 castaglia
+ * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Correct
+ misspellings.
- * configure:
- Updated configure.
+2007-07-06 castaglia <castaglia>
-2007-01-17 10:34 castaglia
+ * NEWS, contrib/mod_sql_mysql.c: Bug#2944 - mod_sql_mysql fails to
+ compile due to missing quotation.
- * configure.in:
- Add printing of "checking for" messages when scanning for the
- list of usual suspects of lastlog locations.
+2007-07-05 castaglia <castaglia>
- Related to Bug #2878.
+ * NEWS, include/version.h: Reset files for 1.3.1rc4.
-2007-01-17 10:16 castaglia
+2007-07-04 castaglia <castaglia>
- * configure:
- Updated configure.
+ * ChangeLog: Updating ChangeLog.
-2007-01-17 10:12 castaglia
+2007-07-04 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).
+ * contrib/dist/rpm/proftpd.spec, include/version.h: Preparing for
+ 1.3.1rc3 release.
- Part of Bug #2878.
+2007-07-04 castaglia <castaglia>
-2007-01-17 09:44 castaglia
+ * RELEASE_NOTES: Updating the release notes, getting ready for a
+ release.
- * include/lastlog.h:
- Error out of the build process if PR_LASTLOG_PATH has not been
- defined in one form or another. Include a slightly more
- informative error message, so that it's better than some cryptic
- compiler error later, when compiling lastlog.c.
+2007-07-04 castaglia <castaglia>
- Part of the fixes for Bug #2878.
+ * 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-01-17 07:39 castaglia
+2007-07-02 jwm <jwm>
- * NEWS, src/inet.c:
- Bug#2877 - ServerType 'inetd' results in "getnameinfo error:
- ai_family not supported" errors in log.
+ * 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-01-16 21:33 castaglia
+2007-07-02 castaglia <castaglia>
- * src/main.c: Remove the redundant is_standalone variable; it can
- be replaced with checks against the global variable ServerType.
+ * RELEASE_NOTES: Updating release notes.
-2007-01-16 11:58 castaglia
+2007-07-02 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.
+ * contrib/mod_wrap2/mod_wrap2.c: Make sure that mod_wrap2 honors the
+ runtime UseIPv6 configuration directive.
-2007-01-16 11:54 castaglia
+2007-06-28 castaglia <castaglia>
- * src/main.c:
- A bad patch mixed up the ordering of settings displayed via
- show_settings().
+ * 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-01-16 11:53 castaglia
+2007-06-28 castaglia <castaglia>
- * src/env.c:
- Fix bug in pr_env_set() on systems that have putenv(3) rather
- than setenv(3).
+ * 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-01-15 15:55 castaglia
+2007-06-25 castaglia <castaglia>
- * configure: Updated configure.
+ * 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-01-15 15:51 castaglia
+2007-06-25 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.
+ * NEWS, contrib/mod_ban.c: Bug#2942 - BanLog directive does not
+ accept "none" parameter.
-2007-01-15 15:49 castaglia
+2007-06-25 castaglia <castaglia>
- * NEWS: Forgot to list Bug #2875 in the NEWS file.
+ * NEWS, modules/mod_auth.c: Bug#2939 - Anonymous restrictions apply
+ after a failed anonymous login followed by a successful normal user
+ login.
-2007-01-15 14:21 castaglia
+2007-06-19 castaglia <castaglia>
- * modules/mod_ctrls.c: Use a socklen_t, rather than a size_t, for
- accept(2).
+ * NEWS: Fix typos.
-2007-01-14 17:33 castaglia
+2007-06-18 castaglia <castaglia>
- * configure: Updated configure.
+ * doc/howto/Quotas.html: Add a FAQ about group quota determination.
-2007-01-14 17:30 castaglia
+2007-06-12 castaglia <castaglia>
- * configure.in: Bug#2875 - Malformed getopt checks cause
- compilation errors in getopt.c.
+ * src/auth.c: Yet another patch, working on the PAM-related fallout
+ from Bug #2922.
-2007-01-13 16:18 castaglia
+2007-06-12 castaglia <castaglia>
- * configure: Updated configure.
+ * modules/mod_auth_file.c: Remove some debug logging which
+ inadvertently crept into mod_auth_file.
-2007-01-13 16:16 castaglia
+2007-06-12 castaglia <castaglia>
- * configure.in: There's no need to define PR_USE_SENDFILE as zero.
+ * 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-01-12 22:12 castaglia
+2007-06-11 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).
+ * NEWS, contrib/mod_wrap2/mod_wrap2.c: Bug#2938 - mod_wrap2 does not
+ honor WrapTables for <Anonymous> logins.
-2007-01-12 20:29 castaglia
+2007-06-07 castaglia <castaglia>
- * doc/contrib/mod_quotatab.html:
- Specify what I mean when I say "groups" and "classes".
+ * contrib/mod_ifsession.c, contrib/mod_rewrite.c: Add reporting of
+ the module version for the mod_ifsession and mod_rewrite modules.
-2007-01-12 20:16 castaglia
+2007-06-04 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.
+ * NEWS, modules/mod_core.c: Bug#2935 - DELE command doesn't check
+ file stat result before logging.
-2007-01-12 20:14 castaglia
+2007-06-04 jwm <jwm>
- * locale/.cvsignore:
- Another .cvsignore file for locale/.
+ * 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-01-12 10:54 castaglia
+2007-05-30 castaglia <castaglia>
- * contrib/: mod_load/.cvsignore, mod_wrap2/.cvsignore:
- Add .cvsignore files for the mod_load/ and mod_wrap2/
- directories.
+ * 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-01-12 10:51 castaglia
+2007-05-26 castaglia <castaglia>
- * include/version.h:
- Back to CVS status, for the next RC release.
+ * doc/howto/Quotas.html: Add a FAQ about the QuotaExcludeFilter
+ directive.
-2007-01-12 09:52 castaglia
+2007-05-24 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * doc/howto/Tracing.html: No need for the quotations -- they're a
+ bit much.
-2007-01-12 09:49 castaglia
+2007-05-24 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for 1.3.1rc2 release.
+ * RELEASE_NOTES, doc/howto/Tracing.html, doc/howto/index.html:
+ Adding tracing howto.
-2007-01-12 09:44 castaglia
+2007-05-24 castaglia <castaglia>
- * RELEASE_NOTES:
- Adding release notes for 1.3.1rc2.
+ * src/help.c: The list of commands displayed for the HELP command
+ was being truncated. Fix suggested by Richard Gray.
-2007-01-12 09:33 castaglia
+2007-05-23 castaglia <castaglia>
- * doc/howto/TLS.html:
- Add a mod_tls FAQ about the "no shared cipher" error.
+ * README.PAM: Update the PAM readme with notes for Linux, per
+ Bug#2907.
-2007-01-11 23:01 castaglia
+2007-05-22 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.
+ * 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-01-11 21:40 castaglia
+2007-05-22 castaglia <castaglia>
- * src/: env.c, pidfile.c, proctitle.c: Correct the license wording
- to mention The ProFTPD Project as primary copyright holder.
+ * configure: Updating configure.
-2007-01-11 17:30 castaglia
+2007-05-22 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.
+ * 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-01-11 15:43 castaglia
+2007-05-22 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.
+ * include/options.h: Minor style nit. No functional change.
-2007-01-11 15:08 castaglia
+2007-05-21 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.
+ * src/inet.c: Use tracing to log if there was a problem using
+ getsockopt() to get the IPV6_V6ONLY option.
-2007-01-11 13:36 castaglia
+2007-05-21 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.
+ * NEWS, src/inet.c: Bug#2932 - Syslog contains "error setting
+ IPV6_V6ONLY: Protocol not available".
-2007-01-11 11:16 castaglia
+2007-05-21 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.
+ * doc/howto/Directory.html: Include RNTO in the list of FTP commands
+ affected by trailing "/*" suffixes in <Directory> lines.
-2007-01-11 10:21 castaglia
+2007-05-21 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.
+ * src/auth.c: Additional patch for Bug#2922, to check for and use
+ mod_auth_pam for authentication, if present (and usable).
-2007-01-10 20:09 castaglia
+2007-05-21 castaglia <castaglia>
- * src/pool.c:
- The bytes_in_block_list() function should be #ifdef'd as well
- behind PR_USE_DEVEL.
+ * NEWS, contrib/mod_tls.c: Bug#2890 - SystemLog permission errors on
+ SIGHUP when mod_tls is enabled.
-2007-01-10 20:05 castaglia
+2007-05-19 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).
+ * modules/mod_facl.c: Use the event handler defined for the
+ "core.module-unload" event, when compiled as a DSO module.
- 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-05-16 castaglia <castaglia>
-2007-01-09 20:55 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.
- * configure:
- Updated configure.
+2007-05-15 castaglia <castaglia>
-2007-01-09 19:45 castaglia
+ * src/netio.c: More work towards Bug#2920. Hopefully this will be
+ the last of that particular issue.
- * configure.in:
- Thinko.
+2007-05-15 castaglia <castaglia>
-2007-01-09 19:19 castaglia
+ * modules/mod_xfer.c: Short-circuit out of xfer_rate_throttle()
+ early, if the transfer has already been aborted.
- * 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-05-15 castaglia <castaglia>
-2007-01-09 19:17 castaglia
+ * doc/howto/Timestamps.html: Adjust link to mod_site_misc docs to
+ use the local copy.
- * configure:
- Updated configure.
+2007-05-15 castaglia <castaglia>
-2007-01-09 19:16 castaglia
+ * doc/howto/Timestamps.html: Start adding a FAQ section about
+ timezones and timestamps.
- * contrib/mod_load/: config.guess, config.sub:
- The configure script for the mod_load module requires the
- config.sub and config.guess helper scripts.
+2007-05-15 castaglia <castaglia>
-2007-01-09 19:07 castaglia
+ * modules/mod_xfer.c, src/data.c: More checks of XFER_ABORTED, in
+ pursuit of a solution for Bug#2920.
- * configure.in:
- Check for the existence of the file before trying to cat it.
+2007-05-14 castaglia <castaglia>
-2007-01-09 18:25 castaglia
+ * modules/mod_xfer.c: Attempt to handle aborted transfers that were
+ in the midst of being throttled.
- * configure:
- Updated configure.
+2007-05-14 castaglia <castaglia>
-2007-01-09 18:19 castaglia
+ * modules/mod_xfer.c: Do not block SIGURG (used to abort transfers)
+ when handling throttled transfers.
- * 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.
+2007-05-10 castaglia <castaglia>
- 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.)
+ * 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.
- 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-05-10 castaglia <castaglia>
-2007-01-09 12:08 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.
- * configure:
- Updating configure.
+2007-05-10 castaglia <castaglia>
-2007-01-09 12:04 castaglia
+ * src/main.c: Add tracing of received FTP commands.
- * 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-05-09 castaglia <castaglia>
-2007-01-08 20:19 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.
- * configure:
- Updating configure.
+2007-05-07 castaglia <castaglia>
-2007-01-08 20:16 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.
- * contrib/: mod_load/Makefile.in, 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-05-04 castaglia <castaglia>
-2007-01-08 20:14 castaglia
+ * NEWS, modules/mod_ls.c: Bug#2921 - NLST fails if using POSIX ACLs.
- * contrib/dist/rpm/proftpd.spec:
- Add DSO and lastlog support to the RPM spec.
+2007-05-04 castaglia <castaglia>
-2007-01-08 20:09 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.
- * 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-04-30 castaglia <castaglia>
-2007-01-08 19:31 castaglia
+ * modules/mod_facl.c: Fix the initialization of mod_facl's
+ configuration directives. Oops.
- * src/modules.c:
- Set errno to EINVAL, when appropriate, in a few places.
+2007-04-24 castaglia <castaglia>
-2007-01-08 18:14 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).
- * src/parser.c:
- Paranoid checking of signals within a while loop, in case the
- loop should decide to continue endlessly.
+2007-04-18 castaglia <castaglia>
-2007-01-08 14:59 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).
- * 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-04-17 castaglia <castaglia>
-2007-01-08 11:58 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.
- * modules/Makefile.in, src/Makefile.in, utils/Makefile.in:
- Remove crufty, outdated, and unnecessary dependency listings.
+2007-04-17 castaglia <castaglia>
-2007-01-08 11:50 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.
- * configure:
- Updated configure.
+2007-04-16 castaglia <castaglia>
-2007-01-08 11:47 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.
- * 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.)
+2007-04-02 castaglia <castaglia>
- 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.
+ * src/inet.c: Allow data transfers on low-numbered sockets to work
+ on SCO Unix.
-2007-01-07 22:52 castaglia
+2007-04-02 castaglia <castaglia>
- * src/auth.c: Yet another while loop in need of signal handling.
+ * 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-01-07 12:48 castaglia
+2007-03-28 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec: Add controls support to the RPM
- spec.
+ * 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-01-07 12:42 castaglia
+2007-03-28 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec: Include the installed header files
- in the RPM spec.
+ * src/parser.c: Tag the temporary pool right after its creation, not
+ after it has been used.
- Add ability for specifying mod_quotatab_file.
+2007-03-28 castaglia <castaglia>
-2007-01-05 19:25 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2913 - TYPE command does not clear
+ ASCII flag from LIST/NLST commands.
- * 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-03-28 castaglia <castaglia>
-2007-01-05 16:07 castaglia
+ * contrib/mod_rewrite.c: Updating coding style in a few places. No
+ functional change.
- * 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-03-27 castaglia <castaglia>
-2007-01-03 23:26 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.
- * src/support.c: Fix dir_abs_path() such that it does not tack on
- redundant directories to the end of a relative path.
+2007-03-22 castaglia <castaglia>
-2007-01-03 14:57 castaglia
+ * src/dirtree.c: Formatting tweaks, no functional change.
- * modules/mod_auth_file.c:
- Remember to use PR_DECLINED rather than DECLINED.
+2007-03-09 castaglia <castaglia>
-2007-01-03 14:06 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.
- * 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-03-09 castaglia <castaglia>
-2007-01-03 10:24 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.
- * contrib/mod_sql.c:
- Make sure that "SQLAuthenticate groupset" works properly.
+2007-03-06 castaglia <castaglia>
-2007-01-02 18:54 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.
- * Make.rules.in:
- Make sure the LIBS environment variable is honored when linking
- the utility programs (i.e. ftptop, ftpwho).
+2007-03-06 castaglia <castaglia>
-2007-01-02 14:27 castaglia
+ * README.PAM: Typo.
- * doc/contrib/mod_quotatab_ldap.html:
- Minor clarification.
+2007-03-01 castaglia <castaglia>
-2006-12-28 09:52 castaglia
+ * NEWS: Fix typo noted by Sven.
- * NEWS, src/mkhome.c: Bug#2872 - CreateHome doesn't recreate
- symlinks from skeleton properly.
+2007-02-21 jwm <jwm>
-2006-12-26 17:59 castaglia
+ * contrib/mod_ldap.c: - bump version - previous commit wrt LDAPAttr fetching was submitted by TJ Saunders <tj at castaglia.org>; got a little fresh with my editor and missed
+ the paste
- * src/parser.c: Fix a nasty bug where a <Directory> section which
- contained a <Limit> section, but no other directives, e.g.:
+2007-02-21 jwm <jwm>
- <Directory /path>
- <Limit LIST>
- DenyAll
- </Limit>
- </Directory>
+ * contrib/mod_ldap.c: fetch attribute redefinitions (LDAPAttr)
+ before using any attribute names, such as when generating the
+ default search filters
- was handled as being "empty", and thus ignored; the <Limit> would
- not take effect.
+2007-02-21 jwm <jwm>
-2006-12-22 12:23 castaglia
+ * contrib/mod_ldap.c: wordwrap, error message tweak
- * contrib/mod_sql.c:
- Paranoid NULL termination of vararg lists to the
- sql_prepare_where() variadic function.
+2007-02-20 castaglia <castaglia>
-2006-12-22 11:52 castaglia
+ * doc/contrib/mod_quotatab_radius.html, doc/contrib/mod_radius.html:
+ Fix the documentation for the RadiusQuotaInfo.
- * 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.)
+2007-02-20 castaglia <castaglia>
-2006-12-22 10:48 castaglia
+ * NEWS, contrib/mod_rewrite.c: Bug#2906 - RewriteCondition
+ backreferences not properly substituted.
- * NEWS, contrib/mod_sql.c:
- Bug#2869 - mod_sql botches WHERE clauses.
+2007-02-20 castaglia <castaglia>
-2006-12-21 14:19 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.
- * 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.
+2007-02-20 castaglia <castaglia>
-2006-12-21 10:01 castaglia
+ * contrib/mod_quotatab_radius.c: Need to include mod_quotatab.h,
+ which includes the ProFTPD headers, before doing the ProFTPD version
+ check.
- * 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.
+2007-02-16 castaglia <castaglia>
-2006-12-20 10:39 castaglia
+ * doc/howto/TLS.html: Add FAQ about SSL/TLS renegotiations, and how
+ some FTPS clients do not handle them well.
- * 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.
+2007-02-15 castaglia <castaglia>
-2006-12-20 10:28 castaglia
+ * RELEASE_NOTES: Note new doc for 1.3.1rc3 release, whenever that
+ is.
- * modules/mod_core.c, src/trace.c:
- Fixing two issues with this change:
+2007-02-15 castaglia <castaglia>
- 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.
+ * doc/howto/Timestamps.html, doc/howto/index.html: Add a document
+ talking about timestamps and chroots (see Bug #2717, Bug #2896).
- 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).
+2007-02-15 castaglia <castaglia>
-2006-12-19 15:54 castaglia
+ * configure: Updated configure.
- * src/: parser.c, trace.c:
- Adding tracing of the parser, using the 'config' trace channel.
+2007-02-15 castaglia <castaglia>
-2006-12-19 13:36 castaglia
+ * lib/pr-syslog.c, src/support.c: Use the feature macro to determine
+ if tzname is actually present to be guarded.
- * src/netaddr.c:
- More tracing of netaddr functions, particularly in the reverse
- DNS resolution code.
+2007-02-15 castaglia <castaglia>
-2006-12-18 19:26 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.
- * modules/mod_auth_pam.c:
- Adding tracing of PAM.
+2007-02-15 castaglia <castaglia>
-2006-12-18 19:11 castaglia
+ * config.h.in, configure.in: Be defensive, and add autoconf
+ detection for the tzname, timezone, and daylight global variables.
- * src/netaddr.c:
- Adding tracing of netaddr functions, using the trace channel name
- 'dns'.
+2007-02-15 castaglia <castaglia>
-2006-12-18 18:42 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().
- * modules/mod_facl.c, src/trace.c:
- Adding tracing of POSIX ACLs.
+2007-02-15 castaglia <castaglia>
-2006-12-18 18:38 castaglia
+ * src/log.c: Missed a call to localtime(3) that needs to replaced
+ with pr_localtime().
- * 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).
+2007-02-15 castaglia <castaglia>
-2006-12-18 17:29 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.
- * NEWS, src/event.c:
- Bug#2857 - Failure to properly unregister event handlers leads to
- segfault after restarts.
+2007-02-15 castaglia <castaglia>
- 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.
+ * 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.
-2006-12-18 15:09 castaglia
+2007-02-15 castaglia <castaglia>
- * src/netacl.c:
- Adding tracing of NetACLs.
+ * 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.
-2006-12-18 14:43 castaglia
+2007-02-15 castaglia <castaglia>
- * src/ident.c:
- Add tracing of ident lookups.
+ * 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.
-2006-12-18 12:04 castaglia
+2007-02-15 castaglia <castaglia>
- * contrib/mod_ban.c:
- Get in the habit of setting pools to NULL after destroying them.
+ * 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.
- Update to use newer Timer API.
+2007-02-13 castaglia <castaglia>
-2006-12-18 11:27 castaglia
+ * modules/mod_xfer.c: Forgot to log one of the reasons for not using
+ sendfile(): UseSendfile set to 'off'.
- * 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.
+2007-02-13 castaglia <castaglia>
-2006-12-18 10:33 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.
- * src/inet.c:
- FreeBSD 7 on its way.
+2007-02-13 castaglia <castaglia>
-2006-12-18 10:09 castaglia
+ * src/dirtree.c: Fix typo.
- * src/support.c:
- The pickier compiler on my Linux laptop caught this thinko.
+2007-02-12 castaglia <castaglia>
-2006-12-17 15:37 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.
- * modules/mod_auth.c, modules/mod_log.c, src/parser.c: Use
- pr_env_get() rather than getenv(3).
+2007-02-12 castaglia <castaglia>
-2006-12-17 15:28 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.
- * 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().
+2007-02-12 castaglia <castaglia>
-2006-12-17 15:27 castaglia
+ * NEWS, contrib/mod_quotatab.c: Bug#2897 - mod_quotatab subtracts
+ size of deleted file from bytes-transferred tally.
- * configure: Updated configure.
+2007-02-08 castaglia <castaglia>
-2006-12-17 15:24 castaglia
+ * modules/mod_auth.c: Add explanatory comment about checks for
+ session.gids, session.groups.
- * 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.)
+2007-02-08 castaglia <castaglia>
-2006-12-15 17:13 castaglia
+ * NEWS, modules/mod_auth.c: Bug#2893 - ProFTPD can use the wrong
+ group data if the user name changes.
- * modules/mod_ctrls.c, src/ctrls.c:
- Add tracing of controls.
+2007-01-19 castaglia <castaglia>
-2006-12-15 15:24 castaglia
+ * NEWS, modules/mod_lang.c: Bug#2883 - Problem with locale and SQL
+ database queries.
- * modules/mod_dso.c:
- Adding tracing of DSO modules.
+2007-01-19 castaglia <castaglia>
-2006-12-15 15:10 castaglia
+ * locale/files.txt: Update the list of source files in
+ locale/files.txt.
- * doc/contrib/mod_ctrls_admin.html:
- Documentation for the 'trace info' ftpctl action.
+2007-01-19 castaglia <castaglia>
-2006-12-15 15:07 castaglia
+ * locale/Makefile.in: Fixed typos in command used to generate
+ files.txt.
- * 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.
+2007-01-19 castaglia <castaglia>
-2006-12-15 14:32 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.
- * src/fsio.c:
- Add more handling of possible signals within while() loops.
+2007-01-18 castaglia <castaglia>
-2006-12-15 14:25 castaglia
+ * src/trace.c: The list of channel names should be named
+ 'trace_channels', not 'trace_levels'. What was I thinking?
- * modules/mod_ls.c:
- Style changes, and some additional pr_signals_handle() calls in
- while() loops.
+2007-01-18 castaglia <castaglia>
-2006-12-15 14:17 castaglia
+ * NEWS, include/conf.h, include/log.h: Bug#2878 - Error compiling
+ proftpd on Solaris 2.9 using --with-lastlog.
- * src/event.c:
- Use tracing for logging of events, rather than debug logging.
+2007-01-18 castaglia <castaglia>
-2006-12-15 11:49 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!
- * src/fsio.c:
- Add tracing of the FSIO API, no longer using pr_log_debug().
+2007-01-18 castaglia <castaglia>
-2006-12-15 11:35 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).
- * 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.
+2007-01-17 castaglia <castaglia>
-2006-12-15 11:32 castaglia
+ * contrib/mod_sql.c: Update mod_sql.c to use pr_env_get() rather
+ than getenv(3).
- * doc/contrib/mod_ctrls_admin.html:
- Add docs for the 'trace' control action.
+2007-01-17 castaglia <castaglia>
-2006-12-15 11:05 castaglia
+ * configure: Updated configure.
- * NEWS, modules/mod_core.c:
- Bug#2849 - Error msg "Not owner" returned by "SIZE in ASCII mode"
- is misleading.
+2007-01-17 castaglia <castaglia>
-2006-12-15 10:51 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.
- * src/utf8.c:
- Make sure that utf8_init() and utf8_free() are present for use by
- the linker, even if they return ENOSYS.
+2007-01-17 castaglia <castaglia>
-2006-12-15 10:46 castaglia
+ * configure: Updated configure.
- * lib/getopt.c:
- Make sure to reference the gettext() function only when NLS
- support has been requested. Otherwise, confusing linker errors
- result.
+2007-01-17 castaglia <castaglia>
-2006-12-14 16:21 castaglia
+ * configure.in: Add printing of "checking for" messages when
+ scanning for the list of usual suspects of lastlog locations. Related to Bug #2878.
- * src/timers.c:
- Add timer tracing.
+2007-01-17 castaglia <castaglia>
-2006-12-14 16:06 castaglia
+ * configure: Updated configure.
- * include/: compat.h, timers.h:
- Compatibility macros should all be collected in compat.h.
+2007-01-17 castaglia <castaglia>
-2006-12-14 15:15 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.
- * locale/Makefile.in:
- Using the --sort-by-file option when generating message catalogs.
+2007-01-17 castaglia <castaglia>
-2006-12-14 15:12 castaglia
+ * NEWS, src/inet.c: Bug#2877 - ServerType 'inetd' results in
+ "getnameinfo error: ai_family not supported" errors in log.
- * 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.
+2007-01-17 castaglia <castaglia>
-2006-12-14 14:18 castaglia
+ * src/main.c: Remove the redundant is_standalone variable; it can be
+ replaced with checks against the global variable ServerType.
- * src/inet.c:
- Use tracing to log when we have successfully bound an
- address/port to a socket.
+2007-01-16 castaglia <castaglia>
-2006-12-14 08:37 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.
- * configure:
- Updated configure.
+2007-01-16 castaglia <castaglia>
-2006-12-14 08:27 castaglia
+ * src/main.c: A bad patch mixed up the ordering of settings
+ displayed via show_settings().
- * 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.
+2007-01-16 castaglia <castaglia>
-2006-12-13 14:54 castaglia
+ * src/env.c: Fix bug in pr_env_set() on systems that have putenv(3)
+ rather than setenv(3).
- * NEWS, contrib/mod_radius.c, doc/contrib/mod_radius.html:
- Bug#2856 - Support for RADIUS NAS-Identifier attribute.
+2007-01-15 castaglia <castaglia>
-2006-12-13 10:19 castaglia
+ * configure: Updated configure.
- * configure:
- Updated configure.
+2007-01-15 castaglia <castaglia>
-2006-12-13 10:16 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.
- * 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.
+2007-01-15 castaglia <castaglia>
-2006-12-13 10:04 castaglia
+ * NEWS: Forgot to list Bug #2875 in the NEWS file.
- * modules/mod_ls.c:
- Use strcoll(3) both when NLS is enabled and when strcoll(3) is
- actually present.
+2007-01-15 castaglia <castaglia>
-2006-12-13 09:44 castaglia
+ * modules/mod_ctrls.c: Use a socklen_t, rather than a size_t, for
+ accept(2).
- * modules/mod_lang.c:
- Make sure that mod_lang can compile if libintl support is absent.
+2007-01-15 castaglia <castaglia>
-2006-12-13 09:40 castaglia
+ * configure: Updated configure.
- * src/utf8.c:
- Make sure utf8.c can compile and run, even when iconv support is
- lacking.
+2007-01-15 castaglia <castaglia>
-2006-12-12 10:44 castaglia
+ * configure.in: Bug#2875 - Malformed getopt checks cause compilation
+ errors in getopt.c.
- * doc/modules/mod_delay.html:
- Typo.
+2007-01-14 castaglia <castaglia>
-2006-12-12 10:24 castaglia
+ * configure: Updated configure.
- * include/version.h:
- Back to CVS mode, for the next RC release.
+2007-01-14 castaglia <castaglia>
-2006-12-12 09:02 castaglia
+ * configure.in: There's no need to define PR_USE_SENDFILE as zero.
- * ChangeLog:
- Updated ChangeLog.
+2007-01-13 castaglia <castaglia>
-2006-12-12 09:00 castaglia
+ * include/proctitle.h, src/main.c, src/proctitle.c: Move the
+ proctitle functions into the 'pr_' namespace, just to be safe (and
+ consistent).
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for 1.3.1rc1 release.
+2007-01-13 castaglia <castaglia>
-2006-12-12 08:52 castaglia
+ * doc/contrib/mod_quotatab.html: Specify what I mean when I say
+ "groups" and "classes".
- * RELEASE_NOTES:
- Finish polishing up these release notes.
+2007-01-13 castaglia <castaglia>
-2006-12-12 08:34 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.
- * NEWS, src/ctrls.c:
- Bug#2867 - Local authorized user buffer overflow in Controls
- request handling.
+2007-01-13 castaglia <castaglia>
-2006-12-11 15:11 castaglia
+ * locale/.cvsignore: Another .cvsignore file for locale/.
- * src/var.c:
- Handle the case where the retrieved variable is NULL.
+2007-01-12 castaglia <castaglia>
-2006-12-11 14:42 castaglia
+ * contrib/mod_load/.cvsignore, contrib/mod_wrap2/.cvsignore: Add
+ .cvsignore files for the mod_load/ and mod_wrap2/ directories.
- * modules/mod_ls.c:
- More pedantic checks for NULL pointers.
+2007-01-12 castaglia <castaglia>
-2006-12-11 14:40 castaglia
+ * include/version.h: Back to CVS status, for the next RC release.
- * 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.
+2007-01-12 castaglia <castaglia>
-2006-12-11 13:45 castaglia
+ * ChangeLog: Updated ChangeLog.
- * doc/howto/TLS.html:
- Add a mod_tls FAQ about linker errors related to libdl.
+2007-01-12 castaglia <castaglia>
-2006-12-11 12:06 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for 1.3.1rc2 release.
- * modules/mod_core.c:
- More safety checking of possibly NULL return values.
+2007-01-12 castaglia <castaglia>
-2006-12-11 11:58 castaglia
+ * RELEASE_NOTES: Adding release notes for 1.3.1rc2.
- * 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.
+2007-01-12 castaglia <castaglia>
-2006-12-11 11:53 castaglia
+ * doc/howto/TLS.html: Add a mod_tls FAQ about the "no shared cipher"
+ error.
- * src/log.c:
- Handle a possible return value of NULL from localtime(3).
+2007-01-12 castaglia <castaglia>
-2006-12-11 11:05 castaglia
+ * src/fsio.c: In the case of successful chown() and chmod() calls,
+ clear the statcache, as the cached data may now be stale.
- * src/fsio.c:
- Check for NULL return values from strdup(3).
+2007-01-12 castaglia <castaglia>
-2006-12-11 10:59 castaglia
+ * src/env.c, src/pidfile.c, src/proctitle.c: Correct the license
+ wording to mention The ProFTPD Project as primary copyright holder.
- * 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)).
+2007-01-12 castaglia <castaglia>
-2006-12-11 09:07 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.
- * src/trace.c:
- Off by one.
+2007-01-11 castaglia <castaglia>
-2006-12-11 09:03 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.
- * src/fsio.c, modules/mod_ls.c, modules/mod_site.c:
- Off by one.
+2007-01-11 castaglia <castaglia>
-2006-12-11 00:20 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.
- * lib/glibc-glob.c: Paranoid null pointer check. Useful, since we
- do use the ALTDIRFUNC flag.
+2007-01-11 castaglia <castaglia>
-2006-12-11 00:12 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.
- * src/fsio.c: Make sure pr_fs_dircat() doesn't attempt to operate
- on NULL pointers.
+2007-01-11 castaglia <castaglia>
-2006-12-11 00:02 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.
- * modules/mod_log.c: More insurance that a possible NULL value
- isn't passed to a library call, e.g. strftime(3).
+2007-01-11 castaglia <castaglia>
-2006-12-10 23:59 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.
- * modules/mod_log.c: Ensure we don't inadvertently attempt to
- lookup a NULL environment variable name, or copy a NULL
- environment variable value.
+2007-01-11 castaglia <castaglia>
-2006-12-10 23:55 castaglia
+ * src/pool.c: The bytes_in_block_list() function should be #ifdef'd
+ as well behind PR_USE_DEVEL.
- * src/trace.c: Paranoid check for improper indices into the
- allocated buffer.
+2007-01-11 castaglia <castaglia>
-2006-12-10 23:52 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>
- * src/support.c: Ensure that we don't accidentally go past the end
- of the allocated array.
+ * configure: Updated configure.
-2006-12-10 23:40 castaglia
+2007-01-10 castaglia <castaglia>
- * modules/mod_site.c: Another possible negative array index catch.
+ * configure.in: Thinko.
-2006-12-10 23:37 castaglia
+2007-01-10 castaglia <castaglia>
- * modules/mod_ls.c: Catch another possible situation where the
- index used may inadvertently be -1.
+ * 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.
-2006-12-10 23:21 castaglia
+2007-01-10 castaglia <castaglia>
- * src/fsio.c: Pedantically fix some edge cases where an index of -1
- might accidentally be used.
+ * configure: Updated configure.
-2006-12-07 09:18 castaglia
+2007-01-10 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.
+ * 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.
-2006-12-06 16:10 castaglia
+2007-01-10 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).
+ * configure.in: Check for the existence of the file before trying to
+ cat it.
-2006-12-06 10:56 castaglia
+2007-01-10 castaglia <castaglia>
- * configure:
- Updated configure.
+ * configure: Updated configure.
-2006-12-06 10:55 castaglia
+2007-01-10 castaglia <castaglia>
- * config.h.in, configure.in, include/conf.h:
- NLS support requires checking for the locale.h header, and
- including it if necessary.
+ * 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.
-2006-12-05 21:15 castaglia
+2007-01-09 castaglia <castaglia>
- * doc/howto/DisplayFiles.html:
- Renamed DisplayFirstChdir to DisplayChdir, and added mention of
- the new DisplayFileTransfer.
+ * configure: Updating configure.
-2006-12-05 20:29 castaglia
+2007-01-09 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().
+ * 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.
- 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.
+2007-01-09 castaglia <castaglia>
-2006-12-05 20:22 castaglia
+ * configure: Updating configure.
- * src/display.c:
- Use tracing, rather than debug level 10, for logging about
- unresolved variables in Display files.
+2007-01-09 castaglia <castaglia>
-2006-12-05 20:21 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.
- * src/trace.c:
- Add a default trace channel for logging from the Variables API
- layer.
+2007-01-09 castaglia <castaglia>
-2006-12-05 20:05 castaglia
+ * contrib/dist/rpm/proftpd.spec: Add DSO and lastlog support to the
+ RPM spec.
- * lib/sstrncpy.c:
- Include the library support header libsupp.h, at least, since
- that is what its purpose is.
+2007-01-09 castaglia <castaglia>
-2006-12-05 19:57 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).
- * lib/sstrncpy.c:
- No need to pull in all of proftpd's configuration for sstrncpy().
+2007-01-09 castaglia <castaglia>
-2006-12-05 13:44 castaglia
+ * src/modules.c: Set errno to EINVAL, when appropriate, in a few
+ places.
- * contrib/mod_wrap2/mod_wrap2.c:
- More updates to the current APIs.
+2007-01-09 castaglia <castaglia>
-2006-12-05 12:05 castaglia
+ * src/parser.c: Paranoid checking of signals within a while loop, in
+ case the loop should decide to continue endlessly.
- * contrib/: mod_ban.c, mod_wrap2/mod_wrap2.c:
- Updating mod_ban, mod_wrap2 to use newer module API names and
- macros.
+2007-01-08 castaglia <castaglia>
-2006-12-05 11:00 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.
- * include/log.h:
- Use GCC pragmas for checking callers of pr_log_writefile() as
- well.
+2007-01-08 castaglia <castaglia>
-2006-12-05 10:54 castaglia
+ * modules/Makefile.in, src/Makefile.in, utils/Makefile.in: Remove
+ crufty, outdated, and unnecessary dependency listings.
- * 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).
+2007-01-08 castaglia <castaglia>
-2006-12-05 09:47 castaglia
+ * configure: Updated configure.
- * src/support.c:
- Typo.
+2007-01-08 castaglia <castaglia>
-2006-12-05 09:44 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.
- * src/trace.c:
- Add 'data' as one of the built-in trace channel names.
+2007-01-08 castaglia <castaglia>
-2006-12-04 17:07 castaglia
+ * src/auth.c: Yet another while loop in need of signal handling.
- * contrib/mod_tls.c:
- Add some comments reminding me why I see gibberish in the debug
- logging, depending on the mod_tls configuration.
+2007-01-07 castaglia <castaglia>
-2006-12-04 14:33 castaglia
+ * contrib/dist/rpm/proftpd.spec: Add controls support to the RPM
+ spec.
- * contrib/mod_tls.c:
- Rather than logging when CRLs have not been configured, log when
- CRLs *are* present and being used.
+2007-01-07 castaglia <castaglia>
-2006-12-04 14:31 castaglia
+ * contrib/dist/rpm/proftpd.spec: Include the installed header files
+ in the RPM spec. Add ability for specifying mod_quotatab_file.
- * contrib/mod_tls.c:
- More paranoia. Also some minor style changes.
+2007-01-06 castaglia <castaglia>
-2006-12-04 14:16 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.
- * contrib/mod_tls.c:
- Increase the size of the buffer used to log X509 names from the
- client cert to 1KB
+2007-01-06 castaglia <castaglia>
- If the client certificate cannot be verified because of an
- invalid purpose, log the purposes of the client certificate.
+ * 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.
-2006-12-04 13:56 castaglia
+2007-01-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.
+ * src/support.c: Fix dir_abs_path() such that it does not tack on
+ redundant directories to the end of a relative path.
- Also conditionalize the use of the tls_crypto_device variable as
- per supporting OpenSSL version.
+2007-01-03 castaglia <castaglia>
-2006-12-04 11:31 castaglia
+ * modules/mod_auth_file.c: Remember to use PR_DECLINED rather than
+ DECLINED.
- * 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.
+2007-01-03 castaglia <castaglia>
-2006-12-04 11:27 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.
- * NEWS, modules/mod_ls.c:
- Bug#2862 - NLST / returns a listing of the current directory.
+2007-01-03 castaglia <castaglia>
-2006-12-04 11:24 castaglia
+ * contrib/mod_sql.c: Make sure that "SQLAuthenticate groupset" works
+ properly.
- * modules/mod_ls.c:
- More paranoia. Make sure that the length returned from
- readlink() isn't too large for our buffers.
+2007-01-03 castaglia <castaglia>
-2006-12-04 11:11 castaglia
+ * Make.rules.in: Make sure the LIBS environment variable is honored
+ when linking the utility programs (i.e. ftptop, ftpwho).
- * src/support.c:
- More defensive checking of input arguments, in pr_memscrub() and
- sstrcat().
+2007-01-02 castaglia <castaglia>
-2006-12-04 10:25 castaglia
+ * doc/contrib/mod_quotatab_ldap.html: Minor clarification.
- * 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-28 castaglia <castaglia>
-2006-12-04 10:07 castaglia
+ * NEWS, src/mkhome.c: Bug#2872 - CreateHome doesn't recreate
+ symlinks from skeleton properly.
- * locale/Makefile.in:
- Be more specific about the language support right now: en_US
- instead of en.
+2006-12-27 castaglia <castaglia>
-2006-12-01 19:26 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.
- * RELEASE_NOTES:
- More release notes.
+2006-12-22 castaglia <castaglia>
-2006-12-01 19:17 castaglia
+ * contrib/mod_sql.c: Paranoid NULL termination of vararg lists to
+ the sql_prepare_where() variadic function.
- * doc/contrib/mod_sql.html:
- Document the SQLOptions directive.
+2006-12-22 castaglia <castaglia>
-2006-12-01 18:24 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.)
- * 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-22 castaglia <castaglia>
-2006-12-01 18:13 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2869 - mod_sql botches WHERE clauses.
- * 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-21 castaglia <castaglia>
-2006-12-01 17:08 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.
- * RELEASE_NOTES:
- More documentation for the release notes.
+2006-12-21 castaglia <castaglia>
-2006-12-01 16:06 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.
- * configure:
- Updating configure.
+2006-12-20 castaglia <castaglia>
-2006-12-01 15:46 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.
- * 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-20 castaglia <castaglia>
-2006-12-01 15:42 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).
- * RELEASE_NOTES:
- Start adding more substance to the release notes, in preparation
- for a release.
+2006-12-19 castaglia <castaglia>
-2006-12-01 11:33 castaglia
+ * src/parser.c, src/trace.c: Adding tracing of the parser, using the
+ 'config' trace channel.
- * locale/Makefile.in:
- Make errors with creating translation catalogs non-fatal during
- the build process.
+2006-12-19 castaglia <castaglia>
-2006-12-01 11:29 castaglia
+ * src/netaddr.c: More tracing of netaddr functions, particularly in
+ the reverse DNS resolution code.
- * locale/: Makefile.in, files.txt:
- More work on the Makefile for generating the template message
- catalog for translation.
+2006-12-19 castaglia <castaglia>
-2006-11-30 14:31 castaglia
+ * modules/mod_auth_pam.c: Adding tracing of PAM.
- * contrib/ftpquota:
- If opening a quota table for displaying records only, open the
- table in read-only mode, rather than read-append mode.
+2006-12-19 castaglia <castaglia>
-2006-11-30 10:06 castaglia
+ * src/netaddr.c: Adding tracing of netaddr functions, using the
+ trace channel name 'dns'.
- * src/ftpdctl.c:
- Return a value, since the function definition requires it.
+2006-12-19 castaglia <castaglia>
-2006-11-29 09:08 castaglia
+ * modules/mod_facl.c, src/trace.c: Adding tracing of POSIX ACLs.
- * 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-12-19 castaglia <castaglia>
-2006-11-28 20:13 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).
- * NEWS, contrib/mod_tls.c:
- Bug#2860 - Failure to check for data length in mod_tls could lead
- to remote buffer overwriting.
+2006-12-19 castaglia <castaglia>
- (Also add entry for Bug #2858.)
+ * 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-11-28 19:47 castaglia
+2006-12-18 castaglia <castaglia>
- * contrib/mod_tls.c:
- Prevent some possible NULL pointer dereferences by checking for
- tls_pkey before using it.
+ * src/netacl.c: Adding tracing of NetACLs.
- 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-12-18 castaglia <castaglia>
-2006-11-28 19:29 castaglia
+ * src/ident.c: Add tracing of ident lookups.
- * contrib/mod_radius.c:
- Fix typo in declaration of static MD5_Update() function.
+2006-12-18 castaglia <castaglia>
- Also add paranoid check for size of attribute length, in RADIUS
- packet, which exceeds the maximum size of the data type.
+ * contrib/mod_ban.c: Get in the habit of setting pools to NULL after
+ destroying them. Update to use newer Timer API.
-2006-11-28 11:37 jwm
+2006-12-18 castaglia <castaglia>
- * 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
+ * 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-11-27 06:49 jwm
+2006-12-18 castaglia <castaglia>
- * src/support.c: Bug #2858 - CVE-2006-5815: remote code execution
- in ProFTPD
+ * src/inet.c: FreeBSD 7 on its way.
-2006-11-17 15:42 jwm
+2006-12-18 castaglia <castaglia>
- * 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
+ * src/support.c: The pickier compiler on my Linux laptop caught this
+ thinko.
-2006-10-31 19:12 castaglia
+2006-12-17 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.
+ * modules/mod_auth.c, modules/mod_log.c, src/parser.c: Use
+ pr_env_get() rather than getenv(3).
-2006-10-31 19:11 castaglia
+2006-12-17 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.
+ * 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-10-31 18:36 castaglia
+2006-12-17 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.
+ * configure: Updated configure.
-2006-10-31 18:35 castaglia
+2006-12-17 castaglia <castaglia>
- * src/netio.c:
- Require that callers of pr_netio_gets() and
- pr_netio_telnet_gets() specify a non-zero buffer length.
+ * 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-10-31 18:34 castaglia
+2006-12-16 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.
+ * modules/mod_ctrls.c, src/ctrls.c: Add tracing of controls.
-2006-10-31 14:49 castaglia
+2006-12-15 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.
+ * modules/mod_dso.c: Adding tracing of DSO modules.
-2006-10-30 14:07 castaglia
+2006-12-15 castaglia <castaglia>
- * doc/howto/SQL.html:
- Add an example of using Python to generate an OpenSSL-encoded
- mod_sql password string.
+ * doc/contrib/mod_ctrls_admin.html: Documentation for the 'trace
+ info' ftpctl action.
-2006-10-25 09:05 castaglia
+2006-12-15 castaglia <castaglia>
- * src/ftpdctl.c:
- Add stub for pr_trace_msg(), so that linking ftpdctl does not
- fail.
+ * 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-10-24 10:47 castaglia
+2006-12-15 castaglia <castaglia>
- * src/event.c:
- Allocate a larger event pool (ref Bug #2850).
+ * src/fsio.c: Add more handling of possible signals within while()
+ loops.
-2006-10-24 09:43 castaglia
+2006-12-15 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.
+ * modules/mod_ls.c: Style changes, and some additional
+ pr_signals_handle() calls in while() loops.
-2006-10-24 09:13 castaglia
+2006-12-15 castaglia <castaglia>
- * src/: ctrls.c, event.c:
- Add tracing of when control action handlers and event handlers
- are registered and unregistered.
+ * src/event.c: Use tracing for logging of events, rather than debug
+ logging.
-2006-10-23 19:40 castaglia
+2006-12-15 castaglia <castaglia>
- * contrib/mod_ban.c:
- Update the mod_ban module to be better behaved as a shared
- module.
+ * src/fsio.c: Add tracing of the FSIO API, no longer using
+ pr_log_debug().
-2006-10-23 19:32 castaglia
+2006-12-15 castaglia <castaglia>
- * src/trace.c:
- Be sure to set the trace table pointer to NULL after clearing the
- pool from which it was allocated.
+ * 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-10-23 18:34 castaglia
+2006-12-15 castaglia <castaglia>
- * contrib/mod_wrap2/: mod_wrap2.c, mod_wrap2.h.in:
- Updated mod_wrap2 to be better behaved when compiled as a shared
- module.
+ * doc/contrib/mod_ctrls_admin.html: Add docs for the 'trace' control
+ action.
-2006-10-19 19:18 jwm
+2006-12-15 castaglia <castaglia>
- * contrib/mod_ldap.c: add much more extensive debugging output
+ * NEWS, modules/mod_core.c: Bug#2849 - Error msg "Not owner"
+ returned by "SIZE in ASCII mode" is misleading.
-2006-10-13 08:00 castaglia
+2006-12-15 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.
+ * src/utf8.c: Make sure that utf8_init() and utf8_free() are present
+ for use by the linker, even if they return ENOSYS.
-2006-10-13 07:53 castaglia
+2006-12-15 castaglia <castaglia>
- * src/parser.c:
- Typo.
+ * lib/getopt.c: Make sure to reference the gettext() function only
+ when NLS support has been requested. Otherwise, confusing linker
+ errors result.
-2006-10-13 07:51 castaglia
+2006-12-15 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.
+ * src/timers.c: Add timer tracing.
-2006-10-11 09:47 castaglia
+2006-12-15 castaglia <castaglia>
- * doc/modules/mod_facl.html:
- Add small doc for the mod_facl module.
+ * include/compat.h, include/timers.h: Compatibility macros should
+ all be collected in compat.h.
-2006-10-11 09:37 castaglia
+2006-12-14 castaglia <castaglia>
- * RELEASE_NOTES, modules/mod_facl.c:
- Add a runtime directive for disabling mod_facl, if needed.
+ * locale/Makefile.in: Using the --sort-by-file option when
+ generating message catalogs.
-2006-10-05 11:01 castaglia
+2006-12-14 castaglia <castaglia>
- * src/parser.c:
- Style cleanup. Sprinkle more "pr_signals_handle()" around within
- the while loops, too.
+ * 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-10-05 10:57 castaglia
+2006-12-14 castaglia <castaglia>
- * NEWS, src/parser.c:
- Bug#2848 - Unable to properly parse config files using
- Windows-style line endings.
+ * src/inet.c: Use tracing to log when we have successfully bound an
+ address/port to a socket.
-2006-10-04 14:06 castaglia
+2006-12-14 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2847 - HiddenStores files not properly removed if data
- transfer times out.
+ * configure: Updated configure.
-2006-09-29 09:41 castaglia
+2006-12-14 castaglia <castaglia>
- * RELEASE_NOTES:
- A little more about UseIPv6, and the command-line options.
+ * 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-09-29 09:38 castaglia
+2006-12-13 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.
+ * NEWS, contrib/mod_radius.c, doc/contrib/mod_radius.html: Bug#2856
+ - Support for RADIUS NAS-Identifier attribute.
-2006-09-27 08:58 castaglia
+2006-12-13 castaglia <castaglia>
- * src/main.c:
- Reset the handler for the SIGUSR2 signal (and NOT the SIGHUP
- signal) in the sig_evnt() handler.
+ * configure: Updated configure.
-2006-09-18 09:55 castaglia
+2006-12-13 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-09-18 09:48 castaglia
+2006-12-13 castaglia <castaglia>
- * Makefile.in, configure.in, locale/Makefile.in:
- Renaming the po/ directory to locale/.
+ * modules/mod_ls.c: Use strcoll(3) both when NLS is enabled and when
+ strcoll(3) is actually present.
-2006-09-14 11:02 castaglia
+2006-12-13 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#2842 - Filesystem statcache is not correctly caching return
- value of stat().
+ * modules/mod_lang.c: Make sure that mod_lang can compile if libintl
+ support is absent.
-2006-09-13 13:49 castaglia
+2006-12-13 castaglia <castaglia>
- * configure:
- Updated configure.
+ * src/utf8.c: Make sure utf8.c can compile and run, even when iconv
+ support is lacking.
-2006-09-13 13:32 castaglia
+2006-12-12 castaglia <castaglia>
- * Makefile.in, configure.in:
- Start of a po/Makefile, for building .po files (localised message
- strings). Part of the support for RFC2640.
+ * doc/modules/mod_delay.html: Typo.
-2006-09-11 19:38 castaglia
+2006-12-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.
+ * include/version.h: Back to CVS mode, for the next RC release.
-2006-09-11 18:31 castaglia
+2006-12-12 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Remove mention of SQLHomedirOnDemand, as that directive is now
- deprecated.
+ * ChangeLog: Updated ChangeLog.
-2006-09-11 17:51 castaglia
+2006-12-12 castaglia <castaglia>
- * NEWS, RELEASE_NOTES:
- There is no 'SQLWhereClause' directive. Oops.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for 1.3.1rc1 release.
-2006-09-11 17:48 castaglia
+2006-12-12 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#2828 - Support variables in SQL Where directives.
+ * RELEASE_NOTES: Finish polishing up these release notes.
-2006-09-11 14:58 castaglia
+2006-12-12 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Document the syntax for refering to environment variables in a
- SQLNamedQuery.
+ * NEWS, src/ctrls.c: Bug#2867 - Local authorized user buffer
+ overflow in Controls request handling.
-2006-09-11 14:52 castaglia
+2006-12-11 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#2799 - SQLNamedQuery should support environment variables.
+ * src/var.c: Handle the case where the retrieved variable is NULL.
-2006-09-11 11:42 castaglia
+2006-12-11 castaglia <castaglia>
- * doc/contrib/mod_tls.html:
- Add documentation for the new TLSPassPhraseProvider directive.
+ * modules/mod_ls.c: More pedantic checks for NULL pointers.
-2006-09-11 11:33 castaglia
+2006-12-11 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c:
- Bug#2756 - Support for TLSPassPhraseProvider.
+ * 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-09-11 11:30 castaglia
+2006-12-11 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2839 - ProFTPD seems to re-read the file two times in RETR
- command.
+ * doc/howto/TLS.html: Add a mod_tls FAQ about linker errors related
+ to libdl.
-2006-09-11 10:58 castaglia
+2006-12-11 castaglia <castaglia>
- * configure:
- Updating configure.
+ * modules/mod_core.c: More safety checking of possibly NULL return
+ values.
-2006-09-11 10:55 castaglia
+2006-12-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.
+ * 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-09-08 18:15 castaglia
+2006-12-11 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.)
+ * src/log.c: Handle a possible return value of NULL from
+ localtime(3).
-2006-09-08 17:51 castaglia
+2006-12-11 castaglia <castaglia>
- * configure:
- Updated configure.
+ * src/fsio.c: Check for NULL return values from strdup(3).
-2006-09-08 17:48 castaglia
+2006-12-11 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.
+ * 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-09-08 09:41 castaglia
+2006-12-11 castaglia <castaglia>
- * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c,
- src/main.c:
- Bug#2837 - Defines improperly persist across daemon restarts.
+ * modules/mod_ls.c, modules/mod_site.c, src/fsio.c, src/trace.c: Off
+ by one.
-2006-09-08 08:46 castaglia
+2006-12-11 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Bug#2835 - Group quotas not honored for supplemental group
- membership.
+ * lib/glibc-glob.c: Paranoid null pointer check. Useful, since we
+ do use the ALTDIRFUNC flag.
-2006-09-07 09:04 castaglia
+2006-12-11 castaglia <castaglia>
- * RELEASE_NOTES:
- Typo.
+ * src/fsio.c: Make sure pr_fs_dircat() doesn't attempt to operate on
+ NULL pointers.
-2006-09-06 20:06 castaglia
+2006-12-11 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#2825 - SSL/TLS CRLs are not working properly.
+ * modules/mod_log.c: More insurance that a possible NULL value isn't
+ passed to a library call, e.g. strftime(3).
-2006-09-06 19:56 castaglia
+2006-12-11 castaglia <castaglia>
- * contrib/mod_ldap.c:
- Check for PR_USE_OPENSSL as well as HAVE_OPENSSL.
+ * 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-09-06 19:53 castaglia
+2006-12-11 castaglia <castaglia>
- * contrib/mod_sql.c:
- Correct the checks for HAVE_OPENSSL and PR_USE_OPENSSL in
- mod_sql.
+ * src/trace.c: Paranoid check for improper indices into the
+ allocated buffer.
-2006-09-06 19:49 castaglia
+2006-12-11 castaglia <castaglia>
- * contrib/mod_radius.c:
- Make the ordering of OpenSSL header inclusion a little more
- legible.
+ * src/support.c: Ensure that we don't accidentally go past the end
+ of the allocated array.
-2006-09-06 19:47 castaglia
+2006-12-11 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.
+ * modules/mod_site.c: Another possible negative array index catch.
-2006-09-06 19:27 castaglia
+2006-12-11 castaglia <castaglia>
- * configure:
- Updated configure.
+ * modules/mod_ls.c: Catch another possible situation where the index
+ used may inadvertently be -1.
-2006-09-06 19:24 castaglia
+2006-12-11 castaglia <castaglia>
- * configure.in:
- Make sure the USE_OPENSSL macro is set if mod_tls is compiled in.
+ * src/fsio.c: Pedantically fix some edge cases where an index of -1
+ might accidentally be used.
-2006-09-06 18:57 castaglia
+2006-12-07 castaglia <castaglia>
- * src/bindings.c:
- Style changes; no functional change.
+ * 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-09-06 17:30 castaglia
+2006-12-07 castaglia <castaglia>
- * NEWS:
- Added mod_wrap2 to the distro.
+ * 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-09-06 17:23 castaglia
+2006-12-06 castaglia <castaglia>
- * README.modules, RELEASE_NOTES:
- Updating docs for mention of mod_wrap2. Needs to fleshed out
- more.
+ * configure: Updated configure.
-2006-09-06 17:16 castaglia
+2006-12-06 castaglia <castaglia>
- * contrib/mod_wrap2/configure:
- Adding configure script for mod_wrap2.
+ * config.h.in, configure.in, include/conf.h: NLS support requires
+ checking for the locale.h header, and including it if necessary.
-2006-09-06 17:15 castaglia
+2006-12-06 castaglia <castaglia>
- * contrib/: mod_wrap2_file.c, mod_wrap2_sql.c:
- Adding mod_wrap2 submodules.
+ * doc/howto/DisplayFiles.html: Renamed DisplayFirstChdir to
+ DisplayChdir, and added mention of the new DisplayFileTransfer.
-2006-09-06 16:11 castaglia
+2006-12-06 castaglia <castaglia>
- * contrib/mod_wrap2/: Makefile.in, configure.in, mod_wrap2.c,
- mod_wrap2.h.in:
- Adding mod_wrap2 to the contrib/ area.
+ * 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-09-06 16:09 castaglia
+2006-12-06 castaglia <castaglia>
- * doc/contrib/: index.html, mod_wrap2.html, mod_wrap2_file.html,
- mod_wrap2_sql.html:
- Adding documentation for the mod_wrap2 et al modules.
+ * src/display.c: Use tracing, rather than debug level 10, for
+ logging about unresolved variables in Display files.
-2006-09-05 10:04 castaglia
+2006-12-06 castaglia <castaglia>
- * include/modules.h:
- The privdata structure is no longer used.
+ * src/trace.c: Add a default trace channel for logging from the
+ Variables API layer.
-2006-08-23 19:29 castaglia
+2006-12-06 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).
+ * lib/sstrncpy.c: Include the library support header libsupp.h, at
+ least, since that is what its purpose is.
-2006-08-17 09:05 castaglia
+2006-12-06 castaglia <castaglia>
- * modules/mod_ls.c:
- Fix an issue noticed by Daniel, using lftp (but not ftp).
+ * lib/sstrncpy.c: No need to pull in all of proftpd's configuration
+ for sstrncpy().
- 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.
+2006-12-05 castaglia <castaglia>
- 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.)
+ * contrib/mod_wrap2/mod_wrap2.c: More updates to the current APIs.
-2006-08-16 11:42 jwm
+2006-12-05 castaglia <castaglia>
- * contrib/mod_ldap.c: fix debug message format (thanks to mathew
- <meta at pobox.com>)
+ * contrib/mod_ban.c, contrib/mod_wrap2/mod_wrap2.c: Updating
+ mod_ban, mod_wrap2 to use newer module API names and macros.
-2006-08-09 08:39 castaglia
+2006-12-05 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.
+ * include/log.h: Use GCC pragmas for checking callers of
+ pr_log_writefile() as well.
-2006-08-04 08:11 castaglia
+2006-12-05 castaglia <castaglia>
- * doc/howto/Limit.html:
- Mention that <Limit LOGIN> does not work as expected within
- <Directory> sections.
+ * 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-08-02 11:26 castaglia
+2006-12-05 castaglia <castaglia>
- * NEWS, include/options.h, src/main.c:
- Bug#2774 - Idle clients exhibit excessive usage of system
- resources.
+ * src/support.c: Typo.
-2006-07-19 19:15 castaglia
+2006-12-05 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.
+ * src/trace.c: Add 'data' as one of the built-in trace channel
+ names.
-2006-06-29 10:16 castaglia
+2006-12-05 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Not only was the persistent_passwdf variable never used, neither
- was the _get_ppw_info() function.
+ * contrib/mod_tls.c: Add some comments reminding me why I see
+ gibberish in the debug logging, depending on the mod_tls
+ configuration.
-2006-06-29 09:00 castaglia
+2006-12-04 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.
+ * contrib/mod_tls.c: Rather than logging when CRLs have not been
+ configured, log when CRLs *are* present and being used.
-2006-06-28 09:32 castaglia
+2006-12-04 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.
+ * contrib/mod_tls.c: More paranoia. Also some minor style changes.
-2006-06-28 09:16 castaglia
+2006-12-04 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).
+ * 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-06-28 09:10 castaglia
+2006-12-04 castaglia <castaglia>
- * NEWS, contrib/mod_wrap.c:
- Bug#2810 - Incorrect use of assignment instead of comparison in
- mod_wrap.
+ * 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-06-22 13:37 castaglia
+2006-12-04 castaglia <castaglia>
- * include/lastlog.h, src/lastlog.c:
- Oops. Forgot to check these files in. They're for Bug #2610.
+ * 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-06-22 12:48 jwm
+2006-12-04 castaglia <castaglia>
- * modules/mod_ctrls.c: auth_(uid|gid)2name have become
- pr_auth_(uid|gid)2name
+ * NEWS, modules/mod_ls.c: Bug#2862 - NLST / returns a listing of the
+ current directory.
-2006-06-22 10:06 castaglia
+2006-12-04 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.
+ * modules/mod_ls.c: More paranoia. Make sure that the length
+ returned from readlink() isn't too large for our buffers.
-2006-06-22 09:08 castaglia
+2006-12-04 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.
+ * src/support.c: More defensive checking of input arguments, in
+ pr_memscrub() and sstrcat().
-2006-06-20 09:54 castaglia
+2006-12-04 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#2807 - mod_sql processes SQLLog QUIT query twice.
+ * 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-06-16 14:35 castaglia
+2006-12-04 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Remove unused variables and simplify the code.
+ * locale/Makefile.in: Be more specific about the language support
+ right now: en_US instead of en.
-2006-06-16 10:02 castaglia
+2006-12-02 castaglia <castaglia>
- * contrib/mod_ldap.c:
- auth_check() -> pr_auth_check()
+ * RELEASE_NOTES: More release notes.
-2006-06-16 10:00 castaglia
+2006-12-02 castaglia <castaglia>
- * contrib/mod_sql.c:
- Style cleanup.
+ * doc/contrib/mod_sql.html: Document the SQLOptions directive.
-2006-06-15 19:54 castaglia
+2006-12-02 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-06-15 19:52 castaglia
+2006-12-02 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.
+ * 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-06-15 19:33 castaglia
+2006-12-02 castaglia <castaglia>
- * contrib/mod_site_misc.c:
- Updating mod_site_misc to handle UTF8-encoded paths.
+ * RELEASE_NOTES: More documentation for the release notes.
-2006-06-15 19:30 castaglia
+2006-12-02 castaglia <castaglia>
- * NEWS:
- Bug#2626 - "ERROR" macro collision can cause compiler errors on
- HP-UX.
+ * configure: Updating configure.
-2006-06-15 19:28 castaglia
+2006-12-01 castaglia <castaglia>
- * Makefile.in:
- There is no real need to clean the include/ directory.
+ * 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-06-15 19:22 castaglia
+2006-12-01 castaglia <castaglia>
- * contrib/: mod_ban.c, mod_ctrls_admin.c, mod_ifsession.c,
- mod_ldap.c, mod_quotatab.c, mod_radius.c, mod_ratio.c,
- mod_readme.c, mod_rewrite.c, mod_site_misc.c, mod_sql.c,
- mod_sql_mysql.c, mod_sql_postgres.c, mod_tls.c, mod_wrap.c:
- Updating contrib modules to use PR_ERROR, PR_DECLINED, and
- PR_HANDLED.
+ * RELEASE_NOTES: Start adding more substance to the release notes,
+ in preparation for a release.
-2006-06-15 19:10 castaglia
+2006-12-01 castaglia <castaglia>
- * contrib/mod_load/mod_load.c.in:
- Update mod_load to use PR_HANDLED.
+ * locale/Makefile.in: Make errors with creating translation catalogs
+ non-fatal during the build process.
-2006-06-15 18:40 castaglia
+2006-12-01 castaglia <castaglia>
- * modules/: mod_auth.c, mod_auth_file.c, mod_auth_pam.c,
- mod_auth_unix.c, mod_cap.c, mod_core.c, mod_ctrls.c, mod_delay.c,
- mod_dso.c, mod_log.c, mod_ls.c, mod_site.c, mod_xfer.c:
- Updating the core modules to use the PR_ERROR, PR_DECLINED, and
- PR_HANDLED macros. Also includes style changes.
+ * locale/Makefile.in, locale/files.txt: More work on the Makefile
+ for generating the template message catalog for translation.
-2006-06-15 18:11 castaglia
+2006-11-30 castaglia <castaglia>
- * doc/mod_sample.c:
- Updating the sample module to reflect ongoing changes in the core
- code.
+ * contrib/ftpquota: If opening a quota table for displaying records
+ only, open the table in read-only mode, rather than read-append
+ mode.
-2006-06-15 17:53 castaglia
+2006-11-30 castaglia <castaglia>
- * modules/mod_auth.c:
- To enable lastlog support requires --with-lastlog, not
- --enable-lastlog.
+ * src/ftpdctl.c: Return a value, since the function definition
+ requires it.
-2006-06-15 17:48 castaglia
+2006-11-29 castaglia <castaglia>
- * include/: compat.h, dirtree.h, 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.
+ * 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.
- Compatibility redefines in compat.h will help to make the
- transition transparent (hopefully).
+2006-11-29 castaglia <castaglia>
-2006-06-15 17:37 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.)
- * src/main.c:
- Forgot a few places where SIG_REHASH was renamed to SIG_RESTART.
+2006-11-29 castaglia <castaglia>
-2006-06-15 17:36 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.
- * configure:
- Updating configure.
+2006-11-29 castaglia <castaglia>
-2006-06-15 17:36 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.
- * include/proftpd.h, src/main.c:
- Remove all the old "struct rehash" callback stuff. Replace
- mention of "rehash" with "restart".
+2006-11-28 jwm <jwm>
-2006-06-15 17:32 castaglia
+ * 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
- * 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-11-27 jwm <jwm>
-2006-06-15 17:26 castaglia
+ * src/support.c: Bug #2858 - CVE-2006-5815: remote code execution in
+ ProFTPD
- * Make.rules.in, Makefile.in, NEWS, configure.in,
- include/Makefile.in:
- Bug#2719 - ProFTPD should install its header files into the
- installation location.
+2006-11-17 jwm <jwm>
-2006-06-15 16:00 castaglia
+ * 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
- * include/.cvsignore:
- Preparing to ignore the generated Makefile that will appear in
- the include/ directory.
+2006-11-01 castaglia <castaglia>
-2006-06-15 14:40 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.
- * configure:
- Updating configure.
+2006-11-01 castaglia <castaglia>
-2006-06-15 13:53 castaglia
+ * lib/sstrncpy.c, src/support.c, utils/misc.c: Prevent sstrcat() and
+ sstrncpy() from working on buffers if the length argument is zero.
- * 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-11-01 castaglia <castaglia>
-2006-06-14 19:39 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.
- * 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-11-01 castaglia <castaglia>
-2006-06-14 18:54 castaglia
+ * src/netio.c: Require that callers of pr_netio_gets() and
+ pr_netio_telnet_gets() specify a non-zero buffer length.
- * include/pool.h, src/pool.c:
- Removing unused pool code.
+2006-11-01 castaglia <castaglia>
-2006-06-14 18:43 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.
- * doc/contrib/mod_sql.html:
- Update the mod_sql docs, as per changes for Bug #2784.
+2006-10-31 castaglia <castaglia>
- Remove the list of deprecated directives from ancient mod_sql
- versions.
+ * 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-06-14 18:39 castaglia
+2006-10-30 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql_mysql.c:
- Bug#2784 - Ability to specify MySQL Unix domain socket path.
+ * doc/howto/SQL.html: Add an example of using Python to generate an
+ OpenSSL-encoded mod_sql password string.
-2006-06-14 17:26 castaglia
+2006-10-25 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_core.c:
- Bug#2798 - MDTM should return time in GMT.
+ * src/ftpdctl.c: Add stub for pr_trace_msg(), so that linking
+ ftpdctl does not fail.
-2006-06-14 16:50 castaglia
+2006-10-24 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#2687 - Support for more efficient group table schema.
+ * src/event.c: Allocate a larger event pool (ref Bug #2850).
-2006-06-14 16:33 castaglia
+2006-10-24 castaglia <castaglia>
- * src/utf8.c:
- Use "C" as a default local character set, if we cannot determine
- a better one.
+ * 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-06-14 13:42 castaglia
+2006-10-24 castaglia <castaglia>
- * src/utf8.c:
- Add a trace message of the character set to which UTF8 conversion
- will be done.
+ * src/ctrls.c, src/event.c: Add tracing of when control action
+ handlers and event handlers are registered and unregistered.
-2006-06-14 10:53 castaglia
+2006-10-24 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)).
+ * contrib/mod_ban.c: Update the mod_ban module to be better behaved
+ as a shared module.
-2006-06-14 08:10 castaglia
+2006-10-24 castaglia <castaglia>
- * NEWS, src/log.c:
- Bug#2801 - Error compiling proftpd on NetBSD 3.0/sparc64.
+ * src/trace.c: Be sure to set the trace table pointer to NULL after
+ clearing the pool from which it was allocated.
-2006-06-14 08:04 castaglia
+2006-10-24 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.
+ * 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-06-13 15:14 castaglia
+2006-10-20 jwm <jwm>
- * src/scoreboard.c:
- Silence compiler warning (seen under --enable-devel) by renaming
- variable.
+ * contrib/mod_ldap.c: add much more extensive debugging output
-2006-06-12 09:03 castaglia
+2006-10-13 castaglia <castaglia>
- * doc/howto/DSO.html:
- Update example Makefile to include DESTDIR.
+ * src/parser.c: Treat a trailing LF as the eol marker; no need to
+ treat any CRs before that LF as eol markers.
-2006-06-12 09:02 castaglia
+2006-10-13 castaglia <castaglia>
- * contrib/mod_load/Makefile.in:
- Make sure that mod_load's Makefile honors DESTDIR. Thanks to Ken
- Zalewski for pointing this out.
+ * src/parser.c: Typo.
-2006-06-09 11:29 castaglia
+2006-10-13 castaglia <castaglia>
- * doc/contrib/mod_sql.html:
- Typo.
+ * 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-06-09 10:24 castaglia
+2006-10-11 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating the release notes.
+ * doc/modules/mod_facl.html: Add small doc for the mod_facl module.
-2006-06-09 10:21 castaglia
+2006-10-11 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.
+ * RELEASE_NOTES, modules/mod_facl.c: Add a runtime directive for
+ disabling mod_facl, if needed.
-2006-06-08 12:07 castaglia
+2006-10-05 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.
+ * src/parser.c: Style cleanup. Sprinkle more "pr_signals_handle()"
+ around within the while loops, too.
-2006-06-08 12:00 castaglia
+2006-10-05 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.
+ * NEWS, src/parser.c: Bug#2848 - Unable to properly parse config
+ files using Windows-style line endings.
-2006-06-08 10:51 castaglia
+2006-10-04 castaglia <castaglia>
- * configure:
- Updating configure.
+ * NEWS, modules/mod_xfer.c: Bug#2847 - HiddenStores files not
+ properly removed if data transfer times out.
-2006-06-08 10:46 castaglia
+2006-09-29 castaglia <castaglia>
- * configure.in:
- Fixing typo in handling of --enable-devel=profile configure
- option.
+ * RELEASE_NOTES: A little more about UseIPv6, and the command-line
+ options.
-2006-06-07 09:50 castaglia
+2006-09-29 castaglia <castaglia>
- * doc/howto/Chroot.html:
- Bug#1323: DefaultRoot not working with nfs root squash +
- protected directories.
+ * 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-05-26 10:29 castaglia
+2006-09-27 castaglia <castaglia>
- * configure:
- Updated configure script.
+ * src/main.c: Reset the handler for the SIGUSR2 signal (and NOT the
+ SIGHUP signal) in the sig_evnt() handler.
-2006-05-26 10:20 castaglia
+2006-09-18 castaglia <castaglia>
- * modules/mod_core.c:
- Modify mod_core for handling UTF8 paths, and mark it for i18n.
+ * configure: Updating configure.
-2006-05-26 10:16 castaglia
+2006-09-18 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).
+ * Makefile.in, configure.in, locale/Makefile.in: Renaming the po/
+ directory to locale/.
-2006-05-26 09:59 castaglia
+2006-09-14 castaglia <castaglia>
- * src/trace.c:
- Change the format of the TraceLog: The log entry does not need to
- contain any server information.
+ * NEWS, src/fsio.c: Bug#2842 - Filesystem statcache is not correctly
+ caching return value of stat().
-2006-05-26 09:43 castaglia
+2006-09-13 castaglia <castaglia>
- * src/: table.c, 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.
+ * configure: Updated configure.
-2006-05-26 08:35 castaglia
+2006-09-13 castaglia <castaglia>
- * NEWS:
- Correct a bug number.
+ * 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-05-25 10:01 castaglia
+2006-09-12 castaglia <castaglia>
- * configure:
- Updating configure.
+ * modules/mod_auth.c: If MaxLoginAttempts is exceeded, mention in
+ the generated log message that we are refusing the client's
+ connection.
-2006-05-25 09:55 castaglia
+2006-09-12 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.
+ * doc/contrib/mod_sql.html: Remove mention of SQLHomedirOnDemand, as
+ that directive is now deprecated.
- Part of the work towards making the proftpd source i18n/l10n
- ready.
+2006-09-12 castaglia <castaglia>
-2006-05-25 08:46 castaglia
+ * NEWS, RELEASE_NOTES: There is no 'SQLWhereClause' directive.
+ Oops.
- * NEWS, RELEASE_NOTES, modules/mod_log.c:
- Bug#2793 - LogFormat variable for the ProFTPD version.
+2006-09-12 castaglia <castaglia>
-2006-05-25 08:44 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2828 - Support
+ variables in SQL Where directives.
- * NEWS, RELEASE_NOTES, modules/mod_xfer.c:
- Bug#2775 - Support for DisplayFileTransfer directive.
+2006-09-11 castaglia <castaglia>
-2006-05-24 08:00 castaglia
+ * doc/contrib/mod_sql.html: Document the syntax for refering to
+ environment variables in a SQLNamedQuery.
- * README.AIX:
- Updating the AIX notes with remarks about gcc versions which do
- and don't work.
+2006-09-11 castaglia <castaglia>
-2006-05-23 10:34 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2799 - SQLNamedQuery
+ should support environment variables.
- * NEWS, modules/mod_ctrls.c:
- Bug#2792 - ProFTPD fails after SIGHUP signal when Controls
- support is enabled.
+2006-09-11 castaglia <castaglia>
-2006-05-23 10:31 castaglia
+ * doc/contrib/mod_tls.html: Add documentation for the new
+ TLSPassPhraseProvider directive.
- * src/dirtree.c:
- Style tweaks. Add handling of signals to a while() loop.
+2006-09-11 castaglia <castaglia>
-2006-05-23 08:06 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c: Bug#2756 - Support for
+ TLSPassPhraseProvider.
- * configure:
- Updating configure script.
+2006-09-11 castaglia <castaglia>
-2006-05-23 08:02 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2839 - ProFTPD seems to re-read the
+ file two times in RETR command.
- * 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-09-11 castaglia <castaglia>
-2006-05-23 07:55 castaglia
+ * configure: Updating configure.
- * 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.
+2006-09-11 castaglia <castaglia>
- 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.
+ * 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-05-22 09:45 castaglia
+2006-09-09 castaglia <castaglia>
- * contrib/mod_tls.c:
- Remove Perlism causing a broken module. Add handling of signals
- to a potentially long-running while loop.
+ * 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-05-22 09:22 castaglia
+2006-09-09 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#2514 - Trouble with mod_tls and DSA certificates.
+ * configure: Updated configure.
-2006-05-19 15:07 castaglia
+2006-09-09 castaglia <castaglia>
- * src/netaddr.c:
- Fix some compiler warnings, and a syntax error.
+ * 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-05-18 09:45 castaglia
+2006-09-08 castaglia <castaglia>
- * src/trace.c:
- If pr_trace_msg() is used with an unknown channel, return -1
- rather than 0.
+ * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c,
+ src/main.c: Bug#2837 - Defines improperly persist across daemon
+ restarts.
-2006-05-18 08:57 castaglia
+2006-09-08 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * NEWS, contrib/mod_quotatab.c: Bug#2835 - Group quotas not honored
+ for supplemental group membership.
-2006-05-18 08:38 castaglia
+2006-09-07 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.
+ * RELEASE_NOTES: Typo.
-2006-05-17 17:47 castaglia
+2006-09-07 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.
+ * NEWS, contrib/mod_tls.c: Bug#2825 - SSL/TLS CRLs are not working
+ properly.
-2006-05-17 09:18 castaglia
+2006-09-07 castaglia <castaglia>
- * NEWS, README.IPv6, src/netacl.c, src/netaddr.c:
- More work on Bug#2785.
+ * contrib/mod_ldap.c: Check for PR_USE_OPENSSL as well as
+ HAVE_OPENSSL.
-2006-05-15 14:42 castaglia
+2006-09-07 castaglia <castaglia>
- * doc/howto/DSO.html:
- Make note of some of the errors you might encounter when using
- DSO modules.
+ * contrib/mod_sql.c: Correct the checks for HAVE_OPENSSL and
+ PR_USE_OPENSSL in mod_sql.
-2006-05-15 09:32 castaglia
+2006-09-07 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.
+ * contrib/mod_radius.c: Make the ordering of OpenSSL header
+ inclusion a little more legible.
-2006-05-12 14:53 castaglia
+2006-09-07 castaglia <castaglia>
- * README.AIX:
- Document that some versions of AIX have sendfile issues.
+ * 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-05-05 09:02 castaglia
+2006-09-07 castaglia <castaglia>
- * contrib/mod_tls.c:
- Clean up the handling of the TLSCACertificatePath directive.
+ * configure: Updated configure.
-2006-04-21 09:37 castaglia
+2006-09-07 castaglia <castaglia>
- * contrib/mod_quotatab.c, doc/contrib/mod_quotatab.html:
- Forgot to add the description for the QuotaExcludeFilter
- directive.
+ * configure.in: Make sure the USE_OPENSSL macro is set if mod_tls is
+ compiled in.
-2006-04-21 09:26 castaglia
+2006-09-07 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.
+ * src/bindings.c: Style changes; no functional change.
-2006-04-20 19:04 castaglia
+2006-09-07 castaglia <castaglia>
- * contrib/mod_sql.h:
- Update the mod_sql header. Crufty information, and a typo.
+ * NEWS: Added mod_wrap2 to the distro.
-2006-04-20 19:02 castaglia
+2006-09-07 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.
+ * README.modules, RELEASE_NOTES: Updating docs for mention of
+ mod_wrap2. Needs to fleshed out more.
-2006-04-20 18:59 castaglia
+2006-09-07 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql_mysql.c, 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.
+ * contrib/mod_wrap2/configure: Adding configure script for
+ mod_wrap2.
-2006-04-20 18:32 castaglia
+2006-09-07 castaglia <castaglia>
- * NEWS, README.modules, RELEASE_NOTES, contrib/mod_ban.c,
- doc/contrib/mod_ban.html:
- Adding mod_ban.
+ * contrib/mod_wrap2_file.c, contrib/mod_wrap2_sql.c: Adding
+ mod_wrap2 submodules.
-2006-04-20 10:03 castaglia
+2006-09-06 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#2733 - IP TOS not being set for data transfers.
+ * 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-04-19 19:28 castaglia
+2006-09-06 castaglia <castaglia>
- * src/parser.c:
- Adding some sanity checks for NULL pointers, pointed out by
- Coverity scans. Also remove some unnecessary conditionals.
+ * 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-04-19 19:24 castaglia
+2006-09-05 castaglia <castaglia>
- * modules/mod_log.c:
- "writeable" -> "writable".
+ * include/modules.h: The privdata structure is no longer used.
-2006-04-19 19:06 castaglia
+2006-08-24 castaglia <castaglia>
- * modules/mod_xfer.c:
- Clean up dead code spotted by Coverity scan.
+ * 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-04-19 19:01 castaglia
+2006-08-17 castaglia <castaglia>
- * modules/mod_auth.c:
- Clean up dead code spotted by Coverity scan. Also fixup some
- formatting issues while I'm here.
+ * 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-04-19 18:46 castaglia
+2006-08-16 jwm <jwm>
- * src/data.c, modules/mod_auth_file.c:
- Clean up dead code spotted by Coverity scan.
+ * contrib/mod_ldap.c: fix debug message format (thanks to mathew
+ <meta at pobox.com>)
-2006-04-19 18:42 castaglia
+2006-08-09 castaglia <castaglia>
- * contrib/mod_sql.c:
- Clean up dead code spotted by Coverity.
+ * modules/mod_core.c: Prevent users from misconfiguring their
+ servers silently by trying to use something like "<Global ~user>" in
+ their proftpd.conf.
-2006-04-19 16:10 castaglia
+2006-08-04 castaglia <castaglia>
- * RELEASE_NOTES, modules/mod_xfer.c:
- Get the ball rolling on deprecating HiddenStor, in favor of
- HiddenStores.
+ * doc/howto/Limit.html: Mention that <Limit LOGIN> does not work as
+ expected within <Directory> sections.
-2006-04-19 09:59 castaglia
+2006-08-02 castaglia <castaglia>
- * configure:
- Updating configure.
+ * NEWS, include/options.h, src/main.c: Bug#2774 - Idle clients
+ exhibit excessive usage of system resources.
-2006-04-19 09:56 castaglia
+2006-07-20 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.
+ * 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-04-19 09:44 castaglia
+2006-06-29 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.
+ * modules/mod_auth_unix.c: Not only was the persistent_passwdf
+ variable never used, neither was the _get_ppw_info() function.
-2006-04-17 15:48 castaglia
+2006-06-29 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, modules/mod_log.c:
- Bug#2651 - LogFormat should support variable for logging the
- response message.
+ * 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-04-17 15:38 castaglia
+2006-06-28 castaglia <castaglia>
- * doc/contrib/: mod_quotatab.html, mod_quotatab_radius.html:
- Update mod_quotatab docs with links to RADIUS submodule.
+ * 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-04-17 15:35 castaglia
+2006-06-28 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.
+ * 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-04-17 15:23 castaglia
+2006-06-28 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.
+ * NEWS, contrib/mod_wrap.c: Bug#2810 - Incorrect use of assignment
+ instead of comparison in mod_wrap.
-2006-04-17 15:22 castaglia
+2006-06-22 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.
+ * include/lastlog.h, src/lastlog.c: Oops. Forgot to check these
+ files in. They're for Bug #2610.
-2006-04-17 15:20 castaglia
+2006-06-22 jwm <jwm>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#2628 - SQLHomedirOnDemand should be deprecated.
+ * modules/mod_ctrls.c: auth_(uid|gid)2name have become
+ pr_auth_(uid|gid)2name
-2006-04-17 14:01 castaglia
+2006-06-22 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html:
+ * 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.
- Bug#2686 - Allow CCC command but still require SSL/TLS protection
- during authentication.
+2006-06-22 castaglia <castaglia>
-2006-04-17 11:52 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.
- * NEWS, RELEASE_NOTES, modules/mod_auth.c,
- doc/howto/CreateHome.html, doc/howto/index.html, src/mkhome.c:
- Bug#2611 - CreateHome should allow non-root-owned parent
- directories.
+2006-06-20 castaglia <castaglia>
-2006-04-17 11:39 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2807 - mod_sql processes SQLLog QUIT
+ query twice.
- * NEWS, RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html:
+2006-06-16 castaglia <castaglia>
- Bug#2599 - Support for using OpenSSL "engines".
+ * modules/mod_auth_unix.c: Remove unused variables and simplify the
+ code.
-2006-04-17 10:53 castaglia
+2006-06-16 castaglia <castaglia>
- * configure:
- Updating configure.
+ * contrib/mod_ldap.c: auth_check() -> pr_auth_check()
-2006-04-17 10:04 castaglia
+2006-06-16 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.
+ * contrib/mod_sql.c: Style cleanup.
-2006-04-17 09:48 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, doc/modules/mod_delay.html, modules/mod_delay.c:
- Bug#2664 - Add 'delay info' ftpdctl action for showing DelayTable
- values.
+ * configure: Updating configure.
-2006-04-17 09:20 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#2777 - ProFTPD does handle data sockets properly on FreeBSD
- 6.
+ * config.h.in, configure.in, src/main.c: Enhance the -V output to
+ include the CFLAGS, LDFLAGS, and LIBS used to compile proftpd.
-2006-04-16 16:18 castaglia
+2006-06-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.
+ * contrib/mod_site_misc.c: Updating mod_site_misc to handle
+ UTF8-encoded paths.
-2006-04-16 16:08 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2740 - TYPE command not allowed before USER/PASS, causes
- problem for `ftp -n'.
+ * NEWS: Bug#2626 - "ERROR" macro collision can cause compiler errors
+ on HP-UX.
-2006-04-16 16:01 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#2654 - FEAT command should be subject to <Limit>.
+ * Makefile.in: There is no real need to clean the include/
+ directory.
-2006-04-16 15:51 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#2753 - CCC not closing SSL/TLS connection correctly.
+ * 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-04-16 15:45 castaglia
+2006-06-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.
+ * contrib/mod_load/mod_load.c.in: Update mod_load to use PR_HANDLED.
-2006-04-16 15:41 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, modules/mod_auth_unix.c:
- Bug#2721 - mod_auth_unix does not behave properly when first in
- AuthOrder.
+ * 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-04-16 15:39 castaglia
+2006-06-16 castaglia <castaglia>
- * NEWS, modules/mod_auth_file.c, modules/mod_auth_unix.c:
- Bug#2714 - mod_auth_file munges AuthUserFile, AuthGroupFile
- records.
+ * doc/mod_sample.c: Updating the sample module to reflect ongoing
+ changes in the core code.
-2006-04-16 15:35 castaglia
+2006-06-16 castaglia <castaglia>
- * doc/howto/Debugging.html:
- Adding mention of the stack trace logging to the Debugging howto.
+ * modules/mod_auth.c: To enable lastlog support requires
+ --with-lastlog, not --enable-lastlog.
-2006-04-16 15:25 castaglia
+2006-06-16 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-04-16 15:23 castaglia
+2006-06-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.
+ * src/main.c: Forgot a few places where SIG_REHASH was renamed to
+ SIG_RESTART.
-2006-04-16 15:12 castaglia
+2006-06-16 castaglia <castaglia>
- * include/version.h:
- Now that 1.3.0 is out, we can start on 1.3.1.
+ * configure: Updating configure.
-2006-04-16 14:39 castaglia
+2006-06-16 castaglia <castaglia>
- * ChangeLog:
- Updating the ChangeLog.
+ * include/proftpd.h, src/main.c: Remove all the old "struct rehash"
+ callback stuff. Replace mention of "rehash" with "restart".
-2006-04-16 14:36 castaglia
+2006-06-16 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec, include/version.h, NEWS:
- Preparing for release of 1.3.0-final.
+ * 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-04-10 09:41 castaglia
+2006-06-16 castaglia <castaglia>
- * lib/glibc-mkstemp.c:
- Fix typo in mkstemp() implementation, noted by Charles Seeger.
+ * Make.rules.in, Makefile.in, NEWS, configure.in,
+ include/Makefile.in: Bug#2719 - ProFTPD should install its header
+ files into the installation location.
-2006-04-07 18:20 castaglia
+2006-06-15 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.
+ * include/.cvsignore: Preparing to ignore the generated Makefile
+ that will appear in the include/ directory.
-2006-03-22 14:10 castaglia
+2006-06-15 castaglia <castaglia>
- * NEWS, lib/glibc-glob.c, lib/pwgrent.c, src/fsio.c:
- Quell several compiler warnings:
+ * configure: Updating configure.
- 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-06-15 castaglia <castaglia>
-2006-03-22 13:45 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.
- * Make.rules.in, NEWS:
- Bug#2733 - libtool requires sh/bash.
+2006-06-15 castaglia <castaglia>
-2006-03-22 10:51 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.)
- * utils/: ftptop.c, 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-06-15 castaglia <castaglia>
-2006-03-18 12:15 castaglia
+ * include/pool.h, src/pool.c: Removing unused pool code.
- * ChangeLog:
- Updated ChangeLog.
+2006-06-15 castaglia <castaglia>
-2006-03-18 12:13 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.
- * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Rolling up RC5 release.
+2006-06-15 castaglia <castaglia>
-2006-03-17 10:52 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql_mysql.c: Bug#2784 - Ability
+ to specify MySQL Unix domain socket path.
- * NEWS, modules/mod_delay.c:
- Bug#2723 - mod_delay causes process to hang on OS X when proftpd
- exits.
+2006-06-15 castaglia <castaglia>
-2006-03-16 18:12 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_core.c: Bug#2798 - MDTM should
+ return time in GMT.
- * RELEASE_NOTES:
- Updating the release notes for the RC5 release.
+2006-06-14 castaglia <castaglia>
-2006-03-16 10:06 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2687 - Support for
+ more efficient group table schema.
- * README.controls, doc/howto/Controls.html:
- Make notes about how Controls are affected by ServerType.
+2006-06-14 castaglia <castaglia>
-2006-03-15 11:41 castaglia
+ * src/utf8.c: Use "C" as a default local character set, if we cannot
+ determine a better one.
- * src/main.c:
- We need to copy the session addresses into memory after any
- reverse DNS resolution is performed, not before.
+2006-06-14 castaglia <castaglia>
-2006-03-14 19:56 castaglia
+ * src/utf8.c: Add a trace message of the character set to which UTF8
+ conversion will be done.
- * 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-06-14 castaglia <castaglia>
-2006-03-14 18:49 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)).
- * modules/mod_auth.c:
- Remove slightly misleading (and outdated) comment.
+2006-06-14 castaglia <castaglia>
-2006-03-14 18:47 castaglia
+ * NEWS, src/log.c: Bug#2801 - Error compiling proftpd on NetBSD
+ 3.0/sparc64.
- * 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-06-14 castaglia <castaglia>
-2006-03-14 18:09 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2800 - free_proc_title() in developer
+ build tries to free strings from pool allocated by mod_tls.
- * NEWS, modules/mod_auth.c:
- Bug#2717 - Wrong timestamp in logs for chrooted processes.
+2006-06-13 castaglia <castaglia>
-2006-03-13 19:18 castaglia
+ * src/scoreboard.c: Silence compiler warning (seen under
+ --enable-devel) by renaming variable.
- * NEWS, modules/mod_xfer.c:
- Bug#2764 - REST command does not return an error for negative
- numbers.
+2006-06-12 castaglia <castaglia>
-2006-03-11 16:16 castaglia
+ * doc/howto/DSO.html: Update example Makefile to include DESTDIR.
- * include/privs.h:
- Remove some duplicating logging in the PRIVS_RELINQUISH macro
- definition.
+2006-06-12 castaglia <castaglia>
-2006-03-11 09:27 castaglia
+ * contrib/mod_load/Makefile.in: Make sure that mod_load's Makefile
+ honors DESTDIR. Thanks to Ken Zalewski for pointing this out.
- * include/version.h:
- Forgot to change the status back to "CVS", for now.
+2006-06-09 castaglia <castaglia>
-2006-03-09 10:50 castaglia
+ * doc/contrib/mod_sql.html: Typo.
- * doc/contrib/mod_sql.html:
- Add description of the SQLBackend directive.
+2006-06-09 castaglia <castaglia>
-2006-03-09 10:20 castaglia
+ * RELEASE_NOTES: Updating the release notes.
- * configure:
- Updating configure.
+2006-06-09 castaglia <castaglia>
-2006-03-09 10:12 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.
- * configure.in:
- Updating changes made for fixing Bug#2759 so that the libsupp
- library can be found.
+2006-06-08 castaglia <castaglia>
-2006-03-08 11:11 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.
- * configure:
- Updating configure.
+2006-06-08 castaglia <castaglia>
-2006-03-08 11:06 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.
- * NEWS, configure.in:
- Bug#2759 - Adding --with-includes to configure can cause problems
- when building with other packages.
+2006-06-08 castaglia <castaglia>
-2006-03-06 13:49 castaglia
+ * configure: Updating configure.
- * doc/howto/NAT.html:
- Add a description of what can happen if the configured
- PassivePorts range is too small.
+2006-06-08 castaglia <castaglia>
-2006-03-06 10:17 castaglia
+ * configure.in: Fixing typo in handling of --enable-devel=profile
+ configure option.
- * NEWS, contrib/dist/rpm/proftpd.spec:
- Bug#2757 - Add support for quota modules to RPM spec.
+2006-06-07 castaglia <castaglia>
-2006-03-01 09:00 castaglia
+ * doc/howto/Chroot.html: Bug#1323: DefaultRoot not working with nfs
+ root squash + protected directories.
- * RELEASE_NOTES:
- Updating release notes.
+2006-05-26 castaglia <castaglia>
-2006-03-01 08:45 castaglia
+ * configure: Updated configure script.
- * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Preparing for release of 1.3.0rc4.
+2006-05-26 castaglia <castaglia>
-2006-02-23 15:01 castaglia
+ * modules/mod_core.c: Modify mod_core for handling UTF8 paths, and
+ mark it for i18n.
- * doc/rfc/: draft-murray-auth-ftp-ssl-15.txt, rfc4217.txt:
- The old IETF Draft which defined FTPS was finally upgraded to a
- full-fledged RFC in Nov 2005, as RFC4217.
+2006-05-26 castaglia <castaglia>
-2006-02-23 14:42 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).
- * doc/howto/SQL.html:
- Added FAQ about libz linker errors to SQL howto.
+2006-05-26 castaglia <castaglia>
-2006-02-21 09:51 castaglia
+ * src/trace.c: Change the format of the TraceLog: The log entry does
+ not need to contain any server information.
- * 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-05-26 castaglia <castaglia>
-2006-02-20 22:55 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.
- * NEWS, modules/mod_core.c: Bug#2752 - FEAT reply not RFC 2389
- compliant.
+2006-05-26 castaglia <castaglia>
-2006-02-07 17:25 castaglia
+ * NEWS: Correct a bug number.
- * 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-05-25 castaglia <castaglia>
-2006-01-11 05:55 castaglia
+ * configure: Updating configure.
- * doc/howto/: index.html, AuthFiles.html:
- Added the AuthFiles howto (it was referenced by the ConfigFile
- howto).
+2006-05-25 castaglia <castaglia>
-2006-01-04 05:31 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.
- * 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.
+2006-05-25 castaglia <castaglia>
-2005-12-27 10:29 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_log.c: Bug#2793 - LogFormat
+ variable for the ProFTPD version.
- * RELEASE_NOTES:
- Mention the OSX tweaks in the Release Notes.
+2006-05-25 castaglia <castaglia>
-2005-12-26 19:04 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_xfer.c: Bug#2775 - Support for
+ DisplayFileTransfer directive.
- * 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.
+2006-05-24 castaglia <castaglia>
-2005-12-19 10:59 castaglia
+ * README.AIX: Updating the AIX notes with remarks about gcc versions
+ which do and don't work.
- * NEWS, modules/mod_xfer.c:
- Bug#2735 - Allow REST 0 in ASCII mode.
+2006-05-23 castaglia <castaglia>
-2005-12-13 09:54 castaglia
+ * NEWS, modules/mod_ctrls.c: Bug#2792 - ProFTPD fails after SIGHUP
+ signal when Controls support is enabled.
- * NEWS, contrib/mod_sql.c:
- Bug#2709 - mod_sql improperly strips spaces from names, allowing
- for confusing authentication.
+2006-05-23 castaglia <castaglia>
-2005-12-07 14:15 castaglia
+ * src/dirtree.c: Style tweaks. Add handling of signals to a while()
+ loop.
- * NEWS, modules/mod_auth_pam.c:
- Bug#2729 - Authorative PAM authentication doesn't work.
+2006-05-23 castaglia <castaglia>
-2005-12-05 11:17 castaglia
+ * configure: Updating configure script.
- * RELEASE_NOTES, doc/howto/Quotas.html, doc/howto/index.html:
- Adding Quotas howto to doc/ area.
+2006-05-23 castaglia <castaglia>
-2005-12-02 10:34 jwm
+ * 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.
- * 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.
+2006-05-23 castaglia <castaglia>
-2005-12-02 09:04 jwm
+ * 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.
- * 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
+2006-05-22 castaglia <castaglia>
-2005-12-02 08:51 jwm
+ * contrib/mod_tls.c: Remove Perlism causing a broken module. Add
+ handling of signals to a potentially long-running while loop.
- * 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
+2006-05-22 castaglia <castaglia>
-2005-11-29 10:19 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2514 - Trouble with mod_tls and DSA
+ certificates.
- * doc/contrib/mod_tls.html:
- Adding more specific instructions for what a
- TLSCertificateChainFile should contain.
+2006-05-19 castaglia <castaglia>
-2005-11-28 18:42 castaglia
+ * src/netaddr.c: Fix some compiler warnings, and a syntax error.
- * 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.
+2006-05-18 castaglia <castaglia>
-2005-11-19 11:44 castaglia
+ * src/trace.c: If pr_trace_msg() is used with an unknown channel,
+ return -1 rather than 0.
- * doc/howto/DSO.html:
- Adding more comments to the DSO howto, based on user
- feedback/questions.
+2006-05-18 castaglia <castaglia>
-2005-11-16 08:04 jwm
+ * configure: Updating configure script.
- * contrib/mod_ldap.c: release 2.8.16
+2006-05-18 castaglia <castaglia>
-2005-11-15 12:01 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.
- * doc/contrib/mod_quotatab.html:
- Formatting changes.
+2006-05-18 castaglia <castaglia>
-2005-11-15 11:44 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.
- * 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.
+2006-05-17 castaglia <castaglia>
-2005-11-14 09:47 castaglia
+ * NEWS, README.IPv6, src/netacl.c, src/netaddr.c: More work on
+ Bug#2785.
- * doc/contrib/mod_tls.html:
- Update description of AllowDotLogin TLSOption, as proftpd now
- will not prompt for a password if none is required.
+2006-05-15 castaglia <castaglia>
-2005-11-14 08:33 castaglia
+ * doc/howto/DSO.html: Make note of some of the errors you might
+ encounter when using DSO modules.
- * 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.
+2006-05-15 castaglia <castaglia>
- 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.
+ * 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.
- Thanks to Kostantinos Koukopoulos for the patch.
+2006-05-12 castaglia <castaglia>
-2005-11-12 10:25 castaglia
+ * README.AIX: Document that some versions of AIX have sendfile
+ issues.
- * NEWS, modules/mod_core.c:
- Bug#2712 - DisplayFirstChdir directive does not work.
+2006-05-05 castaglia <castaglia>
-2005-11-11 13:05 castaglia
+ * contrib/mod_tls.c: Clean up the handling of the
+ TLSCACertificatePath directive.
- * NEWS, include/ctrls.h, modules/mod_ctrls.c, src/ctrls.c:
- Bug#2711 - Controls socket detection broken.
+2006-04-21 castaglia <castaglia>
-2005-11-10 11:14 castaglia
+ * contrib/mod_quotatab.c, doc/contrib/mod_quotatab.html: Forgot to
+ add the description for the QuotaExcludeFilter directive.
- * src/ctrls.c:
- Copy the full length of the socket path, including the
- terminating NUL.
+2006-04-21 castaglia <castaglia>
-2005-11-08 09:59 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.
- * 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.
+2006-04-21 castaglia <castaglia>
-2005-11-08 08:13 castaglia
+ * contrib/mod_sql.h: Update the mod_sql header. Crufty information,
+ and a typo.
- * configure:
- Updating configure.
+2006-04-21 castaglia <castaglia>
-2005-11-08 08:06 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.
- * NEWS, configure.in:
- Bug#2708 - configure cannot detect some headers.
+2006-04-21 castaglia <castaglia>
-2005-11-04 08:36 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.
- * NEWS, src/log.c:
- Bug#2706 - utmp/wtmp logging on NetBSD needs some tweaks.
+2006-04-21 castaglia <castaglia>
-2005-11-04 08:34 castaglia
+ * NEWS, README.modules, RELEASE_NOTES, contrib/mod_ban.c,
+ doc/contrib/mod_ban.html: Adding mod_ban.
- * NEWS, modules/mod_xfer.c:
- Bug#2703 - Disk quota exceeded for small files not being
- triggered.
+2006-04-20 castaglia <castaglia>
-2005-10-31 15:23 castaglia
+ * NEWS, src/inet.c: Bug#2733 - IP TOS not being set for data
+ transfers.
- * include/version.h:
- Bump version to 1.3.0rc4 (hopefully will turn out to be
- 1.3.0-stable).
+2006-04-20 castaglia <castaglia>
-2005-10-31 09:45 castaglia
+ * src/parser.c: Adding some sanity checks for NULL pointers, pointed
+ out by Coverity scans. Also remove some unnecessary conditionals.
- * ChangeLog:
- One more update.
+2006-04-20 castaglia <castaglia>
-2005-10-31 09:39 castaglia
+ * modules/mod_log.c: "writeable" -> "writable".
- * src/fsio.c:
- Correct usage of pr_fsio_readlink().
+2006-04-20 castaglia <castaglia>
-2005-10-31 09:34 castaglia
+ * modules/mod_xfer.c: Clean up dead code spotted by Coverity scan.
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec:
- Preparing for 1.3.0rc3 roll.
+2006-04-20 castaglia <castaglia>
-2005-10-31 09:32 castaglia
+ * modules/mod_auth.c: Clean up dead code spotted by Coverity scan.
+ Also fixup some formatting issues while I'm here.
- * ChangeLog:
- Updating ChangeLog.
+2006-04-20 castaglia <castaglia>
-2005-10-28 08:54 castaglia
+ * modules/mod_auth_file.c, src/data.c: Clean up dead code spotted by
+ Coverity scan.
- * RELEASE_NOTES:
- Updating release notes.
+2006-04-20 castaglia <castaglia>
-2005-10-26 16:36 castaglia
+ * contrib/mod_sql.c: Clean up dead code spotted by Coverity.
- * src/fsio.c:
- Drat. Forgot to replace all occurrences of ->readlink() with
- pr_fsio_readlink().
+2006-04-19 castaglia <castaglia>
-2005-10-26 09:53 castaglia
+ * RELEASE_NOTES, modules/mod_xfer.c: Get the ball rolling on
+ deprecating HiddenStor, in favor of HiddenStores.
- * modules/mod_facl.c:
- Use direct pointer assignment rather than acl_copy_entry(); the
- latter is not needed. Patch supplied by Patrick McHardy.
+2006-04-19 castaglia <castaglia>
-2005-10-26 09:34 castaglia
+ * configure: Updating configure.
- * 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.
+2006-04-19 castaglia <castaglia>
-2005-10-26 09:19 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.
- * 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.
+2006-04-19 castaglia <castaglia>
-2005-10-23 14:50 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.
- * 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.
+2006-04-17 castaglia <castaglia>
-2005-10-20 08:33 castaglia
+ * NEWS, RELEASE_NOTES, modules/mod_log.c: Bug#2651 - LogFormat
+ should support variable for logging the response message.
- * doc/contrib/mod_tls.html:
- Fixed example installation instructions for mod_tls.
+2006-04-17 castaglia <castaglia>
-2005-10-19 16:33 castaglia
+ * doc/contrib/mod_quotatab.html,
+ doc/contrib/mod_quotatab_radius.html: Update mod_quotatab docs with
+ links to RADIUS submodule.
- * configure:
- Updating configure.
+2006-04-17 castaglia <castaglia>
-2005-10-19 16:28 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.
- * configure.in, config.h.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.
+2006-04-17 castaglia <castaglia>
-2005-10-18 16:27 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.
- * 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.
+2006-04-17 castaglia <castaglia>
-2005-10-18 11:30 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.
- * 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.
+2006-04-17 castaglia <castaglia>
-2005-10-10 10:58 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2628 -
+ SQLHomedirOnDemand should be deprecated.
- * 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.
+2006-04-17 castaglia <castaglia>
- 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.
+ * 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.
-2005-10-08 13:51 castaglia
+2006-04-17 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.
+ * 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.
-2005-10-08 13:34 castaglia
+2006-04-17 castaglia <castaglia>
- * RELEASE_NOTES:
- Add some notes to the RELEASE_NOTES file for the upcoming
- 1.3.0rc3 release.
+ * NEWS, RELEASE_NOTES, contrib/mod_tls.c, doc/contrib/mod_tls.html:
+ Bug#2599 - Support for using OpenSSL "engines".
-2005-10-08 13:16 castaglia
+2006-04-17 castaglia <castaglia>
- * configure:
- Updating configure.
+ * configure: Updating configure.
-2005-10-08 13:14 castaglia
+2006-04-17 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.
+ * 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.
- The added test defines a PR_ISSOCK_UNIX macro, defined to the
- appropriate S_IS* macro, for use in proftpd code.
+2006-04-17 castaglia <castaglia>
-2005-09-28 11:50 castaglia
+ * NEWS, doc/modules/mod_delay.html, modules/mod_delay.c: Bug#2664 -
+ Add 'delay info' ftpdctl action for showing DelayTable values.
- * doc/howto/Limit.html:
- Style.
+2006-04-17 castaglia <castaglia>
-2005-09-27 19:06 castaglia
+ * NEWS, src/inet.c: Bug#2777 - ProFTPD does handle data sockets
+ properly on FreeBSD 6.
- * src/: dirtree.c, support.c:
- Style.
+2006-04-16 castaglia <castaglia>
-2005-09-27 09:22 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.
- * src/response.c:
- Style.
+2006-04-16 castaglia <castaglia>
-2005-09-27 09:11 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2740 - TYPE command not allowed
+ before USER/PASS, causes problem for `ftp -n'.
- * NEWS, src/response.c:
- Bug#2692 - R_DUP response messages can break the FTP protocol
- responses.
+2006-04-16 castaglia <castaglia>
-2005-09-27 09:08 castaglia
+ * NEWS, modules/mod_core.c: Bug#2654 - FEAT command should be
+ subject to <Limit>.
- * 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.
+2006-04-16 castaglia <castaglia>
-2005-09-26 16:36 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2753 - CCC not closing SSL/TLS
+ connection correctly.
- * NEWS, contrib/mod_tls.c:
- Bug#2697 - Improper SSL session shutdown sequence used for some
- FTPS clients.
+2006-04-16 castaglia <castaglia>
-2005-09-21 10:40 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.
- * 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.
+2006-04-16 castaglia <castaglia>
-2005-09-20 18:08 castaglia
+ * NEWS, modules/mod_auth_unix.c: Bug#2721 - mod_auth_unix does not
+ behave properly when first in AuthOrder.
- * doc/contrib/mod_tls.html:
- Typo.
+2006-04-16 castaglia <castaglia>
-2005-09-20 18:04 castaglia
+ * NEWS, modules/mod_auth_file.c, modules/mod_auth_unix.c: Bug#2714 -
+ mod_auth_file munges AuthUserFile, AuthGroupFile records.
- * 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.
+2006-04-16 castaglia <castaglia>
-2005-09-20 15:45 castaglia
+ * doc/howto/Debugging.html: Adding mention of the stack trace
+ logging to the Debugging howto.
- * doc/contrib/mod_tls.html:
- Enhancing the explanations of the TLSCACertificateFile and
- TLSRandomSeed directives.
+2006-04-16 castaglia <castaglia>
-2005-09-20 11:33 castaglia
+ * configure: Updating configure.
- * doc/contrib/mod_tls.html:
- Minor updates to mod_tls doc.
+2006-04-16 castaglia <castaglia>
-2005-09-19 14:35 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.
- * 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.
+2006-04-16 castaglia <castaglia>
-2005-09-19 10:14 castaglia
+ * include/version.h: Now that 1.3.0 is out, we can start on 1.3.1.
- * modules/mod_xfer.c:
- Style.
+2006-04-16 castaglia <castaglia>
-2005-09-08 11:36 castaglia
+ * ChangeLog: Updating the ChangeLog.
- * README.modules:
- Minor corrections to the location of contrib module
- documentation, thanks to Sven Hoexter.
+2006-04-16 castaglia <castaglia>
-2005-09-08 09:39 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for release of 1.3.0-final.
- * contrib/mod_tls.c:
- Log in the TLSLog when mod_tls denies FTP commands because of the
- configured security policy.
+2006-04-10 castaglia <castaglia>
-2005-09-04 17:05 castaglia
+ * lib/glibc-mkstemp.c: Fix typo in mkstemp() implementation, noted
+ by Charles Seeger.
- * src/netaddr.c:
- When reporting DNS resolution errors, report the type of address
- requested, i.e. IPv4 or IPv6.
+2006-04-08 castaglia <castaglia>
-2005-09-04 16:57 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.
- * NEWS, include/parser.h, src/main.c, src/parser.c:
- Bug#2689 - Parser does not complain about unclosed configuration
- sections.
+2006-03-22 castaglia <castaglia>
-2005-08-29 18:45 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.
- * RELEASE_NOTES:
- Fix typo.
+2006-03-22 castaglia <castaglia>
-2005-08-28 11:01 castaglia
+ * Make.rules.in, NEWS: Bug#2733 - libtool requires sh/bash.
- * 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.
+2006-03-22 castaglia <castaglia>
-2005-08-25 10:53 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.
- * contrib/mod_tls.c:
- The mod_tls version information was missing from a couple of log
- messages.
+2006-03-18 castaglia <castaglia>
-2005-08-24 09:10 castaglia
+ * ChangeLog: Updated ChangeLog.
- * NEWS, modules/mod_ls.c:
- Bug#2685 - ListOptions' max parameters cannot be set higher than
- 255.
+2006-03-18 castaglia <castaglia>
-2005-08-23 09:50 castaglia
+ * NEWS, RELEASE_NOTES, contrib/dist/rpm/proftpd.spec,
+ include/version.h: Rolling up RC5 release.
- * 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.
+2006-03-17 castaglia <castaglia>
-2005-08-23 09:25 castaglia
+ * NEWS, modules/mod_delay.c: Bug#2723 - mod_delay causes process to
+ hang on OS X when proftpd exits.
- * 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.
+2006-03-17 castaglia <castaglia>
-2005-08-16 09:06 castaglia
+ * RELEASE_NOTES: Updating the release notes for the RC5 release.
- * 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.
+2006-03-16 castaglia <castaglia>
-2005-08-10 09:08 jwm
+ * README.controls, doc/howto/Controls.html: Make notes about how
+ Controls are affected by ServerType.
- * README.LDAP: update README.LDAP; oops, i've been forgetting about
- this
+2006-03-15 castaglia <castaglia>
-2005-08-07 09:35 castaglia
+ * src/main.c: We need to copy the session addresses into memory
+ after any reverse DNS resolution is performed, not before.
- * modules/mod_core.c:
- When reporting on use or nonuse of <IfModule> and <IfDefine>
- sections, correctly report the "!" character. Otherwise, the
- reporting is confusing.
+2006-03-15 castaglia <castaglia>
-2005-08-07 09:01 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.
- * 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.
+2006-03-15 castaglia <castaglia>
-2005-08-07 08:46 castaglia
+ * modules/mod_auth.c: Remove slightly misleading (and outdated)
+ comment.
- * configure:
- Updating configure.
+2006-03-15 castaglia <castaglia>
-2005-08-07 08:44 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.
- * NEWS, configure.in:
- Bug#2676 - configure option --disable-ipv6 enables IPv6.
+2006-03-15 castaglia <castaglia>
-2005-08-04 14:06 castaglia
+ * NEWS, modules/mod_auth.c: Bug#2717 - Wrong timestamp in logs for
+ chrooted processes.
- * NEWS, contrib/mod_sql.c:
- Bug#2674 - mod_sql string escape problem during group lookups.
+2006-03-14 castaglia <castaglia>
-2005-08-03 10:08 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2764 - REST command does not return
+ an error for negative numbers.
- * contrib/mod_radius.c:
- Pad the size of the radius_packet_t structure.
+2006-03-12 castaglia <castaglia>
-2005-08-03 10:06 castaglia
+ * include/privs.h: Remove some duplicating logging in the
+ PRIVS_RELINQUISH macro definition.
- * NEWS, contrib/mod_radius.c:
- Bug#2669 - mod_radius segfaults if PASS command sent with no USER
- command.
+2006-03-11 castaglia <castaglia>
-2005-08-02 16:38 castaglia
+ * include/version.h: Forgot to change the status back to "CVS", for
+ now.
- * doc/howto/ListOptions.html:
- Fix documentation for "-a" ListOption.
+2006-03-09 castaglia <castaglia>
-2005-08-02 08:53 castaglia
+ * doc/contrib/mod_sql.html: Add description of the SQLBackend
+ directive.
- * NEWS, modules/mod_ctrls.c:
- Bug#2668 - mod_ctrls fails to open socket during SIGHUP.
+2006-03-09 castaglia <castaglia>
-2005-08-01 18:34 castaglia
+ * configure: Updating configure.
- * modules/mod_facl.c:
- Add debugging output, level 6, showing when mod_facl has
- successfully registered its FS handler.
+2006-03-09 castaglia <castaglia>
-2005-08-01 13:49 castaglia
+ * configure.in: Updating changes made for fixing Bug#2759 so that
+ the libsupp library can be found.
- * modules/mod_ctrls.c:
- Display the mod_ctrls version when using `proftpd -vv'.
+2006-03-08 castaglia <castaglia>
-2005-07-31 20:16 castaglia
+ * configure: Updating configure.
- * src/ftpdctl.c:
- Display the name of the socket path being contacted when `ftpdctl
- -v' is used.
+2006-03-08 castaglia <castaglia>
-2005-07-31 20:15 castaglia
+ * NEWS, configure.in: Bug#2759 - Adding --with-includes to configure
+ can cause problems when building with other packages.
- * 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.
+2006-03-06 castaglia <castaglia>
-2005-07-30 18:25 castaglia
+ * doc/howto/NAT.html: Add a description of what can happen if the
+ configured PassivePorts range is too small.
- * 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.
+2006-03-06 castaglia <castaglia>
-2005-07-27 11:45 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec: Bug#2757 - Add support for
+ quota modules to RPM spec.
- * NEWS, modules/mod_xfer.c:
- Bug#2662 - OpenSolaris/Solaris 11 has TCP_CORK but not SOL_TCP.
+2006-03-01 castaglia <castaglia>
-2005-07-27 10:48 castaglia
+ * RELEASE_NOTES: Updating release notes.
- * NEWS, contrib/dist/rpm/proftpd.spec:
- Bug#2660 - Add mod_facl in rpm spec file.
+2006-03-01 castaglia <castaglia>
-2005-07-26 19:08 castaglia
+ * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
+ Preparing for release of 1.3.0rc4.
- * contrib/mod_tls.c:
- Explicitly mention that $SSL_CERT_DIR is an environment variable.
+2006-02-23 castaglia <castaglia>
-2005-07-24 12:25 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.
- * include/version.h:
- Updating version.
+2006-02-23 castaglia <castaglia>
-2005-07-24 11:21 castaglia
+ * doc/howto/SQL.html: Added FAQ about libz linker errors to SQL
+ howto.
- * ChangeLog:
- Updating ChangeLog.
+2006-02-21 castaglia <castaglia>
-2005-07-24 11:15 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.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for release of 1.3.0rc2.
+2006-02-21 castaglia <castaglia>
-2005-07-24 11:08 castaglia
+ * NEWS, modules/mod_core.c: Bug#2752 - FEAT reply not RFC 2389
+ compliant.
- * NEWS, contrib/mod_radius.c:
- Bug#2658 - Segfault in mod_radius when using long password.
+2006-02-08 castaglia <castaglia>
-2005-07-21 15:00 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().
- * RELEASE_NOTES:
- Fix typo.
+2006-01-11 castaglia <castaglia>
-2005-07-20 17:43 castaglia
+ * doc/howto/AuthFiles.html, doc/howto/index.html: Added the
+ AuthFiles howto (it was referenced by the ConfigFile howto).
- * contrib/mod_tls.c:
- Slight paranoia about calling BIO_free() on possibly NULL
- pointer.
+2006-01-04 castaglia <castaglia>
-2005-07-20 17:40 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.
- * NEWS, contrib/mod_tls.c:
- Bug#2657 - Segfault in tls_get_error() function in mod_tls.
+2005-12-27 castaglia <castaglia>
-2005-07-18 17:30 castaglia
+ * RELEASE_NOTES: Mention the OSX tweaks in the Release Notes.
- * doc/howto/: Classes.html, SQL.html:
- Updating Class and SQL howtos.
+2005-12-27 castaglia <castaglia>
-2005-07-15 15:13 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.
- * NEWS:
- Minor rewording of NEWS, with respect to POSIX ACLs.
+2005-12-19 castaglia <castaglia>
-2005-07-08 08:53 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2735 - Allow REST 0 in ASCII mode.
- * RELEASE_NOTES:
- Updating the release notes.
+2005-12-13 castaglia <castaglia>
-2005-07-08 08:26 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2709 - mod_sql improperly strips
+ spaces from names, allowing for confusing authentication.
- * NEWS, modules/mod_xfer.c:
- Bug#2653 - When MaxStoreFileSize is reached, error should be
- EDQUOT rather than EPERM.
+2005-12-07 castaglia <castaglia>
-2005-07-07 07:45 castaglia
+ * NEWS, modules/mod_auth_pam.c: Bug#2729 - Authorative PAM
+ authentication doesn't work.
- * NEWS, src/data.c:
- Bug#2560 - Reporting errors when user filesystem quota is
- exceeded.
+2005-12-05 castaglia <castaglia>
-2005-07-07 00:10 castaglia
+ * RELEASE_NOTES, doc/howto/Quotas.html, doc/howto/index.html: Adding
+ Quotas howto to doc/ area.
- * 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-12-02 jwm <jwm>
-2005-07-05 09:11 castaglia
+ * 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.
- * doc/howto/: DNS.html, VirtualUsers.html, index.html:
- Adding DNS, VirtualUsers howtos.
+2005-12-02 jwm <jwm>
-2005-07-05 08:49 castaglia
+ * 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
- * NEWS, contrib/mod_sql.c:
- Bug#2645 - SQLShowInfo format string vulnerability.
+2005-12-02 jwm <jwm>
-2005-07-05 08:42 castaglia
+ * 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
- * NEWS, src/response.c:
- Bug#2646 - ftpshut format string vulnerability.
+2005-11-29 castaglia <castaglia>
-2005-07-03 11:52 castaglia
+ * doc/contrib/mod_tls.html: Adding more specific instructions for
+ what a TLSCertificateChainFile should contain.
- * 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-11-29 castaglia <castaglia>
-2005-07-03 11:13 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.
- * NEWS:
- Bug#2375 - Slow directory listing with several blank .ftpaccess
- files.
+2005-11-19 castaglia <castaglia>
-2005-07-03 11:08 castaglia
+ * doc/howto/DSO.html: Adding more comments to the DSO howto, based
+ on user feedback/questions.
- * 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-11-16 jwm <jwm>
-2005-07-02 11:41 castaglia
+ * contrib/mod_ldap.c: release 2.8.16
- * 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-11-15 castaglia <castaglia>
-2005-07-02 11:06 castaglia
+ * doc/contrib/mod_quotatab.html: Formatting changes.
- * 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-11-15 castaglia <castaglia>
-2005-07-02 10:59 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.
- * modules/mod_delay.c:
- More bounds checking in mod_delay, as part of an investigation
- into Bug #2621 using valgrind.
+2005-11-14 castaglia <castaglia>
-2005-06-29 17:39 castaglia
+ * doc/contrib/mod_tls.html: Update description of AllowDotLogin
+ TLSOption, as proftpd now will not prompt for a password if none is
+ required.
- * NEWS, include/conf.h:
- Bug#2647 - Improper "socklen_t" redefine for HP-UX when using
- X/Open.
+2005-11-14 castaglia <castaglia>
-2005-06-29 12:11 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.
- * doc/modules/mod_delay.html:
- This document covers mod_delay, not mod_dso. Fix typo.
+2005-11-12 castaglia <castaglia>
-2005-06-27 13:40 castaglia
+ * NEWS, modules/mod_core.c: Bug#2712 - DisplayFirstChdir directive
+ does not work.
- * NEWS, contrib/mod_sql_mysql.c:
- Bug#2644 - mod_sql_mysql should handle old MySQL password format
- more gracefully.
+2005-11-11 castaglia <castaglia>
-2005-06-26 22:38 castaglia
+ * NEWS, include/ctrls.h, modules/mod_ctrls.c, src/ctrls.c: Bug#2711
+ - Controls socket detection broken.
- * configure:
- Updating configure.
+2005-11-10 castaglia <castaglia>
-2005-06-26 22:25 castaglia
+ * src/ctrls.c: Copy the full length of the socket path, including
+ the terminating NUL.
- * config.h.in, configure.in:
- Check for the size of a time_t. We do not need this immediately,
- but we will soon.
+2005-11-08 castaglia <castaglia>
-2005-06-23 16:23 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.
- * 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-11-08 castaglia <castaglia>
-2005-06-22 13:56 castaglia
+ * configure: Updating configure.
- * 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-11-08 castaglia <castaglia>
-2005-06-22 10:22 castaglia
+ * NEWS, configure.in: Bug#2708 - configure cannot detect some
+ headers.
- * 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-11-04 castaglia <castaglia>
-2005-06-21 18:58 castaglia
+ * NEWS, src/log.c: Bug#2706 - utmp/wtmp logging on NetBSD needs some
+ tweaks.
- * 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-11-04 castaglia <castaglia>
-2005-06-21 16:11 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2703 - Disk quota exceeded for small
+ files not being triggered.
- * 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-10-31 castaglia <castaglia>
-2005-06-21 15:06 castaglia
+ * include/version.h: Bump version to 1.3.0rc4 (hopefully will turn
+ out to be 1.3.0-stable).
- * configure:
- Update configure.
+2005-10-31 castaglia <castaglia>
-2005-06-21 13:54 castaglia
+ * ChangeLog: One more update.
- * src/bindings.c:
- The ipv6_supported variable need only be defined if --enable-ipv6
- is used.
+2005-10-31 castaglia <castaglia>
-2005-06-21 11:49 castaglia
+ * src/fsio.c: Correct usage of pr_fsio_readlink().
- * 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-10-31 castaglia <castaglia>
-2005-06-21 11:27 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for 1.3.0rc3 roll.
- * src/main.c:
- Display the default libexec/ directory for the -V option, if DSO
- support is enabled.
+2005-10-31 castaglia <castaglia>
-2005-06-21 10:22 castaglia
+ * ChangeLog: Updating ChangeLog.
- * configure:
- Updating configure.
+2005-10-28 castaglia <castaglia>
-2005-06-21 10:02 castaglia
+ * RELEASE_NOTES: Updating release notes.
- * 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-10-26 castaglia <castaglia>
-2005-06-21 06:54 castaglia
+ * src/fsio.c: Drat. Forgot to replace all occurrences of
+ ->readlink() with pr_fsio_readlink().
- * NEWS:
- Update the description of Bug #2573, making note of the changed
- behavior and how to address it (as per Bug #2640).
+2005-10-26 castaglia <castaglia>
-2005-06-20 15:57 castaglia
+ * modules/mod_facl.c: Use direct pointer assignment rather than
+ acl_copy_entry(); the latter is not needed. Patch supplied by
+ Patrick McHardy.
- * configure:
- Updating configure.
+2005-10-26 castaglia <castaglia>
-2005-06-20 15:35 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.
- * 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-10-26 castaglia <castaglia>
-2005-06-20 15:16 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.
- * src/netaddr.c:
- Log when we are looking for IPv4 addresses via DNS, and when
- we're looking for IPv6 addresses.
+2005-10-23 castaglia <castaglia>
-2005-06-19 22:41 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.
- * 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-10-20 castaglia <castaglia>
-2005-06-19 19:05 castaglia
+ * doc/contrib/mod_tls.html: Fixed example installation instructions
+ for mod_tls.
- * doc/contrib/mod_ifsession.html:
- Updating mod_ifsession docs.
+2005-10-19 castaglia <castaglia>
-2005-06-18 14:05 castaglia
+ * configure: Updating configure.
- * 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-10-19 castaglia <castaglia>
-2005-06-18 11:16 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.
- * NEWS, modules/mod_delay.c:
- Bug#2630 - Use of mmap in mod_delay may be problematic on HP-UX.
+2005-10-18 castaglia <castaglia>
-2005-06-16 14:27 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.
- * 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-10-18 castaglia <castaglia>
-2005-06-16 11:58 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.
- * src/table.c:
- Added some missing pr_signals_handle() calls in while loops.
+2005-10-10 castaglia <castaglia>
-2005-06-15 10:38 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.
- * NEWS, modules/mod_xfer.c:
- Bug#2639 - HiddenStores does not work.
+2005-10-08 castaglia <castaglia>
-2005-06-15 08:40 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.
- * src/dirtree.c:
- Set a valid errno for pr_is_boolean().
+2005-10-08 castaglia <castaglia>
-2005-06-14 11:11 castaglia
+ * RELEASE_NOTES: Add some notes to the RELEASE_NOTES file for the
+ upcoming 1.3.0rc3 release.
- * 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-10-08 castaglia <castaglia>
-2005-06-13 18:23 castaglia
+ * configure: Updating configure.
- * 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:
+2005-10-08 castaglia <castaglia>
- 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.
+ * 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-06-13 15:01 castaglia
+2005-09-28 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.
+ * doc/howto/Limit.html: Style.
-2005-06-13 09:27 castaglia
+2005-09-28 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c, src/data.c:
- Bug#2636 - Data connection failure when handling STOR does not
- trigger error response.
+ * src/dirtree.c, src/support.c: Style.
-2005-06-11 21:42 castaglia
+2005-09-27 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#2637 - <Limit STAT> does not work.
+ * src/response.c: Style.
-2005-06-11 17:36 castaglia
+2005-09-27 castaglia <castaglia>
- * include/: compat.h, dirtree.h:
- Moving some macro (name redefinitions) into the more appropiate
- compat.h header.
+ * NEWS, src/response.c: Bug#2692 - R_DUP response messages can break
+ the FTP protocol responses.
-2005-06-11 16:46 castaglia
+2005-09-27 castaglia <castaglia>
- * contrib/mod_tls.c:
- Style consistency and cleanup.
+ * 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-06-11 15:18 castaglia
+2005-09-26 castaglia <castaglia>
- * contrib/mod_tls.c:
- Comment typo.
+ * NEWS, contrib/mod_tls.c: Bug#2697 - Improper SSL session shutdown
+ sequence used for some FTPS clients.
-2005-06-10 10:21 castaglia
+2005-09-21 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.
+ * 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.
- 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-09-21 castaglia <castaglia>
-2005-06-10 10:06 castaglia
+ * doc/contrib/mod_tls.html: Typo.
- * NEWS, lib/pr-syslog.c:
- Bug#2632 - Invalid application of `sizeof' to an incomplete type
- on AIX.
+2005-09-21 castaglia <castaglia>
-2005-06-10 09:25 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.
- * doc/howto/NAT.html:
- Provide an example configuration for the LAN/WAN
- MasqueradeAddress issue.
+2005-09-20 castaglia <castaglia>
-2005-06-09 06:14 castaglia
+ * doc/contrib/mod_tls.html: Enhancing the explanations of the
+ TLSCACertificateFile and TLSRandomSeed directives.
- * doc/howto/SQL.html:
- Fix typo.
+2005-09-20 castaglia <castaglia>
-2005-06-08 11:33 castaglia
+ * doc/contrib/mod_tls.html: Minor updates to mod_tls doc.
- * NEWS, contrib/mod_radius.c:
- Bug#2631 - Segfault when using RadiusAcctServer.
+2005-09-19 castaglia <castaglia>
-2005-06-08 09:21 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.
- * 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-09-19 castaglia <castaglia>
-2005-06-07 11:58 castaglia
+ * modules/mod_xfer.c: Style.
- * contrib/mod_radius.c:
- Minor style cleanup.
+2005-09-08 castaglia <castaglia>
-2005-06-06 10:45 castaglia
+ * README.modules: Minor corrections to the location of contrib
+ module documentation, thanks to Sven Hoexter.
- * doc/contrib/mod_rewrite.html:
- No need for the trailing /, as the closing } serves as the
- delimiter.
+2005-09-08 castaglia <castaglia>
-2005-06-06 10:40 castaglia
+ * contrib/mod_tls.c: Log in the TLSLog when mod_tls denies FTP
+ commands because of the configured security policy.
- * 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-09-05 castaglia <castaglia>
-2005-06-05 11:26 castaglia
+ * src/netaddr.c: When reporting DNS resolution errors, report the
+ type of address requested, i.e. IPv4 or IPv6.
- * NEWS, README.FreeBSD:
- Bug#2250 - Add ports, compiling info to FreeBSD README.
+2005-09-04 castaglia <castaglia>
-2005-06-05 11:20 castaglia
+ * NEWS, include/parser.h, src/main.c, src/parser.c: Bug#2689 -
+ Parser does not complain about unclosed configuration sections.
- * README:
- Updated README to use "1.3.x" as ProFTPD version, rather than
- "1.2.x".
+2005-08-30 castaglia <castaglia>
-2005-06-03 00:12 castaglia
+ * RELEASE_NOTES: Fix typo.
- * NEWS, include/fsio.h:
- Bug#2624 - "fh_data" macro collision causes compiler error on
- Tru64 V5.1A.
+2005-08-28 castaglia <castaglia>
-2005-06-02 08:25 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.
- * 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-08-25 castaglia <castaglia>
-2005-06-01 21:43 castaglia
+ * contrib/mod_tls.c: The mod_tls version information was missing
+ from a couple of log messages.
- * modules/mod_delay.c:
- Bug#2622 - Segfault seen randomly in mod_delay.
+2005-08-24 castaglia <castaglia>
- This patch changes the bounds check for the j variable, which is
- decrementing, to be as necessary.
+ * NEWS, modules/mod_ls.c: Bug#2685 - ListOptions' max parameters
+ cannot be set higher than 255.
-2005-06-01 16:21 castaglia
+2005-08-23 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.
+ * 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-06-01 14:07 castaglia
+2005-08-23 castaglia <castaglia>
- * doc/contrib/mod_radius.html:
- Remove extraneous space.
+ * 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-06-01 14:03 castaglia
+2005-08-16 castaglia <castaglia>
- * doc/contrib/mod_radius.html:
- Updating mod_radius documentation.
+ * 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-06-01 13:52 castaglia
+2005-08-10 jwm <jwm>
- * README.Solaris2.5x:
- Use "ProFTPD", not "ProFTP".
+ * README.LDAP: update README.LDAP; oops, i've been forgetting about
+ this
-2005-06-01 13:50 castaglia
+2005-08-07 castaglia <castaglia>
- * contrib/mod_radius.c:
- More strict checking of the number of parameters for the
- RadiusLog directive.
+ * modules/mod_core.c: When reporting on use or nonuse of <IfModule>
+ and <IfDefine> sections, correctly report the "!" character.
+ Otherwise, the reporting is confusing.
- In general, this a problem with the CHECK_ARGS macro. It allows
- >= n parameters, where it should check strictly for == n.
+2005-08-07 castaglia <castaglia>
-2005-06-01 10:21 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.
- * NEWS, src/bindings.c, src/netaddr.c:
- Bug#2578 - ProFTPD does not listen on IPv6 addresses on FreeBSD.
+2005-08-07 castaglia <castaglia>
-2005-05-31 16:40 castaglia
+ * configure: Updating configure.
- * NEWS, modules/mod_delay.c:
- Bug#2622 - Segfault seen randomly in mod_delay.
+2005-08-07 castaglia <castaglia>
-2005-05-31 09:15 castaglia
+ * NEWS, configure.in: Bug#2676 - configure option --disable-ipv6
+ enables IPv6.
- * NEWS, modules/mod_delay.c:
- Bug#2601 - mod_delay sometimes delays for a long time.
+2005-08-04 castaglia <castaglia>
-2005-05-20 19:16 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2674 - mod_sql string escape problem
+ during group lookups.
- * 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-08-03 castaglia <castaglia>
-2005-05-10 09:35 castaglia
+ * contrib/mod_radius.c: Pad the size of the radius_packet_t
+ structure.
- * NEWS, lib/pr-syslog.c:
- Bug#2585 - Proftpd does not write RFC 3164 compliant messages
- into /dev/log.
+2005-08-03 castaglia <castaglia>
-2005-05-08 13:42 castaglia
+ * NEWS, contrib/mod_radius.c: Bug#2669 - mod_radius segfaults if
+ PASS command sent with no USER command.
- * configure:
- Updated configure.
+2005-08-02 castaglia <castaglia>
-2005-05-08 13:37 castaglia
+ * doc/howto/ListOptions.html: Fix documentation for "-a" ListOption.
- * NEWS, configure.in:
- Bug#2598 - Build system should check for duplicate module
- requests.
+2005-08-02 castaglia <castaglia>
-2005-05-07 12:19 castaglia
+ * NEWS, modules/mod_ctrls.c: Bug#2668 - mod_ctrls fails to open
+ socket during SIGHUP.
- * Makefile.in, modules/Makefile.in:
- Make the use of `test' in the Makefiles non-silent, to aid in
- debugging build issues.
+2005-08-02 castaglia <castaglia>
-2005-05-07 10:52 castaglia
+ * modules/mod_facl.c: Add debugging output, level 6, showing when
+ mod_facl has successfully registered its FS handler.
- * contrib/mod_load/Makefile.in:
- Make mod_load's Makefile portable. Related to Bug#2589.
+2005-08-01 castaglia <castaglia>
-2005-05-07 10:38 castaglia
+ * modules/mod_ctrls.c: Display the mod_ctrls version when using
+ `proftpd -vv'.
- * NEWS:
- Wrong bug number.
+2005-08-01 castaglia <castaglia>
-2005-05-07 10:38 castaglia
+ * src/ftpdctl.c: Display the name of the socket path being contacted
+ when `ftpdctl -v' is used.
- * NEWS, modules/Makefile.in:
- Bug#2589 - Makefile in modules/ directory is not portable.
+2005-08-01 castaglia <castaglia>
-2005-05-07 10:01 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.
- * 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-07-31 castaglia <castaglia>
-2005-05-05 22:53 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.
- * NEWS, modules/mod_core.c, modules/mod_ctrls.c, src/table.c:
- Bug#2605 - Compiler warnings/errors about missing typecasts on
- HP-UX.
+2005-07-27 castaglia <castaglia>
-2005-05-05 22:33 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2662 - OpenSolaris/Solaris 11 has
+ TCP_CORK but not SOL_TCP.
- * contrib/mod_tls.c:
- Bug#2607 - Compiler warnings about missing typecasts in mod_tls
- on HP-UX.
+2005-07-27 castaglia <castaglia>
-2005-05-05 22:24 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec: Bug#2660 - Add mod_facl in
+ rpm spec file.
- * contrib/mod_rewrite.c:
- Bug#2606 - Compiler warnings about missing typecasts in
- mod_rewrite on HP-UX.
+2005-07-27 castaglia <castaglia>
-2005-04-30 17:04 castaglia
+ * contrib/mod_tls.c: Explicitly mention that $SSL_CERT_DIR is an
+ environment variable.
- * 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-07-24 castaglia <castaglia>
-2005-04-30 16:32 castaglia
+ * include/version.h: Updating version.
- * configure:
- Updating configure.
+2005-07-24 castaglia <castaglia>
-2005-04-30 16:27 castaglia
+ * ChangeLog: Updating ChangeLog.
- * 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-07-24 castaglia <castaglia>
-2005-04-30 12:59 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for release of 1.3.0rc2.
- * 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-07-24 castaglia <castaglia>
-2005-04-30 12:07 castaglia
+ * NEWS, contrib/mod_radius.c: Bug#2658 - Segfault in mod_radius when
+ using long password.
- * 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-07-21 castaglia <castaglia>
-2005-04-30 11:03 castaglia
+ * RELEASE_NOTES: Fix typo.
- * NEWS, modules/mod_auth_unix.c:
- Bug#2582 - ProFTPD on Tru64 with SIA does not call
- sia_ses_estab().
+2005-07-21 castaglia <castaglia>
-2005-04-29 09:34 castaglia
+ * contrib/mod_tls.c: Slight paranoia about calling BIO_free() on
+ possibly NULL pointer.
- * configure:
- Updating configure.
+2005-07-21 castaglia <castaglia>
-2005-04-29 09:26 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2657 - Segfault in tls_get_error()
+ function in mod_tls.
- * configure.in, config.h.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-07-19 castaglia <castaglia>
-2005-04-27 14:04 castaglia
+ * doc/howto/Classes.html, doc/howto/SQL.html: Updating Class and SQL
+ howtos.
- * configure:
- Updating configure.
+2005-07-15 castaglia <castaglia>
-2005-04-27 14:01 castaglia
+ * NEWS: Minor rewording of NEWS, with respect to POSIX ACLs.
- * NEWS, config.h.in, configure.in:
- Bug#2588 - AIX requires _USE_IRS #define to use hstrerror().
+2005-07-08 castaglia <castaglia>
-2005-04-25 15:12 castaglia
+ * RELEASE_NOTES: Updating the release notes.
- * 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-07-08 castaglia <castaglia>
-2005-04-24 14:48 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2653 - When MaxStoreFileSize is
+ reached, error should be EDQUOT rather than EPERM.
- * config.h.in:
- Typo.
+2005-07-07 castaglia <castaglia>
-2005-04-23 15:54 castaglia
+ * NEWS, src/data.c: Bug#2560 - Reporting errors when user filesystem
+ quota is exceeded.
- * 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-07-07 castaglia <castaglia>
-2005-04-23 11:03 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.
- * contrib/mod_quotatab.c:
- More formatting tweaks for mod_quotatab's display in response to
- a SITE QUOTA command.
+2005-07-05 castaglia <castaglia>
-2005-04-23 09:13 castaglia
+ * doc/howto/DNS.html, doc/howto/VirtualUsers.html,
+ doc/howto/index.html: Adding DNS, VirtualUsers howtos.
- * 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-07-05 castaglia <castaglia>
-2005-04-23 08:53 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2645 - SQLShowInfo format string
+ vulnerability.
- * NEWS, modules/mod_ls.c:
- Bug#2596 - STAT command can cause segfault.
+2005-07-05 castaglia <castaglia>
-2005-04-22 09:26 castaglia
+ * NEWS, src/response.c: Bug#2646 - ftpshut format string
+ vulnerability.
- * contrib/mod_sql.c:
- Be consistent in the style/formatting of the "cache hit for"
- messages by quoting the group name, too.
+2005-07-03 castaglia <castaglia>
-2005-04-21 10:58 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.
- * NEWS, modules/Makefile.in:
- Bug#2593 - `make install-modules' does not honour DESTDIR
- enviroment variable.
+2005-07-03 castaglia <castaglia>
-2005-04-21 10:33 jwm
+ * NEWS: Bug#2375 - Slow directory listing with several blank
+ .ftpaccess files.
- * .cvsignore, lib/libltdl/.cvsignore: update for libtool
+2005-07-03 castaglia <castaglia>
-2005-04-21 10:08 jwm
+ * 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.
- * modules/.cvsignore: - ignore libtool-generated files -
- mod_linuxprivs is gone
+2005-07-02 castaglia <castaglia>
-2005-04-17 10:12 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.
- * 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-07-02 castaglia <castaglia>
-2005-04-15 14:18 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).
- * NEWS, src/dirtree.c:
- Bug#2587 - HideNoAccess does not work for DefaultRoot/<Anonymous>
- logins.
+2005-07-02 castaglia <castaglia>
-2005-04-14 22:55 castaglia
+ * modules/mod_delay.c: More bounds checking in mod_delay, as part of
+ an investigation into Bug #2621 using valgrind.
- * include/: auth.h, compat.h, conf.h, 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-06-30 castaglia <castaglia>
-2005-04-11 10:02 castaglia
+ * NEWS, include/conf.h: Bug#2647 - Improper "socklen_t" redefine for
+ HP-UX when using X/Open.
- * NEWS, contrib/mod_sql_postgres.c:
- Bug#2584 - mod_sql_postgres missing end-of-comment character.
+2005-06-29 castaglia <castaglia>
-2005-04-11 09:47 castaglia
+ * doc/modules/mod_delay.html: This document covers mod_delay, not
+ mod_dso. Fix typo.
- * include/version.h:
- Update version.
+2005-06-27 castaglia <castaglia>
-2005-04-10 16:21 castaglia
+ * NEWS, contrib/mod_sql_mysql.c: Bug#2644 - mod_sql_mysql should
+ handle old MySQL password format more gracefully.
- * NEWS:
- Updating release date for 1.3.0rc1.
+2005-06-27 castaglia <castaglia>
-2005-04-10 16:19 castaglia
+ * configure: Updating configure.
- * 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.
+2005-06-27 castaglia <castaglia>
- Have I ever mentioned how much I find the sendfile API to be
- broken?
+ * config.h.in, configure.in: Check for the size of a time_t. We do
+ not need this immediately, but we will soon.
-2005-04-10 16:15 castaglia
+2005-06-23 castaglia <castaglia>
- * NEWS, modules/mod_delay.c:
- Bug#2554 - mod_delay gets segfault-signal on several logins.
+ * 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-04-04 13:40 castaglia
+2005-06-22 castaglia <castaglia>
- * NEWS, modules/mod_auth_unix.c:
- Bug#2580 - ProFTPD on Tru64 with SIA allows login with blank
- password.
+ * 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-03-26 13:10 castaglia
+2005-06-22 castaglia <castaglia>
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec,
- ChangeLog:
- Preparing for release of 1.3.0rc1.
+ * 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-03-26 12:53 jwm
+2005-06-22 castaglia <castaglia>
- * RELEASE_NOTES: mod_ldap is now 2.8.15
+ * 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-03-26 12:48 castaglia
+2005-06-21 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating release notes, preparing for release of 1.3.0rc1.
+ * 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-03-25 08:41 castaglia
+2005-06-21 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#2493 - mod_tls should support CCC command.
+ * configure: Update configure.
-2005-03-18 10:25 castaglia
+2005-06-21 castaglia <castaglia>
- * NEWS, src/support.c:
- Bug#2576 - PWD command does not handle " character properly.
+ * src/bindings.c: The ipv6_supported variable need only be defined
+ if --enable-ipv6 is used.
-2005-03-16 23:12 castaglia
+2005-06-21 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.
+ * 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-03-16 08:16 castaglia
+2005-06-21 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#2551 - Recursive LIST with symlinked directories gives
- duplicate results.
+ * src/main.c: Display the default libexec/ directory for the -V
+ option, if DSO support is enabled.
-2005-03-15 22:16 castaglia
+2005-06-21 castaglia <castaglia>
- * modules/mod_ls.c:
- Cruft removal.
+ * configure: Updating configure.
-2005-03-12 09:36 castaglia
+2005-06-21 castaglia <castaglia>
- * modules/mod_ls.c:
- Fix an unreported bug where attempting to use the -t directory
- listing option would trigger a segfault.
+ * 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-03-11 12:44 jwm
+2005-06-21 castaglia <castaglia>
- * contrib/mod_ldap.c: [no log message]
+ * NEWS: Update the description of Bug #2573, making note of the
+ changed behavior and how to address it (as per Bug #2640).
-2005-03-08 09:06 castaglia
+2005-06-20 castaglia <castaglia>
- * NEWS, src/pool.c:
- Bug#2567 - Segmentation fault with 64-bit binary due to structure
- layout difference.
+ * configure: Updating configure.
-2005-03-05 22:03 castaglia
+2005-06-20 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- More consistent log messages.
+ * 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-03-05 15:02 castaglia
+2005-06-20 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Fixed quotatab_fsio_write() to check the xfer limit as well as
- the upload limit.
+ * src/netaddr.c: Log when we are looking for IPv4 addresses via DNS,
+ and when we're looking for IPv6 addresses.
-2005-03-05 14:55 castaglia
+2005-06-20 castaglia <castaglia>
- * NEWS, contrib/mod_quotatab.c:
- Bug#2515 - mod_quotatab should enforce hard limits at the
- filesystem level.
+ * 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-03-05 09:46 castaglia
+2005-06-20 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c, modules/mod_auth.c, src/auth.c:
- Bug#2164 - Support non-PASS response codes.
+ * doc/contrib/mod_ifsession.html: Updating mod_ifsession docs.
-2005-03-05 09:33 castaglia
+2005-06-18 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#2559 - IPv6 socket option should be set for ServerType inetd.
+ * 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-03-04 09:01 castaglia
+2005-06-18 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug #2573 - TLSProtocol directive in proftpd.conf is ignored.
+ * NEWS, modules/mod_delay.c: Bug#2630 - Use of mmap in mod_delay may
+ be problematic on HP-UX.
-2005-03-02 12:33 castaglia
+2005-06-16 castaglia <castaglia>
- * modules/mod_delay.c:
- Allow for <IfClass>-based tweaks of the DelayEngine directive.
+ * 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-02-27 18:50 castaglia
+2005-06-16 castaglia <castaglia>
- * README.DSO:
- Mention the DSO howto.
+ * src/table.c: Added some missing pr_signals_handle() calls in while
+ loops.
-2005-02-27 11:23 castaglia
+2005-06-15 castaglia <castaglia>
- * README.modules:
- List mod_facl in the modules README.
+ * NEWS, modules/mod_xfer.c: Bug#2639 - HiddenStores does not work.
-2005-02-27 11:21 castaglia
+2005-06-15 castaglia <castaglia>
- * README.facl:
- Fleshing out the POSIX ACL doc.
+ * src/dirtree.c: Set a valid errno for pr_is_boolean().
-2005-02-27 09:46 castaglia
+2005-06-14 castaglia <castaglia>
- * README.DSO:
- Update the DSO doc with information on where to find more
- documentation for the mod_dso module.
+ * 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-02-26 18:37 castaglia
+2005-06-14 castaglia <castaglia>
- * README.DSO:
- Adding more substance to the DSO doc.
+ * 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-02-26 12:22 castaglia
+2005-06-13 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention the new --enable-facl configure option, mod_facl module
- in the release notes.
+ * include/log.h, modules/mod_core.c, modules/mod_log.c, src/log.c:
+ Move the log_str2sysloglevel() function into the 'pr_' namespace.
-2005-02-26 09:55 castaglia
+2005-06-13 castaglia <castaglia>
- * src/fsio.c:
- Fix missing variable declaration.
+ * NEWS, modules/mod_xfer.c, src/data.c: Bug#2636 - Data connection
+ failure when handling STOR does not trigger error response.
-2005-02-26 09:39 castaglia
+2005-06-12 castaglia <castaglia>
- * configure:
- Updating configure.
+ * NEWS, modules/mod_ls.c: Bug#2637 - <Limit STAT> does not work.
-2005-02-26 09:28 castaglia
+2005-06-12 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.
+ * include/compat.h, include/dirtree.h: Moving some macro (name
+ redefinitions) into the more appropiate compat.h header.
-2005-02-24 18:01 castaglia
+2005-06-11 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c:
- Bug #2563: Linking fails on Solaris with libz and libmysqlclient.
+ * contrib/mod_tls.c: Style consistency and cleanup.
-2005-02-24 16:00 castaglia
+2005-06-11 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog.
+ * contrib/mod_tls.c: Comment typo.
-2005-02-15 13:54 jwm
+2005-06-10 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec: i don't have access to red hat
- machines anymore, so i'm no longer maintaining this
+ * 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-02-07 10:15 castaglia
+2005-06-10 castaglia <castaglia>
- * include/inet.h, src/inet.c:
- Use "const char *" where appropriate.
+ * NEWS, lib/pr-syslog.c: Bug#2632 - Invalid application of `sizeof'
+ to an incomplete type on AIX.
-2005-02-04 15:54 castaglia
+2005-06-10 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#2556: Rename of directory across devices fails.
+ * doc/howto/NAT.html: Provide an example configuration for the
+ LAN/WAN MasqueradeAddress issue.
-2005-01-25 11:30 castaglia
+2005-06-09 castaglia <castaglia>
- * NEWS, lib/libcap/cap_sys.c:
- Bug#2503 - Bundled libcap library does not compile on IA64
- machine.
+ * doc/howto/SQL.html: Fix typo.
-2005-01-12 16:19 castaglia
+2005-06-08 castaglia <castaglia>
- * modules/mod_ls.c:
+ * NEWS, contrib/mod_radius.c: Bug#2631 - Segfault when using
+ RadiusAcctServer.
- 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-06-08 castaglia <castaglia>
-2005-01-06 15:39 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.
- * 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-06-07 castaglia <castaglia>
-2005-01-06 10:55 castaglia
+ * contrib/mod_radius.c: Minor style cleanup.
- * src/bindings.c:
- Fix segfault caused by a NULL listener_list.
+2005-06-06 castaglia <castaglia>
-2005-01-02 21:36 castaglia
+ * doc/contrib/mod_rewrite.html: No need for the trailing /, as the
+ closing } serves as the delimiter.
- * doc/howto/Stopping.html:
- Updating FAQ URL.
+2005-06-06 castaglia <castaglia>
-2005-01-02 16:21 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.
- * INSTALL:
- Apparently configure scripts don't pass env vars very well to
- sub-configure scripts.
+2005-06-05 castaglia <castaglia>
-2005-01-02 13:00 jwm
+ * NEWS, README.FreeBSD: Bug#2250 - Add ports, compiling info to
+ FreeBSD README.
- * lib/glibc-hstrerror.c: silence ranlib's 'object contains no
- symbols' warning if the host OS already has hstrerror()
+2005-06-05 castaglia <castaglia>
-2005-01-02 00:01 castaglia
+ * README: Updated README to use "1.3.x" as ProFTPD version, rather
+ than "1.2.x".
- * RELEASE_NOTES:
- Make a note to describe the addition of mod_delay to the module
- list.
+2005-06-03 castaglia <castaglia>
-2005-01-01 12:15 castaglia
+ * NEWS, include/fsio.h: Bug#2624 - "fh_data" macro collision causes
+ compiler error on Tru64 V5.1A.
- * doc/contrib/mod_load.html:
- Updating the mod_load docs to mention the provided Display
- variables.
+2005-06-02 castaglia <castaglia>
-2005-01-01 12:06 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.
- * doc/howto/DisplayFiles.html:
- Mention that other modules can add their own Display variables.
+2005-06-02 castaglia <castaglia>
-2005-01-01 12:04 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.
- * contrib/mod_load/mod_load.c.in:
- Enhance mod_load to use the Variables API.
+2005-06-01 castaglia <castaglia>
-2005-01-01 11:42 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.
- * contrib/mod_load/configure:
- Updating configure.
+2005-06-01 castaglia <castaglia>
-2005-01-01 11:41 castaglia
+ * doc/contrib/mod_radius.html: Remove extraneous space.
- * 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-06-01 castaglia <castaglia>
-2005-01-01 11:39 castaglia
+ * doc/contrib/mod_radius.html: Updating mod_radius documentation.
- * contrib/mod_load/: configure.in, getloadavg.c, mod_load.c,
- 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.
+2005-06-01 castaglia <castaglia>
- Note that newer autoconf treatment of the AC_FUNC_GETLOADAVG
- macro requires that a getloadavg.c file be present, even if
- empty. How annoying.
+ * README.Solaris2.5x: Use "ProFTPD", not "ProFTP".
-2005-01-01 11:13 castaglia
+2005-06-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.
+ * 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-01-01 11:02 castaglia
+2005-06-01 castaglia <castaglia>
- * contrib/mod_load/mod_load.c:
- Fix some compiler warnings about formats.
+ * NEWS, src/bindings.c, src/netaddr.c: Bug#2578 - ProFTPD does not
+ listen on IPv6 addresses on FreeBSD.
- 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-05-31 castaglia <castaglia>
-2005-01-01 10:55 castaglia
+ * NEWS, modules/mod_delay.c: Bug#2622 - Segfault seen randomly in
+ mod_delay.
- * contrib/mod_load/mod_load.c:
- Slightly prettier code organization.
+2005-05-31 castaglia <castaglia>
-2005-01-01 10:49 castaglia
+ * NEWS, modules/mod_delay.c: Bug#2601 - mod_delay sometimes delays
+ for a long time.
- * contrib/mod_load/mod_load.c:
- Updating mod_load source style.
+2005-05-21 castaglia <castaglia>
-2005-01-01 10:42 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.
- * doc/contrib/index.html:
- Update doc/contrib index to include mod_load reference.
+2005-05-10 castaglia <castaglia>
-2005-01-01 10:40 castaglia
+ * NEWS, lib/pr-syslog.c: Bug#2585 - Proftpd does not write RFC 3164
+ compliant messages into /dev/log.
- * README.modules, RELEASE_NOTES:
- Add mod_load to the list of modules.
+2005-05-08 castaglia <castaglia>
-2005-01-01 10:37 castaglia
+ * configure: Updated configure.
- * 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-05-08 castaglia <castaglia>
-2005-01-01 10:36 castaglia
+ * NEWS, configure.in: Bug#2598 - Build system should check for
+ duplicate module requests.
- * configure:
- Updating configure.
+2005-05-07 castaglia <castaglia>
-2005-01-01 10:20 castaglia
+ * Makefile.in, modules/Makefile.in: Make the use of `test' in the
+ Makefiles non-silent, to aid in debugging build issues.
- * modules/Makefile.in:
- Fix the install target when handling only shared modules that
- install themselves.
+2005-05-07 castaglia <castaglia>
-2004-12-31 19:02 castaglia
+ * contrib/mod_load/Makefile.in: Make mod_load's Makefile portable.
+ Related to Bug#2589.
- * .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.
+2005-05-07 castaglia <castaglia>
-2004-12-31 11:17 castaglia
+ * NEWS: Wrong bug number.
- * doc/howto/FTP.html:
- Updating the list of SITE commands supported by ProFTPD.
+2005-05-07 castaglia <castaglia>
-2004-12-31 10:55 castaglia
+ * NEWS, modules/Makefile.in: Bug#2589 - Makefile in modules/
+ directory is not portable.
- * doc/howto/FTP.html:
- Updating the list of FTP commands supported by ProFTPD.
+2005-05-07 castaglia <castaglia>
-2004-12-30 15:08 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.
- * contrib/mod_sql_mysql.c:
- Log if mod_sql_mysql fails to authenticate a password using the
- 'backend' SQLAuthType because of a password mismatch.
+2005-05-06 castaglia <castaglia>
-2004-12-30 14:51 castaglia
+ * NEWS, modules/mod_core.c, modules/mod_ctrls.c, src/table.c:
+ Bug#2605 - Compiler warnings/errors about missing typecasts on
+ HP-UX.
- * NEWS, modules/mod_core.c:
- Bug#2541 - <Directory ~user> path resolved at startup time,
- rather than at session time.
+2005-05-06 castaglia <castaglia>
-2004-12-30 14:23 castaglia
+ * contrib/mod_tls.c: Bug#2607 - Compiler warnings about missing
+ typecasts in mod_tls on HP-UX.
- * NEWS, modules/mod_delay.c:
- Bug#2540 - Fails to disable mod_delay if no DelayTable file
- exists.
+2005-05-06 castaglia <castaglia>
-2004-12-23 12:17 castaglia
+ * contrib/mod_rewrite.c: Bug#2606 - Compiler warnings about missing
+ typecasts in mod_rewrite on HP-UX.
- * modules/: mod_auth.c, mod_core.c, mod_log.c:
- More prettification of error messages.
+2005-05-01 castaglia <castaglia>
-2004-12-23 11:55 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.
- * contrib/mod_sql.c:
- Makes for nicer error messages.
+2005-04-30 castaglia <castaglia>
-2004-12-22 22:58 castaglia
+ * configure: Updating configure.
- * INSTALL:
- Updating the installation notes.
+2005-04-30 castaglia <castaglia>
-2004-12-17 15:14 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.
- * 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.
+2005-04-30 castaglia <castaglia>
-2004-12-17 13:56 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.
- * modules/mod_dso.c:
- Avoid compiler warning about unused function.
+2005-04-30 castaglia <castaglia>
-2004-12-17 10:24 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.
- * NEWS, contrib/mod_ifsession.c:
- Bug#2536 - mod_ifsession does not properly merge in all
- directives.
+2005-04-30 castaglia <castaglia>
-2004-12-16 17:58 castaglia
+ * NEWS, modules/mod_auth_unix.c: Bug#2582 - ProFTPD on Tru64 with
+ SIA does not call sia_ses_estab().
- * src/sets.c:
- Update xaset_insert_end() so that it updates the 'next' field of
- the previous member in the set.
+2005-04-29 castaglia <castaglia>
-2004-12-16 17:25 castaglia
+ * configure: Updating configure.
- * 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().
+2005-04-29 castaglia <castaglia>
-2004-12-16 16:03 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.
- * contrib/mod_ldap.c:
- Typo.
+2005-04-27 castaglia <castaglia>
-2004-12-16 15:54 castaglia
+ * configure: Updating configure.
- * contrib/mod_ctrls_admin.c:
- Support being unloaded as a shared module.
+2005-04-27 castaglia <castaglia>
-2004-12-16 15:37 castaglia
+ * NEWS, config.h.in, configure.in: Bug#2588 - AIX requires _USE_IRS
+ #define to use hstrerror().
- * contrib/mod_rewrite.c:
- Support being unloaded as a shared module.
+2005-04-25 castaglia <castaglia>
-2004-12-16 15:26 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.
- * contrib/mod_radius.c:
- Add code to support being unloaded as a shared module.
+2005-04-24 castaglia <castaglia>
-2004-12-16 14:55 castaglia
+ * config.h.in: Typo.
- * contrib/: mod_quotatab.c, mod_quotatab.h, mod_quotatab_file.c,
- mod_quotatab_ldap.c, 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.
+2005-04-23 castaglia <castaglia>
- Adds support for graceful unloading of mod_quotatab et al as
- shared modules.
+ * 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...
-2004-12-16 11:38 castaglia
+2005-04-23 castaglia <castaglia>
- * contrib/mod_tls.c:
- Add code to mod_tls to support being unloaded as a shared module.
+ * contrib/mod_quotatab.c: More formatting tweaks for mod_quotatab's
+ display in response to a SITE QUOTA command.
-2004-12-16 10:33 castaglia
+2005-04-23 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.
+ * 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".
-2004-12-16 10:17 castaglia
+2005-04-23 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql_mysql.c, mod_sql_postgres.c:
- Tweak the SQL modules to better handle being built as shared
- modules.
+ * NEWS, modules/mod_ls.c: Bug#2596 - STAT command can cause
+ segfault.
-2004-12-16 10:13 castaglia
+2005-04-22 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.
+ * contrib/mod_sql.c: Be consistent in the style/formatting of the
+ "cache hit for" messages by quoting the group name, too.
- Note that this requires changes to shared modules, to make sure
- they unload themselves properly. Such changes for the contrib/
- modules will follow shortly.
+2005-04-21 castaglia <castaglia>
-2004-12-15 19:01 castaglia
+ * NEWS, modules/Makefile.in: Bug#2593 - `make install-modules' does
+ not honour DESTDIR enviroment variable.
- * 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.
+2005-04-21 jwm <jwm>
- Gracefully avoid a possible segfault during pr_event_register().
+ * .cvsignore, lib/libltdl/.cvsignore: update for libtool
-2004-12-15 18:30 castaglia
+2005-04-21 jwm <jwm>
- * src/auth.c:
- 'login' is a global variable somewhere, so compiling under
- --enable-devel kicks up compiler warnings.
+ * modules/.cvsignore: - ignore libtool-generated files - mod_linuxprivs is gone
-2004-12-15 18:23 castaglia
+2005-04-17 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.
+ * 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
-2004-12-15 16:54 castaglia
+2005-04-15 castaglia <castaglia>
- * doc/howto/DisplayFiles.html:
- Updating the DisplayFiles doc with the newly added Display
- variables.
+ * NEWS, src/dirtree.c: Bug#2587 - HideNoAccess does not work for
+ DefaultRoot/<Anonymous> logins.
-2004-12-15 16:50 castaglia
+2005-04-15 castaglia <castaglia>
- * doc/howto/: DisplayFiles.html, index.html:
- Adding a doc covering the Display directives.
+ * 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.
-2004-12-12 15:55 castaglia
+2005-04-11 castaglia <castaglia>
- * doc/howto/DSO.html:
- Grammatical nicety.
+ * NEWS, contrib/mod_sql_postgres.c: Bug#2584 - mod_sql_postgres
+ missing end-of-comment character.
-2004-12-12 15:03 castaglia
+2005-04-11 castaglia <castaglia>
- * doc/howto/ListOptions.html:
- Updating URL for current location under doc/howto/.
+ * include/version.h: Update version.
-2004-12-12 15:01 castaglia
+2005-04-10 castaglia <castaglia>
- * doc/howto/: ListOptions.html, index.html:
- Adding the ListOptions howto to the source distribution.
+ * NEWS: Updating release date for 1.3.0rc1.
-2004-12-12 14:57 castaglia
+2005-04-10 castaglia <castaglia>
- * RELEASE_NOTES:
- Update the release notes.
+ * 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?
-2004-12-12 14:56 castaglia
+2005-04-10 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#2534 - Add suport for -S ListOption, for sorting files by
- file size.
+ * NEWS, modules/mod_delay.c: Bug#2554 - mod_delay gets
+ segfault-signal on several logins.
-2004-12-12 14:00 castaglia
+2005-04-04 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.
+ * NEWS, modules/mod_auth_unix.c: Bug#2580 - ProFTPD on Tru64 with
+ SIA allows login with blank password.
-2004-12-12 13:52 castaglia
+2005-03-26 castaglia <castaglia>
- * doc/howto/: DSO.html, index.html:
- Adding DSO howto to source distribution.
+ * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
+ Preparing for release of 1.3.0rc1.
-2004-12-12 11:27 castaglia
+2005-03-26 jwm <jwm>
- * doc/contrib/mod_sql.html:
- Add documentation for the SQLEngine directive.
+ * RELEASE_NOTES: mod_ldap is now 2.8.15
-2004-12-12 09:53 castaglia
+2005-03-26 castaglia <castaglia>
- * NEWS, RELEASE_NOTES, contrib/mod_sql.c:
- Bug#2406 - Add a SQLEngine directive.
+ * RELEASE_NOTES: Updating release notes, preparing for release of
+ 1.3.0rc1.
-2004-12-11 21:59 castaglia
+2005-03-25 castaglia <castaglia>
- * modules/: mod_ctrls.c, mod_site.c:
- Use the Auth API functions in the 'pr_' namespace.
+ * NEWS, contrib/mod_tls.c: Bug#2493 - mod_tls should support CCC
+ command.
-2004-12-11 16:14 castaglia
+2005-03-18 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2027 - Add log message for timed out passive transfers.
+ * NEWS, src/support.c: Bug#2576 - PWD command does not handle "
+ character properly.
-2004-12-08 14:30 castaglia
+2005-03-17 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.
+ * 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.
-2004-12-05 00:12 castaglia
+2005-03-16 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.
+ * NEWS, modules/mod_ls.c: Bug#2551 - Recursive LIST with symlinked
+ directories gives duplicate results.
-2004-12-05 00:03 castaglia
+2005-03-16 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.
+ * modules/mod_ls.c: Cruft removal.
-2004-12-04 23:58 castaglia
+2005-03-12 castaglia <castaglia>
- * src/main.c:
- Properly set session.c and session.d to NULL once we've closed
- them.
+ * modules/mod_ls.c: Fix an unreported bug where attempting to use
+ the -t directory listing option would trigger a segfault.
-2004-12-04 22:38 castaglia
+2005-03-11 jwm <jwm>
- * doc/howto/Authentication.html:
- Correct the RequireValidShell FAQ URL.
+ * contrib/mod_ldap.c: [no log message]
-2004-12-04 21:50 castaglia
+2005-03-08 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").
+ * NEWS, src/pool.c: Bug#2567 - Segmentation fault with 64-bit binary
+ due to structure layout difference.
-2004-12-04 20:25 castaglia
+2005-03-06 castaglia <castaglia>
- * doc/howto/Limit.html:
- Add examples of blocking PORT or PASV commands.
+ * contrib/mod_quotatab.c: More consistent log messages.
-2004-12-04 11:17 castaglia
+2005-03-05 castaglia <castaglia>
- * doc/howto/: Upgrade.html, index.html:
- Add an Upgrade mini-HOWTO to doc/howto/.
+ * contrib/mod_quotatab.c: Fixed quotatab_fsio_write() to check the
+ xfer limit as well as the upload limit.
-2004-12-04 01:20 castaglia
+2005-03-05 castaglia <castaglia>
- * doc/contrib/mod_quotatab.html:
- Fix up the links to the quotatab submodule docs.
+ * NEWS, contrib/mod_quotatab.c: Bug#2515 - mod_quotatab should
+ enforce hard limits at the filesystem level.
-2004-12-04 01:13 castaglia
+2005-03-05 castaglia <castaglia>
- * doc/contrib/mod_quotatab.html:
- Update the mod_quotatab installation instructions.
+ * NEWS, contrib/mod_tls.c, modules/mod_auth.c, src/auth.c: Bug#2164
+ - Support non-PASS response codes.
-2004-12-03 23:52 castaglia
+2005-03-05 castaglia <castaglia>
- * contrib/mod_quotatab.c, contrib/mod_quotatab.h,
- doc/contrib/mod_quotatab.html:
- Add some Display variables for mod_quotatab:
+ * NEWS, src/inet.c: Bug#2559 - IPv6 socket option should be set for
+ ServerType inetd.
- %{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}
+2005-03-04 castaglia <castaglia>
- These are documented in the mod_quotatab documentation under
- doc/contrib/.
+ * NEWS, contrib/mod_tls.c: Bug #2573 - TLSProtocol directive in
+ proftpd.conf is ignored.
-2004-12-03 23:43 castaglia
+2005-03-02 castaglia <castaglia>
- * src/var.c:
- Pass the exact pointers provided by callers of pr_var_set(),
- rather than copies of the pointed-to data.
+ * modules/mod_delay.c: Allow for <IfClass>-based tweaks of the
+ DelayEngine directive.
-2004-12-03 23:40 castaglia
+2005-02-28 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).
+ * README.DSO: Mention the DSO howto.
-2004-12-03 23:39 castaglia
+2005-02-27 castaglia <castaglia>
- * src/display.c:
- Fix displaying of variables.
+ * README.modules: List mod_facl in the modules README.
-2004-12-03 23:02 castaglia
+2005-02-27 castaglia <castaglia>
- * RELEASE_NOTES:
- Mention the new Display variables in the release notes.
+ * README.facl: Fleshing out the POSIX ACL doc.
-2004-12-03 22:59 castaglia
+2005-02-27 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.
+ * README.DSO: Update the DSO doc with information on where to find
+ more documentation for the mod_dso module.
-2004-12-03 17:16 castaglia
+2005-02-27 castaglia <castaglia>
- * modules/mod_core.c:
- Handle the case where there's only one name provided in the
- Allow/Deny rule.
+ * README.DSO: Adding more substance to the DSO doc.
-2004-12-02 15:15 castaglia
+2005-02-26 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#2528 - Incorrect username 'and' parsing in AllowUser.
+ * RELEASE_NOTES: Mention the new --enable-facl configure option,
+ mod_facl module in the release notes.
-2004-12-01 17:45 castaglia
+2005-02-26 castaglia <castaglia>
- * src/main.c:
- Close the control and data connections before running any
- registered 'core.exit' event handlers.
+ * src/fsio.c: Fix missing variable declaration.
-2004-12-01 17:24 castaglia
+2005-02-26 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).
+ * configure: Updating configure.
-2004-12-01 10:08 castaglia
+2005-02-26 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.
+ * 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.
-2004-11-29 14:28 castaglia
+2005-02-25 castaglia <castaglia>
- * src/dirtree.c:
- Style cleanup.
+ * NEWS, contrib/mod_sql_mysql.c: Bug #2563: Linking fails on Solaris
+ with libz and libmysqlclient.
-2004-11-28 16:26 castaglia
+2005-02-25 castaglia <castaglia>
- * doc/howto/Debugging.html:
- Updating URL.
+ * ChangeLog: Updated ChangeLog.
-2004-11-25 11:03 jwm
+2005-02-15 jwm <jwm>
- * modules/mod_delay.c: include signal.h to fix the build under
- Solaris 8
+ * contrib/dist/rpm/proftpd.spec: i don't have access to red hat
+ machines anymore, so i'm no longer maintaining this
-2004-11-24 12:38 castaglia
+2005-02-07 castaglia <castaglia>
- * src/support.c:
- More old-style exit handler cruft.
+ * include/inet.h, src/inet.c: Use "const char *" where appropriate.
-2004-11-22 19:43 castaglia
+2005-02-04 castaglia <castaglia>
- * src/display.c:
- Extraneous #include (and at the bottom of a file).
+ * NEWS, src/fsio.c: Bug#2556: Rename of directory across devices
+ fails.
-2004-11-22 19:30 castaglia
+2005-01-25 castaglia <castaglia>
- * modules/mod_core.c:
- We were calling pr_display_file() on DisplayQuit files with the
- arguments in the wrong order.
+ * NEWS, lib/libcap/cap_sys.c: Bug#2503 - Bundled libcap library does
+ not compile on IA64 machine.
-2004-11-21 22:09 castaglia
+2005-01-13 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.
+ * 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.
-2004-11-21 21:36 castaglia
+2005-01-06 castaglia <castaglia>
- * NEWS:
- Bug#2510 - Use of ExportCertData TLSOption leads to segfault.
+ * 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).
-2004-11-21 21:21 castaglia
+2005-01-06 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.
+ * src/bindings.c: Fix segfault caused by a NULL listener_list.
- This patch is also part of the solution for Bug #2313.
+2005-01-03 castaglia <castaglia>
-2004-11-21 17:37 castaglia
+ * doc/howto/Stopping.html: Updating FAQ URL.
- * contrib/mod_tls.c:
- Adding some missing logic; pointers that have been free()'d
- should always be set to NULL afterwards.
+2005-01-03 castaglia <castaglia>
-2004-11-21 16:34 castaglia
+ * INSTALL: Apparently configure scripts don't pass env vars very
+ well to sub-configure scripts.
- * Makefile.in:
- As per Michael's suggestion, remove the .libs/ directory, and
- libtool, during the 'distclean' target.
+2005-01-02 jwm <jwm>
-2004-11-21 16:27 castaglia
+ * lib/glibc-hstrerror.c: silence ranlib's 'object contains no
+ symbols' warning if the host OS already has hstrerror()
- * src/support.c:
- More old-style exit handler cruft.
+2005-01-02 castaglia <castaglia>
-2004-11-21 16:26 castaglia
+ * RELEASE_NOTES: Make a note to describe the addition of mod_delay
+ to the module list.
- * src/main.c:
- Straggler run_exit_handlers() call. Be gone with ye!
+2005-01-01 castaglia <castaglia>
-2004-11-21 16:21 castaglia
+ * doc/contrib/mod_load.html: Updating the mod_load docs to mention
+ the provided Display variables.
- * include/support.h, src/main.c, src/support.c:
- No more support for the old-style exit handlers.
+2005-01-01 castaglia <castaglia>
-2004-11-21 15:36 castaglia
+ * doc/howto/DisplayFiles.html: Mention that other modules can add
+ their own Display variables.
- * modules/mod_delay.c:
- Allow SIGTERM to interrupt mod_delay.
+2005-01-01 castaglia <castaglia>
-2004-11-21 12:26 castaglia
+ * contrib/mod_load/mod_load.c.in: Enhance mod_load to use the
+ Variables API.
- * 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.
+2005-01-01 castaglia <castaglia>
- 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.
+ * contrib/mod_load/configure: Updating configure.
-2004-11-21 11:16 castaglia
+2005-01-01 castaglia <castaglia>
- * doc/contrib/mod_ifsession.html:
- Forgot to list MaxInstances as not being alterable by
- mod_ifsession.
+ * doc/contrib/mod_load.html: Eliminated the need for Solaris users
+ to do anything special when building mod_load; its configure script
+ handles everything.
-2004-11-21 11:09 castaglia
+2005-01-01 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.
+ * 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.
-2004-11-20 14:35 castaglia
+2005-01-01 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.
+ * contrib/mod_load/mod_load.c: No need for mod_load's getloadavg()
+ function to be visible outside of the source file.
-2004-11-20 13:20 castaglia
+2005-01-01 castaglia <castaglia>
- * src/timers.c:
- Be a little more paranoid: don't set the indispatch flag until
- after alarms have been blocked.
+ * 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).
-2004-11-20 12:38 castaglia
+2005-01-01 castaglia <castaglia>
- * README.IPv6:
- Remove mention of the Bind directive. We want it gone.
+ * contrib/mod_load/mod_load.c: Slightly prettier code organization.
-2004-11-20 12:32 castaglia
+2005-01-01 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.
+ * contrib/mod_load/mod_load.c: Updating mod_load source style.
-2004-11-19 19:15 castaglia
+2005-01-01 castaglia <castaglia>
- * RELEASE_NOTES:
- Adding a comment about how use of sendfile() causes download
- transfer speeds not to be displayable.
+ * doc/contrib/index.html: Update doc/contrib index to include
+ mod_load reference.
-2004-11-17 09:58 castaglia
+2005-01-01 castaglia <castaglia>
- * doc/howto/Controls.html:
- Mention that only primary groups, not supplemental groups, are
- used.
+ * README.modules, RELEASE_NOTES: Add mod_load to the list of
+ modules.
-2004-11-17 09:33 castaglia
+2005-01-01 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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.
-2004-11-17 09:28 castaglia
+2005-01-01 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.
+ * configure: Updating configure.
-2004-11-14 17:39 castaglia
+2005-01-01 castaglia <castaglia>
- * README.modules:
- Updating README.modules.
+ * modules/Makefile.in: Fix the install target when handling only
+ shared modules that install themselves.
-2004-11-14 16:21 castaglia
+2005-01-01 castaglia <castaglia>
- * modules/: mod_core.c, 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.
+ * .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-11-14 15:58 castaglia
+2004-12-31 castaglia <castaglia>
- * modules/mod_core.c:
- Check that a scoreboard entry's PID is non-zero before sending
- the zero signal to that PID.
+ * doc/howto/FTP.html: Updating the list of SITE commands supported
+ by ProFTPD.
-2004-11-14 15:45 castaglia
+2004-12-31 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.
+ * doc/howto/FTP.html: Updating the list of FTP commands supported by
+ ProFTPD.
-2004-11-14 13:03 castaglia
+2004-12-30 castaglia <castaglia>
- * doc/howto/: Scoreboard.html, index.html:
- Adding a ScoreboardFile mini-HOWTO.
+ * 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-11-13 15:01 castaglia
+2004-12-30 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.
+ * NEWS, modules/mod_core.c: Bug#2541 - <Directory ~user> path
+ resolved at startup time, rather than at session time.
-2004-11-13 14:47 castaglia
+2004-12-30 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.
+ * NEWS, modules/mod_delay.c: Bug#2540 - Fails to disable mod_delay
+ if no DelayTable file exists.
- 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-12-23 castaglia <castaglia>
-2004-11-13 14:41 castaglia
+ * modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c: More
+ prettification of error messages.
- * modules/mod_delay.c:
- Use proper grammar.
+2004-12-23 castaglia <castaglia>
-2004-11-11 10:58 castaglia
+ * contrib/mod_sql.c: Makes for nicer error messages.
- * RELEASE_NOTES, modules/mod_log.c:
- Make "SECURE" an alias for "SEC" when configuring ExtendedLog
- logging classes.
+2004-12-23 castaglia <castaglia>
-2004-11-10 18:44 castaglia
+ * INSTALL: Updating the installation notes.
- * 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-12-17 castaglia <castaglia>
-2004-11-10 10:54 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.
- * configure:
- Updating configure.
+2004-12-17 castaglia <castaglia>
-2004-11-10 10:34 castaglia
+ * modules/mod_dso.c: Avoid compiler warning about unused function.
- * RELEASE_NOTES:
- Mention the new UseSendfile directive.
+2004-12-17 castaglia <castaglia>
-2004-11-10 10:32 castaglia
+ * NEWS, contrib/mod_ifsession.c: Bug#2536 - mod_ifsession does not
+ properly merge in all directives.
- * NEWS, configure.in, modules/mod_xfer.c:
- Bug#2507 - Enable use of sendfile by default.
+2004-12-17 castaglia <castaglia>
-2004-11-10 10:19 castaglia
+ * src/sets.c: Update xaset_insert_end() so that it updates the
+ 'next' field of the previous member in the set.
- * 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-12-17 castaglia <castaglia>
-2004-11-09 19:26 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().
- * src/timers.c:
- Prevent callers from providing a negative number of seconds when
- adding a timer.
+2004-12-17 castaglia <castaglia>
-2004-11-09 11:17 castaglia
+ * contrib/mod_ldap.c: Typo.
- * NEWS:
- Add a header to the NEWS file indicating the Bugzilla URL to use
- for looking up the mentioned bug reports.
+2004-12-16 castaglia <castaglia>
-2004-11-08 19:07 castaglia
+ * contrib/mod_ctrls_admin.c: Support being unloaded as a shared
+ module.
- * modules/mod_delay.c:
- Use PR_RUN_DIR, not RUN_DIR.
+2004-12-16 castaglia <castaglia>
-2004-11-08 18:46 castaglia
+ * contrib/mod_rewrite.c: Support being unloaded as a shared module.
- * configure:
- Updating configure.
+2004-12-16 castaglia <castaglia>
-2004-11-08 18:45 castaglia
+ * contrib/mod_radius.c: Add code to support being unloaded as a
+ shared module.
- * NEWS:
- Bug#2480 - Remote users discovery.
+2004-12-16 castaglia <castaglia>
-2004-11-08 18:41 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.
- * configure.in:
- Make mod_delay one of the default modules.
+2004-12-16 castaglia <castaglia>
-2004-11-08 18:37 castaglia
+ * contrib/mod_tls.c: Add code to mod_tls to support being unloaded
+ as a shared module.
- * modules/mod_delay.c, doc/modules/mod_delay.html:
- Adding mod_delay to the distribution. Part of Bug #2480.
+2004-12-16 castaglia <castaglia>
-2004-11-07 17:43 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.
- * modules/Makefile.in:
- Found a case where make(1) was not providing $(RM). How
- annoying.
+2004-12-16 castaglia <castaglia>
-2004-11-06 13:25 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.
- * configure:
- Updating configure.
+2004-12-16 castaglia <castaglia>
-2004-11-06 13:21 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.
- * configure.in:
- I prefer, if possible, to see the functions checked in
- alphabetical order.
+2004-12-16 castaglia <castaglia>
-2004-11-04 21:12 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().
- * README.DSO:
- Adding reminder note.
+2004-12-16 castaglia <castaglia>
-2004-11-04 16:49 castaglia
+ * src/auth.c: 'login' is a global variable somewhere, so compiling
+ under --enable-devel kicks up compiler warnings.
- * configure:
- Updated configure.
+2004-12-16 castaglia <castaglia>
-2004-11-04 16:43 castaglia
+ * Makefile.in: The shell's test function prefers to operate on
+ single strings, so enclose the expanded $SHARED_MODULE_OBJS list
+ within quotations.
- * configure.in, config.h.in:
- Check for the fdatasync(2) function.
+2004-12-16 castaglia <castaglia>
-2004-11-04 14:48 castaglia
+ * doc/howto/DisplayFiles.html: Updating the DisplayFiles doc with
+ the newly added Display variables.
- * NEWS, include/data.h, modules/mod_xfer.c, src/data.c:
- Bug#2509 - sendfile() usage fails with > 2GB files.
+2004-12-16 castaglia <castaglia>
-2004-11-04 14:17 castaglia
+ * doc/howto/DisplayFiles.html, doc/howto/index.html: Adding a doc
+ covering the Display directives.
- * doc/GetConf:
- Removing crufty old file.
+2004-12-12 castaglia <castaglia>
-2004-11-04 11:25 castaglia
+ * doc/howto/DSO.html: Grammatical nicety.
- * configure:
- Updating configure.
+2004-12-12 castaglia <castaglia>
-2004-11-04 11:11 castaglia
+ * doc/howto/ListOptions.html: Updating URL for current location
+ under doc/howto/.
- * config.h.in, configure.in:
- Add checks for iconv() and nl_langinfo(), which will be needed
- for i18n support.
+2004-12-12 castaglia <castaglia>
-2004-11-03 12:11 castaglia
+ * doc/howto/ListOptions.html, doc/howto/index.html: Adding the
+ ListOptions howto to the source distribution.
- * doc/contrib/index.html:
- Adding an index to the doc/contrib/ directory.
+2004-12-12 castaglia <castaglia>
-2004-11-03 11:37 castaglia
+ * RELEASE_NOTES: Update the release notes.
- * doc/contrib/: ftpasswd.html, ftpquota.html, mod_ctrls_admin.html,
- mod_ifsession.html, mod_quotatab.html, mod_quotatab_file.html,
- mod_quotatab_ldap.html, mod_quotatab_sql.html, mod_radius.html,
- mod_rewrite.html, mod_site_misc.html, mod_sql.html, mod_tls.html,
- mod_wrap.html:
- Moving the HTML documentation from contrib/ to doc/contrib/.
+2004-12-12 castaglia <castaglia>
-2004-11-03 11:37 castaglia
+ * NEWS, modules/mod_ls.c: Bug#2534 - Add suport for -S ListOption,
+ for sorting files by file size.
- * contrib/: ftpasswd.html, ftpquota.html, mod_ctrls_admin.html,
- mod_ifsession.html, mod_quotatab.html, mod_quotatab_file.html,
- mod_quotatab_ldap.html, mod_quotatab_sql.html, mod_radius.html,
- mod_rewrite.html, mod_site_misc.html, mod_sql.html, mod_tls.html,
- mod_wrap.html:
- Moving the HTML documentation from contrib/ into doc/contrib/.
+2004-12-12 castaglia <castaglia>
-2004-11-03 08:53 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.
- * modules/: mod_auth_pam.c, mod_core.c, mod_ls.c, mod_xfer.c:
- Removing deprecated directives.
+2004-12-12 castaglia <castaglia>
-2004-11-03 08:44 castaglia
+ * doc/howto/DSO.html, doc/howto/index.html: Adding DSO howto to
+ source distribution.
- * 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-12-12 castaglia <castaglia>
-2004-11-02 19:18 castaglia
+ * doc/contrib/mod_sql.html: Add documentation for the SQLEngine
+ directive.
- * config.h.in, configure.in:
- Check for, and record, the size of a size_t.
+2004-12-12 castaglia <castaglia>
-2004-11-02 17:54 castaglia
+ * NEWS, RELEASE_NOTES, contrib/mod_sql.c: Bug#2406 - Add a SQLEngine
+ directive.
- * 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.
+2004-12-12 castaglia <castaglia>
- Also handle signals while iterating through the table chains in
- pr_table_empty().
+ * modules/mod_ctrls.c, modules/mod_site.c: Use the Auth API
+ functions in the 'pr_' namespace.
-2004-11-02 16:40 castaglia
+2004-12-12 castaglia <castaglia>
- * include/default_paths.h:
- Remove an unused macro, and its accompanying crufty comment.
+ * NEWS, modules/mod_xfer.c: Bug#2027 - Add log message for timed out
+ passive transfers.
-2004-11-02 10:18 castaglia
+2004-12-08 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.
+ * 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-11-01 20:01 castaglia
+2004-12-05 castaglia <castaglia>
- * Makefile.in:
- No need to invoke modules/Makefile's 'shared-modules' target if
- there are no shared module to build.
+ * 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-11-01 19:35 castaglia
+2004-12-05 castaglia <castaglia>
- * Makefile.in, lib/Makefile.in, modules/Makefile.in:
- More tweaks to get builds using just --with-modules to work
- again.
+ * 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-11-01 19:23 castaglia
+2004-12-05 castaglia <castaglia>
- * configure:
- Updating configure.
+ * src/main.c: Properly set session.c and session.d to NULL once
+ we've closed them.
-2004-11-01 19:15 castaglia
+2004-12-05 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.
+ * doc/howto/Authentication.html: Correct the RequireValidShell FAQ
+ URL.
-2004-11-01 09:48 castaglia
+2004-12-05 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.
+ * 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-11-01 09:42 castaglia
+2004-12-05 castaglia <castaglia>
- * configure:
- Updating configure.
+ * doc/howto/Limit.html: Add examples of blocking PORT or PASV
+ commands.
-2004-11-01 09:38 castaglia
+2004-12-04 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.
+ * doc/howto/Upgrade.html, doc/howto/index.html: Add an Upgrade
+ mini-HOWTO to doc/howto/.
-2004-11-01 09:30 castaglia
+2004-12-04 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().
+ * doc/contrib/mod_quotatab.html: Fix up the links to the quotatab
+ submodule docs.
-2004-11-01 09:21 castaglia
+2004-12-04 castaglia <castaglia>
- * src/display.c:
- Bad reuse of variable name.
+ * doc/contrib/mod_quotatab.html: Update the mod_quotatab
+ installation instructions.
-2004-11-01 09:12 castaglia
+2004-12-04 castaglia <castaglia>
- * include/var.h:
- Forgot to declare the pr_var_delete() function.
+ * 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-10-31 14:39 castaglia
+2004-12-04 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.
+ * src/var.c: Pass the exact pointers provided by callers of
+ pr_var_set(), rather than copies of the pointed-to data.
-2004-10-31 14:36 castaglia
+2004-12-04 castaglia <castaglia>
- * modules/mod_dso.c:
- Remove an unnecessary function.
+ * 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-10-31 14:27 castaglia
+2004-12-04 castaglia <castaglia>
- * modules/mod_core.c:
- Report the line number of the <IfDefine>, <IfModule> sections
- used or skipped.
+ * src/display.c: Fix displaying of variables.
-2004-10-31 14:26 castaglia
+2004-12-04 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.
+ * RELEASE_NOTES: Mention the new Display variables in the release
+ notes.
-2004-10-31 14:11 castaglia
+2004-12-04 castaglia <castaglia>
- * modules/mod_dso.c:
- Some of the loop variables are only used if Controls support is
- enabled.
+ * 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-10-31 14:03 castaglia
+2004-12-04 castaglia <castaglia>
- * configure:
- Updating configure.
+ * modules/mod_core.c: Handle the case where there's only one name
+ provided in the Allow/Deny rule.
-2004-10-31 14:00 castaglia
+2004-12-02 castaglia <castaglia>
- * aclocal.m4:
- Update our local autoconf macros, specifically those dealing with
- libtool. This should fix the warning:
+ * NEWS, modules/mod_core.c: Bug#2528 - Incorrect username 'and'
+ parsing in AllowUser.
- libtool: link: warning: `AC_LIBTOOL_DLOPEN' not used. Assuming
- no dlopen support.
+2004-12-02 castaglia <castaglia>
- that I was seeing.
+ * src/main.c: Close the control and data connections before running
+ any registered 'core.exit' event handlers.
-2004-10-31 13:22 castaglia
+2004-12-02 castaglia <castaglia>
- * src/table.c:
- Quell a compiler warning about "use of cast expressions as
- lvalues" by being explicit.
+ * 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-10-31 13:06 castaglia
+2004-12-01 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.
+ * 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-10-31 12:58 castaglia
+2004-11-29 castaglia <castaglia>
- * modules/Makefile.in:
- The building of modules should require the libltdl header or
- library. Just libtool to handle the linking.
+ * src/dirtree.c: Style cleanup.
-2004-10-31 12:56 castaglia
+2004-11-29 castaglia <castaglia>
- * src/main.c:
- Add the display of PR_TUNABLE_RCVBUFSZ, PR_TUNABLE_SNDBUFSZ to
- the -V output.
+ * doc/howto/Debugging.html: Updating URL.
-2004-10-31 12:49 castaglia
+2004-11-25 jwm <jwm>
- * configure:
- Updating configure.
+ * modules/mod_delay.c: include signal.h to fix the build under
+ Solaris 8
-2004-10-31 12:46 castaglia
+2004-11-24 castaglia <castaglia>
- * configure.in, Makefile.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.
+ * src/support.c: More old-style exit handler cruft.
-2004-10-31 12:24 castaglia
+2004-11-23 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.
+ * src/display.c: Extraneous #include (and at the bottom of a file).
-2004-10-31 12:19 castaglia
+2004-11-23 castaglia <castaglia>
- * configure:
- Updating configure.
+ * modules/mod_core.c: We were calling pr_display_file() on
+ DisplayQuit files with the arguments in the wrong order.
-2004-10-31 12:16 castaglia
+2004-11-22 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.
+ * 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-10-31 12:13 castaglia
+2004-11-22 castaglia <castaglia>
- * configure:
- Updating configure.
+ * NEWS: Bug#2510 - Use of ExportCertData TLSOption leads to
+ segfault.
-2004-10-31 12:11 castaglia
+2004-11-22 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.
+ * 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-10-31 12:06 castaglia
+2004-11-22 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.
+ * contrib/mod_tls.c: Adding some missing logic; pointers that have
+ been free()'d should always be set to NULL afterwards.
-2004-10-31 12:01 castaglia
+2004-11-22 castaglia <castaglia>
- * configure:
- Updating configure.
+ * Makefile.in: As per Michael's suggestion, remove the .libs/
+ directory, and libtool, during the 'distclean' target.
-2004-10-31 11:58 castaglia
+2004-11-22 castaglia <castaglia>
- * src/var.c:
- Quell a compiler warning about a label with no expressions.
+ * src/support.c: More old-style exit handler cruft.
-2004-10-31 11:57 castaglia
+2004-11-22 castaglia <castaglia>
- * config.h.in, configure.in:
- Check for the <string.h> header.
+ * src/main.c: Straggler run_exit_handlers() call. Be gone with ye!
-2004-10-31 11:54 castaglia
+2004-11-22 castaglia <castaglia>
- * configure:
- Updating configure.
+ * include/support.h, src/main.c, src/support.c: No more support for
+ the old-style exit handlers.
-2004-10-31 11:51 castaglia
+2004-11-21 castaglia <castaglia>
- * configure.in:
- Initialize the socket buffer sizes, just to be safe.
+ * modules/mod_delay.c: Allow SIGTERM to interrupt mod_delay.
-2004-10-31 11:37 castaglia
+2004-11-21 castaglia <castaglia>
- * RELEASE_NOTES, include/version.h:
- As Daniel noted, it should be "1.3.0", not just "1.3".
+ * 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-10-31 11:35 castaglia
+2004-11-21 castaglia <castaglia>
- * configure:
- Updating configure.
+ * doc/contrib/mod_ifsession.html: Forgot to list MaxInstances as not
+ being alterable by mod_ifsession.
-2004-10-31 11:31 castaglia
+2004-11-21 castaglia <castaglia>
- * configure.in:
- Bourne shell tests on Solaris don't like testing empty values;
- they prefer the empty string if nothing else.
+ * 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-10-31 11:12 castaglia
+2004-11-20 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-10-31 11:09 castaglia
+2004-11-20 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.
+ * src/timers.c: Be a little more paranoid: don't set the indispatch
+ flag until after alarms have been blocked.
- 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-11-20 castaglia <castaglia>
-2004-10-31 11:03 castaglia
+ * README.IPv6: Remove mention of the Bind directive. We want it
+ gone.
- * 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-11-20 castaglia <castaglia>
-2004-10-31 10:53 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.
- * NEWS:
- Updating NEWS.
+2004-11-20 castaglia <castaglia>
-2004-10-31 10:53 castaglia
+ * RELEASE_NOTES: Adding a comment about how use of sendfile() causes
+ download transfer speeds not to be displayable.
- * 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.
+2004-11-17 castaglia <castaglia>
- 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.
+ * doc/howto/Controls.html: Mention that only primary groups, not
+ supplemental groups, are used.
-2004-10-31 10:45 castaglia
+2004-11-17 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.
+ * configure: Updating configure.
-2004-10-30 19:14 castaglia
+2004-11-17 castaglia <castaglia>
- * RELEASE_NOTES:
- Updating the release notes. These still need some work.
+ * 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-10-30 18:57 castaglia
+2004-11-15 castaglia <castaglia>
- * src/inet.c:
- Typo.
+ * README.modules: Updating README.modules.
-2004-10-30 18:39 castaglia
+2004-11-15 castaglia <castaglia>
- * src/parser.c:
- Update the license to reflect the proper original copyright
- holder(s).
+ * 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-10-30 18:32 castaglia
+2004-11-14 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.
+ * modules/mod_core.c: Check that a scoreboard entry's PID is
+ non-zero before sending the zero signal to that PID.
-2004-10-30 17:57 castaglia
+2004-11-14 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.
+ * 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-10-30 16:18 castaglia
+2004-11-14 castaglia <castaglia>
- * src/main.c:
- Use pr_auth_getgroups(), not auth_getgroups().
+ * doc/howto/Scoreboard.html, doc/howto/index.html: Adding a
+ ScoreboardFile mini-HOWTO.
-2004-10-30 16:16 castaglia
+2004-11-13 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.
+ * 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-10-30 16:14 castaglia
+2004-11-13 castaglia <castaglia>
- * modules/mod_core.c:
- Use the Auth API functions in the 'pr_' namespace rather than
- relying on the compatibility macros.
+ * 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-10-30 15:11 castaglia
+2004-11-13 castaglia <castaglia>
- * configure:
- Updating configure.
+ * modules/mod_delay.c: Use proper grammar.
-2004-10-30 15:06 castaglia
+2004-11-11 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.
+ * RELEASE_NOTES, modules/mod_log.c: Make "SECURE" an alias for "SEC"
+ when configuring ExtendedLog logging classes.
-2004-10-30 14:55 castaglia
+2004-11-11 castaglia <castaglia>
- * src/timers.c:
- This struct is no longer typedef'd.
+ * 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-10-30 14:01 castaglia
+2004-11-10 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.
+ * configure: Updating configure.
-2004-10-30 13:57 castaglia
+2004-11-10 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).
+ * RELEASE_NOTES: Mention the new UseSendfile directive.
-2004-10-30 13:45 castaglia
+2004-11-10 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.
+ * NEWS, configure.in, modules/mod_xfer.c: Bug#2507 - Enable use of
+ sendfile by default.
-2004-10-30 13:44 castaglia
+2004-11-10 castaglia <castaglia>
- * include/ftp.h:
- In the near future, a module will implement support for RFC2640's
- LANG command.
+ * 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-10-30 13:42 castaglia
+2004-11-10 castaglia <castaglia>
- * include/version.h:
- With the addition of DSO support, ProFTPD is now moving into the
- 1.3.x series. Whee!
+ * src/timers.c: Prevent callers from providing a negative number of
+ seconds when adding a timer.
-2004-10-29 15:56 castaglia
+2004-11-09 castaglia <castaglia>
- * ltmain.sh:
- Yet another bug in GNU's ltmain.sh script -- yet another
- undeclared variable.
+ * NEWS: Add a header to the NEWS file indicating the Bugzilla URL to
+ use for looking up the mentioned bug reports.
-2004-10-29 15:33 castaglia
+2004-11-09 castaglia <castaglia>
- * doc/modules/mod_dso.html:
- Typo (spotted by Michael).
+ * modules/mod_delay.c: Use PR_RUN_DIR, not RUN_DIR.
-2004-10-29 15:23 castaglia
+2004-11-09 castaglia <castaglia>
- * doc/modules/mod_dso.html:
- Adding documentation for mod_dso.
+ * configure: Updating configure.
-2004-10-29 14:46 castaglia
+2004-11-09 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.
+ * NEWS: Bug#2480 - Remote users discovery.
-2004-10-29 12:17 castaglia
+2004-11-09 castaglia <castaglia>
- * modules/mod_core.c:
- The DebugLevel configuration handler was not recognizing 10 as a
- valid debug level.
+ * configure.in: Make mod_delay one of the default modules.
-2004-10-29 09:08 castaglia
+2004-11-09 castaglia <castaglia>
- * doc/modules/mod_ctrls.html:
- Grammar fix.
+ * doc/modules/mod_delay.html, modules/mod_delay.c: Adding mod_delay
+ to the distribution. Part of Bug #2480.
-2004-10-29 08:29 castaglia
+2004-11-08 castaglia <castaglia>
- * modules/mod_dso.c:
- Removing debugging cruft.
+ * modules/Makefile.in: Found a case where make(1) was not providing
+ $(RM). How annoying.
-2004-10-29 08:21 castaglia
+2004-11-06 castaglia <castaglia>
- * configure:
- Updating configure.
+ * configure: Updating configure.
-2004-10-28 23:01 castaglia
+2004-11-06 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.
+ * configure.in: I prefer, if possible, to see the functions checked
+ in alphabetical order.
-2004-10-28 22:51 castaglia
+2004-11-05 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.
+ * README.DSO: Adding reminder note.
-2004-10-28 22:33 castaglia
+2004-11-05 castaglia <castaglia>
- * configure:
- Updating configure.
+ * configure: Updated configure.
-2004-10-28 22:28 castaglia
+2004-11-05 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.
+ * config.h.in, configure.in: Check for the fdatasync(2) function.
-2004-10-28 22:21 castaglia
+2004-11-04 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.
+ * NEWS, include/data.h, modules/mod_xfer.c, src/data.c: Bug#2509 -
+ sendfile() usage fails with > 2GB files.
-2004-10-28 22:19 castaglia
+2004-11-04 castaglia <castaglia>
- * aclocal.m4:
- Adding GNU libtool M4 definitions to our aclocal.m4.
+ * configure: Updating configure.
-2004-10-28 22:17 castaglia
+2004-11-04 castaglia <castaglia>
- * lib/libltdl/: COPYING.LIB, Makefile.am, Makefile.in, README,
- acinclude.m4, aclocal.m4, config-h.in, config.guess, config.sub,
- configure, configure.ac, install-sh, ltdl.c, ltdl.h, ltmain.sh,
- missing:
- Adding GNU libtool's libltdl files to ProFTPD.
+ * config.h.in, configure.in: Add checks for iconv() and
+ nl_langinfo(), which will be needed for i18n support.
-2004-10-28 18:10 castaglia
+2004-11-03 castaglia <castaglia>
- * modules/mod_core.c:
- The checks for <IfDefine>, </IfDefine>, <IfModule>, and
- </IfModule>, within the respective directive handlers, need to be
- case-insensitive.
+ * doc/contrib/index.html: Adding an index to the doc/contrib/
+ directory.
-2004-10-28 12:11 castaglia
+2004-11-03 castaglia <castaglia>
- * NEWS, utils/ftptop.c:
- Bug#2484 - Better ftptop formatting.
+ * 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-10-26 18:49 castaglia
+2004-11-03 castaglia <castaglia>
- * modules/mod_xfer.c:
- Typo.
+ * modules/mod_auth_pam.c, modules/mod_core.c, modules/mod_ls.c,
+ modules/mod_xfer.c: Removing deprecated directives.
-2004-10-26 16:24 castaglia
+2004-11-03 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.
+ * 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-10-26 15:28 castaglia
+2004-11-03 castaglia <castaglia>
- * configure:
- Updating configure.
+ * config.h.in, configure.in: Check for, and record, the size of a
+ size_t.
-2004-10-26 15:19 castaglia
+2004-11-03 castaglia <castaglia>
- * config.h.in, configure.in:
- Define CONFIG_DIR to point to the hardcoded directory containing
- the proftpd.conf file.
+ * 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-10-26 15:14 castaglia
+2004-11-03 castaglia <castaglia>
- * Make.rules.in, include/conf.h, include/table.h, src/table.c:
- Adding the Table API source.
+ * include/default_paths.h: Remove an unused macro, and its
+ accompanying crufty comment.
-2004-10-19 18:32 castaglia
+2004-11-02 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.
+ * 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.
- 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-11-02 castaglia <castaglia>
-2004-10-18 09:42 castaglia
+ * Makefile.in: No need to invoke modules/Makefile's 'shared-modules'
+ target if there are no shared module to build.
- * modules/mod_xfer.c:
- A few cases where log_pri() was being used, rather than
- pr_log_pri().
+2004-11-02 castaglia <castaglia>
-2004-10-17 16:42 castaglia
+ * Makefile.in, lib/Makefile.in, modules/Makefile.in: More tweaks to
+ get builds using just --with-modules to work again.
- * doc/howto/Directory.html:
- Mention using quotations to enclose directory paths that contain
- spaces.
+2004-11-02 castaglia <castaglia>
-2004-10-17 16:29 castaglia
+ * configure: Updating configure.
- * NEWS, modules/mod_core.c:
- Bug#1965 - Change timing of handling of QUIT command.
+2004-11-02 castaglia <castaglia>
-2004-10-17 12:09 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.
- * contrib/mod_sql.c:
- Extraneous redeclaration of a variable.
+2004-11-01 castaglia <castaglia>
-2004-10-17 10:47 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.
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Fixing bad reuse of variable name from outer scope.
+2004-11-01 castaglia <castaglia>
-2004-10-16 18:21 castaglia
+ * configure: Updating configure.
- * RELEASE_NOTES:
- Mention the new MaxConnectionsPerHost directive in the release
- notes.
+2004-11-01 castaglia <castaglia>
-2004-10-16 18:10 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.
- * NEWS, modules/mod_auth.c:
- Bug#2273 - Ability to limit number of unauthenticated clients
- from a single host.
+2004-11-01 castaglia <castaglia>
-2004-10-15 17:43 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().
- * NEWS, modules/mod_auth_pam.c:
- Bug#2497 - Users can login without password if pam_start() fails.
+2004-11-01 castaglia <castaglia>
-2004-10-15 10:07 castaglia
+ * src/display.c: Bad reuse of variable name.
- * NEWS, src/auth.c, src/dirtree.c:
- Bug#2499 - make_cmd() does not NULL-terminate cmd->argv[].
+2004-11-01 castaglia <castaglia>
-2004-10-14 19:43 castaglia
+ * include/var.h: Forgot to declare the pr_var_delete() function.
- * 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-31 castaglia <castaglia>
-2004-10-11 20:07 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.
- * src/inet.c:
- Nicer error message.
+2004-10-31 castaglia <castaglia>
-2004-10-11 10:03 castaglia
+ * modules/mod_dso.c: Remove an unnecessary function.
- * 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-31 castaglia <castaglia>
-2004-10-11 09:33 castaglia
+ * modules/mod_core.c: Report the line number of the <IfDefine>,
+ <IfModule> sections used or skipped.
- * 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-31 castaglia <castaglia>
-2004-10-09 15:34 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.
- * doc/howto/TLS.html:
- Update link to FTPS Draft.
+2004-10-31 castaglia <castaglia>
-2004-10-09 15:24 castaglia
+ * modules/mod_dso.c: Some of the loop variables are only used if
+ Controls support is enabled.
- * 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-31 castaglia <castaglia>
-2004-10-09 13:46 castaglia
+ * configure: Updating configure.
- * 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-31 castaglia <castaglia>
-2004-10-09 13:44 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.
- * 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-31 castaglia <castaglia>
-2004-10-08 18:16 jwm
+ * src/table.c: Quell a compiler warning about "use of cast
+ expressions as lvalues" by being explicit.
- * contrib/mod_ldap.c: release 2.8.14
+2004-10-31 castaglia <castaglia>
-2004-10-07 14:17 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.
- * contrib/ftpasswd:
- Explicitly mention "RequireValidShell off" if the given shell is
- not in /etc/shells.
+2004-10-31 castaglia <castaglia>
-2004-10-07 11:59 castaglia
+ * modules/Makefile.in: The building of modules should require the
+ libltdl header or library. Just libtool to handle the linking.
- * NEWS, modules/mod_ls.c:
- Bug#2496 - NLST off-by-one bug when handling relative paths in a
- chrooted session.
+2004-10-31 castaglia <castaglia>
-2004-10-07 11:35 castaglia
+ * src/main.c: Add the display of PR_TUNABLE_RCVBUFSZ,
+ PR_TUNABLE_SNDBUFSZ to the -V output.
- * contrib/mod_sql.html:
- Remove mention of the PERCALL parameter of SQLConnectInfo, until
- the feature actually works.
+2004-10-31 castaglia <castaglia>
-2004-10-07 08:53 castaglia
+ * configure: Updating configure.
- * modules/mod_ls.c:
- Use the Auth API in the 'pr_' namespace.
+2004-10-31 castaglia <castaglia>
-2004-10-06 11:42 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.
- * contrib/mod_sql.html:
- Removing mention of SQLAuthenticate's "*" suffix, as it was
- deprecated in the 1.2.10 release cycle.
+2004-10-31 castaglia <castaglia>
-2004-10-02 13:22 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.
- * contrib/mod_tls.c:
- Handle signals when in potentially infinite gotos, so that the
- process can be interrupted.
+2004-10-31 castaglia <castaglia>
- 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).
+ * configure: Updating configure.
-2004-10-02 13:05 castaglia
+2004-10-31 castaglia <castaglia>
- * doc/howto/TLS.html:
- Adding two more FAQs to the TLS howto.
+ * 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-01 22:48 castaglia
+2004-10-31 castaglia <castaglia>
- * doc/rfc/: draft-murray-auth-ftp-ssl-13.txt,
- draft-murray-auth-ftp-ssl-15.txt:
- Updating the FTPS Draft to the current version.
+ * configure: Updating configure.
-2004-10-01 21:24 castaglia
+2004-10-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- Fix the logic when reporting on syscall errors, so that the
- errors are properly reported.
+ * 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-01 20:34 castaglia
+2004-10-31 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.
+ * 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-01 20:30 castaglia
+2004-10-31 castaglia <castaglia>
- * contrib/mod_tls.c:
- Remove code that is never compiled.
+ * configure: Updating configure.
-2004-09-30 17:43 castaglia
+2004-10-31 castaglia <castaglia>
- * NEWS, modules/mod_auth_pam.c:
- Bug#2492 - Off-by-one error in FreeBSD PAM username length check.
+ * src/var.c: Quell a compiler warning about a label with no
+ expressions.
-2004-09-29 14:04 castaglia
+2004-10-31 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.
+ * config.h.in, configure.in: Check for the <string.h> header.
-2004-09-27 18:25 jwm
+2004-10-31 castaglia <castaglia>
- * NEWS, contrib/mod_ldap.c: new mod_ldap 2.8.13
+ * configure: Updating configure.
-2004-09-27 10:12 castaglia
+2004-10-31 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.
+ * configure.in: Initialize the socket buffer sizes, just to be safe.
-2004-09-26 14:12 castaglia
+2004-10-31 castaglia <castaglia>
- * modules/mod_auth_file.c:
- Use the 'pr_' namespace of the Auth API.
+ * RELEASE_NOTES, include/version.h: As Daniel noted, it should be
+ "1.3.0", not just "1.3".
-2004-09-26 14:07 castaglia
+2004-10-31 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Use the 'pr_' namespace of the Auth API.
+ * configure: Updating configure.
-2004-09-26 13:23 castaglia
+2004-10-31 castaglia <castaglia>
- * modules/mod_auth.c:
- Removing code that should not have been committed. Oops.
+ * configure.in: Bourne shell tests on Solaris don't like testing
+ empty values; they prefer the empty string if nothing else.
-2004-09-26 13:11 castaglia
+2004-10-31 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.
+ * configure: Updating configure.
-2004-09-26 11:24 castaglia
+2004-10-31 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.
+ * 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-09-26 11:17 castaglia
+2004-10-31 castaglia <castaglia>
- * NEWS:
- Mention the new init.d script for SuSE.
+ * 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-09-26 11:09 castaglia
+2004-10-31 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.
+ * NEWS: Updating NEWS.
-2004-09-26 10:57 castaglia
+2004-10-31 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.
+ * 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-09-25 16:47 jwm
+2004-10-31 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.init.d.suse: suse init script Submitted
- by: Daniel Weuthen <dw at megabit.net>
+ * 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-09-23 14:37 castaglia
+2004-10-31 castaglia <castaglia>
- * NEWS, include/privs.h:
- Bug#2488 - Wrong order of privs calls on HP generates "unable to
- setregid()" error.
+ * RELEASE_NOTES: Updating the release notes. These still need some
+ work.
-2004-09-18 12:08 castaglia
+2004-10-31 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.
+ * src/inet.c: Typo.
-2004-09-17 17:40 castaglia
+2004-10-31 castaglia <castaglia>
- * src/proftpd.8.in:
- Document the new -N option in the proftpd(8) man page.
+ * src/parser.c: Update the license to reflect the proper original
+ copyright holder(s).
-2004-09-17 17:38 castaglia
+2004-10-31 castaglia <castaglia>
- * NEWS, include/proftpd.h, modules/mod_core.c, src/main.c:
- Bug#2468 - Ability to disable address/port collision checking.
+ * 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-09-17 10:50 castaglia
+2004-10-31 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Explicitly use the more modern 'pr_log_openfile' symbol.
+ * 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-09-14 18:01 castaglia
+2004-10-30 castaglia <castaglia>
- * include/conf.h:
- Typo (log -> long).
+ * src/main.c: Use pr_auth_getgroups(), not auth_getgroups().
-2004-09-14 10:49 castaglia
+2004-10-30 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.
+ * 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-09-12 18:47 castaglia
+2004-10-30 castaglia <castaglia>
- * src/support.c:
- Add an explicit typecast to quell warnings on 64-bit platforms.
+ * modules/mod_core.c: Use the Auth API functions in the 'pr_'
+ namespace rather than relying on the compatibility macros.
-2004-09-12 18:43 castaglia
+2004-10-30 castaglia <castaglia>
- * modules/mod_auth_pam.c:
- Quell a compiler warning on Solaris with an explicit typecast.
+ * configure: Updating configure.
-2004-09-12 17:12 castaglia
+2004-10-30 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.
+ * 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-09-12 16:36 castaglia
+2004-10-30 castaglia <castaglia>
- * doc/howto/FXP.html:
- Add text noting the ISPs may filter FTP ports, blocking FXP.
+ * src/timers.c: This struct is no longer typedef'd.
-2004-09-11 16:43 castaglia
+2004-10-30 castaglia <castaglia>
- * contrib/UPGRADE.mod_sql:
- Removing crufty old file.
+ * include/timers.h: Include some redefines for supporting legacy
+ modules that may not have been updated to use the 'pr_' namespace
+ Timer API.
-2004-09-11 10:53 castaglia
+2004-10-30 castaglia <castaglia>
- * src/main.c:
- Typo.
+ * 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-09-07 17:40 castaglia
+2004-10-30 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Add logging of the non-ENOENT cases when the uploaded file has
- disappeared.
+ * 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-09-07 15:34 castaglia
+2004-10-30 castaglia <castaglia>
- * src/main.c:
- Settings display format tweak.
+ * include/ftp.h: In the near future, a module will implement support
+ for RFC2640's LANG command.
-2004-09-07 15:29 castaglia
+2004-10-30 castaglia <castaglia>
- * src/main.c:
- Add --settings option to the long getopt() list.
+ * include/version.h: With the addition of DSO support, ProFTPD is
+ now moving into the 1.3.x series. Whee!
-2004-09-07 15:23 castaglia
+2004-10-29 castaglia <castaglia>
- * src/main.c:
- Update the long descriptions for the -n, -d command-line
- parameters.
+ * ltmain.sh: Yet another bug in GNU's ltmain.sh script -- yet
+ another undeclared variable.
-2004-09-07 15:18 castaglia
+2004-10-29 castaglia <castaglia>
- * include/proftpd.h:
- Removing cruft.
+ * doc/modules/mod_dso.html: Typo (spotted by Michael).
-2004-09-07 12:41 castaglia
+2004-10-29 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).
+ * doc/modules/mod_dso.html: Adding documentation for mod_dso.
-2004-09-07 12:22 castaglia
+2004-10-29 castaglia <castaglia>
- * src/proftpd.8.in:
- Mention debug level 10 in the proftpd(8) man page.
+ * 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-09-05 15:42 castaglia
+2004-10-29 castaglia <castaglia>
- * src/event.c:
- More graceful handling of NULL evh->module pointers.
+ * modules/mod_core.c: The DebugLevel configuration handler was not
+ recognizing 10 as a valid debug level.
-2004-09-05 15:01 castaglia
+2004-10-29 castaglia <castaglia>
- * doc/mod_sample.c:
- Update the sample module to include registering the module
- version.
+ * doc/modules/mod_ctrls.html: Grammar fix.
-2004-09-05 14:36 castaglia
+2004-10-29 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * modules/mod_dso.c: Removing debugging cruft.
-2004-09-05 14:36 castaglia
+2004-10-29 castaglia <castaglia>
- * src/main.c:
- Display the --enable-scoreboard-updates setting in the -V output.
+ * configure: Updating configure.
-2004-09-05 14:34 castaglia
+2004-10-29 castaglia <castaglia>
- * NEWS, config.h.in, configure.in:
- Add autoconf support for a --enable-scoreboard-updates option.
+ * 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-09-05 14:29 castaglia
+2004-10-29 castaglia <castaglia>
- * NEWS, include/options.h, modules/mod_xfer.c:
- Bug#2455 - Allow fine-tuning of how often mod_xfer updates the
- scoreboard.
+ * 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-09-05 14:24 castaglia
+2004-10-29 castaglia <castaglia>
- * RELEASE_NOTES:
- Update release notes for 1.2.11 release cycle.
+ * configure: Updating configure.
-2004-09-05 14:21 castaglia
+2004-10-29 castaglia <castaglia>
- * src/proftpd.8.in:
- Remove extra space.
+ * 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-09-05 14:16 castaglia
+2004-10-29 castaglia <castaglia>
- * src/proftpd.8.in:
- Document the new -V command-line option in the proftpd(8) man
- page.
+ * 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-09-05 14:12 castaglia
+2004-10-29 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * aclocal.m4: Adding GNU libtool M4 definitions to our aclocal.m4.
-2004-09-05 14:10 castaglia
+2004-10-29 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.
+ * 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-09-04 19:37 castaglia
+2004-10-29 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.
+ * modules/mod_core.c: The checks for <IfDefine>, </IfDefine>,
+ <IfModule>, and </IfModule>, within the respective directive
+ handlers, need to be case-insensitive.
-2004-09-04 19:23 castaglia
+2004-10-28 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql_mysql.c, 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.
+ * NEWS, utils/ftptop.c: Bug#2484 - Better ftptop formatting.
-2004-09-04 17:53 castaglia
+2004-10-27 castaglia <castaglia>
- * modules/mod_log.c:
- Convert mod_log to use the Events API.
+ * modules/mod_xfer.c: Typo.
-2004-09-04 17:43 castaglia
+2004-10-26 castaglia <castaglia>
- * contrib/mod_rewrite.c:
- Convert mod_rewrite to use the Events API.
+ * 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-09-04 17:38 castaglia
+2004-10-26 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.
+ * configure: Updating configure.
-2004-09-04 17:36 castaglia
+2004-10-26 castaglia <castaglia>
- * src/regexp.c:
- Convert the Regexp API to use the Events API for cleanup.
+ * config.h.in, configure.in: Define CONFIG_DIR to point to the
+ hardcoded directory containing the proftpd.conf file.
-2004-09-04 17:36 castaglia
+2004-10-26 castaglia <castaglia>
- * modules/mod_xfer.c:
- Update mod_xfer to use the Events API a little more.
+ * Make.rules.in, include/conf.h, include/table.h, src/table.c:
+ Adding the Table API source.
-2004-09-04 17:31 castaglia
+2004-10-20 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- Convert mod_auth_unix to use the Events API.
+ * 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-09-04 17:31 castaglia
+2004-10-18 castaglia <castaglia>
- * modules/mod_auth_pam.c:
- Convert mod_auth_pam to use the Events API.
+ * modules/mod_xfer.c: A few cases where log_pri() was being used,
+ rather than pr_log_pri().
-2004-09-04 17:19 castaglia
+2004-10-17 castaglia <castaglia>
- * contrib/mod_sql.c:
- Convert mod_sql to use the Events API.
+ * doc/howto/Directory.html: Mention using quotations to enclose
+ directory paths that contain spaces.
-2004-09-04 17:16 castaglia
+2004-10-17 castaglia <castaglia>
- * contrib/mod_radius.c:
- Convert mod_radius to use the Events API.
+ * NEWS, modules/mod_core.c: Bug#1965 - Change timing of handling of
+ QUIT command.
-2004-09-04 17:15 castaglia
+2004-10-17 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Convert mod_quotatab to using the Events API.
+ * contrib/mod_sql.c: Extraneous redeclaration of a variable.
-2004-09-04 16:05 castaglia
+2004-10-17 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.
+ * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Fixing bad
+ reuse of variable name from outer scope.
-2004-09-04 15:56 castaglia
+2004-10-17 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2463 - mod_xfer doesn't check how many bytes it has written
- to disk.
+ * RELEASE_NOTES: Mention the new MaxConnectionsPerHost directive in
+ the release notes.
-2004-09-04 15:53 castaglia
+2004-10-17 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#2458 - Bad handling of CreateHome parameters.
+ * NEWS, modules/mod_auth.c: Bug#2273 - Ability to limit number of
+ unauthenticated clients from a single host.
-2004-09-04 15:51 castaglia
+2004-10-16 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#2457 - Directory listing provides bad info when path ends
- with /.
+ * NEWS, modules/mod_auth_pam.c: Bug#2497 - Users can login without
+ password if pam_start() fails.
-2004-09-04 15:46 castaglia
+2004-10-15 castaglia <castaglia>
- * NEWS, src/main.c:
- Bug#2449 - ProFTPD silently ignores extra command-line
- parameters.
+ * NEWS, src/auth.c, src/dirtree.c: Bug#2499 - make_cmd() does not
+ NULL-terminate cmd->argv[].
-2004-09-04 14:21 castaglia
+2004-10-15 castaglia <castaglia>
- * include/version.h:
- Update version, indicating CVS status once more.
+ * 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-09-04 11:54 castaglia
+2004-10-12 castaglia <castaglia>
- * ChangeLog:
- Updating ChangeLog.
+ * src/inet.c: Nicer error message.
-2004-09-04 11:50 castaglia
+2004-10-11 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing to release 1.2.10-final.
+ * 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-08-25 11:08 castaglia
+2004-10-11 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.
+ * 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.
- This fixes an endless loop seen at a particular site involving
- use of sendfile() and NFS/SAN-shared files.
+2004-10-09 castaglia <castaglia>
-2004-08-24 15:24 castaglia
+ * doc/howto/TLS.html: Update link to FTPS Draft.
- * modules/mod_xfer.c:
- Reset the 'have_prot' flag to false when a successful PROT C
- command is processed.
+2004-10-09 castaglia <castaglia>
-2004-08-12 16:24 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).
- * 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-10-09 castaglia <castaglia>
-2004-08-07 15:22 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.
- * NEWS, src/log.c, src/main.c:
- Bug#2427 - proftpd gets a memory fault when run from ssh batch
- mode.
+2004-10-09 castaglia <castaglia>
-2004-08-07 15:21 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.
- * 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-10-09 jwm <jwm>
-2004-08-07 13:58 castaglia
+ * contrib/mod_ldap.c: release 2.8.14
- * 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:
+2004-10-07 castaglia <castaglia>
- <VirtualHost 127.0.0.1>
- Bind 1.2.3.4
- ...
- </VirtualHost>
+ * contrib/ftpasswd: Explicitly mention "RequireValidShell off" if
+ the given shell is not in /etc/shells.
- 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-10-07 castaglia <castaglia>
-2004-08-05 19:16 castaglia
+ * NEWS, modules/mod_ls.c: Bug#2496 - NLST off-by-one bug when
+ handling relative paths in a chrooted session.
- * 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.:
+2004-10-07 castaglia <castaglia>
- <IfClass foo>
- IdentLookups off
- </IfClass>
+ * modules/mod_ls.c: Use the Auth API in the 'pr_' namespace.
- so that ident lookups can be enabled/disabled selectively.
+2004-10-02 castaglia <castaglia>
-2004-08-05 17:58 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).
- * doc/howto/Limit.html:
- Add description of applying <Limit> sections to SITE commands.
+2004-10-02 castaglia <castaglia>
-2004-08-05 12:12 castaglia
+ * doc/howto/TLS.html: Adding two more FAQs to the TLS howto.
- * RELEASE_NOTES:
- Updating the release notes.
+2004-10-02 castaglia <castaglia>
-2004-08-04 11:52 castaglia
+ * contrib/mod_tls.c: Fix the logic when reporting on syscall errors,
+ so that the errors are properly reported.
- * 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-10-02 castaglia <castaglia>
-2004-08-03 16:17 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.
- * NEWS, modules/mod_xfer.c:
- Bug#2444 - Use of sendfile() does not interoperate well with
- RFC2228 security mechanisms.
+2004-10-02 castaglia <castaglia>
-2004-08-02 17:44 castaglia
+ * contrib/mod_tls.c: Remove code that is never compiled.
- * contrib/mod_sql.c:
- Convert mod_sql to using ProFTPD's sstrcat() function, rather
- than strcat(3).
+2004-10-01 castaglia <castaglia>
-2004-08-01 12:02 castaglia
+ * NEWS, modules/mod_auth_pam.c: Bug#2492 - Off-by-one error in
+ FreeBSD PAM username length check.
- * 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-09-29 castaglia <castaglia>
-2004-07-30 18:35 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.
- * 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-09-28 jwm <jwm>
-2004-07-30 17:07 castaglia
+ * NEWS, contrib/mod_ldap.c: new mod_ldap 2.8.13
- * doc/howto/Limit.html:
- Add example <Limit LOGIN> configuration that allows only
- anonymous logins.
+2004-09-27 castaglia <castaglia>
-2004-07-30 10:42 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.
- * 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-09-26 castaglia <castaglia>
-2004-07-28 13:41 castaglia
+ * modules/mod_auth_file.c, modules/mod_auth_unix.c: Use the 'pr_'
+ namespace of the Auth API.
- * doc/howto/Authentication.html:
- Updating the section on "Resolving ~", fixing mention of
- mod_auth_pam.
+2004-09-26 castaglia <castaglia>
-2004-07-22 14:49 castaglia
+ * modules/mod_auth.c: Removing code that should not have been
+ committed. Oops.
- * NEWS, modules/mod_auth_pam.c:
- Bug#2442 - Segfault in FreeBSD PAM library with long login names.
+2004-09-26 castaglia <castaglia>
-2004-07-22 13:53 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.
- * README.PAM:
- Update the PAM docs about AuthPAMAuthoritative, and add an Issues
- section.
+2004-09-26 castaglia <castaglia>
-2004-07-21 17:11 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.
- * contrib/: mod_ldap.c, 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-09-26 castaglia <castaglia>
-2004-07-21 16:58 castaglia
+ * NEWS: Mention the new init.d script for SuSE.
- * 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-09-26 castaglia <castaglia>
-2004-07-20 10:39 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.
- * 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-09-26 castaglia <castaglia>
-2004-07-14 17:08 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.
- * modules/mod_ctrls.c:
- We were forgetting to remove our previous timer before adding a
- new one.
+2004-09-25 jwm <jwm>
-2004-07-14 17:07 castaglia
+ * contrib/dist/rpm/proftpd.init.d.suse: suse init script Submitted
+ by: Daniel Weuthen <dw at megabit.net>
- * src/timers.c:
- Prevent add_timer() from adding multiple timers that use the same
- timerno.
+2004-09-23 castaglia <castaglia>
-2004-07-14 14:51 castaglia
+ * NEWS, include/privs.h: Bug#2488 - Wrong order of privs calls on HP
+ generates "unable to setregid()" error.
- * modules/mod_ctrls.c:
- We don't want child processes handling these events for
- mod_ctrls.
+2004-09-18 castaglia <castaglia>
-2004-07-13 17:20 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.
- * include/version.h:
- Let's try this again.
+2004-09-18 castaglia <castaglia>
-2004-07-13 16:58 castaglia
+ * src/proftpd.8.in: Document the new -N option in the proftpd(8) man
+ page.
- * ChangeLog:
- Updating ChangeLog.
+2004-09-18 castaglia <castaglia>
-2004-07-13 16:57 castaglia
+ * NEWS, include/proftpd.h, modules/mod_core.c, src/main.c: Bug#2468
+ - Ability to disable address/port collision checking.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- How embarassing. A typo broke 1.2.10rc2, necessitating a release
- of rc3.
+2004-09-17 castaglia <castaglia>
-2004-07-13 16:51 castaglia
+ * contrib/mod_quotatab.c: Explicitly use the more modern
+ 'pr_log_openfile' symbol.
- * modules/mod_core.c:
- Typo.
+2004-09-15 castaglia <castaglia>
-2004-07-13 15:19 castaglia
+ * include/conf.h: Typo (log -> long).
- * include/version.h:
- Bump version for CVS checkouts.
+2004-09-14 castaglia <castaglia>
-2004-07-13 11:34 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.
- * ChangeLog:
- Updating ChangeLog.
+2004-09-13 castaglia <castaglia>
-2004-07-13 11:32 castaglia
+ * src/support.c: Add an explicit typecast to quell warnings on
+ 64-bit platforms.
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec:
- Preparing for release of 1.2.10rc2.
+2004-09-13 castaglia <castaglia>
-2004-07-13 10:56 castaglia
+ * modules/mod_auth_pam.c: Quell a compiler warning on Solaris with
+ an explicit typecast.
- * modules/mod_core.c:
- Variable name collision from different scopes; fix to quell a
- compiler warning.
+2004-09-13 castaglia <castaglia>
-2004-07-13 10:53 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.
- * src/support.c:
- Quell a warning about reusing a global symbol name 'dup'.
+2004-09-12 castaglia <castaglia>
-2004-07-13 09:54 castaglia
+ * doc/howto/FXP.html: Add text noting the ISPs may filter FTP ports,
+ blocking FXP.
- * modules/mod_core.c:
- Rest of patch for Bug#2439.
+2004-09-11 castaglia <castaglia>
-2004-07-11 14:52 castaglia
+ * src/main.c: Typo.
- * NEWS, modules/mod_core.c:
- Bug#2439 - <Limit CWD> doesn't work.
+2004-09-08 castaglia <castaglia>
-2004-07-09 11:24 castaglia
+ * contrib/mod_quotatab.c: Add logging of the non-ENOENT cases when
+ the uploaded file has disappeared.
- * NEWS, modules/mod_core.c:
- Bug#2438 - Display variable %z not expanded properly.
+2004-09-07 castaglia <castaglia>
-2004-07-08 14:38 castaglia
+ * src/main.c: Settings display format tweak.
- * 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-09-07 castaglia <castaglia>
-2004-07-06 10:32 castaglia
+ * src/main.c: Add --settings option to the long getopt() list.
- * doc/howto/TLS.html:
- Update the link to the most current FTPS Draft.
+2004-09-07 castaglia <castaglia>
-2004-07-06 10:31 castaglia
+ * src/main.c: Update the long descriptions for the -n, -d
+ command-line parameters.
- * doc/rfc/: draft-murray-auth-ftp-ssl-10.txt,
- draft-murray-auth-ftp-ssl-13.txt:
- Updating the FTPS Draft to the current version.
+2004-09-07 castaglia <castaglia>
-2004-06-30 19:00 castaglia
+ * include/proftpd.h: Removing cruft.
- * 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:
+2004-09-07 castaglia <castaglia>
- <IfClass !name>
+ * 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).
- would evaluate to false. It _should_ evaluate to true; this
- change makes it so.
+2004-09-07 castaglia <castaglia>
- This fixes a problem Michael was encountering with mod_ifsession
- and Classes.
+ * src/proftpd.8.in: Mention debug level 10 in the proftpd(8) man
+ page.
-2004-06-30 18:52 castaglia
+2004-09-05 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.
+ * src/event.c: More graceful handling of NULL evh->module pointers.
- This change also includes some style cleanup.
+2004-09-05 castaglia <castaglia>
-2004-06-30 18:17 castaglia
+ * doc/mod_sample.c: Update the sample module to include registering
+ the module version.
- * src/dirtree.c:
- Style.
+2004-09-05 castaglia <castaglia>
-2004-06-30 18:06 castaglia
+ * configure: Updating configure script.
- * 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-09-05 castaglia <castaglia>
-2004-06-30 11:25 castaglia
+ * src/main.c: Display the --enable-scoreboard-updates setting in the
+ -V output.
- * contrib/mod_tls.html, 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-09-05 castaglia <castaglia>
-2004-06-30 10:52 castaglia
+ * NEWS, config.h.in, configure.in: Add autoconf support for a
+ --enable-scoreboard-updates option.
- * NEWS, contrib/mod_tls.c:
- Bug#2419 - Ability to disable TLSRequired on per-user basis (e.g.
- for anonymous logins).
+2004-09-05 castaglia <castaglia>
-2004-06-29 19:42 castaglia
+ * NEWS, include/options.h, modules/mod_xfer.c: Bug#2455 - Allow
+ fine-tuning of how often mod_xfer updates the scoreboard.
- * NEWS, src/class.c, src/netacl.c, src/netaddr.c:
- Bug#2303 - Problem evaluating multiple <Class> rules.
+2004-09-05 castaglia <castaglia>
-2004-06-23 10:47 castaglia
+ * RELEASE_NOTES: Update release notes for 1.2.11 release cycle.
- * contrib/mod_sql.html:
- Typo.
+2004-09-05 castaglia <castaglia>
-2004-06-22 17:04 castaglia
+ * src/proftpd.8.in: Remove extra space.
- * 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-09-05 castaglia <castaglia>
-2004-06-21 10:34 castaglia
+ * src/proftpd.8.in: Document the new -V command-line option in the
+ proftpd(8) man page.
- * contrib/mod_ifsession.html:
- Add ExtendedLog to the list of directives that mod_ifsession does
- not handle.
+2004-09-05 castaglia <castaglia>
-2004-06-18 14:29 castaglia
+ * configure: Updating configure script.
- * contrib/mod_tls.html:
- Typo.
+2004-09-05 castaglia <castaglia>
-2004-06-17 13:34 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.
- * NEWS, include/dirtree.h, src/dirtree.c, src/main.c:
- Bug#2418 - chmod returns 550 with filename containing multiple
- spaces.
+2004-09-05 castaglia <castaglia>
-2004-06-16 17:06 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.
- * NEWS:
- Typo.
+2004-09-05 castaglia <castaglia>
-2004-06-15 09:45 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.
- * src/netio.c:
- Style.
+2004-09-05 castaglia <castaglia>
-2004-06-11 19:03 castaglia
+ * modules/mod_log.c: Convert mod_log to use the Events API.
- * src/modules.c:
- Removal of symbols (e.g. AuthOrder) was not working properly
- without this change.
+2004-09-05 castaglia <castaglia>
-2004-06-11 14:19 castaglia
+ * contrib/mod_rewrite.c: Convert mod_rewrite to use the Events API.
- * NEWS, contrib/mod_sql.c:
- Bug#2422 - %v not working in SQLNamedQuery.
+2004-09-05 castaglia <castaglia>
-2004-06-10 14:51 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.
- * NEWS, modules/mod_core.c:
- Bug#2411 - Caching effects cause RNTO to fail if AllowOverwrite
- is off and target path does not exist.
+2004-09-05 castaglia <castaglia>
-2004-06-10 11:30 castaglia
+ * src/regexp.c: Convert the Regexp API to use the Events API for
+ cleanup.
- * contrib/mod_sql.c:
- Remove debugging cruft.
+2004-09-05 castaglia <castaglia>
-2004-06-10 11:27 castaglia
+ * modules/mod_xfer.c: Update mod_xfer to use the Events API a little
+ more.
- * NEWS, contrib/mod_sql.c:
- Bug#2424 - SQLDefaultHomedir overrides column value.
+2004-09-05 castaglia <castaglia>
-2004-06-08 16:08 castaglia
+ * modules/mod_auth_unix.c: Convert mod_auth_unix to use the Events
+ API.
- * 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-09-05 castaglia <castaglia>
-2004-06-07 16:00 castaglia
+ * modules/mod_auth_pam.c: Convert mod_auth_pam to use the Events
+ API.
- * contrib/: mod_quotatab.h, mod_sql.c:
- Increment versions of mod_quotatab, mod_sql.
+2004-09-05 castaglia <castaglia>
-2004-06-07 15:58 castaglia
+ * contrib/mod_sql.c: Convert mod_sql to use the Events API.
- * 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.
+2004-09-05 castaglia <castaglia>
- 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.
+ * contrib/mod_radius.c: Convert mod_radius to use the Events API.
-2004-06-05 18:14 castaglia
+2004-09-05 castaglia <castaglia>
- * contrib/mod_tls.c:
- Fix scrubbing of passphrases when a session process exits.
+ * contrib/mod_quotatab.c: Convert mod_quotatab to using the Events
+ API.
-2004-06-03 10:32 castaglia
+2004-09-04 castaglia <castaglia>
- * contrib/mod_tls.html:
- Adding required OpenSSL clauses.
+ * 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-05-31 15:07 castaglia
+2004-09-04 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()).
+ * NEWS, modules/mod_xfer.c: Bug#2463 - mod_xfer doesn't check how
+ many bytes it has written to disk.
-2004-05-31 14:49 castaglia
+2004-09-04 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.
+ * NEWS, modules/mod_auth.c: Bug#2458 - Bad handling of CreateHome
+ parameters.
-2004-05-31 14:47 castaglia
+2004-09-04 castaglia <castaglia>
- * src/modules.c:
- Slightly cleaner structure.
+ * NEWS, modules/mod_ls.c: Bug#2457 - Directory listing provides bad
+ info when path ends with /.
-2004-05-31 14:20 castaglia
+2004-09-04 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.
+ * NEWS, src/main.c: Bug#2449 - ProFTPD silently ignores extra
+ command-line parameters.
-2004-05-31 12:33 castaglia
+2004-09-04 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.
+ * include/version.h: Update version, indicating CVS status once
+ more.
-2004-05-31 11:58 castaglia
+2004-09-04 castaglia <castaglia>
- * src/modules.c:
- Fix removal of a module from the loaded_modules list.
+ * ChangeLog: Updating ChangeLog.
-2004-05-31 10:54 castaglia
+2004-09-04 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.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ to release 1.2.10-final.
-2004-05-31 10:47 castaglia
+2004-08-25 castaglia <castaglia>
- * src/modules.c:
- Missed a case where the PR_SYM_CONF hashing needed to be handled
- differently.
+ * 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-05-30 18:51 castaglia
+2004-08-24 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.
+ * modules/mod_xfer.c: Reset the 'have_prot' flag to false when a
+ successful PROT C command is processed.
- 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.
+2004-08-12 castaglia <castaglia>
- 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.
+ * 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-05-30 15:46 castaglia
+2004-08-07 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).
+ * NEWS, src/log.c, src/main.c: Bug#2427 - proftpd gets a memory
+ fault when run from ssh batch mode.
-2004-05-30 14:54 castaglia
+2004-08-07 castaglia <castaglia>
- * NEWS:
- Bug#2125 - -vv command line switch should list versions of
- modules.
+ * 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-05-30 14:50 castaglia
+2004-08-07 castaglia <castaglia>
- * modules/mod_cap.c, src/main.c:
- Minor formatting tweak. Update mod_cap to report its version.
- Other modules will follow.
+ * 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-05-30 14:48 castaglia
+2004-08-06 castaglia <castaglia>
- * src/main.c:
- Typo.
+ * 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-05-30 14:45 castaglia
+2004-08-06 castaglia <castaglia>
- * src/main.c:
- Bug#2125 - -vv command line switch should list versions of
- modules.
+ * doc/howto/Limit.html: Add description of applying <Limit> sections
+ to SITE commands.
- 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-08-05 castaglia <castaglia>
-2004-05-30 14:34 castaglia
+ * RELEASE_NOTES: Updating the release notes.
- * 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-08-04 castaglia <castaglia>
-2004-05-29 19:39 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.
- * 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-08-03 castaglia <castaglia>
-2004-05-29 16:38 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2444 - Use of sendfile() does not
+ interoperate well with RFC2228 security mechanisms.
- * src/event.c:
- Make pr_event_unregister() function as documented if given a NULL
- callback argument.
+2004-08-03 castaglia <castaglia>
-2004-05-29 16:02 castaglia
+ * contrib/mod_sql.c: Convert mod_sql to using ProFTPD's sstrcat()
+ function, rather than strcat(3).
- * 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.
+2004-08-01 castaglia <castaglia>
- More work needs to be done on abstracting the process of loading
- of a module.
+ * 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-05-29 15:31 castaglia
+2004-07-31 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.
+ * 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-05-29 14:02 castaglia
+2004-07-31 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.
+ * doc/howto/Limit.html: Add example <Limit LOGIN> configuration that
+ allows only anonymous logins.
-2004-05-29 13:13 castaglia
+2004-07-30 castaglia <castaglia>
- * src/modules.c:
- Add sane errno values.
+ * 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-05-29 13:03 castaglia
+2004-07-28 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.
+ * doc/howto/Authentication.html: Updating the section on "Resolving
+ ~", fixing mention of mod_auth_pam.
-2004-05-29 12:52 castaglia
+2004-07-22 castaglia <castaglia>
- * modules/mod_ctrls.c:
- Add more info to the ControlsLog when the ControlsAuthFreshness
- is exceeded, to help in debugging why this happens.
+ * NEWS, modules/mod_auth_pam.c: Bug#2442 - Segfault in FreeBSD PAM
+ library with long login names.
-2004-05-29 11:55 castaglia
+2004-07-22 castaglia <castaglia>
- * contrib/mod_tls.c:
- Typo (thanks John!).
+ * README.PAM: Update the PAM docs about AuthPAMAuthoritative, and
+ add an Issues section.
-2004-05-28 21:22 castaglia
+2004-07-22 castaglia <castaglia>
- * doc/howto/Directory.html:
- Wording update.
+ * 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-05-28 21:19 castaglia
+2004-07-21 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.
+ * 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.
- 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-07-20 castaglia <castaglia>
-2004-05-28 18:56 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.
- * contrib/mod_tls.c:
- Silence a compiler warning by providing a default value.
+2004-07-15 castaglia <castaglia>
-2004-05-28 18:55 castaglia
+ * modules/mod_ctrls.c: We were forgetting to remove our previous
+ timer before adding a new one.
- * contrib/mod_tls.c:
- Typo.
+2004-07-15 castaglia <castaglia>
-2004-05-28 17:28 castaglia
+ * src/timers.c: Prevent add_timer() from adding multiple timers that
+ use the same timerno.
- * src/scoreboard.c:
- Unblock signals properly.
+2004-07-14 castaglia <castaglia>
-2004-05-28 09:46 castaglia
+ * modules/mod_ctrls.c: We don't want child processes handling these
+ events for mod_ctrls.
- * README.modules:
- Update this README.
+2004-07-14 castaglia <castaglia>
-2004-05-27 10:20 castaglia
+ * include/version.h: Let's try this again.
- * 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-07-13 castaglia <castaglia>
-2004-05-26 12:25 castaglia
+ * ChangeLog: Updating ChangeLog.
- * src/ctrls.c:
- Make sure that the destination ctrl object has a valid temporary
- pool from which to copy arguments.
+2004-07-13 castaglia <castaglia>
-2004-05-26 11:54 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: How
+ embarassing. A typo broke 1.2.10rc2, necessitating a release of
+ rc3.
- * src/dirtree.c:
- Reset the sid (server ID) counter when preparing to parse a
- configuration.
+2004-07-13 castaglia <castaglia>
-2004-05-25 19:17 castaglia
+ * modules/mod_core.c: Typo.
- * configure:
- Updating configure script.
+2004-07-13 castaglia <castaglia>
-2004-05-25 19:15 castaglia
+ * include/version.h: Bump version for CVS checkouts.
- * config.h.in, configure.in:
- Check if intptr_t is defined.
+2004-07-13 castaglia <castaglia>
-2004-05-25 16:31 castaglia
+ * ChangeLog: Updating ChangeLog.
- * 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-07-13 castaglia <castaglia>
-2004-05-25 16:00 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for release of 1.2.10rc2.
- * contrib/mod_tls.c:
- Check the return value of SSL_CTX_set_default_verify_locations(),
- and log the error (if any).
+2004-07-13 castaglia <castaglia>
-2004-05-25 10:41 castaglia
+ * modules/mod_core.c: Variable name collision from different scopes;
+ fix to quell a compiler warning.
- * doc/howto/BCP.html:
- Wording.
+2004-07-13 castaglia <castaglia>
-2004-05-25 10:17 castaglia
+ * src/support.c: Quell a warning about reusing a global symbol name
+ 'dup'.
- * 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-07-13 castaglia <castaglia>
-2004-05-24 16:27 castaglia
+ * modules/mod_core.c: Rest of patch for Bug#2439.
- * 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-07-11 castaglia <castaglia>
-2004-05-24 14:35 castaglia
+ * NEWS, modules/mod_core.c: Bug#2439 - <Limit CWD> doesn't work.
- * lib/pr-syslog.c:
- Mention the Sun bug number that caused the /dev/log kernel memory
- leak.
+2004-07-09 castaglia <castaglia>
-2004-05-22 17:11 castaglia
+ * NEWS, modules/mod_core.c: Bug#2438 - Display variable %z not
+ expanded properly.
- * contrib/mod_quotatab_sql.c:
- Typo.
+2004-07-08 castaglia <castaglia>
-2004-05-22 16:59 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.
- * contrib/mod_quotatab_sql.c:
- Don't complain about being unable to delete a nonexistent
- QuotaLock.
+2004-07-06 castaglia <castaglia>
-2004-05-21 10:46 castaglia
+ * doc/howto/TLS.html: Update the link to the most current FTPS
+ Draft.
- * RELEASE_NOTES:
- Style.
+2004-07-01 castaglia <castaglia>
-2004-05-21 10:35 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.
- * RELEASE_NOTES:
- Update the release notes with mention of TimeoutLinger.
+2004-07-01 castaglia <castaglia>
-2004-05-21 10:19 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.
- * 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-07-01 castaglia <castaglia>
-2004-05-20 10:28 castaglia
+ * src/dirtree.c: Style.
- * contrib/mod_ctrls_admin.c:
- Check for signals while waiting for all kids to end when handling
- a graceful shutdown.
+2004-07-01 castaglia <castaglia>
-2004-05-19 20:39 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.
- * doc/howto/: Controls.html, index.html:
- Add a Controls howto.
+2004-06-30 castaglia <castaglia>
-2004-05-19 14:44 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.
- * modules/mod_auth.c:
- Make sure a Class has been assigned before attempting to use it.
+2004-06-30 castaglia <castaglia>
-2004-05-19 10:07 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2419 - Ability to disable TLSRequired
+ on per-user basis (e.g. for anonymous logins).
- * NEWS, lib/pr-syslog.c, src/main.c:
- Bug#2336 - Use of /dev/log on Solaris leads to kernel memory
- leak.
+2004-06-30 castaglia <castaglia>
-2004-05-18 19:32 castaglia
+ * NEWS, src/class.c, src/netacl.c, src/netaddr.c: Bug#2303 - Problem
+ evaluating multiple <Class> rules.
- * src/dirtree.c:
- Style.
+2004-06-23 castaglia <castaglia>
-2004-05-18 16:22 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.
- * contrib/mod_ctrls_admin.html:
- Typo.
+2004-06-17 castaglia <castaglia>
-2004-05-18 15:43 castaglia
+ * NEWS, include/dirtree.h, src/dirtree.c, src/main.c: Bug#2418 -
+ chmod returns 550 with filename containing multiple spaces.
- * contrib/mod_ctrls_admin.html:
- Document that 'ftpdctl get' accepts both 'config' and
- 'directives' parameters.
+2004-06-17 castaglia <castaglia>
-2004-05-17 11:24 castaglia
+ * NEWS: Typo.
- * 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-06-15 castaglia <castaglia>
-2004-05-15 10:25 castaglia
+ * src/netio.c: Style.
- * 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-06-12 castaglia <castaglia>
-2004-05-13 07:01 castaglia
+ * src/modules.c: Removal of symbols (e.g. AuthOrder) was not working
+ properly without this change.
- * 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-06-11 castaglia <castaglia>
-2004-05-12 19:58 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2422 - %v not working in
+ SQLNamedQuery.
- * 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-06-10 castaglia <castaglia>
-2004-05-12 18:13 castaglia
+ * NEWS, modules/mod_core.c: Bug#2411 - Caching effects cause RNTO to
+ fail if AllowOverwrite is off and target path does not exist.
- * NEWS, modules/mod_auth.c, src/mkhome.c:
- Bug#2410 - CreateHome always copies skel directory.
+2004-06-10 castaglia <castaglia>
-2004-05-11 19:20 castaglia
+ * contrib/mod_sql.c: Remove debugging cruft.
- * 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-06-10 castaglia <castaglia>
-2004-05-11 16:37 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2424 - SQLDefaultHomedir overrides
+ column value.
- * 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-06-08 castaglia <castaglia>
-2004-05-11 09:56 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).
- * 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-06-07 castaglia <castaglia>
-2004-05-10 10:50 castaglia
+ * contrib/mod_quotatab.h, contrib/mod_sql.c: Increment versions of
+ mod_quotatab, mod_sql.
- * 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-06-07 castaglia <castaglia>
-2004-05-09 13:05 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.
- * src/data.c:
- When opening a data connection, check for the ESPV ALL mode as
- well.
+2004-06-06 castaglia <castaglia>
-2004-05-08 18:07 castaglia
+ * contrib/mod_tls.c: Fix scrubbing of passphrases when a session
+ process exits.
- * 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.
+2004-05-31 castaglia <castaglia>
- 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.
+ * 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-07 20:21 castaglia
+2004-05-31 castaglia <castaglia>
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Style cleanup of the SQL backend modules. Also updating them to
- use an event handler for the "core.exit" event.
+ * 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.
- 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-31 castaglia <castaglia>
-2004-05-07 14:31 castaglia
+ * src/modules.c: Slightly cleaner structure.
- * NEWS, modules/mod_ls.c:
- Bug#2366 - Add support for -h list option.
+2004-05-31 castaglia <castaglia>
-2004-05-07 11:17 castaglia
+ * src/dirtree.c: Attempting to dump the config for a minimally
+ configured server_rec (i.e. server_rec->conf is NULL) would
+ segfault.
- * modules/mod_ls.c:
- Redeclaring a variable isn't a good thing to do.
+2004-05-31 castaglia <castaglia>
-2004-05-06 20:36 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.
- * src/child.c:
- Include <signal.h> so that the kill(2) function prototype is
- visible.
+2004-05-31 castaglia <castaglia>
-2004-05-06 08:35 castaglia
+ * src/modules.c: Fix removal of a module from the loaded_modules
+ list.
- * NEWS, modules/mod_ls.c:
- Bug#2405 - "LIST *" should not list dotfiles.
+2004-05-31 castaglia <castaglia>
-2004-05-05 10:49 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.
- * 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-31 castaglia <castaglia>
-2004-05-04 09:54 castaglia
+ * src/modules.c: Missed a case where the PR_SYM_CONF hashing needed
+ to be handled differently.
- * lib/glibc-glob.c:
- The buffer length should be PR_TUNABLE_LOGIN_MAX + 1.
+2004-05-31 castaglia <castaglia>
-2004-05-03 19:59 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.
- * 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-30 castaglia <castaglia>
-2004-05-03 10:25 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).
- * NEWS, include/class.h, src/class.c, src/main.c:
- Bug#2403 - Sending SIGHUP to proftpd stops it when using Classes.
+2004-05-30 castaglia <castaglia>
-2004-05-02 08:05 castaglia
+ * NEWS: Bug#2125 - -vv command line switch should list versions of
+ modules.
- * NEWS, contrib/mod_rewrite.c, contrib/mod_rewrite.html:
- Bug#2082 - Add mod_rewrite "replaceall" builtin function.
+2004-05-30 castaglia <castaglia>
-2004-05-01 22:42 castaglia
+ * modules/mod_cap.c, src/main.c: Minor formatting tweak. Update
+ mod_cap to report its version. Other modules will follow.
- * NEWS, contrib/mod_ctrls_admin.c, contrib/mod_ctrls_admin.html:
- Bug#2399 - Rename start/stop control actions to up/down.
+2004-05-30 castaglia <castaglia>
-2004-05-01 20:39 castaglia
+ * src/main.c: Typo.
- * 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-30 castaglia <castaglia>
-2004-05-01 11:44 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.
- * contrib/mod_tls.c:
- Only report the version of OpenSSL being used at debug level 2 or
- higher.
+2004-05-30 castaglia <castaglia>
-2004-05-01 11:27 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.
- * NEWS, modules/mod_auth.c:
- Bug#2401 - MaxClientsPerClass only checks first directive in
- config file.
+2004-05-30 castaglia <castaglia>
-2004-05-01 11:01 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).
- * NEWS, src/class.c:
- Bug#2400 - <Class> search order is wrong.
+2004-05-29 castaglia <castaglia>
-2004-04-30 12:01 castaglia
+ * src/event.c: Make pr_event_unregister() function as documented if
+ given a NULL callback argument.
- * NEWS, contrib/mod_ctrls_admin.c, contrib/mod_ctrls_admin.html,
- 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-05-29 castaglia <castaglia>
-2004-04-29 13:09 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.
- * contrib/mod_ctrls_admin.html:
- Typo.
+2004-05-29 castaglia <castaglia>
-2004-04-29 12:28 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.
- * 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-05-29 castaglia <castaglia>
-2004-04-28 20:35 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.
- * 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-05-29 castaglia <castaglia>
-2004-04-28 20:35 castaglia
+ * src/modules.c: Add sane errno values.
- * 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-05-29 castaglia <castaglia>
-2004-04-28 18:55 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.
- * NEWS, modules/mod_ls.c:
- Bug#2396 - NLST command doesn't understand options.
+2004-05-29 castaglia <castaglia>
-2004-04-28 14:29 castaglia
+ * modules/mod_ctrls.c: Add more info to the ControlsLog when the
+ ControlsAuthFreshness is exceeded, to help in debugging why this
+ happens.
- * 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-05-29 castaglia <castaglia>
-2004-04-28 14:00 castaglia
+ * contrib/mod_tls.c: Typo (thanks John!).
- * include/version.h:
- Set version back to CVS status for rc2.
+2004-05-29 castaglia <castaglia>
-2004-04-28 10:54 castaglia
+ * doc/howto/Directory.html: Wording update.
- * ChangeLog:
- Updating ChangeLog.
+2004-05-29 castaglia <castaglia>
-2004-04-28 10:52 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.
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec:
- Preparing to roll 1.2.10rc1 tarball.
+2004-05-29 castaglia <castaglia>
-2004-04-28 10:43 castaglia
+ * contrib/mod_tls.c: Silence a compiler warning by providing a
+ default value.
- * 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.
+2004-05-29 castaglia <castaglia>
- Add a note about RELEASE_NOTES to the README.
+ * contrib/mod_tls.c: Typo.
-2004-04-27 13:49 castaglia
+2004-05-29 castaglia <castaglia>
- * contrib/mod_sql.html:
- Update mod_sql installation instructions.
+ * src/scoreboard.c: Unblock signals properly.
-2004-04-27 09:58 castaglia
+2004-05-28 castaglia <castaglia>
- * modules/mod_xfer.c:
- Make the error message returned here consistent with the other
- occurrences of 500 responses in mod_xfer.
+ * README.modules: Update this README.
-2004-04-26 16:33 castaglia
+2004-05-27 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.
+ * 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-04-23 18:17 castaglia
+2004-05-26 castaglia <castaglia>
- * modules/mod_auth.c:
- Do not warn about a successful root login until after root has
- indeed successfully logged in.
+ * src/ctrls.c: Make sure that the destination ctrl object has a
+ valid temporary pool from which to copy arguments.
-2004-04-23 18:13 castaglia
+2004-05-26 castaglia <castaglia>
- * doc/modules/mod_auth_pam.html:
- Add HTML docs for mod_auth_pam.
+ * src/dirtree.c: Reset the sid (server ID) counter when preparing to
+ parse a configuration.
-2004-04-23 14:29 castaglia
+2004-05-26 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).
+ * configure: Updating configure script.
-2004-04-23 13:46 castaglia
+2004-05-26 castaglia <castaglia>
- * src/netacl.c:
- The '{' character is also used in globs.
+ * config.h.in, configure.in: Check if intptr_t is defined.
-2004-04-23 11:35 castaglia
+2004-05-25 castaglia <castaglia>
- * modules/mod_ls.c:
- Write a debug message, level 1, when NLST commands with options
- (as from ncftp) are received.
+ * 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-04-22 18:32 castaglia
+2004-05-25 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.
+ * contrib/mod_tls.c: Check the return value of
+ SSL_CTX_set_default_verify_locations(), and log the error (if any).
-2004-04-21 18:32 castaglia
+2004-05-25 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
+ * doc/howto/BCP.html: Wording.
- error setting write fd IP_TOS: Option not supported by protocol
+2004-05-25 castaglia <castaglia>
- errors seen on some platforms (e.g. Solaris).
+ * 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-04-21 14:29 castaglia
+2004-05-24 castaglia <castaglia>
- * doc/howto/: index.html, Classes.html:
- Add a howto for the new <Class> format.
+ * 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-04-20 18:23 castaglia
+2004-05-24 castaglia <castaglia>
- * src/main.c:
- Style cleanup.
+ * lib/pr-syslog.c: Mention the Sun bug number that caused the
+ /dev/log kernel memory leak.
-2004-04-20 18:15 castaglia
+2004-05-23 castaglia <castaglia>
- * src/main.c:
- Capture the actual errno value, rather than assuming that
- intervening functions will not change errno.
+ * contrib/mod_quotatab_sql.c: Typo.
-2004-04-20 16:26 castaglia
+2004-05-22 castaglia <castaglia>
- * doc/howto/Limit.html:
- Consistency of style is a Good Thing.
+ * contrib/mod_quotatab_sql.c: Don't complain about being unable to
+ delete a nonexistent QuotaLock.
-2004-04-20 13:57 castaglia
+2004-05-21 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.
+ * RELEASE_NOTES: Style.
-2004-04-19 19:05 castaglia
+2004-05-21 castaglia <castaglia>
- * src/log.c:
- Fix the logging of IP addresses in the utmp/wtmp log on Linux.
- Formatting cleanup.
+ * RELEASE_NOTES: Update the release notes with mention of
+ TimeoutLinger.
-2004-04-19 16:59 castaglia
+2004-05-21 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.
+ * 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.
- Future work will overload this directive to work as users would
- like (see Bug#1898) for the <Limit> context.
+2004-05-20 castaglia <castaglia>
-2004-04-19 16:33 castaglia
+ * contrib/mod_ctrls_admin.c: Check for signals while waiting for all
+ kids to end when handling a graceful shutdown.
- * src/dirtree.c:
- Report line numbers when parsing .ftpaccess files, too.
+2004-05-20 castaglia <castaglia>
-2004-04-18 10:00 castaglia
+ * doc/howto/Controls.html, doc/howto/index.html: Add a Controls
+ howto.
- * 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-05-19 castaglia <castaglia>
-2004-04-16 09:33 castaglia
+ * modules/mod_auth.c: Make sure a Class has been assigned before
+ attempting to use it.
- * 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-05-19 castaglia <castaglia>
-2004-04-15 18:08 castaglia
+ * NEWS, lib/pr-syslog.c, src/main.c: Bug#2336 - Use of /dev/log on
+ Solaris leads to kernel memory leak.
- * NEWS:
- Mention in NEWS the new doc/modules/ directory.
+2004-05-19 castaglia <castaglia>
-2004-04-15 17:54 castaglia
+ * src/dirtree.c: Style.
- * doc/modules/mod_ctrls.html:
- Updating mod_ctrls' installation instructions.
+2004-05-17 castaglia <castaglia>
-2004-04-15 17:36 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.
- * doc/modules/: mod_auth_file.html, mod_cap.html, 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-05-15 castaglia <castaglia>
-2004-04-15 17:19 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.
- * contrib/: mod_ifsession.html, mod_quotatab.html, mod_radius.html,
- mod_sql.html, mod_tls.html, mod_wrap.html:
- Formatting fixups.
+2004-05-13 castaglia <castaglia>
-2004-04-15 16:16 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.
- * include/ctrls.h:
- These changes should've been part of an earlier commit.
+2004-05-13 castaglia <castaglia>
-2004-04-15 15:19 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.
- * contrib/mod_rewrite.html:
- The features listed under "future work" have been implemented.
+2004-05-13 castaglia <castaglia>
-2004-04-15 15:14 castaglia
+ * NEWS, modules/mod_auth.c, src/mkhome.c: Bug#2410 - CreateHome
+ always copies skel directory.
- * 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-05-12 castaglia <castaglia>
-2004-04-15 14:31 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.
- * contrib/mod_rewrite.html:
- Document the flags parameters for RewriteCondition, RewriteRule.
- Also document the possible pattern variants allowed for
- RewriteCondition. Add an example of using mod_rewrite to make
- all uploaded files have uppercased filenames.
+2004-05-11 castaglia <castaglia>
-2004-04-15 11:46 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
- * sample-configurations/basic.conf:
- The default configuration file should not allow use of SITE
- CHMOD.
+2004-05-11 castaglia <castaglia>
-2004-04-15 10:33 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).
- * contrib/mod_rewrite.html:
- Formatting typo.
+2004-05-10 castaglia <castaglia>
-2004-04-14 19:47 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.
- * src/main.c:
- Cleanup the error reported if the PidFile cannot be opened.
+2004-05-09 castaglia <castaglia>
-2004-04-14 13:25 castaglia
+ * src/data.c: When opening a data connection, check for the ESPV ALL
+ mode as well.
- * modules/mod_core.c:
- Michael suggested that this log message be at the INFO level.
+2004-05-09 castaglia <castaglia>
-2004-04-14 11:11 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.
- * 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-05-08 castaglia <castaglia>
-2004-04-13 13:19 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.
- * doc/howto/Filters.html:
- Emphasize _not_ using both an Allow and a Deny Filter at the same
- time.
+2004-05-07 castaglia <castaglia>
-2004-04-13 10:55 castaglia
+ * NEWS, modules/mod_ls.c: Bug#2366 - Add support for -h list option.
- * 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-05-07 castaglia <castaglia>
-2004-04-13 10:52 castaglia
+ * modules/mod_ls.c: Redeclaring a variable isn't a good thing to do.
- * NEWS, include/privs.h:
- Bug#2387 - PRIVS_USER macro should set effective GID to user's
- primary GID.
+2004-05-07 castaglia <castaglia>
-2004-04-13 09:48 castaglia
+ * src/child.c: Include <signal.h> so that the kill(2) function
+ prototype is visible.
- * 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.
+2004-05-06 castaglia <castaglia>
- Format/style cleanups, removed unused CLASS_USER #define.
+ * NEWS, modules/mod_ls.c: Bug#2405 - "LIST *" should not list
+ dotfiles.
-2004-04-13 09:46 castaglia
+2004-05-05 castaglia <castaglia>
- * contrib/mod_ctrls_admin.c:
- Update the proftpd version required by mod_ctrls_admin.
+ * 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-04-12 10:41 castaglia
+2004-05-04 castaglia <castaglia>
- * modules/mod_auth.c:
- Have AnonRejectPasswords generate an event.
+ * lib/glibc-glob.c: The buffer length should be PR_TUNABLE_LOGIN_MAX
+ + 1.
-2004-04-12 10:35 castaglia
+2004-05-04 castaglia <castaglia>
- * modules/mod_ctrls.c:
- Consistent use of strcmp(). Use ANY_MODULE where appropriate,
- rather than NULL.
+ * 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-04-12 10:14 castaglia
+2004-05-03 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.:
+ * NEWS, include/class.h, src/class.c, src/main.c: Bug#2403 - Sending
+ SIGHUP to proftpd stops it when using Classes.
- SomeDirective \
- foo \
- # bar \
- baz
+2004-05-02 castaglia <castaglia>
- Without this patch, pr_fsio_getline() would return the '#'
- character, which is not what most people would think would
- happen.
+ * NEWS, contrib/mod_rewrite.c: Bug#2082 - Add mod_rewrite
+ "replaceall" builtin function.
-2004-04-12 10:09 castaglia
+2004-05-02 castaglia <castaglia>
- * src/dirtree.c:
- Be a little more strict when checking for "${env:...}" strings in
- the config file.
+ * NEWS, contrib/mod_ctrls_admin.c: Bug#2399 - Rename start/stop
+ control actions to up/down.
- Format/style cleanup.
+2004-05-02 castaglia <castaglia>
-2004-04-11 15:50 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.
- * doc/howto/: BCP.html, Globbing.html, index.html:
- Add the Globbing and BCP howtos.
+2004-05-01 castaglia <castaglia>
-2004-04-11 15:38 castaglia
+ * contrib/mod_tls.c: Only report the version of OpenSSL being used
+ at debug level 2 or higher.
- * include/options.h:
- Updating outdated comments.
+2004-05-01 castaglia <castaglia>
-2004-04-11 15:13 castaglia
+ * NEWS, modules/mod_auth.c: Bug#2401 - MaxClientsPerClass only
+ checks first directive in config file.
- * modules/mod_xfer.c:
- Typo.
+2004-05-01 castaglia <castaglia>
-2004-04-11 15:03 castaglia
+ * NEWS, src/class.c: Bug#2400 - <Class> search order is wrong.
- * 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-30 castaglia <castaglia>
-2004-04-11 13:42 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.
- * NEWS, modules/mod_ctrls.c, src/ctrls.c:
- Bug#2383 - mod_ctrls.c: ctrls_listen(): Invalid size in bind()
- argument.
+2004-04-29 castaglia <castaglia>
-2004-04-11 13:35 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.
- * 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.
+2004-04-29 castaglia <castaglia>
- 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.
+ * 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-11 13:27 castaglia
+2004-04-29 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.
+ * 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-11 13:22 castaglia
+2004-04-29 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.
+ * NEWS, modules/mod_ls.c: Bug#2396 - NLST command doesn't understand
+ options.
-2004-04-11 13:12 castaglia
+2004-04-28 castaglia <castaglia>
- * modules/mod_core.c:
- This copy of copy_file() is no longer needed.
+ * 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-10 13:55 castaglia
+2004-04-28 castaglia <castaglia>
- * contrib/: ftpasswd.html, ftpquota.html, mod_ctrls_admin.html,
- mod_ifsession.html, mod_quotatab.html, mod_quotatab_file.html,
- mod_quotatab_ldap.html, mod_quotatab_sql.html, mod_radius.html,
- mod_rewrite.html, mod_site_misc.html, mod_sql.html, mod_tls.html,
- mod_wrap.html:
- Minor formatting change (removed extraneous <br>).
+ * include/version.h: Set version back to CVS status for rc2.
-2004-04-10 13:42 castaglia
+2004-04-28 castaglia <castaglia>
- * doc/howto/: FXP.html, index.html:
- Add FXP howto.
+ * ChangeLog: Updating ChangeLog.
-2004-04-10 13:37 castaglia
+2004-04-28 castaglia <castaglia>
- * doc/howto/: NAT.html, index.html:
- Add NAT howto.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ to roll 1.2.10rc1 tarball.
-2004-04-10 13:11 castaglia
+2004-04-28 castaglia <castaglia>
- * doc/howto/SQL.html:
- Update the SQL howto to mention using SQLLogFile.
+ * 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-10 12:02 castaglia
+2004-04-27 castaglia <castaglia>
- * doc/howto/index.html:
- Add an index page for these howtos.
+ * modules/mod_xfer.c: Make the error message returned here
+ consistent with the other occurrences of 500 responses in mod_xfer.
-2004-04-10 11:44 castaglia
+2004-04-26 castaglia <castaglia>
- * doc/howto/Directory.html:
- Typo.
+ * 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-10 11:33 castaglia
+2004-04-24 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).
+ * modules/mod_auth.c: Do not warn about a successful root login
+ until after root has indeed successfully logged in.
-2004-04-10 11:01 castaglia
+2004-04-24 castaglia <castaglia>
- * doc/howto/: Authentication.html, Chroot.html, ConfigFile.html,
- Debugging.html, Directory.html, FTP.html, Filters.html,
- Limit.html, SQL.html, ServerType.html, Stopping.html, TLS.html,
- Umask.html, Vhost.html:
- Standardize on "Last Updated" in the footer.
+ * doc/modules/mod_auth_pam.html: Add HTML docs for mod_auth_pam.
-2004-04-10 10:59 castaglia
+2004-04-23 castaglia <castaglia>
- * doc/howto/Logging.html:
- Add Logging doc.
+ * 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-10 10:42 castaglia
+2004-04-23 castaglia <castaglia>
- * doc/howto/: Authentication.html, ConfigFile.html, Filters.html,
- Limit.html, ServerType.html, Stopping.html, Vhost.html:
- Modifying links in docs to reference other docs in this area,
- rather than the pages on www.castaglia.org.
+ * src/netacl.c: The '{' character is also used in globs.
-2004-04-10 10:29 castaglia
+2004-04-23 castaglia <castaglia>
- * doc/howto/Stopping.html:
- Add doc for starting/stopping proftpd.
+ * modules/mod_ls.c: Write a debug message, level 1, when NLST
+ commands with options (as from ncftp) are received.
-2004-04-10 10:23 castaglia
+2004-04-23 castaglia <castaglia>
- * doc/howto/FTP.html:
- Add doc covering FTP commands supported by proftpd.
+ * 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-10 10:16 castaglia
+2004-04-22 castaglia <castaglia>
- * doc/howto/ServerType.html:
- Adding ServerType doc.
+ * 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-09 19:30 castaglia
+2004-04-21 castaglia <castaglia>
- * modules/mod_auth_unix.c:
- When compiling on a HP-UX box which supports bigcrypt(), the
- following warning is seen:
+ * doc/howto/Classes.html, doc/howto/index.html: Add a howto for the
+ new <Class> format.
- passing arg 1 of `bigcrypt' discards qualifiers from pointer
- target type
+2004-04-21 castaglia <castaglia>
- Quell this warning by explicitly casting the arguments to
- bigcrypt() to be char *.
+ * src/main.c: Style cleanup.
-2004-04-09 19:01 castaglia
+2004-04-21 castaglia <castaglia>
- * doc/howto/SSH.html:
- Add FTP-over-SSH mini-HOWTO.
+ * src/main.c: Capture the actual errno value, rather than assuming
+ that intervening functions will not change errno.
-2004-04-09 17:34 castaglia
+2004-04-20 castaglia <castaglia>
- * doc/howto/: Authentication.html, Chroot.html, ConfigFile.html,
- Debugging.html, Directory.html, Filters.html, Limit.html,
- SQL.html, TLS.html, Umask.html, Vhost.html:
- Adjusting footers for consistency.
+ * doc/howto/Limit.html: Consistency of style is a Good Thing.
-2004-04-09 17:19 castaglia
+2004-04-20 castaglia <castaglia>
- * doc/howto/Umask.html:
- Add the Umask mini-HOWTO.
+ * 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-09 11:49 castaglia
+2004-04-20 castaglia <castaglia>
- * doc/howto/Filters.html:
- Add the Filters mini-HOWTO to the source distro.
+ * src/log.c: Fix the logging of IP addresses in the utmp/wtmp log on
+ Linux. Formatting cleanup.
-2004-04-09 10:19 castaglia
+2004-04-19 castaglia <castaglia>
- * contrib/: mod_ctrls_admin.c, mod_ctrls_admin.html:
- Add ability to kick entire Classes via the 'kick' action.
+ * 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-09 09:58 castaglia
+2004-04-19 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.
+ * src/dirtree.c: Report line numbers when parsing .ftpaccess files,
+ too.
-2004-04-09 09:54 castaglia
+2004-04-18 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Removing this HOOK, as it won't work as intended. May re-add in
- the future.
+ * 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-08 17:23 castaglia
+2004-04-16 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.
+ * 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-08 15:50 castaglia
+2004-04-16 castaglia <castaglia>
- * contrib/mod_ifsession.html:
- Add note about making sure that mod_ifsession is last in the
- --with-modules list.
+ * NEWS: Mention in NEWS the new doc/modules/ directory.
-2004-04-07 19:54 castaglia
+2004-04-16 castaglia <castaglia>
- * contrib/mod_ctrls_admin.html:
- Updating author, copyright info.
+ * doc/modules/mod_ctrls.html: Updating mod_ctrls' installation
+ instructions.
-2004-04-07 19:43 castaglia
+2004-04-16 castaglia <castaglia>
- * contrib/mod_ctrls_admin.html:
- Add mod_ctrls_admin docs for the 'kick' action.
+ * 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-07 19:39 castaglia
+2004-04-15 castaglia <castaglia>
- * contrib/mod_ctrls_admin.c:
- Add the 'kick' action to mod_ctrls_admin, for disconnecting
- clients by user or host names.
+ * include/ctrls.h: These changes should've been part of an earlier
+ commit.
-2004-04-07 13:12 castaglia
+2004-04-15 castaglia <castaglia>
- * doc/howto/Authentication.html:
- Add note about avoiding use of mod_auth.c and mod_auth_pam.c in
- AuthOrder directives.
+ * 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-07 12:55 castaglia
+2004-04-15 castaglia <castaglia>
- * contrib/mod_quotatab.html:
- Add comment about per-session settings in mod_quotatab docs.
+ * sample-configurations/basic.conf: The default configuration file
+ should not allow use of SITE CHMOD.
-2004-04-07 12:02 castaglia
+2004-04-15 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Add a QuotaLog message warning that when per_session is true, the
- QuotaTallyTable will not be updated.
+ * src/main.c: Cleanup the error reported if the PidFile cannot be
+ opened.
-2004-04-06 16:17 castaglia
+2004-04-14 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).
+ * modules/mod_core.c: Michael suggested that this log message be at
+ the INFO level.
-2004-04-05 18:50 castaglia
+2004-04-14 castaglia <castaglia>
- * src/ctrls.c:
- Fix a format warning on Solaris.
+ * 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-05 16:01 castaglia
+2004-04-13 castaglia <castaglia>
- * contrib/mod_tls.c:
- Make sure and clear the relevant bits in tls_flags when the
- control and data channels are closed.
+ * doc/howto/Filters.html: Emphasize _not_ using both an Allow and a
+ Deny Filter at the same time.
-2004-04-05 11:01 castaglia
+2004-04-13 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.
+ * 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-05 10:59 castaglia
+2004-04-13 castaglia <castaglia>
- * modules/mod_auth.c, src/scoreboard.c:
- Check for an error return value from pr_rewind_scoreboard().
+ * NEWS, include/privs.h: Bug#2387 - PRIVS_USER macro should set
+ effective GID to user's primary GID.
- 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-13 castaglia <castaglia>
-2004-04-05 10:54 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.
- * NEWS:
- Mention the adding of mini-HOWTOs in NEWS.
+2004-04-13 castaglia <castaglia>
-2004-03-25 11:22 castaglia
+ * contrib/mod_ctrls_admin.c: Update the proftpd version required by
+ mod_ctrls_admin.
- * configure:
- Updating configure.
+2004-04-12 castaglia <castaglia>
-2004-03-25 11:16 castaglia
+ * modules/mod_auth.c: Have AnonRejectPasswords generate an event.
- * configure.in:
- Remove checks for README.mod_sql from configure.
+2004-04-12 castaglia <castaglia>
-2004-03-25 09:33 castaglia
+ * modules/mod_ctrls.c: Consistent use of strcmp(). Use ANY_MODULE
+ where appropriate, rather than NULL.
- * contrib/mod_tls.c:
- Report the version of OpenSSL used in server debugging output.
+2004-04-12 castaglia <castaglia>
-2004-03-24 13:57 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.
- * contrib/ftpasswd.html:
- Reflect Bug#2371's new --not-previous-passsword addition in the
- ftpasswd HTML docs.
+2004-04-12 castaglia <castaglia>
-2004-03-24 13:55 castaglia
+ * src/dirtree.c: Be a little more strict when checking for
+ "${env:...}" strings in the config file. Format/style cleanup.
- * NEWS, contrib/ftpasswd:
- Bug#2371 - ftpasswd should have option to compare password
- against value in passwd file.
+2004-04-11 castaglia <castaglia>
-2004-03-23 15:29 castaglia
+ * doc/howto/BCP.html, doc/howto/Globbing.html, doc/howto/index.html:
+ Add the Globbing and BCP howtos.
- * 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-04-11 castaglia <castaglia>
-2004-03-23 10:40 castaglia
+ * include/options.h: Updating outdated comments.
- * modules/mod_ls.c:
- Add a comment explaining the fix for Bug#2367.
+2004-04-11 castaglia <castaglia>
-2004-03-23 10:37 castaglia
+ * modules/mod_xfer.c: Typo.
- * NEWS, modules/mod_ls.c:
- Bug#2367 - LIST *.* strange behaviour.
+2004-04-11 castaglia <castaglia>
-2004-03-22 11:44 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.
- * doc/howto/: Authentication.html, Chroot.html, ConfigFile.html,
- Debugging.html, Directory.html, Limit.html, TLS.html, Vhost.html:
+2004-04-11 castaglia <castaglia>
- Adding more howtos.
+ * NEWS, modules/mod_ctrls.c, src/ctrls.c: Bug#2383 - mod_ctrls.c:
+ ctrls_listen(): Invalid size in bind() argument.
-2004-03-22 11:32 castaglia
+2004-04-11 castaglia <castaglia>
- * README.mod_sql:
- Removing this outdated README; see doc/howto/SQL.html for an
- updated version.
+ * 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-03-22 11:31 castaglia
+2004-04-11 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).
+ * 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-03-19 12:22 castaglia
+2004-04-11 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.
+ * 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-03-17 10:48 castaglia
+2004-04-11 castaglia <castaglia>
- * contrib/mod_sql.html:
- Removed mention of "*" for the SQLAuthenticate directive.
+ * modules/mod_core.c: This copy of copy_file() is no longer needed.
-2004-03-16 13:46 castaglia
+2004-04-10 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.
+ * doc/howto/FXP.html, doc/howto/index.html: Add FXP howto.
-2004-03-10 18:18 castaglia
+2004-04-10 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#2363 - ABOR response RFC 959 compliance.
+ * doc/howto/NAT.html, doc/howto/index.html: Add NAT howto.
-2004-03-10 18:02 castaglia
+2004-04-10 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.
+ * doc/howto/SQL.html: Update the SQL howto to mention using
+ SQLLogFile.
-2004-03-10 16:13 castaglia
+2004-04-10 castaglia <castaglia>
- * NEWS:
- Typos.
+ * doc/howto/index.html: Add an index page for these howtos.
-2004-03-09 17:31 castaglia
+2004-04-10 castaglia <castaglia>
- * include/privs.h:
- Typo.
+ * doc/howto/Directory.html: Typo.
-2004-03-08 16:53 castaglia
+2004-04-10 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.
+ * 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).
- At debug level 10, things are getting quite verbose; we should
- start looking into debugging output masks.
+2004-04-10 castaglia <castaglia>
-2004-03-08 12:32 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.
- * README.controls:
- Clarify that using --enable-ctrls means not using
- --with-modules=mod_ctrls.
+2004-04-10 castaglia <castaglia>
-2004-03-05 10:48 castaglia
+ * doc/howto/Logging.html: Add Logging doc.
- * modules/mod_core.c:
- On second thought, setting errno to ENOENT in these cases may not
- be the best idea.
+2004-04-10 castaglia <castaglia>
-2004-03-05 10:36 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.
- * 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-04-10 castaglia <castaglia>
-2004-03-05 10:22 castaglia
+ * doc/howto/Stopping.html: Add doc for starting/stopping proftpd.
- * 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-04-10 castaglia <castaglia>
-2004-03-04 19:24 castaglia
+ * doc/howto/FTP.html: Add doc covering FTP commands supported by
+ proftpd.
- * NEWS, utils/ftptop.c:
- Bug#2357 - ftptop should use COLS for determining display width.
+2004-04-10 castaglia <castaglia>
-2004-03-04 19:00 castaglia
+ * doc/howto/ServerType.html: Adding ServerType doc.
- * configure:
- Updating configure.
+2004-04-10 castaglia <castaglia>
-2004-03-04 18:13 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 *.
- * NEWS, config.h.in, configure.in, modules/mod_xfer.c:
- Bug#2353 - REST doesn't handle offsets greater than 2 GB.
+2004-04-10 castaglia <castaglia>
-2004-03-04 13:13 castaglia
+ * doc/howto/SSH.html: Add FTP-over-SSH mini-HOWTO.
- * modules/mod_core.c:
- Change handling of the SetEnv, UnsetEnv directives so that that
- they can be set on a per-vhost basis.
+2004-04-10 castaglia <castaglia>
-2004-03-03 17:41 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.
- * contrib/mod_tls.c:
- Didn't mean to commit those debugging changes. Oops.
+2004-04-10 castaglia <castaglia>
-2004-03-03 17:33 castaglia
+ * doc/howto/Umask.html: Add the Umask mini-HOWTO.
- * contrib/mod_tls.c:
- No need to be that verbose.
+2004-04-09 castaglia <castaglia>
-2004-03-03 13:21 castaglia
+ * doc/howto/Filters.html: Add the Filters mini-HOWTO to the source
+ distro.
- * 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-04-09 castaglia <castaglia>
-2004-03-02 16:24 castaglia
+ * contrib/mod_ctrls_admin.c: Add ability to kick entire Classes via
+ the 'kick' action.
- * NEWS, contrib/mod_tls.c:
- Bug#2355 - Send error message to client when 'TLSRequired both'
- is in effect.
+2004-04-09 castaglia <castaglia>
-2004-03-02 09:43 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.
- * contrib/mod_tls.c:
- Typo.
+2004-04-09 castaglia <castaglia>
-2004-03-01 08:55 castaglia
+ * contrib/mod_ifsession.c: Removing this HOOK, as it won't work as
+ intended. May re-add in the future.
- * include/conf.h:
- Doesn't help to check for <utime.h> if we don't include it.
+2004-04-09 castaglia <castaglia>
-2004-03-01 08:54 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.
- * 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-04-08 castaglia <castaglia>
-2004-03-01 08:47 castaglia
+ * contrib/mod_ctrls_admin.c: Add the 'kick' action to
+ mod_ctrls_admin, for disconnecting clients by user or host names.
- * configure:
- Updating configure.
+2004-04-07 castaglia <castaglia>
-2004-03-01 08:44 castaglia
+ * doc/howto/Authentication.html: Add note about avoiding use of
+ mod_auth.c and mod_auth_pam.c in AuthOrder directives.
- * config.h.in, configure.in:
- Check for the <utime.h> system header.
+2004-04-07 castaglia <castaglia>
-2004-03-01 08:43 castaglia
+ * contrib/mod_quotatab.c: Add a QuotaLog message warning that when
+ per_session is true, the QuotaTallyTable will not be updated.
- * contrib/mod_ctrls_admin.c, contrib/mod_ctrls_admin.html,
- src/netacl.c:
- Complete the 'dump classes' control for mod_ctrls_admin. Also
- adds the missing pr_netacl_get_type() function.
+2004-04-06 castaglia <castaglia>
-2004-03-01 08:42 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).
- * src/event.c:
- Add some basic caching of the last valid event generated, as a
- minor optimization.
+2004-04-06 castaglia <castaglia>
-2004-02-27 16:17 castaglia
+ * src/ctrls.c: Fix a format warning on Solaris.
- * contrib/mod_sql.html:
- Add HTML docs for mod_sql.
+2004-04-05 castaglia <castaglia>
-2004-02-27 14:53 castaglia
+ * contrib/mod_tls.c: Make sure and clear the relevant bits in
+ tls_flags when the control and data channels are closed.
- * modules/mod_ls.c:
- STAT is an INFO command more than it is a DIRS command (for
- logging purposes).
+2004-04-05 castaglia <castaglia>
-2004-02-27 14:42 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.
- * contrib/mod_sql.c:
- Add handling of the %L (local IP address) and %V (local DNS name)
- tags. Fix formatting.
+2004-04-05 castaglia <castaglia>
-2004-02-27 11:44 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()).
- * 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-04-05 castaglia <castaglia>
-2004-02-27 11:27 castaglia
+ * NEWS: Mention the adding of mini-HOWTOs in NEWS.
- * NEWS, README.modules:
- Bug#2257 - Add SITE SYMLINK command to mod_site. Added a new
- contrib module, mod_site_misc, instead.
+2004-03-25 castaglia <castaglia>
-2004-02-27 10:41 castaglia
+ * configure: Updating configure.
- * contrib/: mod_site_misc.c, mod_site_misc.html:
- New contrib module that implements miscellaneous SITE commands
- (e.g. SITE SYMLINK, SITE UTIME, etc) that other ftpds may
- recognize (e.g. ncftpd).
+2004-03-25 castaglia <castaglia>
-2004-02-24 12:34 castaglia
+ * configure.in: Remove checks for README.mod_sql from configure.
- * NEWS, modules/mod_ls.c:
- Bug#2339 - STAT command doesn't follow RFC959.
+2004-03-25 castaglia <castaglia>
-2004-02-24 12:32 castaglia
+ * contrib/mod_tls.c: Report the version of OpenSSL used in server
+ debugging output.
- * 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-03-24 castaglia <castaglia>
-2004-02-24 12:13 castaglia
+ * NEWS, contrib/ftpasswd: Bug#2371 - ftpasswd should have option to
+ compare password against value in passwd file.
- * NEWS, modules/mod_auth.c:
- Bug#2311 - MaxClients counts unauthenticated users.
+2004-03-23 castaglia <castaglia>
-2004-02-24 11:45 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.
- * contrib/mod_sql.c:
- Oops. My previous commit included my work-in-progress patch for
- SQLShowInfo, which isn't ready yet.
+2004-03-23 castaglia <castaglia>
-2004-02-24 11:39 castaglia
+ * modules/mod_ls.c: Add a comment explaining the fix for Bug#2367.
- * 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.
+2004-03-23 castaglia <castaglia>
- Also add some typecasts to unsigned longs for reporting IDs.
+ * NEWS, modules/mod_ls.c: Bug#2367 - LIST *.* strange behaviour.
-2004-02-24 08:52 castaglia
+2004-03-22 castaglia <castaglia>
- * modules/mod_core.c:
- Typos.
+ * 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-02-23 16:44 castaglia
+2004-03-22 castaglia <castaglia>
- * modules/mod_xfer.c:
- Allow uploading to FIFOs. Should we allow uploading to symlinks,
- too?
+ * 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-02-23 15:27 castaglia
+2004-03-19 castaglia <castaglia>
- * modules/mod_site.c:
- mod_site no longer uses a configuration handler table.
+ * 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-02-23 11:30 castaglia
+2004-03-16 castaglia <castaglia>
- * src/dirtree.c:
- Quell a minor compiler warning on OSX.
+ * 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-02-23 10:34 castaglia
+2004-03-11 castaglia <castaglia>
- * README.modules:
- Adding mod_quotatab et al to the list of modules that accompany
- proftpd.
+ * NEWS, modules/mod_xfer.c: Bug#2363 - ABOR response RFC 959
+ compliance.
-2004-02-20 10:34 castaglia
+2004-03-11 castaglia <castaglia>
- * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c,
- src/main.c:
- Bug#1696 - Include directive should support directories.
+ * 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-02-20 09:10 castaglia
+2004-03-11 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.
+ * NEWS: Typos.
-2004-02-19 10:22 castaglia
+2004-03-10 castaglia <castaglia>
- * README.IPv6:
- Updating the IPv6 notes.
+ * include/privs.h: Typo.
-2004-02-19 10:13 castaglia
+2004-03-09 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:
+ * 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.
- <IfUser foo>
- <Limit LOGIN>
- DenyAll
- </Limit>
- </IfUser>
+2004-03-08 castaglia <castaglia>
-2004-02-16 19:53 castaglia
+ * README.controls: Clarify that using --enable-ctrls means not using
+ --with-modules=mod_ctrls.
- * NEWS, modules/mod_auth_pam.c:
- Bug#2105 - Remove Authoritative directives.
+2004-03-05 castaglia <castaglia>
-2004-02-16 19:09 castaglia
+ * modules/mod_core.c: On second thought, setting errno to ENOENT in
+ these cases may not be the best idea.
- * contrib/ftpasswd.html:
- Documenting the new --delete-user and --delete-group options.
- Examples should be added at some point, too.
+2004-03-05 castaglia <castaglia>
-2004-02-16 19:06 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.
- * NEWS, contrib/ftpasswd:
- Bug#2171 - Add delete options to ftpasswd.
+2004-03-05 castaglia <castaglia>
-2004-02-16 18:15 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.
- * 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-03-05 castaglia <castaglia>
-2004-02-16 15:05 castaglia
+ * NEWS, utils/ftptop.c: Bug#2357 - ftptop should use COLS for
+ determining display width.
- * NEWS, modules/mod_xfer.c:
- Bug#2237 - HiddenStores does not check for existing file in edge
- case.
+2004-03-05 castaglia <castaglia>
-2004-02-15 14:58 castaglia
+ * configure: Updating configure.
- * NEWS, contrib/mod_sql.c:
- Bug#2327 - SQLNegativeCache causes unnecessary errors in server
- logging.
+2004-03-05 castaglia <castaglia>
-2004-02-15 14:42 castaglia
+ * NEWS, config.h.in, configure.in, modules/mod_xfer.c: Bug#2353 -
+ REST doesn't handle offsets greater than 2 GB.
- * contrib/mod_sql.c:
- Note the directive name when warning of deprecated * usage.
+2004-03-04 castaglia <castaglia>
-2004-02-15 14:05 castaglia
+ * modules/mod_core.c: Change handling of the SetEnv, UnsetEnv
+ directives so that that they can be set on a per-vhost basis.
- * 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-03-04 castaglia <castaglia>
-2004-02-15 11:41 castaglia
+ * contrib/mod_tls.c: Didn't mean to commit those debugging changes.
+ Oops.
- * NEWS:
- Mention in the NEWS file that Class and Classes are now
- deprecated.
+2004-03-04 castaglia <castaglia>
-2004-02-13 15:37 castaglia
+ * contrib/mod_tls.c: No need to be that verbose.
- * contrib/mod_quotatab.h:
- Update mod_quotatab's PROFTPD_VERSION_NUMBER check.
+2004-03-03 castaglia <castaglia>
-2004-02-13 15:28 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.
- * contrib/mod_ifsession.c:
- Update the PROFTPD_VERSION_NUMBER check.
+2004-03-03 castaglia <castaglia>
-2004-02-13 14:47 castaglia
+ * NEWS, contrib/mod_tls.c: Bug#2355 - Send error message to client
+ when 'TLSRequired both' is in effect.
- * contrib/mod_rewrite.c:
- Updating mod_rewrite for Class code changes.
+2004-03-02 castaglia <castaglia>
-2004-02-13 14:45 castaglia
+ * contrib/mod_tls.c: Typo.
- * contrib/mod_quotatab.c:
- Updating mod_quotatab for Class code changes.
+2004-03-01 castaglia <castaglia>
-2004-02-13 14:44 castaglia
+ * include/conf.h: Doesn't help to check for <utime.h> if we don't
+ include it.
- * contrib/mod_ifsession.c:
- Updating mod_ifsession to reflect Class changes.
+2004-03-01 castaglia <castaglia>
-2004-02-12 15:46 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.
- * NEWS, Makefile.in:
- Bug#2340 - Problem with parallel builds.
+2004-03-01 castaglia <castaglia>
-2004-02-11 19:48 castaglia
+ * configure: Updating configure.
- * contrib/mod_radius.html:
- Update the mod_radius installation instructions.
+2004-03-01 castaglia <castaglia>
-2004-02-11 19:47 castaglia
+ * config.h.in, configure.in: Check for the <utime.h> system header.
- * contrib/mod_radius.html:
- Typo.
+2004-03-01 castaglia <castaglia>
-2004-02-11 19:41 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.
- * contrib/mod_radius.html:
- Update the mod_radius docs.
+2004-03-01 castaglia <castaglia>
-2004-02-10 15:31 castaglia
+ * src/event.c: Add some basic caching of the last valid event
+ generated, as a minor optimization.
- * NEWS, contrib/mod_tls.c:
- Bug#2337 - TLSRenegotiate parameters not processed correctly.
+2004-02-27 castaglia <castaglia>
-2004-02-09 20:07 castaglia
+ * modules/mod_ls.c: STAT is an INFO command more than it is a DIRS
+ command (for logging purposes).
- * 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).
+2004-02-27 castaglia <castaglia>
- This highlights a need for a good list/set-iterating API, rather
- than relying on details of the actual structures.
+ * contrib/mod_sql.c: Add handling of the %L (local IP address) and
+ %V (local DNS name) tags. Fix formatting.
-2004-02-07 17:55 castaglia
+2004-02-27 castaglia <castaglia>
- * contrib/mod_readme.c:
- Update mod_readme to use the new pr_gmtime() function.
+ * 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-07 17:12 castaglia
+2004-02-27 castaglia <castaglia>
- * NEWS, utils/ftpcount.c:
- Bug#2306 - ftpcount output should handle case of no users.
+ * NEWS, README.modules: Bug#2257 - Add SITE SYMLINK command to
+ mod_site. Added a new contrib module, mod_site_misc, instead.
-2004-02-07 16:40 castaglia
+2004-02-27 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.
+ * 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-04 10:45 castaglia
+2004-02-24 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.
+ * NEWS, modules/mod_ls.c: Bug#2339 - STAT command doesn't follow
+ RFC959.
-2004-02-03 15:57 castaglia
+2004-02-24 castaglia <castaglia>
- * NEWS, modules/mod_core.c, src/dirtree.c:
- Bug#2315 - Overlapping virtual server causes error.
+ * 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.
- Also changes the collision check log messages to say "warning"
- rather than "error".
+2004-02-24 castaglia <castaglia>
-2004-02-01 12:51 castaglia
+ * NEWS, modules/mod_auth.c: Bug#2311 - MaxClients counts
+ unauthenticated users.
- * NEWS, modules/mod_ls.c:
- Bug#2322 - NLST -a returns listing formatted for LIST -a.
+2004-02-24 castaglia <castaglia>
-2004-01-30 16:08 castaglia
+ * contrib/mod_sql.c: Oops. My previous commit included my
+ work-in-progress patch for SQLShowInfo, which isn't ready yet.
- * src/log.c:
- Addition of PID was redundant. Oops.
+2004-02-24 castaglia <castaglia>
-2004-01-30 15:09 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.
- * src/netaddr.c:
- "dup" is an already used global variable in some system headers.
- How annoying.
+2004-02-24 castaglia <castaglia>
-2004-01-30 08:42 castaglia
+ * modules/mod_core.c: Typos.
- * 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-02-24 castaglia <castaglia>
-2004-01-29 19:37 castaglia
+ * modules/mod_xfer.c: Allow uploading to FIFOs. Should we allow
+ uploading to symlinks, too?
- * NEWS, contrib/mod_tls.c:
- Bug#2295 - mod_tls returns multi-line response to AUTH commands.
+2004-02-23 castaglia <castaglia>
-2004-01-29 19:09 castaglia
+ * modules/mod_site.c: mod_site no longer uses a configuration
+ handler table.
- * README.classes:
- Explicitly mention that the Class and Classes directives are
- deprecated.
+2004-02-23 castaglia <castaglia>
-2004-01-29 14:20 castaglia
+ * src/dirtree.c: Quell a minor compiler warning on OSX.
- * 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-02-23 castaglia <castaglia>
-2004-01-28 19:37 castaglia
+ * README.modules: Adding mod_quotatab et al to the list of modules
+ that accompany proftpd.
- * 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-02-20 castaglia <castaglia>
-2004-01-28 19:19 castaglia
+ * NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c,
+ src/main.c: Bug#1696 - Include directive should support directories.
- * include/netaddr.h, src/netaddr.c:
- Add a new function, pr_netaddr_dup(), for convenience.
+2004-02-20 castaglia <castaglia>
-2004-01-28 17:03 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.
- * 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-02-19 castaglia <castaglia>
-2004-01-20 16:35 cyberrobo
+ * README.IPv6: Updating the IPv6 notes.
- * .cvsignore: adding ftpdctl to the ignorelist
+2004-02-19 castaglia <castaglia>
-2004-01-20 15:26 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>
- * contrib/mod_quotatab_sql.html:
- Add FREEFORM INSERT query that is needed when talking to SQL
- Server.
+2004-02-17 castaglia <castaglia>
-2004-01-20 09:11 castaglia
+ * NEWS, modules/mod_auth_pam.c: Bug#2105 - Remove Authoritative
+ directives.
- * contrib/mod_radius.html:
- Grammar fix.
+2004-02-17 castaglia <castaglia>
-2004-01-20 09:07 castaglia
+ * NEWS, contrib/ftpasswd: Bug#2171 - Add delete options to ftpasswd.
- * contrib/mod_radius.html:
- Make a note of some nonsensical RADIUS implementations not being
- supported by mod_radius.
+2004-02-17 castaglia <castaglia>
-2004-01-19 10:00 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.
- * 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-02-16 castaglia <castaglia>
-2004-01-19 09:58 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2237 - HiddenStores does not check
+ for existing file in edge case.
- * 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.
+2004-02-15 castaglia <castaglia>
- Also, when building mod_ctrls_admin, make sure that Controls
- support has been enabled.
+ * NEWS, contrib/mod_sql.c: Bug#2327 - SQLNegativeCache causes
+ unnecessary errors in server logging.
-2004-01-19 09:42 castaglia
+2004-02-15 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.
+ * contrib/mod_sql.c: Note the directive name when warning of
+ deprecated * usage.
-2004-01-18 11:01 castaglia
+2004-02-15 castaglia <castaglia>
- * utils/: ftptop.c, utils.h:
- No need to include <sys/types.h> in these files, as it is already
- included in config.h.
+ * 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-01-18 10:21 castaglia
+2004-02-15 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).
+ * NEWS: Mention in the NEWS file that Class and Classes are now
+ deprecated.
-2004-01-18 10:11 castaglia
+2004-02-13 castaglia <castaglia>
- * modules/mod_ctrls.c:
- No need to log the error using root privs.
+ * contrib/mod_quotatab.h: Update mod_quotatab's
+ PROFTPD_VERSION_NUMBER check.
-2004-01-17 22:07 cyberrobo
+2004-02-13 castaglia <castaglia>
- * src/.cvsignore: added ftpdctl manpage to ignore list
+ * contrib/mod_ifsession.c: Update the PROFTPD_VERSION_NUMBER check.
-2004-01-17 15:18 castaglia
+2004-02-13 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * contrib/mod_rewrite.c: Updating mod_rewrite for Class code
+ changes.
-2004-01-17 15:16 castaglia
+2004-02-13 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#2320 - autoconf check for socklen_t doesn't work on FreeBSD
- 4.8-RELEASE.
+ * contrib/mod_quotatab.c: Updating mod_quotatab for Class code
+ changes.
-2004-01-17 15:08 castaglia
+2004-02-13 castaglia <castaglia>
- * NEWS, Makefile.in:
- Bug#2319 - Build scripts have owner-only execute permission.
+ * contrib/mod_ifsession.c: Updating mod_ifsession to reflect Class
+ changes.
-2004-01-17 14:57 castaglia
+2004-02-12 castaglia <castaglia>
- * config.sub:
- No, that didn't work.
+ * Makefile.in, NEWS: Bug#2340 - Problem with parallel builds.
-2004-01-17 14:56 castaglia
+2004-02-10 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.
+ * NEWS, contrib/mod_tls.c: Bug#2337 - TLSRenegotiate parameters not
+ processed correctly.
-2004-01-16 12:47 castaglia
+2004-02-10 castaglia <castaglia>
- * README.classes:
- First draft of a README describing the new <Class> syntax.
- Edits/additions welcome.
+ * 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-01-15 16:45 castaglia
+2004-02-08 castaglia <castaglia>
- * modules/mod_core.c:
- Have the emitted vhost collision message say "warning", rather
- than "error".
+ * contrib/mod_readme.c: Update mod_readme to use the new pr_gmtime()
+ function.
-2004-01-15 16:29 castaglia
+2004-02-08 castaglia <castaglia>
- * modules/mod_auth.c:
- The current CreateHome description has the following examples:
+ * NEWS, utils/ftpcount.c: Bug#2306 - ftpcount output should handle
+ case of no users.
- CreateHome on skel /etc/ftpd/skel
- CreateHome on dirmode 755
- CreateHome on skel /etc/ftpd/skel dirmode 700
+2004-02-08 castaglia <castaglia>
- 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.
+ * 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-01-15 15:54 castaglia
+2004-02-04 castaglia <castaglia>
- * contrib/mod_quotatab.c:
- Christian Schulte <cs at 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.
+ * 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-01-15 13:51 castaglia
+2004-02-03 castaglia <castaglia>
- * README.controls:
- Updating/fixing this document.
+ * 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-01-14 12:57 castaglia
+2004-02-01 castaglia <castaglia>
- * README.controls:
- Add a README describing the new Controls code. It's a work in
- progress.
+ * NEWS, modules/mod_ls.c: Bug#2322 - NLST -a returns listing
+ formatted for LIST -a.
-2004-01-13 20:00 castaglia
+2004-01-31 castaglia <castaglia>
- * modules/mod_auth.c:
- Fix compiler warning.
+ * src/log.c: Addition of PID was redundant. Oops.
-2004-01-13 15:47 castaglia
+2004-01-30 castaglia <castaglia>
- * NEWS:
- Add comment that bug 2183 is the same as bug 2165.
+ * src/netaddr.c: "dup" is an already used global variable in some
+ system headers. How annoying.
-2004-01-12 15:13 castaglia
+2004-01-30 castaglia <castaglia>
- * modules/mod_xfer.c:
- Consistency.
+ * 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-12 15:01 castaglia
+2004-01-30 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.
+ * NEWS, contrib/mod_tls.c: Bug#2295 - mod_tls returns multi-line
+ response to AUTH commands.
- Fix a typo.
+2004-01-30 castaglia <castaglia>
-2004-01-11 13:33 castaglia
+ * README.classes: Explicitly mention that the Class and Classes
+ directives are deprecated.
- * NEWS, contrib/mod_sql_mysql.c:
- Bug#2307 - MySQL 4.1.1 API change causes mod_sql_mysql
- compilation failure.
+2004-01-29 castaglia <castaglia>
-2004-01-08 20:41 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.
- * src/pool.c:
- The logic for handling new_block()'s exact argument was
- accidentally inverted.
+2004-01-29 castaglia <castaglia>
-2004-01-08 20:23 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.
- * include/pool.h, src/pool.c:
- Be consistent with the argument data types. These probably
- should be size_ts, but ints suffice.
+2004-01-29 castaglia <castaglia>
-2004-01-08 20:15 castaglia
+ * include/netaddr.h, src/netaddr.c: Add a new function,
+ pr_netaddr_dup(), for convenience.
- * 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-29 castaglia <castaglia>
-2004-01-02 07:27 jwm
+ * 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.
- * NEWS:
- - Bug 2267 - Broken IP subnet matching. Added new ACL
- parsing/matching code.
+2004-01-21 cyberrobo <cyberrobo>
-2003-12-30 15:17 castaglia
+ * .cvsignore: adding ftpdctl to the ignorelist
- * 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.
+2004-01-19 castaglia <castaglia>
-2003-12-30 14:56 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.
- * src/main.c:
- Style.
+2004-01-19 castaglia <castaglia>
-2003-12-26 07:59 jwm
+ * 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.
- * NEWS, Makefile.in: Bug 2305 - Compile Problems since > 1.2.9 Link
- ftpdctl against libsocket and libnsl to pick up dependency
- functions
+2004-01-19 castaglia <castaglia>
-2003-12-19 13:29 castaglia
+ * src/log.c: Make pr_log_writefile() a little more robust, by
+ checking whether the given fd is valid before doing any work.
- * contrib/mod_quotatab.c:
- Don't subtract xfer bytes when deleting a directory. Found and
- fixed by Christian Schulte <cs at schulte.it>
+2004-01-18 castaglia <castaglia>
-2003-12-16 09:43 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.
- * NEWS, src/netio.c:
- Bug#2300 - poll() returns 1 and read returns 0, inifinite loop.
+2004-01-18 castaglia <castaglia>
-2003-12-14 14:09 jwm
+ * 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).
- * contrib/dist/rpm/proftpd.spec:
- [Bug 2301] New: (s)rpms should require "/sbin/chkconfig" instead
- of package "chkconfig"
+2004-01-18 castaglia <castaglia>
-2003-12-11 12:30 castaglia
+ * modules/mod_ctrls.c: No need to log the error using root privs.
- * contrib/mod_quotatab.h:
- Bump the mod_quotatab version, for clarity.
+2004-01-18 cyberrobo <cyberrobo>
-2003-12-11 00:04 castaglia
+ * src/.cvsignore: added ftpdctl manpage to ignore list
- * modules/mod_auth.c:
- Forgot to add strerror() to the DefaultRoot resolution debugging.
+2004-01-17 castaglia <castaglia>
-2003-12-10 23:59 castaglia
+ * configure: Updating configure script.
- * modules/mod_auth.c:
- Add some debugging to the function which determines the actual
- path to use for DefaultRoot.
+2004-01-17 castaglia <castaglia>
-2003-12-09 12:08 castaglia
+ * NEWS, configure.in: Bug#2320 - autoconf check for socklen_t
+ doesn't work on FreeBSD 4.8-RELEASE.
- * contrib/mod_quotatab.c:
- More minor quotatab bugs fixed by Christian Schulte
- <cs at schulte.it>.
+2004-01-17 castaglia <castaglia>
-2003-12-09 11:57 castaglia
+ * Makefile.in, NEWS: Bug#2319 - Build scripts have owner-only
+ execute permission.
- * contrib/mod_quotatab_sql.c:
- Bug found by Christian Schulte <cs at schulte.it>: delta values are
- signed, and can be negative.
+2004-01-17 castaglia <castaglia>
-2003-12-02 23:43 castaglia
+ * config.sub: No, that didn't work.
- * contrib/: ftpquota.html, mod_quotatab.html,
- mod_quotatab_file.html, mod_quotatab_ldap.html,
- mod_quotatab_sql.html:
- Updating mod_quotatab docs to reflect the fact that the current
- versions will now always be found in the source distribution,
- rather than on castaglia.org/proftpd.
+2004-01-17 castaglia <castaglia>
-2003-12-02 23:39 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.
- * NEWS, contrib/ftpquota, contrib/ftpquota.html,
- contrib/mod_quotatab.c, contrib/mod_quotatab.h,
- contrib/mod_quotatab.html, contrib/mod_quotatab_file.c,
- contrib/mod_quotatab_file.html, contrib/mod_quotatab_ldap.c,
- contrib/mod_quotatab_ldap.html, contrib/mod_quotatab_sql.c,
- contrib/mod_quotatab_sql.html:
- Adding mod_quotatab to the contrib area.
+2004-01-16 castaglia <castaglia>
-2003-12-02 16:16 castaglia
+ * README.classes: First draft of a README describing the new <Class>
+ syntax. Edits/additions welcome.
- * 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.
+2004-01-16 castaglia <castaglia>
-2003-12-01 19:06 castaglia
+ * modules/mod_core.c: Have the emitted vhost collision message say
+ "warning", rather than "error".
- * modules/mod_core.c:
- Adjust mod_core.c to use the pr_* wrappers for gmtime(),
- localtime().
+2004-01-16 castaglia <castaglia>
-2003-12-01 18:54 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.
- * 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.
+2004-01-15 castaglia <castaglia>
-2003-11-19 12:57 castaglia
+ * contrib/mod_quotatab.c: Christian Schulte <cs at 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.
- * 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.
+2004-01-15 castaglia <castaglia>
-2003-11-19 12:13 castaglia
+ * README.controls: Updating/fixing this document.
- * NEWS, Makefile.in:
- Bug#1635 - Older systems' chown(1) does not support -h option.
+2004-01-14 castaglia <castaglia>
-2003-11-17 10:58 castaglia
+ * README.controls: Add a README describing the new Controls code.
+ It's a work in progress.
- * src/netaddr.c:
- Adding comments to clarify the purpose/usage of the
- get_v4inaddr() function.
+2004-01-14 castaglia <castaglia>
-2003-11-15 17:32 castaglia
+ * modules/mod_auth.c: Fix compiler warning.
- * src/netacl.c:
- Forgot to change this function name.
+2004-01-13 castaglia <castaglia>
-2003-11-15 17:25 castaglia
+ * NEWS: Add comment that bug 2183 is the same as bug 2165.
- * src/netacl.c:
- Typo.
+2004-01-12 castaglia <castaglia>
-2003-11-15 16:55 castaglia
+ * modules/mod_xfer.c: Consistency.
- * include/netacl.h, src/dirtree.c, src/netacl.c:
- Making the ACL type publically available via an accessor.
+2004-01-12 castaglia <castaglia>
-2003-11-15 16:49 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.
- * contrib/: mod_ctrls_admin.c, mod_ctrls_admin.html:
- 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.
+2004-01-11 castaglia <castaglia>
-2003-11-15 15:49 castaglia
+ * NEWS, contrib/mod_sql_mysql.c: Bug#2307 - MySQL 4.1.1 API change
+ causes mod_sql_mysql compilation failure.
- * 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.
+2004-01-09 castaglia <castaglia>
-2003-11-15 12:41 castaglia
+ * src/pool.c: The logic for handling new_block()'s exact argument
+ was accidentally inverted.
- * 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.
+2004-01-09 castaglia <castaglia>
-2003-11-15 12:30 castaglia
+ * include/pool.h, src/pool.c: Be consistent with the argument data
+ types. These probably should be size_ts, but ints suffice.
- * src/dirtree.c:
- Bad grammar.
+2004-01-09 castaglia <castaglia>
-2003-11-15 12:27 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).
- * NEWS, src/dirtree.c:
- Bug#2048 - Add ability to get configuration file values from
- environment.
+2004-01-02 jwm <jwm>
-2003-11-15 11:52 castaglia
+ * NEWS: - Bug 2267 - Broken IP subnet matching. Added new ACL
+ parsing/matching code.
- * 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-12-30 castaglia <castaglia>
-2003-11-15 11:43 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.
- * modules/mod_core.c:
- Handle IPv4 address Binds properly for DefaultAddress when IPv6
- is in use.
+2003-12-30 castaglia <castaglia>
-2003-11-14 18:31 castaglia
+ * src/main.c: Style.
- * configure:
- Updating configure.
+2003-12-26 jwm <jwm>
-2003-11-14 18:27 castaglia
+ * Makefile.in, NEWS: Bug 2305 - Compile Problems since > 1.2.9 Link
+ ftpdctl against libsocket and libnsl to pick up dependency functions
- * 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-12-19 castaglia <castaglia>
-2003-11-12 23:25 castaglia
+ * contrib/mod_quotatab.c: Don't subtract xfer bytes when deleting a
+ directory. Found and fixed by Christian Schulte <cs at schulte.it>
- * src/netaddr.c:
- Should be using pcalloc() not palloc().
+2003-12-16 castaglia <castaglia>
-2003-11-12 11:14 castaglia
+ * NEWS, src/netio.c: Bug#2300 - poll() returns 1 and read returns 0,
+ inifinite loop.
- * contrib/: mod_ctrls_admin.c, mod_ctrls_admin.html:
- Use '#' as the address/port delimiter, rather than '/'.
+2003-12-14 jwm <jwm>
-2003-11-12 08:20 castaglia
+ * contrib/dist/rpm/proftpd.spec: [Bug 2301] New: (s)rpms should
+ require "/sbin/chkconfig" instead of package "chkconfig"
- * NEWS, src/inet.c:
- Updating code for Mac OS X 10.3 (Darwin 7).
+2003-12-11 castaglia <castaglia>
-2003-11-10 13:38 castaglia
+ * contrib/mod_quotatab.h: Bump the mod_quotatab version, for
+ clarity.
- * configure:
- Updating configure.
+2003-12-11 castaglia <castaglia>
-2003-11-10 13:33 castaglia
+ * modules/mod_auth.c: Forgot to add strerror() to the DefaultRoot
+ resolution debugging.
- * config.h.in, configure.in:
- Add a check for the getenv(3) function.
+2003-12-11 castaglia <castaglia>
-2003-11-09 19:56 castaglia
+ * modules/mod_auth.c: Add some debugging to the function which
+ determines the actual path to use for DefaultRoot.
- * contrib/mod_ctrls_admin.html:
- Document the 'config' option to the 'debug' action.
+2003-12-09 castaglia <castaglia>
-2003-11-09 19:55 castaglia
+ * contrib/mod_quotatab.c: More minor quotatab bugs fixed by
+ Christian Schulte <cs at schulte.it>.
- * 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-12-09 castaglia <castaglia>
-2003-11-09 19:52 castaglia
+ * contrib/mod_quotatab_sql.c: Bug found by Christian Schulte
+ <cs at schulte.it>: delta values are signed, and can be negative.
- * src/pool.c:
- Better name for this printf-like function pointer variable.
+2003-12-03 castaglia <castaglia>
-2003-11-09 19:14 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.
- * configure:
- Updating configure.
+2003-12-03 castaglia <castaglia>
-2003-11-09 19:10 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.
- * configure.in:
- Some systems (e.g. FreeBSD) declare getaddrinfo(2) in
- <sys/socket.h>.
+2003-12-02 castaglia <castaglia>
-2003-11-09 16:51 castaglia
+ * modules/mod_core.c: Adjust mod_core.c to use the pr_* wrappers for
+ gmtime(), localtime().
- * contrib/mod_ctrls_admin.c:
- Update mod_ctrls_admin to use events.
+2003-12-02 castaglia <castaglia>
-2003-11-09 16:01 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.
- * contrib/: mod_ctrls_admin.c, mod_ctrls_admin.html:
- Controls are useless without something implementing some control
- actions; add the mod_ctrls_admin module (was mod_ctrls_common) to
- contrib.
+2003-11-19 castaglia <castaglia>
-2003-11-09 15:32 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.
- * src/: auth.c, ctrls.c, data.c, dirtree.c, event.c, fsio.c,
- ident.c, log.c, main.c, mkhome.c, netaddr.c, scoreboard.c,
- support.c:
- Updating the source code to use pr_log_debug() rather than
- log_debug().
+2003-11-19 castaglia <castaglia>
-2003-11-09 15:10 castaglia
+ * Makefile.in, NEWS: Bug#1635 - Older systems' chown(1) does not
+ support -h option.
- * modules/: mod_auth.c, mod_auth_file.c, mod_cap.c, mod_core.c,
- mod_ctrls.c, mod_log.c, mod_ls.c, mod_site.c, mod_xfer.c:
- Updating modules to use pr_log_debug() rather than log_debug().
+2003-11-17 castaglia <castaglia>
-2003-11-09 14:59 castaglia
+ * src/netaddr.c: Adding comments to clarify the purpose/usage of the
+ get_v4inaddr() function.
- * include/privs.h:
- Use pr_log_debug() rather than log_debug().
+2003-11-16 castaglia <castaglia>
-2003-11-09 14:54 castaglia
+ * src/netacl.c: Forgot to change this function name.
- * doc/mod_sample.c:
- Updating the sample module mod_sample.c to use pr_log_*() rather
- than log_*().
+2003-11-16 castaglia <castaglia>
-2003-11-09 14:51 castaglia
+ * src/netacl.c: Typo.
- * modules/mod_core.c:
- unsetenv(3) returns void, not int.
+2003-11-16 castaglia <castaglia>
-2003-11-09 14:48 castaglia
+ * include/netacl.h, src/dirtree.c, src/netacl.c: Making the ACL type
+ publically available via an accessor.
- * src/main.c:
- Typo.
+2003-11-16 castaglia <castaglia>
-2003-11-09 14:43 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.
- * src/main.c:
- Forgot to cleanup one sig_debug() reference.
+2003-11-15 castaglia <castaglia>
-2003-11-09 14:40 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.
- * 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-15 castaglia <castaglia>
-2003-11-09 14:19 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.
- * 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-15 castaglia <castaglia>
-2003-11-09 13:35 castaglia
+ * src/dirtree.c: Bad grammar.
- * contrib/mod_ldap.c:
- Updating mod_ldap.c to use pr_log_*() rather than log_*().
+2003-11-15 castaglia <castaglia>
-2003-11-09 13:29 castaglia
+ * NEWS, src/dirtree.c: Bug#2048 - Add ability to get configuration
+ file values from environment.
- * contrib/mod_ratio.c:
- Updating mod_ratio.c to use pr_log_*() rather than log_*().
+2003-11-15 castaglia <castaglia>
-2003-11-09 13:28 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.
- * contrib/mod_wrap.c:
- Updating mod_wrap.c to use pr_log_*() rather than log_*().
+2003-11-15 castaglia <castaglia>
-2003-11-09 13:26 castaglia
+ * modules/mod_core.c: Handle IPv4 address Binds properly for
+ DefaultAddress when IPv6 is in use.
- * contrib/mod_tls.c:
- Updating mod_tls.c to use pr_log_*() rather than log_*().
+2003-11-15 castaglia <castaglia>
-2003-11-09 13:25 castaglia
+ * configure: Updating configure.
- * contrib/mod_sql_postgres.c:
- Updating mod_sql_postgres to use pr_log_*() rather than log_*().
+2003-11-15 castaglia <castaglia>
-2003-11-09 13:24 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.
- * modules/mod_core.c, src/main.c:
- The function is now pr_log_setdebuglevel(), not
- log_setdebuglevel().
+2003-11-13 castaglia <castaglia>
-2003-11-09 13:23 castaglia
+ * src/netaddr.c: Should be using pcalloc() not palloc().
- * contrib/mod_sql_mysql.c:
- Updating mod_sql_mysql.c to use pr_log_*() rather than log_*().
+2003-11-12 castaglia <castaglia>
-2003-11-09 13:22 castaglia
+ * contrib/mod_ctrls_admin.c: Use '#' as the address/port delimiter,
+ rather than '/'.
- * contrib/mod_sql.c:
- Updating mod_sql.c to use pr_log_*() rather than log_*().
+2003-11-12 castaglia <castaglia>
-2003-11-09 13:20 castaglia
+ * NEWS, src/inet.c: Updating code for Mac OS X 10.3 (Darwin 7).
- * contrib/mod_rewrite.c:
- Updating mod_rewrite.c to use pr_log_*() rather than log_*().
+2003-11-10 castaglia <castaglia>
-2003-11-09 13:19 castaglia
+ * configure: Updating configure.
- * contrib/mod_readme.c:
- Updating mod_readme to use pr_log_debug() rather than
- log_debug().
+2003-11-10 castaglia <castaglia>
-2003-11-09 13:18 castaglia
+ * config.h.in, configure.in: Add a check for the getenv(3) function.
- * contrib/mod_radius.c:
- Updating mod_radius.c to use pr_log_pri() rather than log_pri().
+2003-11-10 castaglia <castaglia>
-2003-11-09 13:16 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.
- * contrib/mod_ifsession.c:
- Updating mod_ifsession to use pr_log_debug() rather than
- log_debug().
+2003-11-10 castaglia <castaglia>
-2003-11-09 13:11 castaglia
+ * src/pool.c: Better name for this printf-like function pointer
+ variable.
- * 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-10 castaglia <castaglia>
-2003-11-09 13:09 castaglia
+ * configure: Updating configure.
- * 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-10 castaglia <castaglia>
-2003-11-09 11:53 castaglia
+ * configure.in: Some systems (e.g. FreeBSD) declare getaddrinfo(2)
+ in <sys/socket.h>.
- * NEWS:
- Note the affect of the logging class change for RNFR and RNTO.
+2003-11-10 castaglia <castaglia>
-2003-11-09 09:08 castaglia
+ * contrib/mod_ctrls_admin.c: Update mod_ctrls_admin to use events.
- * 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-10 castaglia <castaglia>
-2003-11-09 09:04 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.
- * src/ftpdctl.8.in:
- Tweak the ftpdctl man page a little.
+2003-11-09 castaglia <castaglia>
-2003-11-09 00:02 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().
- * configure:
- Updating configure.
+2003-11-09 castaglia <castaglia>
-2003-11-09 00:00 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().
- * Makefile.in, configure.in, src/ftpdctl.8.in:
- Adding ftpdctl man page.
+2003-11-09 castaglia <castaglia>
-2003-11-08 23:47 castaglia
+ * include/privs.h: Use pr_log_debug() rather than log_debug().
- * src/ctrls.c:
- Tag pools allocated in the Controls API. Style cleanup.
+2003-11-09 castaglia <castaglia>
-2003-11-08 21:38 castaglia
+ * doc/mod_sample.c: Updating the sample module mod_sample.c to use
+ pr_log_*() rather than log_*().
- * NEWS, modules/mod_core.c:
- Bug#2046 - Change RFNR and RNTO logging class to WRITE.
+2003-11-09 castaglia <castaglia>
-2003-11-08 21:15 castaglia
+ * modules/mod_core.c: unsetenv(3) returns void, not int.
- * contrib/mod_wrap.c:
- Wrong function name.
+2003-11-09 castaglia <castaglia>
-2003-11-08 21:11 castaglia
+ * src/main.c: Typo.
- * modules/: mod_auth.c, mod_core.c, mod_xfer.c:
- Updating the rest of the core code to use the newer Expressions
- API.
+2003-11-09 castaglia <castaglia>
-2003-11-08 21:03 castaglia
+ * src/main.c: Forgot to cleanup one sig_debug() reference.
- * contrib/mod_wrap.c:
- Updating mod_wrap for the newer Expressions API.
+2003-11-09 castaglia <castaglia>
-2003-11-08 20:53 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).
- * 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>
-2003-11-08 20:46 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.
- * 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>
-2003-11-08 20:43 castaglia
+ * contrib/mod_ldap.c: Updating mod_ldap.c to use pr_log_*() rather
+ than log_*().
- * configure:
- Updating configure.
+2003-11-09 castaglia <castaglia>
-2003-11-08 19:41 castaglia
+ * contrib/mod_ratio.c: Updating mod_ratio.c to use pr_log_*() rather
+ than log_*().
- * contrib/mod_ifsession.c:
- Adjust mod_ifsession to use the same expression indicator values
- as the core code.
+2003-11-09 castaglia <castaglia>
-2003-11-08 19:37 castaglia
+ * contrib/mod_wrap.c: Updating mod_wrap.c to use pr_log_*() rather
+ than log_*().
- * 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>
-2003-11-08 18:34 castaglia
+ * contrib/mod_tls.c: Updating mod_tls.c to use pr_log_*() rather
+ than log_*().
- * 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>
-2003-11-08 18:29 castaglia
+ * contrib/mod_sql_postgres.c: Updating mod_sql_postgres to use
+ pr_log_*() rather than log_*().
- * modules/mod_auth.c:
- Generate events when the MaxClients* and MaxHostsPerUser limits
- are hit.
+2003-11-09 castaglia <castaglia>
-2003-11-08 18:17 castaglia
+ * modules/mod_core.c, src/main.c: The function is now
+ pr_log_setdebuglevel(), not log_setdebuglevel().
- * 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>
-2003-11-08 18:08 castaglia
+ * contrib/mod_sql_mysql.c: Updating mod_sql_mysql.c to use
+ pr_log_*() rather than log_*().
- * modules/mod_ctrls.c:
- Modify mod_ctrls to use the new Event API (as all new modules
- should).
+2003-11-09 castaglia <castaglia>
-2003-11-08 17:55 castaglia
+ * contrib/mod_sql.c: Updating mod_sql.c to use pr_log_*() rather
+ than log_*().
- * 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-08 16:52 castaglia
-
- * src/bindings.c:
- Remove (now) unused variable.
-
-2003-11-08 15:34 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 14:45 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 14:34 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 14:32 castaglia
-
- * src/event.c:
- When unregistering an event handler, be sure to honor the module
- argument, if any.
-
-2003-11-08 14:19 castaglia
+2003-11-09 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.
+ * contrib/mod_rewrite.c: Updating mod_rewrite.c to use pr_log_*()
+ rather than log_*().
-2003-11-08 12:40 castaglia
+2003-11-09 castaglia <castaglia>
- * NEWS, contrib/mod_radius.c:
- Bug#2255 - RADIUS Service-Type should reflect attribute
- expectations.
+ * contrib/mod_readme.c: Updating mod_readme to use pr_log_debug()
+ rather than log_debug().
-2003-11-08 12:30 castaglia
+2003-11-09 castaglia <castaglia>
- * configure:
- Updating configure.
+ * contrib/mod_radius.c: Updating mod_radius.c to use pr_log_pri()
+ rather than log_pri().
-2003-11-08 12:26 castaglia
+2003-11-09 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#2271 - Improper autoconf check for getaddrinfo() on Tru64
- UNIX 5.1.
+ * contrib/mod_ifsession.c: Updating mod_ifsession to use
+ pr_log_debug() rather than log_debug().
-2003-11-08 11:40 castaglia
+2003-11-09 castaglia <castaglia>
- * Make.rules.in:
- Bug#2270 - Linkers can be quite picky about the order in which
- flags appear.
+ * 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-05 20:43 castaglia
+2003-11-09 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.
+ * 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.
- 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-09 castaglia <castaglia>
-2003-11-05 20:35 castaglia
+ * NEWS: Note the affect of the logging class change for RNFR and
+ RNTO.
- * src/auth.c:
- Add debugging output for group name/ID retrieval.
+2003-11-09 castaglia <castaglia>
-2003-11-05 18:53 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.
- * src/auth.c:
- Add debugging that shows the group IDs that end up being set via
- setgroups().
+2003-11-09 castaglia <castaglia>
-2003-11-05 16:13 castaglia
+ * src/ftpdctl.8.in: Tweak the ftpdctl man page a little.
- * configure:
- Updating configure.
+2003-11-09 castaglia <castaglia>
-2003-11-05 16:10 castaglia
+ * configure: Updating configure.
- * config.h.in, configure.in, modules/mod_core.c:
- Some platforms don't have setenv()/unsetenv(). Bummer.
+2003-11-09 castaglia <castaglia>
-2003-11-04 12:44 castaglia
+ * Makefile.in, configure.in, src/ftpdctl.8.in: Adding ftpdctl man
+ page.
- * 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-09 castaglia <castaglia>
-2003-11-02 16:42 jwm
+ * src/ctrls.c: Tag pools allocated in the Controls API. Style
+ cleanup.
- * contrib/dist/rpm/proftpd.spec:
- - Bug 2265 - correct path to mysql headers Submitted by:
- ncroiset at vdldiffusion.com (Nicolas Croiset) - note in the
- %changelog that it isn't updated often - use the CVS revision
- history
+2003-11-09 castaglia <castaglia>
-2003-11-01 00:25 castaglia
+ * NEWS, modules/mod_core.c: Bug#2046 - Change RFNR and RNTO logging
+ class to WRITE.
- * contrib/mod_tls.html:
- Update the mod_tls docs, now that Bug#2135's patch has been
- committed.
+2003-11-09 castaglia <castaglia>
-2003-11-01 00:14 castaglia
+ * contrib/mod_wrap.c: Wrong function name.
- * 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-09 castaglia <castaglia>
-2003-10-31 23:11 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.
- * 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-09 castaglia <castaglia>
-2003-10-31 16:12 castaglia
+ * contrib/mod_wrap.c: Updating mod_wrap for the newer Expressions
+ API.
- * 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-11-09 castaglia <castaglia>
-2003-10-31 15:57 castaglia
+ * contrib/mod_ifsession.c: Updating mod_ifsession to use the new
+ Expressions API. Fixed a compiler warning issued under
+ --enable-devel.
- * 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-11-09 castaglia <castaglia>
-2003-10-31 11:50 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.
- * NEWS, modules/mod_core.c:
- Bug#2098 - Add SetEnv, UnsetEnv directives.
+2003-11-09 castaglia <castaglia>
-2003-10-31 11:41 castaglia
+ * configure: Updating configure.
- * NEWS, modules/mod_auth_unix.c:
- Bug#2174 - mod_auth_unix should not act authoritatively.
+2003-11-09 castaglia <castaglia>
-2003-10-31 11:23 castaglia
+ * contrib/mod_ifsession.c: Adjust mod_ifsession to use the same
+ expression indicator values as the core code.
- * NEWS, modules/mod_core.c:
- Bug#2086 - Add <Limit> support for PORT, PASV, EPRT, EPSV.
+2003-11-09 castaglia <castaglia>
-2003-10-31 10:55 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.
- * NEWS, contrib/mod_tls.c:
- Bug#2135 - Add ability to handle passphrase-protected server
- keys.
+2003-11-09 castaglia <castaglia>
-2003-10-31 10:46 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.
- * src/: data.c, dirtree.c, fsio.c, main.c, netio.c:
- Silencing some valgrind complaints. Style fixups.
+2003-11-09 castaglia <castaglia>
-2003-10-31 01:14 castaglia
+ * modules/mod_auth.c: Generate events when the MaxClients* and
+ MaxHostsPerUser limits are hit.
- * include/version.h:
- Woohoo! The start of a new release cycle...
+2003-11-09 castaglia <castaglia>
-2003-10-31 00:22 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.
- * ChangeLog:
- Preparing for 1.2.9 release.
+2003-11-09 castaglia <castaglia>
-2003-10-31 00:10 castaglia
+ * modules/mod_ctrls.c: Modify mod_ctrls to use the new Event API (as
+ all new modules should).
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec:
- Preparing for the release of 1.2.9.
+2003-11-09 castaglia <castaglia>
-2003-10-31 00:05 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.
- * NEWS:
- Mention the memory leak fixes.
+2003-11-09 castaglia <castaglia>
-2003-10-31 00:02 castaglia
+ * src/bindings.c: Remove (now) unused variable.
- * contrib/mod_sql.c:
- Always expand %U to the USER name given, not just when
- session.user is NULL.
+2003-11-08 castaglia <castaglia>
-2003-10-30 23:22 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.
- * 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-11-08 castaglia <castaglia>
-2003-10-30 12:38 flyhmstr
+ * 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.
- * doc/: Configuration.html, Configuration.sgml, faq.html:
- ML: New userguide (html & sgml) and faq built from current pdd
- sources committed.
+2003-11-08 castaglia <castaglia>
-2003-10-28 10:41 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).
- * README.FreeBSD:
- Adding FreeBSD package installation docs from Bug#2250.
+2003-11-08 castaglia <castaglia>
-2003-10-22 00:40 castaglia
+ * src/event.c: When unregistering an event handler, be sure to honor
+ the module argument, if any.
- * src/main.c:
- Removing duplicate sanity check.
+2003-11-08 castaglia <castaglia>
-2003-10-21 23:49 castaglia
+ * Make.rules.in, NEWS, include/conf.h, include/event.h,
+ modules/mod_core.c, src/event.c, src/main.c: Adding Event API.
- * src/fsio.c:
- Fixing comments. Have pr_insert_fs() set errno on error, for
- reporting purposes.
+2003-11-08 castaglia <castaglia>
-2003-10-20 18:44 castaglia
+ * NEWS, contrib/mod_radius.c: Bug#2255 - RADIUS Service-Type should
+ reflect attribute expectations.
- * 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-11-08 castaglia <castaglia>
-2003-10-20 15:20 castaglia
+ * configure: Updating configure.
- * include/scoreboard.h:
- Forgot to increase the size of the IP address buffer in the
- scoreboard if --enable-ipv6 is used.
+2003-11-08 castaglia <castaglia>
-2003-10-20 00:28 castaglia
+ * NEWS, configure.in: Bug#2271 - Improper autoconf check for
+ getaddrinfo() on Tru64 UNIX 5.1.
- * modules/mod_log.c:
- More paranoid checking of snprintf() usage.
+2003-11-08 castaglia <castaglia>
-2003-10-20 00:15 castaglia
+ * Make.rules.in: Bug#2270 - Linkers can be quite picky about the
+ order in which flags appear.
- * contrib/: mod_radius.c, mod_sql.c, mod_tls.c:
- Minor paranoia changes: make certain the buffer is NUL-terminated
- before calling strlen() on its contents.
+2003-11-06 castaglia <castaglia>
-2003-10-20 00:02 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.
- * 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-11-06 castaglia <castaglia>
-2003-10-19 14:45 jwm
+ * src/auth.c: Add debugging output for group name/ID retrieval.
- * NEWS, contrib/dist/rpm/proftpd.spec:
- Bug 2197 - The RPM .spec has been updated for easy RPM builds
- from CVS snapshots.
+2003-11-06 castaglia <castaglia>
-2003-10-19 14:40 jwm
+ * src/auth.c: Add debugging that shows the group IDs that end up
+ being set via setgroups().
- * contrib/dist/rpm/proftpd.spec: rpm doesn't like empty
- BuildPreReqs, add a static dep on pam-devel
+2003-11-06 castaglia <castaglia>
-2003-10-18 16:48 castaglia
+ * configure: Updating configure.
- * src/fsio.c:
- Fixing a memory leak in the handling of structures used for
- tracking open directories.
+2003-11-06 castaglia <castaglia>
-2003-10-18 15:14 castaglia
+ * config.h.in, configure.in, modules/mod_core.c: Some platforms
+ don't have setenv()/unsetenv(). Bummer.
- * 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-11-04 castaglia <castaglia>
-2003-10-17 08:39 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.
- * 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.
+2003-11-03 jwm <jwm>
- 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.
+ * contrib/dist/rpm/proftpd.spec: - Bug 2265 - correct path to mysql headers Submitted by: ncroiset at vdldiffusion.com (Nicolas Croiset) - note in the %changelog that it isn't updated often - use the CVS revision history
-2003-10-17 06:19 castaglia
+2003-11-01 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#2181: fixing this bug (again) to work correctly in all cases.
+ * Makefile.in: When preparing a distribution using the 'dist'
+ target, be sure to clean up the .bak files generated by the 'clean'
+ target.
-2003-10-16 23:15 castaglia
+2003-11-01 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.
+ * 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-10-15 17:58 castaglia
+2003-11-01 castaglia <castaglia>
- * include/version.h:
- Updating the version for CVS status.
+ * 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-15 12:54 castaglia
+2003-10-31 castaglia <castaglia>
- * ChangeLog:
- Updating ChangeLog.
+ * 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-15 12:53 castaglia
+2003-10-31 castaglia <castaglia>
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for release of 1.2.9rc3.
+ * NEWS, modules/mod_core.c: Bug#2098 - Add SetEnv, UnsetEnv
+ directives.
-2003-10-15 07:15 jwm
+2003-10-31 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- only include xinetd support in the -xinetd RPM
+ * NEWS, modules/mod_auth_unix.c: Bug#2174 - mod_auth_unix should not
+ act authoritatively.
-2003-10-14 11:22 castaglia
+2003-10-31 castaglia <castaglia>
- * src/netaddr.c:
- Fixed pr_netaddr_get_dnsstr() to use the right family value when
- calling gethostbyname2().
+ * NEWS, modules/mod_core.c: Bug#2086 - Add <Limit> support for PORT,
+ PASV, EPRT, EPSV.
-2003-10-14 11:17 castaglia
+2003-10-31 castaglia <castaglia>
- * src/main.c:
- The free_proc_title() function is currently only used when
- --enable-devel has been configured.
+ * NEWS, contrib/mod_tls.c: Bug#2135 - Add ability to handle
+ passphrase-protected server keys.
-2003-10-14 06:41 jwm
+2003-10-31 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- we're "The ProFTPD Project"
+ * src/data.c, src/dirtree.c, src/fsio.c, src/main.c, src/netio.c:
+ Silencing some valgrind complaints. Style fixups.
-2003-10-13 00:27 castaglia
+2003-10-31 castaglia <castaglia>
- * configure:
- Updating configure.
+ * include/version.h: Woohoo! The start of a new release cycle...
-2003-10-13 00:25 castaglia
+2003-10-31 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.
+ * ChangeLog: Preparing for 1.2.9 release.
-2003-10-13 00:15 castaglia
+2003-10-31 castaglia <castaglia>
- * configure:
- Updating configure.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for the release of 1.2.9.
-2003-10-13 00:12 castaglia
+2003-10-31 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.
+ * NEWS: Mention the memory leak fixes.
-2003-10-12 22:02 castaglia
+2003-10-31 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.
+ * contrib/mod_sql.c: Always expand %U to the USER name given, not
+ just when session.user is NULL.
-2003-10-11 12:32 castaglia
+2003-10-31 castaglia <castaglia>
- * src/netaddr.c:
- Typo.
+ * 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-11 12:29 castaglia
+2003-10-30 flyhmstr <flyhmstr>
- * 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).
+ * doc/Configuration.html, doc/Configuration.sgml, doc/faq.html: ML:
+ New userguide (html & sgml) and faq built from current pdd sources
+ committed.
-2003-10-11 12:27 castaglia
+2003-10-28 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.
+ * README.FreeBSD: Adding FreeBSD package installation docs from
+ Bug#2250.
-2003-10-11 10:01 castaglia
+2003-10-22 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.
+ * src/main.c: Removing duplicate sanity check.
-2003-10-11 09:57 castaglia
+2003-10-22 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().
+ * src/fsio.c: Fixing comments. Have pr_insert_fs() set errno on
+ error, for reporting purposes.
-2003-10-10 11:11 castaglia
+2003-10-21 castaglia <castaglia>
- * src/main.c:
- Report the cause of error if configuration parsing fails.
+ * 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-10 09:07 castaglia
+2003-10-20 castaglia <castaglia>
- * modules/mod_core.c:
- If processing an Included file fails, log the reason.
+ * include/scoreboard.h: Forgot to increase the size of the IP
+ address buffer in the scoreboard if --enable-ipv6 is used.
-2003-10-09 23:36 castaglia
+2003-10-20 castaglia <castaglia>
- * src/netaddr.c:
- Adding note about a use of gethostbyname() that may need to be
- gethostbyname2() in the future.
+ * modules/mod_log.c: More paranoid checking of snprintf() usage.
-2003-10-09 22:49 castaglia
+2003-10-20 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#2222 - Overlapping vhosts should warn instead of die.
+ * 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-09 22:45 castaglia
+2003-10-20 castaglia <castaglia>
- * src/dirtree.c:
- No need to keep the server_recs of vhosts that cannot be
- resolved.
+ * 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-09 22:37 castaglia
+2003-10-19 jwm <jwm>
- * 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.
+ * NEWS, contrib/dist/rpm/proftpd.spec: Bug 2197 - The RPM .spec has
+ been updated for easy RPM builds from CVS snapshots.
-2003-10-09 18:30 castaglia
+2003-10-19 jwm <jwm>
- * src/netaddr.c:
- Make the logging of badly configured DNS name/IP address mappings
- a little less noisy.
+ * contrib/dist/rpm/proftpd.spec: rpm doesn't like empty
+ BuildPreReqs, add a static dep on pam-devel
-2003-10-09 12:44 castaglia
+2003-10-18 castaglia <castaglia>
- * configure:
- Updating configure.
+ * src/fsio.c: Fixing a memory leak in the handling of structures
+ used for tracking open directories.
-2003-10-09 12:40 castaglia
+2003-10-18 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).
+ * 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-09 12:34 castaglia
+2003-10-17 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.
+ * 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-08 11:13 castaglia
+2003-10-17 castaglia <castaglia>
- * NEWS, src/log.c:
- Bug#2202 - AllowLogSymlinks check is flawed.
+ * NEWS, modules/mod_core.c: Bug#2181: fixing this bug (again) to
+ work correctly in all cases.
-2003-10-07 22:38 castaglia
+2003-10-17 castaglia <castaglia>
- * modules/mod_core.c:
- Style cleanup (whitespace).
+ * 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-07 21:48 castaglia
+2003-10-16 castaglia <castaglia>
- * src/inet.c:
- Adding note to pr_inet_set_proto_opts() about setsockopt()
- problems on IPv6 sockets.
+ * include/version.h: Updating the version for CVS status.
-2003-10-07 20:28 castaglia
+2003-10-15 castaglia <castaglia>
- * configure:
- Updating configure.
+ * ChangeLog: Updating ChangeLog.
-2003-10-07 20:25 castaglia
+2003-10-15 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.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for release of 1.2.9rc3.
-2003-10-06 00:16 castaglia
+2003-10-15 jwm <jwm>
- * 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).
+ * contrib/dist/rpm/proftpd.spec: only include xinetd support in the
+ -xinetd RPM
-2003-10-05 20:53 castaglia
+2003-10-14 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.
+ * src/netaddr.c: Fixed pr_netaddr_get_dnsstr() to use the right
+ family value when calling gethostbyname2().
-2003-10-05 20:14 castaglia
+2003-10-14 castaglia <castaglia>
- * NEWS:
- Updating NEWS so that people can see that Bug#2183 (and all its
- friends) has been fixed.
+ * src/main.c: The free_proc_title() function is currently only used
+ when --enable-devel has been configured.
-2003-10-03 10:44 castaglia
+2003-10-14 jwm <jwm>
- * Makefile.in:
- Remove the generated 'stamp-h' file as well for the distclean
- target.
+ * contrib/dist/rpm/proftpd.spec: we're "The ProFTPD Project"
-2003-10-01 07:21 castaglia
+2003-10-13 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.
+ * configure: Updating configure.
-2003-10-01 06:16 castaglia
+2003-10-13 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-01 06:09 castaglia
+2003-10-13 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).
+ * configure: Updating configure.
-2003-09-30 23:35 castaglia
+2003-10-13 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.
+ * 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-09-30 23:25 castaglia
+2003-10-13 castaglia <castaglia>
- * src/main.c:
- Style cleanup. Add a comment about needing PRIVS (or not) when
- disconnecting sessions.
+ * 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-09-29 10:25 castaglia
+2003-10-11 castaglia <castaglia>
- * src/bindings.c:
- Fixed thinko highlighted by Bug#2188.
+ * src/netaddr.c: Typo.
-2003-09-28 21:48 castaglia
+2003-10-11 castaglia <castaglia>
- * contrib/mod_tls.html:
- Don't know what I was thinking.
+ * 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-09-28 21:41 castaglia
+2003-10-11 castaglia <castaglia>
- * contrib/mod_tls.html:
- Grammar fix, adding description.
+ * 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-09-28 17:00 castaglia
+2003-10-11 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.
+ * 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-09-28 16:56 castaglia
+2003-10-11 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.)
+ * 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-09-28 15:43 castaglia
+2003-10-10 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.
+ * src/main.c: Report the cause of error if configuration parsing
+ fails.
-2003-09-28 13:31 castaglia
+2003-10-10 castaglia <castaglia>
- * modules/: mod_auth.c, mod_auth_unix.c:
- Style cleanup.
+ * modules/mod_core.c: If processing an Included file fails, log the
+ reason.
-2003-09-28 10:04 castaglia
+2003-10-10 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.
+ * src/netaddr.c: Adding note about a use of gethostbyname() that may
+ need to be gethostbyname2() in the future.
- Also includes some style cleanup.
+2003-10-10 castaglia <castaglia>
-2003-09-27 15:16 castaglia
+ * NEWS, modules/mod_core.c: Bug#2222 - Overlapping vhosts should
+ warn instead of die.
- * configure:
- Updating configure.
+2003-10-10 castaglia <castaglia>
-2003-09-27 15:13 castaglia
+ * src/dirtree.c: No need to keep the server_recs of vhosts that
+ cannot be resolved.
- * 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-10-10 castaglia <castaglia>
-2003-09-27 13:48 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.
- * 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-10-10 castaglia <castaglia>
-2003-09-27 11:40 castaglia
+ * src/netaddr.c: Make the logging of badly configured DNS name/IP
+ address mappings a little less noisy.
- * 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-10-09 castaglia <castaglia>
-2003-09-26 12:02 jwm
+ * configure: Updating configure.
- * contrib/dist/rpm/proftpd.spec: Bug 2197 - Spec file enhancements
- and fixes Submitted by: pb at bieringer.de (Dr. Peter Bieringer)
+2003-10-09 castaglia <castaglia>
-2003-09-25 23:53 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).
- * modules/mod_core.c:
- Correcting a misleading/outdated comment.
+2003-10-09 castaglia <castaglia>
-2003-09-23 12:10 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.
- * 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-10-08 castaglia <castaglia>
-2003-09-23 08:19 castaglia
+ * NEWS, src/log.c: Bug#2202 - AllowLogSymlinks check is flawed.
- * NEWS:
- Mention fixing of ASCII handling exploit.
+2003-10-08 castaglia <castaglia>
-2003-09-23 08:13 castaglia
+ * modules/mod_core.c: Style cleanup (whitespace).
- * src/data.c:
- Fixing remote exploit in ASCII handling, discovered by X-Force at
- ISS:
+2003-10-08 castaglia <castaglia>
- http://xforce.iss.net/xforce/alerts/id/154
+ * src/inet.c: Adding note to pr_inet_set_proto_opts() about
+ setsockopt() problems on IPv6 sockets.
-2003-09-23 07:45 jwm
+2003-10-08 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec: * Tue Sep 23 2003 Daniel Roesen
- <dr at proftpd.org> - Added "--with ipv6" to enable IPv6 support
- while building the RPM
+ * configure: Updating configure.
-2003-09-22 16:36 castaglia
+2003-10-08 castaglia <castaglia>
- * README.IPv6:
- Daniel has confirmed that IPv6 and FTP over SSL/TLS works just
- fine, for both active and passive transfers.
+ * 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-09-19 13:21 castaglia
+2003-10-06 castaglia <castaglia>
- * NEWS, include/privs.h:
- Bug#2179 - ROOT_UID instead of ROOT_GID used in setegid() call.
- This affects Cygwin installations.
+ * 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-09-18 12:21 castaglia
+2003-10-06 castaglia <castaglia>
- * src/netaddr.c:
- Using EPERM makes more sense, I think, than EACCES in most of the
- pr_netaddr* cases.
+ * 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-09-18 12:08 castaglia
+2003-10-06 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.
+ * NEWS: Updating NEWS so that people can see that Bug#2183 (and all
+ its friends) has been fixed.
-2003-09-14 13:49 castaglia
+2003-10-03 castaglia <castaglia>
- * contrib/mod_wrap.html:
- Typo.
+ * Makefile.in: Remove the generated 'stamp-h' file as well for the
+ distclean target.
-2003-09-14 11:27 castaglia
+2003-10-01 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.
+ * 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-09-13 16:34 castaglia
+2003-10-01 castaglia <castaglia>
- * configure:
- Updating configure.
+ * configure: Updating configure.
-2003-09-13 16:29 castaglia
+2003-10-01 castaglia <castaglia>
- * NEWS, README.IPv6, config.h.in, configure.in, src/netaddr.c:
- Bug#2167 - getnameinfo() on FreeBSD doesn't support IP address
- lookups.
+ * 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).
- 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.
+2003-10-01 castaglia <castaglia>
- 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.
+ * 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-09-12 00:56 castaglia
+2003-10-01 castaglia <castaglia>
- * README:
- Just some pointers/notes about user questions.
+ * src/main.c: Style cleanup. Add a comment about needing PRIVS (or
+ not) when disconnecting sessions.
-2003-09-11 20:01 castaglia
+2003-09-29 castaglia <castaglia>
- * README.IPv6:
- Seems that perhaps FreeBSD's getnameinfo(3) doesn't like IP
- addresses, but it does handle DNS names correctly. Interesting.
+ * src/bindings.c: Fixed thinko highlighted by Bug#2188.
-2003-09-11 13:11 castaglia
+2003-09-29 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-11 12:58 castaglia
+2003-09-28 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.:
+ * 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.)
- ./configure --enable-devel=nodaemon:nofork:profile ...
+2003-09-28 castaglia <castaglia>
-2003-09-11 12:56 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.
- * include/version.h:
- Updating version for CVS snapshots.
+2003-09-28 castaglia <castaglia>
-2003-09-11 06:39 castaglia
+ * modules/mod_auth.c, modules/mod_auth_unix.c: Style cleanup.
- * ChangeLog:
- Updating ChangeLog.
+2003-09-28 castaglia <castaglia>
-2003-09-11 06:33 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.
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Let's get this rc2 show on the road.
+2003-09-27 castaglia <castaglia>
-2003-09-10 23:36 castaglia
+ * configure: Updating configure.
- * include/conf.h:
- Add note about possibly using sockaddr_storage in the future.
+2003-09-27 castaglia <castaglia>
-2003-09-10 07:02 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.
- * src/main.c:
- Fixing PR_DEVEL_NO_DAEMON.
+2003-09-27 castaglia <castaglia>
-2003-09-09 14:15 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.
- * src/log.c:
- Log the client's IP address in the brackets, not the DNS name.
+2003-09-27 castaglia <castaglia>
-2003-09-09 14:14 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.
- * src/netaddr.c:
- When doing reverse DNS lookups, actually use the looked up name.
- Oops.
+2003-09-26 jwm <jwm>
-2003-09-09 07:58 castaglia
+ * contrib/dist/rpm/proftpd.spec: Bug 2197 - Spec file enhancements
+ and fixes Submitted by: pb at bieringer.de (Dr. Peter Bieringer)
- * utils/ftpshut.c:
- Fix grammar in comment.
+2003-09-26 castaglia <castaglia>
-2003-09-09 07:57 castaglia
+ * modules/mod_core.c: Correcting a misleading/outdated comment.
- * NEWS:
- ftpshut's option -R (for remove), not -D (for delete).
+2003-09-23 castaglia <castaglia>
-2003-09-09 07:16 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.
- * NEWS, src/netio.c:
- Bug#2122 - EAGAIN on Solaris can cause an infinite loop.
+2003-09-23 castaglia <castaglia>
-2003-09-08 22:37 castaglia
+ * NEWS: Mention fixing of ASCII handling exploit.
- * include/netaddr.h, modules/mod_core.c, src/inet.c, src/netaddr.c:
+2003-09-23 castaglia <castaglia>
- Rename pr_netaddr_initialize() to be pr_netaddr_clear(), as that
- is what is really happening.
+ * 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-08 19:49 castaglia
+2003-09-23 jwm <jwm>
- * src/inet.c:
- Remove duplicate comment.
+ * contrib/dist/rpm/proftpd.spec: * Tue Sep 23 2003 Daniel Roesen <dr at proftpd.org> - Added "--with ipv6" to enable IPv6 support while building the RPM
-2003-09-08 18:07 castaglia
+2003-09-22 castaglia <castaglia>
- * src/inet.c:
- Use the netaddr allocator where appropriate.
+ * README.IPv6: Daniel has confirmed that IPv6 and FTP over SSL/TLS
+ works just fine, for both active and passive transfers.
-2003-09-08 18:04 castaglia
+2003-09-19 castaglia <castaglia>
- * src/dirtree.c:
- Remove cruft. The multiple addresses for a server are handled
- elsewhere.
+ * NEWS, include/privs.h: Bug#2179 - ROOT_UID instead of ROOT_GID
+ used in setegid() call. This affects Cygwin installations.
-2003-09-08 17:55 castaglia
+2003-09-18 castaglia <castaglia>
- * include/netaddr.h, src/netaddr.c:
- Provide a netaddr allocator.
+ * src/netaddr.c: Using EPERM makes more sense, I think, than EACCES
+ in most of the pr_netaddr* cases.
-2003-09-08 17:32 castaglia
+2003-09-18 castaglia <castaglia>
- * include/netaddr.h, modules/mod_core.c, src/inet.c, src/netaddr.c:
+ * 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.
- 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).
+2003-09-14 castaglia <castaglia>
- Also fixed some tabs that crept into inet.c.
+ * 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-07 19:58 castaglia
+2003-09-13 castaglia <castaglia>
- * configure:
- Updating configure.
+ * configure: Updating configure.
-2003-09-07 19:55 castaglia
+2003-09-13 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.
+ * 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-07 19:48 castaglia
+2003-09-12 castaglia <castaglia>
- * configure.in:
- Clean up configure.in a little, and just use LIB_OBJS (rather
- than both pr_lib_objs and LIB_OBJS).
+ * README: Just some pointers/notes about user questions.
-2003-09-07 19:39 castaglia
+2003-09-12 castaglia <castaglia>
- * configure:
- Updating configure.
+ * README.IPv6: Seems that perhaps FreeBSD's getnameinfo(3) doesn't
+ like IP addresses, but it does handle DNS names correctly.
+ Interesting.
-2003-09-07 19:35 castaglia
+2003-09-11 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#2161 - Duplicate autoconf check for sia.h.
+ * configure: Updating configure.
-2003-09-07 17:56 castaglia
+2003-09-11 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.
+ * 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-07 17:53 castaglia
+2003-09-11 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.
+ * include/version.h: Updating version for CVS snapshots.
-2003-09-07 17:51 castaglia
+2003-09-11 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().
+ * ChangeLog: Updating ChangeLog.
-2003-09-07 17:42 castaglia
+2003-09-11 castaglia <castaglia>
- * src/main.c:
- Removing cruft, updating calls to subsystem initializers.
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Let's get
+ this rc2 show on the road.
-2003-09-07 17:41 castaglia
+2003-09-11 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).
+ * include/conf.h: Add note about possibly using sockaddr_storage in
+ the future.
-2003-09-07 17:39 castaglia
+2003-09-10 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.
+ * src/main.c: Fixing PR_DEVEL_NO_DAEMON.
-2003-09-07 17:37 castaglia
+2003-09-09 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.
+ * src/log.c: Log the client's IP address in the brackets, not the
+ DNS name.
-2003-09-07 17:36 castaglia
+2003-09-09 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).
+ * src/netaddr.c: When doing reverse DNS lookups, actually use the
+ looked up name. Oops.
-2003-09-07 17:33 castaglia
+2003-09-09 castaglia <castaglia>
- * modules/: mod_auth_file.c, mod_core.c, mod_log.c:
- Changed uses of permanent_pool to session.pool, as is more
- appropriate in most module code.
+ * utils/ftpshut.c: Fix grammar in comment.
-2003-09-07 17:32 castaglia
+2003-09-09 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.
+ * NEWS: ftpshut's option -R (for remove), not -D (for delete).
-2003-09-07 17:31 castaglia
+2003-09-09 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).
+ * NEWS, src/netio.c: Bug#2122 - EAGAIN on Solaris can cause an
+ infinite loop.
-2003-09-07 17:29 castaglia
+2003-09-09 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().
+ * 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-07 17:26 castaglia
+2003-09-09 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).
+ * src/inet.c: Remove duplicate comment.
-2003-09-07 17:25 castaglia
+2003-09-09 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.
+ * src/inet.c: Use the netaddr allocator where appropriate.
-2003-09-07 16:55 castaglia
+2003-09-09 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.
+ * src/dirtree.c: Remove cruft. The multiple addresses for a server
+ are handled elsewhere.
-2003-09-07 16:54 castaglia
+2003-09-09 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#2154 - SQL query loses shell information.
+ * include/netaddr.h, src/netaddr.c: Provide a netaddr allocator.
-2003-09-06 10:44 castaglia
+2003-09-09 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.
+ * 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-06 09:56 castaglia
+2003-09-08 castaglia <castaglia>
- * src/data.c:
- Fixing subtle off-by-one bug (thank you valgrind!).
+ * configure: Updating configure.
-2003-09-05 13:00 castaglia
+2003-09-08 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).
+ * 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-05 12:42 castaglia
+2003-09-08 castaglia <castaglia>
- * include/conf.h:
- Add conditional include for <dmalloc.h>, for use when using
- dmalloc to track memory usage.
+ * configure.in: Clean up configure.in a little, and just use
+ LIB_OBJS (rather than both pr_lib_objs and LIB_OBJS).
-2003-09-05 11:38 castaglia
+2003-09-08 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#2153 - Small error in handling PR_AUTH_RFC2228 authentication
- code.
+ * configure: Updating configure.
-2003-09-03 13:18 castaglia
+2003-09-08 castaglia <castaglia>
- * configure:
- Updating configure.
+ * NEWS, configure.in: Bug#2161 - Duplicate autoconf check for sia.h.
-2003-09-03 13:14 castaglia
+2003-09-08 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#2007 - autoconf header detection problem.
+ * 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-08-30 09:11 castaglia
+2003-09-08 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-08-30 09:07 castaglia
+2003-09-08 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.
+ * 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-08-29 10:20 castaglia
+2003-09-08 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.
+ * src/main.c: Removing cruft, updating calls to subsystem
+ initializers.
-2003-08-29 10:01 castaglia
+2003-09-08 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.
+ * 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-08-28 23:33 castaglia
+2003-09-08 castaglia <castaglia>
- * src/netaddr.c:
- Using uninitialized memory can be bad.
+ * 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-08-28 22:44 castaglia
+2003-09-08 castaglia <castaglia>
- * src/inet.c:
- Only one type of IPv4 service at time: either IPTOS_LOWDELAY or
- IPTOS_THROUGHPUT but not both.
+ * 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.
- Some discussion on IPng mailing list archives mention that using
- IP_TOS may be a problem on IPv6 connections...
+2003-09-08 castaglia <castaglia>
-2003-08-27 20:17 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).
- * README.ports:
- Adding FreeBSD 4.9-PRERELEASE to the list. Apparently the source
- works out-of-the-box.
+2003-09-08 castaglia <castaglia>
-2003-08-27 17:43 jwm
+ * 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.
- * 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-09-08 castaglia <castaglia>
-2003-08-27 17:40 jwm
+ * modules/mod_auth.c: Changed some uses of permanent_pool here to be
+ session.pool, as is more appropriate in most module code.
- * modules/mod_ls.c:
- Bug 2108 - IgnoreHidden should not hide dotfiles
+2003-09-08 castaglia <castaglia>
-2003-08-27 17:37 jwm
+ * 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).
- * 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-09-08 castaglia <castaglia>
-2003-08-27 17:36 jwm
+ * 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().
- * contrib/dist/rpm/proftpd.spec:
- Bug 2127 - Entry in the file section
+2003-09-08 castaglia <castaglia>
-2003-08-27 17:33 jwm
+ * 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).
- * contrib/dist/rpm/xinetd:
- add xinetd configuration to go with new .spec
+2003-09-08 castaglia <castaglia>
-2003-08-27 17:32 jwm
+ * contrib/mod_ratio.c: Removing some cruft from the source code,
+ which involves removing mod_ratio's use of one of the crufty
+ functions.
- * contrib/dist/rpm/proftpd.spec:
- - don't reset servertype on upgrade - don't explicitly install
- docs - %doc should include them
+2003-09-07 castaglia <castaglia>
- submitted by: Ivan F. Martinez <ivanfm at os2brasil.com.br> Peter
- Bieringer <pb at bieringer.de>
+ * 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-08-22 10:29 castaglia
+2003-09-07 castaglia <castaglia>
- * README.ports:
- Adding NetBSD 1.6.1 to the list.
+ * NEWS, contrib/mod_sql.c: Bug#2154 - SQL query loses shell
+ information.
-2003-08-19 18:57 castaglia
+2003-09-06 castaglia <castaglia>
- * README.IPv6:
- Add note about FreeBSD 4.8 and getnameinfo(3).
+ * 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-08-18 13:13 castaglia
+2003-09-06 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#2141 - Glob Allow/Deny parameters cause extraneous log
- messages when comparing addresses.
+ * src/data.c: Fixing subtle off-by-one bug (thank you valgrind!).
-2003-08-16 10:01 castaglia
+2003-09-05 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#2148 - Enforce PR_TUNABLE_LOGIN_MAX.
+ * 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-08-16 08:47 castaglia
+2003-09-05 castaglia <castaglia>
- * sample-configurations/mod_sql.conf:
- Add comment in mod_sql sample config about SQLAuthTypes being
- required.
+ * include/conf.h: Add conditional include for <dmalloc.h>, for use
+ when using dmalloc to track memory usage.
-2003-08-16 08:43 castaglia
+2003-09-05 castaglia <castaglia>
- * contrib/mod_sql.c:
- Add log messages to session init if no SQLAuthTypes configured.
+ * NEWS, modules/mod_auth.c: Bug#2153 - Small error in handling
+ PR_AUTH_RFC2228 authentication code.
-2003-08-16 08:38 castaglia
+2003-09-03 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.
+ * configure: Updating configure.
-2003-08-14 18:33 castaglia
+2003-09-03 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.
+ * NEWS, configure.in: Bug#2007 - autoconf header detection problem.
-2003-08-14 11:34 castaglia
+2003-08-30 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.
+ * configure: Updating configure.
-2003-08-13 18:02 castaglia
+2003-08-30 castaglia <castaglia>
- * NEWS, src/data.c:
- Bug#2147 - Segmentation fault processing file in ASCII mode.
+ * 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-13 12:11 castaglia
+2003-08-29 castaglia <castaglia>
- * src/netaddr.c:
- Silence some compiler warnings.
+ * 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-13 11:54 castaglia
+2003-08-29 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * 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-13 11:50 castaglia
+2003-08-29 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#2144 - Rework autoconf handling of --enable-sia option.
+ * src/netaddr.c: Using uninitialized memory can be bad.
-2003-08-13 09:04 castaglia
+2003-08-29 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * 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-12 23:26 castaglia
+2003-08-28 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.
+ * README.ports: Adding FreeBSD 4.9-PRERELEASE to the list.
+ Apparently the source works out-of-the-box.
-2003-08-12 23:21 castaglia
+2003-08-28 jwm <jwm>
- * configure:
- Updating configure script.
+ * 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-12 23:07 castaglia
+2003-08-28 jwm <jwm>
- * NEWS, configure.in, include/libsupp.h, include/support.h,
- lib/sstrncpy.c, src/support.c:
- Bug#2142 - sstrncpy() not available to lib/vsnprintf.c.
+ * modules/mod_ls.c: Bug 2108 - IgnoreHidden should not hide dotfiles
-2003-08-12 22:28 castaglia
+2003-08-28 jwm <jwm>
- * src/inet.c:
- It seems the 'sa_family' symbol is a macro on IRIX.
+ * 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-12 10:07 castaglia
+2003-08-28 jwm <jwm>
- * include/: conf.h, 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.
+ * contrib/dist/rpm/proftpd.spec: Bug 2127 - Entry in the file
+ section
-2003-08-11 22:59 castaglia
+2003-08-28 jwm <jwm>
- * 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.
+ * contrib/dist/rpm/xinetd: add xinetd configuration to go with new
+ .spec
-2003-08-10 23:31 castaglia
+2003-08-28 jwm <jwm>
- * contrib/mod_sql.c:
- Removing use of get_param_int() from mod_sql.
+ * 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 at os2brasil.com.br> Peter
+ Bieringer <pb at bieringer.de>
-2003-08-10 23:07 castaglia
+2003-08-22 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#2137 - NLST and IgnoreHidden causes segfault.
+ * README.ports: Adding NetBSD 1.6.1 to the list.
-2003-08-10 21:41 castaglia
+2003-08-20 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.
+ * README.IPv6: Add note about FreeBSD 4.8 and getnameinfo(3).
-2003-08-10 21:37 castaglia
+2003-08-18 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.
+ * NEWS, src/dirtree.c: Bug#2141 - Glob Allow/Deny parameters cause
+ extraneous log messages when comparing addresses.
-2003-08-09 09:37 castaglia
+2003-08-16 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.
+ * NEWS, modules/mod_auth.c: Bug#2148 - Enforce PR_TUNABLE_LOGIN_MAX.
-2003-08-09 09:08 castaglia
+2003-08-16 castaglia <castaglia>
- * src/inet.c:
- Fixed function signature to match declared prototype. Fixed
- variable name.
+ * sample-configurations/mod_sql.conf: Add comment in mod_sql sample
+ config about SQLAuthTypes being required.
-2003-08-09 01:09 castaglia
+2003-08-16 castaglia <castaglia>
- * contrib/mod_ifsession.c, include/dirtree.h, modules/mod_auth.c,
- src/dirtree.c:
- Spelling correction.
+ * contrib/mod_sql.c: Add log messages to session init if no
+ SQLAuthTypes configured.
-2003-08-09 00:50 castaglia
+2003-08-16 castaglia <castaglia>
- * src/bindings.c:
- Removed debugging cruft.
+ * 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-09 00:22 castaglia
+2003-08-15 castaglia <castaglia>
- * include/proftpd.h, src/netaddr.c:
- Comment clarification, style fixups, fixing compiler warnings.
+ * 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-08 15:15 castaglia
+2003-08-14 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.
+ * 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-08 08:10 castaglia
+2003-08-14 castaglia <castaglia>
- * NEWS:
- Fixed wrong bug report number.
+ * NEWS, src/data.c: Bug#2147 - Segmentation fault processing file in
+ ASCII mode.
-2003-08-07 19:50 castaglia
+2003-08-13 castaglia <castaglia>
- * include/netaddr.h:
- Complete the description of pr_netaddr_fnmatch().
+ * src/netaddr.c: Silence some compiler warnings.
-2003-08-07 13:16 castaglia
+2003-08-13 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.
+ * configure: Updating configure script.
-2003-08-07 11:24 castaglia
+2003-08-13 castaglia <castaglia>
- * src/netaddr.c:
- Added implementation of pr_netaddr_fnmatch().
+ * NEWS, configure.in: Bug#2144 - Rework autoconf handling of
+ --enable-sia option.
-2003-08-07 11:05 castaglia
+2003-08-13 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).
+ * configure: Updating configure script.
-2003-08-07 08:49 castaglia
+2003-08-13 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.
+ * config.h.in, configure.in: Check for gai_strerror(3). We'll also
+ need to provide an implementation if gai_strerror() is not present.
- Added a stub for pr_netaddr_fnmatch(), to be implemented soon.
+2003-08-13 castaglia <castaglia>
-2003-08-07 00:09 castaglia
+ * configure: Updating configure script.
- * 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.
+2003-08-13 castaglia <castaglia>
- Added stub for pr_netaddr_ncmp(), to be implemented shortly.
+ * 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-06 18:59 castaglia
+2003-08-13 castaglia <castaglia>
- * README.IPv6:
- Clarifying that IPv6 sockets handling IPv4 packets only occurs
- when it is an wildcard IPv6 socket.
+ * src/inet.c: It seems the 'sa_family' symbol is a macro on IRIX.
-2003-08-06 17:55 castaglia
+2003-08-12 castaglia <castaglia>
- * NEWS:
- Mention the --enable-ipv6 configure option.
+ * 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-06 17:42 castaglia
+2003-08-12 castaglia <castaglia>
- * include/netaddr.h:
- Adding descriptions of the netaddr API functions.
+ * 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-06 16:05 castaglia
+2003-08-11 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.
+ * contrib/mod_sql.c: Removing use of get_param_int() from mod_sql.
-2003-08-06 15:31 castaglia
+2003-08-11 castaglia <castaglia>
- * src/netaddr.c:
- Typos.
+ * NEWS, modules/mod_ls.c: Bug#2137 - NLST and IgnoreHidden causes
+ segfault.
-2003-08-06 15:08 castaglia
+2003-08-11 castaglia <castaglia>
- * configure:
- Updating configure.
+ * 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-06 15:03 castaglia
+2003-08-11 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.
+ * 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-06 00:07 castaglia
+2003-08-09 castaglia <castaglia>
- * modules/mod_auth_file.c:
- Fix code in case where fgetgrent(3) is not present on the system.
+ * 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-01 17:30 castaglia
+2003-08-09 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.
+ * src/inet.c: Fixed function signature to match declared prototype.
+ Fixed variable name.
-2003-07-31 18:05 castaglia
+2003-08-09 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:
+ * contrib/mod_ifsession.c, include/dirtree.h, modules/mod_auth.c,
+ src/dirtree.c: Spelling correction.
- Style.
+2003-08-09 castaglia <castaglia>
-2003-07-31 18:03 castaglia
+ * src/bindings.c: Removed debugging cruft.
- * 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-08-09 castaglia <castaglia>
-2003-07-30 11:01 castaglia
+ * include/proftpd.h, src/netaddr.c: Comment clarification, style
+ fixups, fixing compiler warnings.
- * 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-08-08 castaglia <castaglia>
-2003-07-29 18:52 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.
- * contrib/mod_tls.c:
- Removing unused code.
+2003-08-08 castaglia <castaglia>
-2003-07-29 18:34 castaglia
+ * NEWS: Fixed wrong bug report number.
- * NEWS, contrib/mod_tls.c:
- Close files that have been fopen()'d always, not just when
- conditions mean that no errors are encountered.
+2003-08-08 castaglia <castaglia>
-2003-07-29 10:46 castaglia
+ * include/netaddr.h: Complete the description of
+ pr_netaddr_fnmatch().
- * contrib/mod_tls.html:
- Adding description of the $SSL_CERT_DIR TLSLog message
+2003-08-07 castaglia <castaglia>
-2003-07-29 08:15 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.
- * NEWS, modules/mod_core.c:
- Bug#2119 - FEAT response format does not conform to RFC2389.
+2003-08-07 castaglia <castaglia>
-2003-07-29 07:36 castaglia
+ * src/netaddr.c: Added implementation of pr_netaddr_fnmatch().
- * doc/rfc/: rfc2228.txt, rfc2389.txt, rfc2428.txt:
- Style.
+2003-08-07 castaglia <castaglia>
-2003-07-28 15:57 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).
- * NEWS:
- Mention fix of mod_tls directives.
+2003-08-07 castaglia <castaglia>
-2003-07-28 15:50 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.
- * 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-08-07 castaglia <castaglia>
-2003-07-24 22:36 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.
- * sample-configurations/: anonymous.conf, complex-virtual.conf,
- mod_sql.conf, virtual.conf:
- Style.
+2003-08-07 castaglia <castaglia>
-2003-07-24 18:21 jwm
+ * README.IPv6: Clarifying that IPv6 sockets handling IPv4 packets
+ only occurs when it is an wildcard IPv6 socket.
- * include/pr-syslog.h: silence warning
+2003-08-07 castaglia <castaglia>
-2003-07-24 08:22 castaglia
+ * NEWS: Mention the --enable-ipv6 configure option.
- * NEWS, Makefile.in:
- Bug#2115 - ftptop depends on snprintf but doesn't link in
- lib/libsupp.a
+2003-08-07 castaglia <castaglia>
-2003-07-23 19:44 castaglia
+ * include/netaddr.h: Adding descriptions of the netaddr API
+ functions.
- * 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-08-06 castaglia <castaglia>
-2003-07-21 15:03 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.
- * NEWS, README.mod_sql, contrib/mod_sql.c:
- Bug#2113 - mod_sql default uses mysql keyword.
+2003-08-06 castaglia <castaglia>
-2003-07-18 12:18 castaglia
+ * src/netaddr.c: Typos.
- * 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-08-06 castaglia <castaglia>
-2003-07-16 11:48 castaglia
+ * configure: Updating configure.
- * 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-08-06 castaglia <castaglia>
-2003-07-15 23:16 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.
- * contrib/mod_sql_mysql.c:
- Spacing nit.
+2003-08-06 castaglia <castaglia>
-2003-07-14 19:57 castaglia
+ * modules/mod_auth_file.c: Fix code in case where fgetgrent(3) is
+ not present on the system.
- * modules/mod_xfer.c:
- Cruft.
+2003-08-02 castaglia <castaglia>
-2003-07-10 18:51 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.
- * NEWS, modules/mod_auth.c:
- Bug#2103 - AuthAliasOnly in server context causes hang.
+2003-08-01 castaglia <castaglia>
-2003-07-10 09:09 jwm
+ * 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.
- * contrib/mod_ldap.c:
- release 2.8.12
+2003-08-01 castaglia <castaglia>
-2003-07-07 15:59 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.
- * contrib/mod_sql_mysql.c:
- Typo.
+2003-07-30 castaglia <castaglia>
-2003-07-07 13:42 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.
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Updating module names in comments.
+2003-07-30 castaglia <castaglia>
-2003-07-07 13:15 castaglia
+ * contrib/mod_tls.c: Removing unused code.
- * NEWS:
- Correcting handling of mod_tls TLSCertificateChainFile directive.
+2003-07-30 castaglia <castaglia>
-2003-07-07 13:13 castaglia
+ * NEWS, contrib/mod_tls.c: Close files that have been fopen()'d
+ always, not just when conditions mean that no errors are
+ encountered.
- * 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-29 castaglia <castaglia>
-2003-07-07 11:27 castaglia
+ * NEWS, modules/mod_core.c: Bug#2119 - FEAT response format does not
+ conform to RFC2389.
- * NEWS, modules/mod_core.c:
- Bug#2100 - Invalid domain in <VirtualHost> tag causes
- segmentation fault.
+2003-07-29 castaglia <castaglia>
-2003-07-03 14:48 castaglia
+ * doc/rfc/rfc2228.txt, doc/rfc/rfc2389.txt, doc/rfc/rfc2428.txt:
+ Style.
- * sample-configurations/: anonymous.conf, complex-virtual.conf:
- Don't forget the X-variants of FTP commands in <Limit> examples.
+2003-07-28 castaglia <castaglia>
-2003-06-28 10:14 castaglia
+ * NEWS: Mention fix of mod_tls directives.
- * contrib/: mod_sql_mysql.c, mod_sql_postgres.c:
- Add comments about provide proper escapestring implementations.
- Failure to do so allows SQL injection.
+2003-07-28 castaglia <castaglia>
-2003-06-27 00:13 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.
- * modules/mod_core.c:
- Be a little more verbose about the exact error cause of
- log_opensyslog() fails.
+2003-07-25 castaglia <castaglia>
-2003-06-27 00:10 castaglia
+ * sample-configurations/anonymous.conf,
+ sample-configurations/complex-virtual.conf,
+ sample-configurations/mod_sql.conf,
+ sample-configurations/virtual.conf: Style.
- * lib/pr-syslog.c:
- Fix some inadvertently inverted #ifdefs.
+2003-07-25 jwm <jwm>
-2003-06-23 18:47 castaglia
+ * include/pr-syslog.h: silence warning
- * NEWS, contrib/mod_rewrite.c, include/conf.h:
- Bug#2090 - mod_rewrite doesn't compile on Solaris 8.
+2003-07-24 castaglia <castaglia>
-2003-06-23 12:58 castaglia
+ * Makefile.in, NEWS: Bug#2115 - ftptop depends on snprintf but
+ doesn't link in lib/libsupp.a
- * contrib/mod_radius.c:
- Use USHRT_MAX rather than 65535 (and fix a typo).
+2003-07-24 castaglia <castaglia>
-2003-06-17 13:54 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.
- * contrib/mod_sql_postgres.c:
- Removing POSTGRES_NO_ESCAPESTRING #define from mod_sql_postgres.
- See Bug#2087.
+2003-07-21 castaglia <castaglia>
-2003-06-16 18:25 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#2113 - mod_sql default uses mysql
+ keyword.
- * configure:
- Updating configure.
+2003-07-18 castaglia <castaglia>
-2003-06-16 18:23 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.
- * 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-07-16 castaglia <castaglia>
-2003-06-16 13:22 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.
- * 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-07-16 castaglia <castaglia>
-2003-06-12 16:41 castaglia
+ * contrib/mod_sql_mysql.c: Spacing nit.
- * contrib/mod_tls.html:
- Minor corrections.
+2003-07-15 castaglia <castaglia>
-2003-06-12 12:30 castaglia
+ * modules/mod_xfer.c: Cruft.
- * contrib/mod_tls.c:
- Better handling of too long certificate verification chains.
+2003-07-11 castaglia <castaglia>
-2003-06-11 19:08 castaglia
+ * NEWS, modules/mod_auth.c: Bug#2103 - AuthAliasOnly in server
+ context causes hang.
- * src/: inet.c, modules.c:
- Missing $Id: ChangeLog,v 1.154 2014-05-15 16:20:23 castaglia Exp $ keyword.
+2003-07-10 jwm <jwm>
-2003-06-11 15:45 castaglia
+ * contrib/mod_ldap.c: release 2.8.12
- * src/ident.c:
- Match debug levels with what's in main.c for ident lookups.
+2003-07-07 castaglia <castaglia>
-2003-06-11 15:44 castaglia
+ * contrib/mod_sql_mysql.c: Typo.
- * src/: ident.c, main.c:
- Add some debugging routines to the ident lookups.
+2003-07-07 castaglia <castaglia>
-2003-06-11 13:46 castaglia
+ * contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Updating
+ module names in comments.
- * config.h.in:
- Missing entry for <netinet/ip.h> header file, checked by
- configure.
+2003-07-07 castaglia <castaglia>
-2003-06-09 17:38 castaglia
+ * NEWS: Correcting handling of mod_tls TLSCertificateChainFile
+ directive.
- * contrib/mod_tls.c:
- Need to be consistent about names of variables used.
+2003-07-07 castaglia <castaglia>
-2003-06-09 17:33 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.
- * contrib/mod_tls.c:
- Better handling of possible errors when loading certs from a
- CertificateChainFile.
+2003-07-07 castaglia <castaglia>
-2003-06-09 17:20 castaglia
+ * NEWS, modules/mod_core.c: Bug#2100 - Invalid domain in
+ <VirtualHost> tag causes segmentation fault.
- * contrib/mod_tls.c:
- Fixed typo that prevent TLSCertificateChainFile from working
- properly.
+2003-07-03 castaglia <castaglia>
-2003-06-09 10:25 castaglia
+ * sample-configurations/anonymous.conf,
+ sample-configurations/complex-virtual.conf: Don't forget the
+ X-variants of FTP commands in <Limit> examples.
- * NEWS, modules/mod_auth_file.c:
- Bug#2083 - "550 Access denied" on group permission with
- AuthGroupFile.
+2003-06-28 castaglia <castaglia>
-2003-06-05 17:07 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.
- * src/main.c:
- Add debug output (level 6) for use/nonuse of RFC1413 lookups.
+2003-06-27 castaglia <castaglia>
-2003-06-05 12:34 castaglia
+ * modules/mod_core.c: Be a little more verbose about the exact error
+ cause of log_opensyslog() fails.
- * modules/: mod_auth.c, mod_core.c:
- Match variable data types.
+2003-06-27 castaglia <castaglia>
-2003-06-05 12:28 castaglia
+ * lib/pr-syslog.c: Fix some inadvertently inverted #ifdefs.
- * 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-24 castaglia <castaglia>
-2003-06-04 16:32 castaglia
+ * NEWS, contrib/mod_rewrite.c, include/conf.h: Bug#2090 -
+ mod_rewrite doesn't compile on Solaris 8.
- * 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-23 castaglia <castaglia>
-2003-06-04 10:03 castaglia
+ * contrib/mod_radius.c: Use USHRT_MAX rather than 65535 (and fix a
+ typo).
- * configure:
- Updating configure.
+2003-06-17 castaglia <castaglia>
-2003-06-04 09:59 castaglia
+ * contrib/mod_sql_postgres.c: Removing POSTGRES_NO_ESCAPESTRING
+ #define from mod_sql_postgres. See Bug#2087.
- * configure.in, config.h.in:
- Add autoconf checks for mlock(2), mlockall(2), munlock(2), and
- munlockall(2).
+2003-06-17 castaglia <castaglia>
-2003-06-04 07:53 castaglia
+ * configure: Updating configure.
- * src/inet.c:
- Typo in inet_setnonblock() (Bug#2077).
+2003-06-17 castaglia <castaglia>
-2003-06-03 21:37 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.
- * README.mod_sql:
- Updating example SQL hooks code for current API.
+2003-06-16 castaglia <castaglia>
-2003-06-03 19:19 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.
- * contrib/mod_tls.html:
- Updating mod_tls installation instructions.
+2003-06-12 castaglia <castaglia>
-2003-06-03 13:42 castaglia
+ * contrib/mod_tls.c: Better handling of too long certificate
+ verification chains.
- * 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-12 castaglia <castaglia>
-2003-06-03 09:25 castaglia
+ * src/inet.c, src/modules.c: Missing $Id$ keyword.
- * 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-11 castaglia <castaglia>
-2003-06-03 09:17 castaglia
+ * src/ident.c: Match debug levels with what's in main.c for ident
+ lookups.
- * 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-11 castaglia <castaglia>
-2003-06-03 09:11 castaglia
+ * src/ident.c, src/main.c: Add some debugging routines to the ident
+ lookups.
- * configure:
- Updating configure.
+2003-06-11 castaglia <castaglia>
-2003-06-03 09:04 castaglia
+ * config.h.in: Missing entry for <netinet/ip.h> header file, checked
+ by configure.
- * NEWS, config.h.in, configure.in:
- Bug#2076 - The --enable-transfer-buffer-size configure option
- doesn't work properly.
+2003-06-10 castaglia <castaglia>
-2003-06-02 15:16 castaglia
+ * contrib/mod_tls.c: Need to be consistent about names of variables
+ used.
- * NEWS, src/fsio.c:
- Bug#2075 - ls / fails under Cygwin.
+2003-06-10 castaglia <castaglia>
-2003-06-02 09:23 castaglia
+ * contrib/mod_tls.c: Better handling of possible errors when loading
+ certs from a CertificateChainFile.
- * 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-06-10 castaglia <castaglia>
-2003-05-31 09:31 castaglia
+ * contrib/mod_tls.c: Fixed typo that prevent TLSCertificateChainFile
+ from working properly.
- * README.mod_sql:
- Increasing suggested passwd column length.
+2003-06-09 castaglia <castaglia>
-2003-05-30 17:51 castaglia
+ * NEWS, modules/mod_auth_file.c: Bug#2083 - "550 Access denied" on
+ group permission with AuthGroupFile.
- * contrib/mod_rewrite.c:
- Changed referenced to deprecated make_named_sub_pool() to
- make_sub_pool().
+2003-06-06 castaglia <castaglia>
-2003-05-30 17:37 castaglia
+ * src/main.c: Add debug output (level 6) for use/nonuse of RFC1413
+ lookups.
- * 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-06-05 castaglia <castaglia>
-2003-05-30 17:07 castaglia
+ * modules/mod_auth.c, modules/mod_core.c: Match variable data types.
- * 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-06-05 castaglia <castaglia>
-2003-05-29 09:31 castaglia
+ * NEWS, modules/mod_auth.c: Some inappropriate/ill-timed Class
+ functionality check was preventing %N/%y from being properly counted
+ for DisplayConnect files.
- * 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-06-04 castaglia <castaglia>
-2003-05-29 00:29 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.
- * contrib/: mod_sql_mysql.c, 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-06-04 castaglia <castaglia>
-2003-05-28 16:03 jwm
+ * configure: Updating configure.
- * contrib/dist/rpm/proftpd.spec:
- build fixup from Ivan Martinez <ivanfm at os2brasil.com.br>
+2003-06-04 castaglia <castaglia>
-2003-05-27 19:51 castaglia
+ * config.h.in, configure.in: Add autoconf checks for mlock(2),
+ mlockall(2), munlock(2), and munlockall(2).
- * 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-06-04 castaglia <castaglia>
-2003-05-27 13:42 castaglia
+ * src/inet.c: Typo in inet_setnonblock() (Bug#2077).
- * 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-06-03 castaglia <castaglia>
-2003-05-26 17:46 jwm
+ * modules/mod_log.c, src/log.c, src/main.c: Changing variable names
+ to avoid pedantic compiler warnings emitted by gcc-3.3.
- * contrib/dist/rpm/proftpd.spec:
- logrotate script should be config(noreplace)
+2003-06-03 castaglia <castaglia>
-2003-05-26 17:45 jwm
+ * 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.
- * contrib/dist/rpm/proftpd.spec:
- Apparently RPM doesn't like user-defined options with dashes in
- them (--with-module -> --with)
+2003-06-03 castaglia <castaglia>
-2003-05-26 12:20 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.
- * src/data.c:
- Style/spacing.
+2003-06-03 castaglia <castaglia>
-2003-05-25 18:48 jwm
+ * configure: Updating configure.
- * NEWS:
- I really should pay attention to what I'm doing when I resolve
- conflicts...
+2003-06-03 castaglia <castaglia>
-2003-05-25 18:41 jwm
+ * NEWS, config.h.in, configure.in: Bug#2076 - The
+ --enable-transfer-buffer-size configure option doesn't work
+ properly.
- * NEWS:
- Bug 1804 - Permit selection of additional contrib modules when
- building the RPM
+2003-06-02 castaglia <castaglia>
-2003-05-25 18:39 jwm
+ * NEWS, src/fsio.c: Bug#2075 - ls / fails under Cygwin.
- * contrib/dist/rpm/proftpd.spec:
- change the flag name
+2003-06-02 castaglia <castaglia>
-2003-05-25 18:17 jwm
+ * 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.
- * contrib/dist/rpm/proftpd.spec:
- Bug 1804 - RPM spec file improvements
+2003-05-31 castaglia <castaglia>
-2003-05-23 12:43 castaglia
+ * contrib/mod_rewrite.c: Changed referenced to deprecated
+ make_named_sub_pool() to make_sub_pool().
- * src/log.c:
- Make the error about logging to world-writeable directories a
- little more prominent.
+2003-05-31 castaglia <castaglia>
-2003-05-22 12:26 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.
- * NEWS, src/fsio.c:
- Bug#2043 - Proftpd converts LF to CRLF on PUT (Cygwin)
+2003-05-31 castaglia <castaglia>
-2003-05-22 08:01 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.
- * modules/mod_xfer.c:
- Fix missing case for .ftpaccess files bearing
- Max{Retrieve,Store}FileSize directives.
+2003-05-29 castaglia <castaglia>
-2003-05-20 11:00 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).
- * contrib/mod_sql.c:
- Correcting thinko in mod_sql that affected proper lookup of shell
- values. Minor log message correction.
+2003-05-29 castaglia <castaglia>
-2003-05-19 15:28 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.)
- * 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-28 jwm <jwm>
-2003-05-19 13:12 castaglia
+ * contrib/dist/rpm/proftpd.spec: build fixup from Ivan Martinez
+ <ivanfm at os2brasil.com.br>
- * NEWS, modules/mod_xfer.c:
- Bug#2051 - freebytes in TransferRate does not work properly.
+2003-05-28 castaglia <castaglia>
-2003-05-16 09:18 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'.
- * include/version.h:
- Bumping the version for CVS.
+2003-05-27 castaglia <castaglia>
-2003-05-15 21:28 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.
- * ChangeLog:
- Updating ChangeLog.
+2003-05-27 jwm <jwm>
-2003-05-15 21:25 castaglia
+ * contrib/dist/rpm/proftpd.spec: logrotate script should be
+ config(noreplace)
- * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
- Preparing for 1.2.9rc1 release.
+2003-05-27 jwm <jwm>
-2003-05-14 19:21 castaglia
+ * contrib/dist/rpm/proftpd.spec: Apparently RPM doesn't like
+ user-defined options with dashes in them (--with-module -> --with)
- * README.mod_sql:
- Bug#2044 - PostgreSQL backend SQLConnectInfo malfunction.
- Actually, this is merely bad documentation.
+2003-05-26 castaglia <castaglia>
-2003-05-14 17:49 castaglia
+ * src/data.c: Style/spacing.
- * lib/libcap/Makefile, lib/libcap/cap_alloc.c,
- lib/libcap/cap_text.c, lib/libcap/libcap.h,
- lib/libcap/include/sys/capability.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-26 jwm <jwm>
-2003-05-14 12:05 castaglia
+ * NEWS: I really should pay attention to what I'm doing when I
+ resolve conflicts...
- * 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-26 jwm <jwm>
-2003-05-14 10:54 castaglia
+ * NEWS: Bug 1804 - Permit selection of additional contrib modules
+ when building the RPM
- * NEWS:
- Wrong bug report number.
+2003-05-26 jwm <jwm>
-2003-05-13 22:17 castaglia
+ * contrib/dist/rpm/proftpd.spec: change the flag name
- * 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-26 jwm <jwm>
-2003-05-13 21:56 castaglia
+ * contrib/dist/rpm/proftpd.spec: Bug 1804 - RPM spec file
+ improvements
- * NEWS, contrib/mod_rewrite.c:
- Bug#2031 - Add support for flags for RewriteCondition,
- RewriteRule (a la Apache's mod_rewrite)
+2003-05-23 castaglia <castaglia>
-2003-05-13 21:43 castaglia
+ * src/log.c: Make the error about logging to world-writeable
+ directories a little more prominent.
- * NEWS, src/dirtree.c, src/fsio.c:
- Bug#2047 - 1024 or more chars in .ftpaccess causes lockup.
+2003-05-22 castaglia <castaglia>
-2003-05-12 11:23 castaglia
+ * NEWS, src/fsio.c: Bug#2043 - Proftpd converts LF to CRLF on PUT
+ (Cygwin)
- * lib/pr-syslog.c:
- Fix logic.
+2003-05-22 castaglia <castaglia>
-2003-05-12 11:20 castaglia
+ * modules/mod_xfer.c: Fix missing case for .ftpaccess files bearing
+ Max{Retrieve,Store}FileSize directives.
- * lib/pr-syslog.c:
- Add an Id tag.
+2003-05-20 castaglia <castaglia>
-2003-05-09 16:57 jwm
+ * contrib/mod_sql.c: Correcting thinko in mod_sql that affected
+ proper lookup of shell values. Minor log message correction.
- * lib/pr-syslog.c:
- centralize STREAMS defines
+2003-05-19 castaglia <castaglia>
-2003-05-09 00:02 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.
- * configure:
- Updating.
+2003-05-19 castaglia <castaglia>
-2003-05-08 23:58 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2051 - freebytes in TransferRate
+ does not work properly.
- * configure.in:
- Minor wording correction/change.
+2003-05-16 castaglia <castaglia>
-2003-05-08 11:12 castaglia
+ * include/version.h: Bumping the version for CVS.
- * configure:
- Updating configure.
+2003-05-16 castaglia <castaglia>
-2003-05-08 11:10 castaglia
+ * ChangeLog: Updating ChangeLog.
- * configure.in:
- Cygwin installation patch (contributed by Jason Tishler
- <jason at tishler.net>).
+2003-05-16 castaglia <castaglia>
-2003-05-02 11:13 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for 1.2.9rc1 release.
- * README.cygwin:
- Add note about Cygwin's lack of largefile support (sizeof(off_t)
- is only 4, rather than 8, on Cygwin).
+2003-05-15 castaglia <castaglia>
-2003-05-02 10:09 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.
- * configure:
- Updating configure.
+2003-05-14 castaglia <castaglia>
-2003-05-02 10:07 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.
- * 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-05-14 castaglia <castaglia>
-2003-04-30 12:32 castaglia
+ * NEWS: Wrong bug report number.
- * 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-05-14 castaglia <castaglia>
-2003-04-30 11:20 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.
- * modules/: mod_auth.c, mod_core.c:
- get_param_ptr() lookup logic thinkos.
+2003-05-14 castaglia <castaglia>
-2003-04-30 11:16 castaglia
+ * NEWS, contrib/mod_rewrite.c: Bug#2031 - Add support for flags for
+ RewriteCondition, RewriteRule (a la Apache's mod_rewrite)
- * contrib/mod_rewrite.html:
- Add default value for RewriteEngine.
+2003-05-14 castaglia <castaglia>
-2003-04-30 11:13 castaglia
+ * NEWS, src/dirtree.c, src/fsio.c: Bug#2047 - 1024 or more chars in
+ .ftpaccess causes lockup.
- * contrib/mod_rewrite.c:
- More explicit handling of RewriteEngine lookup.
+2003-05-12 castaglia <castaglia>
-2003-04-30 09:12 castaglia
+ * lib/pr-syslog.c: Fix logic.
- * modules/mod_auth_file.c:
- Style/placement.
+2003-05-12 castaglia <castaglia>
-2003-04-30 08:49 castaglia
+ * lib/pr-syslog.c: Add an Id tag.
- * NEWS, modules/mod_auth_file.c:
- Bug#2032 - AuthOrder not working when first option is
- mod_auth_file.c.
+2003-05-09 jwm <jwm>
-2003-04-30 00:44 castaglia
+ * lib/pr-syslog.c: centralize STREAMS defines
- * configure:
- Updating.
+2003-05-09 castaglia <castaglia>
-2003-04-30 00:42 castaglia
+ * configure: Updating.
- * 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-05-09 castaglia <castaglia>
-2003-04-29 23:45 castaglia
+ * configure.in: Minor wording correction/change.
- * contrib/mod_tls.c:
- Forgot to decrement the reference count to the peer cert
- properly.
+2003-05-08 castaglia <castaglia>
-2003-04-29 17:03 castaglia
+ * configure: Updating configure.
- * 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-05-08 castaglia <castaglia>
-2003-04-29 10:40 castaglia
+ * configure.in: Cygwin installation patch (contributed by Jason
+ Tishler <jason at tishler.net>).
- * NEWS:
- Oops...wrong credit. =/
+2003-05-02 castaglia <castaglia>
-2003-04-29 10:39 castaglia
+ * README.cygwin: Add note about Cygwin's lack of largefile support
+ (sizeof(off_t) is only 4, rather than 8, on Cygwin).
- * NEWS:
- Add credit for AllowForeignAddress fix.
+2003-05-02 castaglia <castaglia>
-2003-04-29 10:13 castaglia
+ * configure: Updating configure.
- * 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-05-02 castaglia <castaglia>
-2003-04-26 10:50 jwm
+ * 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.
- * src/.cvsignore, utils/.cvsignore:
- ignore autogenerated man pages
+2003-04-30 castaglia <castaglia>
-2003-04-24 21:13 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.
- * 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:
+2003-04-30 castaglia <castaglia>
- http://cygwin.com/ml/cygwin/2003-04/msg01918.html
+ * modules/mod_auth.c, modules/mod_core.c: get_param_ptr() lookup
+ logic thinkos.
- Also updating the Cygwin README with feedback from Jason Tishler
- <jason at tishler.net>.
+2003-04-30 castaglia <castaglia>
-2003-04-24 17:02 castaglia
+ * contrib/mod_rewrite.c: More explicit handling of RewriteEngine
+ lookup.
- * 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-30 castaglia <castaglia>
-2003-04-24 16:02 castaglia
+ * modules/mod_auth_file.c: Style/placement.
- * contrib/mod_rewrite.c:
- Fixing bug where a RewriteRule with no conditions was not being
- executed properly.
+2003-04-30 castaglia <castaglia>
-2003-04-24 12:41 castaglia
+ * NEWS, modules/mod_auth_file.c: Bug#2032 - AuthOrder not working
+ when first option is mod_auth_file.c.
- * INSTALL, README.modules:
- Module name changes.
+2003-04-30 castaglia <castaglia>
-2003-04-23 17:27 castaglia
+ * configure: Updating.
- * README.modules:
- Updating the module list.
+2003-04-30 castaglia <castaglia>
-2003-04-23 11:55 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).
- * contrib/mod_rewrite.c:
- Pedantic change -- bad grammar in variable name.
+2003-04-30 castaglia <castaglia>
-2003-04-22 23:56 castaglia
+ * contrib/mod_tls.c: Forgot to decrement the reference count to the
+ peer cert properly.
- * configure:
- Updating.
+2003-04-30 castaglia <castaglia>
-2003-04-22 23:53 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.
- * 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:
+2003-04-29 castaglia <castaglia>
- CFLAGS="-DPR_DEVEL_NO_FORK -DPR_DEVEL_COREDUMP" ./configure
- --enable-devel ...
+ * NEWS: Oops...wrong credit. =/
- you can now do:
+2003-04-29 castaglia <castaglia>
- ./configure --enable-devel=nofork:coredump ...
+ * NEWS: Add credit for AllowForeignAddress fix.
- At present, only three developer options are supported: nodaemon,
- nofork, and coredump.
+2003-04-29 castaglia <castaglia>
-2003-04-22 22:00 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.
- * contrib/mod_rewrite.html:
- Typo.
+2003-04-26 jwm <jwm>
-2003-04-22 19:46 castaglia
+ * src/.cvsignore, utils/.cvsignore: ignore autogenerated man pages
- * src/pool.c:
- Sanity checking.
+2003-04-25 castaglia <castaglia>
-2003-04-22 19:39 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>.
- * lib/glibc-glob.c:
- Fixing compiler warning.
+2003-04-25 castaglia <castaglia>
-2003-04-22 17:42 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).
- * contrib/mod_rewrite.html:
- Adding more substance to this document (still needs more,
- though).
+2003-04-24 castaglia <castaglia>
-2003-04-22 17:28 castaglia
+ * contrib/mod_rewrite.c: Fixing bug where a RewriteRule with no
+ conditions was not being executed properly.
- * NEWS, contrib/mod_rewrite.c:
- Bug#2029 - Rewrite rule may execute more than once if multiple
- rewrite conditions exist.
+2003-04-24 castaglia <castaglia>
-2003-04-22 16:07 castaglia
+ * INSTALL, README.modules: Module name changes.
- * NEWS:
- Bug#2003 - mod_auth.c does not compile for cygwin on W2K.
+2003-04-24 castaglia <castaglia>
-2003-04-22 16:05 castaglia
+ * README.modules: Updating the module list.
- * 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-23 castaglia <castaglia>
-2003-04-22 13:47 castaglia
+ * contrib/mod_rewrite.c: Pedantic change -- bad grammar in variable
+ name.
- * 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-23 castaglia <castaglia>
-2003-04-21 20:21 castaglia
+ * configure: Updating.
- * contrib/mod_tls.html:
- Updating the mod_tls documentation.
+2003-04-23 castaglia <castaglia>
-2003-04-17 23:26 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.
- * NEWS, modules/mod_core.c:
- Bug#1532 - [patch] Human readable disk free.
+2003-04-23 castaglia <castaglia>
-2003-04-17 16:06 castaglia
+ * src/pool.c: Sanity checking.
- * src/inet.c:
- Cruft removal.
+2003-04-23 castaglia <castaglia>
-2003-04-16 10:53 castaglia
+ * lib/glibc-glob.c: Fixing compiler warning.
- * 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-23 castaglia <castaglia>
-2003-04-16 00:34 castaglia
+ * NEWS, contrib/mod_rewrite.c: Bug#2029 - Rewrite rule may execute
+ more than once if multiple rewrite conditions exist.
- * src/fsio.c:
- Typo.
+2003-04-22 castaglia <castaglia>
-2003-04-16 00:00 castaglia
+ * NEWS: Bug#2003 - mod_auth.c does not compile for cygwin on W2K.
- * configure:
- Updating configure script.
+2003-04-22 castaglia <castaglia>
-2003-04-15 23:56 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).
- * configure.in:
- Tweaking the configure.in file to fix some things that cause
- trouble on Tru64 Unix (and probably other picky platforms).
+2003-04-22 castaglia <castaglia>
-2003-04-15 23:09 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.
- * 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-18 castaglia <castaglia>
-2003-04-15 20:18 castaglia
+ * NEWS, modules/mod_core.c: Bug#1532 - [patch] Human readable disk
+ free.
- * src/fsio.c:
- Silencing compiler warnings about statvfs64(2) on LFS-enabled
- Solaris.
+2003-04-17 castaglia <castaglia>
-2003-04-15 15:56 castaglia
+ * src/inet.c: Cruft removal.
- * 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-16 castaglia <castaglia>
-2003-04-14 23:42 castaglia
+ * src/fsio.c: Add Solaris 2.5.1 to the list of Solaris versions that
+ use struct statvfs for its statvfs(2) call.
- * 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-16 castaglia <castaglia>
-2003-04-14 23:22 castaglia
+ * src/fsio.c: Typo.
- * NEWS, modules/mod_auth.c, modules/mod_core.c:
- Added RootRevoke configuration directive.
+2003-04-16 castaglia <castaglia>
-2003-04-14 18:08 castaglia
+ * configure: Updating configure script.
- * src/modules.c:
- Minor adjustment, to make sure that PRE_CMD, POST_CMD et al are
- not inadvertently forgotten.
+2003-04-16 castaglia <castaglia>
-2003-04-14 16:18 castaglia
+ * configure.in: Tweaking the configure.in file to fix some things
+ that cause trouble on Tru64 Unix (and probably other picky
+ platforms).
- * src/modules.c:
- HOOK commands need to be properly inserted into the stash if they
- are to be later looked up.
+2003-04-16 castaglia <castaglia>
-2003-04-14 15:38 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).
- * modules/mod_xfer.c:
- Michael found a bug where the REST position was not properly
- being cleared between uploads/downloads.
+2003-04-16 castaglia <castaglia>
-2003-04-09 11:29 castaglia
+ * src/fsio.c: Silencing compiler warnings about statvfs64(2) on
+ LFS-enabled Solaris.
- * src/inet.c:
- Typo.
+2003-04-15 castaglia <castaglia>
-2003-04-08 23:39 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.
- * src/inet.c:
- IRIX doesn't need this ioctl(2) call, it seems.
+2003-04-15 castaglia <castaglia>
-2003-04-08 19:53 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.
- * NEWS, modules/mod_core.c, modules/mod_site.c, modules/mod_xfer.c:
+2003-04-15 castaglia <castaglia>
- Bug#2002 - Per-<Directory> PathAllowFilter/PathDenyFilter.
+ * NEWS, modules/mod_auth.c, modules/mod_core.c: Added RootRevoke
+ configuration directive.
-2003-04-08 15:25 castaglia
+2003-04-15 castaglia <castaglia>
- * contrib/mod_ifsession.c:
- Fixing bug with mod_ifsession's searching/handling of multiple
- <If*> contexts.
+ * src/modules.c: Minor adjustment, to make sure that PRE_CMD,
+ POST_CMD et al are not inadvertently forgotten.
-2003-04-08 11:49 castaglia
+2003-04-14 castaglia <castaglia>
- * configure:
- Updating configure.
+ * src/modules.c: HOOK commands need to be properly inserted into the
+ stash if they are to be later looked up.
-2003-04-08 11:47 castaglia
+2003-04-14 castaglia <castaglia>
- * config.h.in, configure.in, NEWS, 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>.
+ * modules/mod_xfer.c: Michael found a bug where the REST position
+ was not properly being cleared between uploads/downloads.
- 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-09 castaglia <castaglia>
-2003-04-08 10:18 castaglia
+ * src/inet.c: Typo.
- * modules/mod_ls.c:
- Fix segfault in NLST.
+2003-04-09 castaglia <castaglia>
-2003-04-07 15:53 castaglia
+ * src/inet.c: IRIX doesn't need this ioctl(2) call, it seems.
- * src/main.c:
- Minor buglet: actually honor RLIM_INFINITY if USE_DEVEL is
- defined when setting the RLIMIT_CORE rlimit.
+2003-04-09 castaglia <castaglia>
-2003-04-07 14:07 castaglia
+ * NEWS, modules/mod_core.c, modules/mod_site.c, modules/mod_xfer.c:
+ Bug#2002 - Per-<Directory> PathAllowFilter/PathDenyFilter.
- * NEWS, modules/mod_xfer.c:
- Bug#2018: Incorrect caching of TransferRate values.
+2003-04-08 castaglia <castaglia>
-2003-04-04 09:04 castaglia
+ * contrib/mod_ifsession.c: Fixing bug with mod_ifsession's
+ searching/handling of multiple <If*> contexts.
- * lib/: pr_fnmatch.c, pr_fnmatch_loop.c:
- Quell some compiler warnings when --enable-devel flags are used.
+2003-04-08 castaglia <castaglia>
-2003-04-03 23:30 castaglia
+ * configure: Updating configure.
- * configure:
- Updating.
+2003-04-08 castaglia <castaglia>
-2003-04-03 23:29 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.
- * configure.in:
- Oops...forgot an important part. =P
+2003-04-08 castaglia <castaglia>
-2003-04-03 23:25 castaglia
+ * modules/mod_ls.c: Fix segfault in NLST.
- * configure:
- Updating.
+2003-04-07 castaglia <castaglia>
-2003-04-03 23:23 castaglia
+ * src/main.c: Minor buglet: actually honor RLIM_INFINITY if
+ USE_DEVEL is defined when setting the RLIMIT_CORE rlimit.
- * NEWS, configure.in, src/proftpd.8, src/proftpd.8.in,
- src/xferlog.5, src/xferlog.5.in, utils/ftpcount.1,
- utils/ftpcount.1.in, utils/ftpshut.8, utils/ftpshut.8.in,
- utils/ftptop.1, utils/ftptop.1.in, utils/ftpwho.1,
- 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-07 castaglia <castaglia>
-2003-04-03 15:15 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#2018: Incorrect caching of
+ TransferRate values.
- * modules/mod_core.c:
- Scrub the scoreboard during a rehash (SIGHUP), too.
+2003-04-04 castaglia <castaglia>
-2003-04-03 10:55 castaglia
+ * lib/pr_fnmatch.c, lib/pr_fnmatch_loop.c: Quell some compiler
+ warnings when --enable-devel flags are used.
- * configure:
- Updating configure script for curses/ncurses library detection
- changes.
+2003-04-04 castaglia <castaglia>
-2003-04-03 10:49 castaglia
+ * configure: Updating.
- * 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-04 castaglia <castaglia>
-2003-04-02 17:34 castaglia
+ * configure.in: Oops...forgot an important part. =P
- * configure:
- Updating configure script.
+2003-04-04 castaglia <castaglia>
-2003-04-02 17:31 castaglia
+ * configure: Updating.
- * NEWS, configure.in, config.h.in, utils/ftptop.c:
- Added new --disable-{curses,ncurses} configure options.
+2003-04-04 castaglia <castaglia>
-2003-04-02 14:54 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.
- * README.PAM:
- Updating Linux PAM configuration examples.
+2003-04-03 castaglia <castaglia>
-2003-04-02 09:45 castaglia
+ * modules/mod_core.c: Scrub the scoreboard during a rehash (SIGHUP),
+ too.
- * 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-03 castaglia <castaglia>
-2003-04-01 15:56 castaglia
+ * configure: Updating configure script for curses/ncurses library
+ detection changes.
- * include/modules.h, src/modules.c:
- Removing crufty auth_priority variable.
+2003-04-03 castaglia <castaglia>
-2003-04-01 12:22 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.
- * contrib/mod_sql.c:
- Pedantic orthography correction.
+2003-04-03 castaglia <castaglia>
-2003-04-01 12:13 castaglia
+ * configure: Updating configure script.
- * contrib/mod_sql.c:
- Add typecasting, to quell compiler warnings.
+2003-04-03 castaglia <castaglia>
-2003-04-01 10:11 castaglia
+ * NEWS, config.h.in, configure.in, utils/ftptop.c: Added new
+ --disable-{curses,ncurses} configure options.
- * modules/mod_core.c:
- This module needs to include signal.h, so that it picks up the
- prototype for kill(2).
+2003-04-02 castaglia <castaglia>
-2003-03-29 15:55 castaglia
+ * README.PAM: Updating Linux PAM configuration examples.
- * 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-04-02 castaglia <castaglia>
-2003-03-29 15:52 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.
- * 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-04-01 castaglia <castaglia>
-2003-03-29 11:52 castaglia
+ * include/modules.h, src/modules.c: Removing crufty auth_priority
+ variable.
- * modules/mod_ls.c:
- Prevent a segfault in some situations by making sure the pointer
- exists before dereferencing it.
+2003-04-01 castaglia <castaglia>
-2003-03-29 09:12 castaglia
+ * contrib/mod_sql.c: Pedantic orthography correction.
- * src/fsio.c:
- Be a little more accurate when reporting the name of the FS whose
- callback is being invoked.
+2003-04-01 castaglia <castaglia>
-2003-03-28 13:17 castaglia
+ * contrib/mod_sql.c: Add typecasting, to quell compiler warnings.
- * NEWS, modules/mod_ls.c:
- Bug#1998 - Add ListOptions for setting limits on -R listings.
+2003-04-01 castaglia <castaglia>
-2003-03-27 23:34 castaglia
+ * modules/mod_core.c: This module needs to include signal.h, so that
+ it picks up the prototype for kill(2).
- * src/main.c:
- Every command needs to have its logging class, unless otherwise
- explicitly set, default to CL_ALL.
+2003-03-29 castaglia <castaglia>
-2003-03-27 17:58 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).
- * contrib/ftpasswd:
- Make explicit the fact that --group --member parameters are user
- names.
+2003-03-29 castaglia <castaglia>
-2003-03-26 16:55 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.
- * contrib/mod_ifsession.html:
- Adding text to the mod_ifsession docs.
+2003-03-29 castaglia <castaglia>
-2003-03-25 19:34 castaglia
+ * modules/mod_ls.c: Prevent a segfault in some situations by making
+ sure the pointer exists before dereferencing it.
- * src/mkhome.c:
- Quell compiler warnings on Solaris by explicitly casting mode_t
- to an unsigned int.
+2003-03-29 castaglia <castaglia>
-2003-03-25 02:41 cyberrobo
+ * src/fsio.c: Be a little more accurate when reporting the name of
+ the FS whose callback is being invoked.
- * modules/mod_ls.c: small typo
+2003-03-28 castaglia <castaglia>
-2003-03-24 21:52 castaglia
+ * NEWS, modules/mod_ls.c: Bug#1998 - Add ListOptions for setting
+ limits on -R listings.
- * NEWS, src/inet.c:
- Bug#1997 - UnixWare 7.1.3 & port 20.
+2003-03-28 castaglia <castaglia>
-2003-03-24 15:43 castaglia
+ * src/main.c: Every command needs to have its logging class, unless
+ otherwise explicitly set, default to CL_ALL.
- * src/inet.c:
- Typo.
+2003-03-28 castaglia <castaglia>
-2003-03-24 15:40 castaglia
+ * contrib/ftpasswd: Make explicit the fact that --group --member
+ parameters are user names.
- * src/inet.c:
- More setsockopt(2) fun: *BSD want IPPROTO_IP for setting IP_TOS
- options, Linux wants SOL_IP.
+2003-03-26 castaglia <castaglia>
-2003-03-24 12:26 castaglia
+ * src/mkhome.c: Quell compiler warnings on Solaris by explicitly
+ casting mode_t to an unsigned int.
- * 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).
+2003-03-25 cyberrobo <cyberrobo>
- 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.)
+ * modules/mod_ls.c: small typo
-2003-03-24 12:02 castaglia
+2003-03-25 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#1935 - mod_ls memory leak.
+ * NEWS, src/inet.c: Bug#1997 - UnixWare 7.1.3 & port 20.
-2003-03-23 22:14 castaglia
+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.
+ * src/inet.c: Typo.
-2003-03-23 12:00 castaglia
+2003-03-24 castaglia <castaglia>
- * src/netio.c:
- A shutdown() is not a close(); shutdown should not be freeing the
- netio stream's pool.
+ * src/inet.c: More setsockopt(2) fun: *BSD want IPPROTO_IP for
+ setting IP_TOS options, Linux wants SOL_IP.
-2003-03-23 10:15 castaglia
+2003-03-24 castaglia <castaglia>
- * contrib/mod_sql.c:
- More error checking when a custom SQLUserInfo query is used.
+ * 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-22 11:09 castaglia
+2003-03-24 castaglia <castaglia>
- * utils/utils.h:
- Cruft.
+ * NEWS, modules/mod_ls.c: Bug#1935 - mod_ls memory leak.
-2003-03-22 11:04 castaglia
+2003-03-24 castaglia <castaglia>
- * configure:
- Updating.
+ * 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-22 11:02 castaglia
+2003-03-23 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.
+ * src/netio.c: A shutdown() is not a close(); shutdown should not be
+ freeing the netio stream's pool.
-2003-03-22 10:19 castaglia
+2003-03-23 castaglia <castaglia>
- * configure:
- Updating.
+ * contrib/mod_sql.c: More error checking when a custom SQLUserInfo
+ query is used.
-2003-03-22 10:16 castaglia
+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.
+ * utils/utils.h: Cruft.
- Add a --disable-ipv6 configure option, and a corresponding
- USE_IPV6 define. Add check for getnameinfo(3) function.
+2003-03-22 castaglia <castaglia>
-2003-03-22 09:59 castaglia
+ * configure: Updating.
- * configure:
- Updating.
+2003-03-22 castaglia <castaglia>
-2003-03-22 09:55 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.
- * 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>
-2003-03-21 20:49 castaglia
+ * configure: Updating.
- * 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-22 castaglia <castaglia>
-2003-03-20 22:46 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.
- * NEWS:
- Should mention mod_radius changes here.
+2003-03-22 castaglia <castaglia>
-2003-03-20 22:44 castaglia
+ * configure: Updating.
- * 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-22 castaglia <castaglia>
-2003-03-20 22:00 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.
- * src/scoreboard.c:
- Report the scoreboard path anyway.
+2003-03-22 castaglia <castaglia>
-2003-03-20 21:58 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.
- * src/scoreboard.c:
- Add debug logging of the path used if opening the scoreboard file
- fails.
+2003-03-21 castaglia <castaglia>
-2003-03-20 19:26 castaglia
+ * NEWS: Should mention mod_radius changes here.
- * src/: fsio.c, main.c:
- Making the checking of the configuration file path actually work.
+2003-03-21 castaglia <castaglia>
- 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.
+ * 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-20 15:23 castaglia
+2003-03-21 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql.h, mod_sql_mysql.c,
- 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.
+ * src/scoreboard.c: Report the scoreboard path anyway.
-2003-03-20 13:38 castaglia
+2003-03-21 castaglia <castaglia>
- * NEWS:
- Typo.
+ * src/scoreboard.c: Add debug logging of the path used if opening
+ the scoreboard file fails.
-2003-03-20 11:33 castaglia
+2003-03-21 castaglia <castaglia>
- * utils/: ftpcount.1, ftptop.1, ftpwho.1:
- Updating paths to reflect default installation locations.
+ * 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 11:31 castaglia
+2003-03-20 castaglia <castaglia>
- * src/proftpd.8:
- Updating the paths in the man page to reflect the default
- installation location. At some point, we'll need to handle this
- better, to generate/rewrite the man page based on the --prefix
- used, so that the man pages properly reflect the locations of the
- installed files.
+ * 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 11:11 castaglia
+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).
+ * NEWS: Typo.
-2003-03-20 09:46 castaglia
+2003-03-20 castaglia <castaglia>
- * NEWS, utils/ftptop.c:
- Bug#1995 - ftptop: no curses or ncurses library on this system.
+ * 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-19 23:54 castaglia
+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.
+ * NEWS, utils/ftptop.c: Bug#1995 - ftptop: no curses or ncurses
+ library on this system.
-2003-03-19 18:19 castaglia
+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.
+ * contrib/mod_sql_mysql.c: One minor cast needed to compile/link
+ without warnings against MySQL-4.0 client libraries.
-2003-03-19 12:05 castaglia
+2003-03-20 castaglia <castaglia>
- * configure:
- Updating.
+ * 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 11:50 castaglia
+2003-03-19 castaglia <castaglia>
- * aclocal.m4, config.h.in, configure.in:
- More IPv6-related autoconf detection.
+ * configure: Updating.
-2003-03-19 11:00 castaglia
+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
+ * aclocal.m4, config.h.in, configure.in: More IPv6-related autoconf
+ detection.
-2003-03-18 23:58 castaglia
+2003-03-19 castaglia <castaglia>
- * modules/mod_auth.c:
- Another off-by-one bug, this time afflicting MaxClientsPerUser.
+ * 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-18 08:17 castaglia
+2003-03-19 castaglia <castaglia>
- * contrib/mod_rewrite.html:
- Added note about the $0 backreference.
+ * modules/mod_auth.c: Another off-by-one bug, this time afflicting
+ MaxClientsPerUser.
-2003-03-18 08:13 castaglia
+2003-03-18 castaglia <castaglia>
- * src/inet.c:
- Portability fun with socket options. =P
+ * src/inet.c: Portability fun with socket options. =P
-2003-03-18 07:57 castaglia
+2003-03-18 castaglia <castaglia>
- * configure:
- Updating.
+ * configure: Updating.
-2003-03-18 07:53 castaglia
+2003-03-18 castaglia <castaglia>
- * config.h.in, configure.in:
- Start autoconf checks for some functions we'll need for IPv6
- support.
+ * config.h.in, configure.in: Start autoconf checks for some
+ functions we'll need for IPv6 support.
-2003-03-18 07:19 castaglia
+2003-03-18 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#1987 - mod_rewrite seems not to handle more than one
- backreference (only $1).
+ * NEWS, contrib/mod_rewrite.c: Bug#1987 - mod_rewrite seems not to
+ handle more than one backreference (only $1).
-2003-03-17 23:52 castaglia
+2003-03-18 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#1986 - mod_rewrite backreferences not zero-based (use $1 not
- $0?).
+ * NEWS, contrib/mod_rewrite.c: Bug#1986 - mod_rewrite backreferences
+ not zero-based (use $1 not $0?).
-2003-03-17 15:48 castaglia
+2003-03-17 castaglia <castaglia>
- * src/data.c:
- Trying to make sure that an interrupted sendfile(2) on Linux has
- its signals handled properly.
+ * src/data.c: Trying to make sure that an interrupted sendfile(2) on
+ Linux has its signals handled properly.
-2003-03-17 08:48 castaglia
+2003-03-17 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#1989 - SQLLog '*' doesn't match any commands.
+ * NEWS, contrib/mod_sql.c: Bug#1989 - SQLLog '*' doesn't match any
+ commands.
-2003-03-17 08:41 castaglia
+2003-03-17 castaglia <castaglia>
- * modules/mod_xfer.c:
- Add handling of signals if sendfile() is interrupted.
+ * modules/mod_xfer.c: Add handling of signals if sendfile() is
+ interrupted.
-2003-03-14 19:33 castaglia
+2003-03-15 castaglia <castaglia>
- * NEWS, contrib/mod_sql_mysql.c:
- Bug#1730 - mod_mysql logging of long transfers fails.
+ * NEWS, contrib/mod_sql_mysql.c: Bug#1730 - mod_mysql logging of
+ long transfers fails.
-2003-03-14 19:18 castaglia
+2003-03-15 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c:
- Bug#1985 - mod_rewrite fails to build on platforms without
- flock().
+ * NEWS, contrib/mod_rewrite.c: Bug#1985 - mod_rewrite fails to build
+ on platforms without flock().
-2003-03-14 10:27 castaglia
+2003-03-14 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql.h, mod_sql_mysql.c,
- mod_sql_postgres.c:
- Adding $Id: ChangeLog,v 1.154 2014-05-15 16:20:23 castaglia Exp $ tags to the mod_sql files.
+ * 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 07:54 castaglia
+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().
+ * src/dirtree.c: Be a little more thorough in checking how to handle
+ the given path in get_dir_ctxt().
-2003-03-14 07:51 castaglia
+2003-03-14 castaglia <castaglia>
- * src/dirtree.c:
- Correct get_dir_ctxt() when operating within a chroot.
+ * src/dirtree.c: Correct get_dir_ctxt() when operating within a
+ chroot.
-2003-03-13 18:37 jwm
+2003-03-14 jwm <jwm>
* README.LDAP: forgot to update this for 2.8.11
-2003-03-13 15:31 castaglia
+2003-03-13 castaglia <castaglia>
- * NEWS, include/dirtree.h, src/dirtree.c, src/main.c:
- Bug#1983 - filenames beginning with # fail to upload / download.
+ * NEWS, include/dirtree.h, src/dirtree.c, src/main.c: Bug#1983 -
+ filenames beginning with # fail to upload / download.
-2003-03-12 18:56 castaglia
+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.
+ * 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.
- Also added two new FSIO functions, for fstat and ftruncate.
+2003-03-12 castaglia <castaglia>
-2003-03-12 13:55 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.
- * 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>
-2003-03-12 13:13 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.
- * 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>
-2003-03-12 08:36 castaglia
+ * Makefile.in: Pass LDFLAGS on to ftpcount and ftpshut, too.
- * Makefile.in:
- Pass LDFLAGS on to ftpcount and ftpshut, too.
-
-2003-03-11 18:46 castaglia
+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-10 12:48 castaglia
+ 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).
- * contrib/mod_ifsession.html:
- Updating mod_ifsession docs.
-
-2003-03-09 15:24 castaglia
+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.
+ modules/mod_core.c, src/scoreboard.c, utils/utils.h: Bug#1915 -
+ Unsafe pointer usage in scoreboard file format.
-2003-03-09 14:40 castaglia
+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.
+ * NEWS, contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c:
+ Bug#1849 - Compile can have trouble finding mysql.h.
-2003-03-09 14:30 castaglia
+2003-03-09 castaglia <castaglia>
- * configure:
- Updating the configure script.
+ * configure: Updating the configure script.
-2003-03-09 14:28 castaglia
+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 08:53 castaglia
+ 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.
- * src/inet.c:
- Portability fix for letting active/inetd function properly on Mac
- OSX (Darwin).
+2003-03-09 castaglia <castaglia>
-2003-03-09 08:23 castaglia
+ * src/inet.c: Portability fix for letting active/inetd function
+ properly on Mac OSX (Darwin).
- * 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>
-2003-03-08 20:19 castaglia
+ * src/main.c, utils/ftpcount.c, utils/ftpwho.c: Minor change: list
+ the short form of options first, then the long form.
- * NEWS, include/options.h, modules/mod_core.c:
- Bug#1969 - Add scoreboard-scrubbing timer.
+2003-03-09 castaglia <castaglia>
-2003-03-08 19:55 castaglia
+ * NEWS, include/options.h, modules/mod_core.c: Bug#1969 - Add
+ scoreboard-scrubbing timer.
- * 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>
-2003-03-08 19:16 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.
- * 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>
-2003-03-08 19:09 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.
- * 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>
-2003-03-08 18:25 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.
- * NEWS:
- Making note of new handling/checking for IP address/port
- collisions.
+2003-03-09 castaglia <castaglia>
-2003-03-08 18:24 castaglia
+ * NEWS: Making note of new handling/checking for IP address/port
+ collisions.
- * 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>
-2003-03-08 18:06 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).
- * 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>
-2003-03-08 17:35 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.
- * README.ports:
- Updating.
+2003-03-09 castaglia <castaglia>
-2003-03-08 17:04 castaglia
+ * README.ports: Updating.
- * include/modules.h:
- Cruft.
+2003-03-09 castaglia <castaglia>
-2003-03-08 16:56 castaglia
+ * include/modules.h: Cruft.
- * include/proftpd.h:
- Cruft.
+2003-03-09 castaglia <castaglia>
-2003-03-07 15:11 castaglia
+ * include/proftpd.h: Cruft.
- * NEWS, modules/mod_auth.c:
- Bug#1932 - Make Max* checks a PASS POST_CMD handler.
+2003-03-07 castaglia <castaglia>
-2003-03-06 09:48 castaglia
+ * NEWS, modules/mod_auth.c: Bug#1932 - Make Max* checks a PASS
+ POST_CMD handler.
- * 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.
+2003-03-06 castaglia <castaglia>
- 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.
+ * 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-05 18:18 jwm
+2003-03-06 jwm <jwm>
- * contrib/mod_ldap.c:
- upgrade to 2.8.11
+ * contrib/mod_ldap.c: upgrade to 2.8.11
-2003-03-05 18:15 castaglia
+2003-03-06 castaglia <castaglia>
- * NEWS, contrib/mod_ifsession.c, contrib/mod_ifsession.html:
- Bug#1933 - Add mod_ifsession contrib module.
+ * NEWS, contrib/mod_ifsession.c: Bug#1933 - Add mod_ifsession
+ contrib module.
-2003-03-05 16:11 castaglia
+2003-03-06 castaglia <castaglia>
- * NEWS, contrib/mod_radius.c:
- Bug#1980 - Login with incorrect password POSSIBLE when using
- mod_radius.
+ * NEWS, contrib/mod_radius.c: Bug#1980 - Login with incorrect
+ password POSSIBLE when using mod_radius.
-2003-03-05 13:55 castaglia
+2003-03-05 castaglia <castaglia>
- * NEWS, utils/ftpcount.1, utils/ftpcount.c, utils/ftptop.1,
- utils/ftptop.c, utils/ftpwho.1, utils/ftpwho.c:
- Bug#1869 - Add option "--server/-s" to ftpwho&ftpcount&ftptop.
+ * NEWS, utils/ftpcount.c, utils/ftptop.c, utils/ftpwho.c: Bug#1869 -
+ Add option "--server/-s" to ftpwho&ftpcount&ftptop.
-2003-03-05 11:23 castaglia
+2003-03-05 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Bug#1979 - Add TLSTimeoutHandshake directive.
+ * NEWS, contrib/mod_tls.c: Bug#1979 - Add TLSTimeoutHandshake
+ directive.
-2003-03-05 11:20 castaglia
+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.
+ 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-04 18:05 castaglia
+2003-03-05 castaglia <castaglia>
- * modules/mod_auth.c:
- Fixing shadowing variable name.
+ * modules/mod_auth.c: Fixing shadowing variable name.
-2003-03-04 17:23 castaglia
+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.
+ * include/privs.h: Make the PRIVS_ROOT macro change the egid to 0 as
+ well as the euid, to be consistent.
-2003-03-04 15:32 castaglia
+2003-03-04 castaglia <castaglia>
- * modules/mod_xfer.c:
- Re-add the missing setsockopt(TCP_CORK) to uncork the socket
- after sending data.
+ * modules/mod_xfer.c: Re-add the missing setsockopt(TCP_CORK) to
+ uncork the socket after sending data.
-2003-03-04 15:22 castaglia
+2003-03-04 castaglia <castaglia>
- * modules/mod_xfer.c:
- Still working on this.
+ * modules/mod_xfer.c: Still working on this.
-2003-03-04 15:14 castaglia
+2003-03-04 castaglia <castaglia>
- * modules/mod_xfer.c:
- Fixing use of TCP_CORK.
+ * modules/mod_xfer.c: Fixing use of TCP_CORK.
-2003-03-04 13:46 castaglia
+2003-03-04 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#1972 - %T not correctly shows time at performance of a
- command "rename".
+ * NEWS, modules/mod_log.c: Bug#1972 - %T not correctly shows time at
+ performance of a command "rename".
-2003-03-04 13:30 castaglia
+2003-03-04 castaglia <castaglia>
- * NEWS, utils/ftpshut.c, utils/ftpshut.8:
- Added -D option to ftpshut, to be used to delete the /etc/shutmsg
- file (rather than having to manually remove it).
+ * 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 12:03 castaglia
+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).
+ * 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 11:55 castaglia
+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.
+ * 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.
- 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>
-2003-03-04 11:50 castaglia
+ * NEWS, modules/mod_auth.c: Added AnonRejectPasswords.
- * NEWS, modules/mod_auth.c:
- Added AnonRejectPasswords.
-
-2003-03-04 11:28 castaglia
+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.
+ 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 11:24 castaglia
+2003-03-04 castaglia <castaglia>
* NEWS, contrib/mod_sql_mysql.c, include/version.h,
- modules/mod_core.c:
- Bugs 1828 and 1960.
-
-2003-03-03 21:26 castaglia
+ modules/mod_core.c: Bugs 1828 and 1960.
- * ChangeLog:
- Updating.
+2003-03-04 castaglia <castaglia>
-2003-03-03 21:25 castaglia
+ * ChangeLog: Updating.
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec:
- Preparing for release of 1.2.8.
+2003-03-04 castaglia <castaglia>
-2003-03-03 18:58 castaglia
+ * NEWS, contrib/dist/rpm/proftpd.spec, include/version.h: Preparing
+ for release of 1.2.8.
- * README.PAM:
- Updating PAM information for FreeBSD.
+2003-03-04 castaglia <castaglia>
-2003-03-03 12:13 castaglia
+ * README.PAM: Updating PAM information for FreeBSD.
- * README.mod_sql:
- Updating.
+2003-03-03 castaglia <castaglia>
-2003-03-02 20:21 castaglia
+ * src/inet.c: Fixed #if check.
- * src/inet.c:
- Fixed #if check.
+2003-03-03 castaglia <castaglia>
-2003-03-02 18:21 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.
- * 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>
-2003-03-02 16:42 castaglia
+ * NEWS, modules/mod_auth.c: Bug#1976 - Login hangs, spawned process
+ runs in endless loop in mod_auth.
- * NEWS, modules/mod_auth.c:
- Bug#1976 - Login hangs, spawned process runs in endless loop in
- mod_auth.
+2003-03-03 castaglia <castaglia>
-2003-03-02 16:31 castaglia
+ * NEWS, src/inet.c: Adding FreeBSD-5.0 to the #defines for the
+ socket/privs fun.
- * NEWS, src/inet.c:
- Adding FreeBSD-5.0 to the #defines for the socket/privs fun.
+2003-03-01 castaglia <castaglia>
-2003-03-01 10:41 castaglia
+ * contrib/mod_tls.c: Playing with logged messages...
- * contrib/mod_tls.c:
- Playing with logged messages...
+2003-03-01 castaglia <castaglia>
-2003-03-01 10:39 castaglia
+ * contrib/mod_tls.c: Bad grammar.
- * contrib/mod_tls.c:
- Bad grammar.
+2003-03-01 castaglia <castaglia>
-2003-03-01 10:31 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
- * 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>
-2003-02-25 20:49 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).
- * 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>
-2003-02-25 20:30 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).
- * 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>
-2003-02-25 11:00 castaglia
+ * configure: Updating configure script.
- * configure:
- Updating configure script.
-
-2003-02-25 10:56 castaglia
+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.
+ 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-24 17:39 castaglia
+2003-02-25 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#1937 - transfer hangs when using transferrate limits on a
- resumed download.
+ * NEWS, modules/mod_xfer.c: Bug#1937 - transfer hangs when using
+ transferrate limits on a resumed download.
-2003-02-24 15:47 castaglia
+2003-02-24 castaglia <castaglia>
- * modules/mod_xfer.c:
- Cleanup of missed code for Bug#1970.
+ * modules/mod_xfer.c: Cleanup of missed code for Bug#1970.
-2003-02-24 10:39 castaglia
+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.
+ * 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 10:15 castaglia
+2003-02-24 castaglia <castaglia>
- * modules/mod_ls.c:
- Removing unused cruft.
+ * modules/mod_ls.c: Removing unused cruft.
-2003-02-24 10:13 castaglia
+2003-02-24 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#1953 - STAT -R does not work.
+ * NEWS, modules/mod_ls.c: Bug#1953 - STAT -R does not work.
-2003-02-24 08:06 castaglia
+2003-02-24 castaglia <castaglia>
- * NEWS, src/inet.c:
- Bug#1966 - SCO OpenServer 5.0.5 and inetd (not passive mode).
+ * NEWS, src/inet.c: Bug#1966 - SCO OpenServer 5.0.5 and inetd (not
+ passive mode).
-2003-02-23 18:37 castaglia
+2003-02-24 castaglia <castaglia>
- * NEWS, modules/mod_log.c, src/dirtree.c:
- Bug#1908 - ExtendedLog to work properly in <Anonymous> context.
+ * NEWS, modules/mod_log.c, src/dirtree.c: Bug#1908 - ExtendedLog to
+ work properly in <Anonymous> context.
-2003-02-19 23:48 castaglia
+2003-02-20 castaglia <castaglia>
- * NEWS, utils/ftpwho.c:
- Bug#1958 - ftpwho -o oneline has newlines when client is idle.
+ * NEWS, utils/ftpwho.c: Bug#1958 - ftpwho -o oneline has newlines
+ when client is idle.
-2003-02-18 16:01 castaglia
+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.
+ * modules/mod_xfer.c: Minor variable name change; seems to collide
+ with variable used in Tru64 5.1b's headers.
-2003-02-18 10:01 castaglia
+2003-02-18 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2003-02-18 09:55 castaglia
+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
+ modules/mod_ls.c: Bug#1941 - SCO OpenServer 5.0.5
-2003-02-18 00:16 castaglia
+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.
+ * 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-17 17:45 jwm
+2003-02-18 jwm <jwm>
- * configure:
- update
+ * configure: update
-2003-02-17 17:41 jwm
+2003-02-18 jwm <jwm>
- * configure.in:
- typo
+ * configure.in: typo
-2003-02-17 17:28 jwm
+2003-02-18 jwm <jwm>
- * configure:
- update
+ * configure: update
-2003-02-17 17:25 jwm
+2003-02-18 jwm <jwm>
- * configure.in:
- expend as little effort as possible if mod_cap is explicitly
- disabled
+ * configure.in: expend as little effort as possible if mod_cap is
+ explicitly disabled
-2003-02-17 15:41 castaglia
+2003-02-17 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2003-02-17 15:40 castaglia
+2003-02-17 castaglia <castaglia>
- * configure.in:
- Add to output at end of configure --help instructions describing
- LIBS environment variable.
+ * configure.in: Add to output at end of configure --help
+ instructions describing LIBS environment variable.
-2003-02-16 16:56 castaglia
+2003-02-17 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#1956 - Upload transfer rate broken.
+ * NEWS, modules/mod_xfer.c: Bug#1956 - Upload transfer rate broken.
-2003-02-14 07:47 castaglia
+2003-02-14 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c:
- Added FTPS FEAT responses, as per the Draft.
+ * NEWS, contrib/mod_tls.c: Added FTPS FEAT responses, as per the
+ Draft.
-2003-02-12 16:02 castaglia
+2003-02-13 castaglia <castaglia>
- * modules/mod_xfer.c:
- Helps if I get the variable names right...
+ * modules/mod_xfer.c: Helps if I get the variable names right...
-2003-02-12 15:54 castaglia
+2003-02-12 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#1948 - mod_xfer relinquishes privs before chmod takes place.
+ * NEWS, modules/mod_xfer.c: Bug#1948 - mod_xfer relinquishes privs
+ before chmod takes place.
-2003-02-12 11:03 castaglia
+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.
+ * 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 00:46 castaglia
+2003-02-12 castaglia <castaglia>
- * src/netio.c, src/pool.c, src/sets.c, include/ident.h,
- include/timers.h:
- Adding more $Id: ChangeLog,v 1.154 2014-05-15 16:20:23 castaglia Exp $ keywords.
+ * include/ident.h, include/timers.h, src/netio.c, src/pool.c,
+ src/sets.c: Adding more $Id$ keywords.
-2003-02-11 23:34 castaglia
+2003-02-12 castaglia <castaglia>
- * src/feat.c:
- Added $Id: ChangeLog,v 1.154 2014-05-15 16:20:23 castaglia Exp $ keyword.
+ * src/feat.c: Added $Id$ keyword.
-2003-02-10 15:34 castaglia
+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.
+ * 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 10:02 castaglia
+2003-02-10 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#1952 - Umask Bug: Server Not Honoring VirtualHost Umask.
+ * NEWS, src/dirtree.c: Bug#1952 - Umask Bug: Server Not Honoring
+ VirtualHost Umask.
-2003-02-10 08:53 castaglia
+2003-02-10 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2003-02-10 08:51 castaglia
+2003-02-10 castaglia <castaglia>
- * NEWS, aclocal.m4, configure.in, modules/mod_xfer.c:
- Bug#1949 - Compiler warns of 'long double' usage on OSX.
+ * NEWS, aclocal.m4, configure.in, modules/mod_xfer.c: Bug#1949 -
+ Compiler warns of 'long double' usage on OSX.
-2003-02-07 12:46 castaglia
+2003-02-07 castaglia <castaglia>
- * README:
- Add a line to the REAME pointing out the doc/ directory. Not
- that anyone will notice. *sigh*
+ * README: Add a line to the REAME pointing out the doc/ directory.
+ Not that anyone will notice. *sigh*
-2003-02-06 08:40 castaglia
+2003-02-06 castaglia <castaglia>
- * configure:
- Updated configure script.
+ * configure: Updated configure script.
-2003-02-06 08:38 castaglia
+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.
+ modules/mod_auth_unix.c: Bug#1950 - OSX setgrent(3) returns int,
+ causing compiler warning.
-2003-02-05 13:14 castaglia
+2003-02-05 castaglia <castaglia>
- * include/privs.h:
- Oops. I said DEBUG9, but had DEBUG0. Should've been DEBUG9 in
- code. Fixed.
+ * include/privs.h: Oops. I said DEBUG9, but had DEBUG0. Should've
+ been DEBUG9 in code. Fixed.
-2003-02-05 13:11 castaglia
+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).
+ * 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 10:11 castaglia
+2003-02-01 castaglia <castaglia>
- * NEWS, include/glibc-glob.h:
- Bug#1943 - Unable to install on FreeBSD 5.0.
+ * NEWS, include/glibc-glob.h: Bug#1943 - Unable to install on
+ FreeBSD 5.0.
-2003-01-31 12:48 castaglia
+2003-01-31 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2003-01-31 09:28 castaglia
+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.
+ * 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 11:05 jwm
+2003-01-30 jwm <jwm>
- * NEWS, configure, configure.in:
- Bug 1863 - Unable to build under UnixWare 7
+ * NEWS, configure, configure.in: Bug 1863 - Unable to build under
+ UnixWare 7
-2003-01-30 08:15 castaglia
+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*
+ * 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-29 18:11 castaglia
+2003-01-30 castaglia <castaglia>
- * include/version.h:
- Updating version.h for CVS status.
+ * include/version.h: Updating version.h for CVS status.
-2003-01-29 17:25 jwm
+2003-01-30 jwm <jwm>
- * Makefile.in:
- build deps before we get rid of the Makefiles we need to generate
- them :-)
+ * Makefile.in: build deps before we get rid of the Makefiles we need
+ to generate them :-)
-2003-01-29 09:27 flyhmstr
+2003-01-29 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: updated build of configuration.html
-2003-01-29 07:25 castaglia
+2003-01-29 castaglia <castaglia>
- * NEWS, include/version.h, contrib/dist/rpm/proftpd.spec:
- 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.
+ * 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 14:00 castaglia
+2003-01-28 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#1939 - RLimitMemory seems broken.
+ * NEWS, modules/mod_core.c: Bug#1939 - RLimitMemory seems broken.
-2003-01-25 12:51 castaglia
+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!
+ * 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-24 18:38 castaglia
+2003-01-25 castaglia <castaglia>
- * NEWS, src/support.c:
- Bug#1938 - upload to root directory fails.
+ * NEWS, src/support.c: Bug#1938 - upload to root directory fails.
-2003-01-23 22:52 castaglia
+2003-01-24 castaglia <castaglia>
- * contrib/mod_radius.c:
- Fixed misordered parameters to pr_rehash_register_handler() call.
+ * contrib/mod_radius.c: Fixed misordered parameters to
+ pr_rehash_register_handler() call.
-2003-01-23 15:25 castaglia
+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.
+ * 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-22 21:48 castaglia
+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.
+ * 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-21 22:12 castaglia
+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.
+ * 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-20 22:46 castaglia
+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.
+ * 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-19 18:18 jwm
+2003-01-20 jwm <jwm>
- * NEWS, modules/mod_auth.c:
- Bug 1734 - Cygwin - Unable to set uid
+ * NEWS, modules/mod_auth.c: Bug 1734 - Cygwin - Unable to set uid
-2003-01-18 15:28 castaglia
+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.
+ modules/mod_auth.c, src/mkhome.c: Bug#1241 - Additional
+ functionality: HomedirOnDemand. Added as CreateHome directive.
-2003-01-18 11:29 castaglia
+2003-01-18 castaglia <castaglia>
- * configure:
- Updating configure, again. =P
+ * configure: Updating configure, again. =P
-2003-01-18 11:26 castaglia
+2003-01-18 castaglia <castaglia>
- * configure.in:
- Argh. John had it right the first time. My mistake. =P
+ * configure.in: Argh. John had it right the first time. My
+ mistake. =P
-2003-01-18 11:23 castaglia
+2003-01-18 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2003-01-18 11:19 castaglia
+2003-01-18 castaglia <castaglia>
- * configure.in:
- Changing check of UnixWare's libgen a little, to add -lgen to
- LIBS if libgen is present.
+ * configure.in: Changing check of UnixWare's libgen a little, to add
+ -lgen to LIBS if libgen is present.
-2003-01-18 11:09 castaglia
+2003-01-18 castaglia <castaglia>
- * config.h.in:
- Adding HAVE_LIBGEN to config.h, corresponding to added
- AC_CHECK_LIB(gen) in configure.in.
+ * config.h.in: Adding HAVE_LIBGEN to config.h, corresponding to
+ added AC_CHECK_LIB(gen) in configure.in.
-2003-01-17 22:06 castaglia
+2003-01-18 castaglia <castaglia>
- * modules/mod_auth_file.c, src/auth.c:
- Adding proper UID/GID->name translation to mod_auth_file.c
+ * modules/mod_auth_file.c, src/auth.c: Adding proper UID/GID->name
+ translation to mod_auth_file.c
-2003-01-17 18:33 castaglia
+2003-01-18 castaglia <castaglia>
- * NEWS, modules/mod_auth_file.c:
- Bug#1918 - AuthUserFile not works normally.
+ * NEWS, modules/mod_auth_file.c: Bug#1918 - AuthUserFile not works
+ normally.
-2003-01-17 16:13 castaglia
+2003-01-18 castaglia <castaglia>
- * src/fsio.c:
- Some of the FSIO routines are manually returning ENOENT, rather
- than letting errno propagate up properly.
+ * src/fsio.c: Some of the FSIO routines are manually returning
+ ENOENT, rather than letting errno propagate up properly.
-2003-01-17 13:47 castaglia
+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.
+ * 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 08:46 castaglia
+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.
+ 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-16 19:41 castaglia
+2003-01-17 castaglia <castaglia>
- * NEWS, utils/ftptop.1, utils/ftptop.c:
- Adding displaying of transfer rates to ftptop.
+ * NEWS, utils/ftptop.c: Adding displaying of transfer rates to
+ ftptop.
-2003-01-16 00:28 castaglia
+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.
+ * 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-15 22:08 castaglia
+2003-01-16 castaglia <castaglia>
- * src/regexp.c:
- Missing Id keyword.
+ * src/regexp.c: Missing Id keyword.
-2003-01-15 18:04 castaglia
+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-13 21:22 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-13 20:43 castaglia
-
- * NEWS, modules/mod_core.c:
- Bug#1923 - %N magic cookie reports incorrectly.
-
-2003-01-13 19:31 castaglia
+ 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.
- * NEWS, modules/mod_log.c:
- Fixing problem with using %f for DELE logging, as mentioned on
- -user.
+2003-01-14 castaglia <castaglia>
-2003-01-13 11:22 castaglia
+ * include/inet.h, src/data.c, src/inet.c, src/main.c: Adding
+ checking for, and logging of, errors when calling setsockopt(2).
- * NEWS:
- Forgot to mention tcp{Receive,Send}Window fix in NEWS.
+2003-01-14 castaglia <castaglia>
-2003-01-13 11:20 castaglia
+ * NEWS, modules/mod_core.c: Bug#1923 - %N magic cookie reports
+ incorrectly.
- * 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-14 castaglia <castaglia>
-2003-01-13 10:25 castaglia
+ * NEWS, modules/mod_log.c: Fixing problem with using %f for DELE
+ logging, as mentioned on -user.
- * 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.
+2003-01-13 castaglia <castaglia>
- Thanks, John! =)
+ * NEWS: Forgot to mention tcp{Receive,Send}Window fix in NEWS.
-2003-01-12 21:38 castaglia
+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:
+ * 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.
- CFLAGS="-DDEVEL_NO_DAEMON -DDEVEL_NO_FORK -g -pg -a" \
- LIBS="-pg" ./configure ...
+2003-01-13 castaglia <castaglia>
- The resulting daemon will only handle one session. The bb.out
- and gmon.out profiling files will be written to /tmp.
+ * 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-12 21:17 castaglia
+2003-01-13 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * 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-12 20:31 castaglia
+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.
+ * configure: Updating configure script.
-2003-01-12 20:25 castaglia
+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.
+ * 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-12 20:21 jwm
+2003-01-13 castaglia <castaglia>
- * NEWS:
- Add -Wundef and -Wfloat-equal to CFLAGS (Suggested by Steve Grubb
- <linux_4ever at yahoo.com>)
+ * 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-12 20:16 jwm
+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
+ * NEWS: Add -Wundef and -Wfloat-equal to CFLAGS (Suggested by Steve
+ Grubb <linux_4ever at yahoo.com>)
-2003-01-12 20:15 castaglia
+2003-01-13 jwm <jwm>
- * configure.in:
- Add -Wfloat-equal and -Wundef to the warning flags enabled by
- using the --enable-devel configure option.
+ * configure: update with autoconf 2.57; I'm curious if this changes
+ the LFS problems I'm currently working on
-2003-01-12 20:09 jwm
+2003-01-13 castaglia <castaglia>
- * configure:
- update
+ * configure.in: Add -Wfloat-equal and -Wundef to the warning flags
+ enabled by using the --enable-devel configure option.
-2003-01-12 17:27 castaglia
+2003-01-13 jwm <jwm>
- * NEWS, modules/mod_core.c, src/main.c:
- Bug#1910 - ProFTPD hangs on SIGHUP.
+ * configure: update
-2003-01-10 16:26 castaglia
+2003-01-13 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#1919 - <Directory> section already configured for $dir needs
- clarification.
+ * NEWS, modules/mod_core.c, src/main.c: Bug#1910 - ProFTPD hangs on
+ SIGHUP.
-2003-01-08 20:28 jwm
+2003-01-11 castaglia <castaglia>
- * configure:
- update
+ * NEWS, modules/mod_core.c: Bug#1919 - <Directory> section already
+ configured for $dir needs clarification.
-2003-01-08 20:27 jwm
+2003-01-09 jwm <jwm>
- * modules/mod_cap.c:
- EnableCapabilities -> CapabilitiesSet
+ * configure: update
-2003-01-08 20:25 jwm
+2003-01-09 jwm <jwm>
- * README.capabilities, configure.in:
- OS-neutrality
+ * modules/mod_cap.c: EnableCapabilities -> CapabilitiesSet
-2003-01-08 12:44 castaglia
+2003-01-09 jwm <jwm>
- * contrib/mod_radius.c:
- Corrected typo in session accouting variables. Bumped version
- number.
+ * README.capabilities, configure.in: OS-neutrality
-2003-01-07 16:12 castaglia
+2003-01-08 castaglia <castaglia>
- * NEWS, lib/pr-syslog.c:
- Bug#1891 - SGI syslog isn't being written to.
+ * contrib/mod_radius.c: Corrected typo in session accouting
+ variables. Bumped version number.
-2003-01-07 10:45 castaglia
+2003-01-08 castaglia <castaglia>
- * contrib/mod_radius.c:
- Use cmd->arg, rather than cmd->argv[1], from the C_PASS command.
+ * NEWS, lib/pr-syslog.c: Bug#1891 - SGI syslog isn't being written
+ to.
-2003-01-07 09:30 castaglia
+2003-01-07 castaglia <castaglia>
- * modules/mod_core.c, src/timers.c:
- Correcting minor bugs.
+ * contrib/mod_radius.c: Use cmd->arg, rather than cmd->argv[1], from
+ the C_PASS command.
-2003-01-07 09:14 castaglia
+2003-01-07 castaglia <castaglia>
- * configure:
- Updated configure script.
+ * modules/mod_core.c, src/timers.c: Correcting minor bugs.
-2003-01-07 09:05 castaglia
+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).
+ * configure: Updated configure script.
-2003-01-05 09:33 jwm
+2003-01-07 castaglia <castaglia>
- * NEWS:
- style nit
+ * 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-04 20:00 jwm
+2003-01-05 jwm <jwm>
- * NEWS, Make.rules.in:
- Bug 1904 - Tru64 UNIX 4.0D and sstrncpy()
+ * NEWS: style nit
-2003-01-04 19:48 jwm
+2003-01-05 jwm <jwm>
- * modules/glue.sh:
- style
+ * Make.rules.in, NEWS: Bug 1904 - Tru64 UNIX 4.0D and sstrncpy()
-2003-01-04 19:48 jwm
+2003-01-05 jwm <jwm>
- * configure:
- update
+ * modules/glue.sh: style
-2003-01-04 19:47 jwm
+2003-01-05 jwm <jwm>
- * Make.modules.in, 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.
+ * configure: update
- The only noticable change is that the dist/distclean/cvsclean
- targets have been cleaned up:
+2003-01-05 jwm <jwm>
- 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.
+ * 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-04 18:26 jwm
+2003-01-05 jwm <jwm>
- * config.guess, config.sub:
- part of Bug 1826 - Makefiles are a bit icky: updated
- config.{guess,sub}
+ * config.guess, config.sub: part of Bug 1826 - Makefiles are a bit
+ icky: updated config.{guess,sub}
-2003-01-04 18:20 jwm
+2003-01-05 jwm <jwm>
- * Makefile.in:
- Part of #1826 - ftptop doesn't need to link against $(LIBS)
+ * Makefile.in: Part of #1826 - ftptop doesn't need to link against
+ $(LIBS)
-2003-01-04 18:19 jwm
+2003-01-05 jwm <jwm>
- * configure:
- update
+ * configure: update
-2003-01-04 18:18 jwm
+2003-01-05 jwm <jwm>
- * NEWS:
- credit for #1893
+ * NEWS: credit for #1893
-2003-01-04 18:18 jwm
+2003-01-05 jwm <jwm>
- * NEWS, configure.in:
- Bug 1893 - Apple likes to move things
+ * NEWS, configure.in: Bug 1893 - Apple likes to move things
-2003-01-04 17:29 jwm
+2003-01-05 jwm <jwm>
- * modules/mod_auth.c, modules/mod_auth_file.c, modules/mod_core.c,
- modules/mod_ls.c, modules/mod_site.c, lib/glibc-mkstemp.c,
- lib/pr-syslog.c, lib/pwgrent.c, lib/strsep.c, lib/vsnprintf.c,
- utils/ftpcount.c, utils/ftpshut.c, utils/ftptop.c,
- utils/ftpwho.c, utils/misc.c, utils/scoreboard.c:
- nuke trailing whitespace
+ * 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-02 20:31 jwm
+2003-01-03 jwm <jwm>
- * NEWS:
- credit where credit is due
-
-2003-01-02 20:16 jwm
-
- * src/: Makefile.in, utils.c:
- utils.c doesn't seem to be needed anymore...
-
-2003-01-02 20:00 jwm
-
- * NEWS:
- mod_cap announcement
-
-2003-01-02 19:53 jwm
+ * NEWS: credit where credit is due
- * README.capabilities, README.linux-privs,
- contrib/dist/rpm/proftpd.spec:
- mod_linuxprivs -> mod_cap
+2003-01-03 jwm <jwm>
-2003-01-02 19:50 jwm
+ * src/Makefile.in: utils.c doesn't seem to be needed anymore...
- * README.modules:
- mod_linuxprivs is now the official module mod_cap
+2003-01-03 jwm <jwm>
-2003-01-02 19:47 jwm
+ * NEWS: mod_cap announcement
- * 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>
-2003-01-02 19:44 jwm
+ * README.capabilities, contrib/dist/rpm/proftpd.spec: mod_linuxprivs
+ -> mod_cap
- * configure:
- update
+2003-01-03 jwm <jwm>
-2003-01-02 19:43 jwm
+ * README.modules: mod_linuxprivs is now the official module mod_cap
- * 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>
-2003-01-02 19:09 jwm
+ * contrib/dist/rpm/proftpd.spec: we don't have to explicitly include
+ mod_linuxprivs anymore; mod_cap will be included automatically
- * configure:
- update
+2003-01-03 jwm <jwm>
-2003-01-02 19:08 jwm
+ * configure: update
- * config.h.in, configure.in:
- fixing linux/capability.h detection
+2003-01-03 jwm <jwm>
-2003-01-02 19:03 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
- * configure:
- update
+2003-01-03 jwm <jwm>
-2003-01-02 19:02 jwm
+ * configure: update
- * modules/mod_cap.c:
- removing debugging cruft
+2003-01-03 jwm <jwm>
-2003-01-02 19:02 jwm
+ * config.h.in, configure.in: fixing linux/capability.h detection
- * configure.in, modules/mod_cap.c:
- removing last Linux-specific bits of mod_cap
+2003-01-03 jwm <jwm>
-2003-01-02 18:47 jwm
+ * configure: update
- * modules/mod_cap.c:
- getting rid of some linux references
+2003-01-03 jwm <jwm>
-2003-01-02 18:39 jwm
+ * modules/mod_cap.c: removing debugging cruft
- * configure:
- update
+2003-01-03 jwm <jwm>
-2003-01-02 18:36 jwm
+ * configure.in, modules/mod_cap.c: removing last Linux-specific bits
+ of mod_cap
- * configure.in, contrib/README, modules/mod_cap.c:
- mod_linuxprivs -> mod_cap
+2003-01-03 jwm <jwm>
-2003-01-02 18:16 jwm
+ * modules/mod_cap.c: getting rid of some linux references
- * README.linux-privs, configure.in, contrib/mod_linuxprivs.c,
- contrib/mod_linuxprivs.html, 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/libcap.h,
- lib/libcap/include/sys/capability.h:
- Turning mod_linuxprivs into a core module, mod_cap. This is by no
- means complete.
+2003-01-03 jwm <jwm>
-2003-01-02 13:09 castaglia
+ * configure: update
- * 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-03 jwm <jwm>
-2003-01-02 10:53 jwm
+ * configure.in, contrib/README, modules/mod_cap.c: mod_linuxprivs ->
+ mod_cap
- * doc/license.txt:
- update copyright year
+2003-01-03 jwm <jwm>
-2003-01-02 10:27 castaglia
+ * 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.
- * configure:
- Updated configure script.
+2003-01-02 castaglia <castaglia>
-2003-01-02 10:25 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.
- * config.h.in, configure.in, contrib/mod_linuxprivs.c,
- 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,
- src/utils.c:
- More namespace/API changes, for consistency:
+2003-01-02 jwm <jwm>
- 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()
+ * doc/license.txt: update copyright year
- 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.
+2003-01-02 castaglia <castaglia>
- Also, more in the RFC2228 support department:
+ * configure: Updated configure script.
- 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.
+2003-01-02 castaglia <castaglia>
- 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.
+ * 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 09:28 castaglia
+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/proftpd.8,
- src/regexp.c, src/response.c, src/scoreboard.c, src/sets.c,
- src/support.c, src/timers.c, src/utils.c, src/xferlog.5,
- utils/ftpcount.1, utils/ftpcount.c, utils/ftpshut.c,
- utils/ftptop.c, utils/ftpwho.1, 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 08:31 castaglia
-
- * Makefile.in, utils/ftptop.1:
- Adding man page for ftptop.
-
-2003-01-01 16:37 jwm
-
- * contrib/mod_linuxprivs.c:
- the docs say to use the full capability name: CAP_CHOWN
-
-2002-12-31 17:24 castaglia
+ 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.
+ contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c: Bug#1671 - new
+ directive SQLLogFile.
-2002-12-31 16:35 castaglia
+2003-01-01 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#1272 - Requested Addition: DenyFilter by User or DenyFilter
- by Directory.
+ * NEWS, modules/mod_core.c: Bug#1272 - Requested Addition:
+ DenyFilter by User or DenyFilter by Directory.
-2002-12-31 14:35 castaglia
+2002-12-31 castaglia <castaglia>
- * utils/ftptop.c:
- Actually calculate and display the TIME value (duration of
- session, in seconds).
+ * utils/ftptop.c: Actually calculate and display the TIME value
+ (duration of session, in seconds).
-2002-12-31 13:18 castaglia
+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.
+ * 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 12:05 castaglia
+2002-12-31 castaglia <castaglia>
- * NEWS, src/fsio.c:
- Bug#1894 - Double chdir into self-referencing symlink fails with
- "No such file or directory".
+ * NEWS, src/fsio.c: Bug#1894 - Double chdir into self-referencing
+ symlink fails with "No such file or directory".
-2002-12-31 12:00 castaglia
+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-30 16:37 castaglia
-
- * modules/mod_auth.c:
- Yet another missing word ("the").
+ utils/ftptop.c, utils/ftpwho.c, utils/utils.h: Portion of changes
+ requested in Bug#1794.
-2002-12-30 16:35 castaglia
+2002-12-31 castaglia <castaglia>
- * modules/mod_auth.c:
- Missing "of" in message string (noted by Michael).
+ * modules/mod_auth.c: Yet another missing word ("the").
-2002-12-28 12:52 castaglia
+2002-12-31 castaglia <castaglia>
- * contrib/mod_linuxprivs.html:
- Forgot to add documentation for the mod_linuxprivs directives
- before releasing 1.2.8rc1. With this file, the
- README.linux-privs doc can probably be retired.
+ * modules/mod_auth.c: Missing "of" in message string (noted by
+ Michael).
-2002-12-28 12:51 castaglia
+2002-12-28 castaglia <castaglia>
- * include/version.h:
- Updating version for CVS.
+ * include/version.h: Updating version for CVS.
-2002-12-28 10:23 castaglia
+2002-12-28 castaglia <castaglia>
- * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec,
- include/version.h:
- Preparing for 1.2.8rc1 release.
+ * ChangeLog, NEWS, contrib/dist/rpm/proftpd.spec, include/version.h:
+ Preparing for 1.2.8rc1 release.
-2002-12-27 09:23 castaglia
+2002-12-27 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-12-27 09:21 castaglia
+2002-12-27 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#1906 - Add description strings to AC_DEFINE
+ * NEWS, configure.in: Bug#1906 - Add description strings to
+ AC_DEFINE
-2002-12-27 08:27 jwm
+2002-12-27 jwm <jwm>
- * NEWS:
- style, date formatting
+ * NEWS: style, date formatting
-2002-12-27 08:21 jwm
+2002-12-27 jwm <jwm>
- * src/: auth.c, data.c, dirtree.c, inet.c, log.c, main.c,
- modules.c, pool.c, support.c, timers.c:
- style
+ * 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 08:13 jwm
+2002-12-27 jwm <jwm>
- * NEWS:
- whitespace cleanup
+ * NEWS: whitespace cleanup
-2002-12-27 08:12 jwm
+2002-12-27 jwm <jwm>
- * configure:
- update
+ * configure: update
-2002-12-27 08:08 jwm
+2002-12-27 jwm <jwm>
- * NEWS, configure.in:
- Bug 1863 - Unable to build under UnixWare 7
+ * NEWS, configure.in: Bug 1863 - Unable to build under UnixWare 7
-2002-12-27 08:04 jwm
+2002-12-27 jwm <jwm>
- * Makefile.in, NEWS:
- Bug 1903 - ftpwho depends on snprintf but doesn't link in
- lib/libsupp.a
+ * Makefile.in, NEWS: Bug 1903 - ftpwho depends on snprintf but
+ doesn't link in lib/libsupp.a
-2002-12-27 07:47 jwm
+2002-12-27 jwm <jwm>
- * NEWS, src/timers.c, utils/ftptop.c:
- Bug 1905 - AIX needs "config.h" included before *anything* else.
+ * NEWS, src/timers.c, utils/ftptop.c: Bug 1905 - AIX needs
+ "config.h" included before *anything* else.
-2002-12-26 18:36 castaglia
+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.
+ * 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-26 17:25 jwm
+2002-12-27 jwm <jwm>
- * contrib/README:
- cruft removal, cleanup, style, grammar
+ * contrib/README: cruft removal, cleanup, style, grammar
-2002-12-26 17:05 castaglia
+2002-12-27 castaglia <castaglia>
- * NEWS, contrib/mod_linuxprivs.c:
- Bug#1888: Increase mod_linuxprivs configurability.
+ * NEWS: Bug#1888: Increase mod_linuxprivs configurability.
-2002-12-26 16:52 castaglia
+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).
+ * 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 14:26 jwm
+2002-12-26 jwm <jwm>
- * modules/mod_auth_file.c:
- silence compiler warning about crypt()
+ * modules/mod_auth_file.c: silence compiler warning about crypt()
-2002-12-26 12:18 castaglia
+2002-12-26 castaglia <castaglia>
- * NEWS, utils/ftpwho.c:
- Bug#1900 - ftpwho's output on uploads.
+ * NEWS, utils/ftpwho.c: Bug#1900 - ftpwho's output on uploads.
-2002-12-26 11:45 castaglia
+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.
+ * 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 12:20 castaglia
+2002-12-20 castaglia <castaglia>
- * modules/: mod_auth_file.c, mod_core.c, mod_xfer.c:
- Style cleanups.
+ * modules/mod_auth_file.c, modules/mod_core.c, modules/mod_xfer.c:
+ Style cleanups.
-2002-12-19 13:53 castaglia
+2002-12-19 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-12-19 13:52 castaglia
+2002-12-19 castaglia <castaglia>
- * modules/mod_auth_file.c:
- Putting the copyright in the project's name.
+ * modules/mod_auth_file.c: Putting the copyright in the project's
+ name.
-2002-12-19 13:47 castaglia
+2002-12-19 castaglia <castaglia>
- * NEWS:
- Forgot to update NEWS with description of Bug#1837/mod_auth_file
- addition.
+ * NEWS: Forgot to update NEWS with description of
+ Bug#1837/mod_auth_file addition.
-2002-12-19 13:45 castaglia
+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, modules/mod_pam.c, modules/mod_unixpw.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.
+ 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 13:20 castaglia
+2002-12-19 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql_mysql.c, mod_sql_postgres.c,
- mod_tls.c:
- Cleaning up some warnings, seen under --enable-devel, in some
- contrib modules. Pointed out by Michael.
+ * 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.
- 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>
-2002-12-19 13:02 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.
- * 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:
+2002-12-19 castaglia <castaglia>
- <Directory blah>
- </Directory>
+ * contrib/mod_tls.c: Forgot a parameter to tls_log().
- or
+2002-12-19 castaglia <castaglia>
- <Global>
- </Global>
+ * contrib/mod_tls.c: Change handling of PROT in tls_prot() slightly.
- 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.
+2002-12-19 castaglia <castaglia>
- This patch checks for such empty contexts (in end_sub_config()),
- and removes them from the configuration tree.
+ * 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 10:32 castaglia
+2002-12-19 castaglia <castaglia>
- * contrib/mod_tls.c:
- Forgot a parameter to tls_log().
+ * 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 10:26 castaglia
+2002-12-19 castaglia <castaglia>
- * contrib/mod_tls.c:
- Change handling of PROT in tls_prot() slightly.
+ * modules/mod_ls.c, src/dirtree.c, src/main.c: Minor
+ style/formatting changes.
-2002-12-19 09:51 castaglia
+2002-12-18 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.
+ * configure: Updating configure script.
-2002-12-19 09:45 castaglia
+2002-12-18 castaglia <castaglia>
- * contrib/mod_tls.c:
- Changed mod_tls' handling of AUTH command to allow other RFC2228
- modules a change at processing that command.
+ * NEWS, config.h.in, configure.in: Bug#1667 - Integrate ProFTPD with
+ C2/SIA on Tru64 Unix.
-2002-12-19 09:28 castaglia
+2002-12-18 castaglia <castaglia>
- * modules/mod_ls.c, src/dirtree.c, src/main.c:
- Minor style/formatting changes.
+ * contrib/mod_radius.c: Fixing several bugs in mod_radius'
+ accounting code.
-2002-12-18 12:12 castaglia
-
- * configure:
- Updating configure script.
-
-2002-12-18 12:09 castaglia
-
- * NEWS, config.h.in, configure.in, modules/mod_unixpw.c:
- Bug#1667 - Integrate ProFTPD with C2/SIA on Tru64 Unix.
-
-2002-12-18 10:27 castaglia
-
- * contrib/: mod_radius.c, mod_radius.html:
- Fixing several bugs in mod_radius' accounting code.
-
-2002-12-17 19:03 jwm
-
- * src/proftpd.8: forgot to update the man page for Bug 1885
-
-2002-12-17 18:59 jwm
+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.
+ -n/--nodaemon flag. Useful for running proftpd from inittab or with
+ daemontools.
-2002-12-17 15:11 castaglia
+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.
+ * 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 08:06 castaglia
+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.
+ * 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).
- Change the debug level for privs changes to 9 (was 8).
+2002-12-17 jwm <jwm>
-2002-12-17 07:18 jwm
-
- * include/: conf.h, data.h, default_paths.h, dirtree.h, ftp.h,
- ident.h, inet.h, libsupp.h, modules.h, netio.h, options.h,
- privs.h, proftpd.h, sets.h: nuke trailing whitespace
+ * 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-16 17:52 castaglia
+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.
+ * 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-16 17:12 castaglia
+2002-12-17 castaglia <castaglia>
- * modules/mod_core.c:
- Oops. Not quite ready to commit these changes yet.
+ * modules/mod_core.c: Oops. Not quite ready to commit these changes
+ yet.
-2002-12-16 17:06 castaglia
+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).
+ 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 11:07 castaglia
+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.
+ * 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 10:45 castaglia
+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*
+ * 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 10:38 castaglia
+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.
+ * 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 07:15 jwm
+2002-12-16 jwm <jwm>
* src/main.c: er, yeah. pointer and all that.
-2002-12-16 07:12 jwm
+2002-12-16 jwm <jwm>
* src/main.c: cleanup
-2002-12-15 10:08 jwm
+2002-12-15 jwm <jwm>
* configure: updated configure
-2002-12-15 10:05 jwm
+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 at vsu.ru> for the
- patch.
+ - socklen_t patch. Thanks to Andy Igoshin <ai at vsu.ru> for the patch.
-2002-12-13 11:33 castaglia
+2002-12-13 castaglia <castaglia>
- * src/: dirtree.c, fsio.c, inet.c, 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).
+ * 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 11:13 castaglia
+2002-12-13 castaglia <castaglia>
- * utils/ftpwho.c:
- Correcting placement of newline (from Bug#1886).
+ * utils/ftpwho.c: Correcting placement of newline (from Bug#1886).
-2002-12-13 09:25 castaglia
+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.
+ 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 11:57 castaglia
+2002-12-12 castaglia <castaglia>
- * NEWS, contrib/mod_radius.c:
- Bug#1875 - same radius packet id for start- and stop-accounting
- record.
+ * NEWS, contrib/mod_radius.c: Bug#1875 - same radius packet id for
+ start- and stop-accounting record.
-2002-12-12 11:56 jwm
+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 10:17 castaglia
-
- * NEWS, utils/ftpwho.c:
- Bug#1886 - Ftpwho uses too many lines when authenticating.
+ use of an 80-column screen
-2002-12-12 10:01 castaglia
+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.
+ * NEWS, utils/ftpwho.c: Bug#1886 - Ftpwho uses too many lines when
+ authenticating.
- 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.:
+2002-12-12 castaglia <castaglia>
- CFLAGS="-DPR_TUNABLE_GLOBBING_MAX=2" ./configure ...
+ * 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 09:05 castaglia
+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).
+ * 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 08:24 castaglia
+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).
+ * 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 07:41 jwm
+2002-12-12 jwm <jwm>
* modules/mod_auth.c: typo Noticed by: Mihai RUSU <dizzy at roedu.net>
-2002-12-11 15:35 castaglia
+2002-12-11 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#1881 - Bug in Function MaxClients.
+ * NEWS, modules/mod_auth.c: Bug#1881 - Bug in Function MaxClients.
-2002-12-11 15:33 castaglia
+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.
+ * 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 15:28 castaglia
+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_.
+ modules/mod_core.c, modules/mod_xfer.c, src/dirtree.c: Forgot to
+ prefix the expression functions with pr_.
-2002-12-11 15:17 castaglia
+2002-12-11 castaglia <castaglia>
- * NEWS, modules/mod_site.c:
- Bug#1882 - SITE chmod 777 file<space>name.
+ * NEWS, modules/mod_site.c: Bug#1882 - SITE chmod 777
+ file<space>name.
-2002-12-11 08:49 castaglia
+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).
+ 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-10 17:09 jwm
+2002-12-11 jwm <jwm>
- * doc/: Configuration.html, Configuration.sgml: updated docs
+ * doc/Configuration.html, doc/Configuration.sgml: updated docs
-2002-12-10 13:15 castaglia
+2002-12-10 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-12-10 13:12 castaglia
+2002-12-10 castaglia <castaglia>
- * configure.in:
- Forgot a comma.
+ * configure.in: Forgot a comma.
-2002-12-10 13:05 castaglia
+2002-12-10 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-12-10 13:01 castaglia
+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_unixpw.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 10:14 castaglia
-
- * configure:
- Updating configure script.
-
-2002-12-10 07:16 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 06:39 jwm
+ 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 06:38 jwm
+2002-12-09 jwm <jwm>
* lib/vsnprintf.c: style
-2002-12-09 06:37 jwm
+2002-12-09 jwm <jwm>
* lib/vsnprintf.c: need ctype.h for is*()
-2002-12-09 06:36 jwm
+2002-12-09 jwm <jwm>
* lib/pr_fnmatch_loop.c: need to include ctype.h for is*()
-2002-12-08 08:57 jwm
+2002-12-07 jwm <jwm>
- * modules/mod_unixpw.c: style
+ * NEWS: credit where credit is due
-2002-12-07 14:09 jwm
+2002-12-07 jwm <jwm>
- * NEWS: credit where credit is due
+ * 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 14:02 jwm
+2002-12-07 jwm <jwm>
- * src/dirtree.c, src/main.c, modules/mod_auth.c,
- modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c,
- modules/mod_pam.c, modules/mod_site.c, modules/mod_unixpw.c,
- src/auth.c, src/inet.c, src/modules.c, src/pool.c, src/sets.c,
- src/support.c, src/utils.c: style
+ * modules/mod_auth.c, modules/mod_core.c, src/dirtree.c, src/main.c:
+ style
-2002-12-07 13:57 jwm
+2002-12-07 jwm <jwm>
* NEWS, acconfig.h, config.h.in, configure.in, include/data.h,
- src/data.c: AIX sendfile support
+ src/data.c: AIX sendfile support
-2002-12-07 13:50 jwm
+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
+ * 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 13:45 jwm
+2002-12-07 jwm <jwm>
- * src/: auth.c, bindings.c, data.c, dirtree.c, feat.c, fsio.c,
- ident.c, inet.c, log.c, main.c, modules.c, netio.c, pool.c,
- regexp.c, scoreboard.c, sets.c, support.c, timers.c, utils.c:
- style
+ * 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 13:43 jwm
+2002-12-07 jwm <jwm>
- * modules/: mod_auth.c, mod_core.c, mod_log.c, mod_ls.c, mod_pam.c,
- mod_site.c, mod_unixpw.c, mod_xfer.c: nuke trailing whitespace,
- style
+ * 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 13:25 jwm
+2002-12-07 jwm <jwm>
* src/bindings.c: trailing whitespace
-2002-12-07 13:21 castaglia
+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.
+ * modules/mod_xfer.c: Inadvertently changed the default handling of
+ AllowRetrieveRestart in the get_param_int() -> get_param_ptr()
+ changes.
-2002-12-07 13:12 castaglia
+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.
+ modules/mod_log.c, src/log.c, src/main.c: Bug#1515 - Enable mod_log
+ to log into default log / syslog.
-2002-12-07 08:29 jwm
+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.
+ 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-06 18:38 castaglia
+2002-12-07 castaglia <castaglia>
- * src/dirtree.c:
- Removing a get_param_int() that crept back in (probably from the
- Bindings patch).
+ * src/dirtree.c: Removing a get_param_int() that crept back in
+ (probably from the Bindings patch).
-2002-12-06 16:48 castaglia
+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.
+ 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 15:45 castaglia
+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.
+ modules/mod_core.c, modules/mod_ls.c, modules/mod_xfer.c,
+ src/data.c, src/main.c: More RFC2228 support.
-2002-12-06 15:13 castaglia
+2002-12-06 castaglia <castaglia>
- * modules/: mod_core.c, mod_xfer.c:
- Provide configuration handlers that remark on deprecated
- directives, rather than simply having those directives removed
- (for now).
+ * 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 15:08 castaglia
+2002-12-06 castaglia <castaglia>
- * NEWS, modules/mod_ls.c:
- Bug#1789 - Add ability to block recursive directory listings.
+ * NEWS, modules/mod_ls.c: Bug#1789 - Add ability to block recursive
+ directory listings.
-2002-12-06 13:43 jwm
+2002-12-06 jwm <jwm>
- * include/proftpd.h:
- tabs -> spaces
+ * include/proftpd.h: tabs -> spaces
-2002-12-06 13:37 castaglia
+2002-12-06 castaglia <castaglia>
- * src/fsio.c:
- *sigh* One of these days I'll get this correct. =P
+ * src/fsio.c: *sigh* One of these days I'll get this correct. =P
-2002-12-06 13:32 castaglia
+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().
+ * src/fsio.c: The FS API patch had some of the older, broken code
+ w.r.t BSD and statfs().
-2002-12-06 13:25 castaglia
+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.
+ utils/ftpwho.c, utils/utils.h: Committing TransferRate patch to CVS.
-2002-12-06 13:04 castaglia
+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...
+ 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 07:49 castaglia
+2002-12-06 castaglia <castaglia>
- * contrib/mod_sql.c:
- Removed erroneous/extraneous #include "fs.h"
+ * contrib/mod_sql.c: Removed erroneous/extraneous #include "fs.h"
-2002-12-05 18:41 jwm
+2002-12-06 jwm <jwm>
- * lib/pwgrent.c:
- fix the build (PR_LOG_ERR isn't defined here because this is in
- libsupp)
+ * lib/pwgrent.c: fix the build (PR_LOG_ERR isn't defined here
+ because this is in libsupp)
-2002-12-05 17:03 castaglia
+2002-12-06 castaglia <castaglia>
- * modules/mod_log.c:
- Use C_* command macros.
+ * modules/mod_log.c: Use C_* command macros.
-2002-12-05 16:50 castaglia
+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.
+ * NEWS, modules/mod_log.c: Bug#1605 - MKD and RMD do not log
+ filepaths with %f or %F option in ExtendedLog.
-2002-12-05 15:38 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#1403 - per-server system logs via ServerLog directive.
+ * NEWS, modules/mod_log.c: Bug#1403 - per-server system logs via
+ ServerLog directive.
-2002-12-05 15:16 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, contrib/mod_rewrite.c, contrib/mod_rewrite.html:
- Adding mod_rewrite to the mix.
+ * NEWS, contrib/mod_rewrite.c: Adding mod_rewrite to the mix.
-2002-12-05 14:53 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#1205 - Add debug option to SystemLog.
+ * NEWS, modules/mod_core.c: Bug#1205 - Add debug option to
+ SystemLog.
-2002-12-05 14:47 castaglia
+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.
+ src/main.c, src/modules.c: Bug#1788 - Add ability to configure auth
+ module checking order.
-2002-12-05 14:16 castaglia
+2002-12-05 castaglia <castaglia>
- * configure:
- Updated configure script.
+ * configure: Updated configure script.
-2002-12-05 14:13 castaglia
+2002-12-05 castaglia <castaglia>
- * configure.in:
- Update configure.in to use AC_HELP_STRING macro for
- pretty-printing of --enable and --with options.
+ * configure.in: Update configure.in to use AC_HELP_STRING macro for
+ pretty-printing of --enable and --with options.
-2002-12-05 13:57 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS:
- Adding thanks (well deserved!) to Peter Runestig for his work on
- mod_tls.
+ * NEWS: Adding thanks (well deserved!) to Peter Runestig for his
+ work on mod_tls.
-2002-12-05 13:46 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, contrib/mod_tls.c, contrib/mod_tls.html,
- doc/rfc/draft-murray-auth-ftp-ssl-10.txt:
- Bug#1712 - TLS support.
+ * NEWS, contrib/mod_tls.c: Bug#1712 - TLS support.
-2002-12-05 13:16 castaglia
+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/fs.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/fs.c,
- src/fsio.c, src/main.c, src/netio.c, src/support.c,
- utils/Makefile.in:
- Bug#1653 - Complete the FS API abstraction implementation.
+ 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 12:53 castaglia
+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.
+ * 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 12:37 castaglia
+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.
+ src/modules.c, src/support.c: Bug#1833 - Add ability to have add'l
+ module initialization callback.
-2002-12-05 12:30 castaglia
+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.
+ 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 12:18 castaglia
+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, modules/mod_pam.c, modules/mod_unixpw.c,
- src/auth.c:
- Bug#1825 - AUTH macro namespace cleanup.
-
-2002-12-05 12:08 castaglia
-
- * contrib/mod_linuxprivs.c, 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_pam.c, modules/mod_unixpw.c,
- modules/mod_xfer.c, src/main.c:
- Making sure that all LOG_* macros have PR_ prefix, for
- consistency.
+ 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 11:48 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, src/dirtree.c:
- Bug#1683 - Handling of VirtualHosts on startup.
+ * 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 11:20 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#1482 - Add new %U meta to LogFormat, for logging original
- username.
+ * NEWS, src/dirtree.c: Bug#1683 - Handling of VirtualHosts on
+ startup.
-2002-12-05 11:15 castaglia
+2002-12-05 castaglia <castaglia>
- * configure:
- Updated configure script.
+ * NEWS, modules/mod_log.c: Bug#1482 - Add new %U meta to LogFormat,
+ for logging original username.
-2002-12-05 11:11 castaglia
+2002-12-05 castaglia <castaglia>
- * NEWS, config.h.in, configure.in, modules/mod_pam.c,
- modules/mod_unixpw.c:
- Bug#1597 - Problems with HP-UX 10/11 trusted systems, mod_pam,
- and mod_unixpw.
+ * configure: Updated configure script.
-2002-12-05 11:03 castaglia
+2002-12-05 castaglia <castaglia>
- * include/version.h:
- Now that 1.2.7 has been released, update the version info in CVS.
+ * NEWS, config.h.in, configure.in: Bug#1597 - Problems with HP-UX
+ 10/11 trusted systems, mod_pam, and mod_unixpw.
-2002-12-05 10:47 castaglia
+2002-12-05 castaglia <castaglia>
- * doc/mod_sample.c:
- Correcting typos.
+ * include/version.h: Now that 1.2.7 has been released, update the
+ version info in CVS.
-2002-12-05 08:08 castaglia
+2002-12-05 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec:
- Updating version for 1.2.7 release.
+ * doc/mod_sample.c: Correcting typos.
-2002-12-05 07:30 castaglia
+2002-12-05 castaglia <castaglia>
- * ChangeLog, NEWS, include/version.h:
- Preparing for release of 1.2.7.
+ * contrib/dist/rpm/proftpd.spec: Updating version for 1.2.7 release.
-2002-12-04 11:14 castaglia
+2002-12-05 castaglia <castaglia>
- * modules/mod_auth.c:
- Patching to fix off-by-one bug in MaxHostsPerUser directive
- handling.
+ * ChangeLog, NEWS, include/version.h: Preparing for release of
+ 1.2.7.
-2002-12-04 07:26 castaglia
+2002-12-04 castaglia <castaglia>
- * NEWS, include/support.h, modules/mod_auth.c, src/support.c:
- Adding memory scrubber for memset() issue mentioned here:
+ * modules/mod_auth.c: Patching to fix off-by-one bug in
+ MaxHostsPerUser directive handling.
- http://online.securityfocus.com/archive/1/298598
+2002-12-04 castaglia <castaglia>
-2002-12-03 07:57 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
- * NEWS, utils/ftpcount.c:
- Bug#1868 - Wrong cmdopts in ftpcount.c
+2002-12-03 castaglia <castaglia>
-2002-12-02 13:57 jwm
+ * NEWS, utils/ftpcount.c: Bug#1868 - Wrong cmdopts in ftpcount.c
- * contrib/dist/rpm/.cvsignore: this shouldn't be ignoring
- proftpd.spec anymore
+2002-12-02 castaglia <castaglia>
-2002-12-02 10:29 castaglia
+ * NEWS, utils/ftpwho.c: Bug#1861 - 'ftpwho -v -o oneline' print all
+ connections in one line.
- * NEWS, utils/ftpwho.c:
- Bug#1861 - 'ftpwho -v -o oneline' print all connections in one
- line.
+2002-12-02 castaglia <castaglia>
-2002-12-02 10:18 castaglia
+ * src/dirtree.c: Minor preprocessor changes.
- * src/dirtree.c:
- Minor preprocessor changes.
+2002-12-02 castaglia <castaglia>
-2002-12-02 10:16 castaglia
+ * src/dirtree.c: Removed unused variable.
- * src/dirtree.c:
- Removed unused variable.
+2002-12-02 castaglia <castaglia>
-2002-12-02 09:04 castaglia
+ * NEWS, modules/mod_xfer.c, src/pool.c: Bug#1846 - File overwrites
+ fail. Thanks to Sergei Rozinov for tracking down this bug.
- * 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>
-2002-11-26 10:54 castaglia
+ * src/support.c: Minor style change: use macros for FTP commands.
- * src/support.c:
- Minor style change: use macros for FTP commands.
+2002-11-26 castaglia <castaglia>
-2002-11-26 09:28 castaglia
+ * NEWS, lib/pr-syslog.c: Bug#1853 - SyslogFacility: unable to open
+ syslog.
- * NEWS, lib/pr-syslog.c:
- Bug#1853 - SyslogFacility: unable to open syslog.
+2002-11-25 castaglia <castaglia>
-2002-11-25 13:28 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.
- * 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>
-2002-11-25 13:12 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.
- * 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>
-2002-11-25 13:02 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.
- * 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>
-2002-11-25 10:28 castaglia
+ * include/dirtree.h: Removing unused struct members.
- * include/dirtree.h:
- Removing unused struct members.
-
-2002-11-25 09:33 castaglia
+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 09:22 castaglia
+ 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.
- * NEWS, modules/mod_ls.c:
- Bug#1856 - TimesGMT acts like default is 'off'.
+2002-11-25 castaglia <castaglia>
-2002-11-25 09:08 castaglia
+ * NEWS, modules/mod_ls.c: Bug#1856 - TimesGMT acts like default is
+ 'off'.
- * modules/mod_xfer.c:
- %lu crept back in when PR_LU is needed...
+2002-11-25 castaglia <castaglia>
-2002-11-25 08:18 castaglia
+ * modules/mod_xfer.c: %lu crept back in when PR_LU is needed...
- * NEWS, modules/mod_site.c:
- Bug#1852 - Proftpd gets signal 11 on "quote site".
+2002-11-25 castaglia <castaglia>
-2002-11-25 08:04 castaglia
+ * NEWS, modules/mod_site.c: Bug#1852 - Proftpd gets signal 11 on
+ "quote site".
- * doc/mod_sample.c, include/fs.h, 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>
-2002-11-25 07:52 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...
- * modules/mod_xfer.c:
- Datatype overflow.
+2002-11-25 castaglia <castaglia>
-2002-11-23 10:39 jwm
+ * modules/mod_xfer.c: Datatype overflow.
- * 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).
+2002-11-23 jwm <jwm>
- 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.
+ * 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-22 21:20 jwm
+2002-11-23 jwm <jwm>
- * NEWS, contrib/dist/rpm/proftpd.init.d: Bug 1680 - Error in
- startup script
+ * NEWS, contrib/dist/rpm/proftpd.init.d: Bug 1680 - Error in startup
+ script
-2002-11-22 11:21 jwm
+2002-11-22 jwm <jwm>
* configure: updated configure
-2002-11-22 11:19 jwm
+2002-11-22 jwm <jwm>
- * config.h.in, configure.in, NEWS, src/support.c: Bug 1839 -
- undefined reference to `get_fs_size'
+ * NEWS, config.h.in, configure.in, src/support.c: Bug 1839 -
+ undefined reference to `get_fs_size'
-2002-11-21 16:19 castaglia
+2002-11-22 castaglia <castaglia>
- * NEWS, utils/ftptop.c:
- Bug#1848 - undefined reference to `halfdelay'.
+ * NEWS, utils/ftptop.c: Bug#1848 - undefined reference to
+ `halfdelay'.
-2002-11-21 08:20 castaglia
+2002-11-21 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#1812 - Double logging lines for ExtendedLog.
+ * NEWS, modules/mod_log.c: Bug#1812 - Double logging lines for
+ ExtendedLog.
-2002-11-19 09:57 castaglia
+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 12:03 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).
+ src/dirtree.c: Bug#1838 - Since 1.2.6: in add_useralias() setting
+ flag CF_MERGEDOWN breaks aliased anonymous functionality.
-2002-11-18 09:15 castaglia
+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().
+ * 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 08:15 castaglia
+2002-11-18 castaglia <castaglia>
- * NEWS, modules/mod_core.c:
- Bug#1844 - DisplayLogin %y macro is off by 1.
+ * modules/mod_auth.c: Handling of ShowSymlinks in this module still
+ used get_param_int() rather than get_param_ptr().
-2002-11-18 08:02 castaglia
+2002-11-18 castaglia <castaglia>
- * NEWS, include/pr-syslog.h:
- Bug#1840 - Problem with syslog default destination on HP-UX.
+ * NEWS, modules/mod_core.c: Bug#1844 - DisplayLogin %y macro is off
+ by 1.
-2002-11-16 17:15 jwm
+2002-11-18 castaglia <castaglia>
- * utils/.cvsignore:
- ignore ftptop
+ * NEWS, include/pr-syslog.h: Bug#1840 - Problem with syslog default
+ destination on HP-UX.
-2002-11-16 17:14 jwm
-
- * lib/pr-syslog.c:
- cast the return value from getpid() to silence a compiler warning
- under solaris
-
-2002-11-15 09:09 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-17 jwm <jwm>
-2002-11-15 08:45 castaglia
+ * utils/.cvsignore: ignore ftptop
- * ChangeLog, NEWS, include/version.h:
- Ramping up for 1.2.7rc3 release.
+2002-11-17 jwm <jwm>
-2002-11-15 08:37 castaglia
+ * lib/pr-syslog.c: cast the return value from getpid() to silence a
+ compiler warning under solaris
- * modules/mod_pam.c:
- More timing/pam_end() fixes specific to the Solaris flavor of
- PAM.
+2002-11-15 jwm <jwm>
-2002-11-15 08:11 castaglia
+ * contrib/dist/rpm/proftpd.spec: d'oh - /etc/logrotate.d/ should
+ exist in $RPM_BUILD_ROOT before I try to put stuff in it...
- * utils/ftptop.c:
- Portability/compiler warning hack. *sigh*
+2002-11-15 castaglia <castaglia>
-2002-11-15 08:03 castaglia
+ * ChangeLog, NEWS, include/version.h: Ramping up for 1.2.7rc3
+ release.
- * modules/mod_xfer.c:
- Necessary typecasts to avoid compiler warnings (seen on Solaris
- 2.8).
+2002-11-15 castaglia <castaglia>
-2002-11-15 07:46 castaglia
+ * utils/ftptop.c: Portability/compiler warning hack. *sigh*
- * modules/mod_log.c:
- Style cleanup.
+2002-11-15 castaglia <castaglia>
-2002-11-14 09:57 castaglia
+ * modules/mod_xfer.c: Necessary typecasts to avoid compiler warnings
+ (seen on Solaris 2.8).
- * modules/mod_auth.c:
- More hassle/work with MaxClientsPerHost (see Bug#1830, Bug#1831).
+2002-11-15 castaglia <castaglia>
-2002-11-14 09:09 castaglia
+ * modules/mod_log.c: Style cleanup.
- * contrib/ftpasswd:
- Forgot to increment the displayed $version.
+2002-11-14 castaglia <castaglia>
-2002-11-14 08:56 castaglia
+ * modules/mod_auth.c: More hassle/work with MaxClientsPerHost (see
+ Bug#1830, Bug#1831).
- * NEWS:
- Attributing proper credit. =)
+2002-11-14 castaglia <castaglia>
-2002-11-14 08:55 castaglia
+ * contrib/ftpasswd: Forgot to increment the displayed $version.
- * contrib/: ftpasswd, ftpasswd.html:
- Minor doc change.
+2002-11-14 castaglia <castaglia>
-2002-11-14 08:53 castaglia
+ * NEWS: Attributing proper credit. =)
- * NEWS, contrib/ftpasswd, contrib/ftpasswd.html:
- Adding/changing ftpasswd error exit values.
+2002-11-14 castaglia <castaglia>
-2002-11-14 06:49 jwm
+ * contrib/ftpasswd: Minor doc change.
- * 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-14 castaglia <castaglia>
-2002-11-13 13:15 castaglia
+ * NEWS, contrib/ftpasswd: Adding/changing ftpasswd error exit
+ values.
- * NEWS, modules/mod_auth.c:
- Bug#1830 - MaxClientsPerHost (small) Bug.
+2002-11-14 jwm <jwm>
-2002-11-13 08:32 castaglia
+ * 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)
- * NEWS, modules/mod_xfer.c:
- Bug#1810 - Wrong permissions assigned to uploaded file
+2002-11-13 castaglia <castaglia>
-2002-11-13 06:55 castaglia
+ * NEWS, modules/mod_auth.c: Bug#1830 - MaxClientsPerHost (small)
+ Bug.
- * NEWS, utils/ftpwho.c:
- Bug#1815 - Patch to add class information to ftpwho (with verbose
- on)
+2002-11-13 castaglia <castaglia>
-2002-11-13 06:37 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#1810 - Wrong permissions assigned to
+ uploaded file
- * src/dirtree.c:
- Add debugging output mentioning the configuration file being
- parsed at debug level 2.
+2002-11-13 castaglia <castaglia>
-2002-11-12 14:27 castaglia
+ * NEWS, utils/ftpwho.c: Bug#1815 - Patch to add class information to
+ ftpwho (with verbose on)
- * modules/: mod_auth.c, mod_core.c, mod_xfer.c:
- Fix handling/lookup of Timeouts.
+2002-11-13 castaglia <castaglia>
-2002-11-12 08:42 castaglia
+ * src/dirtree.c: Add debugging output mentioning the configuration
+ file being parsed at debug level 2.
- * configure:
- Updating configure script.
+2002-11-12 castaglia <castaglia>
-2002-11-12 08:38 castaglia
+ * modules/mod_auth.c, modules/mod_core.c, modules/mod_xfer.c: Fix
+ handling/lookup of Timeouts.
- * configure.in:
- Minor whitespace quibble.
+2002-11-12 castaglia <castaglia>
-2002-11-12 08:28 jwm
+ * configure: Updating configure script.
- * .cvsignore:
- ignore ftptop, autom4te.cache
+2002-11-12 castaglia <castaglia>
-2002-11-12 08:28 jwm
+ * configure.in: Minor whitespace quibble.
- * configure:
- updated configure
+2002-11-12 jwm <jwm>
-2002-11-12 08:23 jwm
+ * .cvsignore: ignore ftptop, autom4te.cache
- * Make.rules.in, configure.in:
- oops, accidentally reverted TJ's changes
+2002-11-12 jwm <jwm>
-2002-11-12 08:19 jwm
+ * configure: updated configure
- * Makefile.in, Make.rules.in, NEWS, configure.in:
- Only link ftptop with lib{n,}curses - it isn't needed in any
- other binaries
+2002-11-12 jwm <jwm>
-2002-11-12 08:19 castaglia
+ * Make.rules.in, configure.in: oops, accidentally reverted TJ's
+ changes
- * configure:
- Updating the configure script.
+2002-11-12 jwm <jwm>
-2002-11-12 08:10 castaglia
+ * Make.rules.in, Makefile.in, NEWS, configure.in: Only link ftptop
+ with lib{n,}curses - it isn't needed in any other binaries
- * Make.rules.in, NEWS, configure.in:
- Bug#1703 - mod_sql_mysql compile error.
+2002-11-12 castaglia <castaglia>
-2002-11-12 07:24 castaglia
+ * configure: Updating the configure script.
- * modules/mod_core.c, modules/mod_xfer.c, NEWS:
- Bug#1760 - AllowOverwrite not operational.
+2002-11-12 castaglia <castaglia>
-2002-11-11 15:57 jwm
+ * Make.rules.in, NEWS, configure.in: Bug#1703 - mod_sql_mysql
+ compile error.
- * utils/.cvsignore:
- ignore Makefile, object and editor backup files
+2002-11-12 castaglia <castaglia>
-2002-11-11 15:44 jwm
+ * NEWS, modules/mod_core.c, modules/mod_xfer.c: Bug#1760 -
+ AllowOverwrite not operational.
- * modules/mod_unixpw.c: OS X also has a setgrent() that returns
- void; make a note to update autoconf for a generic check for this
+2002-11-11 jwm <jwm>
-2002-11-05 11:06 jwm
+ * utils/.cvsignore: ignore Makefile, object and editor backup files
- * NEWS, include/modules.h, modules/mod_auth.c, src/auth.c:
- Bug 1818 - proftpd doesn't compile on hpux11
+2002-11-05 jwm <jwm>
-2002-11-03 16:53 jwm
+ * NEWS, include/modules.h, modules/mod_auth.c, src/auth.c: Bug 1818
+ - proftpd doesn't compile on hpux11
- * configure:
- updated configure
+2002-11-04 jwm <jwm>
-2002-11-03 16:41 jwm
+ * configure: updated configure
- * NEWS, utils/ftptop.c, config.h.in, configure.in:
- ftptop can now use either curses or ncurses
+2002-11-04 jwm <jwm>
- Based on a submission by: Ayamura KIKUCHI <ayamura at ayamura.org>
+ * 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 at ayamura.org>
-2002-11-03 08:40 jwm
+2002-11-03 jwm <jwm>
- * NEWS, src/scoreboard.c:
- Bug 1814 - class names are truncated in scoreboard entry
+ * NEWS, src/scoreboard.c: Bug 1814 - class names are truncated in
+ scoreboard entry
-2002-11-02 14:47 jwm
+2002-11-02 jwm <jwm>
- * contrib/dist/rpm/proftpd.spec:
- forgot to add logrotate to %files
+ * contrib/dist/rpm/proftpd.spec: forgot to add logrotate to %files
-2002-11-02 14:44 jwm
+2002-11-02 jwm <jwm>
- * NEWS:
- update
+ * NEWS: update
-2002-11-02 14:44 jwm
+2002-11-02 jwm <jwm>
- * contrib/dist/rpm/: proftpd.logrotate, proftpd.spec:
- Bug 1398 - there is no log rotate for /var/log/xferlog
+ * contrib/dist/rpm/proftpd.logrotate, contrib/dist/rpm/proftpd.spec:
+ Bug 1398 - there is no log rotate for /var/log/xferlog
-2002-11-02 14:32 jwm
+2002-11-02 jwm <jwm>
- * modules/mod_auth.c:
- style, whitespace
+ * modules/mod_auth.c: style, whitespace
-2002-11-02 14:10 jwm
+2002-11-02 jwm <jwm>
- * contrib/mod_ratio.c:
- clean up compiler warnings
+ * contrib/mod_ratio.c: clean up compiler warnings
-2002-11-02 14:01 jwm
+2002-11-02 jwm <jwm>
- * NEWS, contrib/dist/rpm/proftpd.spec:
- Bug 1772 - Docs fixup in RPM spec file
+ * NEWS, contrib/dist/rpm/proftpd.spec: Bug 1772 - Docs fixup in RPM
+ spec file
-2002-11-02 14:01 jwm
+2002-11-02 jwm <jwm>
- * configure:
- update configure
+ * configure: update configure
-2002-11-02 13:49 jwm
+2002-11-02 jwm <jwm>
- * configure.in:
- don't preprocess the rpm spec
+ * configure.in: don't preprocess the rpm spec
-2002-11-02 13:48 jwm
+2002-11-02 jwm <jwm>
- * contrib/dist/rpm/: proftpd.spec, proftpd.spec.in:
- having autoconf process proftpd.spec.in is silly - it's only that
- way to substitute the @VERSION@ tag.
+ * 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 13:42 jwm
+2002-11-02 jwm <jwm>
- * NEWS:
- update
+ * NEWS: update
-2002-11-02 13:41 jwm
+2002-11-02 jwm <jwm>
- * README.PAM, config.h.in, modules/mod_pam.c:
- Bug 1805 - PAM support under Mac OS X
+ * README.PAM, config.h.in: Bug 1805 - PAM support under Mac OS X
-2002-11-02 13:38 jwm
+2002-11-02 jwm <jwm>
- * README.PAM:
- style
+ * README.PAM: style
-2002-11-02 13:34 jwm
+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
+ * 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 11:29 castaglia
+2002-10-30 castaglia <castaglia>
- * NEWS:
- Typo.
+ * NEWS: Typo.
-2002-10-30 11:10 castaglia
+2002-10-30 castaglia <castaglia>
- * NEWS, contrib/mod_wrap.c:
- Bug#1800 - Proftpd child segfaults when ussing a PASS without no
- USER first.
+ * NEWS, contrib/mod_wrap.c: Bug#1800 - Proftpd child segfaults when
+ ussing a PASS without no USER first.
-2002-10-29 17:47 castaglia
+2002-10-30 castaglia <castaglia>
- * NEWS:
- Typos.
+ * NEWS: Typos.
-2002-10-29 17:23 castaglia
+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).
+ * 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 10:06 castaglia
+2002-10-29 castaglia <castaglia>
- * utils/: ftpcount.c, ftpwho.c, 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.
+ * 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 08:41 castaglia
+2002-10-29 castaglia <castaglia>
- * modules/: mod_auth.c, 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).
+ * 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 07:51 jwm
+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.
+ * src/data.c: * style * Make sure session.xfer uses cleared memory so unset structure
+ members won't contain random values.
-2002-10-29 07:51 jwm
+2002-10-29 jwm <jwm>
* NEWS: Make sure session.xfer uses cleared memory so unset
- structure members won't contain random values.
+ structure members won't contain random values.
-2002-10-28 14:32 castaglia
+2002-10-28 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-10-28 14:30 castaglia
+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.
+ modules/mod_core.c, src/support.c: Bug#1722 - Can't work magic
+ cookie %F on FreeBSD.
-2002-10-28 09:28 castaglia
+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.
+ * 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 08:51 castaglia
+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.
+ 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 08:19 castaglia
+2002-10-28 castaglia <castaglia>
- * include/conf.h:
- Adding some necessary function prototypes for AIX, when compiled
- using -D_NO_PROTO.
+ * include/conf.h: Adding some necessary function prototypes for AIX,
+ when compiled using -D_NO_PROTO.
-2002-10-26 15:57 castaglia
+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.
+ * 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 09:54 castaglia
+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.
+ utils/ftpcount.c: Fixing some function pointer scopes, removing
+ unused variables -- general cleanup due to compiler complaints on
+ IRIX.
-2002-10-25 09:18 castaglia
+2002-10-25 castaglia <castaglia>
- * src/main.c:
- Re-adding logging of SIGSEGVs.
+ * src/main.c: Re-adding logging of SIGSEGVs.
-2002-10-24 15:19 castaglia
+2002-10-24 castaglia <castaglia>
- * modules/mod_auth.c:
- Correcting an off-by-one error concerning the enforcement of
- MaxClients.
+ * modules/mod_auth.c: Correcting an off-by-one error concerning the
+ enforcement of MaxClients.
-2002-10-24 13:03 castaglia
+2002-10-24 castaglia <castaglia>
- * NEWS:
- Forgot to note that Bug#1745 was fixed in 1.2.7rc1.
+ * NEWS: Forgot to note that Bug#1745 was fixed in 1.2.7rc1.
-2002-10-24 10:22 castaglia
+2002-10-24 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-10-24 10:16 castaglia
+2002-10-24 castaglia <castaglia>
- * NEWS, configure.in:
- Bug#1287 - Error compile with autoshadow option
+ * NEWS, configure.in: Bug#1287 - Error compile with autoshadow
+ option
-2002-10-24 09:32 castaglia
+2002-10-24 castaglia <castaglia>
- * configure:
- Updating configure script.
+ * configure: Updating configure script.
-2002-10-24 09:28 castaglia
+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.
+ * 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 08:49 castaglia
+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.
+ * README.AIX: Adding remark reminding AIX users to avoid use of
+ --enable-autoshadow and --enable-shadow in their configure options.
-2002-10-23 16:56 castaglia
+2002-10-23 castaglia <castaglia>
- * configure:
- Updating configure script to match changes/fixes to configure.in.
+ * configure: Updating configure script to match changes/fixes to
+ configure.in.
-2002-10-23 16:53 castaglia
+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.
+ 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 10:27 castaglia
+2002-10-23 castaglia <castaglia>
- * modules/mod_site.c:
- Fixing requirement of auth chk for SITE commands CHGRP and CHMOD.
+ * modules/mod_site.c: Fixing requirement of auth chk for SITE
+ commands CHGRP and CHMOD.
-2002-10-22 12:14 castaglia
+2002-10-22 castaglia <castaglia>
- * include/version.h:
- Making CVS look ready for rc3.
+ * include/version.h: Making CVS look ready for rc3.
-2002-10-22 11:27 castaglia
+2002-10-22 castaglia <castaglia>
- * ChangeLog, NEWS, include/version.h:
- Preparing for release of 1.2.7rc2.
+ * ChangeLog, NEWS, include/version.h: Preparing for release of
+ 1.2.7rc2.
-2002-10-21 11:40 castaglia
+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).
+ * 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 10:10 castaglia
+2002-10-21 castaglia <castaglia>
- * configure:
- Updating configure script for added --enable* options.
+ * configure: Updating configure script for added --enable* options.
-2002-10-21 10:06 castaglia
+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_pam.c, modules/mod_site.c,
- modules/mod_unixpw.c, modules/mod_xfer.c, src/data.c,
- src/dirtree.c, src/fs.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 08:16 flyhmstr
+ 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 15:20 castaglia
+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.
+ * 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 12:50 castaglia
+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.
+ * 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 12:43 castaglia
+2002-10-18 castaglia <castaglia>
- * NEWS, utils/ftptop.c:
- Bug#1778 - 1.2.7rc1 fails to link on OpenBSD 3.2-current
+ * NEWS, utils/ftptop.c: Bug#1778 - 1.2.7rc1 fails to link on OpenBSD
+ 3.2-current
-2002-10-18 10:59 flyhmstr
+2002-10-18 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: updated to include mod_radius stuff
-2002-10-18 10:15 flyhmstr
+2002-10-18 flyhmstr <flyhmstr>
- * doc/: Configuration.html, faq.html: ML: updated directivelist and
- faq
+ * doc/Configuration.html, doc/faq.html: ML: updated directivelist
+ and faq
-2002-10-18 08:14 castaglia
+2002-10-18 castaglia <castaglia>
- * NEWS, modules/mod_ls.c, src/fs.c:
- Bug#1785 - Bad handling of symlinks
+ * NEWS, modules/mod_ls.c: Bug#1785 - Bad handling of symlinks
-2002-10-16 17:37 castaglia
+2002-10-17 castaglia <castaglia>
- * src/: auth.c, data.c, dirtree.c, inet.c, log.c, main.c,
- modules.c, pool.c, regexp.c, scoreboard.c, 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.
+ * 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 11:14 castaglia
+2002-10-16 castaglia <castaglia>
- * NEWS, modules/mod_log.c:
- Bug#1644 - LogFormat local IP and FQDN tags missing
+ * NEWS, modules/mod_log.c: Bug#1644 - LogFormat local IP and FQDN
+ tags missing
-2002-10-15 15:18 castaglia
+2002-10-15 castaglia <castaglia>
- * README.AIX:
- Updating this README with the CFLAGS that seem to work with the
- newer proftpd versions.
+ * README.AIX: Updating this README with the CFLAGS that seem to work
+ with the newer proftpd versions.
-2002-10-15 10:08 castaglia
+2002-10-15 castaglia <castaglia>
- * modules/mod_xfer.c:
- Missed the assignment of session.xfer.path in cmd_stor() in the
- previous commit.
+ * modules/mod_xfer.c: Missed the assignment of session.xfer.path in
+ cmd_stor() in the previous commit.
-2002-10-15 10:01 castaglia
+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.
+ * 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-14 17:11 castaglia
+2002-10-15 castaglia <castaglia>
- * src/log.c:
- Make sure log_openfile() returns the same error values as
- #defined in include/log.h.
+ * src/log.c: Make sure log_openfile() returns the same error values
+ as #defined in include/log.h.
-2002-10-14 17:04 castaglia
+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.
+ * 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 11:26 castaglia
+2002-10-14 castaglia <castaglia>
- * NEWS, modules/mod_auth.c, modules/mod_unixpw.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.
+ * 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 08:00 castaglia
+2002-10-10 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#1770 - Forgetting to check for no IP in string
+ * NEWS, modules/mod_auth.c: Bug#1770 - Forgetting to check for no IP
+ in string
-2002-10-09 09:55 castaglia
+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.
+ src/support.c: Bug#1769 - Lack of supplemental groups can cause
+ segfault.
-2002-10-09 09:12 flyhmstr
+2002-10-09 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: updated directive list ready for
- 1.2.7rc2
+ 1.2.7rc2
-2002-10-08 14:19 castaglia
+2002-10-08 castaglia <castaglia>
- * modules/mod_xfer.c:
- Oops. Should always use the FS API functions for FS operations.
+ * modules/mod_xfer.c: Oops. Should always use the FS API functions
+ for FS operations.
-2002-10-08 08:05 castaglia
+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 at kaotik.org>.
+ * modules/mod_xfer.c: Clean up files created by mkstemp(3) if other
+ checks (e.g. <Limit>) fail. Discrepancy noticed by Joao Gouveia
+ <tharbad at kaotik.org>.
-2002-10-08 07:35 castaglia
+2002-10-08 castaglia <castaglia>
- * NEWS, src/main.c:
- Bug#1759 - ftpwho shows much more connections than realy is.
+ * NEWS, src/main.c: Bug#1759 - ftpwho shows much more connections
+ than realy is.
-2002-10-07 18:04 jwm
+2002-10-08 jwm <jwm>
- * README, README.AIX, README.modules:
- style nit
+ * README, README.AIX, README.modules: style nit
-2002-10-07 17:18 castaglia
+2002-10-08 castaglia <castaglia>
* CREDITS, INSTALL, Makefile.in, README, README.AIX,
- README.linux-privs, README.mod_sql, README.modules, README.ports:
-
- Updating documentation, fixing 'make clean' target. Thanks to
- Michael Renner for these patches.
+ README.modules, README.ports: Updating documentation, fixing 'make
+ clean' target. Thanks to Michael Renner for these patches.
-2002-10-07 14:40 castaglia
+2002-10-07 castaglia <castaglia>
- * INSTALL, README.modules:
- Removing references to crufty old mod_test.
+ * INSTALL, README.modules: Removing references to crufty old
+ mod_test.
-2002-10-07 10:17 castaglia
+2002-10-07 castaglia <castaglia>
- * INSTALL:
- Changing mention of ScoreboardPath to ScoreboardFile.
+ * INSTALL: Changing mention of ScoreboardPath to ScoreboardFile.
-2002-10-07 10:14 castaglia
+2002-10-07 castaglia <castaglia>
- * sample-configurations/complex-virtual.conf:
- Updating more example configs.
+ * sample-configurations/complex-virtual.conf: Updating more example
+ configs.
-2002-10-07 10:01 castaglia
+2002-10-07 castaglia <castaglia>
- * sample-configurations/PFTEST.shadow:
- Match username 'proftpd' in the test passwd file.
+ * sample-configurations/PFTEST.shadow: Match username 'proftpd' in
+ the test passwd file.
-2002-10-07 09:59 castaglia
+2002-10-07 castaglia <castaglia>
- * sample-configurations/PFTEST.conf.in:
- Updating config for 1.2.7 release cycle (ScoreboardPath ->
- ScoreboardFile).
+ * sample-configurations/PFTEST.conf.in: Updating config for 1.2.7
+ release cycle (ScoreboardPath -> ScoreboardFile).
-2002-10-04 15:51 castaglia
+2002-10-04 castaglia <castaglia>
- * utils/ftptop.c:
- Adding kludge to ftptop that scans the config file for a
- non-default ScoreboardFile directive.
+ * utils/ftptop.c: Adding kludge to ftptop that scans the config file
+ for a non-default ScoreboardFile directive.
-2002-10-04 12:08 castaglia
+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.
+ * 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 07:41 castaglia
+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
+ * NEWS, modules/mod_xfer.c: Bug#1735 - Proftpd 1.2.6 compiled on
+ FreeBSD 4.6.2 exits on signal 11
-2002-10-03 17:36 castaglia
+2002-10-04 castaglia <castaglia>
- * src/scoreboard.c:
- Addition borne of paranoia inspired by recent Apache
- scoreboarding vulnerability.
+ * src/scoreboard.c: Addition borne of paranoia inspired by recent
+ Apache scoreboarding vulnerability.
-2002-10-03 12:15 castaglia
+2002-10-03 castaglia <castaglia>
- * modules/mod_auth.c:
- Fixing off-by-one error in MaxClientsPerHost check.
+ * modules/mod_auth.c: Fixing off-by-one error in MaxClientsPerHost
+ check.
-2002-10-03 08:44 castaglia
+2002-10-03 castaglia <castaglia>
- * CREDITS:
- Adding thanks/credits for unnamed users who contribute to the
- project.
+ * CREDITS: Adding thanks/credits for unnamed users who contribute to
+ the project.
-2002-10-03 08:30 castaglia
+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).
+ * 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 13:49 castaglia
+2002-10-02 castaglia <castaglia>
- * NEWS, src/netio.c:
- Bug#1757 - non-ANSI Syntax in netio.c
+ * NEWS, src/netio.c: Bug#1757 - non-ANSI Syntax in netio.c
-2002-10-02 13:35 castaglia
+2002-10-02 castaglia <castaglia>
- * include/version.h:
- Updating the version, preparing for the next CVS/release.
+ * include/version.h: Updating the version, preparing for the next
+ CVS/release.
-2002-10-02 11:13 castaglia
+2002-10-02 castaglia <castaglia>
- * modules/mod_site.c:
- Fixing support for 'HELP SITE' (common) in addition to 'SITE
- HELP' (proper).
+ * modules/mod_site.c: Fixing support for 'HELP SITE' (common) in
+ addition to 'SITE HELP' (proper).
-2002-10-02 09:18 castaglia
+2002-10-02 castaglia <castaglia>
- * src/main.c:
- Cleaning up a badly-written preprocessor directive (my fault).
+ * src/main.c: Cleaning up a badly-written preprocessor directive (my
+ fault).
-2002-10-02 08:19 castaglia
+2002-10-02 castaglia <castaglia>
- * utils/scoreboard.c:
- Prevent egregious ENOENT error when reading the scoreboard.
+ * utils/scoreboard.c: Prevent egregious ENOENT error when reading
+ the scoreboard.
-2002-10-01 11:59 castaglia
+2002-10-01 castaglia <castaglia>
- * ChangeLog, NEWS, include/version.h:
- Preparing for release of 1.2.7rc1.
+ * ChangeLog, NEWS, include/version.h: Preparing for release of
+ 1.2.7rc1.
-2002-10-01 09:23 castaglia
+2002-10-01 castaglia <castaglia>
- * modules/mod_auth.c:
- Minor wording correction for default MaxClientsPerUser message.
+ * modules/mod_auth.c: Minor wording correction for default
+ MaxClientsPerUser message.
-2002-10-01 09:19 castaglia
+2002-10-01 castaglia <castaglia>
- * NEWS, modules/mod_auth.c:
- Bug#1675 - add new MaxClientsPerUser configuration option. Works
- just like MaxHostsPerUser.
+ * NEWS, modules/mod_auth.c: Bug#1675 - add new MaxClientsPerUser
+ configuration option. Works just like MaxHostsPerUser.
-2002-10-01 08:50 jwm
+2002-10-01 jwm <jwm>
* configure: updated configure
-2002-10-01 08:43 jwm
+2002-10-01 jwm <jwm>
* configure.in: Fix for broken headers in OS X 10.1 Submitted by:
- Thomas Ganter <tganter at mac.com>
+ Thomas Ganter <tganter at mac.com>
-2002-09-30 13:57 castaglia
+2002-09-30 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#1694 - SQLLog QUIT doesn't execute on connection close.
+ * 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.
- With the various changes to mod_sql (SQLNegativeCache, etc), I'm
- bumping its version to 4.10.
+2002-09-30 castaglia <castaglia>
-2002-09-30 13:52 castaglia
+ * NEWS: Forgot to note that Bug#1748 had been fixed.
- * NEWS:
- Forgot to note that Bug#1748 had been fixed.
-
-2002-09-30 08:56 castaglia
+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-27 19:04 castaglia
-
- * modules/mod_site.c:
- Helps if I put the full code from the fix in CVS, doesn't it?
-
-2002-09-27 19:01 castaglia
+ modules/mod_site.c, src/main.c: Bug#1475 - Minor changes to SITE
+ command handling.
- * include/privs.h, modules/mod_site.c:
- Casting and variable type fun (based on compiler complaints).
+2002-09-28 castaglia <castaglia>
-2002-09-27 18:42 castaglia
+ * modules/mod_site.c: Helps if I put the full code from the fix in
+ CVS, doesn't it?
- * modules/mod_pam.c:
- Confirmed -- it's a Solaris-specific thing. Fixed to (hopefully)
- not generate error messages when working with Linux/FreeBSD' PAM
- libraries.
+2002-09-28 castaglia <castaglia>
-2002-09-27 18:13 castaglia
+ * include/privs.h, modules/mod_site.c: Casting and variable type fun
+ (based on compiler complaints).
- * modules/mod_pam.c:
- Seems there's a slight discrepancy between the Solaris and Linux
- PAM implementations with regard to the order of calling
- pam_end(). I don't know about FreeBSD PAM yet, though; don't
- have root privs on a FreeBSD box to verify.
+2002-09-28 castaglia <castaglia>
-2002-09-27 17:28 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.
- * 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>
-2002-09-27 13:58 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().
- * NEWS, modules/mod_pam.c:
- 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>
-2002-09-27 13:51 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.
- * 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>
-2002-09-27 13:17 castaglia
+ * src/scoreboard.c: Try to handle cases where NULLs might be
+ (inappropriately) sent to pr_scoreboard_update_entry().
- * src/scoreboard.c:
- Try to handle cases where NULLs might be (inappropriately) sent
- to pr_scoreboard_update_entry().
+2002-09-27 castaglia <castaglia>
-2002-09-27 13:01 castaglia
+ * utils/ftptop.c, utils/utils.h: Make sure that the utils compile on
+ platforms that don't have <getopt.h>
- * utils/: ftptop.c, utils.h:
- Make sure that the utils compile on platforms that don't have
- <getopt.h>
-
-2002-09-26 10:52 castaglia
+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 10:20 castaglia
-
- * utils/ftptop.c:
- Removed an unused variable.
-
-2002-09-26 10:17 castaglia
+ utils/ftptop.c, utils/ftpwho.c, utils/utils.h: Adding display of
+ server (IP address/port) string to ftpwho (when -v is used).
- * utils/utils.h:
- Keeping this in sync with include/scoreboard.h
+2002-09-26 castaglia <castaglia>
-2002-09-26 10:09 castaglia
+ * utils/ftptop.c: Removed an unused variable.
- * src/main.c:
- Make clearing the scoreboard slot one of the first things that
- happens when a child exits.
+2002-09-26 castaglia <castaglia>
-2002-09-26 09:59 castaglia
+ * utils/utils.h: Keeping this in sync with include/scoreboard.h
- * utils/ftpwho.c:
- Adjusting the spacing of ftpwho fields, trying to make the output
- prettier.
+2002-09-26 castaglia <castaglia>
-2002-09-26 09:47 castaglia
+ * src/main.c: Make clearing the scoreboard slot one of the first
+ things that happens when a child exits.
- * 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>
-2002-09-25 18:11 castaglia
+ * utils/ftpwho.c: Adjusting the spacing of ftpwho fields, trying to
+ make the output prettier.
- * NEWS, contrib/mod_radius.c, contrib/mod_radius.html:
- Bug#1687 - Add contrib module for RADIUS authentication,
- accounting
+2002-09-26 castaglia <castaglia>
-2002-09-25 18:05 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.
- * 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.:
+2002-09-26 castaglia <castaglia>
- Port 21 # Some comment here
+ * NEWS, contrib/mod_radius.c: Bug#1687 - Add contrib module for
+ RADIUS authentication, accounting
- whereas before, that "# Some comment here" would be tokenized and
- treated as normal input into the configuration directive handler.
+2002-09-26 castaglia <castaglia>
-2002-09-25 17:36 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.
- * NEWS, include/privs.h:
- Bug#1395 - Check return values in PRIVS calls
+2002-09-26 castaglia <castaglia>
-2002-09-25 17:04 castaglia
+ * NEWS, include/privs.h: Bug#1395 - Check return values in PRIVS
+ calls
- * src/: ftpcount.1, ftpcount.c, ftpshut.8, ftpshut.c, ftpwho.1,
- ftpwho.c:
- Removing these files from src/, as they now appear under utils/
+2002-09-26 castaglia <castaglia>
-2002-09-25 17:01 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).
- * 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>
-2002-09-25 16:56 castaglia
+ * configure: And the necessary delayed commit of the new configure
+ script, to match the configure.in tweaks.
- * configure:
- And the necessary delayed commit of the new configure script, to
- match the configure.in tweaks.
+2002-09-25 castaglia <castaglia>
-2002-09-25 16:53 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.
- * 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>
-2002-09-25 16:45 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.
- * utils/: Makefile.in, ftpcount.1, ftpcount.c, ftpshut.8,
- ftpshut.c, ftptop.c, ftpwho.1, ftpwho.c, misc.c, scoreboard.c,
- 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>
-2002-09-25 16:43 castaglia
+ * NEWS: Forgot to update the NEWS file for the scoreboard changes.
- * NEWS:
- Forgot to update the NEWS file for the scoreboard changes.
-
-2002-09-25 16:43 castaglia
+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.
+ 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-24 19:13 jwm
+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)
+ * modules/mod_xfer.c: * style * silence a compiler warning with a cast (the Cast Nazi yields
+ ground: film at eleven)
-2002-09-24 19:11 jwm
+2002-09-25 jwm <jwm>
* src/sets.c: style
-2002-09-24 19:11 jwm
+2002-09-25 jwm <jwm>
- * lib/: glibc-mkstemp.c, strsep.c, vsnprintf.c: * style * silence
- ranlib warnings if the host OS already has the appropriate
- functions
+ * 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 09:17 castaglia
+2002-09-23 castaglia <castaglia>
- * src/main.c:
- Corrections in comments.
+ * src/main.c: Corrections in comments.
-2002-09-23 08:30 castaglia
+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.
+ * 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-20 19:12 jwm
+2002-09-21 jwm <jwm>
- * README.LDAP:
- * update for 2.8.10 * postcard-ware
+ * README.LDAP: * update for 2.8.10 * postcard-ware
-2002-09-20 19:09 jwm
+2002-09-21 jwm <jwm>
- * contrib/mod_ldap.c:
- mod_ldap is now postcard-ware
+ * contrib/mod_ldap.c: mod_ldap is now postcard-ware
-2002-09-19 12:26 castaglia
+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.
+ * 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 13:45 castaglia
+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).
+ * 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 13:50 jwm
+2002-09-15 jwm <jwm>
- * Makefile.in, NEWS:
- Bug 1726 - Cygwin's Makefile inconsistency
+ * Makefile.in, NEWS: Bug 1726 - Cygwin's Makefile inconsistency
-2002-09-13 16:14 castaglia
+2002-09-13 castaglia <castaglia>
* Make.rules.in, NEWS, include/conf.h, include/inet.h,
- include/io.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/fs.c,
- src/ident.c, src/inet.c, src/io.c, src/main.c, src/netio.c:
- Adding the NetIO API.
+ 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 15:59 castaglia
+2002-09-13 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#1736 - RETR does not handle an inappropriate REST
+ * NEWS, modules/mod_xfer.c: Bug#1736 - RETR does not handle an
+ inappropriate REST
-2002-09-13 15:51 castaglia
+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
+ src/dirtree.c: Bug#1737 - Enhance file hiding via regular
+ expressions
-2002-09-13 15:01 castaglia
+2002-09-13 castaglia <castaglia>
- * contrib/mod_sql.c:
- Make this particular mod_sql log message a little less urgent.
+ * contrib/mod_sql.c: Make this particular mod_sql log message a
+ little less urgent.
-2002-09-13 14:35 castaglia
+2002-09-13 castaglia <castaglia>
- * modules/mod_auth.c:
- Slight correction in the config context used for looking up any
- configured TimeoutSession.
+ * modules/mod_auth.c: Slight correction in the config context used
+ for looking up any configured TimeoutSession.
-2002-09-13 13:21 castaglia
+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 12:58 castaglia
-
- * modules/mod_auth.c:
- When unable to chdir to a directory, when logging in, add
- reporting of errno.
-
-2002-09-13 12:33 castaglia
+ src/data.c, src/dirtree.c: Bug#1436 - Feature Enhancement: Timeouts
+ on a <Virtualhost> basis
- * NEWS, include/proftpd.h, modules/mod_core.c, src/main.c:
- Bug#1658 - Separate session/daemon resource limit settings.
+2002-09-13 castaglia <castaglia>
-2002-09-13 07:30 jwm
+ * modules/mod_auth.c: When unable to chdir to a directory, when
+ logging in, add reporting of errno.
- * configure:
- Updated configure from last configure.in commit
+2002-09-13 castaglia <castaglia>
-2002-09-12 18:19 jwm
+ * NEWS, include/proftpd.h, modules/mod_core.c, src/main.c: Bug#1658
+ - Separate session/daemon resource limit settings.
- * configure.in:
- You can't explicitly include sys/sendfile.h when compiling with
- large file support.
+2002-09-13 jwm <jwm>
- Submitted by: Jan Kasprzak <kas at informatics.muni.cz>
- http://www.geocrawler.com/lists/3/SourceForge/9189/0/9566710/
+ * configure: Updated configure from last configure.in commit
-2002-09-12 18:10 jwm
+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*
+ * configure.in: You can't explicitly include sys/sendfile.h when
+ compiling with large file support. Submitted by: Jan Kasprzak <kas at informatics.muni.cz>
+ http://www.geocrawler.com/lists/3/SourceForge/9189/0/9566710/
- Submitted by: Benjamin Schieder <bs1544 at bingo-ev.de>
- http://www.geocrawler.com/lists/3/SourceForge/9190/75/9539913/
+2002-09-13 jwm <jwm>
-2002-09-12 18:02 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 at bingo-ev.de>
+ http://www.geocrawler.com/lists/3/SourceForge/9190/75/9539913/
- * contrib/dist/rpm/proftpd.spec.in:
- Documentation improvements
+2002-09-12 castaglia <castaglia>
- Submitted by: Magnus Stenman <stone at hkust.se>
- http://www.geocrawler.com/lists/3/SourceForge/9189/0/9564251/
+ * modules/mod_log.c: Missed a Boolean...
-2002-09-12 16:23 castaglia
+2002-09-12 castaglia <castaglia>
- * modules/mod_log.c:
- Missed a Boolean...
+ * 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-12 16:20 castaglia
+2002-09-11 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.
+ * doc/mod_sample.c: Updating the code in the mod_sample.c file to
+ demonstrate things a little better.
-2002-09-11 11:59 castaglia
+2002-09-10 castaglia <castaglia>
- * doc/mod_sample.c:
- Updating the code in the mod_sample.c file to demonstrate things
- a little better.
+ * modules/mod_xfer.c: Helps if uploads/downloads actually
+ work...oops. =P
-2002-09-10 16:26 castaglia
+2002-09-10 castaglia <castaglia>
- * modules/mod_xfer.c:
- Helps if uploads/downloads actually work...oops. =P
+ * NEWS, modules/mod_xfer.c: Bug#1065 - Added MaxRetrieveFileSize,
+ MaxStoreFileSize directives.
-2002-09-10 12:36 castaglia
+2002-09-10 castaglia <castaglia>
- * NEWS, modules/mod_xfer.c:
- Bug#1065 - Added MaxRetrieveFileSize, MaxStoreFileSize
- directives.
+ * 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 11:50 castaglia
+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.
+ * src/main.c: Removed an unused variable.
-2002-09-10 10:26 castaglia
+2002-09-10 jwm <jwm>
- * src/main.c:
- Removed an unused variable.
+ * modules/mod_xfer.c: fixup
-2002-09-10 09:29 castaglia
+2002-09-10 castaglia <castaglia>
- * src/fs.c:
- No need for this cast (I don't think...).
+ * 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 09:07 jwm
+2002-09-10 castaglia <castaglia>
- * modules/mod_xfer.c:
- fixup
+ * 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 09:01 castaglia
+2002-09-10 jwm <jwm>
- * NEWS, include/fs.h, include/io.h, modules/mod_core.c,
- modules/mod_ls.c, src/data.c, src/fs.c, src/io.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 =).
+ * modules/mod_xfer.c: minor format-type fixups
-2002-09-10 08:06 castaglia
+2002-09-09 jwm <jwm>
- * NEWS, include/conf.h, src/fs.c:
- Bug#1662 - #define _GNU_SOURCE, which will quell some compiler
- warnings (e.g. the crypt() warning when using
- mod_sql).
+ * src/main.c: style
-2002-09-10 04:35 jwm
+2002-09-09 castaglia <castaglia>
- * modules/mod_xfer.c:
- minor format-type fixups
+ * src/main.c: No comment.
-2002-09-09 16:05 jwm
+2002-09-09 castaglia <castaglia>
- * src/main.c:
- style
+ * src/main.c: Spoke too soon. =P
-2002-09-09 15:43 castaglia
+2002-09-09 castaglia <castaglia>
- * src/main.c:
- No comment.
+ * 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 15:35 castaglia
+2002-09-09 uid43859 <uid43859>
- * src/main.c:
- Spoke too soon. =P
+ * lib/pr-syslog.c: Solaris doesn't have the macro LOG_PRI()
-2002-09-09 15:33 castaglia
+2002-09-09 uid43859 <uid43859>
- * src/main.c:
- Don't forget to append the "proftpd: " prefix for
- non-setproctitle(2) platforms. Hopefully this ends our fun with
- Bug#1649.
+ * src/main.c: fixed & cleaned up #defines
-2002-09-09 13:03 uid43859
+2002-09-09 jwm <jwm>
- * lib/pr-syslog.c:
- Solaris doesn't have the macro LOG_PRI()
+ * src/main.c: Fixing the fix for Bug#1649 - the #ifdefs didn't
+ actually change anything
-2002-09-09 13:01 uid43859
+2002-09-07 castaglia <castaglia>
- * src/main.c:
- fixed & cleaned up #defines
+ * lib/pr-syslog.c: Forgot to bracket use of __progname in #ifdefs,
+ as not every platform's libc supports __progname.
-2002-09-09 07:40 jwm
+2002-09-07 castaglia <castaglia>
- * src/main.c:
- Fixing the fix for Bug#1649 - the #ifdefs didn't actually change
- anything
+ * src/main.c: Need to match datatypes for the unixpw_persistent
+ variable in main.c and mod_unixpw.c
-2002-09-07 12:08 castaglia
+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.
+ * NEWS: Oops. Wrong bug number.
-2002-09-07 12:02 castaglia
+2002-09-07 castaglia <castaglia>
- * src/main.c:
- Need to match datatypes for the unixpw_persistent variable in
- main.c and mod_unixpw.c
+ * modules/mod_core.c: Oops. Forgot to cleanup my debugging/logging.
-2002-09-07 10:37 castaglia
+2002-09-06 castaglia <castaglia>
- * NEWS:
- Oops. Wrong bug number.
+ * 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 17:25 castaglia
+2002-09-06 castaglia <castaglia>
- * modules/mod_core.c:
- Oops. Forgot to cleanup my debugging/logging.
+ * 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 11:51 castaglia
+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.
+ * 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 11:05 castaglia
+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.
+ * 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 09:13 castaglia
+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.
+ * NEWS, modules/mod_core.c, modules/mod_site.c: Bug#1663 - Add SITE
+ CHGRP command
-2002-09-06 08:18 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-05 18:06 castaglia
-
- * NEWS, modules/mod_core.c, modules/mod_site.c:
- Bug#1663 - Add SITE CHGRP command
-
-2002-09-05 17:59 castaglia
+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).
+ 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-05 17:42 castaglia
+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.
+ * 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-05 17:38 castaglia
+2002-09-06 castaglia <castaglia>
- * contrib/: mod_sql.c, mod_sql.h, mod_sql_mysql.c,
- mod_sql_postgres.c:
- Correcting the OpenSSL exemption clause to list the proper
- copyright holder for these files.
+ * 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 16:04 castaglia
+2002-09-05 castaglia <castaglia>
- * NEWS, modules/mod_pam.c:
- 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.
+ * 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 14:13 castaglia
+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.
+ * 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 13:09 castaglia
+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, src/utils.c:
- Bug#1682 - Use of chroot(2) and external libraries made necessary
- the implementing of an internal syslog client routine
- for use by proftpd.
+ 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 12:27 castaglia
+2002-09-04 castaglia <castaglia>
- * Makefile.in, NEWS:
- Bug#1654 - Add DESTDIR in Makefile
+ * Makefile.in, NEWS: Bug#1654 - Add DESTDIR in Makefile
-2002-09-04 11:55 castaglia
+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:
+ * 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
- 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 09:10 flyhmstr
+2002-09-04 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: more fixme's gone
-2002-09-04 07:54 castaglia
+2002-09-04 castaglia <castaglia>
- * ChangeLog, NEWS, include/version.h:
- Ramping up for the release of 1.2.6.
+ * ChangeLog, NEWS, include/version.h: Ramping up for the release of
+ 1.2.6.
-2002-09-04 00:07 flyhmstr
+2002-09-04 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: updated directive list
-2002-09-02 13:16 castaglia
-
- * NEWS, src/io.c:
- Note version increment of mod_ldap; add processing of signals in
- the io_poll() loop.
+2002-09-02 castaglia <castaglia>
-2002-08-30 17:48 jwm
+ * NEWS: Note version increment of mod_ldap; add processing of
+ signals in the io_poll() loop.
- * contrib/mod_ratio.c:
- openssl exemption
+2002-08-31 jwm <jwm>
-2002-08-30 17:45 jwm
+ * contrib/mod_ratio.c: openssl exemption
- * contrib/mod_ldap.c:
- 2.8.10 - replacement for ldap_build_filter()
+2002-08-31 jwm <jwm>
-2002-08-30 17:08 jwm
+ * contrib/mod_ldap.c: 2.8.10 - replacement for ldap_build_filter()
- * 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>
-2002-08-30 17:06 jwm
+ * src/main.c: would someone please give me an elementary lesson in
+ checking what exactly i'm committing before committing it?
- * src/: main.c, pool.c:
- style, removing cruft
+2002-08-31 jwm <jwm>
-2002-08-29 16:25 castaglia
+ * src/main.c, src/pool.c: style, removing cruft
- * contrib/mod_readme.c:
- Added OpenSSL exemption clause to this contrib module's license.
+2002-08-29 castaglia <castaglia>
-2002-08-28 09:00 castaglia
+ * contrib/mod_readme.c: Added OpenSSL exemption clause to this
+ contrib module's license.
- * NEWS, src/dirtree.c:
- Fixed bug introduced by bad use of inet_ntoa(3) in fix for
- Bug#1701.
+2002-08-28 castaglia <castaglia>
-2002-08-24 08:18 jwm
+ * NEWS, src/dirtree.c: Fixed bug introduced by bad use of
+ inet_ntoa(3) in fix for Bug#1701.
- * contrib/dist/rpm/proftpd.spec.in:
- bloody fscking stupid thing...
+2002-08-24 jwm <jwm>
-2002-08-24 08:15 jwm
+ * contrib/mod_ldap.c: * openssl exemption * version bump to 2.8.9
- * contrib/: mod_ldap.c, dist/rpm/proftpd.spec.in:
- * openssl exemption * version bump to 2.8.9
+2002-08-19 jwm <jwm>
-2002-08-18 18:38 jwm
+ * doc/Configuration.sgml: adding the sgml version of the directive
+ docs
- * doc/Configuration.sgml:
- adding the sgml version of the directive docs
+2002-08-15 castaglia <castaglia>
-2002-08-15 08:02 castaglia
+ * ChangeLog, NEWS, include/version.h: Preparing to release 1.2.6rc2
- * ChangeLog, NEWS, include/version.h:
- Preparing to release 1.2.6rc2
+2002-08-15 castaglia <castaglia>
-2002-08-15 07:45 castaglia
+ * NEWS, src/dirtree.c: Bug#1701 - Reverse lookups not working
- * NEWS, src/dirtree.c:
- Bug#1701 - Reverse lookups not working
+2002-08-14 castaglia <castaglia>
-2002-08-14 09:25 castaglia
+ * modules/mod_log.c, modules/mod_ls.c, modules/mod_site.c: Updating
+ copyright notices.
- * modules/: mod_log.c, mod_ls.c, mod_site.c, mod_unixpw.c:
- Updating copyright notices.
-
-2002-08-14 09:17 castaglia
+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/io.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-14 08:14 jwm
+ 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
- * contrib/dist/rpm/proftpd.spec.in:
- Packager: update
+2002-08-13 castaglia <castaglia>
-2002-08-14 08:10 jwm
+ * src/log.c: Added minor, but necessary check when reading the
+ scoreboard header on AIX platforms. Portability is a PITA.
- * contrib/dist/rpm/proftpd.spec.in:
- Added removal of build leftover directory in %clean. Submitted
- by: Christian Pelealu <kurisu at mweb.co.id>
+2002-08-12 castaglia <castaglia>
-2002-08-13 15:52 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
- * src/log.c:
- Added minor, but necessary check when reading the scoreboard
- header on AIX platforms. Portability is a PITA.
+2002-08-05 castaglia <castaglia>
-2002-08-12 10:30 castaglia
+ * config.sub: Added case to handle ELF NetBSD on a shark.
- * 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-01 castaglia <castaglia>
-2002-08-05 10:06 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]).
- * config.sub:
- Added case to handle ELF NetBSD on a shark.
+2002-08-01 castaglia <castaglia>
-2002-08-01 16:13 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).
- * 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-07-26 castaglia <castaglia>
-2002-08-01 15:11 castaglia
+ * src/main.c: Minor cleanup from previous commit.
- * modules/mod_unixpw.c:
- AIX portability/broken-ness changes.
+2002-07-26 castaglia <castaglia>
-2002-08-01 15:08 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.
- * 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-25 jwm <jwm>
-2002-07-26 10:08 castaglia
+ * include/regexp.h: typo/style
- * src/main.c:
- Minor cleanup from previous commit.
-
-2002-07-26 10:02 castaglia
-
- * src/: dirtree.c, main.c, 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 08:21 jwm
-
- * include/regexp.h:
- typo/style
-
-2002-07-24 15:20 castaglia
+2002-07-24 castaglia <castaglia>
* Make.rules.in, NEWS, include/conf.h, include/pool.h,
- modules/mod_core.c, src/inet.c, src/main.c, src/pool.c,
- include/regexp.h, src/regexp.c:
- Bug#1697 - Memory leak involving regexp and SIGHUP
-
-2002-07-22 16:18 castaglia
+ 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
- * modules/: mod_auth.c, mod_core.c:
- Oops. Realized that DeferWelcome should've stayed in mod_core.
+2002-07-22 castaglia <castaglia>
-2002-07-22 15:17 castaglia
+ * modules/mod_auth.c, modules/mod_core.c: Oops. Realized that
+ DeferWelcome should've stayed in mod_core.
- * modules/: mod_auth.c, mod_core.c, 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-22 castaglia <castaglia>
-2002-07-20 01:29 flyhmstr
+ * 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).
- * contrib/UPGRADE.mod_sql: ML: updated mod_sql homepage url
+2002-07-19 castaglia <castaglia>
-2002-07-19 14:25 castaglia
+ * NEWS, lib/pwgrent.c: Bug#1674 - fgetbufline passes NULL pointer to
+ fgets()
- * NEWS, lib/pwgrent.c:
- Bug#1674 - fgetbufline passes NULL pointer to fgets()
+2002-07-18 castaglia <castaglia>
-2002-07-18 16:01 castaglia
+ * modules/mod_core.c, src/main.c: Miscellaneous configuration
+ handler cleanup.
- * modules/mod_core.c, modules/mod_pam.c, modules/mod_unixpw.c,
- src/main.c:
- Miscellaneous configuration handler cleanup.
+2002-07-15 castaglia <castaglia>
-2002-07-15 08:50 castaglia
+ * NEWS, modules/mod_xfer.c: Bug#1645 - HiddenStor should close file
+ before renaming
- * NEWS, modules/mod_xfer.c:
- Bug#1645 - HiddenStor should close file before renaming
+2002-07-15 castaglia <castaglia>
-2002-07-15 08:39 castaglia
+ * NEWS, modules/mod_core.c, src/dirtree.c: Bug#1681 - Multiple
+ Include directives in a single file do not get parsed
- * NEWS, modules/mod_core.c, src/dirtree.c:
- Bug#1681 - Multiple Include directives in a single file do not
- get parsed
-
-2002-07-09 15:20 castaglia
+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.
+ src/main.c, src/support.c, src/timers.c: Committed the latest patch
+ attached to Bug#1556.
-2002-07-02 17:30 jwm
+2002-07-03 jwm <jwm>
- * configure:
- new configure
+ * configure: new configure
-2002-07-02 17:25 jwm
+2002-07-03 jwm <jwm>
- * Makefile.in, README.cygwin, configure.in:
- attach 1428 to bug 1569 - cygwin EXEEXT fixups
+ * Makefile.in, README.cygwin, configure.in: attach 1428 to bug 1569
+ - cygwin EXEEXT fixups
-2002-07-02 11:25 castaglia
+2002-07-02 castaglia <castaglia>
- * ChangeLog, NEWS, include/version.h:
- Preparing for release of 1.2.6rc1
+ * ChangeLog, NEWS, include/version.h: Preparing for release of
+ 1.2.6rc1
-2002-07-02 10:01 castaglia
+2002-07-02 castaglia <castaglia>
- * include/inet.h, include/io.h, include/options.h, src/data.c,
- src/inet.c, src/io.c:
- Fixing consequences of Bug#1502 and ABOR causing some clients to
- wait indefinitely.
+ * 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 11:28 castaglia
+2002-07-01 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#1543 - Usernames with spaces, problems to authenticate
+ * NEWS, contrib/mod_sql.c: Bug#1543 - Usernames with spaces,
+ problems to authenticate
-2002-07-01 11:18 castaglia
+2002-07-01 castaglia <castaglia>
- * NEWS, contrib/mod_sql.c:
- Bug#1628 - group mods (DefaultRoot) only work for primary group
- w/mysql
+ * NEWS, contrib/mod_sql.c: Bug#1628 - group mods (DefaultRoot) only
+ work for primary group w/mysql
-2002-06-30 09:48 castaglia
+2002-06-30 castaglia <castaglia>
- * src/inet.c:
- Fixed potential loop problem I inadvertently introduced in the
- previous check-in. Oops.
+ * src/inet.c: Fixed potential loop problem I inadvertently
+ introduced in the previous check-in. Oops.
-2002-06-28 11:43 castaglia
+2002-06-28 castaglia <castaglia>
* include/proftpd.h, modules/mod_xfer.c, src/data.c, src/inet.c,
- src/io.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-27 20:16 castaglia
+ 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).
- * contrib/mod_sql.c:
- Correctly check cmap.grpgidfield, rather than cmap.gidfield, when
- looking up groups by ID. This was my fault.
+2002-06-28 castaglia <castaglia>
-2002-06-27 15:39 castaglia
+ * contrib/mod_sql.c: Correctly check cmap.grpgidfield, rather than
+ cmap.gidfield, when looking up groups by ID. This was my fault.
- * configure:
- Updated configure script
+2002-06-27 castaglia <castaglia>
-2002-06-27 15:36 castaglia
+ * configure: Updated configure script
- * NEWS, config.h.in, configure.in, modules/mod_unixpw.c:
- Bug#1667 - Move USESHADOW, AUTOSHADOW defines from command line
- into config.h
+2002-06-27 castaglia <castaglia>
-2002-06-27 15:09 castaglia
+ * NEWS, config.h.in, configure.in: Bug#1667 - Move USESHADOW,
+ AUTOSHADOW defines from command line into config.h
- * 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>
-2002-06-27 14:18 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.
- * contrib/mod_sql.c:
- Removed extraneous parameters from logging calls (caught by
- __attribute__).
+2002-06-27 castaglia <castaglia>
-2002-06-27 12:27 castaglia
+ * contrib/mod_sql.c: Removed extraneous parameters from logging
+ calls (caught by __attribute__).
- * NEWS, contrib/mod_quota.c:
- Removed mod_quota.c due to lack of maintainership, bugs.
+2002-06-27 castaglia <castaglia>
-2002-06-27 12:24 flyhmstr
+ * NEWS: Removed mod_quota.c due to lack of maintainership, bugs.
- * doc/ShowUndocumented: ML: removing the showundocumented script as
- it's no longer useful in this repository
+2002-06-27 flyhmstr <flyhmstr>
-2002-06-27 12:23 flyhmstr
+ * doc/Configuration.html: ML: Updated directive list
- * doc/Configuration.html: ML: Updated directive list
-
-2002-06-27 11:35 flyhmstr
+2002-06-27 flyhmstr <flyhmstr>
* modules/mod_core.c: ML: fixing minor typo :)
-2002-06-27 00:31 castaglia
+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-26 19:33 castaglia
+ 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.
- * NEWS, contrib/mod_sql.c:
- Bug#1664 - mod_sql segfaults on cache miss for bogus user.
+2002-06-27 castaglia <castaglia>
-2002-06-26 16:10 castaglia
+ * NEWS, contrib/mod_sql.c: Bug#1664 - mod_sql segfaults on cache
+ miss for bogus user.
- * 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 castaglia <castaglia>
-2002-06-26 10:32 jwm
+ * 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.
- * Makefile.in:
- #1569 - EXEEXT support
+2002-06-26 jwm <jwm>
-2002-06-25 19:54 castaglia
+ * Makefile.in: #1569 - EXEEXT support
- * NEWS, include/inet.h, include/io.h, src/data.c, src/inet.c,
- src/io.c:
- Bug#1502 - 226 Transfer Complete sent out before data connection
- is closed
+2002-06-26 castaglia <castaglia>
-2002-06-25 14:58 castaglia
+ * NEWS, include/inet.h, src/data.c, src/inet.c: Bug#1502 - 226
+ Transfer Complete sent out before data connection is closed
- * NEWS, modules/mod_ls.c:
- Bug#1655 - Add -n listing option to mod_ls
+2002-06-25 castaglia <castaglia>
-2002-06-25 13:56 castaglia
+ * NEWS, modules/mod_ls.c: Bug#1655 - Add -n listing option to mod_ls
- * 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>
-2002-06-25 13:42 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.
- * src/: main.c, support.c:
- Put proper #ifdefs around things to avoid some compiler warnings.
+2002-06-25 castaglia <castaglia>
-2002-06-25 10:56 castaglia
+ * src/main.c, src/support.c: Put proper #ifdefs around things to
+ avoid some compiler warnings.
- * config.h.in:
- Added lines for endprotoent, setgroups, setprotoent detection
- performed by autoconf, removed duplicate HAVE_SETPROCTITLE line.
+2002-06-25 castaglia <castaglia>
-2002-06-25 10:35 castaglia
+ * config.h.in: Added lines for endprotoent, setgroups, setprotoent
+ detection performed by autoconf, removed duplicate HAVE_SETPROCTITLE
+ line.
- * 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>
-2002-06-25 10:17 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?).
- * contrib/mod_sql.c:
- Added LFS-specific format macro, fixed NULL/'\0' comparison (was
- causing a compiler warning).
+2002-06-25 castaglia <castaglia>
-2002-06-25 09:52 castaglia
+ * contrib/mod_sql.c: Added LFS-specific format macro, fixed
+ NULL/'\0' comparison (was causing a compiler warning).
- * modules/mod_xfer.c:
- One more minor LFS-related modification.
+2002-06-25 castaglia <castaglia>
-2002-06-25 09:37 castaglia
+ * modules/mod_xfer.c: One more minor LFS-related modification.
- * src/auth.c:
- Fixed minor indentation/spacing.
+2002-06-25 castaglia <castaglia>
-2002-06-24 21:27 jwm
+ * src/auth.c: Fixed minor indentation/spacing.
- * contrib/mod_ldap.c:
- #1659 - LDAP config handlers should use c->pool instead of
- permanent_pool
+2002-06-25 jwm <jwm>
-2002-06-24 17:38 castaglia
+ * contrib/mod_ldap.c: #1659 - LDAP config handlers should use
+ c->pool instead of permanent_pool
- * modules/mod_unixpw.c:
- Fixed compiler warning on FreeBSD concerning return value of the
- setgrent(3) function.
+2002-06-24 castaglia <castaglia>
-2002-06-24 16:24 castaglia
+ * modules/mod_auth.c, modules/mod_core.c: Changed use of
+ permanent_pool to c->pool in configuration handlers where
+ appropriate.
- * modules/: mod_auth.c, mod_core.c:
- Changed use of permanent_pool to c->pool in configuration
- handlers where appropriate.
+2002-06-24 castaglia <castaglia>
-2002-06-24 08:23 castaglia
+ * modules/mod_ls.c: Forgot to remove the ShowDotFiles configuration
+ handler function.
- * modules/mod_ls.c:
- Forgot to remove the ShowDotFiles configuration handler function.
+2002-06-24 castaglia <castaglia>
-2002-06-24 08:19 castaglia
+ * NEWS, modules/mod_ls.c, modules/mod_site.c: Removed the deprecated
+ AllowChmod and ShowDotFiles directives.
- * NEWS, modules/mod_ls.c, modules/mod_site.c:
- Removed the deprecated AllowChmod and ShowDotFiles directives.
+2002-06-23 castaglia <castaglia>
-2002-06-23 15:14 castaglia
+ * NEWS, include/dirtree.h, src/dirtree.c: Bug#1171 - Add ability to
+ handle backslash-escaped lines in configuration file
- * NEWS, include/dirtree.h, src/dirtree.c:
- Bug#1171 - Add ability to handle backslash-escaped lines in
- configuration file
+2002-06-23 jwm <jwm>
-2002-06-23 15:12 jwm
+ * NEWS: where the hell did I get 1304? this is #1569...
- * NEWS:
- where the hell did I get 1304? this is #1569...
+2002-06-23 jwm <jwm>
-2002-06-23 15:10 jwm
+ * NEWS: updates
- * NEWS:
- updates
+2002-06-23 castaglia <castaglia>
-2002-06-23 14:56 castaglia
+ * NEWS: Noting addition/work on Cygwin stuff.
- * NEWS:
- Noting addition/work on Cygwin stuff.
+2002-06-23 castaglia <castaglia>
-2002-06-23 12:09 castaglia
+ * README.cygwin: Minor spelling correction.
- * README.cygwin:
- Minor spelling correction.
+2002-06-23 jwm <jwm>
-2002-06-23 12:07 jwm
+ * configure: updated configure for #1304 - Cygwin support
- * configure:
- updated configure for #1304 - Cygwin support
+2002-06-23 jwm <jwm>
-2002-06-23 12:06 jwm
+ * README.cygwin: #1304 - README.cygwin Thanks to Stanislav Sinyagin
+ <ssinyagin at yahoo.com>
- * README.cygwin:
- #1304 - README.cygwin Thanks to Stanislav Sinyagin
- <ssinyagin at yahoo.com>
-
-2002-06-23 12:03 castaglia
+2002-06-23 castaglia <castaglia>
* include/conf.h, include/data.h, include/default_paths.h,
- include/dirtree.h, include/fs.h, include/ident.h, include/inet.h,
- include/io.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/fs.c, src/ftpcount.c, src/ftpshut.c,
- src/ftpwho.c, src/ident.c, src/inet.c, src/io.c, src/log.c,
- src/main.c, src/modules.c, src/pool.c, src/sets.c, src/support.c,
- src/timers.c, src/utils.c:
- Updated copyrights.
-
-2002-06-23 11:56 jwm
+ 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.
- * src/log.c, configure.in, src/inet.c, src/auth.c:
- cleaned up versions of #1304 - Cygwin support
+2002-06-23 jwm <jwm>
-2002-06-22 13:17 jwm
+ * configure.in, src/auth.c, src/inet.c, src/log.c: cleaned up
+ versions of #1304 - Cygwin support
- * modules/mod_xfer.c:
- minor LFS fix
+2002-06-22 jwm <jwm>
-2002-06-22 11:13 jwm
+ * modules/mod_xfer.c: minor LFS fix
- * 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 jwm <jwm>
-2002-06-22 00:02 castaglia
+ * 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
- * src/: ftpcount.1, ftpshut.8, ftpwho.1, proftpd.8:
- Minor corrections to man pages.
-
-2002-06-21 18:06 castaglia
+2002-06-22 castaglia <castaglia>
* NEWS, lib/Makefile.in, lib/glibc-glob.c, src/data.c,
- src/dirtree.c, src/ftpcount.c, src/io.c, src/log.c, src/main.c,
- src/pool.c, src/timers.c:
- Bug#1650 - Code cleanup
+ src/dirtree.c, src/log.c, src/main.c, src/pool.c, src/timers.c:
+ Bug#1650 - Code cleanup
-2002-06-21 17:54 castaglia
+2002-06-22 castaglia <castaglia>
- * modules/mod_auth.c:
- Fixed bad patching of the new TimeoutSession code.
+ * modules/mod_auth.c: Fixed bad patching of the new TimeoutSession
+ code.
-2002-06-21 17:47 castaglia
+2002-06-22 castaglia <castaglia>
- * NEWS, include/proftpd.h, modules/mod_auth.c:
- Bug#1306 - Add timeout for entire session
+ * NEWS, include/proftpd.h, modules/mod_auth.c: Bug#1306 - Add
+ timeout for entire session
-2002-06-21 17:24 castaglia
+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 12:36 castaglia
+ 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.
- * modules/mod_core.c:
- Fixed instance of pstrcat() call that did not properly have NULL
- as the last argument.
+2002-06-21 castaglia <castaglia>
-2002-06-21 11:54 castaglia
+ * modules/mod_core.c: Fixed instance of pstrcat() call that did not
+ properly have NULL as the last argument.
- * NEWS, modules/mod_ls.c:
- Bug#1650 - LsDefaultOptions doesn't work inside anon context
+2002-06-21 castaglia <castaglia>
-2002-06-20 17:40 castaglia
+ * NEWS, modules/mod_ls.c: Bug#1650 - LsDefaultOptions doesn't work
+ inside anon context
- * NEWS, modules/mod_ls.c:
- Bug#1647 - Unnecessary use of umode_t in mod_ls
+2002-06-21 castaglia <castaglia>
-2002-06-14 09:41 jwm
+ * NEWS, modules/mod_ls.c: Bug#1647 - Unnecessary use of umode_t in
+ mod_ls
- * Makefile.in:
- these symlinks aren't needed
+2002-06-14 jwm <jwm>
-2002-06-14 09:36 jwm
+ * Makefile.in: these symlinks aren't needed
- * contrib/mod_ldap.c:
- LDAPHomedirOnDemand cleanup/fixes
+2002-06-14 jwm <jwm>
-2002-06-14 09:19 castaglia
+ * contrib/mod_ldap.c: LDAPHomedirOnDemand cleanup/fixes
- * Makefile.in:
- Added .cvsignore files to the list of files cleaned up by 'make
- distclean'
+2002-06-14 castaglia <castaglia>
-2002-06-14 08:55 jwm
+ * Makefile.in: Added .cvsignore files to the list of files cleaned
+ up by 'make distclean'
- * doc/: API, development.notes:
- removing old cruft
+2002-06-12 castaglia <castaglia>
-2002-06-12 12:11 castaglia
+ * modules/mod_ls.c: Corrected spacing
- * modules/mod_ls.c:
- Corrected spacing
+2002-06-11 castaglia <castaglia>
-2002-06-11 10:13 castaglia
+ * configure: Updated configure script for LFS support detection.
- * configure:
- Updated configure script for LFS support detection.
-
-2002-06-11 10:09 castaglia
+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
+ 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 09:19 castaglia
+2002-06-11 castaglia <castaglia>
- * configure:
- Updated configure script
+ * configure: Updated configure script
-2002-06-11 09:18 castaglia
+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
+ 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 08:34 castaglia
+2002-06-11 castaglia <castaglia>
- * NEWS, src/auth.c:
- Bug#1463 - Add auth handler dispatch reporting at new debug level
- (level 6)
+ * NEWS, src/auth.c: Bug#1463 - Add auth handler dispatch reporting
+ at new debug level (level 6)
-2002-06-11 07:54 castaglia
+2002-06-11 castaglia <castaglia>
- * src/main.c:
- Removed relic function prototype (not needed).
+ * src/main.c: Removed relic function prototype (not needed).
-2002-06-11 07:49 castaglia
+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
+ 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 07:36 castaglia
+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, src/proftpd.8:
- Added Define, <IfDefine>, <IfModule> configuration directives, -D
- command-line option
-
-2002-06-11 07:30 castaglia
+ src/dirtree.c, src/main.c, src/modules.c: Added Define, <IfDefine>,
+ <IfModule> configuration directives, -D command-line option
- * NEWS, include/version.h, modules/mod_xfer.c, src/data.c:
+2002-06-11 castaglia <castaglia>
- Bug#1407 - ftp protocol differences
+ * NEWS, include/version.h, modules/mod_xfer.c, src/data.c: Bug#1407
+ - ftp protocol differences
-2002-06-08 19:55 castaglia
+2002-06-09 castaglia <castaglia>
* NEWS: Fixed version number. Sheesh.
-2002-06-08 19:40 castaglia
+2002-06-09 castaglia <castaglia>
- * ChangeLog:
- Updated ChangeLog
+ * ChangeLog: Updated ChangeLog
-2002-06-08 19:38 castaglia
+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 09:14 castaglia
-
- * NEWS, contrib/mod_sql.c:
-
- Added the mod_sql-4.08 from Andrew's site
-
-2002-05-30 14:09 castaglia
-
- * NEWS:
+ 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).
- Updated NEWS
+2002-06-06 castaglia <castaglia>
-2002-05-30 13:13 castaglia
+ * NEWS, contrib/mod_sql.c: Added the mod_sql-4.08 from Andrew's site
- * include/version.h:
+2002-05-30 castaglia <castaglia>
- Damn, I forgot to update this file.
+ * NEWS: Updated NEWS
-2002-05-30 13:07 castaglia
+2002-05-30 castaglia <castaglia>
- * ChangeLog:
+ * include/version.h: Damn, I forgot to update this file.
- Updating ChangeLog
+2002-05-30 castaglia <castaglia>
-2002-05-30 09:22 castaglia
+ * ChangeLog: Updating ChangeLog
- * NEWS, contrib/xferstats.holger-preiss:
+2002-05-30 castaglia <castaglia>
- Bug#1394: ftpstats program is not working, cust says "There was
- no data to process."
+ * NEWS, contrib/xferstats.holger-preiss: Bug#1394: ftpstats program
+ is not working, cust says "There was no data to process."
-2002-05-30 09:06 jwm
+2002-05-30 jwm <jwm>
- * contrib/mod_ldap.c:
- a few memory management fixes
+ * contrib/mod_ldap.c: a few memory management fixes
-2002-05-28 18:09 jwm
+2002-05-29 jwm <jwm>
- * doc/rfc/: draft-ietf-ftpext-mlst-12.txt,
- draft-ietf-ftpext-mlst-15.txt:
- new version of mlst draft. the changes don't appear to change
- anything we currently implement.
+ * 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-26 19:31 jwm
+2002-05-27 jwm <jwm>
- * contrib/: README.ratio, mod_ratio.c:
- new mod_ratio from James Dogopoulos
+ * contrib/README.ratio, contrib/mod_ratio.c: new mod_ratio from
+ James Dogopoulos
-2002-05-22 10:08 flyhmstr
+2002-05-22 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: replacing the directive guide
-2002-05-21 13:47 castaglia
+2002-05-21 castaglia <castaglia>
* NEWS, contrib/mod_readme.c, include/data.h, include/dirtree.h,
- include/fs.h, include/ident.h, include/inet.h, include/io.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_pam.c, modules/mod_site.c,
- modules/mod_unixpw.c, modules/mod_xfer.c, src/data.c,
- src/dirtree.c, src/fs.c, src/inet.c, src/io.c, src/log.c,
- src/main.c, src/modules.c, src/pool.c, src/support.c,
- src/timers.c, src/utils.c:
-
- Bug#1379 - Replace bzero/bcopy with memset/memcpy Bug#1521 -
- Function prototype cleanup
-
-2002-05-21 11:59 castaglia
-
- * NEWS, src/timers.c:
-
- Bug#1627 - Sessions not timing out
-
-2002-05-21 11:29 castaglia
-
- * configure:
-
- TJ: updated configure script to match configure.in (necessary
- delay in commits *sigh*)
-
-2002-05-21 11:26 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 13:50 castaglia
-
- * NEWS, modules/mod_xfer.c:
-
- TJ: Bug#1595 - ProFTPD closes connection when accessed from Lynx
- browser
-
-2002-05-19 13:45 castaglia
-
- * NEWS, include/proftpd.h, src/log.c, src/main.c:
-
- TJ: Bug#1612 - missing/broken ident logging
+ 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-19 07:38 jwm
+2002-05-21 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec.in:
- oops, that wasn't ready for commit yet. reverting to 1.12.
+ * NEWS, src/timers.c: Bug#1627 - Sessions not timing out
-2002-05-19 07:35 jwm
+2002-05-21 castaglia <castaglia>
- * Makefile.in, contrib/mod_ldap.c,
- contrib/dist/rpm/proftpd.spec.in:
- #1626 - install_user is not used everywhere
+ * configure: TJ: updated configure script to match configure.in
+ (necessary delay in commits *sigh*)
-2002-05-18 08:06 jwm
+2002-05-21 castaglia <castaglia>
- * contrib/dist/rpm/ftp.pamd:
- language cleanup/clarification
+ * 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-18 07:59 jwm
+2002-05-19 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.init.d:
- cleanup
+ * NEWS, modules/mod_xfer.c: TJ: Bug#1595 - ProFTPD closes connection
+ when accessed from Lynx browser
-2002-05-18 07:48 jwm
+2002-05-19 castaglia <castaglia>
- * contrib/dist/rpm/proftpd.spec.in:
- fixing a typo (' -> `)
+ * NEWS, include/proftpd.h, src/log.c, src/main.c: TJ: Bug#1612 -
+ missing/broken ident logging
-2002-05-15 05:55 jwm
+2002-05-19 jwm <jwm>
- * contrib/mod_ldap.c:
- 2.8.4: fix for segfaults when optional arguments are omitted from
- LDAPDoGIDLookups directive
+ * Makefile.in, contrib/mod_ldap.c: #1626 - install_user is not used
+ everywhere
-2002-05-13 07:07 castaglia
+2002-05-18 jwm <jwm>
- * ChangeLog:
+ * contrib/dist/rpm/ftp.pamd: language cleanup/clarification
- TJ: latest ChangeLog
+2002-05-18 jwm <jwm>
-2002-05-13 07:05 castaglia
+ * contrib/dist/rpm/proftpd.init.d: cleanup
- * NEWS, include/version.h:
+2002-05-15 jwm <jwm>
- TJ: updated NEWS, version.h with date of 1.2.5rc2 release
+ * contrib/mod_ldap.c: 2.8.4: fix for segfaults when optional
+ arguments are omitted from LDAPDoGIDLookups directive
-2002-05-12 22:16 castaglia
+2002-05-13 castaglia <castaglia>
- * configure:
+ * ChangeLog: TJ: latest ChangeLog
- TJ: here's the new configure to go with the configure.in
+2002-05-13 castaglia <castaglia>
-2002-05-12 22:15 castaglia
+ * NEWS, include/version.h: TJ: updated NEWS, version.h with date of
+ 1.2.5rc2 release
- * configure.in:
+2002-05-13 castaglia <castaglia>
- 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.
+ * configure: TJ: here's the new configure to go with the
+ configure.in
-2002-05-12 22:03 castaglia
+2002-05-13 castaglia <castaglia>
- * configure.in:
+ * 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.
- TJ: updated configure.in's copyright information
+2002-05-13 castaglia <castaglia>
-2002-05-12 16:22 castaglia
+ * configure.in: TJ: updated configure.in's copyright information
- * contrib/README.mod_wrap:
+2002-05-12 castaglia <castaglia>
- TJ: updated README for mod_wrap-1.2.3.
+ * contrib/README.mod_wrap: TJ: updated README for mod_wrap-1.2.3.
-2002-05-12 15:43 castaglia
+2002-05-12 castaglia <castaglia>
- * CREDITS:
+ * CREDITS: TJ: updated PGP key fingerprint
- TJ: updated PGP key fingerprint
+2002-05-12 flyhmstr <flyhmstr>
-2002-05-12 14:02 flyhmstr
+ * doc/Configuration.html, doc/faq.html: ML: updated directive list
+ and FAQ for rc2
- * doc/: Configuration.html, faq.html: ML: updated directive list
- and FAQ for rc2
+2002-05-12 castaglia <castaglia>
-2002-05-12 13:48 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).
- * config.h.in, configure, configure.in, include/io.h,
- 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 06:49 flyhmstr
+2002-05-11 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: updated directive list
-2002-05-11 02:55 flyhmstr
+2002-05-11 flyhmstr <flyhmstr>
* CREDITS, NEWS: ML: updated NEWS and CREDITS
-2002-05-11 02:26 flyhmstr
+2002-05-11 flyhmstr <flyhmstr>
* NEWS: ML: news update
-2002-05-11 02:25 flyhmstr
+2002-05-11 flyhmstr <flyhmstr>
* doc/faq.html: ML: adding new format FAQ
-2002-05-10 13:14 castaglia
-
- * NEWS:
-
- Bug#1580 - RPM can't be built by non-root user
+2002-05-10 castaglia <castaglia>
-2002-05-10 13:08 castaglia
+ * NEWS: Bug#1580 - RPM can't be built by non-root user
- * contrib/dist/rpm/proftpd.spec.in:
-
- Bug#1580 - RPM can't be built by non-root user
-
-2002-05-10 10:59 flyhmstr
+2002-05-10 flyhmstr <flyhmstr>
* CREDITS, NEWS: ML: updated credits and news
-2002-05-10 10:53 castaglia
-
- * NEWS, configure, configure.in:
-
- Bug#1546 - PF_ARGV_WRITABLE, PF_ARGV_WRITEABLE are used mixed.
+2002-05-10 castaglia <castaglia>
-2002-05-10 10:28 castaglia
+ * NEWS, configure, configure.in: Bug#1546 - PF_ARGV_WRITABLE,
+ PF_ARGV_WRITEABLE are used mixed.
- * NEWS, modules/mod_core.c, src/dirtree.c:
+2002-05-10 castaglia <castaglia>
- Bug#1608 - src/dirtree.c produces two unnecessary warnings
- Bug#1610 - compiling mod_core.c gives an unneeded/dazzling msg
+ * 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 10:04 flyhmstr
+2002-05-10 flyhmstr <flyhmstr>
* NEWS: ML: updating NEWS
-2002-05-10 09:52 flyhmstr
+2002-05-10 flyhmstr <flyhmstr>
* include/ftp.h: ML: updating licence
-2002-05-10 09:50 flyhmstr
-
- * doc/: Changes-1.2.0pre3, FAQ-config.html, Undocumented.txt,
- license.txt, 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 06:00 jwm
-
- * NEWS:
- updating for mod_ldap 2.8.3 release
-
-2002-05-10 06:00 jwm
-
- * ChangeLog:
- updating changelog
-
-2002-05-10 05:51 jwm
-
- * contrib/mod_ldap.c:
- updating to 2.8.3
+2002-05-10 flyhmstr <flyhmstr>
-2002-05-10 05:49 jwm
+ * 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.
- * README.LDAP:
- new mod_ldap README
+2002-05-10 jwm <jwm>
-2002-05-10 01:05 castaglia
+ * NEWS: updating for mod_ldap 2.8.3 release
- * src/: ident.c, inet.c:
+2002-05-10 jwm <jwm>
- 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.
+ * ChangeLog: updating changelog
-2002-05-09 15:59 castaglia
+2002-05-10 jwm <jwm>
- * src/ident.c:
+ * contrib/mod_ldap.c: updating to 2.8.3
- TJ: cleaned up get_ident(), adding proper
- cleanup/resource-freeing code at various exit points from the
- function
+2002-05-10 jwm <jwm>
-2002-05-09 14:29 castaglia
+ * README.LDAP: new mod_ldap README
- * src/ident.c:
+2002-05-10 castaglia <castaglia>
- 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
+ * 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 13:42 castaglia
+2002-05-09 castaglia <castaglia>
- * src/main.c:
+ * src/ident.c: TJ: cleaned up get_ident(), adding proper
+ cleanup/resource-freeing code at various exit points from the
+ function
- TJ: mistakenly changed default setting of IdentLookups to "off"
- with prior changes, setting default back to "on"
+2002-05-09 castaglia <castaglia>
-2002-05-09 13:15 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
- * modules/mod_auth.c, modules/mod_core.c, src/main.c, src/timers.c:
+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"
- 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>
-2002-05-09 10:42 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
- * NEWS:
+2002-05-09 castaglia <castaglia>
- TJ: updated NEWS
+ * NEWS: TJ: updated NEWS
-2002-05-09 10:36 castaglia
+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,
- modules/mod_unixpw.c, src/dirtree.c, src/main.c:
+ 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
- #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 13:55 flyhmstr
+2002-05-08 flyhmstr <flyhmstr>
* NEWS: ML: news update
-2002-05-08 13:51 flyhmstr
+2002-05-08 flyhmstr <flyhmstr>
* doc/Configuration.html: ML: adding new version of the directive
- list
-
-2002-05-08 13:50 flyhmstr
+ list
- * doc/Configuration.html: ML: removing old version of directive
- list
+2002-05-08 flyhmstr <flyhmstr>
-2002-05-08 13:34 castaglia
+ * doc/Configuration.html: ML: removing old version of directive list
- * ChangeLog:
+2002-05-08 castaglia <castaglia>
- Updated ChangeLog
-
-2002-05-08 12:44 castaglia
+ * ChangeLog: Updated ChangeLog
- * NEWS:
+2002-05-08 castaglia <castaglia>
- TJ: added NEWS entries for recently committed patches for
- (fixed?) bug reports
+ * NEWS: TJ: added NEWS entries for recently committed patches for
+ (fixed?) bug reports
-2002-05-08 12:21 castaglia
+2002-05-08 castaglia <castaglia>
* modules/mod_auth.c, src/dirtree.c, src/inet.c, src/main.c,
- src/pool.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
- #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 11:39 castaglia
+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)
+ 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 08:56 flood
+2002-03-06 flood <flood>
* ChangeLog: Updated ChangeLog.
-2002-03-06 08:56 flood
+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
+ * 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-02-28 18:49 flood
+2002-03-01 flood <flood>
* src/log.c: possible sigsegv introduced by patch for bug 1520
-2002-02-28 11:43 flood
+2002-02-28 flood <flood>
* NEWS, src/dirtree.c: #1468 - segfault with empty .ftpaccess
-2002-02-28 11:32 flood
+2002-02-28 flood <flood>
* ChangeLog: Updated ChangeLog.
-2002-02-28 11:30 flood
+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, modules/mod_unixpw.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 11:13 flood
+ 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
+ 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 09:35 flood
+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/fs.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
+ 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 08:50 flood
+2002-02-14 flood <flood>
- * NEWS, contrib/ftpasswd, contrib/ftpasswd.html: added
- contrib/ftpasswd utility script (contributed by TJ)
+ * NEWS, contrib/ftpasswd: added contrib/ftpasswd utility script
+ (contributed by TJ)
-2002-02-14 08:39 flood
+2002-02-14 flood <flood>
* NEWS, contrib/INSTALL.mod_wrap, contrib/README.mod_wrap,
- contrib/genuser.pl, contrib/mod_wrap.c, contrib/mod_wrap.html:
- New mod_wrap (1.2.3) removed contrib/genuser.pl (per TJ)
+ contrib/mod_wrap.c: New mod_wrap (1.2.3) removed contrib/genuser.pl
+ (per TJ)
-2002-01-23 16:22 flood
+2002-01-24 flood <flood>
* ChangeLog: Updated ChangeLog.
-2002-01-23 16:21 flood
+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
+ semantics incorrect under Linux #1450 Timers removed
+ immediately/alarm() return no longer used for timing #1446
+ DefaultServer overrides SocketBindTight
-2001-12-18 08:21 flood
+2001-12-18 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-12-18 08:21 flood
+2001-12-18 flood <flood>
* NEWS, include/version.h: bumped version
-2001-12-18 08:14 flood
+2001-12-18 flood <flood>
* NEWS, doc/Configuration.html, modules/mod_ls.c: New Directive:
- UseGlobbing, allows glibc-based filepath globbing to be disabled.
+ UseGlobbing, allows glibc-based filepath globbing to be disabled.
-2001-12-17 12:39 flood
+2001-12-17 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-12-17 12:39 flood
+2001-12-17 flood <flood>
- * ChangeLog, NEWS, modules/mod_xfer.c: - Check retr_file for
- validity when RESToring
+ * ChangeLog, NEWS, modules/mod_xfer.c: - Check retr_file for validity when RESToring
-2001-12-17 12:36 flood
+2001-12-17 flood <flood>
- * NEWS, modules/mod_xfer.c: - Bug 1391 - ABOR handler now clears
- session.xfer
+ * NEWS, modules/mod_xfer.c: - Bug 1391 - ABOR handler now clears session.xfer
-2001-12-17 12:07 flood
+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.
+ * 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 09:58 flood
+2001-12-17 flood <flood>
* NEWS, README.LDAP, contrib/mod_ldap.c: New mod_ldap (2.8.1)
-2001-12-13 12:37 flood
+2001-12-13 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-12-13 12:35 flood
+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_pam.c, modules/mod_unixpw.c, modules/mod_xfer.c,
- src/auth.c, src/dirtree.c, src/fs.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 08:15 flood
+ 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 [...]
+ 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
+ commit
-2001-11-30 09:34 flood
+2001-11-30 flood <flood>
* ChangeLog: updated ChangeLog
-2001-11-30 09:34 flood
+2001-11-30 flood <flood>
- * NEWS, README.mod_sql, contrib/UPGRADE.mod_sql, contrib/mod_sql.c,
- contrib/mod_sql_mysql.c, contrib/mod_sql_postgres.c,
- sample-configurations/mod_sql.conf: new mod_sql (4.07)
+ * 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 10:54 flood
+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
+ 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 10:20 flood
+2001-11-29 flood <flood>
* ChangeLog: updated ChangeLog
-2001-11-29 10:20 flood
+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
+ 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 09:30 flood
+2001-11-08 flood <flood>
* NEWS, configure, configure.in: #1113-Make.rules for HPUX
- incorrectly generated
+ incorrectly generated
-2001-11-08 09:28 flood
+2001-11-08 flood <flood>
* NEWS, contrib/README.mod_wrap, contrib/mod_wrap.c: new mod_wrap
- (1.2.2) from tj
+ (1.2.2) from tj
-2001-11-08 09:24 flood
+2001-11-08 flood <flood>
* NEWS, modules/mod_auth.c: #1334-MaxClients none forbids connect
-2001-10-19 08:31 flood
+2001-10-19 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-10-19 08:28 flood
+2001-10-19 flood <flood>
* include/version.h: 1.2.4
-2001-10-19 08:27 flood
+2001-10-19 flood <flood>
* NEWS, modules/mod_core.c, src/dirtree.c: 1348-umask argument not
- stored correctly
+ stored correctly
-2001-10-18 10:13 flood
+2001-10-18 flood <flood>
* ChangeLog: Updated ChangeLog
-2001-10-18 10:13 flood
+2001-10-18 flood <flood>
* NEWS, include/version.h: 1.2.3-release
-2001-10-18 10:11 flood
+2001-10-18 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-10-18 10:10 flood
+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
+ 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 09:51 flood
+2001-10-18 flood <flood>
* NEWS, src/dirtree.c: #1247 - Fix Allow/Deny boolean logic.
-2001-09-26 08:35 flood
+2001-09-26 flood <flood>
* NEWS, modules/mod_core.c: #1327 AllowForeignAddress mergedown
-2001-09-26 08:34 flood
+2001-09-26 flood <flood>
* NEWS, include/dirtree.h, modules/mod_core.c, src/dirtree.c: #1280
- datatype fixups
+ datatype fixups
-2001-09-26 08:32 flood
+2001-09-26 flood <flood>
* NEWS, modules/mod_ls.c: #1311 - sigsegv under DirFake* directives
-2001-09-26 08:00 flood
+2001-09-26 flood <flood>
* NEWS, include/conf.h: #1305 - limits.h now included
-2001-09-26 07:58 flood
+2001-09-26 flood <flood>
* NEWS, src/inet.c: #1331 - forward-resolve reverse dns
-2001-08-24 10:33 flood
+2001-08-24 flood <flood>
* src/main.c: patched to not display PASS password on proctitle
-2001-08-17 08:43 flood
+2001-08-17 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-08-17 08:43 flood
+2001-08-17 flood <flood>
* NEWS, include/version.h: 1.2.2-final
-2001-08-16 13:00 flood
+2001-08-16 flood <flood>
* include/conf.h: Double license in header conf.h
-2001-08-16 12:58 flood
+2001-08-16 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-08-16 12:58 flood
+2001-08-16 flood <flood>
- * ChangeLog, NEWS, contrib/mod_test.c, doc/Configuration.html:
- Updated docs, moved mod_test.c to attic
+ * ChangeLog, NEWS, doc/Configuration.html: Updated docs, moved
+ mod_test.c to attic
-2001-08-16 12:54 flood
+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
+ 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 11:54 flood
+2001-08-16 flood <flood>
* NEWS, contrib/mod_sql.c: new mod_sql
-2001-08-01 08:18 flood
+2001-08-01 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-08-01 08:18 flood
+2001-08-01 flood <flood>
- * NEWS, README.mod_sql: README.mod_sql update from author
+ * NEWS: README.mod_sql update from author
-2001-08-01 08:17 flood
+2001-08-01 flood <flood>
- * INSTALL, NEWS, contrib/mod_quota.c, doc/Configuration.html,
- modules/mod_ls.c, src/xferlog.5: #1187 Upstream update to
- mod_quota #1217,1262,1111,1216 Documentation updates #1145
- DirFakeUser now applies to STAT as well as LIST/NLST
+ * 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 08:03 flood
+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
+ src/dirtree.c, src/main.c: #1219 - gcc 3.0 fix #1232 - UserOwner
+ changes both uid and gid
-2001-07-04 08:28 flood
+2001-07-04 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-07-04 08:28 flood
+2001-07-04 flood <flood>
* NEWS, src/log.c: #1230 - size mismatch struct utmpx in Solaris 8
- (sparcv9)
+ (sparcv9)
-2001-07-03 07:51 flood
+2001-07-03 flood <flood>
* NEWS, modules/mod_auth.c: #1098 - Non~* DefaultRoot bug
-2001-07-03 07:49 flood
+2001-07-03 flood <flood>
* NEWS, modules/mod_xfer.c: #1234 ABOR must always return 226
-2001-07-02 11:56 flood
+2001-07-02 flood <flood>
* NEWS, contrib/mod_sql.c: New mod_sql
-2001-06-19 18:23 flood
+2001-06-20 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-06-19 18:23 flood
+2001-06-20 flood <flood>
* NEWS, include/version.h: Bump version, final commit for 1.2.2rc3
-2001-06-19 18:19 flood
+2001-06-20 flood <flood>
* NEWS, src/main.c: #1215 - Removes setpgid from fork_server
-2001-06-19 18:17 flood
+2001-06-20 flood <flood>
* NEWS, modules/mod_ls.c: #1145 - DirFakeUser can display currently
- logged in user
+ logged in user
-2001-06-19 18:13 flood
+2001-06-20 flood <flood>
* NEWS, doc/Configuration.html: #1164,1020,1134,1190,1207 - Doc
- updates
+ updates
-2001-06-19 11:51 flood
+2001-06-19 flood <flood>
* NEWS, src/data.c: #1210 Possible silent truncation in net-ascii
- mode
+ mode
-2001-06-18 11:02 flood
+2001-06-18 flood <flood>
* NEWS, modules/mod_ls.c, src/dirtree.c: #1212 Special files in
- directory listings
+ directory listings
-2001-06-18 10:40 flood
+2001-06-18 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-06-18 10:39 flood
+2001-06-18 flood <flood>
* NEWS, modules/mod_core.c: #1189 Directory dups allowed in
- Anonymous
+ Anonymous
-2001-06-18 10:35 flood
+2001-06-18 flood <flood>
* NEWS, modules/mod_auth.c, modules/mod_core.c, modules/mod_ls.c,
- src/dirtree.c, src/fs.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
+ 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 10:13 flood
+2001-06-18 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-06-18 10:12 flood
-
- * NEWS, contrib/mod_linuxprivs.c, include/conf.h, include/data.h,
- include/default_paths.h, include/dirtree.h, include/fs.h,
- include/ident.h, include/inet.h, include/io.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_pam.c, modules/mod_site.c,
- modules/mod_unixpw.c, modules/mod_xfer.c, src/auth.c, src/data.c,
- src/dirtree.c, src/fs.c, src/ftpcount.c, src/ftpshut.c,
- src/ftpwho.c, src/ident.c, src/inet.c, src/io.c, src/log.c,
- src/main.c, src/modules.c, src/pool.c, src/sets.c, src/support.c,
- src/timers.c, src/utils.c: Updated Copyright/License to allow
- linking to OpenSSL
-
-2001-06-03 08:17 flood
+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 08:17 flood
+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()
+ homedir symlink dereference #1189 - duplicated <Directory> contexts
+ not allowed #1183 - removed redundant find_class()
-2001-06-03 06:38 flood
+2001-06-03 flood <flood>
- * NEWS, contrib/xferstats.holger-preiss,
- contrib/dist/rpm/proftpd.init.d, 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
+ * 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 09:08 flood
+2001-05-31 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-05-31 09:08 flood
+2001-05-31 flood <flood>
- * NEWS, README.mod_sql, contrib/mod_sql.c, contrib/mod_sql_mysql.c,
- contrib/mod_sql_postgres.c: New mod_sql and friends
+ * NEWS, contrib/mod_sql.c, contrib/mod_sql_mysql.c,
+ contrib/mod_sql_postgres.c: New mod_sql and friends
-2001-05-21 14:15 flood
+2001-05-21 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-05-21 14:14 flood
+2001-05-21 flood <flood>
- * NEWS, contrib/mod_readme.c, include/conf.h, modules/mod_core.c,
- modules/mod_readme.c: Bug 1175 - GNU HURD portability Bug 1177 -
- mod_readme.c moved to contrib/ Bug 1176 - PWD/XPWD now G_DIRS and
- limitable
+ * 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 13:48 flood
+2001-05-21 flood <flood>
* NEWS, lib/glibc-glob.c: Bug 1155 - conditional HPUX headers in
- glibc-glob.c
+ glibc-glob.c
-2001-05-16 20:22 flood
+2001-05-17 flood <flood>
* ChangeLog: Updated ChangeLog
-2001-05-16 20:22 flood
+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
+ 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 07:35 flood
+2001-05-16 flood <flood>
* NEWS, src/inet.c: Bug #1152 - integer array overflow w.r.t.
- PassivePorts
+ PassivePorts
-2001-04-23 20:36 flood
+2001-04-24 flood <flood>
* NEWS, modules/mod_ls.c: Bug 1137 - NLST displayed hidden files
-2001-04-23 11:18 flood
+2001-04-23 flood <flood>
* NEWS: Final NEWS update for 1.2.2rc2 (old)
-2001-04-20 08:20 flood
+2001-04-20 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-04-20 08:20 flood
+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.
+ cast for better compilation on IRIX 6.2.
-2001-04-20 05:31 flood
+2001-04-20 flood <flood>
* NEWS, modules/mod_site.c: Log warning when AllowChmod is used.
-2001-04-18 08:45 flood
+2001-04-18 flood <flood>
- * src/data.c: Ooops. sendfile() Linux subtraction was backwards.
- ;)
+ * src/data.c: Ooops. sendfile() Linux subtraction was backwards. ;)
-2001-04-18 08:40 flood
+2001-04-18 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-04-18 08:40 flood
+2001-04-18 flood <flood>
* NEWS, src/data.c: Bug #1128 - Incorrect sendfile() semantics.
-2001-04-13 11:32 flood
+2001-04-13 flood <flood>
* modules/mod_core.c: Fixed sigsegv on SITE bug, only in cvs
- versions.
+ versions.
-2001-04-11 13:20 flood
+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. ;)
+ case insensitivity patch. case sensitivity is actually required in
+ some places. ;)
-2001-04-11 12:10 flood
+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
+ glibc-glob.c Bug 1090 - logging now works with PRE_CMD failed
+ handlers
-2001-04-11 12:00 flood
+2001-04-11 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-04-11 12:00 flood
+2001-04-11 flood <flood>
* src/dirtree.c: MasqueradeAddress now prints LOG_INFO message.
-2001-04-11 11:57 flood
+2001-04-11 flood <flood>
- * NEWS, contrib/mod_quota.c, include/log.h, modules/mod_auth.c,
- modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c,
- modules/mod_unixpw.c, src/dirtree.c, src/ftpcount.c,
- src/ftpshut.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
+ * 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-26 19:12 flood
+2001-03-27 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-03-26 19:12 flood
+2001-03-27 flood <flood>
* doc/Configuration.html: Bugs #1088, 1058 & 1041 - Doc updates for
- 1.2.2.
+ 1.2.2.
-2001-03-26 18:57 flood
+2001-03-27 flood <flood>
* NEWS: Updated NEWS version
-2001-03-24 07:59 flood
+2001-03-24 flood <flood>
* ChangeLog: Final commit for 1.2.2rc1.
-2001-03-24 07:59 flood
+2001-03-24 flood <flood>
* include/version.h: Bumped version number to 1.2.2rc1.
-2001-03-24 07:56 flood
+2001-03-24 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-03-24 07:56 flood
+2001-03-24 flood <flood>
* NEWS, modules/mod_auth.c: Bug #1085: better logging of two auth
- messages in mod_auth.
+ messages in mod_auth.
-2001-03-24 07:46 flood
+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
+ Possible inf. loop in throttle code. Bug #1074: Doc fixes Bug
+ #1070: Doc fixes
-2001-03-23 05:17 flood
+2001-03-23 flood <flood>
- * NEWS, README.mod_sql, 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
+ * 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 04:54 flood
+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.
+ handling of uid/gid type casts and conversions.
-2001-03-22 13:43 flood
+2001-03-22 flood <flood>
* NEWS, modules/mod_auth.c: Bug #1049 - passwd/group files are now
- close/re-opened at USER/PASS.
+ close/re-opened at USER/PASS.
-2001-03-22 12:56 flood
+2001-03-22 flood <flood>
* src/dirtree.c: Added debugging to umask code.
-2001-03-21 16:12 flood
+2001-03-22 flood <flood>
* include/glibc-glob.h: glibc glob header should now be more
- portable
+ portable
-2001-03-17 12:34 flood
+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, lib/glob.c, lib/glob.h,
- src/fs.c: Bug #1066 - new GNU glob which protects against DoS
- attacks.
+ 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-12 16:23 flood
+2001-03-13 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-03-12 16:22 flood
+2001-03-13 flood <flood>
* contrib/mod_sql.c: New mod_sql from maintainer.
-2001-03-11 06:23 flood
+2001-03-11 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-03-11 06:23 flood
+2001-03-11 flood <flood>
* NEWS, modules/mod_core.c, src/main.c: Added MasqueradeAddress
- feature.
+ feature.
-2001-03-09 10:49 flood
+2001-03-09 flood <flood>
* NEWS, modules/mod_auth.c, modules/mod_core.c: Bug #1044 - New
- directive: AccessDenyMsg
+ directive: AccessDenyMsg
-2001-03-09 10:16 flood
+2001-03-09 flood <flood>
- * src/main.c: Bug #1056 (second part) - SIGSEGV is no longer
- handled when inside the SIGSEGV handler.
+ * src/main.c: Bug #1056 (second part) - SIGSEGV is no longer handled
+ when inside the SIGSEGV handler.
-2001-03-09 08:14 flood
+2001-03-09 flood <flood>
- * NEWS, src/ftpcount.c: Bug #1055 - ftpwho/ftpcount scan
- proftpd.conf for scoreboard path.
+ * NEWS: Bug #1055 - ftpwho/ftpcount scan proftpd.conf for scoreboard
+ path.
-2001-03-09 05:54 flood
+2001-03-09 flood <flood>
- * NEWS, config.h.in, configure, configure.in,
- contrib/dist/rpm/proftpd.spec.in, src/ftpcount.1, src/ftpshut.8,
- src/ftpwho.1, src/pool.c, src/proftpd.8, src/xferlog.5: 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
+ * 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 08:00 flood
+2001-03-01 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-03-01 08:00 flood
+2001-03-01 flood <flood>
* NEWS: New NEWS
-2001-03-01 07:49 flood
+2001-03-01 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-03-01 07:48 flood
+2001-03-01 flood <flood>
- * README, README.mod_sql, README.ports: Updated READMEs.
+ * README, README.ports: Updated READMEs.
-2001-02-28 19:18 flood
+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.
+ 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 15:01 flood
+2001-02-28 flood <flood>
- * doc/rfc/draft-ietf-ftpext-mlst-08.txt,
- doc/rfc/draft-ietf-ftpext-mlst-12.txt, 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
+ * 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 09:07 flood
+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
+ --disable-shadow now works. More informative message for REST w/
+ HiddenStor. Default CFLAGS changed from -O6 to -O2
-2001-02-27 13:19 flood
+2001-02-27 flood <flood>
- * contrib/: mod_ldap.c, mod_sql.c, dist/rpm/proftpd.spec.in:
- Updated RPM spec (again) as well as new mod_ldap and mod_sql
- contrib modules.
+ * 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 11:20 flood
+2001-02-27 flood <flood>
- * contrib/mod_sql.c, contrib/dist/rpm/proftpd.spec.in,
- include/version.h: New RPM .spec and mod_sql.c
+ * contrib/mod_sql.c, include/version.h: New RPM .spec and mod_sql.c
-2001-02-26 12:14 flood
+2001-02-26 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-26 12:13 flood
+2001-02-26 flood <flood>
* Makefile.in, NEWS, include/version.h: Final commit to 1.2.0-final
- release
+ release
-2001-02-26 09:59 flood
+2001-02-26 flood <flood>
* src/support.c: access_check() always succeeds for root now.
-2001-02-26 09:50 flood
+2001-02-26 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-26 09:50 flood
+2001-02-26 flood <flood>
* contrib/mod_ldap.c: New mod_ldap.c
-2001-02-24 18:13 flood
+2001-02-25 flood <flood>
* contrib/mod_sql.c: Patch from mod_sql maintainer.
-2001-02-24 16:40 flood
+2001-02-25 flood <flood>
* CREDITS, doc/Configuration.html: Bug #1034 - Final clean-up for
- docs. CREDITS - added Chuck
+ docs. CREDITS - added Chuck
-2001-02-23 20:11 flood
+2001-02-24 flood <flood>
- * Makefile.in, configure, configure.in, contrib/README.mod_sql,
- modules/mod_auth.c: Bug #1033 - access denied text fix Minor
- tweaks to configure, updates distclean rule in Makefile
+ * 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-23 19:53 flood
+2001-02-24 flood <flood>
- * README.mod_sql, configure, configure.in, contrib/README.mod_sql,
- contrib/mod_sql.c: Bug #1031 - update from mod_sql maintainer New
- README.mod_sql configure no longer duplicates additional modules'
- libraries.
+ * 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-23 18:37 flood
+2001-02-24 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-23 18:37 flood
+2001-02-24 flood <flood>
- * CREDITS, README.mod_sql-3.0, contrib/README.mod_sql-3.0,
- contrib/README.mod_sqlpw: Removed mod_sql docs per AAH. New docs
- will be added with more appropriate filenames.
+ * CREDITS: Removed mod_sql docs per AAH. New docs will be added
+ with more appropriate filenames.
-2001-02-23 15:35 flood
+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.
+ 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-22 19:08 flood
+2001-02-23 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-22 18:47 flood
+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.
+ 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-22 16:59 flood
+2001-02-23 flood <flood>
* include/inet.h, src/inet.c, src/main.c: Bug #370 - race condition
- under heavy load at child startup
+ under heavy load at child startup
-2001-02-22 16:53 flood
+2001-02-23 flood <flood>
* contrib/mod_sql.c: New mod_sql 3.01 from Andrew Houghton
- <aah at acm.org>
+ <aah at acm.org>
-2001-02-22 16:36 flood
+2001-02-23 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-22 16:35 flood
+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.
+ 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 15:32 flood
+2001-02-22 flood <flood>
* modules/mod_ls.c: Bug #1016 - Listing "." files should work again
- + tweak to IgnoreHidden.
+ + tweak to IgnoreHidden.
-2001-02-22 14:39 flood
+2001-02-22 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-22 14:39 flood
+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.
+ modules/mod_xfer.c, src/dirtree.c: Bug #1023 - Fix for IgnoreHidden
+ boolean patch problem introduced in rc2.
-2001-02-21 20:51 flood
+2001-02-22 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-21 20:51 flood
+2001-02-22 flood <flood>
* Make.rules.in, Makefile.in, include/.cvsignore,
- include/version.h, modules/mod_unixpw.c, 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.
+ 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-21 18:48 flood
+2001-02-22 flood <flood>
* configure: configure needs a new timestamp :)
-2001-02-21 18:44 flood
+2001-02-22 flood <flood>
* ChangeLog: Updated ChangeLog, re-ran autoconf
-2001-02-21 17:48 flood
+2001-02-22 flood <flood>
- * NEWS, src/log.c: Logging is now done with a single write()
- syscall
+ * NEWS, src/log.c: Logging is now done with a single write() syscall
-2001-02-21 17:09 flood
+2001-02-22 flood <flood>
* modules/mod_core.c, src/main.c: Bug #1009 - FTP logins are now
- logged to match logouts.
+ logged to match logouts.
-2001-02-21 14:33 flood
+2001-02-21 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-21 14:33 flood
+2001-02-21 flood <flood>
* CREDITS, src/log.c: Bug #1021 - fix for ftpwho/ftpcount not
- working (_pid_exists() in log.c)
+ working (_pid_exists() in log.c)
-2001-02-20 19:17 flood
+2001-02-21 flood <flood>
- * modules/: mod_unixpw.c, mod_xfer.c: Bug #1015 - Format string for
- long long uids. REST command now returns failure message if used
- where HiddenStor is enabled.
+ * 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-20 18:40 flood
+2001-02-21 flood <flood>
* ChangeLog, NEWS: Updated NEWS
-2001-02-20 18:33 flood
+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)
+ 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 12:34 flood
+2001-02-20 flood <flood>
* configure, configure.in, include/version.h, src/main.c: Added
- --version-status which displays extended version information.
+ --version-status which displays extended version information.
-2001-02-19 20:50 flood
+2001-02-20 flood <flood>
* src/main.c: Timeout and normal logout syslog messages are now
- logged at LOG_INFO instead of LOG_NOTICE.
+ logged at LOG_INFO instead of LOG_NOTICE.
-2001-02-19 19:26 flood
+2001-02-20 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-19 19:26 flood
+2001-02-20 flood <flood>
* modules/mod_xfer.c: Bug #1012 - Fixed "Unable to throttle
- bandwidth: Interrupted system call" issue.
+ bandwidth: Interrupted system call" issue.
-2001-02-19 13:07 flood
+2001-02-19 flood <flood>
- * README.mod_sql-3.0, contrib/README.mod_sql-3.0,
- 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.
+ * 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 08:19 flood
+2001-02-18 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-18 08:18 flood
-
- * contrib/dist/rpm/proftpd.spec.in: Bug #1005 - New RPM .spec.in
- from droesen
-
-2001-02-15 17:21 flood
+2001-02-16 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-15 17:21 flood
+2001-02-16 flood <flood>
* modules/mod_core.c, src/dirtree.c: Bug #1008 - Port 21 is now
- default w/out Port directive.
+ default w/out Port directive.
-2001-02-15 06:24 flood
+2001-02-15 flood <flood>
* src/data.c: spurious #ifdef removed, sendfile() should compile
- again
+ again
-2001-02-13 20:13 flood
+2001-02-14 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-13 20:12 flood
+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.
+ * 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-13 17:06 flood
+2001-02-14 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-13 17:05 flood
+2001-02-14 flood <flood>
* modules/mod_xfer.c: Bug #462 - sendfile works again on freebsd
-2001-02-12 19:05 flood
+2001-02-13 flood <flood>
* modules/mod_ls.c, src/dirtree.c: Bug #1007 - IgnoreHidden can now
- be turned off.
+ be turned off.
-2001-02-05 14:30 flood
+2001-02-05 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-05 14:29 flood
+2001-02-05 flood <flood>
- * CREDITS, INSTALL, NEWS, README, contrib/dist/rpm/proftpd.spec.in,
- doc/Configuration.html: Minor doc changes
+ * CREDITS, INSTALL, NEWS, README, doc/Configuration.html: Minor doc
+ changes
-2001-02-05 11:48 flood
+2001-02-05 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-05 11:48 flood
+2001-02-05 flood <flood>
- * NEWS, contrib/README.mod_sqlpw, contrib/mod_mysql.c,
- contrib/mod_pgsql.c, contrib/mod_sqlpw.c, contrib/mod_test.c,
- modules/mod_tar.c, modules/mod_test.c: 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.
+ * 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 11:37 flood
+2001-02-05 flood <flood>
- * configure, configure.in, contrib/mod_ratio.c,
- contrib/dist/rpm/proftpd.spec.in, 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.
+ * 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 10:28 flood
+2001-02-05 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-05 10:28 flood
+2001-02-05 flood <flood>
* src/log.c: Bug #455 - SyslogLevel now works as documented.
-2001-02-05 10:16 flood
+2001-02-05 flood <flood>
* README, configure, configure.in, lib/Makefile.in: Bug #293 -
- Compilation under OSX.
+ Compilation under OSX.
-2001-02-02 18:59 flood
+2001-02-03 flood <flood>
* src/data.c: Minor fixes to bug 399's patch. ;)
-2001-02-02 15:12 flood
+2001-02-02 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-02 15:11 flood
+2001-02-02 flood <flood>
* modules/mod_core.c: Bug #407 - Include pathnames must now be
- absolute
+ absolute
-2001-02-02 15:09 flood
+2001-02-02 flood <flood>
- * include/options.h, modules/mod_xfer.c, src/data.c, src/fs.c,
- src/io.c: Bug #399 - incorrect handling of CRs during ascii
- transfers, also made default buffer size a macron in options.h:
- TUNABLE_BUFFER_SIZE
+ * 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-01 19:12 flood
+2001-02-02 flood <flood>
* CREDITS, INSTALL, NEWS: Updated minor documentation
-2001-02-01 14:58 flood
+2001-02-01 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-01 14:58 flood
+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
+ * include/version.h, src/auth.c: Bug #435 - uid/gid checking for -1,
+ updated version string to 1.2.0rc3
-2001-02-01 11:52 flood
+2001-02-01 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-02-01 11:52 flood
+2001-02-01 flood <flood>
* src/main.c: Bug #451 - check uid/gid after PRIVS_SETUP
-2001-01-31 19:05 flood
-
- * modules/mod_pam.c: Bug #363 - mod_pam now handles blank usernames
- and passwords without segfaulting.
-
-2001-01-31 13:39 flood
+2001-01-31 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-31 13:39 flood
+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
+ _aborT() funcs in exit handler. sendfile() support is now disabled
+ by default, enable with --enable-sendfile
-2001-01-31 12:52 flood
+2001-01-31 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-31 12:51 flood
+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.
+ modules/mod_xfer.c, src/dirtree.c: Bug #410 - IgnoreHidden fix and
+ cleanup/changes of hiding code.
-2001-01-31 10:43 flood
+2001-01-31 flood <flood>
- * modules/: mod_auth.c, mod_core.c, mod_unixpw.c: Bug #422 - fixed
- handling of get_boolean() in config handles #410 - HideNoAccess
- now takes boolean argument
+ * 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-28 18:23 flood
+2001-01-29 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-28 18:16 flood
+2001-01-29 flood <flood>
* contrib/mod_ldap.c: New mod_ldap.c from jwm at horde.net
-2001-01-28 18:15 flood
+2001-01-29 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-28 18:14 flood
+2001-01-29 flood <flood>
* modules/mod_core.c, src/dirtree.c: Bug #353 - Allows use of '!'
- negation operator in Allow/Deny.
+ negation operator in Allow/Deny.
-2001-01-28 16:26 flood
+2001-01-29 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-28 16:23 flood
+2001-01-29 flood <flood>
* doc/Configuration.html, include/inet.h, modules/mod_core.c,
- modules/mod_tar.c, modules/mod_test.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.
+ 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 10:34 flood
+2001-01-28 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-28 10:33 flood
+2001-01-28 flood <flood>
* modules/mod_core.c: Bug #436 - MaxClients* directives now merge
- downward.
+ downward.
-2001-01-28 10:25 flood
+2001-01-28 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-28 10:25 flood
+2001-01-28 flood <flood>
- * doc/Configuration.html, modules/mod_auth.c, modules/mod_unixpw.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.
+ * 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 15:24 flood
+2001-01-26 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-26 15:15 flood
+2001-01-26 flood <flood>
* modules/mod_core.c: Bug #390 - Added ifdef to regex code in
- mod_core
+ mod_core
-2001-01-26 15:10 flood
+2001-01-26 flood <flood>
* contrib/dist/rpm/proftpd.init.d: Bug #347 - RPM problem in
- contrib/
+ contrib/
-2001-01-26 15:06 flood
+2001-01-26 flood <flood>
- * src/dirtree.c: Bug #397 - Fixed problem with incorrect config
- file line count
+ * src/dirtree.c: Bug #397 - Fixed problem with incorrect config file
+ line count
-2001-01-26 14:30 flood
+2001-01-26 flood <flood>
- * src/support.c: Bug #441 - off-by-one error when reading month
- from /etc/shutmsg
+ * src/support.c: Bug #441 - off-by-one error when reading month from
+ /etc/shutmsg
-2001-01-26 14:26 flood
+2001-01-26 flood <flood>
* doc/Configuration.html: Bug #429 - Documentation changes
-2001-01-26 13:51 flood
+2001-01-26 flood <flood>
- * src/: inet.c, main.c: Bug #398 - overwriting file descriptor in
- inet_openrw()
+ * src/inet.c, src/main.c: Bug #398 - overwriting file descriptor in
+ inet_openrw()
-2001-01-25 10:04 flood
+2001-01-25 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-24 22:16 flood
+2001-01-25 flood <flood>
* ChangeLog, configure: Updated ChangeLog.
-2001-01-24 21:53 flood
+2001-01-25 flood <flood>
* config.h.in, configure.in, modules/mod_auth.c: Bug #365 - Removed
- jail() code from mod_auth.c
+ jail() code from mod_auth.c
-2001-01-24 21:27 flood
+2001-01-25 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-24 21:22 flood
+2001-01-25 flood <flood>
* ChangeLog: Updated ChangeLog.
-2001-01-24 21:13 flood
+2001-01-25 flood <flood>
* ChangeLog: [no log message]
-2001-01-24 21:13 flood
-
- * contrib/README.mod_sqlpw: Added README.mod_sqlpw
-
-2001-01-24 14:51 flood
+2001-01-24 flood <flood>
* ChangeLog: [no log message]
-2001-01-24 14:50 flood
+2001-01-24 flood <flood>
* ChangeLog, contrib/mod_ratio.c, src/main.c: Bug #430 - format
- string fixes in log_pri and mod_ratio.
+ string fixes in log_pri and mod_ratio.
-2001-01-24 14:02 flood
+2001-01-24 flood <flood>
- * src/: dirtree.c, log.c, 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
+ * 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 15:24 macgyver
+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 15:11 macgyver
-
- * src/ftpshut.c: Handle the month calculation correctly.
+ include/support.h, modules/mod_ls.c, src/support.c: Correctly use
+ NAME_MAX and fpathconf() when appropriate.
-2000-10-08 14:45 macgyver
+2000-10-08 macgyver <macgyver>
- * contrib/mod_sqlpw.c: Use salt values correctly.
+ * contrib/README.mod_wrap, contrib/mod_wrap.c: Added in mod_wrap
+ into contrib.
-2000-10-08 14:36 macgyver
-
- * contrib/: README.mod_wrap, mod_wrap.c, mod_wrap.html: Added in
- mod_wrap into contrib.
-
-2000-10-08 14:22 macgyver
+2000-10-08 macgyver <macgyver>
* modules/mod_core.c: Correctly log the full path of deleted files.
-2000-10-08 14:11 macgyver
+2000-10-08 macgyver <macgyver>
- * modules/: mod_auth.c, mod_core.c: Added in support for
- MaxHostsPerUser and fixed a problem with AnonRequirePassword.
+ * modules/mod_auth.c, modules/mod_core.c: Added in support for
+ MaxHostsPerUser and fixed a problem with AnonRequirePassword.
-2000-10-08 13:55 macgyver
+2000-10-08 macgyver <macgyver>
* src/inet.c: Lots of little cleanups.
-2000-10-08 13:54 macgyver
+2000-10-08 macgyver <macgyver>
* contrib/mod_ratio.c: Fixed a bounds issue when checking the SITE
- command.
+ command.
-2000-08-19 12:02 macgyver
+2000-08-19 macgyver <macgyver>
* configure, configure.in: Fixed ordering in library duplication
- detection code.
+ detection code.
-2000-08-18 13:25 macgyver
+2000-08-18 macgyver <macgyver>
* NEWS: Updates.
-2000-08-18 13:25 macgyver
+2000-08-18 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-18 13:16 macgyver
+2000-08-18 macgyver <macgyver>
* README.PAM: Updated PAM documentation for FreeBSD.
-2000-08-18 08:54 macgyver
+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.
+ annoying bug allowed for directory-level configurations to sometimes
+ not work right.
-2000-08-17 23:02 macgyver
+2000-08-18 macgyver <macgyver>
* configure, configure.in: Fixed a small typo in PAM detection.
-2000-08-17 22:44 macgyver
+2000-08-18 macgyver <macgyver>
* acconfig.h, config.h.in, configure, configure.in: PAM and path
- modifications.
-
-2000-08-17 22:26 macgyver
-
- * modules/mod_pam.c: Updated to use HAVE_PAM.
+ modifications.
-2000-08-13 08:19 macgyver
+2000-08-13 macgyver <macgyver>
* Make.rules.in, acconfig.h, config.h.in, configure, configure.in,
- include/conf.h: Some configure and compilation cleanups.
+ include/conf.h: Some configure and compilation cleanups.
-2000-08-13 03:36 macgyver
-
- * contrib/mod_quota.c: Cleaned up use of lstat() to fs_lstat() to
- be more portable.
-
-2000-08-07 17:54 macgyver
+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.
+ sendfile() implementation to make it simpler and more managable.
-2000-08-07 16:17 macgyver
+2000-08-07 macgyver <macgyver>
* modules/mod_core.c: Fixed a typo in set_sysloglevel.
-2000-08-04 21:44 macgyver
+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.
+ * modules/mod_auth.c: Be a little more anal retentive about cleaning
+ up after ourselves when it comes to USER/PASS attempts.
-2000-08-04 21:43 macgyver
+2000-08-05 macgyver <macgyver>
* src/data.c: Formatting cleanups.
-2000-08-04 21:42 macgyver
+2000-08-05 macgyver <macgyver>
* modules/mod_xfer.c: Removed spurious #if 0.
-2000-08-04 08:17 macgyver
+2000-08-04 macgyver <macgyver>
- * configure, configure.in: Updated HP/UX sendfile() to only
- actually check on HP/UX platforms. :)
+ * configure, configure.in: Updated HP/UX sendfile() to only actually
+ check on HP/UX platforms. :)
-2000-08-04 08:07 macgyver
+2000-08-04 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-04 08:07 macgyver
-
- * doc/Undocumented.txt: Updated undocumented functions list (none
- left! :)).
-
-2000-08-04 08:05 macgyver
-
- * doc/: GetConf, ShowUndocumented: Small updates to configuration
- scripts.
-
-2000-08-04 07:57 macgyver
+2000-08-04 macgyver <macgyver>
* doc/Configuration.html: Updated documentation.
-2000-08-03 08:40 macgyver
-
- * doc/Undocumented.txt: Updated undocumented functions list.
-
-2000-08-03 08:39 macgyver
+2000-08-03 macgyver <macgyver>
- * contrib/: README.ratio, mod_ratio.c: Updated to mod_ratio.
+ * contrib/README.ratio, contrib/mod_ratio.c: Updated to mod_ratio.
-2000-08-03 08:36 macgyver
+2000-08-03 macgyver <macgyver>
* contrib/mod_ldap.c: Updated to mod_ldap 2.7.3 to remove
- LDAPSearchFilter.
+ LDAPSearchFilter.
-2000-08-03 08:24 macgyver
+2000-08-03 macgyver <macgyver>
* modules/mod_auth.c: Oops...more compilation fixes for jail(). :)
-2000-08-03 07:10 macgyver
-
- * doc/Undocumented.txt: Updated undocumented functions...only two
- left, wow!
-
-2000-08-03 07:09 macgyver
+2000-08-03 macgyver <macgyver>
* doc/Configuration.html: Updated documentation.
-2000-08-03 07:05 macgyver
+2000-08-03 macgyver <macgyver>
* modules/mod_auth.c: Correctly obtain the IP address in jail().
-2000-08-02 22:50 macgyver
+2000-08-03 macgyver <macgyver>
* modules/mod_auth.c: Typos in jail() support.
-2000-08-02 20:01 macgyver
+2000-08-03 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-02 19:59 macgyver
+2000-08-03 macgyver <macgyver>
* modules/mod_auth.c: Added some debug logging to lockdown().
-2000-08-02 19:46 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-02 18:35 macgyver
+2000-08-03 macgyver <macgyver>
- * modules/mod_pam.c: More Solaris tweaks.
+ * 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-02 18:30 macgyver
+2000-08-03 macgyver <macgyver>
* ChangeLog, NEWS: Updated ChangeLog and NEWS.
-2000-08-02 18:29 macgyver
-
- * src/fs.c: Fixed a problem where files that began with ~ weren't
- being handled properly.
-
-2000-08-02 16:36 macgyver
-
- * contrib/mod_quota.c: Fixed a crash when using mod_quota and not
- defining QuotaExempt.
-
-2000-08-02 16:34 macgyver
+2000-08-02 macgyver <macgyver>
* doc/Configuration.html: Updated documentation.
-2000-08-02 16:28 macgyver
+2000-08-02 macgyver <macgyver>
* ChangeLog, NEWS: Updated NEWS and ChangeLog.
-2000-08-02 16:26 macgyver
+2000-08-02 macgyver <macgyver>
* Make.rules.in, configure, configure.in: Added in --with-libraries
- for posterity.
+ for posterity.
-2000-08-02 16:13 macgyver
+2000-08-02 macgyver <macgyver>
* configure.in: Added copyright info to the configure scripts.
-2000-08-02 16:07 macgyver
+2000-08-02 macgyver <macgyver>
* src/log.c: Only log to WTMP or WTMPX, not both. Modern systems
- should all use WTMPX.
+ should all use WTMPX.
-2000-08-02 15:57 macgyver
-
- * modules/mod_pam.c: Updated Solaris compatibility fix for mod_pam.
-
-2000-08-02 15:38 macgyver
+2000-08-02 macgyver <macgyver>
* stamp-h.in: Added in stamp-h.in support.
-2000-08-02 15:38 macgyver
+2000-08-02 macgyver <macgyver>
* .cvsignore, Makefile.in, configure, configure.in: Added support
- for stamp-h.in and automagic rebuilds whenever configure is
- updated.
+ for stamp-h.in and automagic rebuilds whenever configure is updated.
-2000-08-02 14:46 macgyver
+2000-08-02 macgyver <macgyver>
* acconfig.h, config.h.in, configure, configure.in: More sendfile
- detection tweaks. :)
+ detection tweaks. :)
-2000-08-02 14:46 macgyver
+2000-08-02 macgyver <macgyver>
* modules/mod_core.c: Forgot to return HANDLED in add_sysloglevel.
-2000-08-02 06:58 macgyver
+2000-08-02 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-01 23:44 macgyver
+2000-08-02 macgyver <macgyver>
- * configure, configure.in: Reworked sendfile detection to be
- cleaner and better cached.
+ * configure, configure.in: Reworked sendfile detection to be cleaner
+ and better cached.
-2000-08-01 23:18 macgyver
+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-01 22:28 macgyver
-
- * modules/mod_pam.c: ifdef out the PAM_TTY code needed for Solaris
- so other systems don't have to work around this issue.
+ --with-includes and made the PAM check for -ldl cache its results.
-2000-08-01 22:25 macgyver
+2000-08-02 macgyver <macgyver>
* NEWS, include/conf.h, include/data.h, include/default_paths.h,
- include/dirtree.h, include/fs.h, include/ftp.h, include/ident.h,
- include/inet.h, include/io.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, src/utils.c:
- Added SyslogLevel directive, and cleaned up some header files.
+ 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 15:20 macgyver
+2000-08-01 macgyver <macgyver>
* modules/mod_core.c, src/main.c: Added support for the PidFile
- directive, to make ProFTPD more Apache-like.
+ directive, to make ProFTPD more Apache-like.
-2000-08-01 14:52 macgyver
+2000-08-01 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-01 14:51 macgyver
+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.
+ * 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 14:30 macgyver
+2000-08-01 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-01 14:30 macgyver
-
- * modules/mod_pam.c: Give ProFTPD it's own entry under /dev.
-
-2000-08-01 14:23 macgyver
+2000-08-01 macgyver <macgyver>
* NEWS, modules/mod_log.c: Honor ExtendedLog NONE.
-2000-08-01 13:41 macgyver
+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 13:41 macgyver
-
- * modules/mod_pam.c: More information about PAM and Solaris
- interaction.
+ defaults to 'on' now, to be backward compatible.
-2000-08-01 13:20 macgyver
+2000-08-01 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-08-01 13:13 macgyver
+2000-08-01 macgyver <macgyver>
* NEWS, modules/mod_auth.c: Moved code around to eliminate a race
- with MaxClients.
+ with MaxClients.
-2000-08-01 12:51 macgyver
+2000-08-01 macgyver <macgyver>
* NEWS, contrib/mod_ratio.c, modules/mod_site.c: Fixed a minor bug
- in SITE HELP.
+ in SITE HELP.
-2000-08-01 11:59 macgyver
+2000-08-01 macgyver <macgyver>
* NEWS, modules/mod_core.c, modules/mod_xfer.c: Added in
- DeleteAbortedStores and did some minor cleanups.
+ DeleteAbortedStores and did some minor cleanups.
-2000-08-01 11:43 macgyver
+2000-08-01 macgyver <macgyver>
- * contrib/mod_quota.c: unlink should never be called directly --
- use fs_unlink instead.
+ * 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-08-01 11:32 macgyver
-
- * NEWS, modules/mod_pam.c: 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 15:27 macgyver
+2000-07-28 macgyver <macgyver>
* lib/pr_fnmatch.c: Optimizations for fnmatch() implementation.
-2000-07-28 15:17 macgyver
+2000-07-28 macgyver <macgyver>
* contrib/mod_ldap.c: Updated mod_ldap to 2.7.2.
-2000-07-28 14:56 macgyver
+2000-07-28 macgyver <macgyver>
* modules/mod_xfer.c: Don't check for PORT in cmd_stor if we're in
- passive mode.
+ passive mode.
-2000-07-28 06:50 macgyver
+2000-07-28 macgyver <macgyver>
* NEWS, modules/mod_site.c: AllowChmod now works in almost any
- context.
+ context.
-2000-07-27 23:47 macgyver
+2000-07-28 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-07-27 22:52 macgyver
+2000-07-28 macgyver <macgyver>
* NEWS, modules/mod_site.c: AllowChmod works right now.
-2000-07-27 22:47 macgyver
+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.
+ 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 09:07 macgyver
+2000-07-27 macgyver <macgyver>
* modules/mod_auth.c: Work around HP/UX's broken compiler in
- _do_user_counts().
+ _do_user_counts().
-2000-07-26 21:14 macgyver
+2000-07-27 macgyver <macgyver>
* contrib/mod_ldap.c: Updated mod_ldap to latest/greatest.
-2000-07-26 16:47 macgyver
-
- * modules/mod_pam.c: Moved around PAM calls to be Sun
- Compliant(tm), since anything that isn't strictly in that order
- seems to cause Solaris environments to puke.
-
- Set PAM_RHOST, when we can.
-
-2000-07-26 16:09 macgyver
+2000-07-26 macgyver <macgyver>
* src/main.c: Remove spurious \r\n from various send_response()s.
-2000-07-26 04:12 macgyver
+2000-07-26 macgyver <macgyver>
* src/main.c: Be verbose about /etc/shutmsg.
-2000-07-26 04:03 macgyver
+2000-07-26 macgyver <macgyver>
* include/proftpd.h, modules/mod_core.c, modules/mod_ls.c,
- modules/mod_xfer.c, src/data.c, src/io.c, src/log.c: Fixed a
- crash when STOR called before PORT being issued. Fixed a crash
- related to STAT.
+ 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 02:49 macgyver
+2000-07-26 macgyver <macgyver>
* lib/pwgrent.c: Fixed some warnings on FreeBSD.
-2000-07-26 02:36 macgyver
+2000-07-26 macgyver <macgyver>
- * src/main.c: Better checking for empty strings before attempting
- to call a regex. Handle empty commands cleaner.
+ * src/main.c: Better checking for empty strings before attempting to
+ call a regex. Handle empty commands cleaner.
-2000-07-26 01:21 macgyver
+2000-07-26 macgyver <macgyver>
* README.LDAP, contrib/mod_ldap.c: Updated mod_ldap to 2.7.1.
-2000-07-26 01:19 macgyver
-
- * lib/: pr_fnmatch.c, 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>
-2000-07-26 01:18 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.
- * lib/fnmatch.c: fnmatch.c has now become pr_fnmatch.c.
-
-2000-07-26 01:16 macgyver
+2000-07-26 macgyver <macgyver>
* Make.rules.in, config.h.in, configure, configure.in,
- include/libsupp.h, lib/Makefile.in, lib/glob.c,
- modules/Makefile.in, src/Makefile.in, src/dirtree.c, src/fs.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.
+ 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 00:36 macgyver
+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.
+ and corrected an error where hosts were being treated in a
+ case-sensitive fashion.
-2000-07-25 21:41 macgyver
+2000-07-26 macgyver <macgyver>
* configure, configure.in: Made fnmatch check more robust and
- cleaned up gcc detection a bit.
+ cleaned up gcc detection a bit.
-2000-07-25 21:11 macgyver
+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-25 20:48 macgyver
+ case insensitive. Added FNM_CASEFOLD to fnmatch check.
- * doc/ShowUndocumented: Make the grep case insensitive.
-
-2000-07-25 20:42 macgyver
+2000-07-26 macgyver <macgyver>
* config.guess, config.sub: Updated config.guess and config.sub
- scripts.
+ scripts.
-2000-07-21 11:45 macgyver
+2000-07-21 macgyver <macgyver>
* ChangeLog: Updated changelog.
-2000-07-21 11:44 macgyver
+2000-07-21 macgyver <macgyver>
* ChangeLog, NEWS, config.h.in, configure, configure.in,
- modules/mod_auth.c, modules/mod_unixpw.c: Portability fixes and
- additions on various platforms. Also corrected a problem in
- configure where a piece of code was completely bypassed.
+ 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-20 23:19 macgyver
+2000-07-21 macgyver <macgyver>
* doc/Configuration.html: Updated configuration documentation.
-2000-07-20 23:11 macgyver
+2000-07-21 macgyver <macgyver>
* src/main.c: Check for getopt_long was backwards.
-2000-07-20 23:09 macgyver
-
- * src/ftpcount.c: Handle systems without getopt_long properly.
-
-2000-07-20 22:59 macgyver
+2000-07-21 macgyver <macgyver>
* modules/mod_core.c: Removed unused variables thanks to gcc -Wall.
-2000-07-20 22:57 macgyver
+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-20 22:38 macgyver
+ situation where a site is administratively shutdown (ala shutmsg,
+ etc). Also corrected a getopt_long related issue in show_usage.
- * modules/mod_pam.c: Don't close PAM handle until we exit so we
- survive across jailed environments.
-
-2000-07-20 22:37 macgyver
+2000-07-21 macgyver <macgyver>
* NEWS: Updated news.
-2000-07-20 22:37 macgyver
+2000-07-21 macgyver <macgyver>
* ChangeLog: Updated changelog.
-2000-07-20 22:18 macgyver
+2000-07-21 macgyver <macgyver>
* src/main.c: Command line options are constants.
-2000-07-20 22:18 macgyver
+2000-07-21 macgyver <macgyver>
* src/main.c: Be mindful of systems without getopt_long.
-2000-07-20 22:06 macgyver
-
- * modules/mod_pam.c: Typo with AuthPAMConfig and PAMConfig.
-
-2000-07-20 22:05 macgyver
+2000-07-21 macgyver <macgyver>
* configure, configure.in: Added in better PAM detection for -ldl.
-2000-07-20 21:58 macgyver
+2000-07-21 macgyver <macgyver>
* README.LDAP, contrib/mod_ldap.c, doc/Configuration.html: Latest
- LDAP updates (mod_ldap 2.7).
+ LDAP updates (mod_ldap 2.7).
-2000-07-20 21:52 macgyver
+2000-07-21 macgyver <macgyver>
* src/data.c: Added many more descriptions around various error
- conditions for better RFC compliance.
-
-2000-07-20 21:52 macgyver
+ conditions for better RFC compliance.
- * modules/mod_pam.c: Fix potential strdup madness.
-
-2000-07-20 21:47 macgyver
-
- * modules/mod_unixpw.c: Reworked UID/GID hash tables to be more
- portable across implementations with different sizes for UID and
- GID fields.
-
-2000-07-11 11:44 macgyver
+2000-07-11 macgyver <macgyver>
* modules/mod_core.c: Fixed a minor typo when there is no regex
- engine around.
+ engine around.
-2000-07-11 07:13 macgyver
+2000-07-11 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-2000-07-11 07:10 macgyver
+2000-07-11 macgyver <macgyver>
* NEWS, src/data.c, src/main.c: Don't ignore ServerUseReverseDNS.
-2000-07-11 06:36 macgyver
+2000-07-11 macgyver <macgyver>
- * ChangeLog, contrib/mod_ldap.c, contrib/mod_quota.c,
- contrib/mod_ratio.c, contrib/mod_sqlpw.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_pam.c,
- modules/mod_readme.c, modules/mod_site.c, modules/mod_tar.c,
- modules/mod_test.c, modules/mod_unixpw.c, modules/mod_xfer.c,
- src/auth.c, src/dirtree.c, src/fs.c, src/ftpcount.c, src/ident.c,
- src/inet.c, src/io.c, src/log.c, src/pool.c, src/support.c: Minor
- updates and buffer cleanups.
+ * 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 06:35 macgyver
+2000-07-11 macgyver <macgyver>
* include/default_paths.h, src/main.c: Added in support for core
- file debugging.
+ file debugging.
-2000-07-11 06:31 macgyver
+2000-07-11 macgyver <macgyver>
- * doc/Configuration.html: Latest and greatest documentation
- updates.
+ * doc/Configuration.html: Latest and greatest documentation updates.
-2000-07-09 00:01 macgyver
+2000-07-09 macgyver <macgyver>
- * include/log.h, modules/mod_core.c, modules/mod_xfer.c, src/log.c,
- src/xferlog.5: Added in support for a completion field in
- xferlog.
+ * 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 00:01 macgyver
+2000-07-09 macgyver <macgyver>
* doc/Configuration.html: Updated LDAP documentation.
-2000-07-08 23:59 macgyver
+2000-07-09 macgyver <macgyver>
* contrib/mod_ldap.c: Added in -lresolv.
-2000-07-08 23:59 macgyver
-
- * modules/mod_pam.c: Added a little more sanity cleanup.
-
-2000-07-08 23:58 macgyver
+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 09:26 macgyver
+ trying to overflow large path buffers.
- * modules/mod_pam.c: Forgot to add in AuthPAM to the configuration
- tables.
-
-2000-07-08 01:15 macgyver
+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-08 01:02 macgyver
+ getsockname() don't crash on Solaris when called with invalid
+ descriptors.
- * modules/mod_pam.c: I must be braindamaged to have let someone
- else convince me my original code and logic was incorrect about
- mod_pam. There was no aforementioned memory leak, and PAM does
- work exactly as advertised.
-
-2000-07-07 14:11 macgyver
-
- * contrib/mod_sqlpw.c: Fixed a bug in SQLAuthoritative detection.
-
-2000-07-07 00:12 macgyver
+2000-07-07 macgyver <macgyver>
* ChangeLog, include/version.h: Updated ChangeLog as well as
- version.
+ version.
-2000-07-07 00:09 macgyver
+2000-07-07 macgyver <macgyver>
- * contrib/: README.ratio, mod_ratio.c: Updated to mod_ratio.
+ * contrib/README.ratio, contrib/mod_ratio.c: Updated to mod_ratio.
-2000-07-06 23:41 macgyver
+2000-07-07 macgyver <macgyver>
- * NEWS, modules/mod_ls.c, modules/mod_tar.c, src/auth.c,
- src/data.c, src/fs.c, src/log.c, src/support.c: Fixed various
- MAXPATHLEN buffers.
+ * NEWS, modules/mod_ls.c, src/auth.c, src/data.c, src/log.c,
+ src/support.c: Fixed various MAXPATHLEN buffers.
-2000-07-06 23:21 macgyver
+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.
+ More consistent handling of '.' and '..'. I can't wait to rewrite
+ this module.
-2000-07-06 23:18 macgyver
+2000-07-07 macgyver <macgyver>
* modules/mod_core.c, src/support.c: Handle symlinks more
- appropriately...follow the link, not the file.
+ appropriately...follow the link, not the file.
-2000-07-06 18:19 macgyver
+2000-07-07 macgyver <macgyver>
* NEWS, include/support.h, src/dirtree.c, src/support.c: Added
- access_check() to handle correct permission checking.
+ access_check() to handle correct permission checking.
-2000-07-06 17:26 macgyver
+2000-07-07 macgyver <macgyver>
* src/auth.c: Minor correction to auth_uid_name and auth_gid_name.
-2000-07-06 17:00 macgyver
+2000-07-07 macgyver <macgyver>
* src/log.c: Documented design decision behind utmp entries and
- strings.
+ strings.
-2000-07-06 16:44 macgyver
+2000-07-06 macgyver <macgyver>
* doc/Configuration.html: Updates to documentation.
-2000-07-06 16:42 macgyver
+2000-07-06 macgyver <macgyver>
* modules/Makefile.in: Removed mod_mysql.h dependency.
-2000-07-06 13:19 macgyver
-
- * contrib/mod_sqlpw.c: Added SQLKeyField, SQLKey and
- SQLAuthoritative directives.
-
-2000-07-06 13:08 macgyver
+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.
+ modules/mod_core.c, modules/mod_xfer.c: Fixed GroupOwner and added
+ UserOwner.
-2000-07-06 12:29 macgyver
+2000-07-06 macgyver <macgyver>
- * NEWS, config.h.in, configure, configure.in, src/main.c,
- modules/mod_auth.c: Added in support to handle large groups
- efficiently. This should take care of the 'hangs forever on
- login' bug.
+ * 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 11:33 macgyver
+2000-07-06 macgyver <macgyver>
* modules/mod_auth.c: Fixed a bug when classes weren't enabled and
- DisplayConnect is used.
+ DisplayConnect is used.
-2000-07-06 06:33 macgyver
+2000-07-06 macgyver <macgyver>
* include/inet.h, src/data.c, src/inet.c: AllowForeignAddress
- directives now work on passive connections as well.
+ directives now work on passive connections as well.
-2000-07-06 05:58 macgyver
+2000-07-06 macgyver <macgyver>
* modules/mod_site.c: Typo in AllowChmod implementation. :)
-2000-07-06 05:44 macgyver
+2000-07-06 macgyver <macgyver>
* Make.rules.in: Minor cleanups.
-2000-07-05 23:59 macgyver
+2000-07-06 macgyver <macgyver>
* src/main.c: Added in set_proc_title duirng login.
-2000-07-05 23:53 macgyver
+2000-07-06 macgyver <macgyver>
- * modules/: mod_auth.c, mod_core.c, mod_xfer.c: Stubs for
- unimplemented commands. Bleh...we need to overhaul this
- protocol.
+ * 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-05 23:46 macgyver
+2000-07-06 macgyver <macgyver>
* doc/Configuration.html: Updated classes documentation.
-2000-07-05 23:45 macgyver
+2000-07-06 macgyver <macgyver>
* NEWS, modules/mod_xfer.c: Minor typo in cmd_stor.
-2000-07-05 23:42 macgyver
+2000-07-06 macgyver <macgyver>
* modules/mod_auth.c: Fixed a minor race condition in classes.
-2000-07-05 23:18 macgyver
+2000-07-06 macgyver <macgyver>
* NEWS, modules/mod_ls.c: Fixed a minor permissions display problem
- when DirFakeMode is not in use.
-
-2000-07-05 23:13 macgyver
+ when DirFakeMode is not in use.
- * src/proftpd.8: Added documentation for -t option.
-
-2000-07-05 23:08 macgyver
+2000-07-06 macgyver <macgyver>
* src/main.c: Fixed use of 500 instead of R_500.
-2000-07-05 22:58 macgyver
-
- * NEWS, config.h.in, configure, configure.in, lib/vsnprintf.c,
- src/ftpcount.c: Made portable *snprintf libraries more so by
- supporting floating point operations and updated ftpcount
- accordingly.
+2000-07-06 macgyver <macgyver>
-2000-07-05 22:57 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.
- * modules/mod_pam.c: Added in session control management.
-
-2000-07-05 21:51 macgyver
+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.
+ passwd scheme that allows comments and blank lines in passwd files.
-2000-07-05 21:41 macgyver
+2000-07-06 macgyver <macgyver>
* NEWS, modules/mod_site.c: Added AllowChmod directive.
-2000-07-05 21:24 macgyver
+2000-07-06 macgyver <macgyver>
- * NEWS, doc/Configuration.html, modules/mod_ls.c,
- modules/mod_readme.c: DisplayReadme now accepts patterns.
+ * NEWS, doc/Configuration.html, modules/mod_ls.c: DisplayReadme now
+ accepts patterns.
-2000-07-05 20:55 macgyver
+2000-07-06 macgyver <macgyver>
- * Make.rules.in, NEWS, include/default_paths.h, src/main.c,
- src/proftpd.8: A PID file is now created in standalone mode.
+ * Make.rules.in, NEWS, include/default_paths.h, src/main.c: A PID
+ file is now created in standalone mode.
-2000-07-05 20:32 macgyver
+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.
+ modules/mod_ls.c: Fixed a POSIX issue regarding NAME_MAX usage.
-2000-07-05 20:31 macgyver
+2000-07-06 macgyver <macgyver>
* NEWS: Updated news.
-2000-07-05 20:31 macgyver
+2000-07-06 macgyver <macgyver>
* INSTALL: Updated documentation.
-2000-07-03 11:25 macgyver
+2000-07-03 macgyver <macgyver>
* modules/mod_ls.c: Fixed potential buffer problem in dolist().
-2000-07-03 09:25 macgyver
+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.
+ comments about potential buffer problems to be fixed after 1.2.0.
-2000-07-03 09:03 macgyver
+2000-07-03 macgyver <macgyver>
* README.PAM: Updated PAM documentation to reflect AuthPAM.
-2000-07-03 08:55 macgyver
-
- * modules/mod_pam.c: Changed PAMConfig to AuthPAMConfig for
- compatability reasons going forward. Added in AuthPAM directive
- to selectively activate/deactivate PAM. Cleaned up PAM functions
- a bit and made some checks more strict. Removed a minor
- potential memory leak.
-
-2000-07-03 07:30 macgyver
+2000-07-03 macgyver <macgyver>
* src/main.c: Security fix in setproctitle().
-2000-05-15 08:08 macgyver
-
- * contrib/mod_sqlpw.c: Fixed the 'password shows up instead of the
- username' problem with SQL passwords
-
-2000-03-05 23:11 macgyver
+2000-03-06 macgyver <macgyver>
* CREDITS: Updated CREDITS
-2000-03-05 22:44 macgyver
+2000-03-06 macgyver <macgyver>
* INSTALL: An even cooler INSTALL file
-2000-03-05 22:38 macgyver
+2000-03-06 macgyver <macgyver>
* INSTALL, doc/Configuration.html: Documentation updates
-2000-03-05 22:25 macgyver
+2000-03-06 macgyver <macgyver>
* NEWS, modules/mod_ls.c: Added in -L option for things like mirror
- to work with symlinks
+ to work with symlinks
-2000-03-05 21:32 macgyver
+2000-03-06 macgyver <macgyver>
* configure, configure.in: Fixed a bug in link-testing for -ldl
-2000-03-03 13:10 macgyver
-
- * config.h.in, configure, configure.in, modules/mod_pam.c: Minor
- cleanups of configure scripts to remove dependencies on -ldl
+2000-03-03 macgyver <macgyver>
-2000-03-02 07:32 macgyver
+ * config.h.in, configure, configure.in: Minor cleanups of configure
+ scripts to remove dependencies on -ldl
- * src/: ftpcount.1, ftpshut.8, ftpwho.1, proftpd.8, xferlog.5:
- Cleaned up man pages a bit. Lots more work still needed, though.
-
-2000-02-29 22:13 macgyver
+2000-03-01 macgyver <macgyver>
* NEWS, modules/mod_ls.c: Put in a better optimized sreaddir
- function
+ function
-2000-02-29 22:13 macgyver
+2000-03-01 macgyver <macgyver>
- * modules/mod_auth.c: Cleanup of a couple of typos, and removed
- some redundant code
+ * modules/mod_auth.c: Cleanup of a couple of typos, and removed some
+ redundant code
-2000-02-29 22:12 macgyver
+2000-03-01 macgyver <macgyver>
- * include/conf.h, modules/mod_tar.c: Moved the NAME_MAX stuff into
- conf.h, for portability
+ * include/conf.h: Moved the NAME_MAX stuff into conf.h, for
+ portability
-2000-02-29 22:11 macgyver
+2000-03-01 macgyver <macgyver>
- * src/pool.c: Commented out references to symbol information in
- pool allocations
+ * src/pool.c: Commented out references to symbol information in pool
+ allocations
-2000-02-28 23:25 macgyver
+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-28 23:25 macgyver
+ src/main.c: Added in support for tzset, to preserve timezone
+ information across a chroot
- * src/ftpcount.c: Cleaned up a couple of compile-time warnings
-
-2000-02-28 17:11 macgyver
+2000-02-29 macgyver <macgyver>
* NEWS, lib/vsnprintf.c, src/log.c: Removed spurious alloca calls
-2000-02-28 16:30 macgyver
-
- * modules/mod_tar.c: Make mod_tar more portable
-
-2000-02-28 12:19 macgyver
+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
+ modules/mod_log.c: Added in %A, %F, and %m to LogFormat so we can do
+ CLF-style logs now
-2000-02-28 12:02 macgyver
+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
+ allow for syntax checking of a config file and made config file
+ errors give line and file information on failure
-2000-02-28 11:06 macgyver
+2000-02-28 macgyver <macgyver>
- * modules/: mod_auth.c, mod_core.c: Minor cosmetic cleanups
+ * modules/mod_auth.c, modules/mod_core.c: Minor cosmetic cleanups
-2000-02-28 10:57 macgyver
+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
+ in a user-friendly way in DisplayQuit
-2000-02-28 10:56 macgyver
+2000-02-28 macgyver <macgyver>
* modules/mod_auth.c: Make root logins louder
-2000-02-28 03:15 macgyver
+2000-02-28 macgyver <macgyver>
* NEWS, README.Unixware, config.guess, config.sub: Unixware support
- and updated config.guess, config.sub files
+ and updated config.guess, config.sub files
-2000-02-28 02:50 macgyver
+2000-02-28 macgyver <macgyver>
* NEWS, src/inet.c: FreeBSD 4.0 support added
-2000-02-28 02:46 macgyver
-
- * modules/: mod_pam.c, mod_unixpw.c: Fixed a minor typo in pw_auth
+2000-02-28 macgyver <macgyver>
-2000-02-28 02:42 macgyver
+ * NEWS: Added mod_quota
- * NEWS, contrib/mod_quota.c: Added mod_quota
-
-2000-02-28 02:37 macgyver
+2000-02-28 macgyver <macgyver>
* modules/mod_xfer.c: Include sys/sendfile.h
-2000-02-28 02:32 macgyver
+2000-02-28 macgyver <macgyver>
* modules/mod_core.c: Minor cleanups of unused variables
-2000-02-28 02:25 macgyver
+2000-02-28 macgyver <macgyver>
- * NEWS, modules/mod_log.c: Logging of transfer times is more
- precise
+ * NEWS, modules/mod_log.c: Logging of transfer times is more precise
-2000-02-28 02:19 macgyver
+2000-02-28 macgyver <macgyver>
* modules/mod_core.c: Fixed a typo that called VirtualHost a
- VirtualServer
+ VirtualServer
-2000-02-28 02:16 macgyver
+2000-02-28 macgyver <macgyver>
* NEWS, modules/mod_log.c: Add a warning for invalid classes in
- ExtendedLog
+ ExtendedLog
-2000-02-28 02:14 macgyver
+2000-02-28 macgyver <macgyver>
* NEWS, src/main.c: Save environment before doing anything with
- set_proc_title.
+ set_proc_title.
-2000-02-26 13:34 macgyver
+2000-02-26 macgyver <macgyver>
* NEWS, contrib/mod_ldap.c: Updated mod_ldap to 2.5.2.
-2000-02-26 13:31 macgyver
+2000-02-26 macgyver <macgyver>
* NEWS, modules/mod_xfer.c: Updated bandwidth code to use select
- instead of usleep.
+ instead of usleep.
-2000-02-15 16:33 macgyver
+2000-02-16 macgyver <macgyver>
* NEWS, src/dirtree.c: Fixed Umask handling for directories.
-2000-02-15 16:09 macgyver
+2000-02-16 macgyver <macgyver>
* NEWS, modules/mod_xfer.c: Correct the case where there is no
- second argument to TYPE L X.
+ second argument to TYPE L X.
-2000-02-15 15:48 macgyver
+2000-02-15 macgyver <macgyver>
* src/support.c: Correct calc_fs to actually make the right
- calculation when using statvfs.
+ calculation when using statvfs.
-2000-02-01 08:59 macgyver
+2000-02-01 macgyver <macgyver>
* modules/mod_auth.c: Fixed a NULL dereference when AuthUsingAlias
- is used outside of <Anonymous> directives.
+ is used outside of <Anonymous> directives.
-2000-01-23 21:59 macgyver
+2000-01-24 macgyver <macgyver>
- * NEWS, modules/mod_auth.c: Fixed a small group permissions
- problem.
+ * NEWS, modules/mod_auth.c: Fixed a small group permissions problem.
-2000-01-23 21:47 macgyver
+2000-01-24 macgyver <macgyver>
- * src/: dirtree.c, main.c: Removed references to the fastpathing of
- limits. This topic is too complex to deal with for 1.2.0.
+ * 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-23 17:15 macgyver
+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.
- :)
+ fastpath...needs more work, and I need to step out for a while. :)
-2000-01-23 17:03 macgyver
+2000-01-24 macgyver <macgyver>
* src/main.c: Added a fastpath for denying commands in the dispatch
- loop.
-
-2000-01-23 16:46 macgyver
-
- * include/proftpd.h, modules/mod_auth.c, modules/mod_core.c,
- src/ftpcount.c: Support for class listing in ftpcount. Support
- for full use of % options in DisplayConnect.
+ loop.
-2000-01-23 15:37 macgyver
+2000-01-24 macgyver <macgyver>
- * doc/Undocumented.txt: Updated Undocumented.txt.
+ * 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 15:37 macgyver
+2000-01-23 macgyver <macgyver>
* doc/Configuration.html: Documentation for Include directive.
-2000-01-23 15:31 macgyver
+2000-01-23 macgyver <macgyver>
* modules/mod_core.c: Added 'Include' directive.
-2000-01-23 15:12 macgyver
+2000-01-23 macgyver <macgyver>
- * modules/mod_pam.c: Re-add -ldl to mod_pam.
+ * modules/mod_core.c: DisplayConnect now supports all the % options.
+ Correct a bug with %z printing in classes.
-2000-01-23 14:55 macgyver
+2000-01-23 macgyver <macgyver>
- * modules/mod_core.c: DisplayConnect now supports all the %
- options. Correct a bug with %z printing in classes.
+ * modules/mod_ls.c: Added TimesGMT, and made our listing output more
+ consistent.
-2000-01-23 14:49 macgyver
-
- * modules/mod_ls.c: Added TimesGMT, and made our listing output
- more consistent.
-
-2000-01-23 14:48 macgyver
+2000-01-23 macgyver <macgyver>
* doc/Configuration.html: Added documentation for Class/Classes and
- TimeGMT.
+ TimeGMT.
-2000-01-23 10:38 macgyver
+2000-01-23 macgyver <macgyver>
* NEWS, modules/mod_ls.c: Fix a stupid dereference in mod_ls.
-2000-01-17 19:16 macgyver
+2000-01-18 macgyver <macgyver>
* CREDITS: Added a CREDITS file.
-2000-01-17 19:15 macgyver
+2000-01-18 macgyver <macgyver>
* README: Updated with new web site.
-2000-01-17 19:14 macgyver
-
- * contrib/dist/rpm/proftpd.spec.in: Updated for new web site.
-
-2000-01-17 19:08 macgyver
+2000-01-18 macgyver <macgyver>
- * ChangeLog: Updated for pre10.
+ * ChangeLog, include/version.h: Updated for pre10.
-2000-01-17 19:04 macgyver
-
- * include/version.h: Updated for pre10.
-
-2000-01-17 19:01 macgyver
+2000-01-18 macgyver <macgyver>
* NEWS: Updated for pre10 release.
-2000-01-17 18:07 macgyver
+2000-01-18 macgyver <macgyver>
* doc/Configuration.html, include/dirtree.h, modules/mod_core.c,
- src/dirtree.c: Corrected some errors in .ftpaccess handling.
+ src/dirtree.c: Corrected some errors in .ftpaccess handling.
-2000-01-17 18:00 macgyver
+2000-01-18 macgyver <macgyver>
* config.sub: Recognize BSDI on an UltraSPaRC
-2000-01-17 16:41 macgyver
+2000-01-18 macgyver <macgyver>
* NEWS, src/inet.c: inet_getname no longer returns NULL in bad host
- entry cases.
+ entry cases.
-2000-01-17 16:27 macgyver
+2000-01-18 macgyver <macgyver>
- * NEWS, src/fs.c: Corrected ~ reporting.
+ * NEWS: Corrected ~ reporting.
-2000-01-15 14:54 macgyver
+2000-01-15 macgyver <macgyver>
* lib/pwgrent.c: Corrected an allocation error in pwgrent.
-2000-01-03 13:28 macgyver
+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.
+ Simon's patch to handle chdir-ing properly into user accounts.
-2000-01-03 12:17 macgyver
+2000-01-03 macgyver <macgyver>
- * modules/mod_xfer.c: Handle a case with a zero-length file for
- BSD.
+ * modules/mod_xfer.c: Handle a case with a zero-length file for BSD.
-1999-12-30 11:06 macgyver
+1999-12-30 macgyver <macgyver>
* src/data.c: Fixed total calculation.
-1999-12-30 10:41 macgyver
+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.
+ * 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-29 22:27 macgyver
+1999-12-30 macgyver <macgyver>
* ChangeLog, src/data.c: Added a fix for BSD's strange sendfile
- behavior.
+ behavior.
-1999-12-29 12:08 macgyver
+1999-12-29 macgyver <macgyver>
* src/data.c: Minor correction to sendfile() semantics on FreeBSD.
-1999-12-28 07:54 macgyver
+1999-12-28 macgyver <macgyver>
- * contrib/mod_linuxprivs.c, contrib/mod_sqlpw.c,
- modules/mod_auth.c, modules/mod_core.c, modules/mod_log.c,
- modules/mod_ls.c, modules/mod_readme.c, modules/mod_site.c,
- modules/mod_xfer.c: Ensured that cmdtable structs remained static
- to the files they're defined in.
+ * 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 07:43 macgyver
+1999-12-28 macgyver <macgyver>
* ChangeLog: Updated ChangeLog.
-1999-12-28 07:43 macgyver
+1999-12-28 macgyver <macgyver>
- * src/: support.c, utils.c: Cleaned up sstrncpy properly and backed
- out previous incorrect cleanup.
+ * src/support.c: Cleaned up sstrncpy properly and backed out
+ previous incorrect cleanup.
-1999-12-27 23:45 macgyver
+1999-12-28 macgyver <macgyver>
* NEWS: Updated again.
-1999-12-27 23:43 macgyver
+1999-12-28 macgyver <macgyver>
* NEWS: Updated NEWS.
-1999-12-27 23:33 macgyver
+1999-12-28 macgyver <macgyver>
- * src/: support.c, utils.c: Cleaned up the implementation of
- sstrncpy slightly.
+ * src/support.c: Cleaned up the implementation of sstrncpy slightly.
-1999-12-27 23:27 macgyver
+1999-12-28 macgyver <macgyver>
* modules/mod_xfer.c: Disable sendfile() if we're using bandwidth
- control.
+ control.
-1999-12-27 23:18 macgyver
+1999-12-28 macgyver <macgyver>
* modules/mod_auth.c: Fixed a missing variable in a log_auth entry.
-1999-12-27 22:32 macgyver
+1999-12-28 macgyver <macgyver>
* INSTALL, README, doc/Configuration.html: Updated documentation to
- reflect new web site.
+ reflect new web site.
-1999-12-27 22:26 macgyver
+1999-12-28 macgyver <macgyver>
* configure, configure.in: Fixed the detection of hpsecurity.h
-1999-12-27 22:24 macgyver
-
- * modules/mod_readme.c: A minor Y2K correction in handling READMEs.
+1999-12-27 macgyver <macgyver>
-1999-12-26 19:03 macgyver
+ * NEWS, README.LDAP, contrib/mod_ldap.c, doc/Configuration.html:
+ Updated mod_ldap.
- * NEWS, README.LDAP, contrib/mod_ldap.c, doc/Configuration.html:
- Updated mod_ldap.
-
-1999-12-26 18:53 macgyver
+1999-12-27 macgyver <macgyver>
* configure, configure.in: Fixed a minor typo in a test case.
-1999-12-26 18:48 macgyver
+1999-12-27 macgyver <macgyver>
* modules/mod_auth.c: Group handling fixed for complex groups.
-1999-12-26 18:43 macgyver
+1999-12-27 macgyver <macgyver>
* modules/mod_xfer.c: Corrected a minor misdefinition in
- xfer_init_parent.
+ xfer_init_parent.
-1999-12-22 22:05 macgyver
+1999-12-23 macgyver <macgyver>
* NEWS, lib/pwgrent.c: Generate a meaningful error for bad group
- entries.
+ entries.
-1999-12-22 22:04 macgyver
+1999-12-23 macgyver <macgyver>
* modules/mod_xfer.c: Added more caught cases in sendfile().
-1999-12-09 06:54 macgyver
+1999-12-09 macgyver <macgyver>
* src/support.c: Small Y2K fix.
-1999-11-28 21:26 macgyver
+1999-11-29 macgyver <macgyver>
- * NEWS, src/data.c: sendfile() doesn't log spurious errors unless
- in debug mode.
+ * NEWS, src/data.c: sendfile() doesn't log spurious errors unless in
+ debug mode.
-1999-10-27 13:45 macgyver
+1999-10-27 macgyver <macgyver>
* configure, configure.in: Corrected intall_group handling.
-1999-10-27 13:43 macgyver
+1999-10-27 macgyver <macgyver>
* modules/mod_xfer.c: Minor optimization in sendfile() detection on
- Linux.
+ Linux.
-1999-10-26 23:26 macgyver
+1999-10-27 macgyver <macgyver>
* modules/mod_xfer.c: Minor log cleanup for data_sendfile.
-1999-10-26 23:24 macgyver
+1999-10-27 macgyver <macgyver>
* modules/mod_xfer.c: Moved around some logging for data_sendfile.
-1999-10-26 22:45 macgyver
+1999-10-27 macgyver <macgyver>
* contrib/.cvsignore: Updated for proftpd.spec.
-1999-10-26 22:45 macgyver
-
- * contrib/dist/rpm/.cvsignore: New file.
-
-1999-10-26 22:44 macgyver
+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.
+ tolerant approach to slow connections. It seems that the problem is
+ that its too fast.
-1999-10-26 22:43 macgyver
+1999-10-27 macgyver <macgyver>
* Makefile.in: Minor path correction for proftpd.spec.
-1999-10-26 20:06 macgyver
+1999-10-27 macgyver <macgyver>
* ChangeLog: Updated.
-1999-10-26 20:01 macgyver
-
- * NEWS, contrib/dist/rpm/proftpd.spec.in: Minor cleanups.
+1999-10-27 macgyver <macgyver>
-1999-10-26 19:36 macgyver
+ * NEWS: Minor cleanups.
- * NEWS, README.LDAP, doc/Configuration.html, include/version.h:
- Documentation updates and version bump to pre9.
+1999-10-27 macgyver <macgyver>
-1999-10-26 19:20 macgyver
+ * NEWS, README.LDAP, doc/Configuration.html, include/version.h:
+ Documentation updates and version bump to pre9.
- * contrib/dist/rpm/proftpd.spec.in: Updated to reflect new paths.
-
-1999-10-26 18:58 macgyver
+1999-10-27 macgyver <macgyver>
* modules/mod_xfer.c: Added support for TYPE L for RFC 959
- compliance.
+ compliance.
-1999-10-26 18:43 macgyver
+1999-10-27 macgyver <macgyver>
- * doc/rfc/: draft-bonachea-sftp-00.txt,
- draft-ietf-ftpext-mlst-08.txt,
- draft-ietf-ftpext-sec-consider-02.txt, rfc0959.txt, rfc2228.txt:
- Added RFCs to the documentation.
+ * 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-26 18:08 macgyver
+1999-10-27 macgyver <macgyver>
* configure, configure.in: Fixed my stupid typo in FreeBSD
- setpassent.
+ setpassent.
-1999-10-26 18:02 macgyver
+1999-10-27 macgyver <macgyver>
- * doc/: Configuration.html, Undocumented.txt: Added more
- directives.
+ * doc/Configuration.html: Added more directives.
-1999-10-25 13:13 macgyver
+1999-10-25 macgyver <macgyver>
- * doc/: Configuration.html, ShowUndocumented, Undocumented.txt:
- More additions, courtesy of Ben Ritcey.
+ * doc/Configuration.html: More additions, courtesy of Ben Ritcey.
-1999-10-22 22:24 macgyver
+1999-10-23 macgyver <macgyver>
* NEWS: Added AuthUsingAlias.
-1999-10-22 22:18 macgyver
+1999-10-23 macgyver <macgyver>
- * doc/Configuration.html, modules/mod_auth.c, modules/mod_core.c:
- Added in AuthUsingAlias.
+ * doc/Configuration.html, modules/mod_auth.c, modules/mod_core.c:
+ Added in AuthUsingAlias.
-1999-10-22 21:07 macgyver
+1999-10-23 macgyver <macgyver>
- * configure, configure.in, contrib/ftp.pamd,
- contrib/proftpd.spec.in, contrib/dist/rpm/ftp.pamd,
- contrib/dist/rpm/proftpd.init.d,
- contrib/dist/rpm/proftpd.spec.in, doc/Undocumented.txt: Moved
- around RPM build files.
+ * configure, configure.in, contrib/dist/rpm/ftp.pamd,
+ contrib/dist/rpm/proftpd.init.d: Moved around RPM build files.
-1999-10-22 20:53 macgyver
+1999-10-23 macgyver <macgyver>
* ChangeLog: Updated.
-1999-10-22 20:52 macgyver
+1999-10-23 macgyver <macgyver>
* NEWS, modules/mod_xfer.c: Minor updates.
-1999-10-22 20:39 macgyver
-
- * contrib/proftpd.spec.in: Updated spec file to produce standalone
- and inetd packages.
-
-1999-10-22 20:21 macgyver
+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.
+ modules/mod_auth.c: Updates for FreeBSD's brokenness with respect to
+ setpassent.
-1999-10-22 20:21 macgyver
+1999-10-23 macgyver <macgyver>
* modules/mod_xfer.c: FreeBSD cleanups for sendfile().
-1999-10-22 19:48 macgyver
+1999-10-23 macgyver <macgyver>
* contrib/mod_ldap.c: Updated mod_ldap.
-1999-10-20 21:37 macgyver
-
- * modules/mod_pam.c: Minor cleanups/updates.
+1999-10-21 macgyver <macgyver>
-1999-10-20 21:36 macgyver
-
- * doc/: Configuration.html, ShowUndocumented, Undocumented.txt:
- Updated configuration documentation.
+ * doc/Configuration.html: Updated configuration documentation.
-1999-10-17 22:12 macgyver
+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.
+ modules/mod_core.c, src/dirtree.c: Added a second argument to the
+ Umask directive to handle directories.
-1999-10-17 22:11 macgyver
+1999-10-18 macgyver <macgyver>
* modules/mod_xfer.c: sendfile() now deprecates politely on Linux
- 2.0.x.
+ 2.0.x.
-1999-10-17 13:09 macgyver
+1999-10-17 macgyver <macgyver>
* doc/Configuration.html: Added in documentation for DisplayReadme.
-1999-10-17 12:11 macgyver
-
- * contrib/genuser.pl: Added in genuser.pl to facilitiate the
- creation of username:password AuthUserFile entries.
-
-1999-10-11 22:28 macgyver
-
- * src/ftpwho.c: Added in ftpwho.c.
-
-1999-10-11 20:40 macgyver
-
- * modules/mod_pam.c: Fixed AuthPAMAuthoritative.
-
-1999-10-11 04:14 macgyver
-
- * contrib/: mod_pgsql.c, mod_sqlpw.c: Minor code cleanups.
-
-1999-10-11 00:28 macgyver
+1999-10-11 macgyver <macgyver>
* NEWS, config.h.in, configure, configure.in, include/conf.h: Added
- in support for setgroupent.
+ in support for setgroupent.
-1999-10-11 00:20 macgyver
+1999-10-11 macgyver <macgyver>
* modules/mod_auth.c: Fixed the 'no names, just UIDs' bug.
-1999-10-10 22:07 macgyver
+1999-10-11 macgyver <macgyver>
* ChangeLog: Updated.
-1999-10-10 21:45 macgyver
+1999-10-11 macgyver <macgyver>
- * Make.rules.in, Makefile.in, NEWS, src/Makefile.in,
- src/ftpcount.c: Corrected a couple of grammatical errors in
- ftpcount/ftpwho, and seperated them into their own binaries.
+ * 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-10 20:13 macgyver
+1999-10-11 macgyver <macgyver>
- * NEWS, configure, contrib/mod_ldap.c, contrib/mod_linuxprivs.c,
- contrib/mod_ratio.c, modules/mod_auth.c, modules/mod_core.c,
- modules/mod_log.c, modules/mod_ls.c, modules/mod_pam.c,
- modules/mod_readme.c, modules/mod_xfer.c, src/log.c, src/main.c,
- src/utils.c: Updated logging to be more consistent, and generally
- be more informative.
+ * 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-10 20:10 macgyver
+1999-10-11 macgyver <macgyver>
* README.PAM: Updated some information for FreeBSD, SuSE, and
- others.
+ others.
-1999-10-10 11:33 macgyver
+1999-10-10 macgyver <macgyver>
* NEWS, configure.in: install_group slightly more portable.
-1999-10-10 03:05 macgyver
+1999-10-10 macgyver <macgyver>
* contrib/mod_ldap.c: Updated author/copyright info.
-1999-10-10 03:01 macgyver
+1999-10-10 macgyver <macgyver>
* contrib/mod_ldap.c, doc/Configuration.html: Added in mod_ldap.
-1999-10-07 11:10 macgyver
+1999-10-07 macgyver <macgyver>
* NEWS: Updated.
-1999-10-07 11:10 macgyver
-
- * modules/mod_pam.c: Removed Log RCS ID.
-
-1999-10-06 20:25 macgyver
+1999-10-07 macgyver <macgyver>
* modules/mod_auth.c, modules/mod_core.c, src/main.c: Added in some
- better/clearer logging support.
+ better/clearer logging support.
-1999-10-05 22:26 macgyver
+1999-10-06 macgyver <macgyver>
* NEWS, README.PAM: Fixed FreeBSD documentation.
-1999-10-05 20:48 macgyver
+1999-10-06 macgyver <macgyver>
* modules/mod_auth.c: Fixed potential segfault in
- group_expression().
+ group_expression().
-1999-10-05 20:47 macgyver
+1999-10-06 macgyver <macgyver>
* doc/Configuration.html: Removed Bandwidth from docs.
-1999-10-05 20:40 macgyver
+1999-10-06 macgyver <macgyver>
* NEWS: Updated.
-1999-10-05 20:39 macgyver
-
- * modules/mod_pam.c: AuthPAMAuthoritative now defaults to False.
-
-1999-10-04 22:39 macgyver
+1999-10-05 macgyver <macgyver>
* NEWS: Added a news file.
-1999-10-04 22:37 macgyver
+1999-10-05 macgyver <macgyver>
- * acconfig.h, config.h.in, configure, configure.in,
- doc/Undocumented.txt, include/data.h, src/data.c: Added in
- support for sendfile on BSD platforms.
+ * acconfig.h, config.h.in, configure, configure.in, include/data.h,
+ src/data.c: Added in support for sendfile on BSD platforms.
-1999-10-04 21:28 macgyver
+1999-10-05 macgyver <macgyver>
- * ChangeLog, Makefile.in, doc/Undocumented.txt, doc/mod_sample.c,
- modules/mod_sample.c: Miscellaneous reshuffling.
+ * ChangeLog, Makefile.in, doc/mod_sample.c: Miscellaneous
+ reshuffling.
-1999-10-04 17:07 macgyver
+1999-10-05 macgyver <macgyver>
* configure, configure.in: Fixed a small typo.
-1999-10-04 16:58 macgyver
+1999-10-04 macgyver <macgyver>
* ChangeLog: Updated.
-1999-10-04 16:58 macgyver
+1999-10-04 macgyver <macgyver>
* ChangeLog: [no log message]
-1999-10-04 16:57 macgyver
-
- * changelog, doc/Changes-1.2.0pre3: Moved the old changelog to
- doc/Changes-1.2.0pre3 to avoid any confusion.
-
-1999-10-04 16:54 macgyver
+1999-10-04 macgyver <macgyver>
* ChangeLog: Updated the ChangeLog.
-1999-10-04 16:41 macgyver
-
- * contrib/mod_pgsql.c: Fixed a bad path in includes.
-
-1999-10-04 16:39 macgyver
+1999-10-04 macgyver <macgyver>
* contrib/mod_ratio.c: Fixed a typo in an snprintf.
-1999-10-04 16:35 macgyver
+1999-10-04 macgyver <macgyver>
* include/version.h: Updated to pre8.
-1999-10-04 16:35 macgyver
+1999-10-04 macgyver <macgyver>
* configure, configure.in: Enhanced configure to automagically
- create the necessary symlinks.
-
-1999-10-04 16:34 macgyver
+ create the necessary symlinks.
- * contrib/: mod_mysql.c, mod_pgsql.c: Fixed references to absolute
- paths.
+1999-10-04 macgyver <macgyver>
-1999-10-04 16:09 macgyver
+ * contrib/mod_ratio.c: Added in Johnie Ingram's latest mod_*sql
+ patches, along with some slight buffer fixes of my own.
- * contrib/: mod_mysql.c, mod_mysql.h, mod_pgsql.c, mod_ratio.c,
- mod_sqlpw.c: Added in Johnie Ingram's latest mod_*sql patches,
- along with some slight buffer fixes of my own.
-
-1999-10-01 16:52 macgyver
+1999-10-01 macgyver <macgyver>
* src/support.c: Fixed a typo with statvfs.
-1999-10-01 08:57 macgyver
-
- * doc/Undocumented.txt: Updated undocumented directives.
-
-1999-10-01 01:13 macgyver
+1999-10-01 macgyver <macgyver>
* ChangeLog: Moved to cvs2cl generation of ChangeLogs.
-1999-10-01 00:58 macgyver
+1999-10-01 macgyver <macgyver>
* ChangeLog: Updated ChangeLog
-1999-10-01 00:57 macgyver
+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/io.c, src/log.c, src/main.c: Added
- classes support, new bandwidth support, and sendfile support.
+ 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 00:55 macgyver
+1999-10-01 macgyver <macgyver>
* src/data.c: Added support for sendfile().
-1999-09-30 21:08 macgyver
-
- * doc/Undocumented.txt: Regenerated the undocumented directives.
-
-1999-09-30 20:49 macgyver
+1999-10-01 macgyver <macgyver>
* include/privs.h, modules/mod_auth.c: Added in support for
- setresuid on HP/UX.
+ setresuid on HP/UX.
-1999-09-30 20:36 macgyver
+1999-10-01 macgyver <macgyver>
* doc/Configuration.html, modules/mod_xfer.c: Added new Bandwidth
- code and documentation.
+ code and documentation.
-1999-09-30 20:35 macgyver
+1999-10-01 macgyver <macgyver>
* modules/mod_auth.c: Corrected a tricky bug with parsing of
- configuration files. Thanks Klaus.
+ configuration files. Thanks Klaus.
-1999-09-30 20:34 macgyver
+1999-10-01 macgyver <macgyver>
* modules/mod_ls.c: Fixed a silly typo with snprintf.
-1999-09-30 20:33 macgyver
-
- * modules/mod_unixpw.c: Added support for HP/UX-style security.
-
-1999-09-30 20:33 macgyver
+1999-10-01 macgyver <macgyver>
* modules/mod_core.c: Removed old and naieve bandwidth code.
-1999-09-30 20:32 macgyver
+1999-10-01 macgyver <macgyver>
- * src/dirtree.c, include/dirtree.h: Remove old and naieve bandwidth
- code.
+ * include/dirtree.h, src/dirtree.c: Remove old and naieve bandwidth
+ code.
-1999-09-30 20:31 macgyver
+1999-10-01 macgyver <macgyver>
* config.h.in, configure, configure.in: HP/UX security detection
- added.
+ added.
-1999-09-29 23:10 macgyver
+1999-09-30 macgyver <macgyver>
* modules/mod_auth.c: Fix a potential security hole.
-1999-09-29 23:10 macgyver
+1999-09-30 macgyver <macgyver>
- * modules/mod_ls.c: DirFakeMode available inside <Directory>
- blocks.
+ * modules/mod_ls.c: DirFakeMode available inside <Directory> blocks.
-1999-09-29 23:04 macgyver
+1999-09-30 macgyver <macgyver>
* configure, configure.in: Corrected configure portability issues.
-1999-09-29 23:03 macgyver
+1999-09-30 macgyver <macgyver>
* modules/mod_ls.c: Corrected static declarations.
-1999-09-29 22:54 macgyver
-
- * contrib/mod_linuxprivs.c: Added support for PowerPC
- architectures.
-
-1999-09-29 22:54 macgyver
+1999-09-30 macgyver <macgyver>
* src/dirtree.c: Corrected a couple of problems related to IP LIMIT
- directives.
+ directives.
-1999-09-29 22:28 macgyver
+1999-09-30 macgyver <macgyver>
* contrib/mod_readme.c: Deleted spurious mod_readme file.
-1999-09-29 22:13 macgyver
+1999-09-30 macgyver <macgyver>
* modules/mod_core.c: Fixed compliance with RFC 929 with respect to
- RNTO.
+ RNTO.
-1999-09-29 13:46 macgyver
+1999-09-29 macgyver <macgyver>
- * modules/: mod_auth.c, mod_ls.c: Minor bug fixes.
+ * modules/mod_auth.c, modules/mod_ls.c: Minor bug fixes.
-1999-09-29 13:45 macgyver
+1999-09-29 macgyver <macgyver>
- * src/dirtree.c: Fixed a bug in match_ip that was causing some
- LIMIT directives to fail.
+ * src/dirtree.c: Fixed a bug in match_ip that was causing some LIMIT
+ directives to fail.
-1999-09-28 16:09 macgyver
+1999-09-28 macgyver <macgyver>
* src/inet.c: Corrected an incorrect call to inet_validate in
- inet_getaddr.
+ inet_getaddr.
-1999-09-26 14:42 macgyver
+1999-09-26 macgyver <macgyver>
* doc/Configuration.html: Fixed a small typo.
-1999-09-26 10:03 macgyver
+1999-09-26 macgyver <macgyver>
* ChangeLog: Added in a real ChangeLog.
-1999-09-26 03:02 macgyver
+1999-09-26 macgyver <macgyver>
- * doc/Undocumented.txt, modules/mod_core.c: Added in
- CommandBufferSize.
+ * modules/mod_core.c: Added in CommandBufferSize.
-1999-09-25 23:00 macgyver
+1999-09-26 macgyver <macgyver>
* src/log.c: Corrected minor syslog errors.
-1999-09-25 22:36 macgyver
+1999-09-26 macgyver <macgyver>
* src/dirtree.c: Fixed a C++ style comment.
-1999-09-25 22:32 macgyver
-
- * src/utils.c: Compilation issues on other Unix platforms
- addressed.
-
-1999-09-25 22:08 macgyver
-
- * doc/Configuration.html: Added in updated configuration
- directives.
+1999-09-26 macgyver <macgyver>
-1999-09-18 11:26 macgyver
+ * doc/Configuration.html: Added in updated configuration directives.
- * src/: dirtree.c, fs.c: Cleaned up usage of fs_readlink.
+1999-09-18 macgyver <macgyver>
-1999-09-18 11:25 macgyver
+ * : Cleaned up usage of fs_readlink.
- * src/log.c: Code cleanups.
+1999-09-18 macgyver <macgyver>
-1999-09-18 11:25 macgyver
+ * src/pool.c, src/support.c: Minor code beautification.
- * src/: pool.c, support.c: Minor code beautification.
-
-1999-09-18 11:23 macgyver
+1999-09-18 macgyver <macgyver>
* modules/mod_ls.c: Fixed some bad code calling fs_readlink.
-1999-09-17 00:36 macgyver
+1999-09-17 macgyver <macgyver>
* Makefile.in: Fixed symbolic link installation.
-1999-09-17 00:31 macgyver
+1999-09-17 macgyver <macgyver>
- * contrib/mod_mysql.c, 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_pam.c, modules/mod_tar.c,
- modules/mod_test.c, modules/mod_xfer.c, src/auth.c,
- src/dirtree.c, src/fs.c, src/ftpcount.c, src/log.c, src/main.c,
- src/pool.c, src/support.c, src/utils.c: Implemented sstrncpy to
- handle proper buffer copying issues on all platforms.
+ * 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-16 21:14 macgyver
+1999-09-17 macgyver <macgyver>
* modules/mod_ls.c: gcc cleanups.
-1999-09-16 21:14 macgyver
+1999-09-17 macgyver <macgyver>
* modules/mod_log.c: Eliminated some potential problems with
- logging.
+ logging.
-1999-09-16 21:13 macgyver
+1999-09-17 macgyver <macgyver>
* modules/mod_xfer.c: gcc cleanups and a more informative error
- message added.
+ message added.
-1999-09-16 21:06 macgyver
+1999-09-17 macgyver <macgyver>
* src/log.c: More intelligent handling of logfiles to avoid a
- potential race condition.
+ potential race condition.
-1999-09-16 21:05 macgyver
+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.
+ AllowFilter/DenyFilter. More intelligent handling of logfiles. gcc
+ cleanups. wu-ftp style logging of deleted files.
-1999-09-16 21:00 macgyver
+1999-09-17 macgyver <macgyver>
* src/pool.c: Fixed gcc warnings.
-1999-09-16 20:59 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>
-1999-09-16 20:57 macgyver
+ * src/main.c: Added AllowFilter/DenyFilter. Fixed a small typo with
+ newlines. Corrected a slight problem with memory debugging. Fixed
+ several gcc warnings.
- * src/utils.c: Check for bad DNS entries.
-
-1999-09-16 20:56 macgyver
+1999-09-17 macgyver <macgyver>
* include/inet.h, src/inet.c: Check for any potential DNS spoofing
- attacks from the outside.
+ attacks from the outside.
-1999-09-16 20:55 macgyver
+1999-09-17 macgyver <macgyver>
* include/version.h: Bumped version number.
-1999-09-16 20:54 macgyver
+1999-09-17 macgyver <macgyver>
* sample-configurations/complex-virtual.conf: Added in a new sample
- configuration.
-
-1999-09-16 20:53 macgyver
+ configuration.
- * contrib/proftpd.spec.in: Added in mod_readme.
-
-1999-09-16 20:45 macgyver
+1999-09-17 macgyver <macgyver>
* .cvsignore, contrib/.cvsignore: Added some more files to ignore.
-1999-09-16 10:20 macgyver
+1999-09-16 macgyver <macgyver>
* src/main.c: Changed an argument reversal.
-1999-09-16 00:45 macgyver
+1999-09-16 macgyver <macgyver>
* src/log.c: Cleaned up some ugly code.
-1999-09-16 00:42 macgyver
+1999-09-16 macgyver <macgyver>
* src/main.c: Fixed a silly, yet insidious, way to overflow a
- buffer.
+ buffer.
-1999-09-14 11:36 macgyver
+1999-09-14 macgyver <macgyver>
* modules/mod_xfer.c: Corrected a minor typo .in -> .in.
-1999-09-14 01:43 macgyver
-
- * changelog, include/proftpd.h, modules/mod_core.c,
- modules/mod_xfer.c: Implemented HiddenStor.
+1999-09-14 macgyver <macgyver>
-1999-09-12 14:11 macgyver
+ * include/proftpd.h, modules/mod_core.c, modules/mod_xfer.c:
+ Implemented HiddenStor.
- * README.Solaris2.5x: Additional information regarding Solaris
- 2.5.x systems added.
+1999-09-12 macgyver <macgyver>
-1999-09-12 13:28 macgyver
+ * README.Solaris2.5x: Additional information regarding Solaris 2.5.x
+ systems added.
- * 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>
-1999-09-12 10:04 macgyver
+ * config.h.in, configure, configure.in, include/conf.h, src/log.c:
+ Added in support for utmpx under Solaris and like-minded platforms.
- * doc/: Configuration.html, FAQ-config.html, GetConf,
- ShowUndocumented, Undocumented.txt: Added configuration
- documentation and 'un' documentation.
+1999-09-12 macgyver <macgyver>
-1999-09-12 09:30 macgyver
+ * doc/Configuration.html: Added configuration documentation and 'un'
+ documentation.
- * contrib/mod_ratio.c, doc/GetConf, modules/mod_auth.c,
- modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c,
- modules/mod_readme.c, modules/mod_sample.c: Initial import of
- GetConf, and slight cleanup in all modules.
+1999-09-12 macgyver <macgyver>
-1999-09-11 17:08 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.
- * changelog, src/ftpcount.1, src/ftpshut.8, src/ftpwho.1,
- src/proftpd.8: Corrected mailing list addresses.
+1999-09-12 macgyver <macgyver>
-1999-09-11 17:05 macgyver
+ * include/version.h: Corrected versioning info.
- * contrib/proftpd.spec.in, include/version.h: Corrected versioning
- info.
-
-1999-09-11 13:50 macgyver
+1999-09-11 macgyver <macgyver>
* configure, configure.in: Forgot the 'id' issue.
-1999-09-11 13:45 macgyver
-
- * contrib/proftpd.spec.in: Cleanup of spec file.
-
-1999-09-11 13:44 macgyver
+1999-09-11 macgyver <macgyver>
* configure, configure.in: A couple of more configure fixes.
-1999-09-10 14:17 macgyver
+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.
+ handle log_xfer more like WU-FTPd.
-1999-09-10 13:17 macgyver
+1999-09-10 macgyver <macgyver>
- * INSTALL, README, contrib/mod_pam.c, modules/mod_pam.c: Moved PAM
- into the main module set. It's now a 'core' feature.
+ * INSTALL, README: Moved PAM into the main module set. It's now a
+ 'core' feature.
-1999-09-10 12:49 macgyver
+1999-09-10 macgyver <macgyver>
* src/main.c: Added CommandBufferSize option.
-1999-09-10 12:08 macgyver
+1999-09-10 macgyver <macgyver>
* configure, configure.in: Fixed a small typo with shadow use.
-1999-09-10 01:21 macgyver
+1999-09-10 macgyver <macgyver>
- * configure, configure.in: Updated support for Solaris, and made
- PAM sleep quietly when told to do so.
+ * configure, configure.in: Updated support for Solaris, and made PAM
+ sleep quietly when told to do so.
-1999-09-10 00:46 macgyver
+1999-09-10 macgyver <macgyver>
* src/support.c: Fixed remaining buffer issues in sreplace.
-1999-09-09 22:36 macgyver
+1999-09-10 macgyver <macgyver>
* src/pool.c: Corrected alignment issues on 64-bit platforms.
- Thanks to Todd C. Miller <millert at ee.ethz.ch> for the patch.
-
-1999-09-09 22:27 macgyver
+ Thanks to Todd C. Miller <millert at ee.ethz.ch> for the patch.
- * src/ftpshut.c: Cleaned up ftpshut options to return more
- meaningful errors.
-
-1999-09-09 20:44 macgyver
+1999-09-10 macgyver <macgyver>
* src/pool.c: Fix for improper strncpy.
-1999-09-08 20:18 macgyver
+1999-09-09 macgyver <macgyver>
* src/support.c: Corrected a length bug in sreplace.
-1999-09-08 01:35 macgyver
+1999-09-08 macgyver <macgyver>
- * configure, configure.in, contrib/mod_pam.c: Updates to
- auto-configuring for PAM on *BSD.
+ * configure, configure.in: Updates to auto-configuring for PAM on
+ *BSD.
-1999-09-08 01:03 macgyver
+1999-09-08 macgyver <macgyver>
* configure, configure.in: Fixed setproctitle detection on *BSD
- platforms.
+ platforms.
-1999-09-08 00:48 macgyver
+1999-09-08 macgyver <macgyver>
* configure, configure.in: Fixed an extra 'fi' statement.
-1999-09-08 00:43 macgyver
+1999-09-08 macgyver <macgyver>
* configure, configure.in: Fixed a small typo in PAM detection.
-1999-09-08 00:42 macgyver
+1999-09-08 macgyver <macgyver>
* Make.rules.in, config.h.in: Added memory debugging support.
-1999-09-08 00:15 macgyver
-
- * contrib/: mod_mysql.c, mod_mysql.h: Initial import of mod_mysql,
- with some buffer fixes.
-
-1999-09-08 00:09 macgyver
+1999-09-08 macgyver <macgyver>
* modules/Makefile.in: Updated for mod_mysql.
-1999-09-08 00:06 macgyver
+1999-09-08 macgyver <macgyver>
* config.guess: Added in StrongARM support.
-1999-09-07 23:59 macgyver
+1999-09-08 macgyver <macgyver>
* src/main.c: Added in some debugging code to assist in tracking
- down memory problems.
+ down memory problems.
-1999-09-07 23:58 macgyver
+1999-09-08 macgyver <macgyver>
* src/pool.c: Fixed a couple of bugs introduced by silly typos.
-1999-09-07 23:57 macgyver
+1999-09-08 macgyver <macgyver>
* src/log.c: Minor buffer cleanups.
-1999-09-07 23:55 macgyver
+1999-09-08 macgyver <macgyver>
* src/inet.c: Added a helper message for people who misconfigure
- their servers.
+ their servers.
-1999-09-07 16:29 macgyver
+1999-09-07 macgyver <macgyver>
* Makefile.in, config.h.in, configure, configure.in,
- include/dirtree.h, include/fs.h, include/version.h, lib/glob.c,
- src/dirtree.c, src/fs.c, src/ftpcount.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.
+ 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 16:22 macgyver
+1999-09-07 macgyver <macgyver>
* contrib/.cvsignore: Removed README.linux-privs
-1999-09-07 16:17 macgyver
-
- * contrib/: ftp.pamd, proftpd.spec.in: Added in RPM spec and
- ProFTPD PAM file.
-
-1999-09-07 16:14 macgyver
-
- * contrib/mod_linuxprivs.c: Updated capabilities code to newer
- release.
-
-1999-09-07 16:13 macgyver
+1999-09-07 macgyver <macgyver>
* contrib/mod_ratio.c: Fixed some potential buffer issues.
-1999-09-07 16:13 macgyver
-
- * contrib/mod_pam.c: Some minor security updates to fix potential
- buffer problems.
+1999-09-07 macgyver <macgyver>
-1999-09-07 16:09 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.
- * modules/: mod_auth.c, mod_log.c, mod_ls.c, mod_site.c, mod_tar.c,
- mod_test.c, mod_unixpw.c, 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 16:08 macgyver
+1999-09-07 macgyver <macgyver>
* modules/mod_core.c: Added in Bandwidth patch for bandwidth
- control. Security cleanups -- removed lots of unsafe buffer
- copies.
+ control. Security cleanups -- removed lots of unsafe buffer copies.
-1999-09-07 16:06 macgyver
+1999-09-07 macgyver <macgyver>
* modules/Makefile.in: Updated Makefile for new capabilities code.
-1999-08-30 18:31 flood
+1999-08-31 flood <flood>
- * changelog, contrib/mod_linuxprivs.c, 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.
+ * 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-11 17:58 flood
+1999-03-12 flood <flood>
- * changelog, modules/mod_xfer.c: TYPE A N
+ * modules/mod_xfer.c: TYPE A N
-1999-03-11 17:37 flood
+1999-03-12 flood <flood>
- * changelog, src/inet.c: OpenBSD SO_REUSEADDR patch.
+ * src/inet.c: OpenBSD SO_REUSEADDR patch.
-1999-03-09 17:19 flood
+1999-03-10 flood <flood>
- * changelog, include/version.h: Version 1.2.0pre3
+ * include/version.h: Version 1.2.0pre3
-1999-03-07 09:18 flood
+1999-03-07 flood <flood>
- * changelog, include/proftpd.h, modules/mod_core.c, src/dirtree.c,
- src/main.c: Added `MultilineRFC2228' directive and changed
- `ServerIdent'.
+ * include/proftpd.h, modules/mod_core.c, src/dirtree.c, src/main.c:
+ Added `MultilineRFC2228' directive and changed `ServerIdent'.
-1999-03-05 09:55 flood
+1999-03-05 flood <flood>
* modules/mod_xfer.c, src/timers.c: Oops. Last nights commit
- royally screwed timers.
+ royally screwed timers.
-1999-03-04 19:34 flood
+1999-03-05 flood <flood>
- * Make.rules.in, Makefile.in, acconfig.h, changelog, config.h.in,
- configure, configure.in, contrib/mod_pam.c, 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.
+ * 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-04 18:53 flood
+1999-03-05 flood <flood>
- * changelog, include/io.h, modules/mod_xfer.c, src/ident.c,
- src/io.c, src/main.c: Fixed ident & i/o (hanging) problems.
+ * modules/mod_xfer.c, src/ident.c, src/main.c: Fixed ident & i/o
+ (hanging) problems.
-1999-03-04 16:44 flood
+1999-03-05 flood <flood>
- * changelog, modules/mod_xfer.c: what did I fix?
+ * modules/mod_xfer.c: what did I fix?
-1999-03-04 16:29 flood
+1999-03-05 flood <flood>
* include/timers.h, modules/mod_auth.c, src/main.c, src/support.c,
- src/timers.c: timer code fixed
+ src/timers.c: timer code fixed
-1999-02-13 18:36 flood
+1999-02-14 flood <flood>
* modules/mod_ls.c: Ugg.. Yet another mod_ls quickfix.
-1999-02-13 17:47 flood
+1999-02-14 flood <flood>
* modules/mod_auth.c: Ooops. add_userdir should have tested for >
- 0.
+ 0.
-1999-02-13 16:55 flood
+1999-02-14 flood <flood>
- * changelog, include/version.h: Version 1.2.0pre2
+ * include/version.h: Version 1.2.0pre2
-1999-02-12 11:37 flood
+1999-02-12 flood <flood>
- * Makefile.in, changelog, modules/mod_auth.c, modules/mod_core.c,
- modules/mod_ls.c, modules/mod_xfer.c, src/main.c, src/proftpd.8:
- Mondo changes.
+ * 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 14:06 flood
+1999-01-27 flood <flood>
- * changelog, include/support.h, modules/mod_ls.c, src/fs.c,
- src/support.c: More possibly MKD/CWD 'sploits fixed, and mod_ls
- workin well.
+ * include/support.h, modules/mod_ls.c, src/support.c: More possibly
+ MKD/CWD 'sploits fixed, and mod_ls workin well.
-1999-01-21 08:32 flood
+1999-01-21 flood <flood>
* modules/mod_ls.c, src/ident.c: NLST now works properly! woo!
-1999-01-18 19:00 flood
-
- * modules/mod_readme.c: mod_readme.c added to CVS
-
-1999-01-18 17:34 flood
-
- * changelog, include/data.h, modules/mod_ls.c, src/data.c,
- src/fs.c, src/io.c, src/main.c: Still working on NLST RFC959
- compliane issue. ncftp client still showing problems.
-
-1998-11-01 11:08 flood
-
- * changelog, configure, configure.in, contrib/README,
- contrib/mod_pam.c, contrib/mod_ratio.c, contrib/mod_readme.c,
- include/proftpd.h, modules/mod_core.c, modules/mod_sample.c,
- modules/mod_xfer.c, src/dirtree.c: APPE, mod_pam & mod_readme
- added
-
-1998-10-29 17:38 flood
-
- * changelog, include/proftpd.h, modules/mod_log.c, src/main.c: Fix
- Debian bug #28641
-
-1998-10-29 16:59 flood
-
- * changelog, modules/mod_core.c, src/data.c: Fixes to PASV/PORT.
-
-1998-10-26 17:53 flood
-
- * changelog, modules/mod_log.c: %{} argument fix in mod_log.c
-
-1998-10-23 04:21 flood
-
- * changelog, include/pool.h, modules/mod_ls.c, src/main.c,
- src/pool.c: memory leak in mod_ls fixed
-
-1998-10-17 19:24 flood
-
- * .cvsignore, COPYING, INSTALL, Make.modules.in, Make.rules.in,
- Makefile.in, README, README.Solaris2.5x, README.linux-privs,
- acconfig.h, changelog, config.guess, config.h.in, config.sub,
- configure, configure.in, install-sh, contrib/.cvsignore,
- contrib/README, contrib/mod_linuxprivs.c, contrib/mod_ratio.c,
- contrib/xferstats.holger-preiss, doc/API, doc/development.notes,
- doc/license.txt, include/conf.h, include/data.h,
- include/default_paths.h, include/dirtree.h, include/fs.h,
- include/ftp.h, include/ident.h, include/inet.h, include/io.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, include/version.h, lib/.cvsignore,
- lib/Makefile.in, lib/fnmatch.c, lib/getopt.c, lib/getopt.h,
- lib/getopt1.c, lib/glob.c, lib/glob.h, lib/pwgrent.c,
- lib/strsep.c, lib/vsnprintf.c, modules/.cvsignore,
- modules/Makefile.in, modules/glue.sh, modules/mod_auth.c,
- modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c,
- modules/mod_sample.c, modules/mod_site.c, modules/mod_tar.c,
- modules/mod_test.c, modules/mod_unixpw.c, modules/mod_xfer.c,
- modules/module_glue.c.tmpl, sample-configurations/anonymous.conf,
- sample-configurations/basic.conf,
- sample-configurations/virtual.conf, src/.cvsignore,
- src/Makefile.in, src/auth.c, src/data.c, src/dirtree.c, src/fs.c,
- src/ftpcount.1, src/ftpcount.c, src/ftpshut.8, src/ftpshut.c,
- src/ftpwho.1, src/ident.c, src/inet.c, src/io.c, src/log.c,
- src/main.c, src/modules.c, src/pool.c, src/proftpd.8, src/sets.c,
- src/support.c, src/timers.c, src/utils.c, src/xferlog.5: Imported
- source for proftpd 1.2.0
-
-1998-10-17 19:24 flood
-
- * .cvsignore, COPYING, INSTALL, Make.modules.in, Make.rules.in,
- Makefile.in, README, README.Solaris2.5x, README.linux-privs,
- acconfig.h, changelog, config.guess, config.h.in, config.sub,
- configure, configure.in, install-sh, contrib/.cvsignore,
- contrib/README, contrib/mod_linuxprivs.c, contrib/mod_ratio.c,
- contrib/xferstats.holger-preiss, doc/API, doc/development.notes,
- doc/license.txt, include/conf.h, include/data.h,
- include/default_paths.h, include/dirtree.h, include/fs.h,
- include/ftp.h, include/ident.h, include/inet.h, include/io.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, include/version.h, lib/.cvsignore,
- lib/Makefile.in, lib/fnmatch.c, lib/getopt.c, lib/getopt.h,
- lib/getopt1.c, lib/glob.c, lib/glob.h, lib/pwgrent.c,
- lib/strsep.c, lib/vsnprintf.c, modules/.cvsignore,
- modules/Makefile.in, modules/glue.sh, modules/mod_auth.c,
- modules/mod_core.c, modules/mod_log.c, modules/mod_ls.c,
- modules/mod_sample.c, modules/mod_site.c, modules/mod_tar.c,
- modules/mod_test.c, modules/mod_unixpw.c, modules/mod_xfer.c,
- modules/module_glue.c.tmpl, sample-configurations/anonymous.conf,
- sample-configurations/basic.conf,
- sample-configurations/virtual.conf, src/.cvsignore,
- src/Makefile.in, src/auth.c, src/data.c, src/dirtree.c, src/fs.c,
- src/ftpcount.1, src/ftpcount.c, src/ftpshut.8, src/ftpshut.c,
- src/ftpwho.1, src/ident.c, src/inet.c, src/io.c, src/log.c,
- src/main.c, src/modules.c, src/pool.c, src/proftpd.8, src/sets.c,
- src/support.c, src/timers.c, src/utils.c, src/xferlog.5: Initial
- revision
+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
diff --git a/NEWS b/NEWS
index 3c06cfd..de2c98b 100644
--- a/NEWS
+++ b/NEWS
@@ -8,6 +8,22 @@
where `N' is the bug number.
-----------------------------------------------------------------------------
+1.3.5d - Released 15-Jan-2017
+--------------------------------
+- Bug 4283 - All FTP logins treated as anonymous logins again. This is a
+ regression of Bug#3307.
+
+1.3.5c - Released 14-Jan-2017
+--------------------------------
+- Bug 4254 - SSH rekey during authentication can cause issues with clients.
+- Bug 4257 - Recursive SCP uploads of multiple directories not handled properly.
+- Bug 4259 - LIST returns different results for file, depending on path syntax.
+- Bug 4255 - "AuthAliasOnly on" in server config breaks anonymous logins.
+- Bug 4272 - CapabilitiesEngine directive not honored for <IfUser>/<IfGroup>
+ sections.
+- Bug 4275 - Support OpenSSL 1.1.x API.
+- Bug 4278 - Memory leak when mod_facl is used.
+
1.3.5b - Released 10-Mar-2016
--------------------------------
- Bug 4187 - mod_geoip does not load all of the GeoIPTables properly.
@@ -29,6 +45,11 @@
- Bug 4227 - Support SFTP clients that send multiple INIT requests.
- Bug 4230 - TLSDHParamFile directive appears ignored because unexpected DH is
chosen.
+- Bug 4242 - Using mod_memcache results in segfault (signal 11). Caused by
+ a bug in libmemcached-1.0.18 and earlier.
+- Bug 4248 - ALLO command failed unexpectedly.
+- Bug 4247 - ProFTPD runs out of memory when listing very large directories
+ (e.g. over 400GB).
1.3.5a - Released 27-May-2015
--------------------------------
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index e075dc7..b67256b 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -6,11 +6,27 @@ This file contains a description of the major changes to ProFTPD for the
releases. More information on these changes can be found in the NEWS and
ChangeLog files.
+1.3.5d
+---------
+
+ + Fixed regression where all normal FTP users were handled as anonymous
+ users.
+
+
+1.3.5c
+---------
+
+ + Support for OpenSSL 1.1.x API changes.
+ + Fixed memory leak when mod_facl is used.
+ + Fixed handling of CapabilitiesEngine in <IfUser>/<IfGroup> sections.
+
+
1.3.5b
---------
+ SSH RSA hostkeys smaller than 2048 bits now work properly.
+ MLSD response lines are now properly CRLF terminated.
+ + Fixed selection of DH groups from TLSDHParamFile.
1.3.5a
diff --git a/configure b/configure
index 8152a82..0b4c591 100755
--- a/configure
+++ b/configure
@@ -815,6 +815,7 @@ target
target_cpu
target_vendor
target_os
+BUILD_OPTS
OSREL
OSTYPE
CONFIG_SHELL
@@ -2265,10 +2266,13 @@ if test "$OSTYPE" = "$OSREL" ; then
platform="\"$ostype\""
fi
+BUILD_OPTS=`echo "$ac_configure_args"`
+
cat >>confdefs.h <<_ACEOF
-#define PR_BUILD_OPTS "`echo "$ac_configure_args"`"
+#define PR_BUILD_OPTS "$BUILD_OPTS"
_ACEOF
+
cat >>confdefs.h <<_ACEOF
#define PR_PLATFORM $platform
_ACEOF
@@ -2276,6 +2280,7 @@ _ACEOF
+
if test "$OSTYPE" = "-DRHAPSODY5"; then
CFLAGS="$CFLAGS -traditional-cpp -D__OT__"
fi
@@ -3880,13 +3885,13 @@ if test "${lt_cv_nm_interface+set}" = set; then
else
lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:3883: $ac_compile\"" >&5)
+ (eval echo "\"\$as_me:3888: $ac_compile\"" >&5)
(eval "$ac_compile" 2>conftest.err)
cat conftest.err >&5
- (eval echo "\"\$as_me:3886: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval echo "\"\$as_me:3891: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&5
- (eval echo "\"\$as_me:3889: output\"" >&5)
+ (eval echo "\"\$as_me:3894: output\"" >&5)
cat conftest.out >&5
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin"
@@ -5108,7 +5113,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 5111 "configure"' > conftest.$ac_ext
+ echo '#line 5116 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -6958,11 +6963,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6961: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6966: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6965: \$? = $ac_status" >&5
+ echo "$as_me:6970: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -7297,11 +7302,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:7300: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:7305: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:7304: \$? = $ac_status" >&5
+ echo "$as_me:7309: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -7402,11 +7407,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:7405: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:7410: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:7409: \$? = $ac_status" >&5
+ echo "$as_me:7414: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -7457,11 +7462,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:7460: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:7465: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:7464: \$? = $ac_status" >&5
+ echo "$as_me:7469: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -10226,7 +10231,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10229 "configure"
+#line 10234 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -10322,7 +10327,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10325 "configure"
+#line 10330 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -13995,11 +14000,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13998: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14003: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:14002: \$? = $ac_status" >&5
+ echo "$as_me:14007: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -14094,11 +14099,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14097: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14102: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:14101: \$? = $ac_status" >&5
+ echo "$as_me:14106: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14146,11 +14151,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14149: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14154: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:14153: \$? = $ac_status" >&5
+ echo "$as_me:14158: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -16735,7 +16740,8 @@ echo "$as_me: WARNING: ** Cannot find lastlog **" >&2;}
fi
if test -n "$pr_lastlog_path" ; then
- cat >>confdefs.h <<_ACEOF
+
+cat >>confdefs.h <<_ACEOF
#define PR_LASTLOG_PATH "`eval echo "$pr_lastlog_path"`"
_ACEOF
@@ -18050,7 +18056,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 18053 "configure"
+#line 18059 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -20936,12 +20942,14 @@ if test "${enable_scoreboard_updates+set}" = set; then
if test x"$enableval" = xyes || test x"$enableval" = xno ; then
{ echo "$as_me:$LINENO: WARNING: scoreboard updates defaulting to 10" >&5
echo "$as_me: WARNING: scoreboard updates defaulting to 10" >&2;}
- cat >>confdefs.h <<_ACEOF
+
+cat >>confdefs.h <<_ACEOF
#define PR_TUNABLE_XFER_SCOREBOARD_UPDATES 10
_ACEOF
else
- cat >>confdefs.h <<_ACEOF
+
+cat >>confdefs.h <<_ACEOF
#define PR_TUNABLE_XFER_SCOREBOARD_UPDATES $enableval
_ACEOF
@@ -23278,7 +23286,8 @@ fi
{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_spwd_sp_warn" >&5
echo "${ECHO_T}$ac_cv_member_struct_spwd_sp_warn" >&6; }
if test $ac_cv_member_struct_spwd_sp_warn = yes; then
- cat >>confdefs.h <<\_ACEOF
+
+cat >>confdefs.h <<\_ACEOF
#define HAVE_SPWD_SP_WARN 1
_ACEOF
@@ -23380,7 +23389,8 @@ fi
{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_spwd_sp_inact" >&5
echo "${ECHO_T}$ac_cv_member_struct_spwd_sp_inact" >&6; }
if test $ac_cv_member_struct_spwd_sp_inact = yes; then
- cat >>confdefs.h <<\_ACEOF
+
+cat >>confdefs.h <<\_ACEOF
#define HAVE_SPWD_SP_INACT 1
_ACEOF
@@ -23482,13 +23492,13 @@ fi
{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_spwd_sp_expire" >&5
echo "${ECHO_T}$ac_cv_member_struct_spwd_sp_expire" >&6; }
if test $ac_cv_member_struct_spwd_sp_expire = yes; then
- cat >>confdefs.h <<\_ACEOF
+
+cat >>confdefs.h <<\_ACEOF
#define HAVE_SPWD_SP_EXPIRE 1
_ACEOF
fi
-
fi
fi
@@ -30811,7 +30821,8 @@ fi
{ echo "$as_me:$LINENO: result: $ac_cv_type_intptr_t" >&5
echo "${ECHO_T}$ac_cv_type_intptr_t" >&6; }
if test $ac_cv_type_intptr_t = yes; then
- cat >>confdefs.h <<\_ACEOF
+
+cat >>confdefs.h <<\_ACEOF
#define HAVE_INTPTR_T 1
_ACEOF
@@ -38380,14 +38391,17 @@ pr_saved_exec_prefix="$exec_prefix"
test "x$prefix" = xNONE && prefix=$ac_default_prefix
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
cat >>confdefs.h <<_ACEOF
#define PR_CONFIG_DIR "`eval echo "${sysconfdir}"`"
_ACEOF
+
cat >>confdefs.h <<_ACEOF
#define PR_INCLUDE_DIR "`eval echo "${includedir}"`"
_ACEOF
+
cat >>confdefs.h <<_ACEOF
#define PR_LIBEXEC_DIR "`eval echo "${libexecdir}"`"
_ACEOF
@@ -38395,19 +38409,23 @@ _ACEOF
locale_dir="`eval echo ${localedir}`"
locale_dir="`eval echo ${locale_dir}`"
+
cat >>confdefs.h <<_ACEOF
#define PR_LOCALE_DIR "`eval echo "${locale_dir}"`"
_ACEOF
+
cat >>confdefs.h <<_ACEOF
#define PR_RUN_DIR "`eval echo "${localstatedir}"`"
_ACEOF
+
cat >>confdefs.h <<_ACEOF
#define PR_CONFIG_FILE_PATH "`eval echo "${sysconfdir}/proftpd.conf"`"
_ACEOF
+
cat >>confdefs.h <<_ACEOF
#define PR_PID_FILE_PATH "`eval echo "${localstatedir}/proftpd.pid"`"
_ACEOF
@@ -38583,16 +38601,19 @@ echo "${ECHO_T}no" >&6; }
fi
my_cflags="\"$CFLAGS\""
+
cat >>confdefs.h <<_ACEOF
#define PR_BUILD_CFLAGS $my_cflags
_ACEOF
my_ldflags="\"$LDFLAGS $LIBDIRS\""
+
cat >>confdefs.h <<_ACEOF
#define PR_BUILD_LDFLAGS $my_ldflags
_ACEOF
my_libs="\"$LIBRARIES $LIBS\""
+
cat >>confdefs.h <<_ACEOF
#define PR_BUILD_LIBS $my_libs
_ACEOF
@@ -39701,6 +39722,7 @@ target!$target$ac_delim
target_cpu!$target_cpu$ac_delim
target_vendor!$target_vendor$ac_delim
target_os!$target_os$ac_delim
+BUILD_OPTS!$BUILD_OPTS$ac_delim
OSREL!$OSREL$ac_delim
OSTYPE!$OSTYPE$ac_delim
CONFIG_SHELL!$CONFIG_SHELL$ac_delim
@@ -39748,7 +39770,6 @@ LOCALSTATEDIR!$LOCALSTATEDIR$ac_delim
PREFIX!$PREFIX$ac_delim
SBINDIR!$SBINDIR$ac_delim
SYSCONFDIR!$SYSCONFDIR$ac_delim
-LIBLTDL!$LIBLTDL$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -39790,6 +39811,7 @@ _ACEOF
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
+LIBLTDL!$LIBLTDL$ac_delim
LTDLDEPS!$LTDLDEPS$ac_delim
LTDLINCL!$LTDLINCL$ac_delim
INCLTDL!$INCLTDL$ac_delim
@@ -39844,7 +39866,7 @@ ltdl_LIBOBJS!$ltdl_LIBOBJS$ac_delim
ltdl_LTLIBOBJS!$ltdl_LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 52; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 53; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.in b/configure.in
index dc27852..8c43891 100644
--- a/configure.in
+++ b/configure.in
@@ -1,7 +1,7 @@
dnl ProFTPD - FTP server daemon
dnl Copyright (c) 1997, 1998 Public Flood Software
dnl Copyright (c) 1999, 2000 MacGyver aka Habeeb J. Dihu <macgyver at tos.net>
-dnl Copyright (c) 2001-2014 The ProFTPD Project team
+dnl Copyright (c) 2001-2016 The ProFTPD Project team
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
@@ -40,8 +40,10 @@ if test "$OSTYPE" = "$OSREL" ; then
platform="\"$ostype\""
fi
-AC_DEFINE_UNQUOTED(PR_BUILD_OPTS, "`echo "$ac_configure_args"`")
-AC_DEFINE_UNQUOTED(PR_PLATFORM, $platform)
+BUILD_OPTS=`echo "$ac_configure_args"`
+AC_DEFINE_UNQUOTED(PR_BUILD_OPTS, "$BUILD_OPTS", [Define the build options])
+AC_DEFINE_UNQUOTED(PR_PLATFORM, $platform, [Define the build platform])
+AC_SUBST(BUILD_OPTS)
AC_SUBST(OSREL)
AC_SUBST(OSTYPE)
@@ -279,7 +281,7 @@ AC_ARG_WITH(lastlog,
fi
if test -n "$pr_lastlog_path" ; then
- AC_DEFINE_UNQUOTED(PR_LASTLOG_PATH, "`eval echo "$pr_lastlog_path"`")
+ AC_DEFINE_UNQUOTED(PR_LASTLOG_PATH, "`eval echo "$pr_lastlog_path"`", [Define the lastlog path])
fi
fi
])
@@ -1078,9 +1080,9 @@ AC_ARG_ENABLE(scoreboard-updates,
[
if test x"$enableval" = xyes || test x"$enableval" = xno ; then
AC_MSG_WARN(scoreboard updates defaulting to 10)
- AC_DEFINE_UNQUOTED(PR_TUNABLE_XFER_SCOREBOARD_UPDATES, 10)
+ AC_DEFINE_UNQUOTED(PR_TUNABLE_XFER_SCOREBOARD_UPDATES, 10, [Define the scoreboard update count])
else
- AC_DEFINE_UNQUOTED(PR_TUNABLE_XFER_SCOREBOARD_UPDATES, $enableval)
+ AC_DEFINE_UNQUOTED(PR_TUNABLE_XFER_SCOREBOARD_UPDATES, $enableval, [Define the scoreboard update count])
fi
])
@@ -1316,15 +1318,11 @@ if test x"$force_shadow" != xno ; then
AC_DEFINE(PR_USE_SHADOW, 1, [Define if using shadow password support.])
AC_CHECK_MEMBER(struct spwd.sp_warn,
- [AC_DEFINE(HAVE_SPWD_SP_WARN)],,
- [#include <shadow.h>])
+ [AC_DEFINE(HAVE_SPWD_SP_WARN, 1, [Define if struct spwd has sp_warn])],, [#include <shadow.h>])
AC_CHECK_MEMBER(struct spwd.sp_inact,
- [AC_DEFINE(HAVE_SPWD_SP_INACT)],,
- [#include <shadow.h>])
+ [AC_DEFINE(HAVE_SPWD_SP_INACT, 1, [Define if struct spwd has sp_inact])],, [#include <shadow.h>])
AC_CHECK_MEMBER(struct spwd.sp_expire,
- [AC_DEFINE(HAVE_SPWD_SP_EXPIRE)],,
- [#include <shadow.h>])
-
+ [AC_DEFINE(HAVE_SPWD_SP_EXPIRE, 1, [Define if struct spwd has sp_expire])],, [#include <shadow.h>])
fi ])
fi
@@ -1552,7 +1550,7 @@ AC_CHECK_SIZEOF(void *, 0)
dnl Check for generic typedefs
AC_CHECK_TYPE(mode_t, mode_t)
AC_CHECK_TYPE(ino_t, ino_t)
-AC_CHECK_TYPE(intptr_t, AC_DEFINE(HAVE_INTPTR_T),, [
+AC_CHECK_TYPE(intptr_t, AC_DEFINE(HAVE_INTPTR_T, 1, [Define if have intpr_t type]),, [
#if HAVE_INTTYPES_H
# include <inttypes.h>
#endif
@@ -2996,19 +2994,19 @@ pr_saved_exec_prefix="$exec_prefix"
test "x$prefix" = xNONE && prefix=$ac_default_prefix
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-AC_DEFINE_UNQUOTED(PR_CONFIG_DIR, "`eval echo "${sysconfdir}"`")
-AC_DEFINE_UNQUOTED(PR_INCLUDE_DIR, "`eval echo "${includedir}"`")
-AC_DEFINE_UNQUOTED(PR_LIBEXEC_DIR, "`eval echo "${libexecdir}"`")
+AC_DEFINE_UNQUOTED(PR_CONFIG_DIR, "`eval echo "${sysconfdir}"`", [Define the config directory])
+AC_DEFINE_UNQUOTED(PR_INCLUDE_DIR, "`eval echo "${includedir}"`", [Define the include directory])
+AC_DEFINE_UNQUOTED(PR_LIBEXEC_DIR, "`eval echo "${libexecdir}"`", [Define the libexec directory])
dnl We evaluate the string twice. Once to go from $datadir to $prefix/share,
dnl and once more to substitute in the $prefix value. What a pain.
locale_dir="`eval echo ${localedir}`"
locale_dir="`eval echo ${locale_dir}`"
-AC_DEFINE_UNQUOTED(PR_LOCALE_DIR, "`eval echo "${locale_dir}"`")
+AC_DEFINE_UNQUOTED(PR_LOCALE_DIR, "`eval echo "${locale_dir}"`", [Define the locale directory])
-AC_DEFINE_UNQUOTED(PR_RUN_DIR, "`eval echo "${localstatedir}"`")
-AC_DEFINE_UNQUOTED(PR_CONFIG_FILE_PATH, "`eval echo "${sysconfdir}/proftpd.conf"`")
-AC_DEFINE_UNQUOTED(PR_PID_FILE_PATH, "`eval echo "${localstatedir}/proftpd.pid"`")
+AC_DEFINE_UNQUOTED(PR_RUN_DIR, "`eval echo "${localstatedir}"`", [Define the run directory])
+AC_DEFINE_UNQUOTED(PR_CONFIG_FILE_PATH, "`eval echo "${sysconfdir}/proftpd.conf"`", [Define the configuration file path])
+AC_DEFINE_UNQUOTED(PR_PID_FILE_PATH, "`eval echo "${localstatedir}/proftpd.pid"`", [Define the PID file path])
prefix="$pr_saved_prefix"
exec_prefix="$pr_saved_exec_prefix"
@@ -3068,11 +3066,11 @@ if test "$OSTYPE" = "-DDARWIN6" -o "$OSTYPE" = "-DDARWIN7" -o "$OSTYPE" = "-DDAR
fi
my_cflags="\"$CFLAGS\""
-AC_DEFINE_UNQUOTED(PR_BUILD_CFLAGS, $my_cflags)
+AC_DEFINE_UNQUOTED(PR_BUILD_CFLAGS, $my_cflags, [Define the build CFLAGS])
my_ldflags="\"$LDFLAGS $LIBDIRS\""
-AC_DEFINE_UNQUOTED(PR_BUILD_LDFLAGS, $my_ldflags)
+AC_DEFINE_UNQUOTED(PR_BUILD_LDFLAGS, $my_ldflags, [Define the build LDFLAGS])
my_libs="\"$LIBRARIES $LIBS\""
-AC_DEFINE_UNQUOTED(PR_BUILD_LIBS, $my_libs)
+AC_DEFINE_UNQUOTED(PR_BUILD_LIBS, $my_libs, [Define the build LIBS])
dnl And finally, generate the appropriate Make* and config.h
AC_SUBST(ENABLE_NLS)
diff --git a/contrib/dist/rpm/proftpd.spec b/contrib/dist/rpm/proftpd.spec
index 8b4328e..c79b07d 100644
--- a/contrib/dist/rpm/proftpd.spec
+++ b/contrib/dist/rpm/proftpd.spec
@@ -1,5 +1,3 @@
-# $Id: proftpd.spec,v 1.90 2014-05-15 15:53:13 castaglia Exp $
-
# Module List:
#
# Dynamic modules with no/minimal additional build or runtime dependencies, always built
@@ -50,7 +48,7 @@
#
# NOTE: rpmbuild is really bloody stupid, and CANNOT handle a leading '#'
# character followed by a '%' character.
-%global release_cand_version b
+%global release_cand_version d
%global usecvsversion 0%{?_with_cvs:1}
diff --git a/contrib/mod_ldap.c b/contrib/mod_ldap.c
index e613da5..f4eb85a 100644
--- a/contrib/mod_ldap.c
+++ b/contrib/mod_ldap.c
@@ -1,7 +1,7 @@
/*
* mod_ldap - LDAP password lookup module for ProFTPD
* Copyright (c) 1999-2013, John Morrissey <jwm at horde.net>
- * Copyright (c) 2013 The ProFTPD Project
+ * Copyright (c) 2013-2016 The ProFTPD Project
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -135,10 +135,10 @@ LDAP_SEARCH(LDAP *ld, char *base, int scope, char *filter, char *attrs[],
static array_header *ldap_servers = NULL;
static unsigned int cur_server_index = 0;
static char *ldap_dn, *ldap_dnpass,
- *ldap_user_basedn, *ldap_user_name_filter,
- *ldap_user_uid_filter,
- *ldap_gid_basedn = NULL, *ldap_group_gid_filter,
- *ldap_group_name_filter, *ldap_group_member_filter,
+ *ldap_user_basedn = NULL, *ldap_user_name_filter = NULL,
+ *ldap_user_uid_filter = NULL,
+ *ldap_gid_basedn = NULL, *ldap_group_gid_filter = NULL,
+ *ldap_group_name_filter = NULL, *ldap_group_member_filter = NULL,
*ldap_defaultauthscheme = "crypt", *ldap_authbind_dn = NULL,
*ldap_genhdir_prefix = NULL, *ldap_default_quota = NULL,
*ldap_attr_uid = "uid",
@@ -1148,20 +1148,25 @@ MODRET handle_ldap_quota_lookup(cmd_rec *cmd) {
}
MODRET handle_ldap_ssh_pubkey_lookup(cmd_rec *cmd) {
+ char *user;
+
if (ldap_do_users == FALSE) {
return PR_DECLINED(cmd);
}
+ user = cmd->argv[0];
+
if (cached_ssh_pubkeys != NULL &&
- strcasecmp(((char **) cached_ssh_pubkeys->elts)[0], cmd->argv[0]) == 0) {
+ cached_ssh_pubkeys->nelts > 0 &&
+ strcasecmp(((char **) cached_ssh_pubkeys->elts)[0], user) == 0) {
(void) pr_log_writefile(ldap_logfd, MOD_LDAP_VERSION,
- "returning cached SSH public keys for user %s", cmd->argv[0]);
+ "returning cached SSH public keys for user %s", user);
return mod_create_data(cmd, cached_ssh_pubkeys);
}
if (pr_ldap_ssh_pubkey_lookup(cmd->tmp_pool, ldap_user_name_filter,
- cmd->argv[0], ldap_user_basedn) == FALSE) {
+ user, ldap_user_basedn) == FALSE) {
return PR_DECLINED(cmd);
}
diff --git a/contrib/mod_sftp/cipher.c b/contrib/mod_sftp/cipher.c
index 9ed4ed7..eefbf38 100644
--- a/contrib/mod_sftp/cipher.c
+++ b/contrib/mod_sftp/cipher.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp ciphers
- * Copyright (c) 2008-2014 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -20,8 +20,6 @@
* give permission to link this program with OpenSSL, and distribute the
* resulting executable, without including the source code for OpenSSL in the
* source distribution.
- *
- * $Id: cipher.c,v 1.18 2014-03-02 06:07:43 castaglia Exp $
*/
#include "mod_sftp.h"
@@ -56,13 +54,13 @@ static struct sftp_cipher read_ciphers[2] = {
{ NULL, NULL, NULL, 0, NULL, 0, 0 },
{ NULL, NULL, NULL, 0, NULL, 0, 0 }
};
-static EVP_CIPHER_CTX read_ctxs[2];
+static EVP_CIPHER_CTX *read_ctxs[2];
static struct sftp_cipher write_ciphers[2] = {
{ NULL, NULL, NULL, 0, NULL, 0, 0 },
{ NULL, NULL, NULL, 0, NULL, 0, 0 }
};
-static EVP_CIPHER_CTX write_ctxs[2];
+static EVP_CIPHER_CTX *write_ctxs[2];
#define SFTP_CIPHER_DEFAULT_BLOCK_SZ 8
static size_t cipher_blockszs[2] = {
@@ -96,7 +94,7 @@ static void switch_read_cipher(void) {
/* First, clear the context of the existing read cipher, if any. */
if (read_ciphers[read_cipher_idx].key) {
clear_cipher(&(read_ciphers[read_cipher_idx]));
- if (EVP_CIPHER_CTX_cleanup(&(read_ctxs[read_cipher_idx])) != 1) {
+ if (EVP_CIPHER_CTX_cleanup(read_ctxs[read_cipher_idx]) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error clearing cipher context: %s", sftp_crypto_get_errors());
}
@@ -117,7 +115,7 @@ static void switch_write_cipher(void) {
/* First, clear the context of the existing read cipher, if any. */
if (write_ciphers[write_cipher_idx].key) {
clear_cipher(&(write_ciphers[write_cipher_idx]));
- if (EVP_CIPHER_CTX_cleanup(&(write_ctxs[write_cipher_idx])) != 1) {
+ if (EVP_CIPHER_CTX_cleanup(write_ctxs[write_cipher_idx]) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error clearing cipher context: %s", sftp_crypto_get_errors());
}
@@ -156,8 +154,7 @@ static void clear_cipher(struct sftp_cipher *cipher) {
static int set_cipher_iv(struct sftp_cipher *cipher, const EVP_MD *hash,
const unsigned char *k, uint32_t klen, const char *h, uint32_t hlen,
char *letter, const unsigned char *id, uint32_t id_len) {
-
- EVP_MD_CTX ctx;
+ EVP_MD_CTX *ctx;
unsigned char *iv = NULL;
size_t cipher_iv_len = 0, iv_sz = 0;
uint32_t iv_len = 0;
@@ -191,14 +188,16 @@ static int set_cipher_iv(struct sftp_cipher *cipher, const EVP_MD *hash,
_exit(1);
}
- EVP_DigestInit(&ctx, hash);
+ ctx = EVP_MD_CTX_create();
+ EVP_DigestInit(ctx, hash);
if (sftp_interop_supports_feature(SFTP_SSH2_FEAT_CIPHER_USE_K)) {
- EVP_DigestUpdate(&ctx, k, klen);
+ EVP_DigestUpdate(ctx, k, klen);
}
- EVP_DigestUpdate(&ctx, h, hlen);
- EVP_DigestUpdate(&ctx, letter, sizeof(char));
- EVP_DigestUpdate(&ctx, (char *) id, id_len);
- EVP_DigestFinal(&ctx, iv, &iv_len);
+ EVP_DigestUpdate(ctx, h, hlen);
+ EVP_DigestUpdate(ctx, letter, sizeof(char));
+ EVP_DigestUpdate(ctx, (char *) id, id_len);
+ EVP_DigestFinal(ctx, iv, &iv_len);
+ EVP_MD_CTX_destroy(ctx);
/* If we need more, keep hashing, as per RFC, until we have enough
* material.
@@ -208,13 +207,15 @@ static int set_cipher_iv(struct sftp_cipher *cipher, const EVP_MD *hash,
pr_signals_handle();
- EVP_DigestInit(&ctx, hash);
+ ctx = EVP_MD_CTX_create();
+ EVP_DigestInit(ctx, hash);
if (sftp_interop_supports_feature(SFTP_SSH2_FEAT_CIPHER_USE_K)) {
- EVP_DigestUpdate(&ctx, k, klen);
+ EVP_DigestUpdate(ctx, k, klen);
}
- EVP_DigestUpdate(&ctx, h, hlen);
- EVP_DigestUpdate(&ctx, iv, len);
- EVP_DigestFinal(&ctx, iv + len, &len);
+ EVP_DigestUpdate(ctx, h, hlen);
+ EVP_DigestUpdate(ctx, iv, len);
+ EVP_DigestFinal(ctx, iv + len, &len);
+ EVP_MD_CTX_destroy(ctx);
iv_len += len;
}
@@ -228,8 +229,7 @@ static int set_cipher_iv(struct sftp_cipher *cipher, const EVP_MD *hash,
static int set_cipher_key(struct sftp_cipher *cipher, const EVP_MD *hash,
const unsigned char *k, uint32_t klen, const char *h, uint32_t hlen,
char *letter, const unsigned char *id, uint32_t id_len) {
-
- EVP_MD_CTX ctx;
+ EVP_MD_CTX *ctx;
unsigned char *key = NULL;
size_t key_sz = 0;
uint32_t key_len = 0;
@@ -258,12 +258,14 @@ static int set_cipher_key(struct sftp_cipher *cipher, const EVP_MD *hash,
_exit(1);
}
- EVP_DigestInit(&ctx, hash);
- EVP_DigestUpdate(&ctx, k, klen);
- EVP_DigestUpdate(&ctx, h, hlen);
- EVP_DigestUpdate(&ctx, letter, sizeof(char));
- EVP_DigestUpdate(&ctx, (char *) id, id_len);
- EVP_DigestFinal(&ctx, key, &key_len);
+ ctx = EVP_MD_CTX_create();
+ EVP_DigestInit(ctx, hash);
+ EVP_DigestUpdate(ctx, k, klen);
+ EVP_DigestUpdate(ctx, h, hlen);
+ EVP_DigestUpdate(ctx, letter, sizeof(char));
+ EVP_DigestUpdate(ctx, (char *) id, id_len);
+ EVP_DigestFinal(ctx, key, &key_len);
+ EVP_MD_CTX_destroy(ctx);
/* If we need more, keep hashing, as per RFC, until we have enough
* material.
@@ -273,11 +275,13 @@ static int set_cipher_key(struct sftp_cipher *cipher, const EVP_MD *hash,
pr_signals_handle();
- EVP_DigestInit(&ctx, hash);
- EVP_DigestUpdate(&ctx, k, klen);
- EVP_DigestUpdate(&ctx, h, hlen);
- EVP_DigestUpdate(&ctx, key, len);
- EVP_DigestFinal(&ctx, key + len, &len);
+ ctx = EVP_MD_CTX_create();
+ EVP_DigestInit(ctx, hash);
+ EVP_DigestUpdate(ctx, k, klen);
+ EVP_DigestUpdate(ctx, h, hlen);
+ EVP_DigestUpdate(ctx, key, len);
+ EVP_DigestFinal(ctx, key + len, &len);
+ EVP_MD_CTX_destroy(ctx);
key_len += len;
}
@@ -381,7 +385,7 @@ int sftp_cipher_set_read_key(pool *p, const EVP_MD *hash, const BIGNUM *k,
switch_read_cipher();
cipher = &(read_ciphers[read_cipher_idx]);
- cipher_ctx = &(read_ctxs[read_cipher_idx]);
+ cipher_ctx = read_ctxs[read_cipher_idx];
/* XXX EVP_CIPHER_CTX_init() first appeared in OpenSSL 0.9.7. What to do
* for older OpenSSL installations?
@@ -460,7 +464,7 @@ int sftp_cipher_read_data(pool *p, unsigned char *data, uint32_t data_len,
size_t cipher_blocksz;
cipher = &(read_ciphers[read_cipher_idx]);
- cipher_ctx = &(read_ctxs[read_cipher_idx]);
+ cipher_ctx = read_ctxs[read_cipher_idx];
cipher_blocksz = cipher_blockszs[read_cipher_idx];
if (cipher->key) {
@@ -544,7 +548,7 @@ int sftp_cipher_set_write_key(pool *p, const EVP_MD *hash, const BIGNUM *k,
switch_write_cipher();
cipher = &(write_ciphers[write_cipher_idx]);
- cipher_ctx = &(write_ctxs[write_cipher_idx]);
+ cipher_ctx = write_ctxs[write_cipher_idx];
/* XXX EVP_CIPHER_CTX_init() first appeared in OpenSSL 0.9.7. What to do
* for older OpenSSL installations?
@@ -621,7 +625,7 @@ int sftp_cipher_write_data(struct ssh2_packet *pkt, unsigned char *buf,
EVP_CIPHER_CTX *cipher_ctx;
cipher = &(write_ciphers[write_cipher_idx]);
- cipher_ctx = &(write_ctxs[write_cipher_idx]);
+ cipher_ctx = write_ctxs[write_cipher_idx];
if (cipher->key) {
int res;
@@ -671,3 +675,38 @@ int sftp_cipher_write_data(struct ssh2_packet *pkt, unsigned char *buf,
*buflen = 0;
return 0;
}
+
+#if OPENSSL_VERSION_NUMBER < 0x1000000fL
+/* In older versions of OpenSSL, there was not a way to dynamically allocate
+ * an EVP_CIPHER_CTX object. Thus we have these static objects for those
+ * older versions.
+ */
+static EVP_CIPHER_CTX read_ctx1, read_ctx2;
+static EVP_CIPHER_CTX write_ctx1, write_ctx2;
+#endif /* prior to OpenSSL-1.0.0 */
+
+int sftp_cipher_init(void) {
+#if OPENSSL_VERSION_NUMBER < 0x1000000fL
+ read_ctxs[0] = &read_ctx1;
+ read_ctxs[1] = &read_ctx2;
+ write_ctxs[0] = &write_ctx1;
+ write_ctxs[1] = &write_ctx2;
+#else
+ read_ctxs[0] = EVP_CIPHER_CTX_new();
+ read_ctxs[1] = EVP_CIPHER_CTX_new();
+ write_ctxs[0] = EVP_CIPHER_CTX_new();
+ write_ctxs[1] = EVP_CIPHER_CTX_new();
+#endif /* OpenSSL-1.0.0 and later */
+ return 0;
+}
+
+int sftp_cipher_free(void) {
+#if OPENSSL_VERSION_NUMBER >= 0x1000000fL
+ EVP_CIPHER_CTX_free(read_ctxs[0]);
+ EVP_CIPHER_CTX_free(read_ctxs[1]);
+ EVP_CIPHER_CTX_free(write_ctxs[0]);
+ EVP_CIPHER_CTX_free(write_ctxs[1]);
+#endif /* OpenSSL-1.0.0 and later */
+ return 0;
+}
+
diff --git a/contrib/mod_sftp/cipher.h b/contrib/mod_sftp/cipher.h
index 4067386..b6421e0 100644
--- a/contrib/mod_sftp/cipher.h
+++ b/contrib/mod_sftp/cipher.h
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp cipher mgmt
- * Copyright (c) 2008-2013 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -20,8 +20,6 @@
* give permission to link this program with OpenSSL, and distribute the
* resulting executable, without including the source code for OpenSSL in the
* source distribution.
- *
- * $Id: cipher.h,v 1.4 2013-01-29 07:29:22 castaglia Exp $
*/
#include "mod_sftp.h"
@@ -29,6 +27,9 @@
#ifndef MOD_SFTP_CIPHER_H
#define MOD_SFTP_CIPHER_H
+int sftp_cipher_init(void);
+int sftp_cipher_free(void);
+
/* Returns the cipher block size, or 8, whichever is larger. This value is
* used when reading in the first bytes of a packet in order to determine
* the packet length. See RFC4253, Section 6, "Binary Packet Protocol".
diff --git a/contrib/mod_sftp/compress.c b/contrib/mod_sftp/compress.c
index 572a0bc..327f13c 100644
--- a/contrib/mod_sftp/compress.c
+++ b/contrib/mod_sftp/compress.c
@@ -168,7 +168,7 @@ int sftp_compress_set_read_algo(const char *algo) {
idx = get_next_read_index();
}
- if (strncmp(algo, "zlib at openssh.com", 9) == 0) {
+ if (strncmp(algo, "zlib at openssh.com", 17) == 0) {
read_compresses[idx].use_zlib = SFTP_COMPRESS_FL_AUTHENTICATED;
return 0;
}
@@ -361,7 +361,7 @@ int sftp_compress_set_write_algo(const char *algo) {
idx = get_next_write_index();
}
- if (strncmp(algo, "zlib at openssh.com", 9) == 0) {
+ if (strncmp(algo, "zlib at openssh.com", 17) == 0) {
write_compresses[idx].use_zlib = SFTP_COMPRESS_FL_AUTHENTICATED;
return 0;
}
diff --git a/contrib/mod_sftp/crypto.c b/contrib/mod_sftp/crypto.c
index 0c8ea31..cdb435c 100644
--- a/contrib/mod_sftp/crypto.c
+++ b/contrib/mod_sftp/crypto.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp OpenSSL interface
- * Copyright (c) 2008-2014 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -20,8 +20,6 @@
* give permission to link this program with OpenSSL, and distribute the
* resulting executable, without including the source code for OpenSSL in the
* source distribution.
- *
- * $Id: crypto.c,v 1.33 2014-01-28 17:26:17 castaglia Exp $
*/
#include "mod_sftp.h"
@@ -298,6 +296,20 @@ static int do_bf_ctr(EVP_CIPHER_CTX *ctx, unsigned char *dst,
}
static const EVP_CIPHER *get_bf_ctr_cipher(void) {
+ EVP_CIPHER *cipher;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ /* XXX TODO: At some point, we also need to call EVP_CIPHER_meth_free() on
+ * this, to avoid a resource leak.
+ */
+ cipher = EVP_CIPHER_meth_new(NID_bf_cbc, BF_BLOCK, 32);
+ EVP_CIPHER_meth_set_iv_length(cipher, BF_BLOCK);
+ EVP_CIPHER_meth_set_init(cipher, init_bf_ctr);
+ EVP_CIPHER_meth_set_cleanup(cipher, cleanup_bf_ctr);
+ EVP_CIPHER_meth_set_do_cipher(cipher, do_bf_ctr);
+ EVP_CIPHER_meth_set_flags(cipher, EVP_CIPH_CBC_MODE|EVP_CIPH_VARIABLE_LENGTH|EVP_CIPH_ALWAYS_CALL_INIT|EVP_CIPH_CUSTOM_IV);
+
+#else
static EVP_CIPHER bf_ctr_cipher;
memset(&bf_ctr_cipher, 0, sizeof(EVP_CIPHER));
@@ -312,7 +324,10 @@ static const EVP_CIPHER *get_bf_ctr_cipher(void) {
bf_ctr_cipher.flags = EVP_CIPH_CBC_MODE|EVP_CIPH_VARIABLE_LENGTH|EVP_CIPH_ALWAYS_CALL_INIT|EVP_CIPH_CUSTOM_IV;
- return &bf_ctr_cipher;
+ cipher = &bf_ctr_cipher;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ return cipher;
}
#if OPENSSL_VERSION_NUMBER > 0x000907000L
@@ -447,6 +462,28 @@ static int do_des3_ctr(EVP_CIPHER_CTX *ctx, unsigned char *dst,
}
static const EVP_CIPHER *get_des3_ctr_cipher(void) {
+ EVP_CIPHER *cipher;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ unsigned long flags;
+
+ /* XXX TODO: At some point, we also need to call EVP_CIPHER_meth_free() on
+ * this, to avoid a resource leak.
+ */
+ cipher = EVP_CIPHER_meth_new(NID_des_ede3_ecb, 8, 24);
+ EVP_CIPHER_meth_set_iv_length(cipher, 8);
+ EVP_CIPHER_meth_set_init(cipher, init_des3_ctr);
+ EVP_CIPHER_meth_set_cleanup(cipher, cleanup_des3_ctr);
+ EVP_CIPHER_meth_set_do_cipher(cipher, do_des3_ctr);
+
+ flags = EVP_CIPH_CBC_MODE|EVP_CIPH_VARIABLE_LENGTH|EVP_CIPH_ALWAYS_CALL_INIT|EVP_CIPH_CUSTOM_IV;
+#ifdef OPENSSL_FIPS
+ flags |= EVP_CIPH_FLAG_FIPS;
+#endif /* OPENSSL_FIPS */
+
+ EVP_CIPHER_meth_set_flags(cipher, flags);
+
+#else
static EVP_CIPHER des3_ctr_cipher;
memset(&des3_ctr_cipher, 0, sizeof(EVP_CIPHER));
@@ -464,7 +501,10 @@ static const EVP_CIPHER *get_des3_ctr_cipher(void) {
des3_ctr_cipher.flags |= EVP_CIPH_FLAG_FIPS;
#endif /* OPENSSL_FIPS */
- return &des3_ctr_cipher;
+ cipher = &des3_ctr_cipher;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ return cipher;
}
/* AES CTR mode implementation */
@@ -530,7 +570,8 @@ static int cleanup_aes_ctr(EVP_CIPHER_CTX *ctx) {
static int do_aes_ctr(EVP_CIPHER_CTX *ctx, unsigned char *dst,
const unsigned char *src, size_t len) {
struct aes_ctr_ex *ace;
-# if OPENSSL_VERSION_NUMBER <= 0x0090704fL
+# if OPENSSL_VERSION_NUMBER <= 0x0090704fL || \
+ OPENSSL_VERSION_NUMBER >= 0x10100000L
unsigned int n;
unsigned char buf[AES_BLOCK_SIZE];
# endif
@@ -542,7 +583,8 @@ static int do_aes_ctr(EVP_CIPHER_CTX *ctx, unsigned char *dst,
if (ace == NULL)
return 0;
-# if OPENSSL_VERSION_NUMBER <= 0x0090704fL
+# if OPENSSL_VERSION_NUMBER <= 0x0090704fL || \
+ OPENSSL_VERSION_NUMBER >= 0x10100000L
/* In OpenSSL-0.9.7d and earlier, the AES CTR code did not properly handle
* the IV as big-endian; this would cause the dreaded "Incorrect MAC
* received on packet" error when using clients e.g. PuTTy. To see
@@ -580,29 +622,29 @@ static int do_aes_ctr(EVP_CIPHER_CTX *ctx, unsigned char *dst,
return 1;
}
-static const EVP_CIPHER *get_aes_ctr_cipher(int key_len) {
- static EVP_CIPHER aes_ctr_cipher;
-
- memset(&aes_ctr_cipher, 0, sizeof(EVP_CIPHER));
+static int get_aes_ctr_cipher_nid(int key_len) {
+ int nid;
#ifdef OPENSSL_FIPS
/* Set the NID depending on the key len. */
switch (key_len) {
case 16:
- aes_ctr_cipher.nid = NID_aes_128_cbc;
+ nid = NID_aes_128_cbc;
break;
case 24:
- aes_ctr_cipher.nid = NID_aes_192_cbc;
+ nid = NID_aes_192_cbc;
break;
case 32:
- aes_ctr_cipher.nid = NID_aes_256_cbc;
+ nid = NID_aes_256_cbc;
break;
default:
- aes_ctr_cipher.nid = NID_undef;
+ nid = NID_undef;
+ break;
}
+
#else
/* Setting this nid member to something other than NID_undef causes
* interesting problems on an OpenSolaris system, using the provided
@@ -630,9 +672,41 @@ static const EVP_CIPHER *get_aes_ctr_cipher(int key_len) {
* debug1: Calling cleanup 0x807cc14(0x0)
* Couldn't read packet: Error 0
*/
- aes_ctr_cipher.nid = NID_undef;
+ nid = NID_undef;
#endif /* OPENSSL_FIPS */
+ return nid;
+}
+
+static const EVP_CIPHER *get_aes_ctr_cipher(int key_len) {
+ EVP_CIPHER *cipher;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ unsigned long flags;
+
+ /* XXX TODO: At some point, we also need to call EVP_CIPHER_meth_free() on
+ * this, to avoid a resource leak.
+ */
+ cipher = EVP_CIPHER_meth_new(get_aes_ctr_cipher_nid(key_len), AES_BLOCK_SIZE,
+ key_len);
+ EVP_CIPHER_meth_set_iv_length(cipher, AES_BLOCK_SIZE);
+ EVP_CIPHER_meth_set_init(cipher, init_aes_ctr);
+ EVP_CIPHER_meth_set_cleanup(cipher, cleanup_aes_ctr);
+ EVP_CIPHER_meth_set_do_cipher(cipher, do_aes_ctr);
+
+ flags = EVP_CIPH_CBC_MODE|EVP_CIPH_VARIABLE_LENGTH|EVP_CIPH_ALWAYS_CALL_INIT|EVP_CIPH_CUSTOM_IV;
+#ifdef OPENSSL_FIPS
+ flags |= EVP_CIPH_FLAG_FIPS;
+#endif /* OPENSSL_FIPS */
+
+ EVP_CIPHER_meth_set_flags(cipher, flags);
+
+#else
+ static EVP_CIPHER aes_ctr_cipher;
+
+ memset(&aes_ctr_cipher, 0, sizeof(EVP_CIPHER));
+
+ aes_ctr_cipher.nid = get_aes_ctr_cipher_nid(key_len);
aes_ctr_cipher.block_size = AES_BLOCK_SIZE;
aes_ctr_cipher.iv_len = AES_BLOCK_SIZE;
aes_ctr_cipher.key_len = key_len;
@@ -641,51 +715,93 @@ static const EVP_CIPHER *get_aes_ctr_cipher(int key_len) {
aes_ctr_cipher.do_cipher = do_aes_ctr;
aes_ctr_cipher.flags = EVP_CIPH_CBC_MODE|EVP_CIPH_VARIABLE_LENGTH|EVP_CIPH_ALWAYS_CALL_INIT|EVP_CIPH_CUSTOM_IV;
-#ifdef OPENSSL_FIPS
+# ifdef OPENSSL_FIPS
aes_ctr_cipher.flags |= EVP_CIPH_FLAG_FIPS;
-#endif /* OPENSSL_FIPS */
+# endif /* OPENSSL_FIPS */
- return &aes_ctr_cipher;
+ cipher = &aes_ctr_cipher;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ return cipher;
}
static int update_umac(EVP_MD_CTX *ctx, const void *data, size_t len) {
int res;
+ void *md_data;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ md_data = EVP_MD_CTX_md_data(ctx);
+#else
+ md_data = ctx->md_data;
+#endif /* prior to OpenSSL-1.1.0 */
- if (ctx->md_data == NULL) {
+ if (md_data == NULL) {
struct umac_ctx *umac;
+ void **ptr;
umac = umac_new((unsigned char *) data);
if (umac == NULL) {
return 0;
}
- ctx->md_data = umac;
+ ptr = &md_data;
+ *ptr = umac;
return 1;
}
- res = umac_update(ctx->md_data, (unsigned char *) data, (long) len);
+ res = umac_update(md_data, (unsigned char *) data, (long) len);
return res;
}
static int final_umac(EVP_MD_CTX *ctx, unsigned char *md) {
unsigned char nonce[8];
int res;
+ void *md_data;
- res = umac_final(ctx->md_data, md, nonce);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ md_data = EVP_MD_CTX_md_data(ctx);
+#else
+ md_data = ctx->md_data;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ res = umac_final(md_data, md, nonce);
return res;
}
static int delete_umac(EVP_MD_CTX *ctx) {
struct umac_ctx *umac;
+ void *md_data, **ptr;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ md_data = EVP_MD_CTX_md_data(ctx);
+#else
+ md_data = ctx->md_data;
+#endif /* prior to OpenSSL-1.1.0 */
- umac = ctx->md_data;
+ umac = md_data;
umac_delete(umac);
- ctx->md_data = NULL;
+
+ ptr = &md_data;
+ *ptr = NULL;
return 1;
}
static const EVP_MD *get_umac_digest(void) {
+ EVP_MD *md;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ /* XXX TODO: At some point, we also need to call EVP_MD_meth_free() on
+ * this, to avoid a resource leak.
+ */
+ md = EVP_MD_meth_new(NID_undef, NID_undef);
+ EVP_MD_meth_set_input_blocksize(md, 32);
+ EVP_MD_meth_set_result_size(md, 8);
+ EVP_MD_meth_set_flags(md, 0UL);
+ EVP_MD_meth_set_update(md, update_umac);
+ EVP_MD_meth_set_final(md, final_umac);
+ EVP_MD_meth_set_cleanup(md, delete_umac);
+#else
static EVP_MD umac_digest;
memset(&umac_digest, 0, sizeof(EVP_MD));
@@ -699,7 +815,10 @@ static const EVP_MD *get_umac_digest(void) {
umac_digest.cleanup = delete_umac;
umac_digest.block_size = 32;
- return &umac_digest;
+ md = &umac_digest;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ return md;
}
#endif /* OpenSSL older than 0.9.7 */
diff --git a/contrib/mod_sftp/fxp.c b/contrib/mod_sftp/fxp.c
index 82080bb..b189412 100644
--- a/contrib/mod_sftp/fxp.c
+++ b/contrib/mod_sftp/fxp.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp sftp
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -2616,7 +2616,7 @@ static struct fxp_handle *fxp_handle_create(pool *p) {
*/
pr_signals_handle();
- RAND_pseudo_bytes(data, data_len);
+ RAND_bytes(data, data_len);
/* Encode the data as hex to create the handle ID. */
for (i = 0; i < data_len; i++) {
@@ -9034,7 +9034,7 @@ static void fxp_trace_v6_realpath_flags(pool *p, unsigned char flags) {
}
static int fxp_handle_realpath(struct fxp_packet *fxp) {
- unsigned char *buf, *ptr, realpath_flags = 0;
+ unsigned char *buf, *ptr, realpath_flags = SSH2_FXRP_NO_CHECK;
char *path;
uint32_t buflen, bufsz;
struct stat st;
@@ -9074,7 +9074,6 @@ static int fxp_handle_realpath(struct fxp_packet *fxp) {
*
* for the semantics and defaults of these crazy flags.
*/
- realpath_flags = SSH2_FXRP_NO_CHECK;
if (fxp->payload_sz >= sizeof(char)) {
char *composite_path;
@@ -11601,6 +11600,12 @@ int sftp_fxp_handle_packet(pool *p, void *ssh2, uint32_t channel_id,
pr_response_set_pool(fxp->pool);
+ /* Make sure to clear the response lists of any cruft from previous
+ * requests.
+ */
+ pr_response_clear(&resp_list);
+ pr_response_clear(&resp_err_list);
+
switch (fxp->request_type) {
case SFTP_SSH2_FXP_INIT:
/* If we already know the version, then the client has sent
@@ -11909,6 +11914,11 @@ int sftp_fxp_close_session(uint32_t channel_id) {
"aborting %d unclosed file %s", count,
count != 1 ? "handles" : "handle");
+ /* Make sure that any abort processing has a valid response pool to
+ * work with.
+ */
+ pr_response_set_pool(sess->pool);
+
res = pr_table_do(sess->handle_tab, fxp_handle_abort, callback_data,
PR_TABLE_DO_FL_ALL);
if (res < 0) {
diff --git a/contrib/mod_sftp/kbdint.c b/contrib/mod_sftp/kbdint.c
index 8ade59a..2a925c1 100644
--- a/contrib/mod_sftp/kbdint.c
+++ b/contrib/mod_sftp/kbdint.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp keyboard-interactive driver mgmt
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -31,6 +31,8 @@
#define SFTP_KBDINT_MAX_RESPONSES 500
+extern pr_response_t *resp_list, *resp_err_list;
+
struct kbdint_driver {
struct kbdint_driver *next, *prev;
@@ -278,6 +280,10 @@ int sftp_kbdint_recv_response(pool *p, uint32_t expected_count,
return res;
}
+ pr_response_clear(&resp_list);
+ pr_response_clear(&resp_err_list);
+ pr_response_set_pool(pkt->pool);
+
mesg_type = sftp_ssh2_packet_get_mesg_type(pkt);
if (mesg_type != SFTP_SSH2_MSG_USER_AUTH_INFO_RESP) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
diff --git a/contrib/mod_sftp/kex.c b/contrib/mod_sftp/kex.c
index 60b8b01..79d4ac8 100644
--- a/contrib/mod_sftp/kex.c
+++ b/contrib/mod_sftp/kex.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp key exchange (kex)
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -37,6 +37,7 @@
#include "interop.h"
#include "tap.h"
+extern pr_response_t *resp_list, *resp_err_list;
extern module sftp_module;
/* For managing the kexinit process */
@@ -185,7 +186,11 @@ static int kex_rekey_timer_cb(CALLBACK_FRAME) {
static const unsigned char *calculate_h(struct sftp_kex *kex,
const unsigned char *hostkey_data, size_t hostkey_datalen, const BIGNUM *k,
uint32_t *hlen) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
+ const BIGNUM *dh_pub_key = NULL;
unsigned char *buf, *ptr;
uint32_t buflen, bufsz;
@@ -219,55 +224,79 @@ static const unsigned char *calculate_h(struct sftp_kex *kex,
sftp_msg_write_mpint(&buf, &buflen, kex->e);
/* Server's key */
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->pub_key);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_key(kex->dh, &dh_pub_key, NULL);
+#else
+ dh_pub_key = kex->dh->pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dh_pub_key);
/* Shared secret */
sftp_msg_write_mpint(&buf, &buflen, k);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* OpenSSL-1.1.0 and later */
+
/* In OpenSSL 0.9.6, many of the EVP_Digest* functions returned void, not
* int. Without these ugly OpenSSL version preprocessor checks, the
* compiler will error out with "void value not ignored as it ought to be".
*/
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&ctx, kex->hash) != 1) {
+ if (EVP_DigestInit(pctx, kex->hash) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestInit(&ctx, kex->hash);
+ EVP_DigestInit(pctx, kex->hash);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen)) != 1) {
+ if (EVP_DigestUpdate(pctx, ptr, (bufsz - buflen)) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen));
+ EVP_DigestUpdate(pctx, ptr, (bufsz - buflen));
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&ctx, kex_digest_buf, hlen) != 1) {
+ if (EVP_DigestFinal(pctx, kex_digest_buf, hlen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finalizing message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestFinal(&ctx, kex_digest_buf, hlen);
+ EVP_DigestFinal(pctx, kex_digest_buf, hlen);
#endif
+#if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
+
BN_clear_free(kex->e);
kex->e = NULL;
@@ -278,7 +307,11 @@ static const unsigned char *calculate_h(struct sftp_kex *kex,
static const unsigned char *calculate_gex_h(struct sftp_kex *kex,
const unsigned char *hostkey_data, size_t hostkey_datalen, const BIGNUM *k,
uint32_t min, uint32_t pref, uint32_t max, uint32_t *hlen) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
+ const BIGNUM *dh_p = NULL, *dh_g = NULL, *dh_pub_key = NULL;
unsigned char *buf, *ptr;
uint32_t buflen, bufsz;
@@ -320,62 +353,92 @@ static const unsigned char *calculate_gex_h(struct sftp_kex *kex,
sftp_msg_write_int(&buf, &buflen, max);
}
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->p);
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->g);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_pqg(kex->dh, &dh_p, NULL, &dh_g);
+#else
+ dh_p = kex->dh->p;
+ dh_g = kex->dh->g;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dh_p);
+ sftp_msg_write_mpint(&buf, &buflen, dh_g);
/* Client's key */
sftp_msg_write_mpint(&buf, &buflen, kex->e);
/* Server's key */
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->pub_key);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_key(kex->dh, &dh_pub_key, NULL);
+#else
+ dh_pub_key = kex->dh->pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dh_pub_key);
/* Shared secret */
sftp_msg_write_mpint(&buf, &buflen, k);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* OpenSSL-1.1.0 and later */
+
/* In OpenSSL 0.9.6, many of the EVP_Digest* functions returned void, not
* int. Without these ugly OpenSSL version preprocessor checks, the
* compiler will error out with "void value not ignored as it ought to be".
*/
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&ctx, kex->hash) != 1) {
+ if (EVP_DigestInit(pctx, kex->hash) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestInit(&ctx, kex->hash);
+ EVP_DigestInit(pctx, kex->hash);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen)) != 1) {
+ if (EVP_DigestUpdate(pctx, ptr, (bufsz - buflen)) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen));
+ EVP_DigestUpdate(pctx, ptr, (bufsz - buflen));
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&ctx, kex_digest_buf, hlen) != 1) {
+ if (EVP_DigestFinal(pctx, kex_digest_buf, hlen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finalizing message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestFinal(&ctx, kex_digest_buf, hlen);
+ EVP_DigestFinal(pctx, kex_digest_buf, hlen);
#endif
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
+
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
@@ -386,7 +449,10 @@ static const unsigned char *calculate_gex_h(struct sftp_kex *kex,
static const unsigned char *calculate_kexrsa_h(struct sftp_kex *kex,
const unsigned char *hostkey_data, size_t hostkey_datalen, const BIGNUM *k,
unsigned char *rsa_key, uint32_t rsa_keylen, uint32_t *hlen) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
unsigned char *buf, *ptr;
uint32_t buflen, bufsz;
@@ -426,44 +492,63 @@ static const unsigned char *calculate_kexrsa_h(struct sftp_kex *kex,
/* Shared secret. */
sftp_msg_write_mpint(&buf, &buflen, k);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* OpenSSL-1.1.0 and later */
+
/* In OpenSSL 0.9.6, many of the EVP_Digest* functions returned void, not
* int. Without these ugly OpenSSL version preprocessor checks, the
* compiler will error out with "void value not ignored as it ought to be".
*/
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&ctx, kex->hash) != 1) {
+ if (EVP_DigestInit(pctx, kex->hash) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing message digest: %s", sftp_crypto_get_errors());
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestInit(&ctx, kex->hash);
+ EVP_DigestInit(pctx, kex->hash);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen)) != 1) {
+ if (EVP_DigestUpdate(pctx, ptr, (bufsz - buflen)) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest: %s", sftp_crypto_get_errors());
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen));
+ EVP_DigestUpdate(pctx, ptr, (bufsz - buflen));
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&ctx, kex_digest_buf, hlen) != 1) {
+ if (EVP_DigestFinal(pctx, kex_digest_buf, hlen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finalizing message digest: %s", sftp_crypto_get_errors());
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestFinal(&ctx, kex_digest_buf, hlen);
+ EVP_DigestFinal(pctx, kex_digest_buf, hlen);
#endif
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
+
pr_memscrub(ptr, bufsz);
return kex_digest_buf;
}
@@ -472,7 +557,10 @@ static const unsigned char *calculate_kexrsa_h(struct sftp_kex *kex,
static const unsigned char *calculate_ecdh_h(struct sftp_kex *kex,
const unsigned char *hostkey_data, size_t hostkey_datalen, const BIGNUM *k,
uint32_t *hlen) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
unsigned char *buf, *ptr;
uint32_t buflen, bufsz;
@@ -515,50 +603,69 @@ static const unsigned char *calculate_ecdh_h(struct sftp_kex *kex,
/* Shared secret */
sftp_msg_write_mpint(&buf, &buflen, k);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* OpenSSL-1.1.0 and later */
+
/* In OpenSSL 0.9.6, many of the EVP_Digest* functions returned void, not
* int. Without these ugly OpenSSL version preprocessor checks, the
* compiler will error out with "void value not ignored as it ought to be".
*/
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&ctx, kex->hash) != 1) {
+ if (EVP_DigestInit(pctx, kex->hash) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestInit(&ctx, kex->hash);
+ EVP_DigestInit(pctx, kex->hash);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen)) != 1) {
+ if (EVP_DigestUpdate(pctx, ptr, (bufsz - buflen)) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestUpdate(&ctx, ptr, (bufsz - buflen));
+ EVP_DigestUpdate(pctx, ptr, (bufsz - buflen));
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&ctx, kex_digest_buf, hlen) != 1) {
+ if (EVP_DigestFinal(pctx, kex_digest_buf, hlen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finalizing message digest: %s", sftp_crypto_get_errors());
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return NULL;
}
#else
- EVP_DigestFinal(&ctx, kex_digest_buf, hlen);
+ EVP_DigestFinal(pctx, kex_digest_buf, hlen);
#endif
+# if OPENSSL_VERSION_NUMBER >= 0x10100000LL
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
+
BN_clear_free(kex->e);
kex->e = NULL;
pr_memscrub(ptr, bufsz);
@@ -571,14 +678,17 @@ static const unsigned char *calculate_ecdh_h(struct sftp_kex *kex,
static int have_good_dh(DH *dh, BIGNUM *pub_key) {
register unsigned int i;
unsigned int nbits = 0;
+ const BIGNUM *dh_p = NULL;
BIGNUM *tmp;
- if (pub_key->neg) {
+#if OPENSSL_VERSION_NUMBER >= 0x0090801fL
+ if (BN_is_negative(pub_key)) {
pr_trace_msg(trace_channel, 10,
"DH public keys cannot have negative numbers");
errno = EINVAL;
return -1;
}
+#endif /* OpenSSL-0.9.8a or later */
if (BN_cmp(pub_key, BN_value_one()) != 1) {
pr_trace_msg(trace_channel, 10, "bad DH public key exponent (<= 1)");
@@ -586,8 +696,14 @@ static int have_good_dh(DH *dh, BIGNUM *pub_key) {
return -1;
}
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_pqg(dh, &dh_p, NULL, NULL);
+#else
+ dh_p = dh->p;
+#endif /* prior to OpenSSL-1.1.0 */
+
tmp = BN_new();
- if (!BN_sub(tmp, dh->p, BN_value_one()) ||
+ if (!BN_sub(tmp, dh_p, BN_value_one()) ||
BN_cmp(pub_key, tmp) != -1) {
BN_clear_free(tmp);
pr_trace_msg(trace_channel, 10, "bad DH public key (>= p-1)");
@@ -714,6 +830,7 @@ static int create_dh(struct sftp_kex *kex, int type) {
}
if (kex->dh) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
if (kex->dh->p) {
BN_clear_free(kex->dh->p);
kex->dh->p = NULL;
@@ -733,6 +850,7 @@ static int create_dh(struct sftp_kex *kex, int type) {
BN_clear_free(kex->dh->pub_key);
kex->dh->pub_key = NULL;
}
+#endif /* prior to OpenSSL-1.1.0 */
DH_free(kex->dh);
kex->dh = NULL;
@@ -742,6 +860,8 @@ static int create_dh(struct sftp_kex *kex, int type) {
/* We have 10 attempts to make a DH key which passes muster. */
while (attempts <= 10) {
+ BIGNUM *dh_p, *dh_g, *dh_pub_key = NULL, *dh_priv_key = NULL;
+
pr_signals_handle();
attempts++;
@@ -755,43 +875,64 @@ static int create_dh(struct sftp_kex *kex, int type) {
return -1;
}
- dh->p = BN_new();
- dh->g = BN_new();
- dh->priv_key = BN_new();
+ dh_p = BN_new();
if (type == SFTP_DH_GROUP1_SHA1) {
- if (BN_hex2bn(&dh->p, dh_group1_str) == 0) {
+ if (BN_hex2bn(&dh_p, dh_group1_str) == 0) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error setting DH (group1) P: %s", sftp_crypto_get_errors());
+ BN_clear_free(dh_p);
DH_free(dh);
return -1;
}
} else if (type == SFTP_DH_GROUP14_SHA1) {
- if (BN_hex2bn(&dh->p, dh_group14_str) == 0) {
+ if (BN_hex2bn(&dh_p, dh_group14_str) == 0) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error setting DH (group14) P: %s", sftp_crypto_get_errors());
+ BN_clear_free(dh_p);
DH_free(dh);
return -1;
}
}
- if (BN_hex2bn(&dh->g, "2") == 0) {
+ dh_g = BN_new();
+ if (BN_hex2bn(&dh_g, "2") == 0) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error setting DH G: %s", sftp_crypto_get_errors());
+ BN_clear_free(dh_p);
+ BN_clear_free(dh_g);
DH_free(dh);
return -1;
}
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_set0_pqg(dh, dh_p, NULL, dh_g);
+#else
+ dh->p = dh_p;
+ dh->g = dh_g;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ dh_priv_key = BN_new();
+
/* Generate a random private exponent of the desired size, in bits. */
- if (!BN_rand(dh->priv_key, dh_nbits, 0, 0)) {
+ if (!BN_rand(dh_priv_key, dh_nbits, 0, 0)) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error generating DH random key (%d bits): %s", dh_nbits,
sftp_crypto_get_errors());
+ BN_clear_free(dh_priv_key);
DH_free(dh);
return -1;
}
+ dh_pub_key = BN_new();
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_set0_key(dh, dh_pub_key, dh_priv_key);
+#else
+ dh->pub_key = dh_pub_key;
+ dh->priv_key = dh_priv_key;
+#endif /* prior to OpenSSL-1.1.0 */
+
pr_trace_msg(trace_channel, 12, "generating DH key");
if (DH_generate_key(dh) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
@@ -800,7 +941,13 @@ static int create_dh(struct sftp_kex *kex, int type) {
return -1;
}
- if (have_good_dh(dh, dh->pub_key) < 0) {
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_key(dh, &dh_pub_key, NULL);
+#else
+ dh_pub_key = dh->pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ if (have_good_dh(dh, dh_pub_key) < 0) {
DH_free(dh);
continue;
}
@@ -824,6 +971,7 @@ static int prepare_dh(struct sftp_kex *kex, int type) {
}
if (kex->dh) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
if (kex->dh->p) {
BN_clear_free(kex->dh->p);
kex->dh->p = NULL;
@@ -843,6 +991,7 @@ static int prepare_dh(struct sftp_kex *kex, int type) {
BN_clear_free(kex->dh->pub_key);
kex->dh->pub_key = NULL;
}
+#endif /* prior to OpenSSL-1.1.0 */
DH_free(kex->dh);
kex->dh = NULL;
@@ -873,6 +1022,7 @@ static int prepare_dh(struct sftp_kex *kex, int type) {
static int finish_dh(struct sftp_kex *kex) {
unsigned int attempts = 0;
int dh_nbits;
+ BIGNUM *dh_pub_key, *dh_priv_key;
dh_nbits = get_dh_nbits(kex);
@@ -884,16 +1034,26 @@ static int finish_dh(struct sftp_kex *kex) {
pr_trace_msg(trace_channel, 9, "attempt #%u to create a good DH key",
attempts);
- kex->dh->priv_key = BN_new();
+ dh_priv_key = BN_new();
/* Generate a random private exponent of the desired size, in bits. */
- if (!BN_rand(kex->dh->priv_key, dh_nbits, 0, 0)) {
+ if (!BN_rand(dh_priv_key, dh_nbits, 0, 0)) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error generating DH random key (%d bits): %s", dh_nbits,
sftp_crypto_get_errors());
+ BN_clear_free(dh_priv_key);
return -1;
}
+ dh_pub_key = BN_new();
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_set0_key(kex->dh, dh_pub_key, dh_priv_key);
+#else
+ kex->dh->pub_key = dh_pub_key;
+ kex->dh->priv_key = dh_priv_key;
+#endif /* prior to OpenSSL-1.1.0 */
+
pr_trace_msg(trace_channel, 12, "generating DH key");
if (DH_generate_key(kex->dh) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
@@ -902,15 +1062,32 @@ static int finish_dh(struct sftp_kex *kex) {
}
if (have_good_dh(kex->dh, kex->e) < 0) {
- if (kex->dh->priv_key) {
- BN_clear_free(kex->dh->priv_key);
- kex->dh->priv_key = NULL;
- }
+ dh_pub_key = NULL;
+ dh_priv_key = NULL;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_key(kex->dh, &dh_pub_key, &dh_priv_key);
+#else
+ dh_pub_key = kex->dh->pub_key;
+ dh_priv_key = kex->dh->priv_key;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ if (dh_priv_key != NULL) {
+ BN_clear_free(dh_priv_key);
+ }
+
+ if (dh_pub_key != NULL) {
+ BN_clear_free(dh_pub_key);
+ }
- if (kex->dh->pub_key) {
- BN_clear_free(kex->dh->pub_key);
- kex->dh->pub_key = NULL;
- }
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ /* Per the docs, this is a no-no -- but its the only way to actually
+ * set the public DH key to null.
+ */
+ dh_pub_key = dh_priv_key = NULL;
+#else
+ kex->dh->pub_key = kex->dh->priv_key = NULL;
+#endif /* prior to OpenSSL-1.1.0 */
continue;
}
@@ -1399,6 +1576,7 @@ static struct sftp_kex *create_kex(pool *p) {
static void destroy_kex(struct sftp_kex *kex) {
if (kex) {
if (kex->dh) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
if (kex->dh->p) {
BN_clear_free(kex->dh->p);
kex->dh->p = NULL;
@@ -1408,6 +1586,7 @@ static void destroy_kex(struct sftp_kex *kex) {
BN_clear_free(kex->dh->g);
kex->dh->g = NULL;
}
+#endif /* prior to OpenSSL-1.1.0 */
DH_free(kex->dh);
kex->dh = NULL;
@@ -2089,9 +2268,13 @@ static int write_kexinit(struct ssh2_packet *pkt, struct sftp_kex *kex) {
* pseudo-cryptographically secure bytes.
*/
memset(cookie, 0, sizeof(cookie));
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RAND_bytes(cookie, sizeof(cookie));
+#else
if (RAND_bytes(cookie, sizeof(cookie)) != 1) {
RAND_pseudo_bytes(cookie, sizeof(cookie));
}
+#endif /* prior to OpenSSL-1.1.0 */
sftp_msg_write_data(&buf, &buflen, cookie, sizeof(cookie), FALSE);
@@ -2162,6 +2345,7 @@ static int read_dh_init(struct ssh2_packet *pkt, struct sftp_kex *kex) {
static int set_session_keys(struct sftp_kex *kex) {
const char *k, *v;
+ int comp_read_flags, comp_write_flags;
if (sftp_cipher_set_read_key(kex_pool, kex->hash, kex->k, kex->h,
kex->hlen) < 0)
@@ -2179,10 +2363,29 @@ static int set_session_keys(struct sftp_kex *kex) {
kex->hlen) < 0)
return -1;
- if (sftp_compress_init_read(SFTP_COMPRESS_FL_NEW_KEY) < 0)
+ comp_read_flags = comp_write_flags = SFTP_COMPRESS_FL_NEW_KEY;
+
+ /* If we are rekeying, AND the existing compression is "delayed", then
+ * we need to use slightly different compression flags.
+ */
+ if (kex_rekey_kex) {
+ const char *algo;
+
+ algo = sftp_compress_get_read_algo();
+ if (strncmp(algo, "zlib at openssh.com", 17) == 0) {
+ comp_read_flags = SFTP_COMPRESS_FL_AUTHENTICATED;
+ }
+
+ algo = sftp_compress_get_write_algo();
+ if (strncmp(algo, "zlib at openssh.com", 17) == 0) {
+ comp_write_flags = SFTP_COMPRESS_FL_AUTHENTICATED;
+ }
+ }
+
+ if (sftp_compress_init_read(comp_read_flags) < 0)
return -1;
- if (sftp_compress_init_write(SFTP_COMPRESS_FL_NEW_KEY) < 0)
+ if (sftp_compress_init_write(comp_write_flags) < 0)
return -1;
k = pstrdup(session.pool, "SFTP_CLIENT_CIPHER_ALGO");
@@ -2265,7 +2468,7 @@ static int write_dh_reply(struct ssh2_packet *pkt, struct sftp_kex *kex) {
unsigned char *buf, *ptr;
uint32_t bufsz, buflen, hlen = 0;
size_t dhlen, hostkey_datalen, hsiglen;
- BIGNUM *k = NULL;
+ BIGNUM *k = NULL, *dh_pub_key = NULL;
int res;
/* Compute the shared secret */
@@ -2339,7 +2542,14 @@ static int write_dh_reply(struct ssh2_packet *pkt, struct sftp_kex *kex) {
sftp_msg_write_byte(&buf, &buflen, SFTP_SSH2_MSG_KEX_DH_REPLY);
sftp_msg_write_data(&buf, &buflen, hostkey_data, hostkey_datalen, TRUE);
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->pub_key);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_key(kex->dh, &dh_pub_key, NULL);
+#else
+ dh_pub_key = kex->dh->pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dh_pub_key);
+
sftp_msg_write_data(&buf, &buflen, hsig, hsiglen, TRUE);
/* Scrub any sensitive data when done */
@@ -2555,6 +2765,9 @@ static int get_dh_gex_group(struct sftp_kex *kex, uint32_t min,
} else if (nbits == smaller_dh_nbits) {
*((DH **) push_array(smaller_dhs)) = dh;
+
+ } else {
+ DH_free(dh);
}
} else {
@@ -2575,6 +2788,9 @@ static int get_dh_gex_group(struct sftp_kex *kex, uint32_t min,
} else if (nbits == larger_dh_nbits) {
*((DH **) push_array(larger_dhs)) = dh;
+
+ } else {
+ DH_free(dh);
}
}
}
@@ -2615,13 +2831,22 @@ static int get_dh_gex_group(struct sftp_kex *kex, uint32_t min,
}
if (dh) {
+ BIGNUM *dh_p = NULL, *dh_g = NULL, *dup_p, *dup_g;
+
pr_trace_msg(trace_channel, 20, "client requested min %lu, pref %lu, "
"max %lu sizes for DH group exchange, selected DH of %lu bits",
(unsigned long) min, (unsigned long) pref, (unsigned long) max,
(unsigned long) DH_size(dh) * 8);
- kex->dh->p = BN_dup(dh->p);
- if (kex->dh->p == NULL) {
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_pqg(dh, &dh_p, NULL, &dh_g);
+#else
+ dh_p = dh->p;
+ dh_g = dh->g;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ dup_p = BN_dup(dh_p);
+ if (dup_p == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error copying selected DH P: %s", sftp_crypto_get_errors());
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
@@ -2629,16 +2854,23 @@ static int get_dh_gex_group(struct sftp_kex *kex, uint32_t min,
use_fixed_modulus = TRUE;
} else {
- kex->dh->g = BN_dup(dh->g);
- if (kex->dh->g == NULL) {
+ dup_g = BN_dup(dh_g);
+ if (dup_g == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error copying selected DH G: %s", sftp_crypto_get_errors());
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"WARNING: using fixed modulus for DH group exchange");
- BN_clear_free(kex->dh->p);
- kex->dh->p = NULL;
+ BN_clear_free(dup_p);
use_fixed_modulus = TRUE;
+
+ } else {
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_set0_pqg(kex->dh, dup_p, NULL, dup_g);
+#else
+ kex->dh->p = dup_p;
+ kex->dh->g = dup_g;
+#endif /* prior to OpenSSL-1.1.0 */
}
}
}
@@ -2675,28 +2907,34 @@ static int get_dh_gex_group(struct sftp_kex *kex, uint32_t min,
}
if (use_fixed_modulus) {
- kex->dh->p = BN_new();
- kex->dh->g = BN_new();
+ BIGNUM *dh_p, *dh_g;
+
+ dh_p = BN_new();
- if (BN_hex2bn(&kex->dh->p, dh_group14_str) == 0) {
+ if (BN_hex2bn(&dh_p, dh_group14_str) == 0) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error setting DH P: %s", sftp_crypto_get_errors());
- BN_clear_free(kex->dh->p);
- kex->dh->p = NULL;
-
+ BN_clear_free(dh_p);
errno = EACCES;
return -1;
}
- if (BN_hex2bn(&kex->dh->g, "2") == 0) {
+ dh_g = BN_new();
+ if (BN_hex2bn(&dh_g, "2") == 0) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error setting DH G: %s", sftp_crypto_get_errors());
- BN_clear_free(kex->dh->g);
- kex->dh->g = NULL;
-
+ BN_clear_free(dh_p);
+ BN_clear_free(dh_g);
errno = EACCES;
return -1;
}
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_set0_pqg(kex->dh, dh_p, NULL, dh_g);
+#else
+ kex->dh->p = dh_p;
+ kex->dh->g = dh_g;
+#endif /* prior to OpenSSL-1.1.0 */
}
return 0;
@@ -2704,6 +2942,7 @@ static int get_dh_gex_group(struct sftp_kex *kex, uint32_t min,
static int write_dh_gex_group(struct ssh2_packet *pkt, struct sftp_kex *kex,
uint32_t min, uint32_t pref, uint32_t max) {
+ BIGNUM *dh_p = NULL, *dh_g = NULL;
unsigned char *buf, *ptr;
uint32_t buflen, bufsz;
@@ -2716,8 +2955,15 @@ static int write_dh_gex_group(struct ssh2_packet *pkt, struct sftp_kex *kex,
ptr = buf = palloc(pkt->pool, bufsz);
sftp_msg_write_byte(&buf, &buflen, SFTP_SSH2_MSG_KEX_DH_GEX_GROUP);
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->p);
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->g);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_pqg(kex->dh, &dh_p, NULL, &dh_g);
+#else
+ dh_p = kex->dh->p;
+ dh_g = kex->dh->g;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dh_p);
+ sftp_msg_write_mpint(&buf, &buflen, dh_g);
pkt->payload = ptr;
pkt->payload_len = (bufsz - buflen);
@@ -2749,7 +2995,7 @@ static int write_dh_gex_reply(struct ssh2_packet *pkt, struct sftp_kex *kex,
unsigned char *buf, *ptr;
uint32_t bufsz, buflen, hlen = 0;
size_t dhlen, hostkey_datalen, hsiglen;
- BIGNUM *k = NULL;
+ BIGNUM *k = NULL, *dh_pub_key = NULL;
int res;
/* Compute the shared secret. */
@@ -2828,7 +3074,14 @@ static int write_dh_gex_reply(struct ssh2_packet *pkt, struct sftp_kex *kex,
sftp_msg_write_byte(&buf, &buflen, SFTP_SSH2_MSG_KEX_DH_GEX_REPLY);
sftp_msg_write_data(&buf, &buflen, hostkey_data, hostkey_datalen, TRUE);
- sftp_msg_write_mpint(&buf, &buflen, kex->dh->pub_key);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DH_get0_key(kex->dh, &dh_pub_key, NULL);
+#else
+ dh_pub_key = kex->dh->pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dh_pub_key);
+
sftp_msg_write_data(&buf, &buflen, hsig, hsiglen, TRUE);
/* Scrub any sensitive data when done */
@@ -2991,6 +3244,7 @@ static int read_kexrsa_secret(struct ssh2_packet *pkt, struct sftp_kex *kex) {
}
static int write_kexrsa_pubkey(struct ssh2_packet *pkt, struct sftp_kex *kex) {
+ BIGNUM *rsa_n = NULL, *rsa_e = NULL;
unsigned char *buf, *ptr, *buf2, *ptr2;
const unsigned char *hostkey_data;
uint32_t buflen, bufsz, buflen2, bufsz2, hostkey_datalen;
@@ -3013,8 +3267,15 @@ static int write_kexrsa_pubkey(struct ssh2_packet *pkt, struct sftp_kex *kex) {
* written in its entirety as an SSH2 string.
*/
sftp_msg_write_string(&buf, &buflen, "ssh-rsa");
- sftp_msg_write_mpint(&buf, &buflen, kex->rsa->e);
- sftp_msg_write_mpint(&buf, &buflen, kex->rsa->n);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RSA_get0_key(kex->rsa, &rsa_n, &rsa_e, NULL);
+#else
+ rsa_e = kex->rsa->e;
+ rsa_n = kex->rsa->n;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, rsa_e);
+ sftp_msg_write_mpint(&buf, &buflen, rsa_n);
/* XXX Is this buffer large enough? Too large? */
bufsz2 = buflen2 = 4096;
@@ -3033,6 +3294,7 @@ static int write_kexrsa_pubkey(struct ssh2_packet *pkt, struct sftp_kex *kex) {
}
static int write_kexrsa_done(struct ssh2_packet *pkt, struct sftp_kex *kex) {
+ BIGNUM *rsa_e = NULL, *rsa_n = NULL;
unsigned char *buf, *ptr, *buf2, *ptr2;
const unsigned char *h, *hostkey_data, *hsig;
uint32_t buflen, bufsz, buflen2, bufsz2, hlen;
@@ -3063,8 +3325,15 @@ static int write_kexrsa_done(struct ssh2_packet *pkt, struct sftp_kex *kex) {
* written in its entirety as an SSH2 string.
*/
sftp_msg_write_string(&buf2, &buflen2, "ssh-rsa");
- sftp_msg_write_mpint(&buf2, &buflen2, kex->rsa->e);
- sftp_msg_write_mpint(&buf2, &buflen2, kex->rsa->n);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RSA_get0_key(kex->rsa, &rsa_n, &rsa_e, NULL);
+#else
+ rsa_e = kex->rsa->e;
+ rsa_n = kex->rsa->n;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf2, &buflen2, rsa_e);
+ sftp_msg_write_mpint(&buf2, &buflen2, rsa_n);
/* Calculate H */
h = calculate_kexrsa_h(kex, hostkey_data, hostkey_datalen, kex->k,
@@ -3435,6 +3704,10 @@ static struct ssh2_packet *read_kex_packet(pool *p, struct sftp_kex *kex,
return NULL;
}
+ pr_response_clear(&resp_list);
+ pr_response_clear(&resp_err_list);
+ pr_response_set_pool(pkt->pool);
+
/* Per RFC 4253, Section 11, DEBUG, DISCONNECT, IGNORE, and UNIMPLEMENTED
* messages can occur at any time, even during KEX. We have to be prepared
* for this, and Do The Right Thing(tm).
@@ -3468,21 +3741,25 @@ static struct ssh2_packet *read_kex_packet(pool *p, struct sftp_kex *kex,
switch (mesg_type) {
case SFTP_SSH2_MSG_DEBUG:
sftp_ssh2_packet_handle_debug(pkt);
+ pr_response_set_pool(NULL);
pkt = NULL;
break;
case SFTP_SSH2_MSG_DISCONNECT:
sftp_ssh2_packet_handle_disconnect(pkt);
+ pr_response_set_pool(NULL);
pkt = NULL;
break;
case SFTP_SSH2_MSG_IGNORE:
sftp_ssh2_packet_handle_ignore(pkt);
+ pr_response_set_pool(NULL);
pkt = NULL;
break;
case SFTP_SSH2_MSG_UNIMPLEMENTED:
- sftp_ssh2_packet_handle_ignore(pkt);
+ sftp_ssh2_packet_handle_unimplemented(pkt);
+ pr_response_set_pool(NULL);
pkt = NULL;
break;
@@ -3491,6 +3768,7 @@ static struct ssh2_packet *read_kex_packet(pool *p, struct sftp_kex *kex,
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"received %s (%d) unexpectedly, disconnecting",
sftp_ssh2_packet_get_mesg_type_desc(mesg_type), mesg_type);
+ pr_response_set_pool(NULL);
destroy_kex(kex);
destroy_pool(pkt->pool);
SFTP_DISCONNECT_CONN(disconn_code, NULL);
@@ -3751,25 +4029,27 @@ int sftp_kex_handle(struct ssh2_packet *pkt) {
/* If we didn't send our NEWKEYS message earlier, do it now. */
if (!sent_newkeys) {
+ struct ssh2_packet *pkt2;
+
pr_trace_msg(trace_channel, 9, "sending NEWKEYS message to client");
/* Send our NEWKEYS reply. */
- pkt = sftp_ssh2_packet_create(kex_pool);
- res = write_newkeys_reply(pkt);
+ pkt2 = sftp_ssh2_packet_create(kex_pool);
+ res = write_newkeys_reply(pkt2);
if (res < 0) {
destroy_kex(kex);
- destroy_pool(pkt->pool);
+ destroy_pool(pkt2->pool);
return -1;
}
- res = sftp_ssh2_packet_write(sftp_conn->wfd, pkt);
+ res = sftp_ssh2_packet_write(sftp_conn->wfd, pkt2);
if (res < 0) {
destroy_kex(kex);
- destroy_pool(pkt->pool);
+ destroy_pool(pkt2->pool);
return -1;
}
- destroy_pool(pkt->pool);
+ destroy_pool(pkt2->pool);
}
/* Last but certainly not least, set up the keys for encryption and
@@ -3883,6 +4163,21 @@ int sftp_kex_rekey(void) {
return 0;
}
+ /* If the client has NOT authenticated by this point in time, try again
+ * later. Some clients do not deal well with having their authentication
+ * processes interrupted by a rekey (Bug#4254).
+ */
+ if (!(sftp_sess_state & SFTP_SESS_STATE_HAVE_AUTH)) {
+ pr_trace_msg(trace_channel, 17,
+ "authentication not completed, delaying rekey request");
+
+ /* If the rekey interval is so short as to interfere the client before
+ * it has authenticated, assume the rekey interval is short enough to
+ * fire again soon, such that we do not need to change its schedule.
+ */
+ return 1;
+ }
+
/* Make sure that any rekey timer will try not to interfere while the
* rekeying is happening.
*/
diff --git a/contrib/mod_sftp/keys.c b/contrib/mod_sftp/keys.c
index 371de28..c448341 100644
--- a/contrib/mod_sftp/keys.c
+++ b/contrib/mod_sftp/keys.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp key mgmt (keys)
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -789,6 +789,7 @@ static EVP_PKEY *get_pkey_from_data(pool *p, unsigned char *pkey_data,
if (strncmp(pkey_type, "ssh-rsa", 8) == 0) {
RSA *rsa;
+ BIGNUM *rsa_e = NULL, *rsa_n = NULL;
pkey = EVP_PKEY_new();
if (pkey == NULL) {
@@ -805,8 +806,15 @@ static EVP_PKEY *get_pkey_from_data(pool *p, unsigned char *pkey_data,
return NULL;
}
- rsa->e = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
- rsa->n = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+ rsa_e = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+ rsa_n = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RSA_set0_key(rsa, rsa_n, rsa_e, NULL);
+#else
+ rsa->e = rsa_e;
+ rsa->n = rsa_n;
+#endif /* prior to OpenSSL-1.1.0 */
if (EVP_PKEY_assign_RSA(pkey, rsa) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
@@ -818,6 +826,7 @@ static EVP_PKEY *get_pkey_from_data(pool *p, unsigned char *pkey_data,
} else if (strncmp(pkey_type, "ssh-dss", 8) == 0) {
DSA *dsa;
+ BIGNUM *dsa_p, *dsa_q, *dsa_g, *dsa_pub_key;
pkey = EVP_PKEY_new();
if (pkey == NULL) {
@@ -834,10 +843,20 @@ static EVP_PKEY *get_pkey_from_data(pool *p, unsigned char *pkey_data,
return NULL;
}
- dsa->p = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
- dsa->q = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
- dsa->g = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
- dsa->pub_key = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+ dsa_p = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+ dsa_q = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+ dsa_g = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+ dsa_pub_key = sftp_msg_read_mpint(p, &pkey_data, &pkey_datalen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DSA_set0_pqg(dsa, dsa_p, dsa_q, dsa_g);
+ DSA_set0_key(dsa, dsa_pub_key, NULL);
+#else
+ dsa->p = dsa_p;
+ dsa->q = dsa_q;
+ dsa->g = dsa_g;
+ dsa->pub_key = dsa_pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
if (EVP_PKEY_assign_DSA(pkey, dsa) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
@@ -1280,6 +1299,18 @@ int sftp_keys_validate_ecdsa_params(const EC_GROUP *group,
}
#endif /* PR_USE_OPENSSL_ECC */
+static int get_pkey_type(EVP_PKEY *pkey) {
+ int pkey_type;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pkey_type = EVP_PKEY_id(pkey);
+#else
+ pkey_type = EVP_PKEY_type(pkey->type);
+#endif /* OpenSSL 1.1.x and later */
+
+ return pkey_type;
+}
+
/* Compare a "blob" of pubkey data sent by the client for authentication
* with a file pubkey (from an RFC4716 formatted file). Returns -1 if
* there was an error, TRUE if the keys are equals, and FALSE if not.
@@ -1307,22 +1338,34 @@ int sftp_keys_compare_keys(pool *p, unsigned char *client_pubkey_data,
return -1;
}
- if (EVP_PKEY_type(client_pkey->type) == EVP_PKEY_type(file_pkey->type)) {
- switch (EVP_PKEY_type(client_pkey->type)) {
+ if (get_pkey_type(client_pkey) == get_pkey_type(file_pkey)) {
+ switch (get_pkey_type(client_pkey)) {
case EVP_PKEY_RSA: {
- RSA *client_rsa, *file_rsa;
+ RSA *remote_rsa = NULL, *local_rsa = NULL;
+ BIGNUM *remote_rsa_e = NULL, *local_rsa_e = NULL;
+ BIGNUM *remote_rsa_n = NULL, *local_rsa_n = NULL;
+
+ remote_rsa = EVP_PKEY_get1_RSA(client_pkey);
+ local_rsa = EVP_PKEY_get1_RSA(file_pkey);
- client_rsa = EVP_PKEY_get1_RSA(client_pkey);
- file_rsa = EVP_PKEY_get1_RSA(file_pkey);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RSA_get0_key(remote_rsa, &remote_rsa_n, &remote_rsa_e, NULL);
+ RSA_get0_key(local_rsa, &local_rsa_n, &local_rsa_e, NULL);
+#else
+ remote_rsa_e = remote_rsa->e;
+ local_rsa_e = local_rsa->e;
+ remote_rsa_n = remote_rsa->n;
+ local_rsa_n = local_rsa->n;
+#endif /* prior to OpenSSL-1.1.0 */
- if (BN_cmp(client_rsa->e, file_rsa->e) != 0) {
+ if (BN_cmp(remote_rsa_e, local_rsa_e) != 0) {
pr_trace_msg(trace_channel, 17, "%s",
"RSA key mismatch: client-sent RSA key component 'e' does not "
"match local RSA key component 'e'");
res = FALSE;
} else {
- if (BN_cmp(client_rsa->n, file_rsa->n) != 0) {
+ if (BN_cmp(remote_rsa_n, local_rsa_n) != 0) {
pr_trace_msg(trace_channel, 17, "%s",
"RSA key mismatch: client-sent RSA key component 'n' does not "
"match local RSA key component 'n'");
@@ -1333,39 +1376,58 @@ int sftp_keys_compare_keys(pool *p, unsigned char *client_pubkey_data,
}
}
- RSA_free(client_rsa);
- RSA_free(file_rsa);
+ RSA_free(local_rsa);
+ RSA_free(remote_rsa);
break;
}
case EVP_PKEY_DSA: {
- DSA *client_dsa, *file_dsa;
-
- client_dsa = EVP_PKEY_get1_DSA(client_pkey);
- file_dsa = EVP_PKEY_get1_DSA(file_pkey);
-
- if (BN_cmp(client_dsa->p, file_dsa->p) != 0) {
+ DSA *remote_dsa = NULL, *local_dsa = NULL;
+ BIGNUM *remote_dsa_p, *remote_dsa_q, *remote_dsa_g;
+ BIGNUM *local_dsa_p, *local_dsa_q, *local_dsa_g;
+ BIGNUM *remote_dsa_pub_key, *local_dsa_pub_key;
+
+ local_dsa = EVP_PKEY_get1_DSA(client_pkey);
+ remote_dsa = EVP_PKEY_get1_DSA(file_pkey);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DSA_get0_pqg(remote_dsa, &remote_dsa_p, &remote_dsa_q, &remote_dsa_g);
+ DSA_get0_pqg(local_dsa, &local_dsa_p, &local_dsa_q, &local_dsa_g);
+ DSA_get0_key(remote_dsa, &remote_dsa_pub_key, NULL);
+ DSA_get0_key(local_dsa, &local_dsa_pub_key, NULL);
+#else
+ remote_dsa_p = remote_dsa->p;
+ remote_dsa_q = remote_dsa->q;
+ remote_dsa_g = remote_dsa->g;
+ remote_dsa_pub_key = remote_dsa->pub_key;
+ local_dsa_p = local_dsa->p;
+ local_dsa_q = local_dsa->q;
+ local_dsa_g = local_dsa->g;
+ local_dsa_pub_key = local_dsa->pub_key;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ if (BN_cmp(remote_dsa_p, local_dsa_p) != 0) {
pr_trace_msg(trace_channel, 17, "%s",
"DSA key mismatch: client-sent DSA key parameter 'p' does not "
"match local DSA key parameter 'p'");
res = FALSE;
} else {
- if (BN_cmp(client_dsa->q, file_dsa->q) != 0) {
+ if (BN_cmp(remote_dsa_q, local_dsa_q) != 0) {
pr_trace_msg(trace_channel, 17, "%s",
"DSA key mismatch: client-sent DSA key parameter 'q' does not "
"match local DSA key parameter 'q'");
res = FALSE;
} else {
- if (BN_cmp(client_dsa->g, file_dsa->g) != 0) {
+ if (BN_cmp(remote_dsa_g, local_dsa_g) != 0) {
pr_trace_msg(trace_channel, 17, "%s",
"DSA key mismatch: client-sent DSA key parameter 'g' does not "
"match local DSA key parameter 'g'");
res = FALSE;
} else {
- if (BN_cmp(client_dsa->pub_key, file_dsa->pub_key) != 0) {
+ if (BN_cmp(remote_dsa_pub_key, local_dsa_pub_key) != 0) {
pr_trace_msg(trace_channel, 17, "%s",
"DSA key mismatch: client-sent DSA key parameter 'pub_key' "
"does not match local DSA key parameter 'pub_key'");
@@ -1378,8 +1440,8 @@ int sftp_keys_compare_keys(pool *p, unsigned char *client_pubkey_data,
}
}
- DSA_free(client_dsa);
- DSA_free(file_dsa);
+ DSA_free(remote_dsa);
+ DSA_free(local_dsa);
break;
}
@@ -1422,7 +1484,7 @@ int sftp_keys_compare_keys(pool *p, unsigned char *client_pubkey_data,
default:
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"unable to compare %s keys: unsupported key type",
- get_key_type_desc(EVP_PKEY_type(client_pkey->type)));
+ get_key_type_desc(get_pkey_type(client_pkey)));
errno = ENOSYS;
break;
}
@@ -1431,8 +1493,8 @@ int sftp_keys_compare_keys(pool *p, unsigned char *client_pubkey_data,
if (pr_trace_get_level(trace_channel) >= 17) {
const char *client_key_desc, *file_key_desc;
- client_key_desc = get_key_type_desc(EVP_PKEY_type(client_pkey->type));
- file_key_desc = get_key_type_desc(EVP_PKEY_type(file_pkey->type));
+ client_key_desc = get_key_type_desc(get_pkey_type(client_pkey));
+ file_key_desc = get_key_type_desc(get_pkey_type(file_pkey));
pr_trace_msg(trace_channel, 17, "key mismatch: cannot compare %s key "
"(client-sent) with %s key (local)", client_key_desc, file_key_desc);
@@ -1449,7 +1511,10 @@ int sftp_keys_compare_keys(pool *p, unsigned char *client_pubkey_data,
const char *sftp_keys_get_fingerprint(pool *p, unsigned char *key_data,
uint32_t key_datalen, int digest_algo) {
- EVP_MD_CTX fp_ctx;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
const EVP_MD *digest;
char *digest_name = "none", *fp;
unsigned char *fp_data;
@@ -1474,47 +1539,63 @@ const char *sftp_keys_get_fingerprint(pool *p, unsigned char *key_data,
return NULL;
}
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
/* In OpenSSL 0.9.6, many of the EVP_Digest* functions returned void, not
* int. Without these ugly OpenSSL version preprocessor checks, the
* compiler will error out with "void value not ignored as it ought to be".
*/
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&fp_ctx, digest) != 1) {
+ if (EVP_DigestInit(pctx, digest) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing %s digest: %s", digest_name,
sftp_crypto_get_errors());
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
errno = EPERM;
return NULL;
}
#else
- EVP_DigestInit(&fp_ctx, digest);
+ EVP_DigestInit(pctx, digest);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&fp_ctx, key_data, key_datalen) != 1) {
+ if (EVP_DigestUpdate(pctx, key_data, key_datalen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating %s digest: %s", digest_name, sftp_crypto_get_errors());
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
errno = EPERM;
return NULL;
}
#else
- EVP_DigestUpdate(&fp_ctx, key_data, key_datalen);
+ EVP_DigestUpdate(pctx, key_data, key_datalen);
#endif
fp_data = palloc(p, EVP_MAX_MD_SIZE);
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&fp_ctx, fp_data, &fp_datalen) != 1) {
+ if (EVP_DigestFinal(pctx, fp_data, &fp_datalen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finishing %s digest: %s", digest_name, sftp_crypto_get_errors());
errno = EPERM;
return NULL;
}
#else
- EVP_DigestFinal(&fp_ctx, fp_data, &fp_datalen);
+ EVP_DigestFinal(pctx, fp_data, &fp_datalen);
#endif
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
+
/* Now encode that digest in fp_data as hex characters. */
fp = "";
@@ -1614,7 +1695,7 @@ static int handle_hostkey(pool *p, EVP_PKEY *pkey,
const unsigned char *key_data, uint32_t key_datalen,
const char *file_path, const char *agent_path) {
- switch (pkey->type) {
+ switch (get_pkey_type(pkey)) {
case EVP_PKEY_RSA: {
#if OPENSSL_VERSION_NUMBER < 0x0090702fL
/* In OpenSSL-0.9.7a and later, RSA blinding is turned on by default.
@@ -1842,7 +1923,7 @@ static int handle_hostkey(pool *p, EVP_PKEY *pkey,
default:
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
- "unknown private key type (%d), ignoring", pkey->type);
+ "unknown private key type (%d), ignoring", get_pkey_type(pkey));
EVP_PKEY_free(pkey);
return -1;
}
@@ -2012,6 +2093,7 @@ const unsigned char *sftp_keys_get_hostkey_data(pool *p,
switch (key_type) {
case SFTP_KEY_RSA: {
RSA *rsa;
+ BIGNUM *rsa_n = NULL, *rsa_e = NULL;
rsa = EVP_PKEY_get1_RSA(sftp_rsa_hostkey->pkey);
if (rsa == NULL) {
@@ -2023,8 +2105,15 @@ const unsigned char *sftp_keys_get_hostkey_data(pool *p,
/* XXX Is this buffer large enough? Too large? */
ptr = buf = palloc(p, buflen);
sftp_msg_write_string(&buf, &buflen, "ssh-rsa");
- sftp_msg_write_mpint(&buf, &buflen, rsa->e);
- sftp_msg_write_mpint(&buf, &buflen, rsa->n);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ RSA_get0_key(rsa, &rsa_n, &rsa_e, NULL);
+#else
+ rsa_e = rsa->e;
+ rsa_n = rsa->n;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, rsa_e);
+ sftp_msg_write_mpint(&buf, &buflen, rsa_n);
RSA_free(rsa);
break;
@@ -2032,6 +2121,7 @@ const unsigned char *sftp_keys_get_hostkey_data(pool *p,
case SFTP_KEY_DSA: {
DSA *dsa;
+ BIGNUM *dsa_p = NULL, *dsa_q = NULL, *dsa_g = NULL, *dsa_pub_key = NULL;
dsa = EVP_PKEY_get1_DSA(sftp_dsa_hostkey->pkey);
if (dsa == NULL) {
@@ -2043,10 +2133,20 @@ const unsigned char *sftp_keys_get_hostkey_data(pool *p,
/* XXX Is this buffer large enough? Too large? */
ptr = buf = palloc(p, buflen);
sftp_msg_write_string(&buf, &buflen, "ssh-dss");
- sftp_msg_write_mpint(&buf, &buflen, dsa->p);
- sftp_msg_write_mpint(&buf, &buflen, dsa->q);
- sftp_msg_write_mpint(&buf, &buflen, dsa->g);
- sftp_msg_write_mpint(&buf, &buflen, dsa->pub_key);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DSA_get0_pqg(dsa, &dsa_p, &dsa_q, &dsa_g);
+ DSA_get0_key(dsa, &dsa_pub_key, NULL);
+#else
+ dsa_p = dsa->p;
+ dsa_q = dsa->q;
+ dsa_g = dsa->g;
+ dsa_pub_key = dsa->pub_key;;
+#endif /* prior to OpenSSL-1.1.0 */
+ sftp_msg_write_mpint(&buf, &buflen, dsa_p);
+ sftp_msg_write_mpint(&buf, &buflen, dsa_q);
+ sftp_msg_write_mpint(&buf, &buflen, dsa_g);
+ sftp_msg_write_mpint(&buf, &buflen, dsa_pub_key);
DSA_free(dsa);
break;
@@ -2252,7 +2352,10 @@ static const unsigned char *agent_sign_data(pool *p, const char *agent_path,
static const unsigned char *rsa_sign_data(pool *p, const unsigned char *data,
size_t datalen, size_t *siglen) {
RSA *rsa;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
const EVP_MD *sha1 = EVP_sha1();
unsigned char dgst[EVP_MAX_MD_SIZE], *sig_data;
unsigned char *buf, *ptr;
@@ -2273,9 +2376,19 @@ static const unsigned char *rsa_sign_data(pool *p, const unsigned char *data,
return NULL;
}
- EVP_DigestInit(&ctx, sha1);
- EVP_DigestUpdate(&ctx, data, datalen);
- EVP_DigestFinal(&ctx, dgst, &dgstlen);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ EVP_DigestInit(pctx, sha1);
+ EVP_DigestUpdate(pctx, data, datalen);
+ EVP_DigestFinal(pctx, dgst, &dgstlen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
sig_rsalen = RSA_size(rsa);
sig_data = pcalloc(p, sig_rsalen);
@@ -2324,7 +2437,11 @@ static const unsigned char *dsa_sign_data(pool *p, const unsigned char *data,
size_t datalen, size_t *siglen) {
DSA *dsa;
DSA_SIG *sig;
+ BIGNUM *sig_r = NULL, *sig_s = NULL;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
const EVP_MD *sha1 = EVP_sha1();
unsigned char dgst[EVP_MAX_MD_SIZE], *sig_data;
unsigned char *buf, *ptr;
@@ -2345,9 +2462,19 @@ static const unsigned char *dsa_sign_data(pool *p, const unsigned char *data,
return NULL;
}
- EVP_DigestInit(&ctx, sha1);
- EVP_DigestUpdate(&ctx, data, datalen);
- EVP_DigestFinal(&ctx, dgst, &dgstlen);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ EVP_DigestInit(pctx, sha1);
+ EVP_DigestUpdate(pctx, data, datalen);
+ EVP_DigestFinal(pctx, dgst, &dgstlen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
sig = DSA_do_sign(dgst, dgstlen, dsa);
if (sig == NULL) {
@@ -2361,8 +2488,15 @@ static const unsigned char *dsa_sign_data(pool *p, const unsigned char *data,
/* Got the signature, no need for the digest memory. */
pr_memscrub(dgst, dgstlen);
- rlen = BN_num_bytes(sig->r);
- slen = BN_num_bytes(sig->s);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DSA_SIG_get0(&sig_r, &sig_s, sig);
+#else
+ sig_r = sig->r;
+ sig_s = sig->s;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ rlen = BN_num_bytes(sig_r);
+ slen = BN_num_bytes(sig_s);
/* Make sure the values of R and S are big enough. */
if (rlen > SFTP_DSA_INTEGER_LEN ||
@@ -2380,9 +2514,9 @@ static const unsigned char *dsa_sign_data(pool *p, const unsigned char *data,
* ensure the correct placement of the R and S values in the signature,
* per RFC 4253 Section 6.6 requirements.
*/
- BN_bn2bin(sig->r,
+ BN_bn2bin(sig_r,
sig_data + SFTP_DSA_SIGNATURE_LEN - SFTP_DSA_INTEGER_LEN - rlen);
- BN_bn2bin(sig->s, sig_data + SFTP_DSA_SIGNATURE_LEN - slen);
+ BN_bn2bin(sig_s, sig_data + SFTP_DSA_SIGNATURE_LEN - slen);
/* Done with the signature. */
DSA_SIG_free(sig);
@@ -2409,7 +2543,11 @@ static const unsigned char *ecdsa_sign_data(pool *p, const unsigned char *data,
size_t datalen, size_t *siglen, int nid) {
EC_KEY *ec = NULL;
ECDSA_SIG *sig;
+ BIGNUM *sig_r = NULL, *sig_s = NULL;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
const EVP_MD *md;
unsigned char dgst[EVP_MAX_MD_SIZE];
unsigned char *buf, *ptr, *sig_buf, *sig_ptr;
@@ -2476,9 +2614,19 @@ static const unsigned char *ecdsa_sign_data(pool *p, const unsigned char *data,
buflen = bufsz = SFTP_MAX_SIG_SZ;
ptr = buf = sftp_msg_getbuf(p, bufsz);
- EVP_DigestInit(&ctx, md);
- EVP_DigestUpdate(&ctx, data, datalen);
- EVP_DigestFinal(&ctx, dgst, &dgstlen);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ EVP_DigestInit(pctx, md);
+ EVP_DigestUpdate(pctx, data, datalen);
+ EVP_DigestFinal(pctx, dgst, &dgstlen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
sig = ECDSA_do_sign(dgst, dgstlen, ec);
if (sig == NULL) {
@@ -2496,12 +2644,19 @@ static const unsigned char *ecdsa_sign_data(pool *p, const unsigned char *data,
* selected, so we do no sanity checking of their lengths.
*/
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ ECDSA_SIG_get0(&sig_r, &sig_s, sig);
+#else
+ sig_r = sig->r;
+ sig_s = sig->s;
+#endif /* prior to OpenSSL-1.1.0 */
+
/* XXX Is this buffer large enough? Too large? */
sig_buflen = sig_bufsz = 256;
sig_ptr = sig_buf = palloc(p, sig_bufsz);
- sftp_msg_write_mpint(&sig_buf, &sig_buflen, sig->r);
- sftp_msg_write_mpint(&sig_buf, &sig_buflen, sig->s);
+ sftp_msg_write_mpint(&sig_buf, &sig_buflen, sig_r);
+ sftp_msg_write_mpint(&sig_buf, &sig_buflen, sig_s);
/* Done with the signature. */
ECDSA_SIG_free(sig);
@@ -2600,18 +2755,18 @@ int sftp_keys_verify_pubkey_type(pool *p, unsigned char *pubkey_data,
switch (pubkey_type) {
case SFTP_KEY_RSA:
- res = (EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA);
+ res = (get_pkey_type(pkey) == EVP_PKEY_RSA);
break;
case SFTP_KEY_DSA:
- res = (EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA);
+ res = (get_pkey_type(pkey) == EVP_PKEY_DSA);
break;
#ifdef PR_USE_OPENSSL_ECC
case SFTP_KEY_ECDSA_256:
case SFTP_KEY_ECDSA_384:
case SFTP_KEY_ECDSA_521:
- if (EVP_PKEY_type(pkey->type) == EVP_PKEY_EC) {
+ if (get_pkey_type(pkey) == EVP_PKEY_EC) {
EC_KEY *ec;
int ec_nid;
@@ -2652,7 +2807,10 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
unsigned char *signature, uint32_t signaturelen,
unsigned char *sig_data, size_t sig_datalen) {
EVP_PKEY *pkey;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
unsigned char *sig;
uint32_t sig_len;
unsigned char digest[EVP_MAX_MD_SIZE];
@@ -2725,9 +2883,19 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
sig_len = (uint32_t) modulus_len;
}
- EVP_DigestInit(&ctx, EVP_sha1());
- EVP_DigestUpdate(&ctx, sig_data, sig_datalen);
- EVP_DigestFinal(&ctx, digest, &digestlen);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ EVP_DigestInit(pctx, EVP_sha1());
+ EVP_DigestUpdate(pctx, sig_data, sig_datalen);
+ EVP_DigestFinal(pctx, digest, &digestlen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
ok = RSA_verify(NID_sha1, digest, digestlen, sig, sig_len, rsa);
if (ok == 1) {
@@ -2744,6 +2912,7 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
} else if (strncmp(sig_type, "ssh-dss", 8) == 0) {
DSA *dsa;
DSA_SIG *dsa_sig;
+ BIGNUM *sig_r, *sig_s;
int ok;
dsa = EVP_PKEY_get1_DSA(pkey);
@@ -2761,26 +2930,57 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
sig_len);
dsa_sig = DSA_SIG_new();
- dsa_sig->r = BN_new();
- dsa_sig->s = BN_new();
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ DSA_SIG_get0(&sig_r, &sig_s, dsa_sig);
+#else
+ sig_r = dsa_sig->r;
+ sig_s = dsa_sig->s;
+#endif /* prior to OpenSSL-1.1.0 */
- if (BN_bin2bn(sig, 20, dsa_sig->r) == NULL) {
+ sig_r = BN_bin2bn(sig, 20, sig_r);
+ if (sig_r == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error obtaining 'r' DSA signature component: %s",
sftp_crypto_get_errors());
+ DSA_free(dsa);
+ DSA_SIG_free(dsa_sig);
res = -1;
}
- if (BN_bin2bn(sig + 20, 20, dsa_sig->s) == NULL) {
+ sig_s = BN_bin2bn(sig + 20, 20, sig_s);
+ if (sig_s == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error obtaining 's' DSA signature component: %s",
sftp_crypto_get_errors());
+ DSA_free(dsa);
+ DSA_SIG_free(dsa_sig);
res = -1;
}
- EVP_DigestInit(&ctx, EVP_sha1());
- EVP_DigestUpdate(&ctx, sig_data, sig_datalen);
- EVP_DigestFinal(&ctx, digest, &digestlen);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ EVP_DigestInit(pctx, EVP_sha1());
+ EVP_DigestUpdate(pctx, sig_data, sig_datalen);
+ EVP_DigestFinal(pctx, digest, &digestlen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+# if OPENSSL_VERSION_NUMBER >= 0x10100006L
+ DSA_SIG_set0(dsa_sig, sig_r, sig_s);
+# else
+ /* XXX What to do here? */
+# endif /* prior to OpenSSL-1.1.0-pre6 */
+#else
+ dsa_sig->r = sig_r;
+ dsa_sig->s = sig_s;
+#endif /* prior to OpenSSL-1.1.0 */
ok = DSA_do_verify(digest, digestlen, dsa_sig, dsa);
if (ok == 1) {
@@ -2801,6 +3001,7 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
strncmp(sig_type, "ecdsa-sha2-nistp521", 20) == 0) {
EC_KEY *ec;
ECDSA_SIG *ecdsa_sig;
+ BIGNUM *sig_r, *sig_s;
const EVP_MD *md = NULL;
int ok;
@@ -2822,8 +3023,15 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
sig = (unsigned char *) sftp_msg_read_data(p, &signature, &signaturelen,
sig_len);
- ecdsa_sig->r = sftp_msg_read_mpint(p, &sig, &sig_len);
- if (ecdsa_sig->r == NULL) {
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ ECDSA_SIG_get0(&sig_r, &sig_s, ecdsa_sig);
+#else
+ sig_r = ecdsa_sig->r;
+ sig_s = ecdsa_sig->s;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ sig_r = sftp_msg_read_mpint(p, &sig, &sig_len);
+ if (sig_r == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error reading 'r' ECDSA signature component: %s",
sftp_crypto_get_errors());
@@ -2831,8 +3039,8 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
return -1;
}
- ecdsa_sig->s = sftp_msg_read_mpint(p, &sig, &sig_len);
- if (ecdsa_sig->s == NULL) {
+ sig_s = sftp_msg_read_mpint(p, &sig, &sig_len);
+ if (sig_s == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error reading 's' ECDSA signature component: %s",
sftp_crypto_get_errors());
@@ -2854,12 +3062,33 @@ int sftp_keys_verify_signed_data(pool *p, const char *pubkey_algo,
md = EVP_sha512();
}
- EVP_DigestInit(&ctx, md);
- EVP_DigestUpdate(&ctx, sig_data, sig_datalen);
- EVP_DigestFinal(&ctx, digest, &digestlen);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pctx = EVP_MD_CTX_new();
+#else
+ pctx = &ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+
+ EVP_DigestInit(pctx, md);
+ EVP_DigestUpdate(pctx, sig_data, sig_datalen);
+ EVP_DigestFinal(pctx, digest, &digestlen);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
ec = EVP_PKEY_get1_EC_KEY(pkey);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+# if OPENSSL_VERSION_NUMBER >= 0x10100006L
+ ECDSA_SIG_set0(ecdsa_sig, sig_r, sig_s);
+# else
+ /* XXX What to do here? */
+# endif /* prior to OpenSSL-1.1.0-pre6 */
+#else
+ ecdsa_sig->r = sig_r;
+ ecdsa_sig->s = sig_s;
+#endif /* prior to OpenSSL-1.1.0 */
+
ok = ECDSA_do_verify(digest, digestlen, ecdsa_sig, ec);
if (ok == 1) {
res = 0;
diff --git a/contrib/mod_sftp/mac.c b/contrib/mod_sftp/mac.c
index 8660b93..e5713b3 100644
--- a/contrib/mod_sftp/mac.c
+++ b/contrib/mod_sftp/mac.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp MACs
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -66,14 +66,14 @@ static struct sftp_mac read_macs[] = {
{ NULL, 0, NULL, NULL, 0 },
{ NULL, 0, NULL, NULL, 0 }
};
-static HMAC_CTX hmac_read_ctxs[2];
+static HMAC_CTX *hmac_read_ctxs[2];
static struct umac_ctx *umac_read_ctxs[2];
static struct sftp_mac write_macs[] = {
{ NULL, 0, NULL, NULL, 0 },
{ NULL, 0, NULL, NULL, 0 }
};
-static HMAC_CTX hmac_write_ctxs[2];
+static HMAC_CTX *hmac_write_ctxs[2];
static struct umac_ctx *umac_write_ctxs[2];
static size_t mac_blockszs[2] = { 0, 0 };
@@ -103,12 +103,14 @@ static unsigned int get_next_write_index(void) {
static void switch_read_mac(void) {
/* First we can clear the read MAC, kept from rekeying. */
if (read_macs[read_mac_idx].key) {
- clear_mac(&(read_macs[read_mac_idx]));
-#if OPENSSL_VERSION_NUMBER > 0x000907000L
- HMAC_CTX_cleanup(&(hmac_read_ctxs[read_mac_idx]));
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ HMAC_CTX_reset(hmac_read_ctxs[read_mac_idx]);
+#elif OPENSSL_VERSION_NUMBER > 0x000907000L
+ HMAC_CTX_cleanup(hmac_read_ctxs[read_mac_idx]);
#else
- HMAC_cleanup(&(hmac_read_ctxs[read_mac_idx]));
+ HMAC_cleanup(hmac_read_ctxs[read_mac_idx]);
#endif
+
umac_reset(umac_read_ctxs[read_mac_idx]);
mac_blockszs[read_mac_idx] = 0;
@@ -127,11 +129,14 @@ static void switch_write_mac(void) {
/* First we can clear the write MAC, kept from rekeying. */
if (write_macs[write_mac_idx].key) {
clear_mac(&(write_macs[write_mac_idx]));
-#if OPENSSL_VERSION_NUMBER > 0x000907000L
- HMAC_CTX_cleanup(&(hmac_write_ctxs[write_mac_idx]));
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ HMAC_CTX_reset(hmac_write_ctxs[write_mac_idx]);
+#elif OPENSSL_VERSION_NUMBER > 0x000907000L
+ HMAC_CTX_cleanup(hmac_write_ctxs[write_mac_idx]);
#else
- HMAC_cleanup(&(hmac_write_ctxs[write_mac_idx]));
+ HMAC_cleanup(hmac_write_ctxs[write_mac_idx]);
#endif
+
umac_reset(umac_write_ctxs[write_mac_idx]);
/* Now we can switch the index. */
@@ -159,13 +164,14 @@ static void clear_mac(struct sftp_mac *mac) {
static int init_mac(pool *p, struct sftp_mac *mac, HMAC_CTX *hmac_ctx,
struct umac_ctx *umac_ctx) {
-#if OPENSSL_VERSION_NUMBER > 0x000907000L
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ HMAC_CTX_reset(hmac_ctx);
+#elif OPENSSL_VERSION_NUMBER > 0x000907000L
HMAC_CTX_init(hmac_ctx);
#else
/* Reset the HMAC context. */
HMAC_Init(hmac_ctx, NULL, 0, NULL);
#endif
- umac_reset(umac_ctx);
if (mac->algo_type == SFTP_MAC_ALGO_TYPE_HMAC) {
#if OPENSSL_VERSION_NUMBER > 0x000907000L
@@ -187,6 +193,7 @@ static int init_mac(pool *p, struct sftp_mac *mac, HMAC_CTX *hmac_ctx,
#endif
} else if (mac->algo_type == SFTP_MAC_ALGO_TYPE_UMAC64) {
+ umac_reset(umac_ctx);
umac_init(umac_ctx, mac->key);
}
@@ -363,7 +370,10 @@ static int get_mac(struct ssh2_packet *pkt, struct sftp_mac *mac,
static int set_mac_key(struct sftp_mac *mac, const EVP_MD *hash,
const unsigned char *k, uint32_t klen, const char *h, uint32_t hlen,
char *letter, const unsigned char *id, uint32_t id_len) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_MD_CTX ctx;
+#endif /* prior to OpenSSL-1.1.0 */
+ EVP_MD_CTX *pctx;
unsigned char *key = NULL;
size_t key_sz;
uint32_t key_len = 0;
@@ -383,77 +393,101 @@ static int set_mac_key(struct sftp_mac *mac, const EVP_MD *hash,
_exit(1);
}
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ pctx = &ctx;
+#else
+ pctx = EVP_MD_CTX_new();
+#endif /* prior to OpenSSL-1.1.0 */
+
/* In OpenSSL 0.9.6, many of the EVP_Digest* functions returned void, not
* int. Without these ugly OpenSSL version preprocessor checks, the
* compiler will error out with "void value not ignored as it ought to be".
*/
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&ctx, hash) != 1) {
+ if (EVP_DigestInit(pctx, hash) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing message digest: %s", sftp_crypto_get_errors());
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestInit(&ctx, hash);
+ EVP_DigestInit(pctx, hash);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, k, klen) != 1) {
+ if (EVP_DigestUpdate(pctx, k, klen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with K: %s", sftp_crypto_get_errors());
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, k, klen);
+ EVP_DigestUpdate(pctx, k, klen);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, h, hlen) != 1) {
+ if (EVP_DigestUpdate(pctx, h, hlen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with H: %s", sftp_crypto_get_errors());
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, h, hlen);
+ EVP_DigestUpdate(pctx, h, hlen);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, letter, sizeof(char)) != 1) {
+ if (EVP_DigestUpdate(pctx, letter, sizeof(char)) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with '%c': %s", *letter,
sftp_crypto_get_errors());
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, letter, sizeof(char));
+ EVP_DigestUpdate(pctx, letter, sizeof(char));
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, (char *) id, id_len) != 1) {
+ if (EVP_DigestUpdate(pctx, (char *) id, id_len) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with ID: %s", sftp_crypto_get_errors());
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, (char *) id, id_len);
+ EVP_DigestUpdate(pctx, (char *) id, id_len);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&ctx, key, &key_len) != 1) {
+ if (EVP_DigestFinal(pctx, key, &key_len) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finalizing message digest: %s", sftp_crypto_get_errors());
pr_memscrub(key, key_sz);
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestFinal(&ctx, key, &key_len);
+ EVP_DigestFinal(pctx, key, &key_len);
#endif
/* If we need more, keep hashing, as per RFC, until we have enough
@@ -466,64 +500,79 @@ static int set_mac_key(struct sftp_mac *mac, const EVP_MD *hash,
pr_signals_handle();
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&ctx, hash) != 1) {
+ if (EVP_DigestInit(pctx, hash) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error initializing message digest: %s", sftp_crypto_get_errors());
pr_memscrub(key, key_sz);
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestInit(&ctx, hash);
+ EVP_DigestInit(pctx, hash);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, k, klen) != 1) {
+ if (EVP_DigestUpdate(pctx, k, klen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with K: %s", sftp_crypto_get_errors());
pr_memscrub(key, key_sz);
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, k, klen);
+ EVP_DigestUpdate(pctx, k, klen);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, h, hlen) != 1) {
+ if (EVP_DigestUpdate(pctx, h, hlen) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with H: %s", sftp_crypto_get_errors());
pr_memscrub(key, key_sz);
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, h, hlen);
+ EVP_DigestUpdate(pctx, h, hlen);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&ctx, key, len) != 1) {
+ if (EVP_DigestUpdate(pctx, key, len) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error updating message digest with data: %s",
sftp_crypto_get_errors());
pr_memscrub(key, key_sz);
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestUpdate(&ctx, key, len);
+ EVP_DigestUpdate(pctx, key, len);
#endif
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&ctx, key + len, &len) != 1) {
+ if (EVP_DigestFinal(pctx, key + len, &len) != 1) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"error finalizing message digest: %s", sftp_crypto_get_errors());
pr_memscrub(key, key_sz);
free(key);
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+# endif /* OpenSSL-1.1.0 and later */
return -1;
}
#else
- EVP_DigestFinal(&ctx, key + len, &len);
+ EVP_DigestFinal(pctx, key + len, &len);
#endif
key_len += len;
@@ -532,6 +581,10 @@ static int set_mac_key(struct sftp_mac *mac, const EVP_MD *hash,
mac->key = key;
mac->keysz = key_sz;
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ EVP_MD_CTX_free(pctx);
+#endif /* OpenSSL-1.1.0 and later */
+
if (mac->algo_type == SFTP_MAC_ALGO_TYPE_HMAC) {
mac->key_len = EVP_MD_size(mac->digest);
@@ -604,7 +657,7 @@ int sftp_mac_set_read_key(pool *p, const EVP_MD *hash, const BIGNUM *k,
switch_read_mac();
mac = &(read_macs[read_mac_idx]);
- hmac_ctx = &(hmac_read_ctxs[read_mac_idx]);
+ hmac_ctx = hmac_read_ctxs[read_mac_idx];
umac_ctx = umac_read_ctxs[read_mac_idx];
bufsz = buflen = SFTP_MAC_BUFSZ;
@@ -642,7 +695,7 @@ int sftp_mac_read_data(struct ssh2_packet *pkt) {
int res;
mac = &(read_macs[read_mac_idx]);
- hmac_ctx = &(hmac_read_ctxs[read_mac_idx]);
+ hmac_ctx = hmac_read_ctxs[read_mac_idx];
umac_ctx = umac_read_ctxs[read_mac_idx];
if (mac->key == NULL) {
@@ -707,7 +760,7 @@ int sftp_mac_set_write_key(pool *p, const EVP_MD *hash, const BIGNUM *k,
switch_write_mac();
mac = &(write_macs[write_mac_idx]);
- hmac_ctx = &(hmac_write_ctxs[write_mac_idx]);
+ hmac_ctx = hmac_write_ctxs[write_mac_idx];
umac_ctx = umac_write_ctxs[write_mac_idx];
bufsz = buflen = SFTP_MAC_BUFSZ;
@@ -737,7 +790,7 @@ int sftp_mac_write_data(struct ssh2_packet *pkt) {
int res;
mac = &(write_macs[write_mac_idx]);
- hmac_ctx = &(hmac_write_ctxs[write_mac_idx]);
+ hmac_ctx = hmac_write_ctxs[write_mac_idx];
umac_ctx = umac_write_ctxs[write_mac_idx];
if (mac->key == NULL) {
@@ -755,18 +808,43 @@ int sftp_mac_write_data(struct ssh2_packet *pkt) {
return 0;
}
-int sftp_mac_init(void) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+/* In older versions of OpenSSL, there was not a way to dynamically allocate
+ * an HMAC_CTX object. Thus we have these static objects for those
+ * older versions.
+ */
+static HMAC_CTX read_ctx1, read_ctx2;
+static HMAC_CTX write_ctx1, write_ctx2;
+#endif /* prior to OpenSSL-1.1.0 */
- umac_read_ctxs[0] = umac_alloc();
- umac_read_ctxs[1] = umac_alloc();
+int sftp_mac_init(void) {
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ hmac_read_ctxs[0] = &read_ctx1;
+ hmac_read_ctxs[1] = &read_ctx2;
+ hmac_write_ctxs[0] = &write_ctx1;
+ hmac_write_ctxs[1] = &write_ctx2;
+#else
+ hmac_read_ctxs[0] = HMAC_CTX_new();
+ hmac_read_ctxs[1] = HMAC_CTX_new();
+ hmac_write_ctxs[0] = HMAC_CTX_new();
+ hmac_write_ctxs[1] = HMAC_CTX_new();
+#endif /* OpenSSL-1.1.0 and later */
- umac_write_ctxs[0] = umac_alloc();
- umac_write_ctxs[1] = umac_alloc();
+ umac_read_ctxs[0] = NULL;
+ umac_read_ctxs[1] = NULL;
+ umac_write_ctxs[0] = NULL;
+ umac_write_ctxs[1] = NULL;
return 0;
}
int sftp_mac_free(void) {
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ HMAC_CTX_free(hmac_read_ctxs[0]);
+ HMAC_CTX_free(hmac_read_ctxs[1]);
+ HMAC_CTX_free(hmac_write_ctxs[0]);
+ HMAC_CTX_free(hmac_write_ctxs[1]);
+#endif /* OpenSSL-1.1.0 and later */
umac_delete(umac_read_ctxs[0]);
umac_read_ctxs[0] = NULL;
diff --git a/contrib/mod_sftp/mod_sftp.c b/contrib/mod_sftp/mod_sftp.c
index 95cbd9d..eecf501 100644
--- a/contrib/mod_sftp/mod_sftp.c
+++ b/contrib/mod_sftp/mod_sftp.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -31,6 +31,7 @@
#include "packet.h"
#include "interop.h"
#include "crypto.h"
+#include "cipher.h"
#include "mac.h"
#include "keys.h"
#include "keystore.h"
@@ -1451,6 +1452,7 @@ static void sftp_mod_unload_ev(const void *event_data, void *user_data) {
sftp_interop_free();
sftp_keystore_free();
sftp_keys_free();
+ sftp_cipher_free();
sftp_mac_free();
pr_response_block(FALSE);
sftp_utf8_free();
@@ -1504,6 +1506,7 @@ static void sftp_shutdown_ev(const void *event_data, void *user_data) {
sftp_interop_free();
sftp_keystore_free();
sftp_keys_free();
+ sftp_cipher_free();
sftp_mac_free();
sftp_utf8_free();
@@ -1610,6 +1613,7 @@ static int sftp_init(void) {
pr_log_debug(DEBUG2, MOD_SFTP_VERSION ": using " OPENSSL_VERSION_TEXT);
sftp_keystore_init();
+ sftp_cipher_init();
sftp_mac_init();
pr_event_register(&sftp_module, "mod_ban.ban-class", sftp_ban_class_ev, NULL);
diff --git a/contrib/mod_sftp/msg.c b/contrib/mod_sftp/msg.c
index 1ec0e91..e00d24a 100644
--- a/contrib/mod_sftp/msg.c
+++ b/contrib/mod_sftp/msg.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp message format
- * Copyright (c) 2008-2013 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -20,8 +20,6 @@
* give permission to link this program with OpenSSL, and distribute the
* resulting executable, without including the source code for OpenSSL in the
* source distribution.
- *
- * $Id: msg.c,v 1.16 2013-10-07 01:29:05 castaglia Exp $
*/
#include "mod_sftp.h"
@@ -34,7 +32,6 @@
# include <execinfo.h>
#endif
-
#ifdef PR_USE_OPENSSL_ECC
/* Max GFp field length = 528 bits. SEC1 uncompressed encoding uses 2
* bitstring points. SEC1 specifies a 1 byte point type header.
@@ -198,43 +195,53 @@ uint64_t sftp_msg_read_long(pool *p, unsigned char **buf, uint32_t *buflen) {
BIGNUM *sftp_msg_read_mpint(pool *p, unsigned char **buf, uint32_t *buflen) {
BIGNUM *mpint = NULL;
- const unsigned char *data = NULL;
- uint32_t datalen = 0;
+ const unsigned char *data = NULL, *ptr = NULL;
+ uint32_t datalen = 0, len = 0;
- datalen = sftp_msg_read_int(p, buf, buflen);
+ len = sftp_msg_read_int(p, buf, buflen);
- if (*buflen < datalen) {
+ if (*buflen < len) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"message format error: unable to read %lu bytes of mpint (buflen = %lu)",
- (unsigned long) datalen, (unsigned long) *buflen);
+ (unsigned long) len, (unsigned long) *buflen);
log_stacktrace();
SFTP_DISCONNECT_CONN(SFTP_SSH2_DISCONNECT_BY_APPLICATION, NULL);
}
- if (datalen > (1024 * 16)) {
+ if (len > (1024 * 16)) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"message format error: unable to handle mpint of %lu bytes",
- (unsigned long) datalen);
+ (unsigned long) len);
log_stacktrace();
SFTP_DISCONNECT_CONN(SFTP_SSH2_DISCONNECT_BY_APPLICATION, NULL);
}
- data = (const unsigned char *) sftp_msg_read_data(p, buf, buflen, datalen);
- if (data == NULL) {
+ ptr = (const unsigned char *) sftp_msg_read_data(p, buf, buflen, len);
+ if (ptr == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"message format error: unable to read %lu bytes of mpint data",
- (unsigned long) datalen);
+ (unsigned long) len);
log_stacktrace();
SFTP_DISCONNECT_CONN(SFTP_SSH2_DISCONNECT_BY_APPLICATION, NULL);
}
- if (data[0] & 0x80) {
+ if ((ptr[0] & 0x80) != 0) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"message format error: negative mpint numbers not supported");
log_stacktrace();
SFTP_DISCONNECT_CONN(SFTP_SSH2_DISCONNECT_BY_APPLICATION, NULL);
}
+ /* Trim any leading zeros. */
+ data = ptr;
+ datalen = len;
+ while (datalen > 0 &&
+ *data == 0x00) {
+ pr_signals_handle();
+ data++;
+ datalen--;
+ }
+
mpint = BN_bin2bn(data, (int) datalen, NULL);
if (mpint == NULL) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
@@ -446,13 +453,15 @@ uint32_t sftp_msg_write_mpint(unsigned char **buf, uint32_t *buflen,
return sftp_msg_write_int(buf, buflen, 0);
}
- if (mpint->neg) {
+#if OPENSSL_VERSION_NUMBER >= 0x0090801fL
+ if (BN_is_negative(mpint)) {
(void) pr_log_writefile(sftp_logfd, MOD_SFTP_VERSION,
"message format error: unable to write mpint (negative numbers not "
"supported)");
log_stacktrace();
SFTP_DISCONNECT_CONN(SFTP_SSH2_DISCONNECT_BY_APPLICATION, NULL);
}
+#endif /* OpenSSL-0.9.8a or later */
datalen = BN_num_bytes(mpint) + 1;
diff --git a/contrib/mod_sftp/packet.c b/contrib/mod_sftp/packet.c
index 01f509d..45a8265 100644
--- a/contrib/mod_sftp/packet.c
+++ b/contrib/mod_sftp/packet.c
@@ -1414,6 +1414,7 @@ int sftp_ssh2_packet_handle(void) {
pr_response_clear(&resp_list);
pr_response_clear(&resp_err_list);
+ pr_response_set_pool(pkt->pool);
/* Note: Some of the SSH messages will be handled regardless of the
* sftp_sess_state flags; this is intentional, and is the way that
@@ -1549,6 +1550,7 @@ int sftp_ssh2_packet_handle(void) {
"Unsupported protocol sequence");
}
+ pr_response_set_pool(NULL);
return 0;
}
diff --git a/contrib/mod_sftp/scp.c b/contrib/mod_sftp/scp.c
index 6186805..e7e81af 100644
--- a/contrib/mod_sftp/scp.c
+++ b/contrib/mod_sftp/scp.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - mod_sftp SCP
- * Copyright (c) 2008-2015 TJ Saunders
+ * Copyright (c) 2008-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -40,6 +40,10 @@
struct scp_path {
char *path;
+
+ /* The original path, as provided in the scp command. */
+ const char *orig_path;
+
pr_fh_t *fh;
/* Points to the parent directory "context" path, if any. For handling
@@ -743,6 +747,7 @@ static int recv_finfo(pool *p, uint32_t channel_id, struct scp_path *sp,
"rejecting", sp->path);
write_confirm(p, channel_id, 1,
pstrcat(p, sp->path, ": cannot use directory (no -r option)", NULL));
+ sp->wrote_errors = TRUE;
return 1;
}
@@ -755,6 +760,7 @@ static int recv_finfo(pool *p, uint32_t channel_id, struct scp_path *sp,
sp->path, data[0]);
write_confirm(p, channel_id, 1,
pstrcat(p, sp->path, ": expected control message", NULL));
+ sp->wrote_errors = TRUE;
return 1;
}
@@ -881,6 +887,7 @@ static int recv_finfo(pool *p, uint32_t channel_id, struct scp_path *sp,
*/
parent_sp = pcalloc(scp_pool, sizeof(struct scp_path));
+ parent_sp->orig_path = pstrdup(scp_pool, sp->orig_path);
parent_sp->path = pstrdup(scp_pool, sp->filename);
parent_sp->filename = pstrdup(scp_pool, sp->filename);
parent_sp->best_path = pstrdup(scp_pool, sp->best_path);
@@ -1165,6 +1172,7 @@ static int recv_eod(pool *p, uint32_t channel_id, struct scp_path *sp,
write_confirm(p, channel_id, 1,
pstrcat(p, parent_sp->path, ": error setting mode: ", strerror(xerrno),
NULL));
+ sp->wrote_errors = TRUE;
ok = FALSE;
}
@@ -1203,8 +1211,9 @@ static int recv_eod(pool *p, uint32_t channel_id, struct scp_path *sp,
}
}
- if (ok)
+ if (ok) {
write_confirm(p, channel_id, 0, NULL);
+ }
return 1;
}
@@ -1243,12 +1252,14 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
if (!S_ISDIR(st.st_mode)) {
write_confirm(p, channel_id, 1,
pstrcat(p, sp->path, ": ", strerror(ENOTDIR), NULL));
+ sp->wrote_errors = TRUE;
return 1;
}
} else {
write_confirm(p, channel_id, 1,
pstrcat(p, sp->path, ": ", strerror(errno), NULL));
+ sp->wrote_errors = TRUE;
return 1;
}
@@ -1268,6 +1279,7 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
if (res < 0) {
write_confirm(p, channel_id, 1,
pstrcat(p, sp->path, ": ", strerror(errno), NULL));
+ sp->wrote_errors = TRUE;
return 1;
}
}
@@ -1300,8 +1312,19 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
parent_dir = sp->parent_dir->parent_dir;
}
- if (parent_dir) {
+ if (parent_dir != NULL) {
+ pr_trace_msg(trace_channel, 18,
+ "received EOD, resetting path from '%s' to '%s'", sp->path,
+ parent_dir->path);
sp->path = parent_dir->path;
+
+ } else {
+ if (sp->orig_path != NULL) {
+ sp->path = pstrdup(scp_pool, sp->orig_path);
+ }
+
+ pr_trace_msg(trace_channel, 18,
+ "received EOD, no parent found for '%s'", sp->path);
}
sp->parent_dir = parent_dir;
@@ -1384,7 +1407,6 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
write_confirm(p, channel_id, 1,
pstrcat(p, sp->filename, ": error truncating file: ",
strerror(xerrno), NULL));
-
sp->wrote_errors = TRUE;
}
}
@@ -1406,7 +1428,6 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
write_confirm(p, channel_id, 1,
pstrcat(p, sp->filename, ": error setting mode: ", strerror(xerrno),
NULL));
-
sp->wrote_errors = TRUE;
}
@@ -1430,7 +1451,6 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
"scp: error closing '%s': %s", sp->best_path, strerror(xerrno));
write_confirm(p, channel_id, 1,
pstrcat(p, sp->filename, ": ", strerror(xerrno), NULL));
-
sp->wrote_errors = TRUE;
}
@@ -1505,7 +1525,6 @@ static int recv_path(pool *p, uint32_t channel_id, struct scp_path *sp,
write_confirm(p, channel_id, 1,
pstrcat(p, sp->filename, ": error setting times: ", strerror(xerrno),
NULL));
-
sp->wrote_errors = TRUE;
}
@@ -2407,6 +2426,8 @@ int sftp_scp_set_params(pool *p, uint32_t channel_id, array_header *req) {
sp->path[--pathlen] = '\0';
}
+ sp->orig_path = pstrdup(paths->pool, sp->path);
+
if (pathlen > 0) {
*((struct scp_path **) push_array(paths->paths)) = sp;
}
@@ -2462,6 +2483,8 @@ int sftp_scp_set_params(pool *p, uint32_t channel_id, array_header *req) {
sp->path[--pathlen] = '\0';
}
+ sp->orig_path = pstrdup(paths->pool, sp->path);
+
if (pathlen > 0) {
*((struct scp_path **) push_array(paths->paths)) = sp;
}
@@ -2548,6 +2571,7 @@ int sftp_scp_open_session(uint32_t channel_id) {
src_sp = ((struct scp_path **) paths->paths->elts)[i];
dst_sp = pcalloc(sess->pool, sizeof(struct scp_path));
+ dst_sp->orig_path = pstrdup(sess->pool, src_sp->orig_path);
dst_sp->path = pstrdup(sess->pool, src_sp->path);
*((struct scp_path **) push_array(sess->paths)) = dst_sp;
diff --git a/contrib/mod_sql.c b/contrib/mod_sql.c
index 605dbfd..1fd2170 100644
--- a/contrib/mod_sql.c
+++ b/contrib/mod_sql.c
@@ -2,7 +2,7 @@
* ProFTPD: mod_sql -- SQL frontend
* Copyright (c) 1998-1999 Johnie Ingram.
* Copyright (c) 2001 Andrew Houghton.
- * Copyright (c) 2004-2014 TJ Saunders
+ * Copyright (c) 2004-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -22,8 +22,6 @@
* holders give permission to link this program with OpenSSL, and distribute
* the resulting executable, without including the source code for OpenSSL in
* the source distribution.
- *
- * $Id: mod_sql.c,v 1.247 2014-02-15 08:31:25 castaglia Exp $
*/
#include "conf.h"
@@ -751,8 +749,7 @@ static modret_t *sql_auth_openssl(cmd_rec *cmd, const char *plaintext,
* the form "{digest}hash".
*/
- EVP_MD_CTX md_ctxt;
- EVP_ENCODE_CTX base64_ctxt;
+ EVP_MD_CTX *md_ctx;
const EVP_MD *md;
/* According to RATS, the output buffer (buf) for EVP_EncodeBlock() needs to
@@ -793,12 +790,13 @@ static modret_t *sql_auth_openssl(cmd_rec *cmd, const char *plaintext,
return PR_ERROR_INT(cmd, PR_AUTH_BADPWD);
}
- EVP_DigestInit(&md_ctxt, md);
- EVP_DigestUpdate(&md_ctxt, plaintext, strlen(plaintext));
- EVP_DigestFinal(&md_ctxt, mdval, &mdlen);
+ md_ctx = EVP_MD_CTX_create();
+ EVP_DigestInit(md_ctx, md);
+ EVP_DigestUpdate(md_ctx, plaintext, strlen(plaintext));
+ EVP_DigestFinal(md_ctx, mdval, &mdlen);
+ EVP_MD_CTX_destroy(md_ctx);
memset(buf, '\0', sizeof(buf));
- EVP_EncodeInit(&base64_ctxt);
EVP_EncodeBlock(buf, mdval, (int) mdlen);
if (strcmp((char *) buf, hashvalue) == 0) {
diff --git a/contrib/mod_sql_mysql.c b/contrib/mod_sql_mysql.c
index d836a01..ba37fd9 100644
--- a/contrib/mod_sql_mysql.c
+++ b/contrib/mod_sql_mysql.c
@@ -1,7 +1,7 @@
/*
* ProFTPD: mod_sql_mysql -- Support for connecting to MySQL databases.
* Copyright (c) 2001 Andrew Houghton
- * Copyright (c) 2004-2015 TJ Saunders
+ * Copyright (c) 2004-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -545,8 +545,17 @@ MODRET cmd_open(cmd_rec *cmd) {
}
if (mysql_set_character_set(conn->mysql, encoding) != 0) {
- sql_log(DEBUG_FUNC, "%s", "exiting \tmysql cmd_open");
- return _build_error(cmd, conn);
+ /* Failing to set the character set should NOT be a fatal error.
+ * There are situations where, due to client/server mismatch, the
+ * requested character set may not be available. Thus for now,
+ * we simply log the failure.
+ *
+ * A future improvement might be to implement fallback behavior,
+ * trying to set "older" character sets as needed.
+ */
+ sql_log(DEBUG_FUNC, MOD_SQL_MYSQL_VERSION
+ ": failed to set character set '%s': %s (%u)", encoding,
+ mysql_error(conn->mysql), mysql_errno(conn->mysql));
}
sql_log(DEBUG_FUNC, "MySQL connection character set now '%s' (from '%s')",
diff --git a/contrib/mod_sql_passwd.c b/contrib/mod_sql_passwd.c
index d6afd65..097341e 100644
--- a/contrib/mod_sql_passwd.c
+++ b/contrib/mod_sql_passwd.c
@@ -1,6 +1,6 @@
/*
* ProFTPD: mod_sql_passwd -- Various SQL password handlers
- * Copyright (c) 2009-2014 TJ Saunders
+ * Copyright (c) 2009-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -20,8 +20,6 @@
* give permission to link this program with OpenSSL, and distribute the
* resulting executable, without including the source code for OpenSSL in
* the source distribution.
- *
- * $Id: mod_sql_passwd.c,v 1.22 2014-05-05 16:15:02 castaglia Exp $
*/
#include "conf.h"
@@ -199,7 +197,6 @@ static int get_pbkdf2_config(char *algo, const EVP_MD **md,
}
static char *sql_passwd_encode(pool *p, unsigned char *data, size_t data_len) {
- EVP_ENCODE_CTX base64_ctxt;
char *buf;
/* According to RATS, the output buffer for EVP_EncodeBlock() needs to be
@@ -211,7 +208,6 @@ static char *sql_passwd_encode(pool *p, unsigned char *data, size_t data_len) {
switch (sql_passwd_encoding) {
case SQL_PASSWD_USE_BASE64:
- EVP_EncodeInit(&base64_ctxt);
EVP_EncodeBlock((unsigned char *) buf, data, (int) data_len);
break;
@@ -254,7 +250,7 @@ static unsigned char *sql_passwd_hash(pool *p, const EVP_MD *md,
unsigned char *suffix, size_t suffix_len,
unsigned int *hash_len) {
- EVP_MD_CTX md_ctx;
+ EVP_MD_CTX *md_ctx;
unsigned char *hash;
hash = palloc(p, EVP_MAX_MD_SIZE);
@@ -264,69 +260,76 @@ static unsigned char *sql_passwd_hash(pool *p, const EVP_MD *md,
* compiler will error out with "void value not ignored as it ought to be".
*/
+ md_ctx = EVP_MD_CTX_create();
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestInit(&md_ctx, md) != 1) {
+ if (EVP_DigestInit(md_ctx, md) != 1) {
sql_log(DEBUG_WARN, MOD_SQL_PASSWD_VERSION
": error initializing '%s' digest: %s", OBJ_nid2ln(EVP_MD_type(md)),
get_crypto_errors());
+ EVP_MD_CTX_destroy(md_ctx);
errno = EPERM;
return NULL;
}
#else
- EVP_DigestInit(&md_ctx, md);
+ EVP_DigestInit(md_ctx, md);
#endif
if (prefix != NULL) {
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&md_ctx, prefix, prefix_len) != 1) {
+ if (EVP_DigestUpdate(md_ctx, prefix, prefix_len) != 1) {
sql_log(DEBUG_WARN, MOD_SQL_PASSWD_VERSION
": error updating '%s' digest: %s", OBJ_nid2ln(EVP_MD_type(md)),
get_crypto_errors());
+ EVP_MD_CTX_destroy(md_ctx);
errno = EPERM;
return NULL;
}
#else
- EVP_DigestUpdate(&md_ctx, prefix, prefix_len);
+ EVP_DigestUpdate(md_ctx, prefix, prefix_len);
#endif
}
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&md_ctx, data, data_len) != 1) {
+ if (EVP_DigestUpdate(md_ctx, data, data_len) != 1) {
sql_log(DEBUG_WARN, MOD_SQL_PASSWD_VERSION
": error updating '%s' digest: %s", OBJ_nid2ln(EVP_MD_type(md)),
get_crypto_errors());
+ EVP_MD_CTX_destroy(md_ctx);
errno = EPERM;
return NULL;
}
#else
- EVP_DigestUpdate(&md_ctx, data, data_len);
+ EVP_DigestUpdate(md_ctx, data, data_len);
#endif
if (suffix != NULL) {
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestUpdate(&md_ctx, suffix, suffix_len) != 1) {
+ if (EVP_DigestUpdate(md_ctx, suffix, suffix_len) != 1) {
sql_log(DEBUG_WARN, MOD_SQL_PASSWD_VERSION
": error updating '%s' digest: %s", OBJ_nid2ln(EVP_MD_type(md)),
get_crypto_errors());
+ EVP_MD_CTX_destroy(md_ctx);
errno = EPERM;
return NULL;
}
#else
- EVP_DigestUpdate(&md_ctx, suffix, suffix_len);
+ EVP_DigestUpdate(md_ctx, suffix, suffix_len);
#endif
}
#if OPENSSL_VERSION_NUMBER >= 0x000907000L
- if (EVP_DigestFinal(&md_ctx, hash, hash_len) != 1) {
+ if (EVP_DigestFinal(md_ctx, hash, hash_len) != 1) {
sql_log(DEBUG_WARN, MOD_SQL_PASSWD_VERSION
": error finishing '%s' digest: %s", OBJ_nid2ln(EVP_MD_type(md)),
get_crypto_errors());
+ EVP_MD_CTX_destroy(md_ctx);
errno = EPERM;
return NULL;
}
#else
- EVP_DigestFinal(&md_ctx, hash, hash_len);
+ EVP_DigestFinal(md_ctx, hash, hash_len);
#endif
+ EVP_MD_CTX_destroy(md_ctx);
return hash;
}
diff --git a/contrib/mod_sql_sqlite.c b/contrib/mod_sql_sqlite.c
index 24f6e06..d3c3de4 100644
--- a/contrib/mod_sql_sqlite.c
+++ b/contrib/mod_sql_sqlite.c
@@ -70,8 +70,19 @@ typedef struct conn_entry_struct {
static pool *conn_pool = NULL;
static array_header *conn_cache = NULL;
+#define SQLITE_TRACE_LEVEL 12
+static const char *trace_channel = "sql.sqlite";
+
MODRET sql_sqlite_close(cmd_rec *);
+static void db_err(void *user_data, int err_code, const char *err_msg) {
+ pr_trace_msg(trace_channel, 1, "(sqlite3): [error %d] %s", err_code, err_msg);
+}
+
+static void db_trace(void *user_data, const char *trace_msg) {
+ pr_trace_msg(trace_channel, SQLITE_TRACE_LEVEL, "(sqlite3): %s", trace_msg);
+}
+
static conn_entry_t *sql_sqlite_get_conn(char *name) {
register unsigned int i = 0;
@@ -272,7 +283,9 @@ static modret_t *sql_sqlite_get_data(cmd_rec *cmd) {
MODRET sql_sqlite_open(cmd_rec *cmd) {
conn_entry_t *entry = NULL;
db_conn_t *conn = NULL;
+ const char *stmt = NULL;
int res;
+ unsigned int nretries = 0;
sql_log(DEBUG_FUNC, "%s", "entering \tsqlite cmd_open");
@@ -321,13 +334,43 @@ MODRET sql_sqlite_open(cmd_rec *cmd) {
return PR_ERROR_MSG(cmd, MOD_SQL_SQLITE_VERSION, errstr);
}
+ if (pr_trace_get_level(trace_channel) >= SQLITE_TRACE_LEVEL) {
+ sqlite3_trace(conn->dbh, db_trace, NULL);
+ }
+
/* Tell SQLite to only use in-memory journals. This is necessary for
* mod_sql_sqlite to work properly, for SQLLog statements, when a chroot
* is used. Note that the MEMORY journal mode of SQLite is supported
* only for SQLite-3.6.5 and later.
*/
- res = sqlite3_exec(conn->dbh, "PRAGMA journal_mode = MEMORY;", NULL, NULL,
- NULL);
+ stmt = "PRAGMA journal_mode = MEMORY;";
+ res = sqlite3_exec(conn->dbh, stmt, NULL, NULL, NULL);
+
+ /* Make sure we handle contention here, just like any other statement
+ * (Issue#385).
+ */
+ while (res != SQLITE_OK) {
+ if (res == SQLITE_BUSY) {
+ struct timeval tv;
+
+ nretries++;
+ sql_log(DEBUG_FUNC, "attempt #%u, database busy, trying '%s' again",
+ nretries, stmt);
+
+ /* Sleep for short bit, then try again. */
+ tv.tv_sec = 0;
+ tv.tv_usec = 500000L;
+
+ if (select(0, NULL, NULL, NULL, &tv) < 0) {
+ if (errno == EINTR) {
+ pr_signals_handle();
+ }
+ }
+
+ res = sqlite3_exec(conn->dbh, stmt, NULL, NULL, NULL);
+ }
+ }
+
if (res != SQLITE_OK) {
sql_log(DEBUG_FUNC, "error setting MEMORY journal mode: %s",
sqlite3_errmsg(conn->dbh));
@@ -1052,6 +1095,10 @@ static int sql_sqlite_init(void) {
pr_event_register(&sql_sqlite_module, "core.module-unload",
sql_sqlite_mod_unload_ev, NULL);
+#if defined(SQLITE_CONFIG_LOG)
+ sqlite3_config(SQLITE_CONFIG_LOG, db_err, NULL);
+#endif /* SQLite_CONFIG_LOG */
+
/* Check that the SQLite headers used match the version of the SQLite
* library used.
*
diff --git a/contrib/mod_tls.c b/contrib/mod_tls.c
index ecd9f56..4ba80a7 100644
--- a/contrib/mod_tls.c
+++ b/contrib/mod_tls.c
@@ -2,7 +2,7 @@
* mod_tls - An RFC2228 SSL/TLS module for ProFTPD
*
* Copyright (c) 2000-2002 Peter 'Luna' Runestig <peter at runestig.com>
- * Copyright (c) 2002-2016 TJ Saunders <tj at castaglia.org>
+ * Copyright (c) 2002-2017 TJ Saunders <tj at castaglia.org>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifi-
@@ -47,8 +47,10 @@
*/
#include <openssl/err.h>
+#include <openssl/conf.h>
#include <openssl/crypto.h>
#include <openssl/evp.h>
+#include <openssl/ssl3.h>
#include <openssl/x509v3.h>
#include <openssl/pkcs12.h>
#include <openssl/rand.h>
@@ -84,6 +86,57 @@ extern xaset_t *server_list;
* Last updated on 2013-01-13.
*/
+static const char *trace_channel = "tls";
+
+static DH *get_dh(BIGNUM *p, BIGNUM *g) {
+ DH *dh;
+
+ dh = DH_new();
+ if (dh == NULL) {
+ return NULL;
+ }
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ if (DH_set0_pqg(dh, p, NULL, g) != 1) {
+ pr_trace_msg(trace_channel, 3, "error setting DH p/q parameters: %s",
+ ERR_error_string(ERR_get_error(), NULL));
+ DH_free(dh);
+ return NULL;
+ }
+#else
+ dh->p = p;
+ dh->g = g;
+#endif /* OpenSSL 1.1.x and later */
+
+ return dh;
+}
+
+static X509 *read_cert(FILE *fh, SSL_CTX *ssl_ctx) {
+ X509 *cert;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ cert = PEM_read_X509(fh, NULL, SSL_CTX_get_default_passwd_cb(ssl_ctx),
+ SSL_CTX_get_default_passwd_cb_userdata(ssl_ctx));
+#else
+ cert = PEM_read_X509(fh, NULL, ssl_ctx->default_passwd_callback,
+ ssl_ctx->default_passwd_callback_userdata);
+#endif /* OpenSSL-1.1.x and later */
+
+ return cert;
+}
+
+static int get_pkey_type(EVP_PKEY *pkey) {
+ int pkey_type;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pkey_type = EVP_PKEY_id(pkey);
+#else
+ pkey_type = EVP_PKEY_type(pkey->type);
+#endif /* OpenSSL 1.1.x and later */
+
+ return pkey_type;
+}
+
/*
-----BEGIN DH PARAMETERS-----
MEYCQQC6VcB8+WFeFz/HQnk/vXreozxdppNBY4gN8rdzitjTDppPBswzU4ZL/hBS
@@ -105,22 +158,16 @@ static unsigned char dh512_g[] = {
};
static DH *get_dh512(void) {
- DH *dh;
+ BIGNUM *p, *g;
- dh = DH_new();
- if (dh == NULL)
- return NULL;
-
- dh->p = BN_bin2bn(dh512_p, sizeof(dh512_p), NULL);
- dh->g = BN_bin2bn(dh512_g, sizeof(dh512_g), NULL);
-
- if (dh->p == NULL ||
- dh->g == NULL) {
- DH_free(dh);
+ p = BN_bin2bn(dh512_p, sizeof(dh512_p), NULL);
+ g = BN_bin2bn(dh512_g, sizeof(dh512_g), NULL);
+ if (p == NULL ||
+ g == NULL) {
return NULL;
}
- return dh;
+ return get_dh(p, g);
}
/*
@@ -147,22 +194,16 @@ static unsigned char dh768_g[] = {
};
static DH *get_dh768(void) {
- DH *dh;
-
- dh = DH_new();
- if (dh == NULL)
- return NULL;
-
- dh->p = BN_bin2bn(dh768_p, sizeof(dh768_p), NULL);
- dh->g = BN_bin2bn(dh768_g, sizeof(dh768_g), NULL);
+ BIGNUM *p, *g;
- if (dh->p == NULL ||
- dh->g == NULL) {
- DH_free(dh);
+ p = BN_bin2bn(dh768_p, sizeof(dh768_p), NULL);
+ g = BN_bin2bn(dh768_g, sizeof(dh768_g), NULL);
+ if (p == NULL ||
+ g == NULL) {
return NULL;
}
- return dh;
+ return get_dh(p, g);
}
/*
@@ -192,22 +233,16 @@ static unsigned char dh1024_g[] = {
};
static DH *get_dh1024(void) {
- DH *dh;
+ BIGNUM *p, *g;
- dh = DH_new();
- if (dh == NULL)
- return NULL;
-
- dh->p = BN_bin2bn(dh1024_p, sizeof(dh1024_p), NULL);
- dh->g = BN_bin2bn(dh1024_g, sizeof(dh1024_g), NULL);
-
- if (dh->p == NULL ||
- dh->g == NULL) {
- DH_free(dh);
+ p = BN_bin2bn(dh1024_p, sizeof(dh1024_p), NULL);
+ g = BN_bin2bn(dh1024_g, sizeof(dh1024_g), NULL);
+ if (p == NULL ||
+ g == NULL) {
return NULL;
}
- return(dh);
+ return get_dh(p, g);
}
/*
@@ -244,22 +279,16 @@ static unsigned char dh1536_g[] = {
};
static DH *get_dh1536(void) {
- DH *dh;
+ BIGNUM *p, *g;
- dh = DH_new();
- if (dh == NULL)
- return NULL;
-
- dh->p = BN_bin2bn(dh1536_p, sizeof(dh1536_p), NULL);
- dh->g = BN_bin2bn(dh1536_g, sizeof(dh1536_g), NULL);
-
- if (dh->p == NULL ||
- dh->g == NULL) {
- DH_free(dh);
+ p = BN_bin2bn(dh1536_p, sizeof(dh1536_p), NULL);
+ g = BN_bin2bn(dh1536_g, sizeof(dh1536_g), NULL);
+ if (p == NULL ||
+ g == NULL) {
return NULL;
}
- return dh;
+ return get_dh(p, g);
}
/*
@@ -303,22 +332,16 @@ static unsigned char dh2048_g[] = {
};
static DH *get_dh2048(void) {
- DH *dh;
-
- dh = DH_new();
- if (dh == NULL)
- return NULL;
-
- dh->p = BN_bin2bn(dh2048_p, sizeof(dh2048_p), NULL);
- dh->g = BN_bin2bn(dh2048_g, sizeof(dh2048_g), NULL);
+ BIGNUM *p, *g;
- if (dh->p == NULL ||
- dh->g == NULL) {
- DH_free(dh);
+ p = BN_bin2bn(dh2048_p, sizeof(dh2048_p), NULL);
+ g = BN_bin2bn(dh2048_g, sizeof(dh2048_g), NULL);
+ if (p == NULL ||
+ g == NULL) {
return NULL;
}
- return dh;
+ return get_dh(p, g);
}
/* ASN1_BIT_STRING_cmp was renamed in 0.9.5 */
@@ -549,8 +572,8 @@ static int tls_sess_cache_remove(void);
static int tls_sess_cache_status(pr_ctrls_t *, int);
#endif /* PR_USE_CTRLS */
static int tls_sess_cache_add_sess_cb(SSL *, SSL_SESSION *);
-static SSL_SESSION *tls_sess_cache_get_sess_cb(SSL *, unsigned char *, int,
- int *);
+static SSL_SESSION *tls_sess_cache_get_sess_cb(SSL *, const unsigned char *,
+ int, int *);
static void tls_sess_cache_delete_sess_cb(SSL_CTX *, SSL_SESSION *);
#ifdef PR_USE_CTRLS
@@ -561,8 +584,6 @@ static ctrls_acttab_t tls_acttab[];
static int tls_ctrl_need_init_handshake = TRUE;
static int tls_data_need_init_handshake = TRUE;
-static const char *trace_channel = "tls";
-
static void tls_diags_cb(const SSL *ssl, int where, int ret) {
const char *str = "(unknown)";
int w;
@@ -581,8 +602,29 @@ static void tls_diags_cb(const SSL *ssl, int where, int ret) {
int ssl_state;
ssl_state = SSL_get_state(ssl);
- if (ssl_state == SSL_ST_OK) {
- str = "ok";
+ switch (ssl_state) {
+#ifdef SSL_ST_BEFORE
+ case SSL_ST_BEFORE:
+ str = "before";
+ break;
+#endif
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ case TLS_ST_OK:
+#else
+ case SSL_ST_OK:
+#endif /* OpenSSL-1.1.x and later */
+ str = "ok";
+ break;
+
+#ifdef SSL_ST_RENEGOTIATE
+ case SSL_ST_RENEGOTIATE:
+ str = "renegotiating";
+ break;
+#endif
+
+ default:
+ break;
}
}
@@ -591,8 +633,12 @@ static void tls_diags_cb(const SSL *ssl, int where, int ret) {
ssl_state = SSL_get_state(ssl);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ if (ssl_state == TLS_ST_SR_CLNT_HELLO) {
+#else
if (ssl_state == SSL3_ST_SR_CLNT_HELLO_A ||
ssl_state == SSL23_ST_SR_CLNT_HELLO_A) {
+#endif /* OpenSSL-1.1.x and later */
/* If we have already completed our initial handshake, then this might
* a session renegotiation.
@@ -628,7 +674,8 @@ static void tls_diags_cb(const SSL *ssl, int where, int ret) {
}
}
-#if OPENSSL_VERSION_NUMBER >= 0x009080cfL
+#if OPENSSL_VERSION_NUMBER >= 0x009080cfL && \
+ OPENSSL_VERSION_NUMBER < 0x10100000L
} else if (ssl_state & SSL_ST_RENEGOTIATE) {
if ((ssl == ctrl_ssl && !tls_ctrl_need_init_handshake) ||
(ssl != ctrl_ssl && !tls_data_need_init_handshake)) {
@@ -670,6 +717,11 @@ static void tls_diags_cb(const SSL *ssl, int where, int ret) {
tls_log("[info] %s: %s", str, SSL_state_string_long(ssl));
}
+ } else if (where & SSL_CB_HANDSHAKE_START) {
+ if (tls_opts & TLS_OPT_ENABLE_DIAGS) {
+ tls_log("[info] %s: %s", str, SSL_state_string_long(ssl));
+ }
+
} else if (where & SSL_CB_HANDSHAKE_DONE) {
if (ssl == ctrl_ssl) {
if (tls_ctrl_need_init_handshake == FALSE) {
@@ -781,7 +833,18 @@ static void tls_msg_cb(int io_flag, int version, int content_type,
#endif
default:
+#ifdef SSL3_RT_HEADER
+ /* OpenSSL calls this callback for SSL records received; filter those
+ * from true "unknowns".
+ */
+ if (version == 0 &&
+ (content_type != SSL3_RT_HEADER ||
+ buflen != SSL3_RT_HEADER_LENGTH)) {
+ tls_log("[msg] unknown/unsupported version: %d", version);
+ }
+#else
tls_log("[msg] unknown/unsupported version: %d", version);
+#endif
break;
}
@@ -1084,12 +1147,15 @@ static int tls_cert_match_dns_san(pool *p, X509 *cert, const char *dns_name) {
sans = X509_get_ext_d2i(cert, NID_subject_alt_name, NULL, NULL);
if (sans != NULL) {
- register unsigned int i;
+ register int i;
int nsans = sk_GENERAL_NAME_num(sans);
for (i = 0; i < nsans; i++) {
- GENERAL_NAME *alt_name = sk_GENERAL_NAME_value(sans, i);
+ GENERAL_NAME *alt_name;
+ pr_signals_handle();
+
+ alt_name = sk_GENERAL_NAME_value(sans, i);
if (alt_name->type == GEN_DNS) {
char *dns_san;
size_t dns_sanlen;
@@ -1146,12 +1212,15 @@ static int tls_cert_match_ip_san(pool *p, X509 *cert, const char *ipstr) {
sans = X509_get_ext_d2i(cert, NID_subject_alt_name, NULL, NULL);
if (sans != NULL) {
- register unsigned int i;
+ register int i;
int nsans = sk_GENERAL_NAME_num(sans);
for (i = 0; i < nsans; i++) {
- GENERAL_NAME *alt_name = sk_GENERAL_NAME_value(sans, i);
+ GENERAL_NAME *alt_name;
+
+ pr_signals_handle();
+ alt_name = sk_GENERAL_NAME_value(sans, i);
if (alt_name->type == GEN_IPADD) {
unsigned char *san_data = NULL;
int have_ipstr = FALSE, san_datalen;
@@ -1278,8 +1347,6 @@ static int tls_cert_match_cn(pool *p, X509 *cert, const char *name,
/* Convert the CN field to a string, by way of an ASN1 object. */
cn_asn1 = X509_NAME_ENTRY_get_data(cn_entry);
if (cn_asn1 == NULL) {
- X509_NAME_ENTRY_free(cn_entry);
-
pr_trace_msg(trace_channel, 12,
"unable to check certificate CommonName against '%s': "
"error converting CommoName atribute to ASN.1: %s", name,
@@ -1298,8 +1365,6 @@ static int tls_cert_match_cn(pool *p, X509 *cert, const char *name,
cn_len = strlen(cn_str);
if (ASN1_STRING_length(cn_asn1) != cn_len) {
- X509_NAME_ENTRY_free(cn_entry);
-
tls_log("%s", "cert CommonName contains embedded NULs, rejecting as "
"possible spoof attempt");
tls_log("suspicious CommonName value: '%s'",
@@ -1323,7 +1388,6 @@ static int tls_cert_match_cn(pool *p, X509 *cert, const char *name,
/* XXX Implement wildcard checking. */
}
- X509_NAME_ENTRY_free(cn_entry);
return matched;
}
@@ -2441,8 +2505,8 @@ static DH *tls_dh_cb(SSL *ssl, int is_export, int keylen) {
*/
pkey = SSL_get_privatekey(ssl);
if (pkey != NULL) {
- if (EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA ||
- EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA) {
+ if (get_pkey_type(pkey) == EVP_PKEY_RSA ||
+ get_pkey_type(pkey) == EVP_PKEY_DSA) {
pkeylen = EVP_PKEY_bits(pkey);
if (pkeylen < TLS_DH_MIN_LEN) {
@@ -2868,7 +2932,7 @@ static int tls_init_ctx(void) {
}
SSL_CTX_set_tmp_dh_callback(ssl_ctx, tls_dh_cb);
-#ifdef PR_USE_OPENSSL_ECC
+#if defined(PR_USE_OPENSSL_ECC) && OPENSSL_VERSION_NUMBER < 0x10100000L
SSL_CTX_set_tmp_ecdh_callback(ssl_ctx, tls_ecdh_cb);
#endif /* PR_USE_OPENSSL_ECC */
@@ -3152,8 +3216,7 @@ static int tls_init_server(void) {
return -1;
}
- cert = PEM_read_X509(fh, NULL, ssl_ctx->default_passwd_callback,
- ssl_ctx->default_passwd_callback_userdata);
+ cert = read_cert(fh, ssl_ctx);
if (cert == NULL) {
PRIVS_RELINQUISH
tls_log("error reading TLSRSACertificateFile '%s': %s", tls_rsa_cert_file,
@@ -3225,8 +3288,7 @@ static int tls_init_server(void) {
return -1;
}
- cert = PEM_read_X509(fh, NULL, ssl_ctx->default_passwd_callback,
- ssl_ctx->default_passwd_callback_userdata);
+ cert = read_cert(fh, ssl_ctx);
if (cert == NULL) {
PRIVS_RELINQUISH
tls_log("error reading TLSDSACertificateFile '%s': %s", tls_dsa_cert_file,
@@ -3298,8 +3360,7 @@ static int tls_init_server(void) {
return -1;
}
- cert = PEM_read_X509(fh, NULL, ssl_ctx->default_passwd_callback,
- ssl_ctx->default_passwd_callback_userdata);
+ cert = read_cert(fh, ssl_ctx);
if (cert == NULL) {
PRIVS_RELINQUISH
tls_log("error reading TLSECCertificateFile '%s': %s", tls_ec_cert_file,
@@ -3435,7 +3496,7 @@ static int tls_init_server(void) {
if (pkey &&
tls_pkey) {
- switch (EVP_PKEY_type(pkey->type)) {
+ switch (get_pkey_type(pkey)) {
case EVP_PKEY_RSA:
tls_pkey->flags |= TLS_PKEY_USE_RSA;
tls_pkey->flags &= ~(TLS_PKEY_USE_DSA|TLS_PKEY_USE_EC);
@@ -3496,7 +3557,7 @@ static int tls_init_server(void) {
* pointer around until after the handling of a cert chain file.
*/
if (pkey != NULL) {
- switch (EVP_PKEY_type(pkey->type)) {
+ switch (get_pkey_type(pkey)) {
case EVP_PKEY_RSA:
server_rsa_cert = cert;
break;
@@ -4470,14 +4531,14 @@ static void tls_end_sess(SSL *ssl, int strms, int flags) {
switch (err_code) {
case SSL_ERROR_WANT_READ:
tls_log("SSL_shutdown error: WANT_READ");
- pr_log_debug(DEBUG0, MOD_TLS_VERSION
- ": SSL_shutdown error: WANT_READ");
break;
case SSL_ERROR_WANT_WRITE:
tls_log("SSL_shutdown error: WANT_WRITE");
- pr_log_debug(DEBUG0, MOD_TLS_VERSION
- ": SSL_shutdown error: WANT_WRITE");
+ break;
+
+ case SSL_ERROR_SSL:
+ tls_log("SSL_shutdown error: SSL: %s", tls_get_errors());
break;
case SSL_ERROR_ZERO_RETURN:
@@ -4519,6 +4580,10 @@ static void tls_end_sess(SSL *ssl, int strms, int flags) {
*/
break;
+ case SSL_ERROR_SSL:
+ tls_log("SSL_shutdown error: SSL: %s", tls_get_errors());
+ break;
+
case SSL_ERROR_SYSCALL:
if (errno != 0 &&
errno != EOF &&
@@ -4768,9 +4833,23 @@ static int tls_dotlogin_allow(const char *user) {
}
while ((file_cert = PEM_read_X509(fp, NULL, NULL, NULL))) {
+ const ASN1_BIT_STRING *client_sig = NULL, *file_sig = NULL;
+
pr_signals_handle();
- if (!M_ASN1_BIT_STRING_cmp(client_cert->signature, file_cert->signature)) {
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ X509_get0_signature(&client_sig, NULL, client_cert);
+ X509_get0_signature(&file_sig, NULL, file_cert);
+#else
+ client_sig = client_cert->signature;
+ file_sig = file_cert->signature;
+#endif /* OpenSSL-1.1.x and later */
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ if (!ASN1_STRING_cmp(client_sig, file_sig)) {
+#else
+ if (!M_ASN1_BIT_STRING_cmp(client_sig, file_sig)) {
+#endif /* OpenSSL-1.1.x and later */
allow_user = TRUE;
}
@@ -5238,87 +5317,98 @@ static void tls_setup_cert_ext_environ(const char *env_prefix, X509 *cert) {
static void tls_setup_cert_dn_environ(const char *env_prefix, X509_NAME *name) {
register unsigned int i = 0;
+ int nentries;
char *k, *v;
- for (i = 0; i < sk_X509_NAME_ENTRY_num(name->entries); i++) {
- X509_NAME_ENTRY *entry = sk_X509_NAME_ENTRY_value(name->entries, i);
- int nid = OBJ_obj2nid(entry->object);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ nentries = X509_NAME_entry_count(name);
+#else
+ nentries = sk_X509_NAME_ENTRY_num(name->entries);
+#endif /* OpenSSL-1.1.x and later */
+
+ for (i = 0; i < nentries; i++) {
+ X509_NAME_ENTRY *entry;
+ unsigned char *entry_data;
+ int nid, entry_len;
+
+ pr_signals_handle();
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ entry = X509_NAME_get_entry(name, i);
+ nid = OBJ_obj2nid(X509_NAME_ENTRY_get_object(entry));
+ entry_data = ASN1_STRING_data(X509_NAME_ENTRY_get_data(entry));
+ entry_len = ASN1_STRING_length(X509_NAME_ENTRY_get_data(entry));
+#else
+ entry = sk_X509_NAME_ENTRY_value(name->entries, i);
+ nid = OBJ_obj2nid(entry->object);
+ entry_data = entry->value->data;
+ entry_len = entry->value->length;
+#endif /* OpenSSL-1.1.x and later */
switch (nid) {
case NID_countryName:
k = pstrcat(session.pool, env_prefix, "C", NULL);
- v = pstrndup(session.pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(session.pool, k, v);
break;
case NID_commonName:
k = pstrcat(session.pool, env_prefix, "CN", NULL);
- v = pstrndup(session.pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(session.pool, k, v);
break;
case NID_description:
k = pstrcat(main_server->pool, env_prefix, "D", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_givenName:
k = pstrcat(main_server->pool, env_prefix, "G", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_initials:
k = pstrcat(main_server->pool, env_prefix, "I", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_localityName:
k = pstrcat(main_server->pool, env_prefix, "L", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_organizationName:
k = pstrcat(main_server->pool, env_prefix, "O", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_organizationalUnitName:
k = pstrcat(main_server->pool, env_prefix, "OU", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_stateOrProvinceName:
k = pstrcat(main_server->pool, env_prefix, "ST", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_surname:
k = pstrcat(main_server->pool, env_prefix, "S", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_title:
k = pstrcat(main_server->pool, env_prefix, "T", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
@@ -5328,15 +5418,13 @@ static void tls_setup_cert_dn_environ(const char *env_prefix, X509_NAME *name) {
case NID_uniqueIdentifier:
#endif
k = pstrcat(main_server->pool, env_prefix, "UID", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
case NID_pkcs9_emailAddress:
k = pstrcat(main_server->pool, env_prefix, "Email", NULL);
- v = pstrndup(main_server->pool, (const char *) entry->value->data,
- entry->value->length);
+ v = pstrndup(session.pool, (const char *) entry_data, entry_len);
pr_env_set(main_server->pool, k, v);
break;
@@ -5354,6 +5442,8 @@ static void tls_setup_cert_environ(const char *env_prefix, X509 *cert) {
if (tls_opts & TLS_OPT_STD_ENV_VARS) {
char buf[80] = {'\0'};
ASN1_INTEGER *serial = X509_get_serialNumber(cert);
+ X509_ALGOR *algo;
+ X509_PUBKEY *pubkey;
memset(buf, '\0', sizeof(buf));
snprintf(buf, sizeof(buf) - 1, "%lu", X509_get_version(cert) + 1);
@@ -5422,7 +5512,12 @@ static void tls_setup_cert_environ(const char *env_prefix, X509 *cert) {
BIO_free(bio);
bio = BIO_new(BIO_s_mem());
- i2a_ASN1_OBJECT(bio, cert->cert_info->signature->algorithm);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ X509_get0_signature(NULL, &algo, cert);
+#else
+ algo = cert->cert_info->signature;
+#endif /* OpenSSL-1.1.x and later */
+ i2a_ASN1_OBJECT(bio, algo->algorithm);
datalen = BIO_get_mem_data(bio, &data);
data[datalen] = '\0';
@@ -5433,7 +5528,14 @@ static void tls_setup_cert_environ(const char *env_prefix, X509 *cert) {
BIO_free(bio);
bio = BIO_new(BIO_s_mem());
- i2a_ASN1_OBJECT(bio, cert->cert_info->key->algor->algorithm);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ pubkey = X509_get_X509_PUBKEY(cert);
+ X509_PUBKEY_get0_param(NULL, NULL, NULL, &algo, pubkey);
+#else
+ pubkey = cert->cert_info->key;
+ algo = pubkey->algor;
+#endif /* OpenSSL-1.1.x and later */
+ i2a_ASN1_OBJECT(bio, algo->algorithm);
datalen = BIO_get_mem_data(bio, &data);
data[datalen] = '\0';
@@ -5482,12 +5584,20 @@ static void tls_setup_environ(SSL *ssl) {
if (ssl_session) {
char buf[SSL_MAX_SSL_SESSION_ID_LENGTH*2+1];
register unsigned int i = 0;
+ const unsigned char *sess_data;
+ unsigned int sess_datalen;
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ sess_data = SSL_SESSION_get_id(ssl_session, &sess_datalen);
+#else
+ sess_datalen = ssl_session->session_id_length;
+ sess_data = ssl_session->session_id;
+#endif /* OpenSSL-1.1.x and later */
/* Have to obtain a stringified session ID the hard way. */
memset(buf, '\0', sizeof(buf));
- for (i = 0; i < ssl_session->session_id_length; i++) {
- snprintf(&(buf[i*2]), sizeof(buf) - (i*2) - 1, "%02X",
- ssl_session->session_id[i]);
+ for (i = 0; i < sess_datalen; i++) {
+ snprintf(&(buf[i*2]), sizeof(buf) - (i*2) - 1, "%02X", sess_data[i]);
}
buf[sizeof(buf)-1] = '\0';
@@ -5626,8 +5736,13 @@ static int tls_verify_cb(int ok, X509_STORE_CTX *ctx) {
if (!ok) {
X509 *cert = X509_STORE_CTX_get_current_cert(ctx);
- int depth = X509_STORE_CTX_get_error_depth(ctx);
+ int ctx_error, depth = X509_STORE_CTX_get_error_depth(ctx);
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ verify_err = X509_STORE_CTX_get_error(ctx);
+#else
verify_err = ctx->error;
+#endif /* OpenSSL-1.1.x and later */
tls_log("error: unable to verify certificate at depth %d", depth);
tls_log("error: cert subject: %s", tls_x509_name_oneline(
@@ -5636,10 +5751,17 @@ static int tls_verify_cb(int ok, X509_STORE_CTX *ctx) {
X509_get_issuer_name(cert)));
/* Catch a too long certificate chain here. */
- if (depth > tls_verify_depth)
+ if (depth > tls_verify_depth) {
X509_STORE_CTX_set_error(ctx, X509_V_ERR_CERT_CHAIN_TOO_LONG);
+ }
+
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ ctx_error = X509_STORE_CTX_get_error(ctx);
+#else
+ ctx_error = ctx->error;
+#endif /* OpenSSL-1.1.x and later */
- switch (ctx->error) {
+ switch (ctx_error) {
case X509_V_ERR_CERT_CHAIN_TOO_LONG:
case X509_V_ERR_CERT_HAS_EXPIRED:
case X509_V_ERR_CERT_REVOKED:
@@ -5649,7 +5771,7 @@ static int tls_verify_cb(int ok, X509_STORE_CTX *ctx) {
case X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE:
case X509_V_ERR_APPLICATION_VERIFICATION:
tls_log("client certificate failed verification: %s",
- X509_verify_cert_error_string(ctx->error));
+ X509_verify_cert_error_string(ctx_error));
ok = 0;
break;
@@ -5658,7 +5780,7 @@ static int tls_verify_cb(int ok, X509_STORE_CTX *ctx) {
int count = X509_PURPOSE_get_count();
tls_log("client certificate failed verification: %s",
- X509_verify_cert_error_string(ctx->error));
+ X509_verify_cert_error_string(ctx_error));
for (i = 0; i < count; i++) {
X509_PURPOSE *purp = X509_PURPOSE_get0(i);
@@ -5671,7 +5793,7 @@ static int tls_verify_cb(int ok, X509_STORE_CTX *ctx) {
default:
tls_log("error verifying client certificate: [%d] %s",
- ctx->error, X509_verify_cert_error_string(ctx->error));
+ ctx_error, X509_verify_cert_error_string(ctx_error));
ok = 0;
break;
}
@@ -5691,11 +5813,10 @@ static int tls_verify_cb(int ok, X509_STORE_CTX *ctx) {
* <rse at engelshall.com>. Comments by Ralf.
*/
static int tls_verify_crl(int ok, X509_STORE_CTX *ctx) {
- X509_OBJECT obj;
X509_NAME *subject = NULL, *issuer = NULL;
X509 *xs = NULL;
- X509_CRL *crl = NULL;
- X509_STORE_CTX store_ctx;
+ STACK_OF(X509_CRL) *crls = NULL;
+ X509_STORE_CTX *store_ctx = NULL;
int n, res;
register int i = 0;
@@ -5754,128 +5875,163 @@ static int tls_verify_crl(int ok, X509_STORE_CTX *ctx) {
/* Try to retrieve a CRL corresponding to the _subject_ of
* the current certificate in order to verify its integrity.
*/
- memset(&obj, 0, sizeof(obj));
+ store_ctx = X509_STORE_CTX_new();
#if OPENSSL_VERSION_NUMBER > 0x000907000L
- if (X509_STORE_CTX_init(&store_ctx, tls_crl_store, NULL, NULL) <= 0) {
+ if (X509_STORE_CTX_init(store_ctx, tls_crl_store, NULL, NULL) <= 0) {
tls_log("error initializing CRL store context: %s", tls_get_errors());
+ X509_STORE_CTX_free(store_ctx);
return ok;
}
#else
- X509_STORE_CTX_init(&store_ctx, tls_crl_store, NULL, NULL);
+ X509_STORE_CTX_init(store_ctx, tls_crl_store, NULL, NULL);
#endif
- res = X509_STORE_get_by_subject(&store_ctx, X509_LU_CRL, subject, &obj);
- crl = obj.data.crl;
-
- if (res > 0 &&
- crl != NULL) {
- EVP_PKEY *pubkey;
- char buf[512];
- int len;
- BIO *b = BIO_new(BIO_s_mem());
-
- BIO_printf(b, "CA CRL: Issuer: ");
- X509_NAME_print(b, issuer, 0);
-
- BIO_printf(b, ", lastUpdate: ");
- ASN1_UTCTIME_print(b, crl->crl->lastUpdate);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ crls = X509_STORE_CTX_get1_crls(store_ctx, subject);
+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L
+ crls = X509_STORE_get1_crls(store_ctx, subject);
+#else
+ /* Your OpenSSL is before 1.0.0. You really need to upgrade. */
+ crls = NULL;
+#endif /* OpenSSL-1.1.x and later */
+ if (crls != NULL) {
+ for (i = 0; i < sk_X509_CRL_num(crls); i++) {
+ X509_CRL *crl = NULL;
+ EVP_PKEY *pubkey;
+ char buf[512];
+ int len;
+ BIO *b = BIO_new(BIO_s_mem());
+
+ BIO_printf(b, "CA CRL: Issuer: ");
+ X509_NAME_print(b, issuer, 0);
+
+ BIO_printf(b, ", lastUpdate: ");
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ ASN1_UTCTIME_print(b, X509_CRL_get_lastUpdate(crl));
+#else
+ ASN1_UTCTIME_print(b, crl->crl->lastUpdate);
+#endif /* OpenSSL-1.1.x and later */
- BIO_printf(b, ", nextUpdate: ");
- ASN1_UTCTIME_print(b, crl->crl->nextUpdate);
+ BIO_printf(b, ", nextUpdate: ");
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ ASN1_UTCTIME_print(b, X509_CRL_get_nextUpdate(crl));
+#else
+ ASN1_UTCTIME_print(b, crl->crl->nextUpdate);
+#endif /* OpenSSL-1.1.x and later */
- len = BIO_read(b, buf, sizeof(buf) - 1);
- if (len >= sizeof(buf)) {
- len = sizeof(buf)-1;
- }
- buf[len] = '\0';
+ len = BIO_read(b, buf, sizeof(buf) - 1);
+ if (len >= sizeof(buf)) {
+ len = sizeof(buf)-1;
+ }
+ buf[len] = '\0';
- BIO_free(b);
+ BIO_free(b);
+ tls_log("%s", buf);
- tls_log("%s", buf);
+ pubkey = X509_get_pubkey(xs);
- pubkey = X509_get_pubkey(xs);
+ /* Verify the signature on this CRL */
+ res = X509_CRL_verify(crl, pubkey);
+ if (pubkey) {
+ EVP_PKEY_free(pubkey);
+ }
- /* Verify the signature on this CRL */
- res = X509_CRL_verify(crl, pubkey);
+ if (res <= 0) {
+ tls_log("invalid signature on CRL: %s", tls_get_errors());
- if (pubkey) {
- EVP_PKEY_free(pubkey);
- }
+ X509_STORE_CTX_set_error(ctx, X509_V_ERR_CRL_SIGNATURE_FAILURE);
+ sk_X509_CRL_free(crls);
+ X509_STORE_CTX_cleanup(store_ctx);
+ X509_STORE_CTX_free(store_ctx);
+ return FALSE;
+ }
- if (res <= 0) {
- tls_log("invalid signature on CRL: %s", tls_get_errors());
+ /* Check date of CRL to make sure it's not expired */
+ res = X509_cmp_current_time(X509_CRL_get_nextUpdate(crl));
+ if (res == 0) {
+ tls_log("CRL has invalid nextUpdate field: %s", tls_get_errors());
- X509_STORE_CTX_set_error(ctx, X509_V_ERR_CRL_SIGNATURE_FAILURE);
- X509_OBJECT_free_contents(&obj);
- X509_STORE_CTX_cleanup(&store_ctx);
- return FALSE;
- }
+ X509_STORE_CTX_set_error(ctx,
+ X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD);
+ sk_X509_CRL_free(crls);
+ X509_STORE_CTX_cleanup(store_ctx);
+ X509_STORE_CTX_free(store_ctx);
+ return FALSE;
+ }
- /* Check date of CRL to make sure it's not expired */
- i = X509_cmp_current_time(X509_CRL_get_nextUpdate(crl));
- if (i == 0) {
- tls_log("CRL has invalid nextUpdate field: %s", tls_get_errors());
- X509_STORE_CTX_set_error(ctx, X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD);
- X509_OBJECT_free_contents(&obj);
- X509_STORE_CTX_cleanup(&store_ctx);
- return FALSE;
- }
+ if (res < 0) {
+ /* XXX This is a bit draconian, rejecting all certificates if the CRL
+ * has expired. See also Bug#3216, about automatically reloading
+ * the CRL file when it has expired.
+ */
+ tls_log("%s", "CRL is expired, revoking all certificates until an "
+ "updated CRL is obtained");
- if (i < 0) {
- /* XXX This is a bit draconian, rejecting all certificates if the CRL
- * has expired. See also Bug#3216, about automatically reloading
- * the CRL file when it has expired.
- */
- tls_log("%s", "CRL is expired, revoking all certificates until an "
- "updated CRL is obtained");
- X509_STORE_CTX_set_error(ctx, X509_V_ERR_CRL_HAS_EXPIRED);
- X509_OBJECT_free_contents(&obj);
- X509_STORE_CTX_cleanup(&store_ctx);
- return FALSE;
+ X509_STORE_CTX_set_error(ctx, X509_V_ERR_CRL_HAS_EXPIRED);
+ sk_X509_CRL_free(crls);
+ X509_STORE_CTX_cleanup(store_ctx);
+ X509_STORE_CTX_free(store_ctx);
+ return FALSE;
+ }
}
- X509_OBJECT_free_contents(&obj);
+ sk_X509_CRL_free(crls);
+ crls = NULL;
}
/* Try to retrieve a CRL corresponding to the _issuer_ of
* the current certificate in order to check for revocation.
*/
- memset(&obj, 0, sizeof(obj));
-
- res = X509_STORE_get_by_subject(&store_ctx, X509_LU_CRL, issuer, &obj);
- crl = obj.data.crl;
- if (res > 0 &&
- crl != NULL) {
-
- /* Check if the current certificate is revoked by this CRL */
- n = sk_X509_REVOKED_num(X509_CRL_get_REVOKED(crl));
-
- for (i = 0; i < n; i++) {
- X509_REVOKED *revoked;
- ASN1_INTEGER *sn;
-
- revoked = sk_X509_REVOKED_value(X509_CRL_get_REVOKED(crl), i);
- sn = revoked->serialNumber;
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ crls = X509_STORE_CTX_get1_crls(store_ctx, subject);
+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L
+ crls = X509_STORE_get1_crls(store_ctx, subject);
+#else
+ /* Your OpenSSL is before 1.0.0. You really need to upgrade. */
+ crls = NULL;
+#endif /* OpenSSL-1.1.x and later */
+ if (crls != NULL) {
+ for (i = 0; i < sk_X509_CRL_num(crls); i++) {
+ register int j;
+ X509_CRL *crl;
+
+ crl = sk_X509_CRL_value(crls, i);
+
+ /* Check if the current certificate is revoked by this CRL */
+ n = sk_X509_REVOKED_num(X509_CRL_get_REVOKED(crl));
+ for (j = 0; j < n; j++) {
+ X509_REVOKED *revoked;
+ ASN1_INTEGER *sn;
+
+ revoked = sk_X509_REVOKED_value(X509_CRL_get_REVOKED(crl), i);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ sn = X509_REVOKED_get0_serialNumber(revoked);
+#else
+ sn = revoked->serialNumber;
+#endif /* OpenSSL-1.1.x and later */
- if (ASN1_INTEGER_cmp(sn, X509_get_serialNumber(xs)) == 0) {
- long serial = ASN1_INTEGER_get(sn);
- char *cp = tls_x509_name_oneline(issuer);
+ if (ASN1_INTEGER_cmp(sn, X509_get_serialNumber(xs)) == 0) {
+ long serial = ASN1_INTEGER_get(sn);
+ char *cp = tls_x509_name_oneline(issuer);
- tls_log("certificate with serial number %ld (0x%lX) revoked per CRL "
- "from issuer '%s'", serial, serial, cp ? cp : "(ERROR)");
+ tls_log("certificate with serial number %ld (0x%lX) revoked per CRL "
+ "from issuer '%s'", serial, serial, cp ? cp : "(ERROR)");
- X509_STORE_CTX_set_error(ctx, X509_V_ERR_CERT_REVOKED);
- X509_OBJECT_free_contents(&obj);
- X509_STORE_CTX_cleanup(&store_ctx);
- return FALSE;
+ X509_STORE_CTX_set_error(ctx, X509_V_ERR_CERT_REVOKED);
+ sk_X509_CRL_free(crls);
+ X509_STORE_CTX_cleanup(store_ctx);
+ X509_STORE_CTX_free(store_ctx);
+ return FALSE;
+ }
}
}
- X509_OBJECT_free_contents(&obj);
+ sk_X509_CRL_free(crls);
}
- X509_STORE_CTX_cleanup(&store_ctx);
+ X509_STORE_CTX_cleanup(store_ctx);
+ X509_STORE_CTX_free(store_ctx);
return ok;
}
@@ -5884,6 +6040,7 @@ static int tls_verify_ocsp_url(X509_STORE_CTX *ctx, X509 *cert,
const char *url) {
BIO *conn;
X509 *issuing_cert = NULL;
+ X509_STORE *store = NULL;
X509_NAME *subj = NULL;
const char *subj_name;
char *host = NULL, *port = NULL, *uri = NULL;
@@ -6214,7 +6371,12 @@ static int tls_verify_ocsp_url(X509_STORE_CTX *ctx, X509 *cert,
return FALSE;
}
- res = OCSP_basic_verify(basic_resp, NULL, ctx->ctx, 0);
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
+ store = X509_STORE_CTX_get0_store(ctx);
+#else
+ store = ctx->ctx;
+#endif /* OpenSSL-1.1.x and later */
+ res = OCSP_basic_verify(basic_resp, NULL, store, 0);
if (res != 1) {
tls_log("error verifying basic response from OCSP responder at '%s': %s",
url, tls_get_errors());
@@ -6917,7 +7079,7 @@ static int tls_sess_cache_add_sess_cb(SSL *ssl, SSL_SESSION *sess) {
}
static SSL_SESSION *tls_sess_cache_get_sess_cb(SSL *ssl,
- unsigned char *sess_id, int sess_id_len, int *do_copy) {
+ const unsigned char *sess_id, int sess_id_len, int *do_copy) {
SSL_SESSION *sess;
/* Indicate to OpenSSL that the ref count should not be incremented
@@ -7003,6 +7165,7 @@ static int tls_netio_close_cb(pr_netio_stream_t *nstrm) {
if (nstrm->strm_type == PR_NETIO_STRM_DATA &&
nstrm->strm_mode == PR_NETIO_IO_WR) {
+ tls_end_sess(ssl, nstrm->strm_type, 0);
pr_table_remove(tls_data_rd_nstrm->notes, TLS_NETIO_NOTE, NULL);
pr_table_remove(tls_data_wr_nstrm->notes, TLS_NETIO_NOTE, NULL);
tls_data_netio = NULL;
diff --git a/contrib/mod_tls.h b/contrib/mod_tls.h
index b8cb001..32078d1 100644
--- a/contrib/mod_tls.h
+++ b/contrib/mod_tls.h
@@ -80,7 +80,7 @@ typedef struct sess_cache_st {
/* Add a new session entry to the cache. The provided sess_id is effectively
* the cache lookup key.
*/
- int (*add)(struct sess_cache_st *cache, unsigned char *sess_id,
+ int (*add)(struct sess_cache_st *cache, const unsigned char *sess_id,
unsigned int sess_id_len, time_t expires, SSL_SESSION *sess);
/* Retrieve a session from the cache, using the provided sess_id key. */
diff --git a/contrib/mod_tls_shmcache.c b/contrib/mod_tls_shmcache.c
index b558349..ea31925 100644
--- a/contrib/mod_tls_shmcache.c
+++ b/contrib/mod_tls_shmcache.c
@@ -2,7 +2,7 @@
* ProFTPD: mod_tls_shmcache -- a module which provides a shared SSL session
* cache using SysV shared memory
*
- * Copyright (c) 2009-2013 TJ Saunders
+ * Copyright (c) 2009-2016 TJ Saunders
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -27,7 +27,6 @@
* For more information contact TJ Saunders <tj at castaglia.org>.
*
* --- DO NOT DELETE BELOW THIS LINE ----
- * $Id: mod_tls_shmcache.c,v 1.15 2013-11-05 21:37:16 castaglia Exp $
* $Libraries: -lssl -lcrypto$
*/
@@ -1423,6 +1422,7 @@ static int shmcache_status(tls_sess_cache_t *cache,
SSL_SESSION *sess;
TLS_D2I_SSL_SESSION_CONST unsigned char *ptr;
time_t ts;
+ int ssl_version;
ptr = entry->sess_data;
sess = d2i_SSL_SESSION(NULL, &ptr, entry->sess_datalen);
@@ -1435,13 +1435,13 @@ static int shmcache_status(tls_sess_cache_t *cache,
statusf(arg, "%s", " -----BEGIN SSL SESSION PARAMETERS-----");
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
/* XXX Directly accessing these fields cannot be a Good Thing. */
if (sess->session_id_length > 0) {
register unsigned int j;
char *sess_id_str;
sess_id_str = pcalloc(tmp_pool, (sess->session_id_length * 2) + 1);
-
for (j = 0; j < sess->session_id_length; j++) {
sprintf((char *) &(sess_id_str[j*2]), "%02X", sess->session_id[j]);
}
@@ -1454,7 +1454,6 @@ static int shmcache_status(tls_sess_cache_t *cache,
char *sid_ctx_str;
sid_ctx_str = pcalloc(tmp_pool, (sess->sid_ctx_length * 2) + 1);
-
for (j = 0; j < sess->sid_ctx_length; j++) {
sprintf((char *) &(sid_ctx_str[j*2]), "%02X", sess->sid_ctx[j]);
}
@@ -1462,7 +1461,16 @@ static int shmcache_status(tls_sess_cache_t *cache,
statusf(arg, " Session ID Context: %s", sid_ctx_str);
}
- switch (sess->ssl_version) {
+ ssl_version = sess->ssl_version;
+#else
+# if OPENSSL_VERSION_NUMBER >= 0x10100006L
+ ssl_version = SSL_SESSION_get_protocol_version(sess);
+# else
+ ssl_version = 0;
+# endif /* prior to OpenSSL-1.1.0-pre5 */
+#endif /* prior to OpenSSL-1.1.x */
+
+ switch (ssl_version) {
case SSL3_VERSION:
statusf(arg, " Protocol: %s", "SSLv3");
break;
diff --git a/doc/modules/mod_auth.html b/doc/modules/mod_auth.html
index dac74d3..b0961c3 100644
--- a/doc/modules/mod_auth.html
+++ b/doc/modules/mod_auth.html
@@ -1,6 +1,3 @@
-<!-- $Id: mod_auth.html,v 1.11 2013-08-19 16:28:23 castaglia Exp $ -->
-<!-- $Source: /home/proftpd-core/backup/proftp-cvsroot/proftpd/doc/modules/mod_auth.html,v $ -->
-
<html>
<head>
<title>ProFTPD module mod_auth</title>
@@ -20,6 +17,9 @@ ProFTPD 1.3.<i>x</i>, and is compiled by default.
<h2>Directives</h2>
<ul>
<li><a href="#AllowChrootSymlinks">AllowChrootSymlinks</a>
+ <li><a href="#AnonRequirePassword">AnonRequirePassword</a>
+ <li><a href="#AuthAliasOnly">AuthAliasOnly</a>
+ <li><a href="#AuthUsingAlias">AuthUsingAlias</a>
<li><a href="#CreateHome">CreateHome</a>
<li><a href="#DefaultRoot">DefaultRoot</a>
<li><a href="#MaxLoginAttempts">MaxLoginAttempts</a>
@@ -30,6 +30,7 @@ ProFTPD 1.3.<i>x</i>, and is compiled by default.
<li><a href="#TimeoutLogin">TimeoutLogin</a>
<li><a href="#TimeoutSession">TimeoutSession</a>
<li><a href="#UseFtpUsers">UseFtpUsers</a>
+ <li><a href="#UserAlias">UserAlias</a>
<li><a href="#UserPassword">UserPassword</a>
</ul>
@@ -62,6 +63,104 @@ users to run their untrusted webapps (<i>e.g.</i> PHP, Perl, Ruby, Python,
<p>
<hr>
+<h2><a name="AnonRequirePassword">AnonRequirePassword</a></h2>
+<strong>Syntax:</strong> AnonRequirePassword <em>off|on</em><br>
+<strong>Default:</strong> AnonRequirePassword off<br>
+<strong>Context:</strong> <code><Anonymous></code><br>
+<strong>Module:</strong> mod_auth<br>
+<strong>Compatibility:</strong> 0.99.0 and later
+
+<p>
+Normally, anonymous FTP logins do not require the client to authenticate
+themselves using <em>real</em> passwords; instead, anonymous FTP logins are
+expected to provide their email address as the password. Using
+<code>AnonRequirePassword on</code>, however, will <i>require</i> a real
+password for that login. The provided password will be matched against the
+<code><Anonymous></code> user's password.
+
+<p>
+This functionality, in conjunction with the <code>AuthUsingAlias</code>
+directive, can be used to create "guest" accounts, which function exactly as
+normal anonymous logins do, <b>but</b> which require a valid password on the
+server's host system.
+
+<p>
+See also: <a href="#AuthUsingAlias"><code>AuthUsingAlias</code></a>, <a href="#UserAlias"><code>UserAlias</code></a>
+
+<p>
+<hr>
+<h2><a name="AuthAliasOnly">AuthAliasOnly</a></h2>
+<strong>Syntax:</strong> AuthAliasOnly <em>off|on</em><br>
+<strong>Default:</strong> AuthAliasOnly off<br>
+<strong>Context:</strong> server config, <code><VirtualHost></code>, <code><Global></code><br>
+<strong>Module:</strong> mod_auth<br>
+<strong>Compatibility:</strong> 1.1.3 and later
+
+<p>
+The <code>AuthAliasOnly</code> directive restricts authentication to "aliased"
+logins only, <i>i.e.</i> those usernames provided by clients which are "mapped"
+to a <em>real</em> username by the <code>UserAlias</code> directive. Using
+<code>AuthAliasOnly on</code> in a particular configuration context will
+cause ProFTPD to completely ignore all <em>non-aliased</em> logins for the
+entire context.
+
+<p>
+See also: <a href="#AuthUsingAlias"><code>AuthUsingAlias</code></a>, <a href="#UserAlias"><code>UserAlias</code></a>
+
+<p>
+<hr>
+<h2><a name="AuthUsingAlias">AuthUsingAlias</a></h2>
+<strong>Syntax:</strong> AuthUsingAlias <em>off|on</em><br>
+<strong>Default:</strong> AuthUsingAlias off<br>
+<strong>Context:</strong> <code><Anonymous></code><br>
+<strong>Module:</strong> mod_auth<br>
+<strong>Compatibility:</strong> 1.2.0pre9 and later
+
+<p>
+The <code>AuthUsingAlias</code> directive disables the resolving of aliased usernames (via <code>UserAlias</code>) for authentication purposes. For example,
+if you have aliased the username "anonymous" to the real user "ftp", the
+password gets checked against the user "anonymous". When
+<code>AuthUsingAlias</code> is <em>disabled</em>, the checked username would
+be "ftp".
+
+<p>
+Here is an example of an <code><Anonymous></code> section where only
+the aliased usernames are allowed to login:
+<pre>
+ <Anonymous ~ftp>
+ AuthUsingAlias on
+ UserAlias anonymous nobody
+ UserAlias ftp nobody
+
+ # Make this a read-only anonymous login
+ <Limit WRITE>
+ DenyAll
+ </Limit>
+ </Anonymous>
+</pre>
+and here, by contrast, is an <code><Anonymous></code> section where
+certain real users are allowed to login <i>using their own passwords</i> (even
+though it will still be considered an <i>anonymous</i> login):
+<pre>
+ <Anonymous ~ftp>
+ # Require real passwords for these logins
+ AnonRequirePassword on
+
+ AuthAliasOnly on
+ AuthUsingAlias on
+
+ # This is the list of authorized users; password checks will occur
+ # using their own respective passwords, not user "nobody".
+ UserAlias fred nobody
+ UserAlias jenn nobody
+ </Anonymous>
+</pre>
+
+<p>
+See also: <a href="#AnonRequirePassword"><code>AnonRequirePassword</code></a>, <a href="#UserAlias"><code>UserAlias</code></a>
+
+<p>
+<hr>
<h2><a name="CreateHome">CreateHome</a></h2>
<strong>Syntax:</strong> CreateHome <em>off|on [mode] [skel path] [dirmode mode]</em><br>
<strong>Default:</strong> None<br>
@@ -353,6 +452,37 @@ using the <code>UseFtpUsers</code> directive, <i>e.g.</i>:
<p>
<hr>
+<h2><a name="UserAlias">UserAlias</a></h2>
+<strong>Syntax:</strong> UserAlias <em>alias real-user</em><br>
+<strong>Default:</strong> None<br>
+<strong>Context:</strong> server config, <code><VirtualHost></code>, <code><Global></code>, <code><Anonymous></code><br>
+<strong>Module:</strong> mod_auth<br>
+<strong>Compatibility:</strong> 0.99.0 and later
+
+<p>
+ProFTPD requires a real username (<i>i.e.</i> known via
+<code>/etc/passwd</code>, <code>AuthUserFile</code>, LDAP, SQL, RADIUS,
+<i>etc</i>) when authenticating a client. There <i>are</i>, however, times
+when an additional <em>alias</em> is required <i>but</i> is undesirable to
+provide an additional login accounts.
+
+<p>
+The <code>UserAlias</code> directive provides a mechanism to do just this.
+A typical and common example of <code>UserAlias</code> is for
+<code><Anonymous></code> configuration sections. It is conventional for
+the server to use user "ftp" as the primary authentication user; it is common
+practice to allow users to login using the name "anonymous". This is achieved
+by using the following in the config file:
+<pre>
+ <Anonymous ~ftp>
+ ...
+ UserAlias anonymous ftp
+ ...
+ </Anonymous>
+</pre>
+
+<p>
+<hr>
<h2><a name="UserPassword">UserPassword</a></h2>
<strong>Syntax:</strong> UserPassword <em>user encrypted-password</em><br>
<strong>Default:</strong> None<br>
@@ -395,19 +525,12 @@ Example configuration:
The <code>mod_auth</code> module is compiled by default.
<p>
-<hr><br>
-
-Author: <i>$Author: castaglia $</i><br>
-Last Updated: <i>$Date: 2013-08-19 16:28:23 $</i><br>
-
-<br><hr>
-
+<hr>
<font size=2><b><i>
-© Copyright 2002-2013<br>
+© Copyright 2002-2016<br>
All Rights Reserved<br>
</i></b></font>
-
-<hr><br>
+<hr>
</body>
</html>
diff --git a/include/version.h b/include/version.h
index 4a27172..8fe3652 100644
--- a/include/version.h
+++ b/include/version.h
@@ -1,8 +1,8 @@
#include "buildstamp.h"
/* Application version (in various forms) */
-#define PROFTPD_VERSION_NUMBER 0x0001030508
-#define PROFTPD_VERSION_TEXT "1.3.5b"
+#define PROFTPD_VERSION_NUMBER 0x0001030510
+#define PROFTPD_VERSION_TEXT "1.3.5d"
/* Module API version */
#define PR_MODULE_API_VERSION 0x20
diff --git a/modules/mod_auth.c b/modules/mod_auth.c
index abe6ff8..3865761 100644
--- a/modules/mod_auth.c
+++ b/modules/mod_auth.c
@@ -854,7 +854,7 @@ static void ensure_open_passwd(pool *p) {
static int setup_env(pool *p, cmd_rec *cmd, char *user, char *pass) {
struct passwd *pw;
config_rec *c, *tmpc;
- char *origuser, *ourname,*anonname = NULL,*anongroup = NULL,*ugroup = NULL;
+ char *origuser, *ourname = NULL, *anonname = NULL, *anongroup = NULL, *ugroup = NULL;
char *defaulttransfermode, *defroot = NULL,*defchdir = NULL,*xferlog = NULL;
const char *sess_ttyname;
int aclp, i, res = 0, allow_chroot_symlinks = TRUE, showsymlinks;
@@ -879,6 +879,18 @@ static int setup_env(pool *p, cmd_rec *cmd, char *user, char *pass) {
}
pw = pr_auth_getpwnam(p, user);
+ if (pw == NULL &&
+ c != NULL &&
+ ourname != NULL) {
+ /* If the client is authenticating using an alias (e.g. "AuthAliasOnly on"),
+ * then we need to try checking using the real username, too (Bug#4255).
+ */
+ pr_trace_msg("auth", 16,
+ "no user entry found for <Anonymous> alias '%s', using '%s'", user,
+ ourname);
+ pw = pr_auth_getpwnam(p, ourname);
+ }
+
if (pw == NULL) {
int auth_code = PR_AUTH_NOPWD;
@@ -3474,8 +3486,9 @@ MODRET set_useralias(cmd_rec *cmd) {
/* Note: only merge this directive down if it is not appearing in an
* <Anonymous> context.
*/
- if (!check_context(cmd, CONF_ANON))
- c->flags |= CF_MERGEDOWN;
+ if (!check_context(cmd, CONF_ANON)) {
+ c->flags |= CF_MERGEDOWN_MULTI;
+ }
return PR_HANDLED(cmd);
}
diff --git a/modules/mod_cap.c b/modules/mod_cap.c
index 7824899..0ca6c50 100644
--- a/modules/mod_cap.c
+++ b/modules/mod_cap.c
@@ -1,7 +1,7 @@
/*
* ProFTPD - FTP server daemon
* Copyright (c) 1997, 1998 Public Flood Software
- * Copyright (c) 2003-2013 The ProFTPD Project team
+ * Copyright (c) 2003-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -299,11 +299,21 @@ MODRET cap_post_host(cmd_rec *cmd) {
MODRET cap_post_pass(cmd_rec *cmd) {
int cap_root_revoke = TRUE, res;
config_rec *c;
+ unsigned char *cap_engine = NULL;
uid_t dst_uid = PR_ROOT_UID;
if (!use_capabilities)
return PR_DECLINED(cmd);
+ /* Check to see if we have been disabled via e.g. mod_ifsession. */
+ cap_engine = get_param_ptr(main_server->conf, "CapabilitiesEngine", FALSE);
+ if (cap_engine != NULL) {
+ use_capabilities = *cap_engine;
+ if (use_capabilities == FALSE) {
+ return PR_DECLINED(cmd);
+ }
+ }
+
/* Check for which specific capabilities to include/exclude. */
c = find_config(main_server->conf, CONF_PARAM, "CapabilitiesSet", FALSE);
if (c != NULL) {
diff --git a/modules/mod_facl.c b/modules/mod_facl.c
index c39612d..40e5bc1 100644
--- a/modules/mod_facl.c
+++ b/modules/mod_facl.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - FTP server daemon
- * Copyright (c) 2004-2014 The ProFTPD Project team
+ * Copyright (c) 2004-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -22,9 +22,7 @@
* for OpenSSL in the source distribution.
*/
-/* POSIX ACL checking code (aka POSIX.1e hell)
- * $Id: mod_facl.c,v 1.17 2014-05-04 19:26:26 castaglia Exp $
- */
+/* POSIX ACL checking code (aka POSIX.1e hell) */
#include "conf.h"
@@ -51,12 +49,12 @@ static const char *trace_channel = "facl";
# include <acl/libacl.h>
#endif
-static int is_errno_eperm(void) {
- if (errno == EPERM)
+static int is_errno_eperm(int xerrno) {
+ if (xerrno == EPERM)
return 1;
#ifdef EOPNOTSUPP
- if (errno == EOPNOTSUPP)
+ if (xerrno == EOPNOTSUPP)
return 1;
#endif /* !EOPNOTSUPP */
@@ -198,6 +196,8 @@ static int check_facl(pool *p, const char *path, int mode, void *acl, int nents,
}
acl_pool = make_sub_pool(p);
+ pr_pool_tag(acl_pool, "BSD/Linux ACL pool");
+
acl_groups = make_array(acl_pool, 1, sizeof(acl_entry_t));
acl_users = make_array(acl_pool, 1, sizeof(acl_entry_t));
@@ -639,6 +639,8 @@ static int check_facl(pool *p, const char *path, int mode, void *acl, int nents,
*/
acl_pool = make_sub_pool(p);
+ pr_pool_tag(acl_pool, "Solaris ACL pool");
+
acl_groups = make_array(acl_pool, 1, sizeof(aclent_t));
acl_users = make_array(acl_pool, 1, sizeof(aclent_t));
@@ -873,9 +875,10 @@ static int check_facl(pool *p, const char *path, int mode, void *acl, int nents,
static int facl_fsio_access(pr_fs_t *fs, const char *path, int mode,
uid_t uid, gid_t gid, array_header *suppl_gids) {
- int nents = 0;
+ int nents = 0, res, xerrno;
struct stat st;
void *acls;
+ pool *tmp_pool = NULL;
pr_fs_clear_cache();
if (pr_fsio_stat(path, &st) < 0)
@@ -886,10 +889,12 @@ static int facl_fsio_access(pr_fs_t *fs, const char *path, int mode,
acls = acl_get_file(path, ACL_TYPE_ACCESS);
if (!acls) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 5, "unable to retrieve ACL for '%s': [%d] %s",
- path, errno, strerror(errno));
+ path, xerrno, strerror(xerrno));
- if (is_errno_eperm()) {
+ if (is_errno_eperm(xerrno)) {
pr_trace_msg(trace_channel, 3, "ACL retrieval operation not supported "
"for '%s', falling back to normal access check", path);
@@ -899,81 +904,119 @@ static int facl_fsio_access(pr_fs_t *fs, const char *path, int mode,
* arrangement can be found.
*/
if (sys_access(fs, path, mode, uid, gid, suppl_gids) < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 6, "normal access check for '%s' "
- "failed: %s", path, strerror(errno));
+ "failed: %s", path, strerror(xerrno));
+ errno = xerrno;
return -1;
}
return 0;
-
- } else {
- return -1;
}
+
+ errno = xerrno;
+ return -1;
}
# elif defined(HAVE_SOLARIS_POSIX_ACL)
nents = acl(path, GETACLCNT, 0, NULL);
if (nents < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 5,
- "unable to retrieve ACL count for '%s': [%d] %s", path, errno,
- strerror(errno));
+ "unable to retrieve ACL count for '%s': [%d] %s", path, xerrno,
+ strerror(xerrno));
- if (is_errno_eperm()) {
+ if (is_errno_eperm(xerrno)) {
pr_trace_msg(trace_channel, 3, "ACL retrieval operation not supported "
"for '%s', falling back to normal access check", path);
if (sys_access(fs, path, mode, uid, gid, suppl_gids) < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 6, "normal access check for '%s' "
- "failed: %s", path, strerror(errno));
+ "failed: %s", path, strerror(xerrno));
+ errno = xerrno;
return -1;
- }
+ }
return 0;
-
- } else {
- return -1;
}
+
+ errno = xerrno;
+ return -1;
}
pr_trace_msg(trace_channel, 10,
"acl(2) returned %d ACL entries for path '%s'", nents, path);
- acls = pcalloc(fs->fs_pool, nents * sizeof(aclent_t));
+ if (tmp_pool == NULL) {
+ tmp_pool = make_sub_pool(fs->fs_pool);
+ pr_pool_tag(tmp_pool, "mod_facl access(2) pool");
+ }
+
+ acls = pcalloc(tmp_pool, nents * sizeof(aclent_t));
nents = acl(path, GETACL, nents, acls);
if (nents < 0) {
+ xerrno = errno;
+
+ destroy_pool(tmp_pool);
+ tmp_pool = NULL;
+
pr_trace_msg(trace_channel, 5,
- "unable to retrieve ACL for '%s': [%d] %s", path, errno,
- strerror(errno));
+ "unable to retrieve ACL for '%s': [%d] %s", path, xerrno,
+ strerror(xerrno));
- if (is_errno_eperm()) {
+ if (is_errno_eperm(xerrno)) {
pr_trace_msg(trace_channel, 3, "ACL retrieval operation not supported "
"for '%s', falling back to normal access check", path);
if (sys_access(fs, path, mode, uid, gid, suppl_gids) < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 6, "normal access check for '%s' "
- "failed: %s", path, strerror(errno));
+ "failed: %s", path, strerror(xerrno));
+ errno = xerrno;
return -1;
- }
+ }
return 0;
-
- } else {
- return -1;
}
+
+ errno = xerrno;
+ return -1;
}
# endif
- return check_facl(fs->fs_pool, path, mode, acls, nents, &st,
- uid, gid, suppl_gids);
+ if (tmp_pool == NULL) {
+ tmp_pool = make_sub_pool(fs->fs_pool);
+ pr_pool_tag(tmp_pool, "mod_facl access(2) pool");
+ }
+
+ res = check_facl(tmp_pool, path, mode, acls, nents, &st, uid, gid,
+ suppl_gids);
+ xerrno = errno;
+
+# if defined(HAVE_BSD_POSIX_ACL) || \
+ defined(HAVE_LINUX_POSIX_ACL) || \
+ defined(HAVE_MACOSX_POSIX_ACL)
+ acl_free(acls);
+# endif
+
+ destroy_pool(tmp_pool);
+ errno = xerrno;
+ return res;
}
static int facl_fsio_faccess(pr_fh_t *fh, int mode, uid_t uid, gid_t gid,
array_header *suppl_gids) {
- int nents = 0;
+ int nents = 0, res, xerrno;
struct stat st;
void *acls;
+ pool *tmp_pool = NULL;
pr_fs_clear_cache();
if (pr_fsio_fstat(fh, &st) < 0)
@@ -984,11 +1027,13 @@ static int facl_fsio_faccess(pr_fh_t *fh, int mode, uid_t uid, gid_t gid,
acls = acl_get_fd(PR_FH_FD(fh));
if (!acls) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 10,
- "unable to retrieve ACL for '%s': [%d] %s", fh->fh_path, errno,
- strerror(errno));
+ "unable to retrieve ACL for '%s': [%d] %s", fh->fh_path, xerrno,
+ strerror(xerrno));
- if (is_errno_eperm()) {
+ if (is_errno_eperm(xerrno)) {
pr_trace_msg(trace_channel, 3, "ACL retrieval operation not supported "
"for '%s', falling back to normal access check", fh->fh_path);
@@ -998,71 +1043,108 @@ static int facl_fsio_faccess(pr_fh_t *fh, int mode, uid_t uid, gid_t gid,
* arrangement can be found.
*/
if (sys_faccess(fh, mode, uid, gid, suppl_gids) < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 6, "normal access check for '%s' "
- "failed: %s", fh->fh_path, strerror(errno));
+ "failed: %s", fh->fh_path, strerror(xerrno));
+ errno = xerrno;
return -1;
- }
+ }
return 0;
-
- } else {
- return -1;
}
+
+ errno = xerrno;
+ return -1;
}
# elif defined(HAVE_SOLARIS_POSIX_ACL)
nents = facl(PR_FH_FD(fh), GETACLCNT, 0, NULL);
if (nents < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 10,
"unable to retrieve ACL count for '%s': [%d] %s", fh->fh_path,
- errno, strerror(errno));
+ xerrno, strerror(xerrno));
- if (is_errno_eperm()) {
+ if (is_errno_eperm(xerrno)) {
pr_trace_msg(trace_channel, 3, "ACL retrieval operation not supported "
"for '%s', falling back to normal access check", fh->fh_path);
if (sys_faccess(fh, mode, uid, gid, suppl_gids) < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 6, "normal access check for '%s' "
- "failed: %s", fh->fh_path, strerror(errno));
+ "failed: %s", fh->fh_path, strerror(xerrno));
+ errno = xerrno;
return -1;
- }
+ }
return 0;
-
- } else {
- return -1;
}
+
+ errno = xerrno;
+ return -1;
}
- acls = pcalloc(fh->fh_fs->fs_pool, nents * sizeof(aclent_t));
+ if (tmp_pool == NULL) {
+ tmp_pool = make_sub_pool(fh->fh_fs->fs_pool);
+ pr_pool_tag(tmp_pool, "mod_facl faccess(2) pool");
+ }
+
+ acls = pcalloc(tmp_pool, nents * sizeof(aclent_t));
nents = facl(PR_FH_FD(fh), GETACL, nents, acls);
if (nents < 0) {
+ xerrno = errno;
+
+ destroy_pool(tmp_pool);
+ tmp_pool = NULL;
+
pr_trace_msg(trace_channel, 10,
- "unable to retrieve ACL for '%s': [%d] %s", fh->fh_path, errno,
- strerror(errno));
+ "unable to retrieve ACL for '%s': [%d] %s", fh->fh_path, xerrno,
+ strerror(xerrno));
- if (is_errno_eperm()) {
+ if (is_errno_eperm(xerrno)) {
pr_trace_msg(trace_channel, 3, "ACL retrieval operation not supported "
"for '%s', falling back to normal access check", fh->fh_path);
if (sys_faccess(fh, mode, uid, gid, suppl_gids) < 0) {
+ xerrno = errno;
+
pr_trace_msg(trace_channel, 6, "normal access check for '%s' "
- "failed: %s", fh->fh_path, strerror(errno));
+ "failed: %s", fh->fh_path, strerror(xerrno));
+ errno = xerrno;
return -1;
- }
+ }
return 0;
-
- } else {
- return -1;
}
+
+ errno = xerrno;
+ return -1;
}
# endif
- return check_facl(fh->fh_fs->fs_pool, fh->fh_path, mode, acls, nents, &st,
- uid, gid, suppl_gids);
+ if (tmp_pool == NULL) {
+ tmp_pool = make_sub_pool(fh->fh_fs->fs_pool);
+ pr_pool_tag(tmp_pool, "mod_facl faccess(2) pool");
+ }
+
+ res = check_facl(tmp_pool, fh->fh_path, mode, acls, nents, &st, uid, gid,
+ suppl_gids);
+ xerrno = errno;
+
+# if defined(HAVE_BSD_POSIX_ACL) || \
+ defined(HAVE_LINUX_POSIX_ACL) || \
+ defined(HAVE_MACOSX_POSIX_ACL)
+ acl_free(acls);
+# endif
+ destroy_pool(tmp_pool);
+
+ errno = xerrno;
+ return res;
}
# endif /* !PR_USE_FACL */
@@ -1080,16 +1162,14 @@ static void facl_mod_unload_ev(const void *event_data, void *user_data) {
}
#endif /* !PR_SHARED_MODULE */
-/* Initialization routines
- */
-
-static int facl_init(void) {
+static void facl_postparse_ev(const void *event_data, void *user_data) {
#if defined(PR_USE_FACL) && defined(HAVE_POSIX_ACL)
pr_fs_t *fs;
#endif /* PR_USE_FACL and HAVE_POSIX_ACL */
- if (!facl_engine)
- return 0;
+ if (facl_engine == FALSE) {
+ return;
+ }
#if defined(PR_USE_FACL) && defined(HAVE_POSIX_ACL)
fs = pr_register_fs(permanent_pool, "facl", "/");
@@ -1098,21 +1178,28 @@ static int facl_init(void) {
pr_log_pri(PR_LOG_WARNING,
MOD_FACL_VERSION ": error registering 'facl' FS: %s", strerror(xerrno));
-
- errno = xerrno;
- return -1;
+ pr_session_disconnect(&facl_module, PR_SESS_DISCONNECT_BY_APPLICATION,
+ NULL);
}
pr_log_debug(DEBUG6, MOD_FACL_VERSION ": registered 'facl' FS");
/* Ensure that our ACL-checking handlers are used. */
fs->access = facl_fsio_access;
fs->faccess = facl_fsio_faccess;
+#endif /* PR_USE_FACL and HAVE_POSIX_ACL */
+}
+
+/* Initialization routines
+ */
+static int facl_init(void) {
+#if defined(PR_USE_FACL) && defined(HAVE_POSIX_ACL)
# if defined(PR_SHARED_MODULE)
- pr_event_register(&facl_module, "core.module-unload", facl_mod_unload_ev,
- NULL);
+ pr_event_register(&facl_module, "core.module-unload", facl_mod_unload_ev,
+ NULL);
# endif /* !PR_SHARED_MODULE */
#endif /* PR_USE_FACL and HAVE_POSIX_ACL */
+ pr_event_register(&facl_module, "core.postparse", facl_postparse_ev, NULL);
return 0;
}
diff --git a/modules/mod_facts.c b/modules/mod_facts.c
index 09f8e2e..4570f67 100644
--- a/modules/mod_facts.c
+++ b/modules/mod_facts.c
@@ -1,7 +1,6 @@
/*
* ProFTPD: mod_facts -- a module for handling "facts" [RFC3659]
- *
- * Copyright (c) 2007-2015 The ProFTPD Project
+ * Copyright (c) 2007-2016 The ProFTPD Project
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -290,6 +289,7 @@ static size_t facts_mlinfo_fmt(struct mlinfo *info, char *buf, size_t bufsz,
* channel, wherease MLSD's output is sent via a data transfer, much like
* LIST or NLST.
*/
+static pool *mlinfo_pool = NULL;
static char *mlinfo_buf = NULL, *mlinfo_bufptr = NULL;
static size_t mlinfo_bufsz = 0;
static size_t mlinfo_buflen = 0;
@@ -297,7 +297,15 @@ static size_t mlinfo_buflen = 0;
static void facts_mlinfobuf_init(void) {
if (mlinfo_buf == NULL) {
mlinfo_bufsz = pr_config_get_server_xfer_bufsz(PR_NETIO_IO_WR);
- mlinfo_buf = palloc(session.pool, mlinfo_bufsz);
+
+ if (mlinfo_pool != NULL) {
+ destroy_pool(mlinfo_pool);
+ }
+
+ mlinfo_pool = make_sub_pool(session.pool);
+ pr_pool_tag(mlinfo_pool, "Facts MLSD Buffer Pool");
+
+ mlinfo_buf = palloc(mlinfo_pool, mlinfo_bufsz);
pr_trace_msg("data", 8, "allocated facts buffer of %lu bytes",
(unsigned long) mlinfo_bufsz);
}
@@ -1279,7 +1287,9 @@ MODRET facts_mlsd(cmd_rec *cmd) {
memset(&info, 0, sizeof(struct mlinfo));
- info.pool = cmd->tmp_pool;
+ info.pool = make_sub_pool(cmd->tmp_pool);
+ pr_pool_tag(info.pool, "MLSD facts pool");
+
if (facts_mlinfo_get(&info, rel_path, dent->d_name, flags,
fake_uid, fake_gid, fake_mode) < 0) {
pr_log_debug(DEBUG3, MOD_FACTS_VERSION
@@ -1290,10 +1300,13 @@ MODRET facts_mlsd(cmd_rec *cmd) {
/* As per RFC3659, the directory being listed should not appear as a
* component in the paths of the directory contents.
*/
- info.path = pr_fs_encode_path(cmd->tmp_pool, dent->d_name);
+ info.path = pr_fs_encode_path(info.pool, dent->d_name);
facts_mlinfobuf_add(&info, FACTS_MLINFO_FL_APPEND_CRLF);
+ destroy_pool(info.pool);
+ info.pool = NULL;
+
if (XFER_ABORTED) {
pr_data_abort(0, 0);
break;
diff --git a/modules/mod_ls.c b/modules/mod_ls.c
index e9a9049..4959c7c 100644
--- a/modules/mod_ls.c
+++ b/modules/mod_ls.c
@@ -59,6 +59,11 @@ static int sendline(int flags, char *fmt, ...)
#define LS_FL_NLST_ONLY 0x0004
static unsigned long list_flags = 0;
+/* Maximum size of the "dsize" directory block we'll allocate for all of the
+ * entries in a directory (Bug#4247).
+ */
+#define LS_MAX_DSIZE (1024 * 1024 * 8)
+
static unsigned char list_strict_opts = FALSE;
static char *list_options = NULL;
static unsigned char list_show_symlinks = TRUE, list_times_gmt = TRUE;
@@ -445,6 +450,7 @@ static char months[12][4] =
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
static int listfile(cmd_rec *cmd, pool *p, const char *name) {
+ register unsigned int i;
int rval = 0, len;
time_t sort_time;
char m[PR_TUNABLE_PATH_MAX+1] = {'\0'}, l[PR_TUNABLE_PATH_MAX+1] = {'\0'}, s[16] = {'\0'};
@@ -452,6 +458,29 @@ static int listfile(cmd_rec *cmd, pool *p, const char *name) {
struct tm *t = NULL;
char suffix[2];
int hidden = 0;
+ char *filename, *ptr;
+ size_t namelen;
+
+ /* Note that listfile() expects to be given the file name, NOT the path.
+ * So strip off any path elements, watching out for any trailing slashes
+ * (Bug#4259).
+ */
+ namelen = strlen(name);
+ for (i = namelen-1; i > 0; i--) {
+ if (name[i] != '/') {
+ break;
+ }
+
+ namelen--;
+ }
+
+ filename = pstrndup(p, name, namelen);
+
+ ptr = strrchr(filename, '/');
+ if (ptr != NULL) {
+ /* Advance past that path separator to get just the filename. */
+ filename = ptr + 1;
+ }
if (list_nfiles.curr && list_nfiles.max &&
list_nfiles.curr >= list_nfiles.max) {
@@ -478,7 +507,7 @@ static int listfile(cmd_rec *cmd, pool *p, const char *name) {
#ifndef PR_USE_NLS
if (opt_B) {
- register unsigned int i, j;
+ register unsigned int j;
size_t display_namelen, printable_namelen;
char *printable_name = NULL;
@@ -592,9 +621,13 @@ static int listfile(cmd_rec *cmd, pool *p, const char *name) {
}
/* Skip dotfiles, unless requested not to via -a or -A. */
- if (*name == '.' &&
- (!opt_a && (!opt_A || is_dotdir(name))))
+ if (*filename == '.' &&
+ (!opt_a && (!opt_A || is_dotdir(filename)))) {
+ pr_log_debug(DEBUG10,
+ "skipping listing of hidden file '%s' (no -A/-a options in effect)",
+ filename);
return 0;
+ }
if (hidden)
return 0;
@@ -1098,6 +1131,9 @@ static char **sreaddir(const char *dirname, const int sort) {
/* Guess the number of entries in the directory. */
dsize = (((size_t) st.st_size) / 4) + 10;
+ if (dsize > LS_MAX_DSIZE) {
+ dsize = LS_MAX_DSIZE;
+ }
/* The directory has been opened already, but portably accessing the file
* descriptor inside the DIR struct isn't easy. Some systems use "dd_fd" or
@@ -1883,7 +1919,6 @@ static int dolist(cmd_rec *cmd, const char *opt, int clearflags) {
}
} else {
-
/* Trick the following code into using the non-glob() processed path */
a = 0;
g.gl_pathv = (char **) pcalloc(cmd->tmp_pool, 2 * sizeof(char *));
@@ -1897,8 +1932,9 @@ static int dolist(cmd_rec *cmd, const char *opt, int clearflags) {
path = g.gl_pathv;
- if (path && path[0] && path[1])
+ if (path && path[0] && path[1]) {
justone = 0;
+ }
while (path &&
*path) {
@@ -1919,7 +1955,7 @@ static int dolist(cmd_rec *cmd, const char *opt, int clearflags) {
}
/* If the -d option is used or the file is not a directory, OR
- * if the -R option is NOT used AND the file IS a directory AND,
+ * if the -R option is NOT used AND the file IS a directory AND
* the file is NOT the target/given parameter, then list the file
* as is.
*/
diff --git a/modules/mod_xfer.c b/modules/mod_xfer.c
index 6e1b2a2..de5c52a 100644
--- a/modules/mod_xfer.c
+++ b/modules/mod_xfer.c
@@ -2434,6 +2434,9 @@ MODRET xfer_allo(cmd_rec *cmd) {
return PR_ERROR(cmd);
}
+ pr_log_debug(DEBUG9, "%s requested %" PR_LU " KB, %" PR_LU
+ " KB available on '%s'", cmd->argv[0], (pr_off_t) requested_kb,
+ (pr_off_t) avail_kb, path);
pr_response_add(R_200, _("%s command successful"), cmd->argv[0]);
}
diff --git a/src/auth.c b/src/auth.c
index 1ac77fc..b6727fb 100644
--- a/src/auth.c
+++ b/src/auth.c
@@ -2,7 +2,7 @@
* ProFTPD - FTP server daemon
* Copyright (c) 1997, 1998 Public Flood Software
* Copyright (c) 1999, 2000 MacGyver aka Habeeb J. Dihu <macgyver at tos.net>
- * Copyright (c) 2001-2013 The ProFTPD Project team
+ * Copyright (c) 2001-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -24,9 +24,7 @@
* the source code for OpenSSL in the source distribution.
*/
-/* Authentication front-end for ProFTPD
- * $Id: auth.c,v 1.102 2013-11-10 01:56:49 castaglia Exp $
- */
+/* Authentication front-end for ProFTPD */
#include "conf.h"
#include "privs.h"
@@ -1134,10 +1132,10 @@ int pr_auth_getgroups(pool *p, const char *name, array_header **group_ids,
}
/* This is one messy function. Yuck. Yay legacy code. */
-config_rec *pr_auth_get_anon_config(pool *p, char **login_name,
- char **user_name, char **anon_name) {
- config_rec *c = NULL, *topc = NULL;
- char *config_user_name, *config_anon_name = NULL;
+config_rec *pr_auth_get_anon_config(pool *p, char **login_user,
+ char **real_user, char **anon_name) {
+ config_rec *c = NULL, *alias_config = NULL, *anon_config = NULL;
+ char *config_user_name = NULL, *config_anon_name = NULL;
unsigned char is_alias = FALSE, *auth_alias_only = NULL;
unsigned long config_flags = (PR_CONFIG_FIND_FL_SKIP_DIR|PR_CONFIG_FIND_FL_SKIP_LIMIT|PR_CONFIG_FIND_FL_SKIP_DYNDIR);
@@ -1148,9 +1146,9 @@ config_rec *pr_auth_get_anon_config(pool *p, char **login_name,
*/
config_user_name = get_param_ptr(main_server->conf, "UserName", FALSE);
- if (config_user_name &&
- user_name) {
- *user_name = config_user_name;
+ if (config_user_name != NULL &&
+ real_user != NULL) {
+ *real_user = config_user_name;
}
/* If the main_server->conf->set list is large (e.g. there are many
@@ -1169,11 +1167,15 @@ config_rec *pr_auth_get_anon_config(pool *p, char **login_name,
config_flags);
if (c != NULL) {
do {
+ const char *alias;
+
pr_signals_handle();
- if (strncmp(c->argv[0], "*", 2) == 0 ||
- strcmp(c->argv[0], *login_name) == 0) {
+ alias = c->argv[0];
+ if (strncmp(alias, "*", 2) == 0 ||
+ strcmp(alias, *login_user) == 0) {
is_alias = TRUE;
+ alias_config = c;
break;
}
@@ -1182,49 +1184,57 @@ config_rec *pr_auth_get_anon_config(pool *p, char **login_name,
}
/* This is where things get messy, rapidly. */
- topc = c;
+ if (is_alias == TRUE) {
+ c = alias_config;
+ }
while (c && c->parent &&
- (auth_alias_only = get_param_ptr(c->parent->set, "AuthAliasOnly", FALSE))) {
+ (auth_alias_only = get_param_ptr(c->parent->subset, "AuthAliasOnly", FALSE))) {
/* while() loops should always handle signals. */
pr_signals_handle();
- if (auth_alias_only) {
- /* If AuthAliasOnly is on, ignore this one and continue. */
- if (*auth_alias_only == TRUE) {
- c = find_config_next2(c, c->next, CONF_PARAM, "UserAlias", TRUE,
- config_flags);
- continue;
- }
+ /* If AuthAliasOnly is on, ignore this one and continue. */
+ if (auth_alias_only != NULL &&
+ *auth_alias_only == TRUE) {
+ c = find_config_next2(c, c->next, CONF_PARAM, "UserAlias", TRUE,
+ config_flags);
+ continue;
}
/* At this point, we have found an "AuthAliasOnly off" config in
- * c->parent->set. See if there's a UserAlias in the same config set.
+ * c->parent->set (which means that we cannot use the UserAlias, and thus
+ * is_alias is set to false). See if there's a UserAlias in the same
+ * config set.
*/
is_alias = FALSE;
- find_config_set_top(topc);
+ find_config_set_top(alias_config);
c = find_config_next2(c, c->next, CONF_PARAM, "UserAlias", TRUE,
config_flags);
if (c &&
(strncmp(c->argv[0], "*", 2) == 0 ||
- strcmp(c->argv[0], *login_name) == 0)) {
+ strcmp(c->argv[0], *login_user) == 0)) {
is_alias = TRUE;
+ alias_config = c;
}
}
- if (c) {
- *login_name = c->argv[1];
+ /* At this point in time, c is guaranteed (if not null) to be pointing at
+ * a UserAlias config, either the original OR one found in the AuthAliasOnly
+ * config set.
+ */
+ if (c != NULL) {
+ *login_user = c->argv[1];
/* If the alias is applied inside an <Anonymous> context, we have found
- * our anon block.
+ * our <Anonymous> section.
*/
if (c->parent &&
c->parent->config_type == CONF_ANON) {
- c = c->parent;
+ anon_config = c->parent;
} else {
c = NULL;
@@ -1232,68 +1242,106 @@ config_rec *pr_auth_get_anon_config(pool *p, char **login_name,
}
/* Next, search for an anonymous entry. */
-
- if (c == NULL) {
+ if (anon_config == NULL) {
c = find_config(main_server->conf, CONF_ANON, NULL, FALSE);
} else {
- find_config_set_top(c);
+ find_config_set_top(anon_config);
+ c = anon_config;
}
- if (c) {
+ /* If anon_config is null here but c is not null, then we may have found
+ * a candidate <Anonymous> section. Let's examine it more closely.
+ */
+ if (c != NULL) {
+ config_rec *starting_c;
+
+ starting_c = c;
do {
pr_signals_handle();
config_anon_name = get_param_ptr(c->subset, "UserName", FALSE);
-
- if (!config_anon_name)
+ if (config_anon_name == NULL) {
config_anon_name = config_user_name;
+ }
- if (config_anon_name &&
- strcmp(config_anon_name, *login_name) == 0) {
- if (anon_name)
- *anon_name = config_anon_name;
- break;
+ if (config_anon_name != NULL &&
+ strcmp(config_anon_name, *login_user) == 0) {
+
+ /* We found our <Anonymous> section. */
+ anon_config = c;
+
+ if (anon_name != NULL) {
+ *anon_name = config_anon_name;
+ }
+ break;
}
} while ((c = find_config_next(c, c->next, CONF_ANON, NULL,
FALSE)) != NULL);
- }
- if (!is_alias) {
- /* Yes, we do want to be using c here. Otherwise, we risk a regression
- * of Bug#3501.
- */
+ c = starting_c;
+ }
+ if (is_alias == FALSE) {
auth_alias_only = get_param_ptr(c ? c->subset : main_server->conf,
"AuthAliasOnly", FALSE);
- if (auth_alias_only &&
+ if (auth_alias_only != NULL &&
*auth_alias_only == TRUE) {
- if (c &&
+ if (c != NULL &&
c->config_type == CONF_ANON) {
c = NULL;
} else {
- *login_name = NULL;
+ *login_user = NULL;
}
- auth_alias_only = get_param_ptr(main_server->conf, "AuthAliasOnly",
- FALSE);
- if (*login_name &&
- auth_alias_only &&
+ /* Note: We only need to look for AuthAliasOnly in main_server IFF
+ * c is NOT null. If c IS null, then we will already have looked up
+ * AuthAliasOnly in main_server above.
+ */
+ if (c != NULL) {
+ auth_alias_only = get_param_ptr(main_server->conf, "AuthAliasOnly",
+ FALSE);
+ }
+
+ if (login_user != NULL &&
+ auth_alias_only != NULL &&
*auth_alias_only == TRUE) {
- *login_name = NULL;
+ *login_user = NULL;
}
- if ((!login_name || !c) &&
- anon_name) {
+ if ((login_user == NULL || anon_config == NULL) &&
+ anon_name != NULL) {
*anon_name = NULL;
}
}
+
+ } else {
+ config_rec *alias_parent_config = NULL;
+
+ /* We have found a matching UserAlias for the USER name sent by the client.
+ * But we need to properly handle any AuthAliasOnly directives in that
+ * config as well (Bug#2070).
+ */
+ if (alias_config != NULL) {
+ alias_parent_config = alias_config->parent;
+ }
+
+ auth_alias_only = get_param_ptr(alias_parent_config ?
+ alias_parent_config->subset : main_server->conf, "AuthAliasOnly", FALSE);
+
+ if (auth_alias_only != NULL &&
+ *auth_alias_only == TRUE) {
+ if (alias_parent_config != NULL &&
+ alias_parent_config->config_type == CONF_ANON) {
+ anon_config = alias_parent_config;
+ }
+ }
}
- return c;
+ return anon_config;
}
int pr_auth_banned_by_ftpusers(xaset_t *ctx, const char *user) {
diff --git a/src/data.c b/src/data.c
index 5136f5f..f2ea94f 100644
--- a/src/data.c
+++ b/src/data.c
@@ -1154,6 +1154,7 @@ int pr_data_xfer(char *cl_buf, size_t cl_size) {
if (session.xfer.direction == PR_NETIO_IO_RD) {
char *buf = session.xfer.buf;
pr_buffer_t *pbuf;
+ pool *tmp_pool;
if (session.sf_flags & (SF_ASCII|SF_ASCII_OVERRIDE)) {
int adjlen, buflen;
@@ -1186,10 +1187,13 @@ int pr_data_xfer(char *cl_buf, size_t cl_size) {
}
/* Before we process the data read from the client, generate an event
- * for any listeners which may want to examine this data.
+ * for any listeners which may want to examine this data. Use a
+ * temporary pool, so that we don't exhaust the transfer pool for
+ * long/large transfers (Bug#4277).
*/
- pbuf = pcalloc(session.xfer.p, sizeof(pr_buffer_t));
+ tmp_pool = make_sub_pool(session.xfer.p);
+ pbuf = pcalloc(tmp_pool, sizeof(pr_buffer_t));
pbuf->buf = buf;
pbuf->buflen = len;
pbuf->current = pbuf->buf;
@@ -1200,6 +1204,7 @@ int pr_data_xfer(char *cl_buf, size_t cl_size) {
/* The event listeners may have changed the data to write out. */
buf = pbuf->buf;
len = pbuf->buflen - pbuf->remaining;
+ destroy_pool(tmp_pool);
if (len > 0) {
buflen += len;
@@ -1289,10 +1294,13 @@ int pr_data_xfer(char *cl_buf, size_t cl_size) {
if (len > 0) {
/* Before we process the data read from the client, generate an event
- * for any listeners which may want to examine this data.
+ * for any listeners which may want to examine this data. Use a
+ * temporary pool, so that we don't exhaust the transfer pool for
+ * long/large transfers (Bug#4277).
*/
- pbuf = pcalloc(session.xfer.p, sizeof(pr_buffer_t));
+ tmp_pool = make_sub_pool(session.xfer.p);
+ pbuf = pcalloc(tmp_pool, sizeof(pr_buffer_t));
pbuf->buf = buf;
pbuf->buflen = len;
pbuf->current = pbuf->buf;
@@ -1303,6 +1311,7 @@ int pr_data_xfer(char *cl_buf, size_t cl_size) {
/* The event listeners may have changed the data to write out. */
buf = pbuf->buf;
len = pbuf->buflen - pbuf->remaining;
+ destroy_pool(tmp_pool);
/* Non-ASCII mode doesn't need to use session.xfer.buf */
if (timeout_stalled) {
diff --git a/src/fsio.c b/src/fsio.c
index f088202..c484a52 100644
--- a/src/fsio.c
+++ b/src/fsio.c
@@ -4790,15 +4790,15 @@ static int fs_getsize(int fd, char *path, off_t *fs_size) {
* we'll use typecasting.
*/
if (sizeof(fs.f_bavail) > 4 ||
- sizeof(fs.f_frsize) > 4) {
+ sizeof(fs.f_bsize) > 4) {
/* In order to return a size in KB, as get_fs_size() does, we need
* to divide by 1024.
*/
- *fs_size = (((off_t) fs.f_bavail * (off_t) fs.f_frsize) / 1024);
+ *fs_size = (((off_t) fs.f_bavail * (off_t) fs.f_bsize) / 1024);
} else {
- *fs_size = get_fs_size(fs.f_bavail, fs.f_frsize);
+ *fs_size = get_fs_size(fs.f_bavail, fs.f_bsize);
}
return 0;
@@ -4846,7 +4846,7 @@ static int fs_getsize(int fd, char *path, off_t *fs_size) {
/* In order to return a size in KB, as get_fs_size() does, we need
* to divide by 1024.
*/
- *fs_size = (((off_t) fs.f_bavail * (off_t) fs.f_frsize) / 1024);
+ *fs_size = (((off_t) fs.f_bavail * (off_t) fs.f_bsize) / 1024);
} else {
*fs_size = get_fs_size(fs.f_bavail, fs.f_bsize);
@@ -4897,7 +4897,7 @@ static int fs_getsize(int fd, char *path, off_t *fs_size) {
/* In order to return a size in KB, as get_fs_size() does, we need
* to divide by 1024.
*/
- *fs_size = (((off_t) fs.f_bavail * (off_t) fs.f_frsize) / 1024);
+ *fs_size = (((off_t) fs.f_bavail * (off_t) fs.f_bsize) / 1024);
} else {
*fs_size = get_fs_size(fs.f_bavail, fs.f_bsize);
diff --git a/src/memcache.c b/src/memcache.c
index a67ec46..ad0cc9b 100644
--- a/src/memcache.c
+++ b/src/memcache.c
@@ -285,7 +285,16 @@ static int mcache_ping_servers(pr_memcache_t *mcache) {
}
memcached_servers_reset(clone);
+
+ /* Bug#4242: Don't use memcached_server_push() if we're using
+ * libmemcached-1.0.18 or earlier. Doing so leads to a segfault, due to
+ * this libmemcached bug:
+ *
+ * https://bugs.launchpad.net/libmemcached/+bug/1154159
+ */
+#if LIBMEMCACHED_VERSION_HEX > 0x01000018
memcached_server_push(clone, configured_server_list);
+#endif
server_count = memcached_server_count(clone);
diff --git a/src/response.c b/src/response.c
index 7c3e378..83d2fbb 100644
--- a/src/response.c
+++ b/src/response.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - FTP server daemon
- * Copyright (c) 2001-2011 The ProFTPD Project team
+ * Copyright (c) 2001-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -79,19 +79,24 @@ static void reset_last_response(void) {
void pr_response_set_pool(pool *p) {
resp_pool = p;
+ if (p == NULL) {
+ reset_last_response();
+ return;
+ }
+
/* Copy any old "last" values out of the new pool. */
if (resp_last_response_code != NULL) {
- char *tmp;
+ char *ptr;
- tmp = resp_last_response_code;
- resp_last_response_code = pstrdup(p, tmp);
+ ptr = resp_last_response_code;
+ resp_last_response_code = pstrdup(p, ptr);
}
if (resp_last_response_msg != NULL) {
- char *tmp;
+ char *ptr;
- tmp = resp_last_response_msg;
- resp_last_response_msg = pstrdup(p, tmp);
+ ptr = resp_last_response_msg;
+ resp_last_response_msg = pstrdup(p, ptr);
}
}
@@ -136,7 +141,10 @@ int pr_response_block(int bool) {
void pr_response_clear(pr_response_t **head) {
reset_last_response();
- *head = NULL;
+
+ if (head != NULL) {
+ *head = NULL;
+ }
}
void pr_response_flush(pr_response_t **head) {
@@ -144,6 +152,10 @@ void pr_response_flush(pr_response_t **head) {
char *last_numeric = NULL;
pr_response_t *resp = NULL;
+ if (head == NULL) {
+ return;
+ }
+
if (resp_blocked) {
return;
}
diff --git a/src/table.c b/src/table.c
index 1a6bb38..0695e86 100644
--- a/src/table.c
+++ b/src/table.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - FTP server daemon
- * Copyright (c) 2004-2012 The ProFTPD Project team
+ * Copyright (c) 2004-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -22,9 +22,7 @@
* OpenSSL in the source distribution.
*/
-/* Table API implementation
- * $Id: table.c,v 1.32 2012-02-24 01:37:27 castaglia Exp $
- */
+/* Table API implementation */
#include "conf.h"
@@ -369,9 +367,7 @@ static unsigned int tab_get_seed(void) {
#endif /* Not PR_USE_OPENSSL */
#ifdef PR_USE_OPENSSL
- if (RAND_bytes((unsigned char *) &seed, sizeof(seed)) != 1) {
- RAND_pseudo_bytes((unsigned char *) &seed, sizeof(seed));
- }
+ RAND_bytes((unsigned char *) &seed, sizeof(seed));
#else
/* Try reading from /dev/urandom, if present */
fp = fopen("/dev/urandom", "rb");
diff --git a/tests/api/netacl.c b/tests/api/netacl.c
index 89229bf..ef3fb96 100644
--- a/tests/api/netacl.c
+++ b/tests/api/netacl.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - FTP server testsuite
- * Copyright (c) 2008-2011 The ProFTPD Project team
+ * Copyright (c) 2008-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -530,8 +530,10 @@ START_TEST (netacl_match_test) {
strerror(errno));
res = pr_netacl_match(acl, addr);
- fail_unless(res == 1, "Failed to positively match ACL to addr: %s",
- strerror(errno));
+ if (getenv("TRAVIS_CI") == NULL) {
+ fail_unless(res == 1, "Failed to positively match ACL to addr: %s",
+ strerror(errno));
+ }
if (!have_localdomain) {
acl_str = pstrdup(p, "!localhost");
@@ -545,8 +547,10 @@ START_TEST (netacl_match_test) {
strerror(errno));
res = pr_netacl_match(acl, addr);
- fail_unless(res == -1, "Failed to negatively match ACL to addr: %s",
- strerror(errno));
+ if (getenv("TRAVIS_CI") == NULL) {
+ fail_unless(res == -1, "Failed to negatively match ACL to addr: %s",
+ strerror(errno));
+ }
if (!have_localdomain) {
acl_str = pstrdup(p, "loc*st");
@@ -560,8 +564,10 @@ START_TEST (netacl_match_test) {
strerror(errno));
res = pr_netacl_match(acl, addr);
- fail_unless(res == 1, "Failed to positively match ACL to addr: %s",
- strerror(errno));
+ if (getenv("TRAVIS_CI") == NULL) {
+ fail_unless(res == 1, "Failed to positively match ACL to addr: %s",
+ strerror(errno));
+ }
if (!have_localdomain) {
acl_str = pstrdup(p, "!loc*st");
@@ -575,8 +581,10 @@ START_TEST (netacl_match_test) {
strerror(errno));
res = pr_netacl_match(acl, addr);
- fail_unless(res == -1, "Failed to negatively match ACL to addr: %s",
- strerror(errno));
+ if (getenv("TRAVIS_CI") == NULL) {
+ fail_unless(res == -1, "Failed to negatively match ACL to addr: %s",
+ strerror(errno));
+ }
}
END_TEST
diff --git a/tests/api/netaddr.c b/tests/api/netaddr.c
index 39e13b6..d3d5c78 100644
--- a/tests/api/netaddr.c
+++ b/tests/api/netaddr.c
@@ -1,6 +1,6 @@
/*
* ProFTPD - FTP server testsuite
- * Copyright (c) 2008-2014 The ProFTPD Project team
+ * Copyright (c) 2008-2016 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -369,9 +369,11 @@ START_TEST (netaddr_get_dnsstr_test) {
* return either "localhost" or "localhost.localdomain". Perhaps even
* other variations, although these should be the most common.
*/
- fail_unless(strcmp(res, "localhost") == 0 ||
- strcmp(res, "localhost.localdomain") == 0,
- "Expected '%s', got '%s'", "localhost or localhost.localdomain", res);
+ if (getenv("TRAVIS_CI") == NULL) {
+ fail_unless(strcmp(res, "localhost") == 0 ||
+ strcmp(res, "localhost.localdomain") == 0,
+ "Expected '%s', got '%s'", "localhost or localhost.localdomain", res);
+ }
}
END_TEST
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-proftpd/proftpd-dfsg.git
More information about the Pkg-proftpd-maintainers
mailing list