Browse Source

Removing Changelog from git

Vladimir Dubrovin 11 years ago
parent
commit
faf5b4b124
2 changed files with 1 additions and 2223 deletions
  1. 1 0
      .gitignore
  2. 0 2223
      Changelog

+ 1 - 0
.gitignore

@@ -15,6 +15,7 @@ tmp/
 *.swp
 *.o
 *.idb
+Changelog
 src/version.h
 src/res
 version.c

+ 0 - 2223
Changelog

@@ -1,2223 +0,0 @@
-15.04.2014
-! adding warnings for most common misconfigurations
-
-10.04.2014
-! switching to 64-bit integers where possible.
-  proxy should now support downloading for files > 4GB.
-
-
-08.04.2014
-Releasing as 0.7
-Significant changes since 0.6.1:
-!! auth iponly by default
-! maxconn is 500 by default
-! Improved HTTP/1.1 compatibility
-! Functionality bugfixes
-+ Few new plugins
-
-11.07.2012
-! fixed: counters over 4GB in webadmin
-
-26.06.2012
-! OpenSSL thread support functions added to SSL plugin
-
-10.05.2012
-! SSL plugin works. Commands to enable/disable SSL spoofing will be added later.
-
-25.04.2012
-! pcre_rewrite slash sequence logic corrected
-
-16.04.2012
-+ Added: SSLPlugin for SSL decryption with certificates spoofing
-
-12.04.2012
-+ Added: new filter callback function type (pre data filter) for things like SSL/TLS, gzip, etc.
-  WARNING: all plugins with filter functions need to be reviewed for compatibility
-
-06.02.2012
-+ Added: transparent redirection plugin for linux. Automatically detects redirection
-  address if traffic is redirected via iptables
-
-15.08.2011
-! Fixed: 100% CPU because of usleep with large value on NetBSD
-
-11.06.2011
-+ Support for extusername/extpassword added to smtpp
-
-04.06.2011
-! Fixed: web admin access
-! Fixed: wrong error code in logfile in some rare cases
-! Migrated to VC 9.0 compiler
-
-14.04.2011
-! Authentication: do not request username/password in mixed authentication
-  if all modules deny access.
-
-12.04.2011
-! Minor code cleanup
-
-17.12.2010
-- Debugging output to stdout removed
-
-09.12.2010
-! Code cleanup for sockets mapping and chunked encoding, 
-! Content-Length up to 4GB
-
-25.11.2010
-+ System locale handling added for mixed case username in WindowAuthentication 
-
-13.11.2010
-+ Plugin utf8tocp1251 added to automatically detect UTF-8 (used by Chrome and
-  Opera in username/password.
-
-  usage 
-
-  plugin "utf8tocp1251" utf8tocp1251
-  auth utf8tocp1251 strong
-
-  or
-
-  auth utf8tocp1251 cache windows
-
-
-11.11.2010
-! encoding paramter added to WWW-Authenticate and Proxy-Authenticate headers in
-  .3ps files according to
-  http://tools.ietf.org/id/draft-reschke-basicauth-enc-01.txt
-
-12.08.2010
-! Removed getservbyport() from webadmin to avoid potential race condition
-
-09.08.2010
-! Default .3ps files corrected
-
-26.06.2010
-! Fixed: keep-alive connections detection for HTTP/1.1
-
-10.12.2009
-! Fixed: external address may be incorrectly set if few requests are
-  received in single connection.
-
-02.12.2009
-! zero sockaddr before bind for some FreeBSD versions compatibity
-
-26.10.2009
-! Some changes for MD4/MD5 libraries 64-bit compatibility
-
-01.10.2009
-! Fixed: Content-Length is sent twice to server if there are content-handling
-  plugins.
-
-17.09.2009
-! Makefile.Linux: add3proxyuser.sh moved to INSTALL_CFG_OBJS
-  (thanks to Martin Wanicki)
-+ Functionality added to intercept all socket-related calls for plugins
-
-03.09.2009
-! Fixed: client connection was not closed on removed Content-Length (may
-  cause connection hang for timeout at the end of large file transfer 
-  if filtering plugins are used).
-
-24.08.2009
-+ Added transparent redirection to ICQ and MSN proxy
-+ Added (untested) Last.fm ripper plugin - initial version, code needs to be
-  cleaned to work under *nix. Thanks to Denis Stanishevskiy.
-
-14.08.2009
-+ WinCE (Windows Mobile) support added
-
-27.07.2009
-! Fixed: use authnserver for name match check if configured
-
-22.07.2009
-+ authnserver command added (nserver to use only with auth dnsname)
-
-13.07.2009
-+ man pages for smtpp and icqpr added
-! traffic correction plugin logics fixed
-
-10.07.2009
-+ 3proxy configuration parser: support added for empty strings ("").
-
-09.07.2009
-+ dnsname authentication added (auth dnsname) - puts validated reverse DNS
-  record (PTR) instead of username
-+ PCREPlugin: Added: \r, \n support from pcre_rewrite rewrite string. Use \0
-  for empty string
-+ PCREPlugin: Added: * may be used instead of regex (no regex is created
-  and checked in this case)
-
-24.06.2009
-! random redirections are really fixed (incomplete fix on 08.04.2009)
-! icqpr "Need recync" problem fixed
-! disable NTLM by default (because of Windows Vista) until NTLMv2 implemented
-! set auth iponly to be default
-
-
-08.04.2009
-! Fixed: distribution between parent proxies was not even because of
-  non-linear probability
-
-18.03.2009
-! Marking as 0.7-devel
-
-06.03.2009
-! Fixed: filters were applied in reverse order
-
-25.02.2009
-! Fixed: beginning of HTTP data may be not passed to filter
-
-22.02.2009
-! handle Content-Length as unsigned long to allow files > 2GB.
-
-10.02.2009
-! Ldapauth plugin corrected according to changes on 02.02.2009
-
-02.02.2009
-+ countout / nocountout commands added
-! Added workaround for Mac OS X / iPhone OS poll() (mis)behaviour.
-
-30.01.2009
-! Flush buffer in case of POLLxxx - probably required for Mac OS X / iPhone OS
-
-24.01.2009
-! Changed WindowsAuthentication to convert username to lowercase
-
-10.12.2008
-! Fixed: login may hang in ftppr in case of large server banner
-
-30.10.2008
-! WindowsAuthentication plugin may sometimes fail with 100122 error
-  on startup because of uninitialized variable.
-
-30.09.2008
-! -lXXX moved to $LIBS in Makefiles for linkers compatibility 
-+ 3proxy for Dummies v.1.2 by Kurmaeff Halit added (in Russian)
-
-26.08.2008
-! Fixed: end of chunked-encoded page may be incorrectly detected
-
-24.07.2008
-! Fixed: buffering problem on multiple chunks
-
-21.07.2008
-! Previous fix was incomplete
-
-13.07.2008
-  Thanks to Hostile Fork:
-! Fixed directory listing building for some rare FTP servers (e.g. HP)
-! Fixed (probably) chunked encoding should now work. REQUIRES TESTING.
-  please report, if you have problems with chunked. 
-
-
-11.05.2008
-+ minor plugin interface additions
-
-03.05.2008
-+ pcre_options implemented
-
-24.04.2008
-! Fixed: bandlimsout may not work if both bandlimsin and bandlimsout
-  are configured.
-
-01.04.2008
-! Fixed: chunked was actually converted to non-chunked
-
-25.03.2008
-+ HTTP chunked support (hopefully) added, not tested yet
-
-13.02.2008
-! Do not shutdown listening socket
-! FTPPR was broken on 10.02 fix
-! ':' may be encoded in ftp:// URI's in proxy
-
-12.02.2008
-! LOGIN and PLAIN authentication were swapped in smtpp.
-
-10.02.2008
-! FTPPR: potential race condition on socket close fixed
-
-07.02.2008
-! MSN: message channels were not captured
-
-05.02.2008
-! Use CDATA for XML data in webadmin module
-
-03.02.2008
-+ MSN / Live messenger proxy (msnpr) addded
-
-02.02.2008
-! Fixed: counters may be flushed on configureation reload
-
-01.02.2008
-! Work with counters with more safe way on configuration reload
-
-28.01.2008
-! Do not compile empty PCRE
-
-17.01.2008
-+ APPE support added to ftppr
-! Fixed problem with counters dumping on reload
-
-16.01.2008
-+ reqip/reqport added to XML data export
-
-15.01.2008
-! cache auth: set default cache type to user/password with 600 sec timeout
-
-14.01.2008
-! Fixed EAGAIN handling in sockmap
-! Fixed: plugins: some data may be sent to the filter functions more than once
-  on incomplete send.
-! int * offset_p  changed to  int offset  in plugins interface
-
-13.01.2008
-! icqpr: fixed new services request hijacking
-
-12.01.2008
-+ icqpr: added support for ICQ 6.0 greeting
-+ icqpr: added support for insecure authentication
-+ icqpr: added support for server migration
-
-11.01.2008
-+ Support for new service requests hijacking added to icqpr
-! Fixed: icqpr: sequence number can be > 0x8000 in current protocol verion
-
-10.01.2008
-! Fixed few rare cases where small amount of data may pass in/out statistics
-  (e.g parent proxy request/response).
-
-09.01.2008
-+ Initial version of icqpr (ICQ proxy). Use it as portmapper to ICQ server:
-  You can also control access by UIN (use 'auth useronly'):
-	auth useronly
-	allow 1369139,1234567
-	icqpr 5190 login.icq.com 5190
-! Corrected seconds fractions calculation in poll() emulation code
-  (probably did not affected any functionality)
-! PCRE library updated to 7.4	
-
-07.01.2008
-!! Error code is now 5-digit
-
-
-27.12.2007
-+ StringsPlugin now supports strings substitution for 'admin' service (Kirill Lopuchov)
-+ PamAuth plugin added (Kirill Lopuchov)
-+ LdapPlugin added (Kirill Lopuchov)
-
-19.12.2007
- Copyright text fixed in source files
-
-18.12.2007
-+ Export added for weadmin strings to use/replace in plugins
-
-17.12.2007
-+ Proxy-support: Session-Based-Authentication added for compatibility
-  with NTLM/Negotiate authentication in IE7.
-
-03.12.2007
-! StringPlugin fixed
-
-23.11.2007
-+ Developer's documentation added
-
-19.11.2007
-! StringPlugin fixes (by Kirill Lopuchov)
-
-09.11.2007
-! Fixed: SOCKS5 authentication was broken some time ago
-
-28.10.2007
-! Fixed: do flush() if logged to file given with -l
-
-25.10.2007
-! Improper extparam structure initialization fixed (caused invalid behavior
-smtpp/pop3p/ftppr if no 'delimchar' configured after 11.10.2007)
-
-19.10.2007
-! StringsPlugin cleanup
-
-11.10.2007
-+ delimchar command added
-
-10.10.2007
-! Fixed: filters are lost on configuration reload
-+ Added chkconfig support to rc.d script
-
-09.10.2007
-! Fixed double addition of authentication function on WindowsAuthentication
-  plugin
-
-25.09.2007
-! Outgoing AUTH LOGIN fixed for smtpp
-! Fixed multiline banners in smtpp
-+ smtpp: default server (-h) may be used without authentication
-
-11.09.2007
-! Documentation corrections, thanx to Vladimir Fesko
-
-30.08.2007
-! Fixed PCRE filter behaviour on configuration reload
-
-29.08.2007
-! Support added for in-line auth plain SMTP authentication. Default parent
-  authentication is changed to LOGIN.
-
-25.08.2007
-! Fixed -h feature (double memory free after second connect)
-+ smtpp (SMTP proxy added). Supports both PLAIN and LOGIN for both client
-  and server, supports default SMTP server.
-
-23.08.2007
-+ %e format specificator added for exaternal IP logging.
-
-22.08.2007
-! dighost corrected to do not change file, if no replay from the server
-  received.
-
-20.08.2007
-+ authcache password added
-! authcache user and user,ip corrected and crash fixed
-
-17.08.2007
-+ Documentation added for authentication cache
-
-16.08.2007
-+ Authentication cache created! New command:
-  authcache authtype time
-  e.g.
-  authcache ip 600
-  and new authentication type: cache, e.g.
-  auth iponly cache strong
-  Doesn't work with NTLM, Requires proxy -n!
-
-07.08.2007
-! define _MAX__TIME64_T, because Microsoft only mentions it in configuration
-  and never actually defines it. Prevents crash on malformed/older counter
-  file.
-
-03.08.2007
-+ 'nolog' command added to extend allow/deny rules (prevent logging
-  for requests mathing allow/deny rules). nolog only affects last allow
-  or deny command.
-+ 'weight' command added to extend allow/deny rules. E.g. 'weight 100'.
-  weight only affects last allow/deny rule.
-
-31.07.2007
-! Error code changed to 100 on failed SOCKSv5 name resolution
-+ FAQ and documentation updates
-+ New command 'logdump' added, to create intermediate log records then given
-  amount of data is archieved through connection
-+ New command 'filtermaxsize' to prevent filtering if expected Content-Length
-  is greater than given value.
-
-21.07.2007
-! rm changed to del in Windows makefiles
-
-07.07.2007
-+ HTTP proxy code fixed to pre-buffer traffic and fix Content-Length in case of
-  short files. For longer files Content-Length is not sent to client. It's safe
-  now to change HTTP content within plugin.
-  Result: pcre_rewrite works perfectly.
-
-05.07.2007
-+ Documentation improved.
-
-28.06.2007
-+ FTP server authentication fixed
-
-26.06.2007
-+ Request authentication for FTP server in HTTP proxy if anonymous logon fails
-
-18.06.2007
-! Documentation fixes
-
-11.06.2007
-! Fixed: \r in *nix installation scripts
-
-31.05.2007
-! PCRE: Fixed: replace on the string of different size
-! PCRE: Fixed: replace only replaces first match
-? PCRE: known problem: in HTTP if size changes after replacement it doesn't
-  match Content-Length any more. Any workaround suggestions? Remove
-  Content-Length on HTTP requests?
-
-07.05.2007
-! PCRE plugin only used first rule
-
-21.04.2007
-! Avoid usage of large stack buffer in proxy
-+ PCREPlugin is now somehow usefull
-
-20.04.2007
-! Minor code cleanup
-
-18.04.2007
-! Fixed: TraffCorrect plugin doesn't NULLify pointer after free()
-
-13.04.2007
-!! Potential buffer overflow fixed on transparent request handling
-   thanks to big_gad_(at)_mail.ru
-
-12.04.2007
-! missed authentication type check in Windows Authentication plugin
-! fixed minor memory leak in tcppm
-
-11.04.2007
-! Compilation issue for structures.h introduced on 09.04 fixed
-
-09.04.2007
-! Minor code cleanup, documentation fixes, rus-win1251.3ps grammatics fixed.
-! *nix plugins compilation issue fixed
-
-08.04.2007
-! Bug fixed on socket mapping (introduced 06.04)
-! Some internal code review without functional changes
-! "parent type IP 0" is now used to specify external IP
-  (like -eIP, but only for connections matching "allow")
-
-06.04.2007
-+ PCREPlugin added. Still in development, not all functionality is implemented.
-
-05.04.2007
-+ StringsPlugin by Kirill Lopuchov is imported
-
-21.03.07
-! Fixed: FTP listing is not shown on long FTP server greeting in HTTP proxy
-! Fixed: FTP listing may noy be shown on specific server timing in HTTP proxy
-
-19.03.07
-! TraffCorrect plugin NULL pointer fixed
-
-16.03.07
-+ It's now possible to use hostnames and patterns in destination ACL. Hostname
-  is checked against requested hostname. Hostnames and networks may be mixed.
-  Example:
-  deny * * *sex*,*porn*,localhost,192.168.0.0/16
-  '*' can not be uses in the middle of the hostname. www*com is invalid
-  pattern.
-! BINDIR changed to BUILDDIR in Makefiles to avoid collision with install
-  on Linux.
-
-15.03.07
-! Documentation update
-
-13.03.07
-+ It's possible to use hostnames in ACL, but it should not be dynamic or
-  multihomed host because hotname is translated to IP immediately.
-
-01.03.07
-! fixed: unnecessary mutex_unlock on trafcounter mutex
-! Cosmetic changes
-
-28.02.07
-+ FTP put support added for HTTP proxy
-! Code cleanups (few warnings fixed)
-! Makefile.Linux changed (by request of Jari Aalto)
-
-22.02.07
-! fixed: ftppr may delay on file uploading
-
-20.02.07
-+ Minor improvements in schedule-handling code
-
-14.02.07
-! Previous FTP (24.12.06) fix was ineffective (operation after break)
-
-01.02.07
-! Documentation typo with portnumber in fordummies.html fixed
-
-25.01.07
-! Typo fixed in gethostbyname_r
-
-23.01.07
-! Plugins are added to main code tree
-
-20.01.07
-! Use gethostbyname_r on Linux and Solaris
-
-18.01.07
-! Set reload flag on Web interface reload, but do not call reload() function.
-  to process reloads in uniform way.
-
-08.01.07
-! Rotate counters with '0' number
-+ Scheduling interface added
-
-29.12.06
-! udppm code cleanup
-
-24.12.06
-! Point ident for openlog to saved copy of string to prevent garbage in syslog
-! Fixed: FTP though parent proxy
-! Fixed: problem fixed for final FTP server response received before data
-  (slow connection).
-
-22.12.06
-! socks4 parent redirection fixed
-! Makefile.Solaris and Makefile.Solaris-gcc are corrected against -o problem
-  in Solaris.
-
-21.12.06
-+ FAQ additions
-
-19.12.06
-! Fixed: POST request problem with NTLM authentication
-+ Access to reload / exit status and proxy stringtable from plugin API
-
-05.12.06
-! Fixed: imcomlete pages through HTTP proxy (Internet Explorer hangs)
-! Minor changes in trafcount/bandlimit for better plugin compatibility
-
-30.12.06
-! Fixed: two 3xx replies on USER command in ftppr.
-
-27.11.06
-! Changed to SAFESQL because actually only Microsoft and Oracle
-  seems to follow ODBC standards.
-
-19.11.06
-+ SITE command support in addition to OPEN for ftppr
-
-18.11.06
-+ -I added to standalone services to be executed from inetd.
-
-14.11.06
-! Fixed behaviour on failed ODBC log attempt
-+ Filtering HTTP request API now works
-
-10.11.06
-+ Try to fallback to stdlog if odbclog fails
-
-07.11.06
-+ Filtering API is partially implemented
-
-01.11.06
-+ -h option added to use as default hostname:port for ftppr/pop3pr.
-
-15.10.06
-! WindowsAuthentication.dll version updated to match current internal
-  structures and changes in plugins API.
-
-13.10.06
-! Exit service on non-recoverable service error
-
-11.10.06
-! Fixed: hostname:xx causes name resolution problem (introduced on 09.10).
-! Fixed: wrong target ports for tcppm/udppm (introduced on 09.10).
-
-09.10.06
-! %Q and %q added to track requested IP/port. Hopefully also problems with
-  ACL checks on redirected applications are finally fixed.
-
-06.10.06
-! WindowsAuthentication.dll replaced with static version in distro
-
-04.10.06
-! Some compilation warnings cleaned
-! Back to static linking
-! Errors introduced with filters corrected
-
-03.10.06
-! Add .manifest files to distribution
-
-28.09.06
-! Compile 3proxy with msvcr80.dll
-+ include msvcr80.dll into distribution
-
-27.09.06
-+ FAQ updated.
-+ Filtering functionality added (incomplete yet).
-! SOCKS BIND/UDPASSOC problems fixed (based on Artem Rebrov's patch)
-
-25.09.06
-! Traffic report name is now generated based on 'last traffic in report'
-  date/time and is not overwritten on service startup. Today traffic report
-  will only be seen tomorrow, but counters may be checked with 'countersutil'
-  or web interface.
-
-13.09.06
-+ Examples of compatible log formats added to 3proxy.cfg.sample
-
-11.09.06
-! Name hash length changed from 64 to 128 bits.
-
-06.09.06
-! Documentation regarding to Unix compilation corrected
-
-
-05.09.06
-! Fixed: buffered input may double some data on empty reads
-+ FTP diagnostics improved for FTP login problems
-+ Add ".." to directory listing
-
-25.08.06
-! Fixed: endless loop on configuration parsing if ACL weekdays are given as
-  a comma delimited list (reported Andrey S. Alexeenko).
-
-23.08.06
-! Fixed: compilation under Solaris
-+ Solaris/gcc Makefile added
-
-17.08.06
-! Fixed: NTLM authentication doesn't work for NT-encoded passwords
-! Fixed: offer NTLM authentication before basic
-
-15.08.06
-! Reset client address after hostname parsing
-! Warn on counterfile time_t incompatibility
-
-10.08.06
-! Fixed: \r's in few Makefiles
-
-09.08.06
-! Documentation corrections.
-
-04.08.06
-! Documentation corrections.
-
-28.07.06
-! Fixed: invalid traffic prediction for large downloads on traffic limits over
-  4GB.
-
-26.07.06
-! nbname auth rejects, if no NetBIOS name determined. Use
-  auth nbname,iponly
-  to emulate old behaviour
-! It's now possible to use "-" in ACLs to match empty username.
-! No need to specify L/G for filename template in "log" (local time is
-  always used).
-
-25.07.06
-+ "log" command now supports same format specifications for filename template
-  as "logformat" (if filename contains '%' sign it's believed to be template).
-  As with "logformat" filename must begin with "L" or "G".
-
-08.07.06
-! nreads/nwrites/nconnects fields added to internal client paramters structure
-  for plugin developments
-
-07.07.06
-! FTP_DATA operation added for FTP data connection ACLs.
-
-04.07.06
-! Scripts/Makefiles corrections
-
-03.07.06
-! Fixed: dnspr 822 error on Windows (seems like a bug with multithreading on
-  latest Visual C compiler, ioctlsocket() resets parameters of setsockopt().
-! Fixed: wrong limit and traffic on counters on the web
-
-30.06.06
-! Fixed: wrong traffic displayed on web for traffic > 4GB
-
-28.06.06
-! Fixed path to binary in scripts/rc.d/proxy.sh
-
-27.06.06
-! Fixed: limitations for traffic over 1GB work incorrectly
-+ Start/stop script example added to distribution
-
-22.06.06
-+ -u parameter added to services to avoid username authentication request/usage
-
-16.06.06
-+ Windows authentication plugin added to binary Windows distribution
-
-14.06.06
-! Added workaround for broken HTTP client (e.g. SUM - SUN update manager) with
-  incomplete URI in HTTP request.
-
-11.06.06
-! bind FTP data connection socket to external interface
-+ FTPPR fully supports parent proxy (SOCKS 4/5, HTTPS/CONNECT)
-+ FTPPR supports FTP_GET/FTP_PUT/FTP_LIST ACL actions limitations
-
-09.06.06
-+ 'auth' can be used with few authentication types now. It makes it possible
-   to request password only on demand with
-   auth ipony strong
-
-08.06.06
-! 'admin' redirect type added for redirection to local web administration
-  service (works like admin -s).
-
-31.05.06
-! Log '-' instead of username if username exists but is empty
-
-29.05.06
-!!!! Warning: counters file format changed on Windows since 0.5.2
-     because of different sizeof(time_t) on Visual C++ 2005 compiler.
-+ countersutil utility added to manage counters. To convert 3proxy.exe
-  0.5.2 counter file to 3proxy.exe current run
-  countersutil oldexport counterfile tmpfile
-  countersutil import counterfile tmpfile
-
-
-25.05.2006
-! Fixed: dnspr command lost from command list
-
-17.05.2006
-! Fixed: nobandlimin actually works like nobandlimout
-
-16.05.2006
-!! Fixed: crash if more than one "users" command in configuration
-! Fixed: timezone display for FreeBSD and Windows
-+ added %o format specification for 3-character mOnth abbriviation
-! Fixed: check EINTR on poll() (avoids "Interrupted system call" in logs
-  and broken connection on USR1 signal.
-
-12.05.2006
-! Fixed: log rotation was broken after client code rewrite
-
-11.05.2006
-! Cleaned: "mypoll" error if compiled with GCC withoout WITH_POLL
-
-10.05.2006
-! Use SO_REUSEPORT if defined
-
-06.05.06
-! Minor HTTP proxy redirections code cleanup
-
-03.05.06
-+ socks error codes improved
-
-02.05.2006
-! Fixed: compilation for Unix (plugins)
-
-01.05.2006
-! Fixed: names for authentication types turned back for compatibility
-! Fixed: no warning given for unknown authentication type
-! Fixed: bandlimout doesn't work if bandlimin presents for same connection
-
-30.04.2006
-! Fixed: nobandlimin/nobandlimout commands missed
-++ plugin command added to load dynamic library
-
-25.04.06
-! Internal structures moved to diffent header file
-
-20.04.06
-! Fixed: few problems with logging after latest modification (out of memory
-  reference on hostname).
-  SQL injections now are filtered even if \' is not in filtered characters.
-
-17.04.06
-! Few bugs introduced on 13.04 (especially 'nocountin' crash) fixed
-! Significant changes to internal structures
-! Compilation problems under Linux/Unix fixed
-
-13.04.2006
-! 3proxy.c configuration reading major code rewrite
-! Fixed: memory leaks on configuration reload
-! Changed from CreateThread to _beginthreadex according to MS reccomendations
-! Changed: FTP start data transfer code from 101 to 125 in FTPPR
-+ NLST support added to ftppr
-
-05.04.2006
-+ Minor documentation and help screen updates
-
-30.03.2006
-!! Windows distribution compiler changed to MSVC 8.0
-++ bin64 (Windows XP/2003 64 bit edition x64) added
-	
-29.03.2006
-! Socket leak fixed on FTP data connection failure under Windows
-! minor 64 bit compatibility code cleanup
-+ x64/amd64 Windows XP/2003 64 bit edition makefile added
-
-24.03.2006
-! Minor FAQ dummy compatibility updates
-
-18.03.2006
-+ Parameters descriptions and XML stylesheet added to webadmin services view
-! Potential problem (wrong type dereference) fixed in webadmin services
-
-12.03.2006
-! Restore sasize after receivefrom
-
-10.03.2006
-! Fixed: CONNECT with http parent 
-+ bandlimout / nobandlimout implemented
-! Copyrights and banners fixed
-
-08.03.2006
-! Minor poll() code cleanup
-
-06.03.2006
-! Socks 4a name resolution fixed
-! Name resolution function was not cleared after configuration reload
-
-03.03.06
-! Print comments in traffic report
-
-26.02.06
-! Check POLLERR / POLLHUP for revents
-
-21.02.06
-+ "monitor" command added to reload 3proxy if monitored file changes
-
-13.02.06
-! Some files are renamed for autotools compatibility
-
-07.02.06
-! Fixed: insufficient timeout on buffers flushing, leads to loss
-  of data if connection to client is worse than connection to server.
-
-06.02.06
-+ -b (bufsize) parameter added to every service
-! flushing improved to prevent data loss at the end of output 
-
-03.02.06
-! Documentation corrected
-
-10.01.06
-+ Documentation updated
-! Buffered UDP data loss on exit is fixed for sockmap
-
-30.12.05
-! Minor interface fixes
-
-27.12.05
-+ English FAQ added
-
-20.12.05
-! Fixed: crash on counters in webadmin if "NONE" counter rotation type
-  is used.
-
-09.12.05
-! Use bind port from BIND request for SOCKSv5 server
-
-30.11.05
-! Do not buffer UDP packets
-
-30.11.05
-! Do not drop connection on unknown command
-
-29.11.05
-! Do not drop connection on POP3 CAPA.
-
-28.11.05
-! Fixed: recv() may be called with small buffer on UDPPM
-
-23.11.05
-! Fixed: programming bug in $ file inclusing
-! Fixed: webadmin conter type uses stack for return value
-
-17.11.05
-+ Makefile.Solaris added, thanks to 'pqr'.
-! Cleaned pointer conversion warnings
-
-15.11.05
-! define PTHREAD_STACK_MIN if not defined to compile under Solaris
-! S_NONE renamed to S_NOSERVICE to compile under Solaris
-
-14.11.05
-! Linger period is set to STRING_L (60 sec default)
-
-10.10.05
-! Add some grace period to shutdown services before exit
-
-03.10.05
-! Linger added to FTP socket to avoid data loss on socket close
-
-29.09.05
-+ Added H (hour) and C (minute) routation support to countin
-
-22.08.05
-! Fixed: UDP resolver (nserver) fails to resolve name if reply contains
-  no additional records (for example dnscache from djbdns).
-
-06.08.05
-!!Workaround added for Windows XP SP2 / Windows 2003 SP1 problem with
-  2 selects on single datagram socket. udppm -s and dnspr hang on random
-  time while sending packets to client, sometimes causing client timeouts.
-
-
-05.08.05
-! Fixed problem with UDP mappings
-! Workaround for strange Windows XP bug with sendto() delay for 2 secs
-  if no select() was performed on socket
-
-30.07.05
-! Error handling on SOCKSv5 parent improved
-
-28.07.05
-+ Support for parent SOCKS4b/SOCKS5b (broken implementation with shortened
-  server reply) added. I never saw such server by they say there are.
-  socks4b, socks5b options for parent proxy.
-
-22.07.05
-+ Name resolution for parent CONNECT, SOCKSv5 and SOCKSv4a proxy server
-  added, should work with "fakeresolve" option (connect+, socks4+
-  socks5+ options for parent proxy).
-
-13.07.05
-! Fixed: reading behind allocated memory in myrand() entropy
-  gathering function (leads to occasional craches) intrdoduced
-  on June, 20.
-
-12.07.05
-! Use client port only for portmappers
-! Code reviewed for possible double close()
-
-10.07.05
-! Improved quote handling in config files. No any string can be quoted
-  (for example Thi"s is a test" is same as "This is a test", fixed a
-  problem with using quotes with $ macro.
-
-01.07.05
-+ Added RSA copyright text to 'mycrypt' to allow binary redistribution
-  for this tool only.
-
-22.06.05
-+ try to use same (unprivileged) port as client for outgoing connections
-  for portmappers
-! admin -s now only shows counters related to user
-! Fixed: impossible to set traffic limit to even number of GB
-
-20.06.05
-! -a option corrected again (had inverted action)
-+ -a1 option added to report random information about client IP
-+ -s option added to 'admin' to allow safe-only commands (user mode)
-
-26.05.2005
-! -a option corrected
-
-25.05.2005
-+ 'Y' (annually) option added to counters, logfile rotations, etc
-+ -a (anonymous) option added to proxy server
-
-21.05.2005
-! socks: only allow UDP mapping from same IP with control connection
-! socks: always log network parameters for control connection
-! check timeout to be below 2000000
-
-20.05.2005
-! invalid sendto() argument fixed (may affect UDP mapping and sometimes
-  TCP under very rare configurations)
-! set sasize before sendto
-! socks checks requested address to be non-zero
-! socks checks requested port to be non-zero
-! socks: do not change UDP client parameters before UDP packet received
-
-19.05.2005
-+ 'include' command added to 3proxy (include one config file from another
-   config file)
-! handle EAGAIN on send()/recv()
-
-18.05.2005
-! More detailed problem code in mapping code
-
-17.05.2005
-! Fixed typo with dnspr logging
-
-16.05.2005
-+ dnspr can now resolve records different from hostname (request is proxied to
-  first DNS server in the list, reply is not cached).
-
-14.05.2005
-! Fixed: mishandled socket error in dnspr code
-
-13.05.2005
-! Few minor fixes in HTTP proxy code (timeout in initial handshake lefts
-  some garbage in request buffer).
-! Fixed short timeout in FTP proxy code
-! Mapping code is changed to leave unsent data on buffer
-
-06.05.2005
-! Prevent race conditions with 100% CPU usage in socksmap (introduced 30.04)
-
-03.05.2005
-! Fixed: double free() in authentication (probably introduced on 04.04)
-! Changed to POLLIN/POLLOUT/POLLPRI for more compatibility
-
-30.04.2005
-! Fixed: double free() in FTP over HTTP (probably introduced on 04.04)
-! Fixed: in very rare situation may loose some data at the and of connection
-
-27.04.2005
-! stack size increased (reported problems under some OSs)
-! Fixed: -l option for service executable leads to NULL-pointer reference
-!!! Moved from select() to poll() on *nix. Please upgrade your Makefiles.
-
-25.04.2005
-! set thread stack size explicitly to prevent problems with some Linux 2.6
-  kernels.
-
-22.04.2005
-! Never fallback to gethostbyname() if nameservers are configured to prevent
-  locking on *nix platforms
-!!Fixed: name resolution is called while mutex is locked in HTTP proxy
-  leading to long lasting blocking.
-
-21.04.2005
-! Fixed: dnspr returns A record of invalid class (fails with some resolvers)
-!! Socket I/O  is now non-blocking
-
-19.04.2005
-! bandlimits changed to avoid floating point operations
-
-11.04.2005
-+ Log if new connections delayed because of too many accepted connections
-
-04.04.2005
-! Fixed few minor rare memory leaks
-
-03.04.2005
-! Fixed: HTTP proxy should ignore Content-Length for 304 response
-
-14.03.2005
-! MD5 password hashin within mycrypt utility fixed
-! dnspr logging now shows DNS server IP instead of resolved IP, resolver IP
-  is shown in additional info
-
-11.02.2005
-! Configuration reload removed from signal handler
-
-31.01.2005
-! Limit for maximum log string size increased to ~4K
-! large FD_SETSIZE and FD_SETSIZE check is not required under Windows
-
-28.01.2005
-! Fixed: -s options for udppm
-
-17.01.2005
-! Fixed: invalid IP may appear in logs and bandlimits on redirection
-
-13.01.2005
-+ fakeresolve option added
-
-21.12.2004
-! Fixed: traffic limits are set improperly for traffic over 1Gb
-
-11.12.2004
-! 0.6 development started
-
-11.12.2004
-Commited as 0.5b
-11/12/2004 3[APA3A]tiny proxy 0.5b
-New features marked with !.
-
- Features:
-  1. General
-	+ HTTP/1.1 Proxy with keep-alive client and server support,
-          transparent proxy support.
-	+ FTP over HTTP support.
-	+ DNS caching with built-in resolver
-	+ HTTPS (CONNECT) proxy
-	+ SOCKSv4/4.5 Proxy
-	+ SOCKSv5 Proxy
-	! UDP and bind support for SOCKSv5 (fully compatible with
-	  SocksCAP/FreeCAP for UDP)
-	+ Transparent SOCKS->HTTP redirection
-	! Transparent SOCKS->FTP redirection
-	! Transparent SOCKS->POP3 redirection
-	+ POP3 Proxy
-	! FTP proxy
-	! DNS proxy
-	+ TCP port mapper
-	+ UDP port mapper
-	+ Threaded application (no child process).
-	! Web administration and statistics
-  2. Proxy chaining
-	+ Parent proxy support for any type of incoming connection
-	+ Username/password authentication for parent proxy(s).
-	+ HTTPS/SOCKS4/SOCKS5 and redirection parent support
-	+ Random parent selection
-	+ Chain building (multihop proxing)
-  3. Logging
-	+ turnable log format compatible with any log parser
-	+ stdout logging
-	+ file logging
-	+ syslog logging (Unix)
-	+ ODBC logging (Windows and Unix)
-	+ log file rotation (hourly, daily, weekly, monthly)
-	+ automatic log file comperssion with external archiver (for files)
-	+ automatic removal of older log files
-	! Character filtering for log files
-	! different log files for different servces are supported
-  4. Access control
-	+ ACL-driven (user/source/destination/protocol/weekday/daytime or
-	combined) bandwith limitation
-	+ ACL-driven (user/source/destination/protocol/weekday/daytime or
-	combined) traffic limitation per day, week or month
-	+ User authorization by NetBIOS messanger name
-	+ Access control by username, source IP, destination IP, destination
-	port and destination action (POST, PUT, GET, etc), weekday and daytime.
-	+ Access control by username/password for SOCKSv5 and HTTP/HTTPS/FTP
-	+ Cleartext or encrypted (crypt/MD5 or NT) passwords.
-	+ Connection redirection
-	+ Access control by requested action (CONNECT/BIND, 
-	  HTTP GET/POST/PUT/HEAD/OTHER).
-	! NTLM authentication for HTTP proxy access
-	! All access controle entries now support weekday and daytime
-	limitations.
-  5. Configuration
-	+ support for configuration files
-	+ support for includes in configuration files
-	+ interface binding
-	+ running as daemon process
-	+ utility for automated networks list building
-     Unix
-	+ support for chroot
-	+ support for setgid
-	+ support for setuid
-	! support for signals
-     Windows NT/2K/XP/2K3
-	+ support --install as service
-	+ support --remove as service
-	+ support for service START, STOP, PAUSE and CONTINUE commands (on
-	PAUSE no new connection accepted, but active connections still in
-	progress, on CONTINUE configuration is reloaded)
-     Windows 95/98/ME
-	! support --install as service
-	! support --remove as service
-  6. Compilation
-	+ MSVC (msvcrt.dll)
-	+ Intel Windows Compiler (msvcrt.dll)
-	+ Windows/gcc (msvcrt.dll)
-	+ Cygwin/gcc (cygwin.dll)
-	+ Unix/gcc
-	+ Unix/ccc
-
- Known bugs:
-
-	report to 3proxy@security.nnov.ru
-
- Planned for future (0.6) release:
-   - External modules API
-   - Addon URL, antiviral, HTTP cache filters modules, authentication
-     modules for different protocols (RADIUS, PAM, integrated system, etc).
-
-$Id: Changelog,v 1.154 2006/03/08 18:44:00 vlad Exp $
-
-11.12.2004
-+ man page for 3proxy.cfg added
-
-09.12.2004
-! restarting SQL on reloading configuration
-
-08.12.2004
-! Typo fixed in sockmap preventing portmappers from functioning
-
-06.12.2004
-+ Network input is now buffered, decreasing CPU usage
-- Debugging printf() removed from ftppr
-
-30.11.2004
-!! Fixed: memory content may be leaked on FTP error in HTTP proxy
-! Few race conditions with double socket closing fixed in FTP proxy
-+ Content-Length is checked to do not allow traffic overdraft via HTTP proxy
-+ Connection now can be aborted due to traffic limit (code 90)
-
-24.11.2004
-! 333 error removed - no longer required
-
-23.11.2004
-! Deadlock in checkACL() (introduced 18.11) fixed
-
-20.11.2004
-! All mutex operation are now atomic to prvent deadlocks
-! Race conditions with bamdlimits on reload fixed
-
-18.11.2004
-! Mutex logic overwritten, should clear reload races completely
-! Fixed socket leak on some failed FTP operations
-! FD_SETSIZE increased, check for FD_SETSIZE added
-
-04.11.2004
-! Fixed: Maxconn limitation doesn't work, may lead to resource exhaustion
-  attacks
-! Fixed: reference to unallocated memory if fails to create new thread
-  (may lead to crash together with previous bug).
-
-03.11.2004
-! Fixed: Wrong type for "ace.users" in datatypes.c
-! Partially fixed: race conditions on reload in alwaysauth()
-
-02.11.2004
-! race condition in sql_init on reload fixed
-! minor code cleanup
-! typo with SQL deadlock introduced on last fix fixed
-! checked few memory allocation calls missed with debug library (myalloc)
-
-30.10.2004
-! Fixed: minor memory leak on SQL error
-
-28.10.2004
-+ HTTP parent redirection for FTP requests
-
-23.10.2004
-! Fixed: access to free()'d memory in ODBC functions after few 
-  configuration reloads
-! Configuration reload is more (but not yet completely) thread safe 
-  now.
-
-17.10.2004
-! Fixed: Content-Type: missed in web interface
-
-16.10.2004
-! Fixed: log may show invalid IP/port for parent proxy connection
-
-12.10.2004
-- Debug printing to stdout in webadmin removed
-
-11.10.2004
-! Race conditions fixed, could cause 3proxy to crash on configuration reload
-
-28.09.2004
-! Limitation for maximum string length in config file removed (for included files)
-
-26.09.2004
-! Typo corrected preventing compilation under *nix
-
-18.09.2004
-! URL decoding corrected (affect HTTP over FTP clients)
-+ "writable" command added to allow config modification via Web interface
-+ Config file can be edited via web interface
-
-14.09.2004
-! Crash on HTTP redirections introduced on 08.09 fixed.
-
-11.09.2004
-+ Weekday based access control is now possible
-+ Time based access control added
-! Speed improved in ACL checks
-
-08.09.2004
-+ * can be used as external username with a meaning of username should be
-  requested from user.
-+ %n1-n2T is now available in logformat to log only few field of service
-  specific text
-+ -t (silent start) option added
-
-20.08.2004
-! Yesterday fix was broken, corrected.
-
-19.08.2004
-! Fixed: target address is logged instead of proxy address in a case
-  of redirection
-
-09.08.2004
-! Fixed: under *nix if service fails to bind() port for few hours it falls
-  into endless loop with logging and high CPU usage.
-
-03.08.2004
-! Fixed: select() changes tv value on some Linux kernels (100% CPU usage)
-
-02.08.2004
-! Fixed: wrong initialization for counter descriptor (causes some stdout
-  noise).
-! Fixed: no HTTP proxy diagnostic message if host name doesn't resolve
-! Fixed: NULL pointer crash if no format specified
-
-30.07.2004
-! Few bugs with counters and bandlimits introduced yesterday fixed
-
-29.07.2004
-! Fixed few memory leaks on restart
-! Some code cleanup for configuration information storing
-+ Statistics extended
-+ Added "Zombie" threads support (service thread waiting for child shutdown
-  to exit).
-+ Every service can now have different log format and character filtering
-+ It's now possible to set logformat for service from command line
-
-28.07.2004
-! Fixed: ACLs are not cleared on reload
-! Fixed: bind() warnings on reload under *nix
-!! Fixed potential race conditions DoS on some Unix systems with thread
-   exit on aborted connection (accept(): Software caused connection abort)
-
-24.07.2004
-+ Web interface shows information about all currently running services and
-  clients (plain format just for debugging, will be rewrtitten later)
-
-23.07.2004
-! Fixed: wrong external ip/port in logs sometimes on internal redirection
-+ HowTo and FAQ (Russian) added to documentation, documentation corrected
-
-22.07.2004
-+ Added logging options for request duration and average send/recieve
-  speed per request
-
-20.07.2004
-! Changed default password for anonymous FTP
-! Improved diagnostic messages for FTP over HTTP errors
-
-19.07.2004
-! Changed FTP behaviour for some RFC ignorant sites
-
-17.07.2004
-+ services and clients are now registered for future extensions
-! counters show wrong result problem introduced yesterday fixed
-! fixed descriptor leak on configuration reload
-! fixed theoretical problem with client number limitations
-! few theoretical mutex leaks fixed
-
-16.07.2004
-+ 3proxy can now read configuration from stdin under *nix,
-  3proxy.cfg can be executable 
-+ 'config' command added to allow 3proxy reload configuration in chroot'ed
-  environment or if configured from stdin.
-+ 'end' command added
-+ Man pages in HTML added
-
-14.07.2004
-! Minor casting issues, Unix compilation issues fixed
-+ counters sample added
-
-13.07.2004
-+ Configuration improved and repacked
-
-08.07.2004
-! Problem introduced yesteday (after rotation logs do not print to
-  logfile) fixed.
-
-07.07.2004
-! Fixed FTP behaviour on RFC ignoring FTP sites (ftp.drweb.ru).
-! Config file example updated with FTP proxy service configuration
-+ Logging changed to allow personal log files for every service (without
-  rotation) and to work on older FreeBSD systems.
-
-05.07.2004
-! Fixed call to free'ed memory (could cause crash on reloading 3proxy
-  configuration in 0.5b-devel after 28.06.2004)
-
-30.06.2004
-! Fixed redirection crash if parent username/password is not specified
-! Fixed documentation buf (%h instead of %n for hostname in logformat)
-
-28.06.2004
-! Minor changes in error messages generation
-
-25.06.2004
-! distributive repacked, some Russian documentation by Kirill Lopuchov
-  added
-
-24.06.2004
-! realm sometimes is not shown in proxy-authentication
-
-23.06.2004
-! fixed maxconn parameter was not set to default value on proxy reload.
-! fixed typo in pop3p causing it to fail
-
-22.06.2004
-! ftppr.c typo corrected, preventing compilation under unix.
-
-19.06.2004
-+ FTP proxy (compatible with both USER and OPEN mode). Redirection to
-  FTP proxy from SOCKS
-
-18.06.2004
-+ Local redirection to POP3 proxy is now awailable.
-! Fixed race conditions with double socket closing in POP3 proxy
-
-17.06.2004
-!! Threading problem causing minor memory leak and preventing 3proxy
-   from functioning under few OS versions (including Linux) after
-   some number of requests fixed.
-
-16.06.2004
-! Authentication problem introduced on 05.06 fixed
-
-15.06.2004
-! FTP over HTTP proxy supports spaces, quotes and 0x255 in filenames.
-!! Potential security risk fixed: FTP password may appear in log if
-   URL ftp://user:password@server is used.
-
-09.06.2004
-! NTLM is enabled by default. Use proxy -n to disable NTLM for proxy service
-  (for example, if crypt passwords are used).
-
-05.06.2004
-!! Potential security leak fixed: POP3 proxy password can appear in log if
-   proxy username is configured as proxyuser:proxypassword:pop3user@pop3server
-   in POP3 client program
-! Child invocation code rewritten to avoid code dupclication.
-
-27.05.2004
-! Reloading is now fast (new thread starts before old one dies)
-! Milliseconds are printed as .3 (not .4) in logs
-
-22.05.2004
-+ Reload command added to Web interface and SIGUSR1 handling
-! Problem fixed: no mode is given to open() with O_CREAT for counter files,
-  counter file can be created as read only under Windows or with invalid mask
-  under Unix.
-! Do not fail if bind() fails
-! Setsockopt for integer options corrected
-! REUSEADDR added to avoid "Address already in use" problem if restarted
-  under Unix
-
-18.05.2004
-+ Installation/removal as a service under Windows 95/98/ME now supported.
-
-17.05.2004
-! Fixed: 3proxy hangs on socket error during config reading
-
-14.05.2004
-! For HTTP proxy NTLM authentication both ntlm and basic are now advertized
-  to client for compatibility
-! Optimization parameters are changed and stack protection is turned on for
-  MSVC (Windows default) compilation.
-! Fixed: exiting thread shows last client IP in log
-  
-
-27.04.2004
-! Fixed: Microsoft domain authentication to web server may fail via
-  transparent HTTP proxy with some IE versions.
-! HTTP HEAD now recognized
-
-23.04.2004
-! Fixed compilation issues under Unix
-
-22.04.2004
-+ Configuration now can be dynamically reloaded with
-  net pause 3proxy / net continue 3proxy or by sending SIGPAUSE twice
-  without breaking connections
-! 3proxy is now distributed compiled with Microsoft Visual C++, thanx
-  to MS for releasing "Microsoft Visual C++ Toolkit 2003" for free.
-! Few bugs introduced in latest versions (username/password for parent proxy,
-  dnspr and single packet UDP are fixed)
-
-13.04.2004
-+ NTLM authentication for proxy server (yes, it works under *nix). It will
-  not work with crypt password, only CL or NT. Use proxy -n to allow NTLM.
-! potential DoS (NULL pointer) condition fixed in configuration with crypted
-  passwords
-
-08.04.2004
-+ %n (hostname) added to logformat
-
-05.04.04
-! compilation problem under Unix fixed
-
-01.04.04
-! problem with portmappers fixed (introduced on last modification)
-
-20.03.04
-+ FTP messages are shown now
-! FTP problem with links with absolute paths fixed
-! No more authentication requested for user if ACL denies access to resource
-  in HTTP proxy.
-! ACLs are now stored in predefined container. It's required for future
-  improvement (Cisco-like ACL configuration and configuration reload without
-  restarting proxy). As a backside, number of ACLs is now limited to 256.
-! Function for configuration reading implemented for future improvements.
-
-12.03.2004
-! error text generation changed for pthread_create (use return code
-  instead of errno). Memory leak on failed pthread_create fixed.
-
-02.03.2004
-! Transparent proxy fixed to work with ports different from 80.
-! Workarond for Internet Explorer invalid Host: header bug
-
-28.02.2004
-+ -+ options added to logformat for character filtering
-! ' character now filtered only if logged via ODBC
-! few bugs fixed in ODBC logging reliability code. Now 3proxy should better
-  handle broken database connections.
-
-26.02.2004
-! user32 added to library list for MSVC
-
-24.02.2004
-! Ask installation confirmation before installation
-
-23.02.2004
-! ttl now is real for DNS proxy proxy reply
-
-21.02.2004
-+ dnspr - DNS caching proxy added to 3proxy module. Listens on UDP/53
-  and answers hostname requests. Requires nserver/nscache to be configured.
-! 3proxy wanrs user if installed as Windows service
-! 3proxy child threads are now started faster
-
-22.01.2004
-! mutex deadlock fixed if gethostbyname() is used under Unix
-
-19.01.2004
-! compilation issue fixed for MSVC (definition inside code)
-
-15.01.2004
-! bug fixed in configuration reading getip() called befor WSAStartup
-  (thanks to Kerd)
-! bug fixed with parent CONNECT proxy (thanks to Kerd)
-
-11.01.2003
-+ Few man pages added
-
-06.01.2003
-+ now it's possible to use "" inside quotation for double quote sign (for
-  example "say ""hello world"""
-
-04.01.2004
-+ maxconn configuration option added
-
-19.12.2003
-+ New "safe" memory allocation library implemented. It may slow down
-  performance but is thread safe and never cause memory fragmentation.
-! Memory leak in redirection SOCKS->HTTP fixed
-
-11.12.2003
-! Memory leak in UDPPM fixed
-
-29.11.2003
-+ Copyrights added to banners
-!! Few signed/unsigned mismatches fixed (including potentially dangerous)
-
-27.11.2003
-! 'redirect' now can be used with hostname instead of ip address
-
-21.11.2003
-! POP3 proxy bug fixed
-
-04.11.2003
-! '@' situation in username for POP3 proxy corrected 
-  (pop3name@pop3realm@pop3server)
-
-03.11.2003
-! One more bug with 'archiver' causing 3proxy to crash on log archieving
-  fixed
-
-29.10.2003
-! Some threading safety is added for logging (inet_ntoa and ODBC
-  re-initialisation)
-
-28.10.2003
-! Bug causing daily log filename to work as weekly fixed
-! 'daemon' example moved to beginning of configuration file
-
-16.10.2003
-+ pidfile configuration option added
-+ processing for SIGCONT (pause/resume) and SIGTERM (termination) added
-  under Unix
-
-01.10.2003
-! Weekly log filename now is generated by the date of last Sunday.
-! Do not strip executable for Unix (must be stripped during installation).
-
-21.09.2003
-! Bug fixed in "log" command processing (wrong buffer was used
-  for filename generation)
-
-16.09.2003
-! socksmapping algorythm changed to handle incomlete send() (for *BSD).
-
-15.09.2003
-! mutex added to gethostbyname() to avoid thread unsafety. It slows
-  down proxy if no nserver configured (it MUST be for *nix!) but prevents
-  crashing on active usage.
-! signal() handling is added for SIGPIPE. It seems to be some race conditions
-  on FreeBSD between send() and gethostbyname() somewhere causing SIGPIPE on
-  gethostbyname().
-
-13.09.2003
-! NULL reference corrected if rotate is given without archiver
-
-11.09.2003
-! Few additional checks added for open()/fopen() to do not crash on invalid
-  files in config
-! Buffer moved from stack to heap in socks.c to eliminate crash on FreeBSD
-
-10.09.2003
-! Bug in SOCKSv5 UDP mapping corrected. Now it works fine (checked with
-  Unreal Tournament) with both SocksCAP and FreeCAP.
-
-06.08.2003
-! Algorithm for SOCKS5 bind/udp assoc port selection is now intellegent
-  enough to allow server applications to use same port number on socks
-  server if available and not denied by access list
-! SOCKS5 bind/udp assoc now matches incoming connections/packet
-  with IP address from request in accordance to RFC 1928 to improve
-  security
-
-04.08.2003
-!!! Bug fixed sometimes causing 3proxy to crash if parent proxy is used
-!!! UDP associate finaly completed and is fully functional
-    (tested with SocksCAP on Unreal Tournament). 
-!!! TCP bind code re-checked, and is probably working (doesn't work
-    on SocksCAP because of SocksCAP bug
-!!! Socket leak on nbname auth fixed
-
-21.07.03
-+ Web administration module created
-+ Dynamic enable/disable for counters now available via web interface
-
-19/07/2003 3[APA3A]tiny proxy 0.4
-New features marked with !.
-
- Features:
-  1. General
-	+ HTTP/1.1 Proxy with keep-alive client and server support,
-          transparent proxy support.
-	! FTP over HTTP support.
-	! DNS caching
-	+ HTTPS (CONNECT) proxy
-	+ SOCKSv4 Proxy
-	+ SOCKSv5 Proxy (TCP only)
-	+ Transparent SOCKS->HTTP redirection
-	+ POP3 Proxy
-	+ TCP port mapper
-	+ UDP port mapper
-	+ Threaded application (no child process).
-  2. Proxy chaining
-	+ Parent proxy support for any type of incoming connection
-	+ Username/password authentication for parent proxy(s).
-	+ HTTPS/SOCKS4/SOCKS5 and redirection parent support
-	+ Random parent selecttion
-	+ Chain building (multihop proxing)
-  3. Logging
-	+ turnable log format
-	+ stdout logging
-	+ file logging
-	+ syslog logging (Unix)
-	+ ODBC logging (Windows and Unix)
-	+ log file rotation (hourly, daily, weekly, monthly)
-	+ automatic log file comperssion with external archiver (for files)
-	+ automatic removal of older log files
-  4. Access control
-	! ACL-driven (user/source/destination/protocol or combined) bandwith
-	limitation
-	! ACL-driven (user/source/destination/protocol or combined) traffic
-	limitation per day, week or month
-	+ User authorization by NetBIOS messanger name
-	+ Access control by username, source IP, destination IP, destination
-	port and destination action (POST, PUT, GET, etc).
-	+ Access control by username/password for SOCKSv5 and HTTP/HTTPS/FTP
-	+ Cleartext or encrypted (crypt/MD5 or NT) passwords.
-	+ Connection redirection
-	+ Access control by requested action (CONNECT/BIND, 
-	  HTTP GET/POST/PUT/HEAD/OTHER).
-  5. Configuration
-	+ support for configuration files
-	+ support for includes in configuration files
-	+ interface binding
-	+ running as daemon process
-	+ utility for automated networks list building
-     Unix
-	+ support for chroot
-	+ support for setgid
-	+ support for setuid
-     NT
-	+ support --install as service
-	+ support --remove as service
-	+ support for service START, STOP, PAUSE and CONTINUE commands (on
-	PAUSE no new connection accepted, but active connections still in
-	progress)
-  6. Compilation
-	+ MSVC (msvcrt.dll)
-	+ Intel Windows Compiler (msvcrt.dll)
-	+ Windows/gcc (msvcrt.dll)
-	+ Cygwin/gcc (cygwin.dll)
-	+ Unix/gcc
-	+ Unix/ccc
-
- Known bugs:
-
-	- udppm doesn't work if compiled with cygwin. 
-
-	  Cygwin doesn't support recvfrom()/sendto() on connected socket, so
-	  recv/send is used instead... Not a big deal anyway.
-
-
- Planned for future release:
-   - Web interface for configuration
-   - Signal handling on Unix (for stop/pause/resume/configuration change)
-   - External filter API
-   - Addon URL, antiviral, HTTP cache filters
-
-17.07.03
-+ ODBC changed to re-establish broken connection
-
-11.06.03
-! #ifndef NOSQL changed to NOODBC
-
-22.05.03
-+ strong auth now supported for POP3 proxy. Now, username can be in format
-  proxy_username:proxy_password:POP3_username@pop3server
-
-30.04.03
-! redirect function now do not change code of traffic limit error
-
-24.04.2003
-! -M changed to -D for *nix makefiles
-
-18.04.2003
-! HTTPS behaviour breaked by latest patches restored
-
-15.04.2003
-! fixed handling of special characters and non-existing files in
-  FTP over HTTP proxy.
-
-12.04.2003
-! fixed behaviour of HTTP proxy on RFC-incompatible web servers (banners
-  exchanges, price.ru, etc) - they terminate string with \n instead of
-  \r\n.
-
-10.04.2003
-+ nsrecord and dialer commands added
-! Name resolution now occures right before authorization to prevent
-  unauthenticated users from performing NS lookups and demand dial.
-
-05.04.2003
-+ N (Never) option value added for counters refreshing
-
-29.03.2003
-+ !!! FTP support for HTTP proxy added. 
-
-25.03.2003
-! Socks 4 bug fixed (was visible in Netscape)
-+ Socks 4.5 support added (not tested)
-! !! UDP portmapper code fixed
-
-24.03.2003
-! Timeout, close on closed socket and FD bugs fixed in UDPPM
-
-21.03.2003
-+ Proxy-Authorization now works for CONNECT (HTTPS proxy).
-
-07.03.2003
-! counter command extended to allow traffic reports
-
-02.03.2003
-! Bandwidth/Traffic limiting problems fixed
-! gethostbyname() argument limited to 256 characters. It may be significant
-  for Windows
-
-27.02.2003
-+ !!! Traffic limitting feature added (counter/countin/nocountin)
-
-26.02.2003
-! nobandlim processing changed
-! bandlim/nobamdlim commands renamed to bandlimin/nobandlimin
-
-22.02.2003
-+ !!! Bandwidth limiting features added (bandlim and nobandlim commands)
-
-18.02.2003
-+ Mutext support added for inter-thread data access. Should improve stability.
-- debugging printf() removed from proxy, typo fixed in auth.c
-
-10.02.2003
-! Changed to use WSASocket()/WSAAccept() instead of socket()/accept() under
-  Windows
-
-30.01.2003 
-! Version of gcc changed (3.2).
-+ nscache option added to 3proxy configuration for DNS cache. For a while
-  caching is primitive (with no expiration).
-
-27.01.2003
-- \n removed from perror() calls
-
-27/01/2003 3[APA3A]tiny proxy 0.3b.
-New features are marked with !.
-
- Features:
-  1. General
-	+ HTTP/1.1 Proxy with keep-alive client and server support,
-          transparent proxy support.
-	! HTTPS (CONNECT) proxy
-	+ SOCKSv4 Proxy
-	+ SOCKSv5 Proxy (TCP only)
-	! Transparent SOCKS->HTTP redirection
-	+ POP3 Proxy
-	+ TCP port mapper
-	+ UDP port mapper
-	+ Threaded application (no child process).
-  2. Proxy chaining
-	! Parent proxy support for any type of incoming connection
-	! Username/password authentication for parent proxy(s).
-	! HTTPS/SOCKS4/SOCKS5 and redirection parent support
-	! Random parent select
-	! Chain building (multihop proxing)
-  3. Logging
-	! turnable log format
-	+ stdout logging
-	+ file logging
-	+ syslog logging (Unix)
-	! ODBC logging (Windows)
-	+ log file rotation (hourly, daily, weekly, monthly)
-	+ automatic log file comperssion with external archiver (for files)
-	+ automatic removal of older log files
-  4. Access control
-	+ User authorization by NetBIOS messanger name
-	+ Access control by username, source IP, destination IP and destination
-	port
-	+ Access control by username/password for SOCKSv5 and HTTP
-	+ Cleartext or encrypted (crypt/MD5 or NT) passwords.
-	+ Connection redirection
-	! Access control by requested action (CONNECT/BIND, 
-	  HTTP GET/POST/PUT/HEAD/OTHER).
-  5. Configuration
-	+ support for configuration files
-	+ support for includes in configuration files
-	+ interface binding
-	+ running as daemon process
-	! utility for networks list building
-     Unix
-	+ support for chroot
-	+ support for setgid
-	+ support for setuid
-     NT
-	+ support --install as service
-	+ support --remove as service
-	+ support for service START, STOP, PAUSE and CONTINUE commands (on
-	PAUSE no new connection accepted, but active connections still in
-	progress)
-  6. Compilation
-	+ MSVC (msvcrt.dll)
-	! Intel Windows Compiler (msvcrt.dll)
-	+ Windows/gcc (msvcrt.dll)
-	+ Cygwin/gcc (cygwin.dll)
-	+ Unix/gcc
-	! Unix/ccc
-
- Known bugs:
-
-	- udppm doesn't work if compiled with cygwin. 
-
-	  Cygwin doesn't support recvfrom()/sendto() on connected socket, so
-	  recv/send is used instead... Not a big deal anyway.
-
-
- Planned for future release:
-   - FTP proxy support
-   - Web interface for configuration
-   - Signal handling on Unix (for stop/pause/resume/configuration change)
-   - External filter API
-   - Addon trafficshape, URL, antiviral, HTTP cache filters
-
-
-27.01.2003
-!!!!!!!!!!!!!!!!!!!
-! Tagging as 0.3b !
-!!!!!!!!!!!!!!!!!!!
-
-24.01.2003
-- Fixed to use INVALID_SOCKET instead of -1 (for Windows compatibility)
-- Fixed problem with threading support under gcc. Now ODBC logging seems
-  to work always.
-! strncasecmp removed. Changed to use strnicmp for Windows.
-
-21.01.2003
-! 0.3 development frozen to only bugfixes
-- bug fixed causing 3proxy to crash with NULL pointer reference on
-  transparent web redirection
-- SQL support removed from default (gcc) compilation
-
-20.01.2003
-+ ODBC logging (yeah!). For a while it works stable only if compiled with
-  MSVC or Intel compiler.
-
-17.01.2003
-- bug introduced yesterday into CONNECT code cleaned
-
-16.01.2003
-+ timeouts command added
-
-13.01.2003
-- daemonizing code changed to work correctly on buggy libc (FreeBSD)
-  (pthread_* doesn't work after daemon())
-- logging code changed to work correctly on buggy libc (FreeBSD 4.4)
-  (freopen "a" mode doesn't work as expected on stdout)
-
-12.01.2003
-! License is changed to prohibit modification and commercial use
-
-11.01.2003
-! All makefiles are made uniform
-+ Makefiles for Compaq C complier (Makefile.ccc) and Intel C Compiler for
-  Windows (Makefile.intl) added
-+ Makefile.msvc added for Microsoft Visual C Compiler
-! proxy.dsp removed
-
-10.01.2003
-+ Now checked to compile with Compaq C Compiler under linux on alpha platform
-+ logformat configuration command added for custom log entry format
-! Unix version changed to use gettimeofday instead of ftime to avoid -lcompat
-  issue.
-
-09.01.2003
-! Randomizer changed for proxy chaining
-! Code cleaned: Makefile, signed/unsigned conversions, etc.
-! Typo fixed preventing from compilation under *nix
-
-08.01.2003
-+ dateformat command added
-! Log format changed!!!
-+ Control for different operations (CONNECT,BIND,HTTP_*, etc) added to ACL,
-  see 3proxy.cfg.sample
-
-25.12.2002
-+ Proxy chaining now is fully operational!!!!!
-+ SOCKSv4 and SOCKSv5 client code added for chaining
-+ HTTP connect authentication added for chaining
-+ Parent authentication for HTTP proxy added
-- Problem with "Connection: close" resolved (if HTTP server time outs or closes
-  connection).
-
-24.12.2002
-+ Proxy chaining works!!! (for a while only HTTP CONNECT proxies
-  are supported and no parent authentication). Logging is updated to
-  include number of redirections (parent proxies) in square brackets.
-  See config.sample for example of "parent" command.
-
-23.12.2002
-! Transparent proxy operations improved, logging corrected
-+ Added base code for proxy chaining
-! Redirection code rewritten
-
-23.12.2002
-+ UDP ASSOCIATE added (but not tested) to SOCKS.
-! Additional logging added to socks proxy
-+ Local HTTP proxy redirection added (for SOCKS).
-
-01.12.2002
-! closesock() problem _finally_ patched...
-
-30.11.2002
-! Makefile.unix corrected
-! Do not process $ in included files for 3proxy.cfg
-! Common error codes are unified
-
-29.11.2002
-+ nserver example added to 3proxy.cfg.sample
-
-28.11.2002
-- fixed closesock() instead of close() call on 3proxy.cfg included files
-  for native Windows.
-
-27.11.2002
-! Minor changes in docummentation
-+ dighosts utility added
-
-22.11.2002
-- Few problems corrected in logfiles rotation
-
-20.11.2002
-- SOCKSv5 bind() reply corrected.
-
-19.11.2002
-+ internal resolver added to avoid usage of thread unsafe gethostbyname().
-  nserver configuration option added to config file.
-! HTTP proxy behaviour slightly changed to be more compatible.
-
-06/11/2002 3[APA3A]tiny proxy 0.2b Initial release.
-
- Features:
-  1. General
-	+ HTTP/1.1 Proxy with keep-alive client and server support,
-          transparent proxy support.
-	+ SOCKSv4 Proxy
-	+ SOCKSv5 Proxy (TCP only)
-	+ POP3 Proxy
-	+ TCP port mapper
-	+ UDP port mapper
-	+ Threaded application (no child process).
-  2. Logging
-	+ stdout logging
-	+ file logging
-	+ syslog logging (Unix)
-	+ log file rotation (hourly, daily, weekly, monthly)
-	+ automatic log file comperssion with external archiver (for files)
-	+ automatic removal of older log files
-  3. Access control
-	+ User authorization by NetBIOS messanger name
-	+ Access control by username, source IP, destination IP and destination
-	port
-	+ Access control by username/password for SOCKSv5 and HTTP
-	+ Cleartext or encrypted (crypt/MD5 or NT) passwords.
-  4. Configuration
-	+ support for configuration files
-	+ support for includes in configuration files
-	+ interface binding
-	+ running as daemon process
-     Unix
-	+ support for chroot
-	+ support for setgid
-	+ support for setuid
-     NT
-	+ support --install as service
-	+ support --remove as service
-	+ support for service START, STOP, PAUSE and CONTINUE commands (on
-	PAUSE no new connection accepted, but active connections still in
-	progress)
-  5. Compilation
-	+ Microsoft VC++ (msvcrt.dll)
-	+ Windows/gcc (msvcrt.dll)
-	+ Cygwin/gcc (cygwin.dll)
-	+ Unix/gcc
-
- Known bugs:
-
-	- udppm doesn't work if compiled with cygwin. 
-
-	  Cygwin doesn't support recvfrom()/sendto() on connected socket, so
-	  recv/send is used instead... Not a big deal anyway.
-
-	- socks5 doesn't work with UDP
-
-	  Not implemented yet
-
- Planned for future release:
-   - UDP implementation in SOCKSv5
-   - Signal handling on Unix (for pause/resume)
-   - External filter API
-   - Addon trafficshape, URL, antiviral, HTTP cache filters
-
-06.11.2002
-!!MARK IT 0.2beta
-! Using UPX to compress 3proxy.exe
-
-
-02.11.2002
-+ HTTP proxy now supports kepp-alive connections to HTTP server or proxy.
-  It dramatically decreases number of outgoing connections and amount of DNS
-  traffic.
-
-01.11.2002
-+ Now proxy can catch Web server style requests. It means proxy
-  may be used as a transparent proxy. Yes. It means you can redirect
-  SOCKS requests with target 80 to HTTP proxy.
-! Port check in ACL fixed
-! Now proxy catches redirection by changed destination IP or port. If
-  you redirect request to web server make sure it supports proxy style
-  requests (IIS and Apache do).
-+ HTTP proxy supports keep-alive. Now number of threads required
-  significantly reduced.
-+ HTTP CONNECT fully supported (both direct and redirected to another proxy).
-  Now you can use our proxy for HTTPs. Or for spam :) Don't forget to set ACL
-  for outgoing ports, cause now ports are not limited.
-
-26.10.2002
-+ mycrypt utility added for making crypted passwords in NT and crypt/MD5
-! ACL check for strong auth corrected
-+ HTTP proxy support for authentication (basic). Now you can use strong
-  username/password authentication with proxy module.
-+ Error messages added for HTTP proxy
-
-25.10.2002
-+ NT passwords are now supported in 3proxy.cfg
-! Public License Agreement changed to be more clear
-
-24.10.2002
-! Fixed handle leak because of missed CloseHandle for threads in Windows
-
-23.10.2002
-! Fixed POP3 proxy bug
-! Strong auth changed to allow rules with * for username
-+ MD5 crypt format passwords is now supported... Do we ever need DES?
-  I will not implement blowfish - it's huge and rarely used.
-+ More comments added to 3proxy.cfg.sample
-
-21.10.2002
-! Fixed strongauth problem - ACL was not checked for authenticated
-  SOCKSv5 users
-
-16.10.2002
-+ Added support for SOCKSv5 cleartext password authentication
-+ "strong" authentication is now OK (use it only for SOCKS)
-+ added "users" config file command to specify username and password. Only
-  cleartext for a while.
-
-20.09.2002
-! Minor improvements in socket operations
-
-17.09.2002
-! HTTP proxy changed to do not strip hostname from URI if target port is not
-  80. It allows to redirect requests to another proxy as well as redirect to
-  different Web server via ACL. It will work for most servers (IIS, Apache)
-  if target redirected to non-standard port of Web server, but may fail in
-  some rare cases. Redirection to proxy should always work OK except if proxy
-  is on TCP/80.
-+ Added "redirect" ACL command. You can redirect request to another destination
-  if ACL entry matches (that is by target or source IP, target port, username).
-! Fixed documentation bug in 3proxy.cfg.sample ("authtype" instead of "auth")
-! Fixed bug causing server to exit in native Win32 mode if "service"
-  configuration option is not configured
-! Outgoing SOCKS connections are handled in common way now.
-
-07.09.2002
-+ added binding to external interface for outgoing connections
-! Fixed bug causing username check in ACL always fail
-+ Added ACL check for UDP map
-+ Added "Single packet" services to UDP portmap (-s switch). Allows unlimited
-  number of clients to be handled by portmapper for single-packet services
-  (like DNS).
-
-06.09.2002 3[APA3A]tiny proxy 0.1b initial release
-
- Features:
-  1. General
-	+ HTTP/1.0 Proxy
-	+ SOCKSv4 Proxy
-	+ SOCKSv5 Proxy (TCP only)
-	+ POP3 Proxy
-	+ TCP port mapper
-	+ UDP port mapper
-	+ Threaded application (no child process).
-  2. Logging
-	+ stdout logging
-	+ file logging
-	+ syslog logging (Unix)
-	+ log file rotation (hourly, daily, weekly, monthly)
-	+ automatic log file comperssion with external archiver (for files)
-	+ automatic removal of older log files
-  3. Access control
-	+ User authorization by NetBIOS messanger name
-	+ Access control by username, source IP, destination IP and destination
-	port
-  4. Configuration
-	+ support for configuration files
-	+ support for includes in configuration files
-	+ interface binding
-	+ running as daemon process
-     Unix
-	+ support for chroot
-	+ support for setgid
-	+ support for setuid
-     NT
-	+ support --install as service
-	+ support --remove as service
-	+ support for service START, STOP, PAUSE and CONTINUE commands (on
-	PAUSE no new connection accepted, but active connections still in
-	progress)
-  5. Compilation
-	+ Microsoft VC++ (msvcrt.dll)
-	+ Windows/gcc (msvcrt.dll)
-	+ Cygwin/gcc (cygwin.dll)
-	+ Unix/gcc
-
- Known bugs:
-
-	- udppm doesn't work if compiled with cygwin. 
-
-	  Cygwin doesn't support recvfrom()/sendto() on connected socket, so
-	  recv/send is used instead... Not a big deal anyway.
-
-	- udppm works without authentication
-
-	  Will be patched later.
-
-	- socks5 doesn't work with UDP
-
-	  Not implemented yet
-
- Planned for future release:
-   - Improvements to UDP portmapping
-   - UDP implementation in SOCKSv5
-   - Ident authorization
-   - SOCKSv5 password authentication
-   - Signal handling on Unix (for pause/resume)
-   - External filter API
-   - Addon trafficshape, URL, antiviral, HTTP cache filters
-   - HTTP/1.1 support
-
-
-$Id: Changelog,v 1.154 2006/03/08 18:44:00 vlad Exp $