| 1 | |
|---|
| 2 | iodine - http://code.kryo.se/iodine |
|---|
| 3 | |
|---|
| 4 | *********************************** |
|---|
| 5 | |
|---|
| 6 | CHANGES: |
|---|
| 7 | |
|---|
| 8 | 20xx-xx-xx: x.y.z "Hotspotify" |
|---|
| 9 | - Fixed tunnel not working on Windows. |
|---|
| 10 | - Any device name is now supported on Windows, fixes #47. |
|---|
| 11 | - Multiple installed TAP32 interfaces are now supported, fixes #46. |
|---|
| 12 | - Return nonzero if tunnel fails to open, fixes #62. |
|---|
| 13 | - Support for setting a SELinux context, based on patch by |
|---|
| 14 | Sebastien Raveau. Sample context file in doc/iodine.te |
|---|
| 15 | - Allow listen port and DNS forward port to be the same if listen IP |
|---|
| 16 | does not include localhost. |
|---|
| 17 | - The client will now exit if configuring IP or MTU fails. |
|---|
| 18 | - The starting cache miss value is randomized at startup, fixes #65. |
|---|
| 19 | - Raw UDP mode added. If the iodined server is reachable directly, |
|---|
| 20 | packets can be sent to it without DNS encoding. Fixes #36. |
|---|
| 21 | - Do not overwrite users CC/CFLAGS/LDFLAGS, only add to them. |
|---|
| 22 | - Added -F option to write pidfile, based on patch from |
|---|
| 23 | misc at mandriva.org. Fixes #70. |
|---|
| 24 | - Allow password to be set via environment variable, fixes #77. |
|---|
| 25 | Based on patch by logix. |
|---|
| 26 | - Client now prints server tunnel IP, fixes #78. Patch by logix. |
|---|
| 27 | - Fix build error on Mac OS X 10.6, patch by G. Rischard. #79. |
|---|
| 28 | - Added support for CNAME/TXT/A/MX query types, fixes #75. |
|---|
| 29 | Patch by Anne Bezemer, merge help by logix. |
|---|
| 30 | - Merged low-latency patch from Anne Bezemer, fixes #76. |
|---|
| 31 | - Resolve client nameserver argument if given as hostname, fixes #82. |
|---|
| 32 | - Open log before chroot, fixes #86: logging on FreeBSD. |
|---|
| 33 | |
|---|
| 34 | 2009-06-01: 0.5.2 "WifiFree" |
|---|
| 35 | - Fixed client segfault on OS X, #57 |
|---|
| 36 | - Added check that nameserver lookup was successful |
|---|
| 37 | - Fixed ENOTSOCK error on OS X and FreeBSD, #58. |
|---|
| 38 | |
|---|
| 39 | 2009-03-21: 0.5.1 "Boringo" |
|---|
| 40 | - Added initial Windows support, fixes #43. |
|---|
| 41 | - Added length check of autoprobe responses |
|---|
| 42 | - Refactored and added unit tests |
|---|
| 43 | - Added syslog logging for iodined on version and login packets |
|---|
| 44 | - Fixed segfault when encoding just one block, fixes #51. |
|---|
| 45 | The normal code was never affected by this. |
|---|
| 46 | - Added win32 code to read DNS server from system, fixes #45. |
|---|
| 47 | - Disabled password echo on win32, fixes #44. |
|---|
| 48 | - Fix encoding error making all autoprobing > 1024 bytes fail, #52. |
|---|
| 49 | - Increase default interface MTU to 1200. |
|---|
| 50 | - Fix autoprobing error making every third probe fail, set IP flag |
|---|
| 51 | Dont-Fragment where supported. Fixes #54. |
|---|
| 52 | - Added TAP32 version 0901 as accepted (#53). |
|---|
| 53 | |
|---|
| 54 | 2009-01-23: 0.5.0 "iPassed" |
|---|
| 55 | - Fixed segfault in server when sending version reject. |
|---|
| 56 | - Applied patch to make iodine build on BeOS R5-BONE and Haiku, |
|---|
| 57 | from Francois Revol. Still work to do to get tun device working. |
|---|
| 58 | - Added capability to forward DNS queries outside tunnel domain to |
|---|
| 59 | a nameserver on localhost. Use -b port to enable, fixes #31. |
|---|
| 60 | - iodined now replies to NS request on its own domain, fixes issue #33. |
|---|
| 61 | The destination IP address is sent as reply. Use -n to specify |
|---|
| 62 | a specific IP address to return (if behind NAT etc). |
|---|
| 63 | - Upstream data is now Base64 encoded if relay server preserves case and |
|---|
| 64 | supports the plus (+) character in domain names, fixes #16. |
|---|
| 65 | - Fixed problem in client when DNS trans. ID has highest bit set (#37) |
|---|
| 66 | - IP addresses are now assigned within the netmask, so iodined can |
|---|
| 67 | use any address for itself, fixes #28. |
|---|
| 68 | - Netmask size is now adjustable. Setting a small net will reduce the |
|---|
| 69 | number of users. Use x.x.x.x/n notation on iodined tunnel ip. |
|---|
| 70 | This fixes #27. |
|---|
| 71 | - Downstream data is now fragmented, and the fragment size is auto- |
|---|
| 72 | probed after login. Fixes #7. It only took a few years :) |
|---|
| 73 | - Enhanced the checks that validates incoming packets |
|---|
| 74 | - Fixed endless loop in fragment size autodetection, #39. |
|---|
| 75 | - Fixed broken hostname dot placing with specific lengths, #40. |
|---|
| 76 | |
|---|
| 77 | 2008-08-06: 0.4.2 "Opened Zone" |
|---|
| 78 | - Applied a few small patches from Maxim Bourmistrov and Gregor Herrmann |
|---|
| 79 | - Applied a patch for not creating and configuring the tun interface, |
|---|
| 80 | Debian bug #477692 by Vincent Bernat, controlled by -s switch |
|---|
| 81 | - Applied a security patch from Andrew Griffiths, use setgroups() to |
|---|
| 82 | limit the groups of the user |
|---|
| 83 | - Applied a patch to make iodine build on (Open)Solaris, from Albert Lee |
|---|
| 84 | Needs TUN/TAP driver http://www.whiteboard.ne.jp/~admin2/tuntap/ |
|---|
| 85 | Still needs more code in tun.c for opening/closing the device |
|---|
| 86 | - Added option in server (-c) to disable IP/port checking on packets, |
|---|
| 87 | will hopefully help when server is behind NAT |
|---|
| 88 | - Fixed bug #21, now only IP address part of each packet is checked. |
|---|
| 89 | Should remove the need for the -c option and also work with |
|---|
| 90 | bugfixed DNS servers worldwide. |
|---|
| 91 | - Added -D option on server to enable debugging. Debug level 1 now |
|---|
| 92 | prints info about each RX/TX datagram. |
|---|
| 93 | |
|---|
| 94 | 2007-11-30: 0.4.1 "Tea Online" |
|---|
| 95 | - Introduced encoding API |
|---|
| 96 | - Switched to new Base32 implementation |
|---|
| 97 | - Added Base64 implementation that only uses 63 chars (not used yet) |
|---|
| 98 | - Refined 'install' make target and use $(MAKE) for recursive calls |
|---|
| 99 | - All received error messages (RCODE field) are echoed |
|---|
| 100 | - Top domain limited to 128 chars |
|---|
| 101 | - Case preservation check sent after login to decide codec |
|---|
| 102 | - Fixed crash on incoming NULL query in server with bad top domain |
|---|
| 103 | - /etc/resolv.conf is consulted if no nameserver is given on commandline |
|---|
| 104 | - Applied patch from Matthew W. S. Bell (Detach before chroot/dropping priv) |
|---|
| 105 | |
|---|
| 106 | 2007-03-25: 0.4.0 "Run Home" |
|---|
| 107 | - Added multiuser support (up to 8 users simultaneously) |
|---|
| 108 | - Added authentication (password entered as argument or on stdin) |
|---|
| 109 | - Added manpage |
|---|
| 110 | - Added install/uninstall make target |
|---|
| 111 | - Cleanup of dns code, more test cases, use check library |
|---|
| 112 | - Changed directory structure |
|---|
| 113 | |
|---|
| 114 | 2006-11-08: 0.3.4 |
|---|
| 115 | - Fixed handshake() buffer overflow |
|---|
| 116 | (Found by poplix, Secunia: SA22674 / FrSIRT/ADV-2006-4333) |
|---|
| 117 | - Added more tests |
|---|
| 118 | - More name parsing enhancements |
|---|
| 119 | - Now runs on Linux/AMD64 |
|---|
| 120 | - Added setting to change server port |
|---|
| 121 | |
|---|
| 122 | 2006-11-05: 0.3.3 |
|---|
| 123 | - Fixed possible buffer overflow |
|---|
| 124 | (Found by poplix, Bugtraq ID: 20883) |
|---|
| 125 | - Reworked dns hostname encoding |
|---|
| 126 | |
|---|
| 127 | 2006-09-11: 0.3.2 |
|---|
| 128 | - Support for NetBSD |
|---|
| 129 | - Fixed potential security problems |
|---|
| 130 | - Name parsing routines rewritten, added regression tests |
|---|
| 131 | - New encoding, 25% more peak upstream throughput |
|---|
| 132 | - New -l option to set local ip to listen to on server |
|---|
| 133 | |
|---|
| 134 | 2006-07-11: 0.3.1 |
|---|
| 135 | - Add Mac OSX support |
|---|
| 136 | - Add setting device name |
|---|
| 137 | - Use compression of domain name in reply (should allow setting MTU |
|---|
| 138 | approx 200 bytes higher) |
|---|
| 139 | |
|---|
| 140 | 2006-06-24: 0.3.0 |
|---|
| 141 | - First public release |
|---|
| 142 | - Support for Linux, FreeBSD, OpenBSD |
|---|