Ziproxy Changelog

What's new in Ziproxy 3.3.1

Dec 4, 2014
  • Fixed stdndup-related compilation error.

New in Ziproxy 3.3.0 (Jan 7, 2013)

  • Added option to remove alpha channel after a specified average opacity threshold.
  • New option: AlphaRemovalMinAvgOpacity

New in Ziproxy 3.2.1 (Feb 8, 2012)

  • This version fixes compilation problems with the newer libpng 1.5.x.

New in Ziproxy 3.2.0 (Sep 8, 2010)

  • New features:
  • Changed HTTP authentication code to a modular one.
  • Added SASL support for HTTP authentication.
  • Bugfixes/changes:
  • Fixed Nameservers-related code which prevented compilation in certain OSes/arch compinations (ex.: glibc+gcc+ARM).
  • Nameservers support may be enable/disabled at compilation time.

New in Ziproxy 3.1.3 (Jul 19, 2010)

  • Fixed non-POSIX behavior which brought problems with eglibc.
  • Fixed Safari HTTP authentication problem.

New in Ziproxy 3.1.2 (Jul 2, 2010)

  • Ziproxy avoids unnecessary image processing now, thus saving CPU.
  • Fixed daemonization code: no more stdin/stdout kludges.

New in Ziproxy 3.1.1 (Jun 15, 2010)

  • Image recompression core rewritten. Improved decision-taking routines.
  • In practice, that means more compression in average and code less prone to bugs.
  • Added full support for transparency
  • (affects PNG and JP2K targets).
  • Added detection and removal of useless alpha channel
  • (certain pictures with alpha channel may be recompressed to JPEG now).
  • Added palette and transparency optimization routines
  • (affects lossless compression: PNG targets).
  • More compression in certain cases.
  • Added option to convert images to grayscale for more compression.
  • New option: ConvertToGrayscale

New in Ziproxy 3.1.0 (Jun 3, 2010)

  • Image recompression core rewritten. Improved decision-taking routines.
  • In practice, that means more compression in average and code less prone to bugs.
  • Added full support for transparency
  • (affects PNG and JP2K targets).
  • Added detection and removal of useless alpha channel
  • (certain pictures with alpha channel may be recompressed to JPEG now).
  • Added palette and transparency optimization routines
  • (affects lossless compression: PNG targets).
  • More compression in certain cases.
  • Added option to convert images to grayscale for more compression.
  • New option: ConvertToGrayscale

New in Ziproxy 3.0.1 (May 21, 2010)

  • Fixes a security vulnerability related to atypical huge picture files (>4GB of size once expanded).

New in Ziproxy 3.0.0 (Apr 19, 2010)

  • Improvements:
  • IP ToS marking support.
With this provision you may now do Level-7 traffic shaping based on certain (configurable) characteristics of the HTTP traffic, thus ensuring HTTP QoS (that is, decent browsing experience) even during massive and concurrent downloads of video, ISO images and other bulk data.
The new ToS-related options are: TOSMarking, TOSFlagsDefault, TOSFlagsDiff, TOSMarkAsDiffURL, TOSMarkAsDiffCT, TOSMarkAsDiffSizeBT.
  • Added full support for files >2GB.
This affects AccessLog mostly, and fixes two very specific situations where downloads were limited to 2GB.
The limit now is (worst case) >81 PB.
  • Changed the time measurement system.
File transfers >35 minutes had their time incorrectly reported.
The limit now is (worst case) >290000 years.
  • New daemon-related options.
New options: RunAsUser, RunAsGroup, PIDFile
New CLI options: --pid-file, --stop-daemon, --user, --group
  • Added support for simultaneous user connection limit.
New option: MaxActiveUserConnections
  • Now transfers interrupted with SIGTERM as logged aswell.
Added 'X' flag support to AccessLog.
  • Improvements on the daemon fail routines.
  • Access log code rewritten from scratch and simplified.
  • New error/warning log subsystem.
Much improved verbosity.
Added support for logging errors into a file instead of simply dumping them to stderr.
New option: LogError
  • New lossless Content-Type configuration system.
Now it's possible to specify the full mime-type instead of just "application/" subtypes.
Now also possible to specify pattern-matches (such as "text/*blah")
New option: LosslessCompressCT
New related options: TOSMarkAsDiffCTAlsoXST, URLReplaceDataCTListAlsoXST, LosslessCompressCTAlsoXST.
  • Bug fixes:
  • Several bugs involving garbage to output and/or crashing were fixed.
  • Fixed compilation errors while compiling with libpng 1.4.
  • Under certain circumstances, PNG pictures were not recompressed. Fixed.
This bug typically affected non-x86-32 architectures.
  • Other changes:
  • Deprecated options (still work):
ZiproxyTimeout (see: ConnTimeout)
AccessLogFileName (see: AccessLog)
Compressible (see: LosslessCompressCT)
  • Obsoleted options:
LogPipe
MSIETest
LogFile (see: DebugLog)
AccessLogUserPOV
NetdTimeout
  • Removed all Russian translations.
Note: That due to lack of maintainer.

New in Ziproxy 2.7.9 Beta 2 (Jan 5, 2010)

  • Improvements:
  • Added full support for files >2GB.
  • This affects AccessLog mostly, and fixes two very specific situations where downloads were limited to 2GB.
  • The limit now is (worst case) >81 PB.
  • Changed the time measurement system.
  • File transfers >35 minutes had their time incorrectly reported.
  • The limit now is (worst case) >290000 years.
  • New error/waning reporting subsystem.
  • Added messages to situations previously unreported.
  • Added more verbosity to such messages.
  • Added support for obsolete/deprecated/conflict/etc options from config file.
  • More uniform error messages.
  • Added support for logging errors into a file instead of simply dumping them to stderr.
  • New option: LogError
  • New lossless Content-Type configuration system.
  • Now it's possible to specify the full mime-type instead of just "application/" subtypes.
  • Now also possible to specify pattern-matches (such as "text/*blah")
  • New option: LosslessCompressCT
  • New related options: TOSMarkAsDiffCTAlsoXST, URLReplaceDataCTListAlsoXST, LosslessCompressCTAlsoXST.
  • Deprecated option: Compressible (still functional)
  • Added "G" flag support to AccessLog.
  • Bug fixes:
  • Under certain circumstances, PNG pictures were not recompressed. Fixed.
  • This bug typically affected non-x86-32 architectures.
  • Other changes:
  • Changed default value of MinUncompressedGzipStreamEval from 250000 (~250kB) to 10000000 (~10MB).
  • This avoids trigging of MaxUncompressedGzipRatio if ISO9660 images are compressed while streaming.
  • Obsoleted LogPipe option.
  • Obsoleted MSIETest option.
  • Obsoleted LogFile option
  • See new option: DebugLog option
  • Removed all Russian translations.
  • Note: That due to lack of maintainer.
  • Deprecated AccessLogFileName (still works).
  • See new option: AccessLog.

New in Ziproxy 2.7.2 (Sep 30, 2009)

  • LogFile timer was not properly initialized and the first measurement was always wrong. Fixed.
  • Fixed minor mistakes in acknowledgment texts.

New in Ziproxy 2.7.1 (Sep 14, 2009)

  • Fixed HTTP/0.9 simple response support (which was broken for aeons and nobody noticed).
  • Gunzipped data smaller than the compressed was being treated as corruped and data was simply forwarded as is. But that's not necessarily true (a certain website thought it was a good idea to gzip jpegs, for example) and in certain cases processing was not applied because of that. Fixed.
  • Implemented workaround for buggy sites which send: Content-Encoding: ISO-8859-1 (violates RFC 2616). Fixes certain pages which appeared as binary garbage in the browser.

New in Ziproxy 2.7.0 (Apr 14, 2009)

  • New security fixes/features:
  • Added provision for outgoing port restrictions. New options: RestrictOutPortHTTP, RestrictOutPortCONNECT. This provision mitigates the transparent proxy vulnerability US-CERT VU#435052
  • Added feature against "image bomb" DoS. New option: MaxUncompressedImageRatio
  • Other features:
  • Added support for custom 403 error pages.
  • Added Lanczos component upsampler support to JP2k. New option: JP2Upsampler
  • Added provision for crash (signal) interception and logging (see new access log flags). New option: InterceptCrashes
  • Added support for content substitution by matching URL + content-type. New options: URLReplaceDataCT, URLReplaceDataCTList
  • Added support for URL blocking. New option: URLDeny
  • Added support for "ICY" SHOUTcast headers. Now icecasts from such servers are playable.
  • Bugfixes:
  • Fixed a bug which caused crashes in certain, rare, specific situations while compressing to jp2k.
  • Fixed bug in rgb2yuv converter. In certain cases jp2 pictures had some very wrong colors (like deep red turned into strong pink etc).
  • Fixed the type/signedness mess with outgoing Port vars. Ports >= 32768 were not accessible. Non-standard HTTP/HTTPS ports (non-80/443) were not accessible in big-endian architectures.
  • Changed JPG and JP2K default settings to (hopefully) better values.
  • Bug which prevented recompression to jp2k when more aggressive parameters were set to color components, original image was forwarded instead. Fixed.
  • Encoding/decoding jp2 images with alpha channel always fails. Fixed.
  • Other:
  • Obsoleted ModifySuffixes. It was buggy and lost its usefulness a long ago. The following config options are obsolete: ModifySuffixes, MinTextStream
  • Flex is no longer required for building Ziproxy.
  • Test programs were obsolete and were removed (imgtest, modifytest, cfgtest) and no longer are a build option.

New in Ziproxy 2.6.9 Beta 2 (Mar 16, 2009)

  • New features:
  • Added provision for crash (signal) interception and logging (see new access log flags). New option: InterceptCrashes
  • Added feature against "image bomb" DoS. New option: MaxUncompressedImageRatio
  • Added support for content substitution by matching URL + content-type. New options: URLReplaceDataCT, URLReplaceDataCTList
  • Added support for URL blocking. New option: URLDeny
  • Added support for "ICY" SHOUTcast headers. Now icecasts from such servers are playable.
  • Bugfixes:
  • Fixed a bug which caused crashes in certain, rare, specific situations while compressing to jp2k.
  • Fixed bug in rgb2yuv converter. In certain cases jp2 pictures had some very wrong colors (like deep red turned into strong pink etc).
  • Other:
  • Obsoleted ModifySuffixes. It was buggy and lost its usefulness a long ago. The following config options are obsolete: ModifySuffixes, MinTextStream
  • Flex is no longer required for building Ziproxy.
  • Test programs were obsolete and were removed (imgtest, modifytest, cfgtest) and no longer are a build option.
  • Miscellaneous code cleanup.

New in Ziproxy 2.6.9 Beta (Feb 27, 2009)

  • New features:
  • Added provision for outgoing port restrictions.
  • New options: RestrictOutPortHTTP, RestrictOutPortCONNECT
  • This provision mitigates the transparent proxy vulnerability US-CERT VU#435052
  • Added support for custom 403 error pages.
  • Added Lanczos component upsampler support to JP2k.
  • New option: JP2Upsampler
  • Bugfixes/changes:
  • Fixed the type/signedness mess with outgoing Port vars. Ports >= 32768 were not accessible.
  • Non-standard HTTP/HTTPS ports (non-80/443) were not accessible in big-endian architectures.
  • Changed JPG and JP2K default settings to (hopefully) better values.
  • Bug which prevented recompression to jp2k when more aggressive parameters were set to color components, original image was forwarded instead. Fixed.
  • Encoding/decoding jp2 images with alpha channel always fails. Fixed.

New in Ziproxy 2.6.0 (Nov 27, 2008)

  • New features:
  • Ad-blocker, by the means of content substitution. New option: URLReplaceData
  • Now a authenticated connection also logs the username alongside its IP ([email protected]).
  • Added support for host exception list when using the BindOutgoing option. May solve problems with certain hosts which do not like IP rotation. New options: BindOutgoingExList, BindOutgoingExAddr
  • Added support for custom 407 and 409 error pages.
  • Added Russian translation of manpages, README and other docs.
  • Bugfixes:
  • Under random conditions or unrelated configuration changes the pictures were not recompressed. Fixed.

New in Ziproxy 2.5.9 Beta (Sep 5, 2008)

  • Ad-blocker, by the means of content substitution. New option: URLReplaceData
  • Now a authenticated connection also logs the username alongside its IP ([email protected]).
  • Added support for host exception list when using the BindOutgoing option.
  • May solve problems with certain hosts which do not like IP rotation.
  • New options: BindOutgoingExList, BindOutgoingExAddr

New in Ziproxy 2.5.2 (Apr 1, 2008)

  • Proxy authentication would bring access denial if such was not requested by Ziproxy (unnecessary authentication sent by user). Now it is simply ignored and access is normal.
  • Ziproxy did not send the proper URL to the server (so it failed) when connecting to another proxy and the client accessed Ziproxy in transparent proxy mode. Fixed.

New in Ziproxy 2.5.1 (Mar 11, 2008)

  • When non-processable (htmlopt etc) data came already gzipped, Ziproxy tried to load it all into memory, then it recompressed again. Now it streams that directly, unmodified. Should improve latency in certain cases.