log entries start with lowcercase character
[strongswan.git] / NEWS
1 strongswan-4.0.2
2 ----------------
3
4 - The mixed PSK/RSA roadwarrior detection capability introduced by the
5   strongswan-2.7.0 release necessitated the pre-parsing of the IKE proposal
6   payloads by the responder right before any defined IKE Main Mode state had
7   been established. Although any form of bad proposal syntax was being correctly
8   detected by the payload parser, the subsequent error handler didn't check
9   the state pointer before logging current state information, causing an
10   immediate crash of the pluto keying daemon due to a NULL pointer.
11
12 strongswan-4.0.1
13 ----------------
14
15 - Added algorithm selection to charon: New default algorithms for 
16   ike=aes128-sha-modp2048, as both daemons support it. The default
17   for IPsec SAs is now esp=aes128-sha,3des-md5. charon handles
18   the ike/esp parameter the same way as pluto. As this syntax does
19   not allow specification of a pseudo random function, the same 
20   algorithm as for integrity is used (currently sha/md5). Supported
21   algorithms for IKE:
22     Encryption: aes128, aes192, aes256
23     Integrity/PRF: md5, sha (using hmac)
24     DH-Groups: modp768, 1024, 1536, 2048, 4096, 8192
25   and for ESP:
26     Encryption: aes128, aes192, aes256, 3des, blowfish128, 
27                 blowfish192, blowfish256
28     Integrity: md5, sha1
29   More IKE encryption algorithms will come after porting libcrypto into
30   libstrongswan. 
31
32 - initial support for rekeying CHILD_SAs using IKEv2. Currently no
33   perfect forward secrecy is used. The rekeying parameters rekey,
34   rekeymargin, rekeyfuzz and keylife from ipsec.conf are now supported
35   when using IKEv2. WARNING: charon currently is unable to handle
36   simultaneous rekeying. To avoid such a situation, use a large
37   rekeyfuzz, or even better, set rekey=no on one peer.
38
39 - support for host2host, net2net, host2net (roadwarrior) tunnels
40   using predefined RSA certificates (see uml scenarios for
41   configuration examples).
42
43 - new build environment featuring autotools. Features such
44   as HTTP, LDAP and smartcard support may be enabled using
45   the ./configure script. Changing install directories 
46   is possible, too. See ./configure --help for more details.
47
48 - better integration of charon with ipsec starter, which allows
49   (almost) transparent operation with both daemons. charon
50   handles ipsec commands up, down, status, statusall, listall,
51   listcerts and allows proper load, reload and delete of connections
52   via ipsec starter.
53
54 strongswan-4.0.0
55 ----------------
56
57 - initial support of the IKEv2 protocol. Connections in
58   ipsec.conf designated by keyexchange=ikev2 are negotiated 
59   by the new IKEv2 charon keying daemon whereas those marked
60   by keyexchange=ikev1 or the default keyexchange=ike are
61   handled thy the IKEv1 pluto keying daemon. Currently only
62   a limited subset of functions are available with IKEv2
63   (Default AES encryption, authentication based on locally
64   imported X.509 certificates, unencrypted private RSA keys
65   in PKCS#1 file format, limited functionality of the ipsec
66   status command).
67
68
69 strongswan-2.7.0
70 ----------------
71
72 - the dynamic iptables rules from the _updown_x509 template
73   for KLIPS and the _updown_policy template for NETKEY have
74   been merged into the default _updown script. The existing
75   left|rightfirewall keyword causes the automatic insertion
76   and deletion of ACCEPT rules for tunneled traffic upon
77   the successful setup and teardown of an IPsec SA, respectively.
78   left|rightfirwall can be used with KLIPS under any Linux 2.4
79   kernel or with NETKEY under a Linux kernel version >= 2.6.16
80   in conjuction with iptables >= 1.3.5. For NETKEY under a Linux
81   kernel version < 2.6.16 which does not support IPsec policy
82   matching yet, please continue to use a copy of the _updown_espmark
83   template loaded via the left|rightupdown keyword.
84
85 - a new left|righthostaccess keyword has been introduced which
86   can be used in conjunction with left|rightfirewall and the
87   default _updown script. By default leftfirewall=yes inserts
88   a bi-directional iptables FORWARD rule for a local client network
89   with a netmask different from 255.255.255.255 (single host).
90   This does not allow to access the VPN gateway host via its
91   internal network interface which is part of the client subnet
92   because an iptables INPUT and OUTPUT rule would be required.
93   lefthostaccess=yes will cause this additional ACCEPT rules to
94   be inserted. 
95
96 - mixed PSK|RSA roadwarriors are now supported. The ISAKMP proposal
97   payload is preparsed in order to find out whether the roadwarrior
98   requests PSK or RSA so that a matching connection candidate can
99   be found.
100
101
102 strongswan-2.6.4
103 ----------------
104
105 - the new _updown_policy template allows ipsec policy based
106   iptables firewall rules. Required are iptables version
107   >= 1.3.5 and linux kernel >= 2.6.16. This script obsoletes
108   the _updown_espmark template, so that no INPUT mangle rules 
109   are required any more.
110
111 - added support of DPD restart mode
112
113 - ipsec starter now allows the use of wildcards in include
114   statements as e.g. in "include /etc/my_ipsec/*.conf".
115   Patch courtesy of Matthias Haas.
116
117 - the Netscape OID 'employeeNumber' is now recognized and can be
118   used as a Relative Distinguished Name in certificates.
119
120
121 strongswan-2.6.3
122 ----------------
123
124 - /etc/init.d/ipsec or /etc/rc.d/ipsec is now a copy of the ipsec 
125   command and not of ipsec setup any more.
126
127 - ipsec starter now supports AH authentication in conjunction with
128   ESP encryption. AH authentication is configured in ipsec.conf
129   via the auth=ah parameter.
130   
131 - The command ipsec scencrypt|scdecrypt <args> is now an alias for
132   ipsec whack --scencrypt|scdecrypt <args>.
133
134 - get_sa_info() now determines for the native netkey IPsec stack
135   the exact time of the last use of an active eroute. This information
136   is used by the Dead Peer Detection algorithm and is also displayed by
137   the ipsec status command.
138   
139
140 strongswan-2.6.2
141 ----------------
142
143 - running under the native Linux 2.6 IPsec stack, the function
144   get_sa_info() is called by ipsec auto --status to display the current
145   number of transmitted bytes per IPsec SA.
146
147 - get_sa_info() is also used  by the Dead Peer Detection process to detect
148   recent ESP activity. If ESP traffic was received from the peer within
149   the last dpd_delay interval then no R_Y_THERE notification must be sent.
150
151 - strongSwan now supports the Relative Distinguished Name "unstructuredName"
152   in ID_DER_ASN1_DN identities. The following notations are possible:
153
154     rightid="unstructuredName=John Doe"
155     rightid="UN=John Doe"
156
157 - fixed a long-standing bug which caused PSK-based roadwarrior connections
158   to segfault in the function id.c:same_id() called by keys.c:get_secret()
159   if an FQDN, USER_FQDN, or Key ID was defined, as in the following example.
160
161   conn rw
162        right=%any
163        rightid=@foo.bar
164        authby=secret
165
166 - the ipsec command now supports most ipsec auto commands (e.g. ipsec listall).
167
168 - ipsec starter didn't set host_addr and client.addr ports in whack msg.
169
170 - in order to guarantee backwards-compatibility with the script-based
171   auto function (e.g. auto --replace), the ipsec starter scripts stores
172   the defaultroute information in the temporary file /var/run/ipsec.info.
173
174 - The compile-time option USE_XAUTH_VID enables the sending of the XAUTH
175   Vendor ID which is expected by Cisco PIX 7 boxes that act as IKE Mode Config
176   servers.
177
178 - the ipsec starter now also recognizes the parameters authby=never and
179   type=passthrough|pass|drop|reject.
180
181
182 strongswan-2.6.1
183 ----------------
184
185 - ipsec starter now supports the also parameter which allows
186   a modular structure of the connection definitions. Thus
187   "ipsec start" is now ready to replace "ipsec setup".
188
189
190 strongswan-2.6.0
191 ----------------
192
193 - Mathieu Lafon's popular ipsec starter tool has been added to the
194   strongSwan distribution. Many thanks go to Stephan Scholz from astaro
195   for his integration work. ipsec starter is a C program which is going
196   to replace the various shell and awk starter scripts (setup, _plutoload,
197   _plutostart, _realsetup, _startklips, _confread, and auto). Since
198   ipsec.conf is now parsed only once, the starting of multiple tunnels is
199   accelerated tremedously.
200
201 - Added support of %defaultroute to the ipsec starter. If the IP address
202   changes, a HUP signal to the ipsec starter will automatically 
203   reload pluto's connections.
204
205 - moved most compile time configurations from pluto/Makefile to
206   Makefile.inc by defining the options USE_LIBCURL, USE_LDAP,
207   USE_SMARTCARD, and USE_NAT_TRAVERSAL_TRANSPORT_MODE.
208
209 - removed the ipsec verify and ipsec newhostkey commands
210
211 - fixed some 64-bit issues in formatted print statements
212
213 - The scepclient functionality implementing the Simple Certificate
214   Enrollment Protocol (SCEP) is nearly complete but hasn't been
215   documented yet.
216
217
218 strongswan-2.5.7
219 ----------------
220
221 - CA certicates are now automatically loaded from a smartcard
222   or USB crypto token and appear in the ipsec auto --listcacerts
223   listing.
224
225
226 strongswan-2.5.6
227 ----------------
228
229 - when using "ipsec whack --scencrypt <data>" with  a PKCS#11
230   library that does not support the C_Encrypt() Cryptoki
231   function (e.g. OpenSC), the RSA encryption is done in
232   software using the public key fetched from the smartcard.
233
234 - The scepclient function now allows to define the 
235   validity of a self-signed certificate using the --days,
236   --startdate, and --enddate options. The default validity
237   has been changed from one year to five years.
238
239
240 strongswan-2.5.5
241 ----------------
242
243 - the config setup parameter pkcs11proxy=yes opens pluto's PKCS#11
244   interface to other applications for RSA encryption and decryption
245   via the whack interface. Notation:
246
247   ipsec whack --scencrypt <data>
248              [--inbase  16|hex|64|base64|256|text|ascii]
249              [--outbase 16|hex|64|base64|256|text|ascii]
250              [--keyid <keyid>]
251
252   ipsec whack --scdecrypt <data>
253              [--inbase  16|hex|64|base64|256|text|ascii]
254              [--outbase 16|hex|64|base64|256|text|ascii]
255              [--keyid <keyid>]
256
257   The default setting for inbase and outbase is hex. 
258
259   The new proxy interface can be used for securing symmetric
260   encryption keys required by the cryptoloop or dm-crypt
261   disk encryption schemes, especially in the case when
262   pkcs11keepstate=yes causes pluto to lock the pkcs11 slot
263   permanently.
264
265 - if the file /etc/ipsec.secrets is lacking during the startup of
266   pluto then the root-readable file /etc/ipsec.d/private/myKey.der
267   containing a 2048 bit RSA private key and a matching self-signed
268   certificate stored in the file /etc/ipsec.d/certs/selfCert.der
269   is automatically generated by calling the function
270
271   ipsec scepclient --out pkcs1 --out cert-self
272
273   scepclient was written by Jan Hutter and Martin Willi, students
274   at the University of Applied Sciences in Rapperswil, Switzerland.
275
276
277 strongswan-2.5.4
278 ----------------
279
280 - the current extension of the PKCS#7 framework introduced
281   a parsing error in PKCS#7 wrapped X.509 certificates that are
282   e.g. transmitted by Windows XP when multi-level CAs are used.
283   the parsing syntax has been fixed.
284
285 - added a patch by Gerald Richter which tolerates multiple occurrences
286   of the ipsec0 interface when using KLIPS.
287
288
289 strongswan-2.5.3
290 ----------------
291
292 - with gawk-3.1.4 the word "default2 has become a protected
293   keyword for use in switch statements and cannot be used any
294   more in the strongSwan scripts. This problem has been
295   solved by renaming "default" to "defaults" and "setdefault"
296   in the scripts _confread and auto, respectively.
297
298 - introduced the parameter leftsendcert with the values
299
300   always|yes (the default, always send a cert)
301   ifasked    (send the cert only upon a cert request)
302   never|no   (never send a cert, used for raw RSA keys and
303               self-signed certs) 
304
305 - fixed the initialization of the ESP key length to a default of
306   128 bits in the case that the peer does not send a key length
307    attribute for AES encryption.
308
309 - applied Herbert Xu's uniqueIDs patch
310
311 - applied Herbert Xu's CLOEXEC patches
312
313
314 strongswan-2.5.2
315 ----------------
316
317 - CRLs can now be cached also in the case when the issuer's
318   certificate does not contain a subjectKeyIdentifier field.
319   In that case the subjectKeyIdentifier is computed by pluto as the
320   160 bit SHA-1 hash of the issuer's public key in compliance
321   with section 4.2.1.2 of RFC 3280.
322
323 - Fixed a bug introduced by strongswan-2.5.1 which eliminated
324   not only multiple Quick Modes of a given connection but also
325   multiple connections between two security gateways.
326
327
328 strongswan-2.5.1
329 ----------------
330
331 - Under the native IPsec of the Linux 2.6 kernel, a %trap eroute
332   installed either by setting auto=route in ipsec.conf or by
333   a connection put into hold, generates an XFRM_AQUIRE event
334   for each packet that wants to use the not-yet exisiting
335   tunnel. Up to now each XFRM_AQUIRE event led to an entry in
336   the Quick Mode queue, causing multiple IPsec SA to be
337   established in rapid succession. Starting with strongswan-2.5.1
338   only a single IPsec SA is established per host-pair connection.
339
340 - Right after loading the PKCS#11 module, all smartcard slots are
341   searched for certificates. The result can be viewed using
342   the command
343
344     ipsec auto --listcards
345
346   The certificate objects found in the slots are numbered
347   starting with #1, #2, etc. This position number can be used to address
348   certificates (leftcert=%smartcard) and keys (: PIN %smartcard)
349   in ipsec.conf and ipsec.secrets, respectively:
350
351     %smartcard      (selects object #1)
352     %smartcard#1    (selects object #1)
353     %smartcard#3    (selects object #3)
354
355   As an alternative the existing retrieval scheme can be used:
356
357     %smartcard:45   (selects object with id=45)
358     %smartcard0     (selects first object in slot 0)
359     %smartcard4:45  (selects object in slot 4 with id=45)
360
361 - Depending on the settings of CKA_SIGN and CKA_DECRYPT
362   private key flags either C_Sign() or C_Decrypt() is used
363   to generate a signature.
364
365 - The output buffer length parameter siglen in C_Sign()
366   is now initialized to the actual size of the output
367   buffer prior to the function call. This fixes the
368   CKR_BUFFER_TOO_SMALL error that could occur when using
369   the OpenSC PKCS#11 module.
370
371 - Changed the initialization of the PKCS#11 CK_MECHANISM in
372   C_SignInit() to mech  = { CKM_RSA_PKCS, NULL_PTR, 0 }.
373
374 - Refactored the RSA public/private key code and transferred it
375   from keys.c to the new pkcs1.c file as a preparatory step
376   towards the release of the SCEP client.
377
378
379 strongswan-2.5.0
380 ----------------
381
382 - The loading of a PKCS#11 smartcard library module during
383   runtime does not require OpenSC library functions any more
384   because the corresponding code has been integrated into
385   smartcard.c. Also the RSAREF pkcs11 header files have been
386   included in a newly created pluto/rsaref directory so that
387   no external include path has to be defined any longer.
388
389 - A long-awaited feature has been implemented at last:
390   The local caching of CRLs fetched via HTTP or LDAP, activated
391   by the parameter cachecrls=yes in the config setup section
392   of ipsec.conf. The dynamically fetched CRLs are stored under
393   a unique file name containing the issuer's subjectKeyID
394   in /etc/ipsec.d/crls.
395   
396 - Applied a one-line patch courtesy of Michael Richardson
397   from the Openswan project which fixes the kernel-oops
398   in KLIPS when an snmp daemon is running on the same box.
399
400
401 strongswan-2.4.4
402 ----------------
403
404 - Eliminated null length CRL distribution point strings.
405
406 - Fixed a trust path evaluation bug introduced with 2.4.3
407
408
409 strongswan-2.4.3
410 ----------------
411
412 - Improved the joint OCSP / CRL revocation policy.
413   OCSP responses have precedence over CRL entries.
414
415 - Introduced support of CRLv2 reason codes.
416
417 - Fixed a bug with key-pad equipped readers which caused
418   pluto to prompt for the pin via the console when the first
419   occasion to enter the pin via the key-pad was missed.
420
421 - When pluto is built with LDAP_V3 enabled, the library
422   liblber required by newer versions of openldap is now
423   included.
424
425
426 strongswan-2.4.2
427 ----------------
428
429 - Added the _updown_espmark template which requires all
430   incoming ESP traffic to be marked with a default mark
431   value of 50.
432   
433 - Introduced the pkcs11keepstate parameter in the config setup
434   section of ipsec.conf. With pkcs11keepstate=yes the PKCS#11
435   session and login states are kept as long as possible during 
436   the lifetime of pluto. This means that a PIN entry via a key
437   pad has to be done only once.
438
439 - Introduced the pkcs11module parameter in the config setup
440   section of ipsec.conf which specifies the PKCS#11 module
441   to be used with smart cards. Example:
442   
443     pkcs11module=/usr/lib/pkcs11/opensc-pkcs11.lo
444   
445 - Added support of smartcard readers equipped with a PIN pad.
446
447 - Added patch by Jay Pfeifer which detects when netkey
448   modules have been statically built into the Linux 2.6 kernel.
449
450 - Added two patches by Herbert Xu. The first uses ip xfrm
451   instead of setkey to flush the IPsec policy database. The
452   second sets the optional flag in inbound IPComp SAs only.
453     
454 - Applied Ulrich Weber's patch which fixes an interoperability
455   problem between native IPsec and KLIPS systems caused by
456   setting the replay window to 32 instead of 0 for ipcomp.
457
458
459 strongswan-2.4.1
460 ----------------
461
462 - Fixed a bug which caused an unwanted Mode Config request
463   to be initiated in the case where "right" was used to denote
464   the local side in ipsec.conf and "left" the remote side,
465   contrary to the recommendation that "right" be remote and
466   "left" be"local".
467
468
469 strongswan-2.4.0a
470 -----------------
471
472 - updated Vendor ID to strongSwan-2.4.0
473
474 - updated copyright statement to include David Buechi and
475   Michael Meier
476   
477   
478 strongswan-2.4.0
479 ----------------
480
481 - strongSwan now communicates with attached smartcards and
482   USB crypto tokens via the standardized PKCS #11 interface.
483   By default the OpenSC library from www.opensc.org is used
484   but any other PKCS#11 library could be dynamically linked.
485   strongSwan's PKCS#11 API was implemented by David Buechi
486   and Michael Meier, both graduates of the Zurich University
487   of Applied Sciences in Winterthur, Switzerland.
488
489 - When a %trap eroute is triggered by an outgoing IP packet
490   then the native IPsec stack of the Linux 2.6 kernel [often/
491   always?] returns an XFRM_ACQUIRE message with an undefined
492   protocol family field and the connection setup fails.
493   As a workaround IPv4 (AF_INET) is now assumed.
494   
495 - the results of the UML test scenarios are now enhanced 
496   with block diagrams of the virtual network topology used
497   in a particular test. 
498
499
500 strongswan-2.3.2
501 ----------------
502
503 - fixed IV used to decrypt informational messages.
504   This bug was introduced with Mode Config functionality.
505  
506 - fixed NCP Vendor ID.
507
508 - undid one of Ulrich Weber's maximum udp size patches
509   because it caused a segmentation fault with NAT-ed
510   Delete SA messages.
511   
512 - added UML scenarios wildcards and attr-cert which
513   demonstrate the implementation of IPsec policies based
514   on wildcard parameters contained in Distinguished Names and
515   on X.509 attribute certificates, respectively.
516
517
518 strongswan-2.3.1
519 ----------------
520
521 - Added basic Mode Config functionality
522
523 - Added Mathieu Lafon's patch which upgrades the status of
524   the NAT-Traversal implementation to RFC 3947.
525  
526 - The _startklips script now also loads the xfrm4_tunnel
527   module.
528   
529 - Added Ulrich Weber's netlink replay window size and
530   maximum udp size patches.
531
532 - UML testing now uses the Linux 2.6.10 UML kernel by default.
533    
534
535 strongswan-2.3.0
536 ----------------
537
538 - Eric Marchionni and Patrik Rayo, both recent graduates from
539   the Zuercher Hochschule Winterthur in Switzerland, created a
540   User-Mode-Linux test setup for strongSwan. For more details
541   please read the INSTALL and README documents in the testing
542   subdirectory.
543
544 - Full support of group attributes based on X.509 attribute
545   certificates. Attribute certificates can be generated 
546   using the openac facility. For more details see
547    
548   man ipsec_openac.
549  
550   The group attributes can be used in connection definitions
551   in order to give IPsec access to specific user groups.
552   This is done with the new parameter left|rightgroups as in
553   
554   rightgroups="Research, Sales"
555
556   giving access to users possessing the group attributes
557   Research or Sales, only.
558
559 - In Quick Mode clients with subnet mask /32 are now
560   coded as IP_V4_ADDRESS or IP_V6_ADDRESS. This should 
561   fix rekeying problems with the SafeNet/SoftRemote and NCP
562   Secure Entry Clients.
563
564 - Changed the defaults of the ikelifetime and keylife parameters
565   to 3h and 1h, respectively. The maximum allowable values are
566   now both set to 24 h.
567
568 - Suppressed notification wars between two IPsec peers that
569   could e.g. be triggered by incorrect ISAKMP encryption.
570
571 - Public RSA keys can now have identical IDs if either the
572   issuing CA or the serial number is different. The serial
573   number of a certificate is now shown by the command
574   
575   ipsec auto --listpubkeys
576
577
578 strongswan-2.2.2
579 ----------------
580
581 - Added Tuomo Soini's sourceip feature which allows a strongSwan
582   roadwarrior to use a fixed Virtual IP (see README section 2.6)
583   and reduces the well-known four tunnel case on VPN gateways to
584   a single tunnel definition (see README section 2.4).
585
586 - Fixed a bug occuring with NAT-Traversal enabled when the responder
587   suddenly turns initiator and the initiator cannot find a matching
588   connection because of the floated IKE port 4500.
589   
590 - Removed misleading ipsec verify command from barf.
591
592 - Running under the native IP stack, ipsec --version now shows
593   the Linux kernel version (courtesy to the Openswan project).
594
595
596 strongswan-2.2.1
597 ----------------
598
599 - Introduced the ipsec auto --listalgs monitoring command which lists
600   all currently registered IKE and ESP algorithms.
601
602 - Fixed a bug in the ESP algorithm selection occuring when the strict flag
603   is set and the first proposed transform does not match.
604   
605 - Fixed another deadlock in the use of the lock_certs_and_keys() mutex,
606   occuring when a smartcard is present.
607
608 - Prevented that a superseded Phase1 state can trigger a DPD_TIMEOUT event.
609   
610 - Fixed the printing of the notification names (null)
611
612 - Applied another of Herbert Xu's Netlink patches.
613
614
615 strongswan-2.2.0
616 ----------------
617
618 - Support of Dead Peer Detection. The connection parameter
619
620     dpdaction=clear|hold
621      
622   activates DPD for the given connection.
623
624 - The default Opportunistic Encryption (OE) policy groups are not
625   automatically included anymore. Those wishing to activate OE can include
626   the policy group with the following statement in ipsec.conf:
627   
628     include /etc/ipsec.d/examples/oe.conf
629   
630   The default for [right|left]rsasigkey is now set to %cert.
631
632 - strongSwan now has a Vendor ID of its own which can be activated
633   using the compile option VENDORID
634
635 - Applied Herbert Xu's patch which sets the compression algorithm correctly.
636
637 - Applied Herbert Xu's patch fixing an ESPINUDP problem
638
639 - Applied Herbert Xu's patch setting source/destination port numbers.
640
641 - Reapplied one of Herbert Xu's NAT-Traversal patches which got
642   lost during the migration from SuperFreeS/WAN.
643   
644 - Fixed a deadlock in the use of the lock_certs_and_keys() mutex.
645
646 - Fixed the unsharing of alg parameters when instantiating group
647   connection.
648   
649
650 strongswan-2.1.5
651 ----------------
652
653 - Thomas Walpuski made me aware of a potential DoS attack via
654   a PKCS#7-wrapped certificate bundle which could overwrite valid CA
655   certificates in Pluto's authority certificate store. This vulnerability
656   was fixed by establishing trust in CA candidate certificates up to a
657   trusted root CA prior to insertion into Pluto's chained list.
658
659 - replaced the --assign option by the -v option in the auto awk script
660   in order to make it run with mawk under debian/woody.
661
662
663 strongswan-2.1.4
664 ----------------
665
666 - Split of the status information between ipsec auto  --status (concise)
667   and ipsec auto --statusall (verbose). Both commands can be used with
668   an optional connection selector:
669
670     ipsec auto --status[all] <connection_name>
671
672 - Added the description of X.509 related features to the ipsec_auto(8)
673   man page.
674
675 - Hardened the ASN.1 parser in debug mode, especially the printing
676   of malformed distinguished names.
677
678 - The size of an RSA public key received in a certificate is now restricted to
679
680     512 bits <= modulus length <= 8192 bits.
681
682 - Fixed the debug mode enumeration.
683
684
685 strongswan-2.1.3
686 ----------------
687
688 - Fixed another PKCS#7 vulnerability which could lead to an
689   endless loop while following the X.509 trust chain.
690   
691
692 strongswan-2.1.2
693 ----------------
694
695 - Fixed the PKCS#7 vulnerability discovered by Thomas Walpuski
696   that accepted end certificates having identical issuer and subject
697   distinguished names in a multi-tier X.509 trust chain.
698   
699
700 strongswan-2.1.1
701 ----------------
702
703 - Removed all remaining references to ipsec_netlink.h in KLIPS.
704
705
706 strongswan-2.1.0
707 ----------------
708
709 - The new "ca" section allows to define the following parameters:
710
711   ca kool
712      cacert=koolCA.pem                   # cacert of kool CA
713      ocspuri=http://ocsp.kool.net:8001   # ocsp server
714      ldapserver=ldap.kool.net            # default ldap server
715      crluri=http://www.kool.net/kool.crl # crl distribution point
716      crluri2="ldap:///O=Kool, C= .."     # crl distribution point #2
717      auto=add                            # add, ignore
718      
719   The ca definitions can be monitored via the command
720   
721      ipsec auto --listcainfos
722
723 - Fixed cosmetic corruption of /proc filesystem by integrating
724   D. Hugh Redelmeier's freeswan-2.06 kernel fixes.
725
726
727 strongswan-2.0.2
728 ----------------
729
730 - Added support for the 818043 NAT-Traversal update of Microsoft's
731   Windows 2000/XP IPsec client which sends an ID_FQDN during Quick Mode.
732   
733 - A symbolic link to libcrypto is now added in the kernel sources 
734   during kernel compilation
735   
736 - Fixed a couple of 64 bit issues (mostly casts to int).
737   Thanks to Ken Bantoft who checked my sources on a 64 bit platform.
738
739 - Replaced s[n]printf() statements in the kernel by ipsec_snprintf().
740   Credits go to D. Hugh Redelmeier, Michael Richardson, and Sam Sgro
741   of the FreeS/WAN team who solved this problem with the 2.4.25 kernel.
742
743
744 strongswan-2.0.1
745 ----------------
746
747 - an empty ASN.1 SEQUENCE OF or SET OF object (e.g. a subjectAltName
748   certificate extension which contains no generalName item)  can cause
749   a pluto crash. This bug has been fixed. Additionally the ASN.1 parser has
750   been hardened to make it more robust against malformed ASN.1 objects.
751
752 - applied Herbert Xu's NAT-T patches which fixes NAT-T under the native
753   Linux 2.6 IPsec stack.
754   
755   
756 strongswan-2.0.0
757 ----------------
758
759 - based on freeswan-2.04, x509-1.5.3, nat-0.6c, alg-0.8.1rc12