1 strongswan-4.0.3 / R:1235
2 ===========================
4 fixed rekeying behavior when proposing an inacceptable DH group (INVALID_KE_PAYLOAD)
5 implement proper handling of most simultaneous IKE_SA rekeying cases
7 implemented proper refcounting using atomic operations
8 implemented IKE_SA rekeying
9 uses ikelifetime, rekeymargin and rekeyfuzz config settings
10 no handling of simultaneus exchanges yet!
11 added possibility to route CHILD_SAs, without to set them up
12 support for auto=route parameter
13 support for ipsec route and ipsec unroute
14 initiating of CHILD and/or IKE_SAs based on kernel acquires
15 reuse an existing IKE_SA to set up additional CHILD_SAs
16 introduced refcounting on policy and connections
17 aren't stored in the IKE_SA anymore, they are queried on the fly
18 are immutable now, allows it to share them
19 policy selection based on traffic selectors, leads to valid lookup results
20 rekeying queries the policy based on its traffic selectors
21 cleanups in kernel interface code
22 added proper traffic selector to string conversion
23 some cleanups here & there
24 X.509 certificate trust path verification
26 fixed UDP decapsulation by adding inbound bypass policy for send socket
27 updated mixed tests to new charon output
29 reenabled module tests for charon
30 fixed bug which erroneously detected KE payload when rekeying
31 added IPsec bypass policy to receiving socket, allows incoming IKE traffic on host2host tunnels when using NAT
32 improved logging on verify errors for some payloads
33 enforcing IKE_SA shutdown, even when transactions are outstanding
34 proper reject of CREATE_CHILD_SA message with KE payload
35 added test cases from NAT team
36 updated all IKEv2 tests to work with new status output
37 added tcpdumpcount function from NATT guys
38 added possibility to mount the strongswan tree into all UMLs
39 added script for installing from shared tree in all UMLs
40 added script to shut down all UMLs properly
41 removed in favour of tests from NAT team
42 fixed CREATE_CHILD_SA transaction dispatching
43 added CHILD_SA states, which allows us to detect further simultaneous transactions
44 reimplemented the buggy message id handling
45 updated some inline docs
46 fixed crypter/signer in/out to conform with standard
48 added message id logging
49 added all currently known notify payload types
50 added policy cache to kernel interface
51 allows refcounting of multiple installed policies
52 finally brings us stable simultaneous rekeying
53 leak detective blanks memory on free & alloc, allows further membug detection
55 identification_t.matches() supports multiple wildcard counts
56 identification_t.matches() supports multiple wildcard counts
57 further work done for simultaneous rekeying/delete
58 still some cases which cause trouble
59 fixed compiler warnings in parser when using -O2
60 reenabled check_expiry
61 updated copyright information
62 reimplemented CHILD_SA rekeying & delete
63 no simultanous transaction with CHILD_SAs yet!
64 removed NAT_TRAVERSAL and VIRTUAL_IP compile options
65 removed NAT_TRAVERSAL compile option
66 removed NAT_TRAVERSAL and VIRTUAL_IP compile options
69 added support for leftprotoport and rightprotoport
70 improved CHILD_SA output for "ipsec statusall"
71 updated whitelist (getprotobynumber)
72 redesigned IKE_SA using a transaction mechanism:
73 removed old state machine
74 reimplemented IKE_SA setup and delete
75 implemented dead peer detection
76 implemented keep-alives
79 fixed compiler warnings
80 made thread ids unsigned again, to avoid negative thread ids on some systems
81 fixed memleak when initiating a connection already up
82 updated leak detective whitelist
83 applied latest NATT patch with some fixes and cleanups
84 test currently without firewall
89 removed version information from ipsec.conf
90 log entries start with lowcercase character
91 restored lost IKEv2 packet suppression
92 added USE_LEAK_DETECTIVE option
93 fixed natd_hash memory leak
94 tests with subdirectory structure
96 introduced subdirectory structure
97 support of cert payloads
100 added support of updown parameter
101 generation of default key
103 added support of updown parameter
104 version bump to 4.0.2
105 added X.509 trust chain verification
106 version bump to 4.0.2
107 ESP packet size changed
108 fixed bad_proposal_syntax bug
109 updated ingorelist for stroke_keywords.c
110 applied new changes from NATT team
111 DPD only done when no IPsec and IKE traffic processed
112 minor changes here and there
113 some message code cleanups
114 fixed identification_t clone to apply function pointers
115 cleaner error handling on UDP encapsultion sockopt failure
116 added mysterious UDP encapsulation socket option to get encapsulation working
117 fixed BAD_PROPOSAL_SYNTAX vulnerability
118 first merge of NATT code
120 updated for 4.0.1 release
121 updated news for 4.0.1 release
122 fixed whitelist detection
125 strongswan-4.0.1 / R:1144
126 ===========================
128 fixed whitelist detection
129 reworked function ignore mechanism to not-report whitelist
130 rather than overriding functions
131 fixed execv call args to work when using strictcrl and syslog
132 fixed bug: usage of already freed mem
133 readded local_credential_store
134 added sendcert policy to connection
136 implemented rereadcrls rereadcacerts
137 implemented rereadcrls rereadcacerts
138 implemented rereadcrls rereadcacerts
139 removed local_credential_store
140 fixed SPI when acting as initiator of rekeying
141 fixed SPI when rekeying and deleting CHILD_SAs
142 change key derivation order to fullfill RFC
145 added chunk_equals_or_null()
147 changed tabs from 8 to 4 spaces
151 fixed compilation error
153 fixed aes code, we support now aes128, aes192, aes256 in IKE
154 added support for "ike" and "esp" keywords
155 fixed bugs in proposal code
156 algorithm selection for charon works now with ipsec.conf
158 implemented clean spi allocation behavior when using multiple proposals
159 fixed logleve(l) keyword typo
160 handling of "rekey=no" parameter added
161 changed default algorithms to:
162 ike: aes128-sha-modp2048
163 esp: aes128-sha1, 3des-md5
164 added default CRL directory path
165 added strictcrlpolicy command line argument
168 added rekeying parameters
169 corrected some descriptions
170 moved RSA key size constraints to definitions.h
172 debug and logging improvements
173 support for stroke listcerts|listcacerts|listcrls|listall
174 support for stroke listcerts|listcacerts|listall and left|rightca=
175 gperf creates optimum hash table for stroke keywords
176 using same reqid if a child sa rekeys an existing one
177 NULL string argument is treated as %any
178 add_certificate() now returns pointer to added cert
180 single tests now start up faster
181 workaround for peers rekeying at the same time
182 loading lifetime policies from ipsec.conf
183 old child_sa gets deleted after rekeying
184 rekeying almost complete, but:
185 IKE_SA get in an invalid state when both initiate rekeying at the same time,
187 improved kernel interface logging
188 fixed clone/destroy behavior when not using CAs
189 specifying keysize in bits, as it is required in IKEv2
190 added generic kernel SA algorithm handling, which brings us:
191 aes-128, aes-256, blowfish, des, 3des and null encryption for CHILD_SAs
192 added support for leftsendcert= and left|rightca= parameters
193 discard cert if CA basic constraints flag is not set and warn if cert is not valide
194 added public methods is_ca() and is_valid()
195 changed ASN.1 CONTROL log output to LEVEL2
197 removed unused Makefile
198 stroke.h requires libstrongswan/types.h
199 fixed compile warnings when using -Wall
200 further CHILD_SA rekeying work done:
201 creation of a new CHILD_SA on a expire from a kernel works
202 delete of old CHILD_SA still missing
203 some issues when both initiate rekeing
204 updated INSTALL to conform with autotools
205 added a short HACKING introduction
206 further work for rekeying:
207 get liftimes from policy
209 initiation of rekeying done
211 removed support for AH+ESP proposals
212 proper leak detective hook for realloc
213 excluded pthread_setspecific from leak detective
216 ipv6-host2host scenario added
217 created IPv6 environment
219 moved job code from thread_pool to job, jobs have an "execute" method now
220 added two new jobs: delete_child_sa & rekey_child_sa
222 listens now for ACQUIRE & EXPIRE
223 supports hard and soft lifetimes
224 fires jobs for delete and rekey child sa
226 can checkout IKE SAs by requid of owned CHILD SAs
227 we have now the infrastructure to do the rekeying... :-)
228 fixed some memleaks/freebugs
229 leak detective works almost usable now (?!)
230 added host2host test for ikev2
231 fixed host-host tunnel traffic selection, host-host works now
232 bug fixed circumventing an assertion in delete_connection when ikev1 is not set
233 minimized prefixed on stroke logger output
234 charon outputs strongSwan version
235 tests with subjectAltNames now
236 fixed event queue for events >36min
237 included charons module tests to build & dist
238 full support of ikev1 and ikev2 connection flags
239 cosmetics in log_status output
241 added testing files to dist
242 required the use of the "ustar" format to support
243 filenames longer than 99 chars
244 lookup of private key based on keyid of public key
245 new functions to add certificates and retrieve private and public keys
248 computation of SHA-1 hash over publicKeyInfo object
249 moved abbreviated thread_id in front of brackets
250 added has_key parameter to log_certificates()
251 log_certificates() now shows keyid and availability of matching private key
252 indented loaded file log entry
253 moved TIMETOA_BUF definition to types.h
254 moved TIMETOA_BUF definition from asn1.h
255 define default CA_CERTIFICATE_DIR
256 load all ca certificates
257 fixed daemon destruction order to prevent
258 crashes on termination
259 fixed memleak when deleting a connection
261 policies contain a connections name now
262 used for initiate and delete
263 connections won't get initiated twice anymore
264 deleting of connections is now possible, which allows us to use
265 ipsec update and ipsec reload
266 changed iterator->remove behavior
267 ipsec up|down|route|delete require a connection name
268 stroke now uses constant size string buffer
269 changed to standard connection log output
270 reworked parsing and matching of subjectAltNames
272 moved timetoa() from asn1.c to types.c
274 some logging improvements and cosmetics
275 handle IKE_SA setup without a piggy-packed CHILD_SA
277 initiate IKE_SA deletion befor manager destruction
278 improved code of chunk_equals
279 added streq() macro and defined default BUF_LEN
281 build gets perl and gperf from configure now
282 moved built sources to maintainer-clean
283 show connection templates in status & statusall
284 don't complain on termination of IKEv1 connections
285 updated ipsec.conf manual to reflect actual state of
286 keyexchange-parameter
287 using hubs instead of switches, which allows us
288 to sniff the traffic from the host system.
289 changed config load strategy:
290 starter loads both connections in charon & pluto,
291 charon ignores anything with keyexchange!=ikev2.
292 pluto needs the same behavior.
293 changed build order to fix build error after distclean
294 load_end_certificate() now loads certificates
296 moved definition of generalNames_t to identification.h; initialized subjectKeyID, authKeyID and authKeySerialNumber
297 moved definition of generalNames_t to identification.h
298 corrrected description
299 reimplemented proper IKE SA deletion using a seperate state,
300 should conform now to IKEv2
301 fixed build when using --enable-leak-detective
302 added removed files to svn:ignore
303 fixed bug in pluto/Makefile.am
304 removed perl-generated oid.c/h from svn,
305 added them to "dist" and "distclean"
306 removed lex, yacc and gperf output from svn,
307 added them to "dist" and "distclean"
308 storing release revision in svn property "release-revision", because I forget it all the times
309 fixed ignorelist, should work now
310 added ingorelist for builded files
311 re-added doxygen apidoc, buildable with "make apidoc"
312 added missing ipsec.conf.5 to distribution :-/
314 added missing ipsec.conf ipsec.conf.5
315 existing ipsec.conf won't get overwritten anymore
316 fixed typo in Makefile which corrupted the build
317 applied patch from the NAT-T team fixing several typos
318 applied patch from andreas, which allows certificate listing via stroke
319 added ipsec.conf template and man page back
320 removed old Makefiles
321 added new strongswan KDevelop project & startup hack
322 fixed Revision in changelog fo 4.0.0
324 simple script for ChangeLog update via "svn log"
325 fixed compliation error using --enable-smartcard
326 added test for ikev1-ikev2 mixed mode
327 added test ikev2 roadwarrior scenario
328 applied andreas's patch
329 logger output improvements
332 updated testsuite to autotools
333 added random source ./configure options
334 fixed default-pkcs11 option
336 fixed errors when --enable-pkcs11
339 first working version
340 make dist should work
345 started to rebuild source layout
346 fixed stroke error output to starter
347 using random SPIs now, but without collision checks
348 applied some -W's from strongswan
351 applied patch from andreas
352 added charonstart option to config
353 new ikev2 tests for UML
355 strongSwan-4.0.0 / R:967
356 ==========================
359 applied patch from andreas
360 added charonstart option to config
361 new ikev2 tests for UML
362 applied patch from andreas
366 some other additions here and there
367 connection termination is handled cleanly by name now
368 fixed bad bug, certs load now cleanly again
369 fixed make install (subdir order)
372 finished initial import of strongswan file tree
373 removed a lot of old and unused stuff
374 moved RFCs from ikev2 into doc dir
375 added missing files for starter
376 applied patch for charon (this time really)
377 import of strongswan-2.7.0
378 applied patch for charon
379 renamed get_block_size of hasher
380 reworked usage of IDs in various states
381 using ID_ANY for any, not NULL as before
382 initiator sends IDr payload in IKE_AUTH when ID unique
384 using status & statusall
386 add connection names to connections
387 stroke status / ipsec status shows them
388 added statusall for stroke
389 added status by connection name
390 some tests repaired, more to come
392 improved "stroke status" output
393 setup PID file after daemon initilization, to correctly inform
394 starter about daemon startup
395 added separate implementation for connection_store, credential_store, policy_store
396 added folder structure to config
397 credentials are fetched solely on IDs now
398 identification_t supports now almost all id types
399 x509 certificates work with identification_t now
400 fixes here, fixes there
402 seperates now in lib and charon
403 library initialization done at a central point (library.c)
404 some leak_detective fixes
406 fixed log-to-syslog behavior
407 added patch against strongswan-2.6.4
408 x509 certificate loading with pluto asn1 code
409 x509 needs a lot more attention!
411 using asn1 pluto stuff now
412 removed, since we use pluto asn1 stuff
413 leak detective is usable, but does not show static function names
414 a script which gets address via ldd and resolves address via addr2line would be nice
415 fixed a leak in child_sa with new detective ;-)
416 some improvements to new asn1 stuff
418 fixed bad bugs in kernel interface
419 added some logging info
420 works now much more stable
421 startet importing pluto ASN1 stuff
422 der PKCS#1 key loading works (as it did with der_decoder)
423 split up in libstrong, charon, stroke, testing done
424 new leak detective with malloc hook in library
425 useable, but needs improvements
426 logger_manager has now a single instance per library
427 allows use of loggers from any linking prog
428 a LOT of other things
430 added misssing stroke.h
435 rewrote a lot of RSA stuff
436 done major work for ASN1/decoder
437 allow loading of ASN1 der encoded private keys, public keys and certificates
438 extracting public key from certificates
439 passing certificates from stroke to charon
440 => basic authentication with RSA certificates works!
441 starter work on asn1 with der de/encoder
442 RSA private and public key can load read key from ASN1 DER
443 some other fixes here and there
444 rewrite of logger_manager, uses now one instance per context
445 cleanups for logger here and there
446 removed critical flag check in payload verification (conformance to IKEv2)
447 so thats and theres everywere... ;-)
448 patch for strongswan-2.6.3
449 added charon support for strongswan build process
450 ipsec starter supports charon startup and control
451 removed old diploma thesis scripts
453 compatibility to strongswan, Makefile can be called by "make programs"
454 and "make install" (ikev2 patch must be applied to strongswan)
455 first version of stroke control utility
456 moved output to doc/api, since doc is used for other docs now
457 some first documentation in english
458 removed old eclipse project files
459 works quite well now with ipsec.conf & ipsec starter
460 belongs to previous commit ;-)
461 reworked configuration framework completly
462 configuration is now split up in: connections, policies, credentials and daemon config
463 further alloc/free fixes needed!
464 first attempt for connection loading and starting via "stroke"
465 some improvements here and there
466 configuration_manager replaced by configuration_t interface
467 current configuration_manager is now static_configuration (testing)
468 first draft of starter_configuration, which should once interact with ipsec starter (via whack?)
470 socket_t uses RAW socket, which allows parallel service of pluto/charon
471 comments and cleanups
472 working policy installation and removal
473 fixed policy setup bug
474 proposal setup implementation begun
475 fixed socket code, so we know on which address we receive traffic
476 AH/ESP setup in kernel is working now!!! :-)))
477 installing of child sa works
478 need correct IP adresses to actually use IPsec
479 new RFCs of IKEv2, IKEv2 algs and IPSec arch added
480 update of IKEv2 clarification document
481 refactored ike proposal
482 uses now proposal_t, wich is also used by child proposals
483 ike key derivation refactored
484 crypter_t api has get_key_size now
485 some other improvements here and there
486 config uses uml hosts alice and bob
487 key derivation for child_sa works
488 some fixes here and there
490 works with new proposal code
491 still some(!) memleaks
492 fixed alot of bugs in child_proposal
493 near to working state ;-)
494 dead end implementation
496 ... there is a lot more of it, but nothing of interest