diff options
37 files changed, 205 insertions, 167 deletions
@@ -1,3 +1,205 @@ +Changes in version 0.2.1.29 - 2011-01-15 + Tor 0.2.1.29 continues our recent code security audit work. The main + fix resolves a remote heap overflow vulnerability that can allow remote + code execution. Other fixes address a variety of assert and crash bugs, + most of which we think are hard to exploit remotely. + + o Major bugfixes (security): + - Fix a heap overflow bug where an adversary could cause heap + corruption. This bug probably allows remote code execution + attacks. Reported by "debuger". Fixes CVE-2011-0427. Bugfix on + 0.1.2.10-rc. + - Prevent a denial-of-service attack by disallowing any + zlib-compressed data whose compression factor is implausibly + high. Fixes part of bug 2324; reported by "doorss". + - Zero out a few more keys in memory before freeing them. Fixes + bug 2384 and part of bug 2385. These key instances found by + "cypherpunks", based on Andrew Case's report about being able + to find sensitive data in Tor's memory space if you have enough + permissions. Bugfix on 0.0.2pre9. + + o Major bugfixes (crashes): + - Prevent calls to Libevent from inside Libevent log handlers. + This had potential to cause a nasty set of crashes, especially + if running Libevent with debug logging enabled, and running + Tor with a controller watching for low-severity log messages. + Bugfix on 0.1.0.2-rc. Fixes bug 2190. + - Add a check for SIZE_T_MAX to tor_realloc() to try to avoid + underflow errors there too. Fixes the other part of bug 2324. + - Fix a bug where we would assert if we ever had a + cached-descriptors.new file (or another file read directly into + memory) of exactly SIZE_T_CEILING bytes. Fixes bug 2326; bugfix + on 0.2.1.25. Found by doorss. + - Fix some potential asserts and parsing issues with grossly + malformed router caches. Fixes bug 2352; bugfix on Tor 0.2.1.27. + Found by doorss. + + o Minor bugfixes (other): + - Fix a bug with handling misformed replies to reverse DNS lookup + requests in DNSPort. Bugfix on Tor 0.2.0.1-alpha. Related to a + bug reported by doorss. + - Fix compilation on mingw when a pthreads compatibility library + has been installed. (We don't want to use it, so we shouldn't + be including pthread.h.) Fixes bug 2313; bugfix on 0.1.0.1-rc. + - Fix a bug where we would declare that we had run out of virtual + addresses when the address space was only half-exhausted. Bugfix + on 0.1.2.1-alpha. + - Correctly handle the case where AutomapHostsOnResolve is set but + no virtual addresses are available. Fixes bug 2328; bugfix on + 0.1.2.1-alpha. Bug found by doorss. + - Correctly handle wrapping around to when we run out of virtual + address space. Found by cypherpunks, bugfix on 0.2.0.5-alpha. + - The 0.2.1.28 tarball was missing src/common/OpenBSD_malloc_Linux.c + because we built it with a too-old version of automake. Thus that + release broke ./configure --enable-openbsd-malloc, which is popular + among really fast exit relays on Linux. + + o Minor features: + - Update to the January 1 2011 Maxmind GeoLite Country database. + - Introduce output size checks on all of our decryption functions. + + o Build changes: + - Tor does not build packages correctly with Automake 1.6 and earlier; + added a check to Makefile.am to make sure that we're building with + Automake 1.7 or later. + + +Changes in version 0.2.1.28 - 2010-12-17 + Tor 0.2.1.28 does some code cleanup to reduce the risk of remotely + exploitable bugs. We also took this opportunity to change the IP address + for one of our directory authorities, and to update the geoip database + we ship. + + o Major bugfixes: + - Fix a remotely exploitable bug that could be used to crash instances + of Tor remotely by overflowing on the heap. Remote-code execution + hasn't been confirmed, but can't be ruled out. Everyone should + upgrade. Bugfix on the 0.1.1 series and later. + + o Directory authority changes: + - Change IP address and ports for gabelmoo (v3 directory authority). + + o Minor features: + - Update to the December 1 2010 Maxmind GeoLite Country database. + + +Changes in version 0.2.1.27 - 2010-11-23 + Yet another OpenSSL security patch broke its compatibility with Tor: + Tor 0.2.1.27 makes relays work with openssl 0.9.8p and 1.0.0.b. We + also took this opportunity to fix several crash bugs, integrate a new + directory authority, and update the bundled GeoIP database. + + o Major bugfixes: + - Resolve an incompatibility with OpenSSL 0.9.8p and OpenSSL 1.0.0b: + No longer set the tlsext_host_name extension on server SSL objects; + but continue to set it on client SSL objects. Our goal in setting + it was to imitate a browser, not a vhosting server. Fixes bug 2204; + bugfix on 0.2.1.1-alpha. + - Do not log messages to the controller while shrinking buffer + freelists. Doing so would sometimes make the controller connection + try to allocate a buffer chunk, which would mess up the internals + of the freelist and cause an assertion failure. Fixes bug 1125; + fixed by Robert Ransom. Bugfix on 0.2.0.16-alpha. + - Learn our external IP address when we're a relay or bridge, even if + we set PublishServerDescriptor to 0. Bugfix on 0.2.0.3-alpha, + where we introduced bridge relays that don't need to publish to + be useful. Fixes bug 2050. + - Do even more to reject (and not just ignore) annotations on + router descriptors received anywhere but from the cache. Previously + we would ignore such annotations at first, but cache them to disk + anyway. Bugfix on 0.2.0.8-alpha. Found by piebeer. + - When you're using bridges and your network goes away and your + bridges get marked as down, recover when you attempt a new socks + connection (if the network is back), rather than waiting up to an + hour to try fetching new descriptors for your bridges. Bugfix on + 0.2.0.3-alpha; fixes bug 1981. + + o Major features: + - Move to the November 2010 Maxmind GeoLite country db (rather + than the June 2009 ip-to-country GeoIP db) for our statistics that + count how many users relays are seeing from each country. Now we'll + have more accurate data, especially for many African countries. + + o New directory authorities: + - Set up maatuska (run by Linus Nordberg) as the eighth v3 directory + authority. + + o Minor bugfixes: + - Fix an assertion failure that could occur in directory caches or + bridge users when using a very short voting interval on a testing + network. Diagnosed by Robert Hogan. Fixes bug 1141; bugfix on + 0.2.0.8-alpha. + - Enforce multiplicity rules when parsing annotations. Bugfix on + 0.2.0.8-alpha. Found by piebeer. + - Allow handshaking OR connections to take a full KeepalivePeriod + seconds to handshake. Previously, we would close them after + IDLE_OR_CONN_TIMEOUT (180) seconds, the same timeout as if they + were open. Bugfix on 0.2.1.26; fixes bug 1840. Thanks to mingw-san + for analysis help. + - When building with --enable-gcc-warnings on OpenBSD, disable + warnings in system headers. This makes --enable-gcc-warnings + pass on OpenBSD 4.8. + + o Minor features: + - Exit nodes didn't recognize EHOSTUNREACH as a plausible error code, + and so sent back END_STREAM_REASON_MISC. Clients now recognize a new + stream ending reason for this case: END_STREAM_REASON_NOROUTE. + Servers can start sending this code when enough clients recognize + it. Bugfix on 0.1.0.1-rc; fixes part of bug 1793. + - Build correctly on mingw with more recent versions of OpenSSL 0.9.8. + Patch from mingw-san. + + o Removed files: + - Remove the old debian/ directory from the main Tor distribution. + The official Tor-for-debian git repository lives at the URL + https://git.torproject.org/debian/tor.git + - Stop shipping the old doc/website/ directory in the tarball. We + changed the website format in late 2010, and what we shipped in + 0.2.1.26 really wasn't that useful anyway. + + +Changes in version 0.2.1.26 - 2010-05-02 + Tor 0.2.1.26 addresses the recent connection and memory overload + problems we've been seeing on relays, especially relays with their + DirPort open. If your relay has been crashing, or you turned it off + because it used too many resources, give this release a try. + + This release also fixes yet another instance of broken OpenSSL libraries + that was causing some relays to drop out of the consensus. + + o Major bugfixes: + - Teach relays to defend themselves from connection overload. Relays + now close idle circuits early if it looks like they were intended + for directory fetches. Relays are also more aggressive about closing + TLS connections that have no circuits on them. Such circuits are + unlikely to be re-used, and tens of thousands of them were piling + up at the fast relays, causing the relays to run out of sockets + and memory. Bugfix on 0.2.0.22-rc (where clients started tunneling + their directory fetches over TLS). + - Fix SSL renegotiation behavior on OpenSSL versions like on Centos + that claim to be earlier than 0.9.8m, but which have in reality + backported huge swaths of 0.9.8m or 0.9.8n renegotiation + behavior. Possible fix for some cases of bug 1346. + - Directory mirrors were fetching relay descriptors only from v2 + directory authorities, rather than v3 authorities like they should. + Only 2 v2 authorities remain (compared to 7 v3 authorities), leading + to a serious bottleneck. Bugfix on 0.2.0.9-alpha. Fixes bug 1324. + + o Minor bugfixes: + - Finally get rid of the deprecated and now harmful notion of "clique + mode", where directory authorities maintain TLS connections to + every other relay. + + o Testsuite fixes: + - In the util/threads test, no longer free the test_mutex before all + worker threads have finished. Bugfix on 0.2.1.6-alpha. + - The master thread could starve the worker threads quite badly on + certain systems, causing them to run only partially in the allowed + window. This resulted in test failures. Now the master thread sleeps + occasionally for a few microseconds while the two worker-threads + compete for the mutex. Bugfix on 0.2.0.1-alpha. + + Changes in version 0.2.1.25 - 2010-03-16 Tor 0.2.1.25 fixes a regression introduced in 0.2.1.23 that could prevent relays from guessing their IP address correctly. It also fixes diff --git a/changes/annotations_fix b/changes/annotations_fix deleted file mode 100644 index b259a306d2..0000000000 --- a/changes/annotations_fix +++ /dev/null @@ -1,10 +0,0 @@ - o Major bugfixes - - Do even more to reject (and not just ignore) annotations on - router descriptors received anywhere but from the cache. - Previously we would ignore such annotations at first, but cache - them to disk anyway. Bugfix on 0.2.0.8-alpha. Found by piebeer. - - o Minor bugfixes - - Enforce multiplicity rules when parsing annotations. Bugfix on - 0.2.0.8-alpha. Found by piebeer. - diff --git a/changes/bug1125 b/changes/bug1125 deleted file mode 100644 index 1331246a14..0000000000 --- a/changes/bug1125 +++ /dev/null @@ -1,8 +0,0 @@ - o Major bugfixes - - Do not log messages to the controller while shrinking buffer - freelists. Doing so would sometimes make the controller - connection try to allocate a buffer chunk, which would mess - up the internals of the freelist and cause an assertion - failure. Fixes bug 1125; fixed by Robert Ransom. Bugfix on - Tor 0.2.0.16-alpha. - diff --git a/changes/bug1141 b/changes/bug1141 deleted file mode 100644 index 9975e418d6..0000000000 --- a/changes/bug1141 +++ /dev/null @@ -1,5 +0,0 @@ - o Minor bugfixes: - - Fix an assertion failure that could occur in caches or bridge users - when using a very short voting interval on a testing network. - Diagnosed by Robert Hogan. Fixes bug 1141; bugfix on 0.2.0.8-alpha. - diff --git a/changes/bug1840 b/changes/bug1840 deleted file mode 100644 index 0ef2b98a3f..0000000000 --- a/changes/bug1840 +++ /dev/null @@ -1,7 +0,0 @@ - o Minor bugfixes: - - Allow handshaking OR connections to take a full KeepalivePeriod - seconds to handshake. Previously, we would close them after - IDLE_OR_CONN_TIMEOUT seconds, as if they were open. This is a - bugfix on 0.2.1.26. Thanks to mingw-san for analysis help. Fixes - bug 1840. - diff --git a/changes/bug1981 b/changes/bug1981 deleted file mode 100644 index 3e5e1d36fb..0000000000 --- a/changes/bug1981 +++ /dev/null @@ -1,6 +0,0 @@ - o Major bugfixes: - - When you use bridges and your network goes away and your bridges - get marked as down, recover when you attempt a new socks connection - (if the network is back) rather than waiting up to an hour to try - fetching new descriptors for your bridges. Bugfix on 0.2.0.3-alpha; - fixes bug 1981. diff --git a/changes/bug2050 b/changes/bug2050 deleted file mode 100644 index 3e45d3463f..0000000000 --- a/changes/bug2050 +++ /dev/null @@ -1,5 +0,0 @@ - o Major bugfixes: - - Learn our external IP address when we're a relay or bridge, even if - we set PublishServerDescriptor to 0. Bugfix on 0.2.0.3-alpha, - where we introduced bridge relays that don't need to publish to - be useful. Fixes bug 2050. diff --git a/changes/bug2190 b/changes/bug2190 deleted file mode 100644 index 92ecba7eb0..0000000000 --- a/changes/bug2190 +++ /dev/null @@ -1,6 +0,0 @@ - o Minor bugfixes - - Prevent calls from Libevent from inside Libevent log handlers. - This had potential to cause a nasty set of crashes, especially if - running Libevent with debug logging enabled, and running Tor - with a controller watching for low-severity log messages. - Bugfix on 0.1.0.2-rc. Fixes bug 2190. diff --git a/changes/bug2305 b/changes/bug2305 deleted file mode 100644 index c979d5fd3a..0000000000 --- a/changes/bug2305 +++ /dev/null @@ -1,5 +0,0 @@ - o Build changes - - Tor does not build packages correctly with Automake 1.6 and earlier; - added a check to Makefile.am to make sure that we're building with - Automake 1.7 or later. - diff --git a/changes/bug2313 b/changes/bug2313 deleted file mode 100644 index 0ffbe4ab07..0000000000 --- a/changes/bug2313 +++ /dev/null @@ -1,4 +0,0 @@ - o Minor bugfixes - - Fix compilation on mingw when a pthreads compatibility library - has been installed. (We don't want to use it, so we shouldn't - be including pthread.h.) Fixes bug 2313; bugfix on 0.1.0.1-rc. diff --git a/changes/bug2324 b/changes/bug2324 deleted file mode 100644 index eefc8370ef..0000000000 --- a/changes/bug2324 +++ /dev/null @@ -1,4 +0,0 @@ - o Minor bugfixes - - Add a check for SIZE_T_MAX to tor_realloc to try to avoid - underflow errors there too. Fixes bug 2324. - diff --git a/changes/bug2324_uncompress b/changes/bug2324_uncompress deleted file mode 100644 index 223a3ce35b..0000000000 --- a/changes/bug2324_uncompress +++ /dev/null @@ -1,5 +0,0 @@ - o Major bugfixes (security): - - Prevent a DoS attack by disallowing any zlib-compressed data - whose compression factor is implausibly high. Fixes the - second part of bug2324; found by doors. - diff --git a/changes/bug2326 b/changes/bug2326 deleted file mode 100644 index 239a383faf..0000000000 --- a/changes/bug2326 +++ /dev/null @@ -1,6 +0,0 @@ - o Minor bugfixes - - Fix a bug where we would assert if we ever had a - cached-descriptors.new file (or another file read directly into - memory) of exactly SIZE_T_CEILING bytes. Found by doors; fixes - bug 2326; bugfix on 0.2.1.25. - diff --git a/changes/bug2328 b/changes/bug2328 deleted file mode 100644 index fee80a1585..0000000000 --- a/changes/bug2328 +++ /dev/null @@ -1,9 +0,0 @@ - o Minor bugfixes - - Fix a bug where we would declare that we had run out of virtual - addresses when the address space was only half-exhausted. Bugfix - on 0.1.2.1-alpha. - - Correctly handle the case where AutomapHostsOnResolve is set but no - virtual addresses are available. Fixes bug2328, bugfix on - 0.1.2.1-alpha. Bug found by doorss. - - Correctly handle wrapping around to when we run out of virtual address - space. Found by cypherpunks, bugfix on 0.2.0.5-alpha. diff --git a/changes/bug2332 b/changes/bug2332 deleted file mode 100644 index 5f73ddd7af..0000000000 --- a/changes/bug2332 +++ /dev/null @@ -1,4 +0,0 @@ - o Minor bugfixes - - Fix a bug with handling misformed replies to reverse DNS lookup - requests in DNSPort. Bugfix on Tor 0.2.0.1-alpha. Related to a bug - reported by doorss. diff --git a/changes/bug2352 b/changes/bug2352 deleted file mode 100644 index 744dbdb20f..0000000000 --- a/changes/bug2352 +++ /dev/null @@ -1,6 +0,0 @@ - o Minor bugfixes - - Fix some potential asserts and partsing issues with grossly - malformed router caches. Fixes bug 2352. Found by doorss. - Bugfix on Tor 0.2.1.27. - - diff --git a/changes/bug2384 b/changes/bug2384 deleted file mode 100644 index ded5eee992..0000000000 --- a/changes/bug2384 +++ /dev/null @@ -1,6 +0,0 @@ - o Minor bugfixes - - Zero out a few more keys in memory before freeing them. Fixes bug - 2384 and part of bug 2385. These key instances found by - "cypherpunks". Bugfix on 0.0.2pre9. - - diff --git a/changes/fix2204 b/changes/fix2204 deleted file mode 100644 index fb2771a7fa..0000000000 --- a/changes/fix2204 +++ /dev/null @@ -1,7 +0,0 @@ - o Major bugfixes - - Do not set the tlsext_host_name extension on server SSL objects; - only on client SSL objects. We set it to immitate a browser, not a - vhosting server. This resolves an incompatibility with openssl 0.9.8p - and openssl 1.0.0b. Fixes bug 2204; bugfix on 0.2.1.1-alpha. - - diff --git a/changes/gabelmoo-newip b/changes/gabelmoo-newip deleted file mode 100644 index 8e9a19c657..0000000000 --- a/changes/gabelmoo-newip +++ /dev/null @@ -1,3 +0,0 @@ - o Directory authority changes: - - Change IP address and ports for gabelmoo (v3 directory authority). - diff --git a/changes/geoip-dec2010 b/changes/geoip-dec2010 deleted file mode 100644 index d6247cee6b..0000000000 --- a/changes/geoip-dec2010 +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features: - - Update to the December 1 2010 Maxmind GeoLite Country database. - diff --git a/changes/geoip-jan2011 b/changes/geoip-jan2011 deleted file mode 100644 index b58805ad37..0000000000 --- a/changes/geoip-jan2011 +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features: - - Update to the January 1 2011 Maxmind GeoLite Country database. - diff --git a/changes/geoip-oct2010 b/changes/geoip-oct2010 deleted file mode 100644 index a7235faaa5..0000000000 --- a/changes/geoip-oct2010 +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features: - - Update to the October 1 2010 Maxmind GeoLite Country database. - diff --git a/changes/geoip-sep2010 b/changes/geoip-sep2010 deleted file mode 100644 index 47eb00699c..0000000000 --- a/changes/geoip-sep2010 +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features: - - Update to the September 1 2010 Maxmind GeoLite Country database. - diff --git a/changes/geoip-update-august2010 b/changes/geoip-update-august2010 deleted file mode 100644 index 8f127852f2..0000000000 --- a/changes/geoip-update-august2010 +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features - - Update to the August 1 2010 Maxmind GeoLite Country database. - diff --git a/changes/geoip-update-june2010 b/changes/geoip-update-june2010 deleted file mode 100644 index 7a15c0066d..0000000000 --- a/changes/geoip-update-june2010 +++ /dev/null @@ -1,2 +0,0 @@ - o Minor features - - Update to the June 1 2010 Maxmind GeoLite Country database. diff --git a/changes/maatuska-new-v3auth b/changes/maatuska-new-v3auth deleted file mode 100644 index 9508b30a24..0000000000 --- a/changes/maatuska-new-v3auth +++ /dev/null @@ -1,3 +0,0 @@ - o New directory authorities: - - Set up maatuska (run by Linus Nordberg) as the eighth v3 directory - authority. diff --git a/changes/mingw-openssl098m b/changes/mingw-openssl098m deleted file mode 100644 index b4199760b7..0000000000 --- a/changes/mingw-openssl098m +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features - - Build correctly on mingw with more recent version of OpenSSL 0.9.8. - Patch from mingw-san. diff --git a/changes/misc-reason b/changes/misc-reason deleted file mode 100644 index 80db2d257d..0000000000 --- a/changes/misc-reason +++ /dev/null @@ -1,3 +0,0 @@ - o Minor features: - - Have clients begin understanding the new END_STREAM_REASON_NOROUTE - error code. diff --git a/changes/new-geoip-db b/changes/new-geoip-db deleted file mode 100644 index 06d69ea476..0000000000 --- a/changes/new-geoip-db +++ /dev/null @@ -1,5 +0,0 @@ - o Major features: - - Move to the Maxmind GeoIP db (rather than the June 2009 - ip-to-country GeoIP db) for our statistics that count how many - users relays are seeing from each country. Now we have more accurate - data for many African countries. diff --git a/changes/openbsd-sysheaders b/changes/openbsd-sysheaders deleted file mode 100644 index 2babde2d78..0000000000 --- a/changes/openbsd-sysheaders +++ /dev/null @@ -1,4 +0,0 @@ - o Minor bugfixes: - - When building with --enable-gcc-warnings on OpenBSD, disable - warnings in system headers. This makes --enable-gcc-warnings - pass on OpenBSD 4.8.
\ No newline at end of file diff --git a/changes/remove-debian b/changes/remove-debian deleted file mode 100644 index 6eb1896bae..0000000000 --- a/changes/remove-debian +++ /dev/null @@ -1,5 +0,0 @@ - o Removed files: - - Remove the old debian/ directory from the main Tor distribution. - The official Tor-for-debian git repository lives at the URL - https://git.torproject.org/debian/tor.git . - diff --git a/changes/remove-website b/changes/remove-website deleted file mode 100644 index ecbfbf9bc2..0000000000 --- a/changes/remove-website +++ /dev/null @@ -1,5 +0,0 @@ - o Removed files: - - Stop shipping the old doc/website/ directory in the tarball. We - changed the website format in late 2010, and what we shipped in - 0.2.1.26 really wasn't that useful anyway. - diff --git a/changes/security_bug b/changes/security_bug deleted file mode 100644 index 990beee506..0000000000 --- a/changes/security_bug +++ /dev/null @@ -1,5 +0,0 @@ - o Major bugfixes: - - Fix a remotely exploitable bug that could be used to crash instances - of Tor remotely by overflowing on the heap. Remove-code execution - hasn't been confirmed, but can't be ruled out. Obviously, everyone - should upgrade. Bugfix on the 0.1.1 series and later. diff --git a/changes/tolen_asserts b/changes/tolen_asserts deleted file mode 100644 index a9834ab669..0000000000 --- a/changes/tolen_asserts +++ /dev/null @@ -1,8 +0,0 @@ - o Major bugfixes (security) - - Fix a heap overflow bug where an adversary could cause heap - corruption. This bug potentially allows remote code execution - attacks. Found by debuger. Fixes CVE-2011-0427. Bugfix on - 0.1.2.10-rc. - o Defensive programming - - Introduce output size checks on all of our decryption functions. - diff --git a/configure.in b/configure.in index 68c593a11b..5514b7147e 100644 --- a/configure.in +++ b/configure.in @@ -5,7 +5,7 @@ dnl Copyright (c) 2007-2008, The Tor Project, Inc. dnl See LICENSE for licensing information AC_INIT -AM_INIT_AUTOMAKE(tor, 0.2.1.25) +AM_INIT_AUTOMAKE(tor, 0.2.1.29) AM_CONFIG_HEADER(orconfig.h) AC_CANONICAL_HOST diff --git a/contrib/tor-mingw.nsi.in b/contrib/tor-mingw.nsi.in index 6deb8d96a4..6da39d1833 100644 --- a/contrib/tor-mingw.nsi.in +++ b/contrib/tor-mingw.nsi.in @@ -9,7 +9,7 @@ !include "FileFunc.nsh" !insertmacro GetParameters -!define VERSION "0.2.1.25" +!define VERSION "0.2.1.29" !define INSTALLER "tor-${VERSION}-win32.exe" !define WEBSITE "https://www.torproject.org/" !define LICENSE "LICENSE" diff --git a/src/win32/orconfig.h b/src/win32/orconfig.h index 65804fe19d..df34bd10ef 100644 --- a/src/win32/orconfig.h +++ b/src/win32/orconfig.h @@ -226,6 +226,6 @@ #define USING_TWOS_COMPLEMENT /* Version number of package */ -#define VERSION "0.2.1.25" +#define VERSION "0.2.1.29" |