changelog
来自「功能强大的ftp服务器源代码」· 代码 · 共 646 行 · 第 1/3 页
TXT
646 行
int - take care of that for fakeopen() mode. Fix throttling in ASCII mode - the nowait condition is o >= st.st_size,not left > skip. Log passwords when the server is compiled with DEBUG. Remove TVFS conformance announcement (FEAT command) when virtual chrootis enabled. Fix bashisms/zshmisms in configure.ac and links OpenSSL if needed withOpenLDAP. Contributed by Ben Gertzfield (che_fox) . Merge pure-authd and the 'extauth' external authentication handler.Relevant files are man/pure-authd.8, src/log_extauth* src/pure-authd* . Undefine fakechroot macros before their definition, it shuts thecompiler up on Solaris.* Version 1.0.7 : Use /dev/arandom and random() instead of /dev/urandom and rand() whenpossible. Suggested by Brad Smith <brad@openbsd.org>. Korean translation updated (Im). GCC upgraded to 3.0.3 for binary packages. Don't chroot to /etc/pure-ftpd/<ip>/. , but to /etc/pure-ftpd/<ip> forvirtual users. Virtual chroot didn't like it. RPM packages can now be built with LDAP, Mysql and PostgreSQL.Contributed by Ben <ben@zaeon.com> . Directory aliases (DIRALIASES macro, diraliases.{c,h}, minor tweaks toftpd.c (docwd) and ftp_parser.c (site alias)) . Contributed by KennethStailey <kstailey@yahoo.com> . Cindy has moved. Add a fake chroot wrapper for stat[v]fs[64]() and rm/mkdir. Check directory, not file for stat[v]fs[64]() - Option -k should reallywork now. Dont count .ftpquota in pure-quotacheck. Reported by Jan Pavlik.* Version 1.0.6 : New fakechroot.{c,h} files. They contain wrappers for most I/O functionsto emulate chroot and follow symbolic links. PostgreSQL support, based upon log_mysql. Known issue with virtual chroot (FIXME) : files with ".." in their namesare denied. Danish and Korean translations updated. Typos were fixed in the Polish translation (contributed by MariuszPekala <skoot@poczta.onet.pl>). Check for libelf before libkvm in Autoconf (Kenneth) Don't enable TCP_NODELAY any more on the connection socket. FTP Explorerdoesn't like it. Don't assume that crypt() always returns non-NULL pointers. Thanks toPaul <paul@chipmunkweb.yi.org> for his help on that issue. New translation : Swedish (messages_sv.h). Don't clear dot_{read,write}_ok when quotas are enabled. Instead, checkfor enabled quotas in checknamesanity() and refuse everything with".ftpquota" in it => ok because only 'ls' performs globbing.* Version 1.0.5 : Rename and delete operations are now syslogged. Strange characters are now stripped from .banner/.message files. Unofficial macros to give more power to anon users :ANON_CAN_CHANGE_PERMS, ANON_CAN_DELETE, ANON_CAN_RESUME and ANON_CAN_RENAME. Return 550 when an upload excess quota. New unofficial macro : LOG_ANON_EMAIL . File deletion and rename are now logged. [v]snprintf() replacements have been totally rewritten. Accept multiple ip/mask filtering rules in the puredb backend. The load average can now be read on Solaris < 2.6 (where getloadavg()isn't implemented) . Contributed by Keneth Stailey. Documentation updates (FAQ and pure-ftpd man page), translation updates. Autoconf updated to 2.52g, Automake to 1.5b.* Version 1.0.4 : Clean up pure-config.pl and use Perl's exec with an array, circumventingthe system shell. (Gives less surprises with strange characters in the configfile, is also more efficient.) (Matthias) Clean up pure-config.py and use os.execv, work done by Joshua Rodman.Thanks a lot. Autoconf adjustments to pure-config.py by Matthias. Fix configure.ac to use ":" in the path to AC_PATH_PROG rather than " ",add PYTHON search, declare PERL and PYTHON precious, if not found, default to/usr/bin/env <program>, add pure-config.py to AC_CONFIG_FILES. (Matthias) Close descriptors in pure-ftpwho (paranoia. I wasn't able to change anyftpwho file even without this -j.) New ADD_EXTRA_GROUPS_TO_ANON unofficial macro to enable supplementarygroups for anonymous users (disabled by default) . Accept 2000 chars long .message files even on systems where MAXPATHLENis very low (e.g. Irix and FreeBSD) . Contributed by Michael Glad<glad@daimi.au.dk> . Recognize "p@sw" as a synonym for "pasv" to bypass SMC Barricade mangling. Fixed compilation on Corel Netwinder devices (Gareth Woolridge). Allow EPSV when IPv6, regardless of the broken compatibility flag. A workaround for buggy Autoconf versions was added in configure.ac(AC_PATH_PROG didn't work when the path wasn't a variable : IFS was set butit wasn't effective without any substitution) . Have dodele() handle unlink() errors even when virtual quotas areenabled. Also, the stat() (that was changed to lstat())/rename() race wasfixed by an additional lstat() on the destination file. simplify() has been moved to ftpd.c . We call it for mkd/rnto/stor filenames before stripping spaces, just to be a bit more annoying with warezplayers. VUSERS stuff was removed. It has been obsoleted by the puredb backend. New FAQ file. The ML address has changed to pureftpd.org/ml instead of a direct linkto SF, just in case we move to something more reliable.* Version 1.0.3 : New ASCII conversion function (doasciiwrite()), faster, easier and lessbuggy than the original one. And it fixes a funny compatibility issue withHomesite. Look for perl in /usr/bin before /usr/local/bin (better to build RPMpackages) . Don't forget to remove libsafe before building binary packages :) New unofficial macros : DISABLE_MKD_RMD and DEFAULT_TO_BINARY_TYPE.* Version 1.0.2 : Upgraded to Autoconf 2.52f. Disallow rnto to existing files when quotas are enabled. Not fornonexistent files. Don't use setfsuid() when system quotas are enabled -> undefHAVE_SETFSUID_H in ftpd.h if SYSTEM_QUOTAS if defined. Always restrict the size of chunks for downloads when ftpwho is enabled. Parse every component of the path in create_home_and_chdir(). Include some more (v)snprintf() implementations, using vfprintf() and_doprnt() . Needed for Tru64. The upload pipe now receives upload info as follows :\002username\001filename\000 . That way, virtual user names can be read. PureDB is now covered by a BSD license and it was upgraded to version2.0 . Don't forget the -k option in Perl/Python parsers.* Version 1.0.1 : Enable keepalive on data sockets, disable ndelay. Downgrade to autoconf 2.52. Fix 'left' value when throttling is enabled in doretr() with sendfile() . Add --without-nonalnum / PARANOID_FILE_NAMES. New funny french messages. Quota fixes when uploads are aborted. New dostor_quota_update_close_f()function. Yeah, what a nice and long name :)* Version 1.0.0 : Remove the last dynamic array in dostor(), use ALLOCA instead. Solaris considers mmap()ed region as char * instead of void *. Addexplicit casts to shut up the compiler. Add CallUploadScript in pureftpd.conf sample. Support Base64-encoded MD5/SHA and salted MD5 (SMD5) and SHA (SSHA) LDAP passwords. Updated danish translation - Lyberth. Updated polish translation - Arkadiusz. New messages_sk.h and messages_kr.h translation files. Renamed messages_sp.h -> messages_es.h . Separate {bandwidth,quota,ratio} changed pairs in AuthResult. Accept @ for LDAP logins. Have pure-uploadscript write a /var/run/pure-uploadscript.pid file. Irix portability fixes, thanks to Florin Andrei <elf_too@yahoo.com>. MLST/FEAT conformance fixes. PAM fixes (Thorsten). Get rid of the dot_ok global. Have the main server delete ftpwho files. Check for statvfs64(). Spec file improvements (Bernie). keepallfiles = 0 when users belong to the trusted group. Disable quota for anonymous users. Fix various compiler warnings (Matthias). Have pure-pw support puredb files even when the server hasn't beencompiled --with-puredb. Suggested by Arkadiusz. New --with-sysconfdir configure switch. Suggested by Arkadiusz andMatthias. Don't strip spaces in commands, unless SKIP_TRAILING_SPACES is defined.It was an historical behavior but it breaks spaces before and after filenames, passwords beginning with spaces, etc. Thanks to Andreas Piening<Andreas.Piening@ePost.de> for helping to solve that issue. Replace extra spaces around uploaded file names (and rnto) with '_' toavoid stupid practices of warez folks. New message files format checker (messages_check.pl) provided byMatthias Andree. Add mysnprintf.{c,h} wrapper for brain damaged snprintf() implementations. Refuse rename() with --keepallfiles. Upgraded autoconf to 2.52d. Get rid of acconfig.h . Changed configure.ac trailer - Contributed by CmdrTaco of Slashdot (onlytwo people know why... this is the mystery of pureftpd :) Misc. nice cleanups everywhere (Matthias, Bernhard, Jason, Arkadiusz). Upgraded to gcc 3.0.2 for binaries. Don't increase size quota when overwriting existing files - Reported byEric <ericnew@pacific.net.sg> .* Version 0.99.9 : Complete rewrite of src/*ftpwho*. We now use a scoreboard directory(/var/run/pure-ftpd) with mmap()ed structures instead of SysV IPC. It mightbe a bit slower than IPC, but it's definitely more reliable, it doesn't needany OS tweaking, it's simpler code, etc. Support the service part in getnameinfo() emulation code for pure-ftpwho. Ansified bsd-glob* and gnu-getopt* . Avoid a clash for struct statfs between sys/vfs.h and sys/capability.h . Consider negative filedescriptors as valid (prepare for O_DIRECT). -H is now a synonym for -n in pure-ftpwho. Use safe_write() when possible instead of plain write(). Much efficient buffering code in ls.c . New -m switch in pure-pw. New environement variables for the default path. Refuse atomic replacement of files when quotas are enabled. Accept pure-pw mkdb without any further argument. New pid_file glob. Documentation fixups. Contributed by James Metcalf <james@asset-ict.com>and http://www.php4hosting.com/ .* Version 0.99.4 : Change uploaded and downloaded to unsigned long long. Display filesizes as unsigned long long in src/ls.c. (Thorsten/Matthias) RPM improvements. (Thorsten) Chroot everyone by default in pure-pwconvert. Refuse 0Kb bandwidth for throttling in pure-pw. Reported by Ben Weir.* Version 0.99.3 : Don't include users that don't have a valid directory in pure-pwconvert. Old versions of MySQL (<= 3.22.x) are now supported.mysql_real_escape_string() wasn't implemented. We now just check this inconfigure and fallback to mysql_escape_string() if necessary. Fixed RPM building with PAM, thanks to Sergey Mihailov. Add PureDB to configuration file wrappers, thanks to Sergey Mihailov. Include sysconfig sample in RPMs. Support MySQL's password() hashing function. Contributed by Robin Ericsson. Dutch translation updated (Johan燞uisman
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?