When building the minimum spanning tree, make sure we start from a reachable node.
[tinc] / NEWS
1 version 1.0.5                Nov 14 2006
2
3  * Lots of small fixes.
4
5  * Broadcast packets no longer grow in size with each hop. This should
6    fix switch mode (again).
7  
8  * Generic host-up and host-down scripts.
9
10  * Optionally dump graph in graphviz format to a file or a script.
11
12  * Support LZO 2.0 and later.
13
14 version 1.0.4                May  4 2005
15
16  * Fix switch and hub modes.
17
18  * Optionally start scripts when a Subnet becomes (un)reachable.
19
20 version 1.0.3                Nov 11 2004
21
22 * Show error message when failing to write a PID file.
23
24 * Ignore spaces at end of lines in config files.
25
26 * Fix handling of late packets.
27
28 * Unify BSD tun/tap device handling. This allows IPv6 on tun devices and
29   anything on tap devices as long as the underlying OS supports it.
30
31 * Handle IPv6 on Solaris tun devices.
32
33 * Allow tinc to work properly under Windows XP SP2.
34
35 * Allow VLAN tagged Ethernet frames in switch and hub mode.
36
37 * Experimental PMTUDiscovery, TunnelServer and BlockingTCP options.
38
39 version 1.0.2                Nov  8 2003
40
41 * Fix address and hostname resolving under Windows.
42
43 * Remove warnings about non-existing scripts and unsupported address families.
44
45 * Use the event logger under Windows.
46
47 * Fix quoting of filenames and command line arguments under Windows.
48
49 * Strict checks for length incoming network packets and return values of
50   cryptographic functions,
51
52 * Fix a bug in metadata handling that made the tinc daemon abort.
53
54 version 1.0.1                Aug 14 2003
55
56 * Allow empty lines in config files.
57
58 * Fix handling of spaces and backslashes in filenames under native Windows.
59
60 * Allow scripts to be executed under native Windows.
61
62 * Update documentation, make it less Linux specific.
63
64 version 1.0                  Aug  4 2003
65
66 * Lots of small bugfixes and code cleanups.
67
68 * Throughput doubled and latency reduced.
69
70 * Added support for LZO compression.
71
72 * No need to set MAC address or disable ARP anymore.
73
74 * Added support for Windows 2000 and XP, both natively and in a Cygwin
75   environment.
76
77 version 1.0pre8              Sep 16 2002
78
79 * More fixes for subnets with prefixlength undivisible by 8.
80
81 * Added support for NetBSD and MacOS/X.
82
83 * Switched from undirected graphs to directed graphs to avoid certain race
84   conditions and improve scalability.
85
86 * Generalized broadcasting and forwarding of protocol messages.
87
88 * Cleanup of source code.
89
90
91 version 1.0pre7              Apr  7 2002
92
93 * Don't do blocking read()s when getting a signal.
94
95 * Remove RSA key checking code, since it sometimes thinks perfectly good RSA
96   keys are bad.
97
98 * Fix handling of subnets when prefixlength isn't divisible by 8.
99
100
101 version 1.0pre6              Mar 27 2002
102
103 * Improvement of redundant links:
104
105   * Non-blocking connects.
106   
107   * Protocol broadcast messages can no longer go into an infinite loop.
108   
109   * Graph algorithm updated to look harder for direct connections.
110
111 * Good support for routing IPv6 packets over the VPN. Works on Linux,
112   FreeBSD, possibly OpenBSD but not on Solaris.
113
114 * Support for tunnels over IPv6 networks. Works on all supported
115   operating systems.
116
117 * Optional compression of UDP connections using zlib.
118
119 * Optionally let UDP connections inherit TOS field of tunneled packets.
120
121 * Optionally start scripts when certain hosts become (un)reachable.
122
123
124 version 1.0pre5              Feb  9 2002
125
126 * Security enhancements:
127
128   * Added sequence number and optional message authentication code to
129     the packets.
130
131   * Configurable encryption cipher and digest algorithms.
132
133 * More robust handling of dis- and reconnects.
134
135 * Added a "switch" and a "hub" mode to allow bridging setups.
136
137 * Preliminary support for routing of IPv6 packets.
138
139 * Supports Linux, FreeBSD, OpenBSD and Solaris.
140
141
142 It looks like this might be the last release before 1.0.
143
144
145 version 1.0pre4              Jan 17 2001
146
147 * Updated documentation; the documentation now reflects the
148   configuration as it is.
149
150 * Some internal changes to make tinc scale better for large
151   networks, such as using AVL trees instead of linked lists for the
152   connection list.  
153
154 * RSA keys can be stored in separate files if needed.  See the
155   documentation for more information.
156
157 * tinc has now been reported to run on Linux PowerPC and FreeBSD x86.
158
159
160
161 version 1.0pre3              Oct 31 2000
162
163 * The protocol has been redesigned, and although some details are
164   still under discussion, this is secure.  Care has been taken to
165   resist most, if not all, attacks.
166   
167 * Unfortunately this protocol is not compatible with earlier versions,
168   nor are earlier versions compatible with this version.  Because the
169   older protocol has huge security flaws, we feel that not
170   implementing backwards compatibility is justified.
171
172 * Some data about the protocol:
173
174   * It uses public/private RSA keys for authentication (this is the
175     actual fix for the security hole).
176
177   * All cryptographic functions have been taken out of tinc, instead
178     it uses the OpenSSL library functions.
179
180   * Offers support for multiple subnets per tinc daemon.
181
182 * New is also the support for the universal tun/tap device.  This
183   means better portability to FreeBSD and Solaris.
184
185 * tinc is tested to compile on Solaris, Linux x86, Linux alpha.
186
187 * tinc now uses the OpenSSL library for cryptographic operations.
188   More information on getting and installing OpenSSL is in the manual.
189   This also means that the GMP library is no longer required.
190
191 * Further, thanks to Enrique Zanardi, we have Spanish messages; Matias
192   Carrasco provided us with a Spanish translation of the manual.
193
194
195 What still needs to be done before 1.0:
196
197 * Documentation.  Especially since the protocol has changed, and a lot
198   of configuration directives have been added.
199
200
201
202
203 version 1.0pre2              May 31 2000
204
205 * This version has been internationalized; and a Dutch translation has          
206   been included.                                                                
207                                                                                 
208 * Two configuration variables have been added:                                  
209   * VpnMask - the IP network mask for the entire VPN, not just our              
210     subnet (as given by MyVirtualIP).  The Redhat and Debian packages           
211     use this variable in their system startup scripts, but it is                
212     ignored by tinc.                                                            
213   * Hostnames - if set to `yes', look up the names of IP addresses              
214     trying to connect to us.  Default set to `no', to prevent lockups           
215     during lookups.                                                             
216                                                                                 
217 * The system startup scripts for Debian and Redhat use                          
218   /etc/tinc/nets.boot to find out which networks need to be started             
219   during system boot.                                                           
220                                                                                 
221 * Fixes to prevent denial of service attacks by sending random data             
222   after connecting (and even when the connection has been established),         
223   either random garbage or just nonsensical protocol fields.                    
224                                                                                 
225 * tinc will retry to connect upon startup, does not quit if it doesn't          
226   work the first time.                                                          
227                                                                                 
228 * Hosts that are disconnected implicitly if we lose a connection get            
229   deleted from the internal list, to prevent hogging eachother with             
230   add and delete requests when the connection is restored.                      
231                                                                                 
232                                                                                 
233 What still needs to be done before 1.0:                                         
234                                                                                 
235 * Documentation.                                                                
236 * Failover ConnectTo lines, try another one if the first doesn't work.          
237
238
239
240
241 version 1.0pre1              May 12 2000
242  * New meta-protocol
243  * Various other bugfixes
244  * Documentation updates
245
246 version 0.3.3                Feb  9 2000
247  * Fixed bug that made tinc stop working with latest kernels (Guus
248    Sliepen)
249  * Updated the manual
250
251 version 0.3.2                Nov 12 1999
252  * no more `Invalid filedescriptor' when working with multiple
253    connections
254  * forward unknown packets to uplink
255
256 version 0.3.1                Oct 20 1999
257  * fixed a bug where tinc would exit without a trace
258
259 version 0.3                  Aug 20 1999
260  * pings now work immediately
261  * all packet sizes get transmitted correctly
262
263 version 0.2.26               Aug 15 1999
264  * fixed some remaining bugs
265  * --sysconfdir works with configure
266  * last version before 0.3
267
268 version 0.2.25               Aug  8 1999
269  * improved stability, going towards 0.3 now.
270
271 version 0.2.24               Aug  7 1999
272  * added key aging, there's a new config variable, KeyExpire.
273  * updated man and info pages
274
275 version 0.2.23               Aug  5 1999
276  * all known bugs fixed, this is a candidate for 0.3
277
278 version 0.2.22               Apr 11 1999
279  * multiconnection thing is now working nearly perfect :)
280
281 version 0.2.21               Apr 10 1999
282  * You shouldn't notice a thing, but a lot has changed wrt key
283 management - except that it refuses to talk to versions < 0.2.20
284
285 version 0.2.20
286
287 version 0.2.19               Apr  3 1999
288  * don't install a libcipher.so
289
290 version 0.2.18               Apr  3 1999
291  * blowfish library dynamically loaded upon execution
292  * included Eric Young's IDEA library
293
294 version 0.2.17               Apr  1 1999
295  * tincd now re-executes itself in case of a segmentation fault.
296
297 version 0.2.16               Apr  1 1999
298  * wrote tincd.conf(5) man page, which still needs a lot of work.
299  * config file now accepts and tolerates spaces, and any integer base
300 for integer variables, and better error reporting. See
301 doc/tincd.conf.sample for an example.
302
303 version 0.2.15               Mar 29 1999
304  * fixed bugs
305
306 version 0.2.14               Feb 10 1999
307  * added --timeout flag and PingTimeout configuration
308  * did some first syslog cleanup work
309
310 version 0.2.13               Jan 23 1999
311  * bugfixes
312
313 version 0.2.12               Jan 23 1999
314  * fixed nauseating bug so that it would crash whenever a connection
315 got lost
316
317 version 0.2.11               Jan 22 1999
318  * framework for multiple connections has been done
319  * simple manpage for tincd
320
321 version 0.2.10               Jan 18 1999
322  * passphrase support added
323
324 version 0.2.9                Jan 13 1999
325  * bugs fixed.
326
327 version 0.2.8                Jan 11 1999
328  * a reworked protocol version
329  * a ping/pong system
330  * more reliable networking code
331  * automatic reconnection
332  * still does not work with more than one connection :)
333  * strips MAC addresses before sending, so there's less overhead, and
334 less redundancy
335
336 version 0.2.7                Jan  3 1999
337  * several updates to make extending more easy.
338
339 version 0.2.6                Dec 20 1998
340  * Point-to-Point connections have been established, including
341 blowfish encryption and a secret key-exchange.
342
343 version 0.2.5                Dec 16 1998
344  * Project renamed to tinc, in honour of TINC.
345
346 version 0.2.4                Dec 16 1998
347  * now it really does ;)
348
349 version 0.2.3                Nov 24 1998
350  * it sort of works now
351
352 version 0.2.2                Nov 20 1998
353  * uses GNU gmp.
354
355 version 0.2.1                Nov 14 1998
356
357  * Bare version.