Set urgency=high.
[debian/iodine.git] / CHANGELOG
1
2 iodine - http://code.kryo.se/iodine
3
4 ***********************************
5
6 CHANGES:
7
8 2010-02-13: 0.6.0-rc1 "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