… | |
… | |
14 | TODO: ipv6 |
14 | TODO: ipv6 |
15 | TODO: gvpectrl should not use default privatekey,. or maybe document it better |
15 | TODO: gvpectrl should not use default privatekey,. or maybe document it better |
16 | - INCOMPATIBLE CHANGE: core protocol version 1.0. |
16 | - INCOMPATIBLE CHANGE: core protocol version 1.0. |
17 | - INCOMPATIBLE CHANGE: node sections are now introduced |
17 | - INCOMPATIBLE CHANGE: node sections are now introduced |
18 | with "node nodename", not "node = nodename". |
18 | with "node nodename", not "node = nodename". |
|
|
19 | - add workaround for temporary/rare ENOBUFS condition. |
19 | - while individual packets couldn't be replayed, a whole session |
20 | - while individual packets couldn't be replayed, a whole session |
20 | could be replayed - this has been fixed by an extra key exchange. |
21 | could be replayed - this has been fixed by an extra key exchange. |
|
|
22 | - fix a delete vs. delete [] mismatch in the central logging function. |
21 | - in addition to rsa key exchange and authentication, the handshake now |
23 | - in addition to rsa key exchange and authentication, the handshake now |
22 | adds a diffie-hellman key exchange (using curve25119) for perfect |
24 | adds a diffie-hellman key exchange (using curve25119) for perfect |
23 | forward secrecy. mac and cipher keys are derived using HKDF. |
25 | forward secrecy. mac and cipher keys are derived using HKDF. |
24 | - rsa key sizes are now configurable and larger (default is 3072). |
26 | - rsa key sizes are now configurable and larger (default is 3072). |
25 | correspondingly, the minimum mtu is no longer 296 but 576. |
27 | correspondingly, the minimum mtu is no longer 296 but 576. |
… | |
… | |
32 | - the pid-file now accepts %s as nodename as elsewhere. |
34 | - the pid-file now accepts %s as nodename as elsewhere. |
33 | - switch to counter mode (only aes supported at the moment in |
35 | - switch to counter mode (only aes supported at the moment in |
34 | openssl). this gets rid of the need to generate a random iv, |
36 | openssl). this gets rid of the need to generate a random iv, |
35 | is likely more secure (and, as a side effect, gets rid of |
37 | is likely more secure (and, as a side effect, gets rid of |
36 | slow randomness generation. counter mode is often faster |
38 | slow randomness generation. counter mode is often faster |
37 | then cbc mode as well). |
39 | then cbc mode as well, and packets are smaller). |
38 | - no longer use RAND_bytes to generate session keys - you NEED |
40 | - no longer use RAND_bytes to generate session keys - you NEED |
39 | a real source of entropy now (e.g. egd or /dev/random - see the |
41 | a real source of entropy now (e.g. egd or /dev/random - see the |
40 | openssl documentation). |
42 | openssl documentation). |
41 | - multiple node statements for the same node are now supported |
43 | - multiple node statements for the same node are now supported |
42 | and will be merged. |
44 | and will be merged. |
… | |
… | |
49 | - during rekeying or conenction establishments, hmac authentication |
51 | - during rekeying or conenction establishments, hmac authentication |
50 | errors could occur and reset the connection. Transient hmac |
52 | errors could occur and reset the connection. Transient hmac |
51 | authentication errors are now being ignored for 3 seconds. |
53 | authentication errors are now being ignored for 3 seconds. |
52 | - log the reason for a conneciton loss. |
54 | - log the reason for a conneciton loss. |
53 | - use a (hopefully) constant time memcmp to compare internal secrets. |
55 | - use a (hopefully) constant time memcmp to compare internal secrets. |
|
|
56 | - fix a (harmless) errornous out of bounds stack read that would trigger |
|
|
57 | gcc's -fsanitize=address. |
54 | |
58 | |
55 | 2.25 Sat Jul 13 06:42:33 CEST 2013 |
59 | 2.25 Sat Jul 13 06:42:33 CEST 2013 |
56 | - INCOMPATIBLE CHANGE: no longer enable udp protocol if no other |
60 | - INCOMPATIBLE CHANGE: no longer enable udp protocol if no other |
57 | protocols are enabled - this is necessary when you have nodes with |
61 | protocols are enabled - this is necessary when you have nodes with |
58 | completely unknown protocols, to force mediated connection requests. |
62 | completely unknown protocols, to force mediated connection requests. |