Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | child-sa: replace traffic selector lists by arrays | Martin Willi | 2013-07-17 | 1 | -18/+19 | |
| | | | | | | | | Saves up to another 0.5KB of memory per CHILD_SA. | |||||
| * | child-sa: replace get_traffic_selectors() with create_ts_enumerator() | Martin Willi | 2013-07-17 | 12 | -78/+124 | |
| | | | | | | | | | | Not directly returning a linked list allows us to change the internals of the CHILD_SA transparently. | |||||
| * | ikev2: replace linked lists by arrays in task manager | Martin Willi | 2013-07-17 | 1 | -70/+76 | |
| | | | | | | | | Eliminates another three lists, 0.5KB per IKE_SA. | |||||
| * | auth-cfg: use array instead of linked list | Martin Willi | 2013-07-17 | 1 | -35/+26 | |
| | | | | | | | | Saves another 4 linked lists (1KB) per IKE_SA | |||||
| * | proposal: use array to store proposal list | Martin Willi | 2013-07-17 | 1 | -25/+18 | |
| | | | | | | | | Removes another two linked lists (0.5KB) of memory per IKE/CHILD_SA pair. | |||||
| * | proposal: use a single list to store all transforms | Martin Willi | 2013-07-17 | 1 | -308/+174 | |
| | | | | | | | | | | Beside that it makes the code actually simpler, it reduces the number of lists stored by each IKE_SA and each CHILD_SA by 4, which can be up to 1KB per SA. | |||||
| * | ike-sa: use arrays instead of linked lists in long lived collections | Martin Willi | 2013-07-17 | 1 | -116/+98 | |
| | | | | | | | | This saves about 1.5KB of memory per IKE_SA. | |||||
| * | unit-tests: implement tests for array collection | Martin Willi | 2013-07-17 | 4 | -1/+363 | |
| | | ||||||
| * | array: introduce an array collection storing elements very efficiently | Martin Willi | 2013-07-17 | 4 | -2/+613 | |
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we use the very versatile linked-list collection to store elements with variable count. This is fine, but very inefficient: Due to the many methods in the linked list, on 64-bit platforms an empty list alone is more than 200 bytes. As we currently have about 50 lists per IKE_SA/CHILD_SA pair, this takes up to 10KB just for managing the empty lists. This is about the half of memory used by an IKE_SA/CHILD_SA pair, and obviously way too much. The new array type is not an object, but a collection of functions on an abstract type. The following lists are per IKE_SA and should be considered for a replacement with more efficient arrays (this uses load-testers on-demand created dynamic configurations, other scenarios have different lists): 14 -> ike_sa_create() @ src/libcharon/sa/ike_sa.c:2198 10 -> auth_cfg_create() @ src/libstrongswan/credentials/auth_cfg.c:1088 6 -> task_manager_v2_create() @ src/libcharon/sa/ikev2/task_manager_v2.c:1505 6 -> proposal_create() @ src/libcharon/config/proposal.c:592 5 -> peer_cfg_create() @ src/libcharon/config/peer_cfg.c:657 4 -> child_sa_create() @ src/libcharon/sa/child_sa.c:1090 2 -> child_cfg_create() @ src/libcharon/config/child_cfg.c:536 1 -> ike_cfg_create() @ src/libcharon/config/ike_cfg.c:330 1 -> put_connected_peers() @ src/libcharon/sa/ike_sa_manager.c:854 | |||||
* | kernel-libipsec: Log error if no local address is found when installing routes | Tobias Brunner | 2013-07-15 | 1 | -0/+5 | |
| | ||||||
* | dumm: Sort templates by name | Tobias Brunner | 2013-07-15 | 2 | -1/+3 | |
| | ||||||
* | testing: Don't load certificates explicitly and delete CA certificates in ↵ | Tobias Brunner | 2013-07-15 | 6 | -4/+6 | |
| | | | | | | PKCS#12 scenarios Certificates are now properly extracted from PKCS#12 files. | |||||
* | stroke: Add certificates extracted from PKCS#12 files to correct credential set | Tobias Brunner | 2013-07-15 | 1 | -4/+4 | |
| | | | | | Only keys and shared secrets are moved from the temporary credential set after loading all secrets. | |||||
* | pkcs12: Add plugin dependencies with soft dependencies on the most common ↵ | Tobias Brunner | 2013-07-15 | 1 | -0/+6 | |
| | | | | algorithms | |||||
* | leak-detective: remove hdr entry when reallocating zero bytes | Martin Willi | 2013-07-12 | 1 | -0/+6 | |
| | ||||||
* | leak-detective: print total of allocated/leaked bytes in usage/report | Martin Willi | 2013-07-12 | 1 | -5/+13 | |
| | ||||||
* | dumm: add include for in.h, if_bridge.h now uses struct in6_addr | Martin Willi | 2013-07-12 | 1 | -1/+1 | |
| | ||||||
* | Recognize critical IssuingDistributionPoint CRL extension | Andreas Steffen | 2013-07-12 | 3 | -1/+8 | |
| | ||||||
* | Override policy recommendation in enforcement | Andreas Steffen | 2013-07-11 | 3 | -17/+17 | |
| | ||||||
* | openssl plugin can replace random, hmac, and gcm plugins | Andreas Steffen | 2013-07-10 | 2 | -2/+2 | |
| | ||||||
* | Added openssl-ikev2/net2net-pkcs12 scenario | Andreas Steffen | 2013-07-10 | 13 | -0/+116 | |
| | ||||||
* | Added ikev2/net2net-pkcs12 scenario | Andreas Steffen | 2013-07-10 | 13 | -0/+116 | |
| | ||||||
* | Version bump to 5.1.0dr3 | Andreas Steffen | 2013-07-10 | 1 | -1/+1 | |
| | ||||||
* | conntrack -F makes ikev2/nat-rw scenario to work always | Andreas Steffen | 2013-07-10 | 1 | -0/+1 | |
| | ||||||
* | leak-detective: add a usage threshold option based on the number of allocations | Martin Willi | 2013-07-10 | 1 | -6/+11 | |
| | ||||||
* | leak-detective: set_state() only affects the calling thread | Martin Willi | 2013-07-10 | 2 | -15/+2 | |
| | | | | | The only user (bfd backtraces) is fine with that, and we really should not mess the enable flag while doing allocations with other threads. | |||||
* | leak-detective: take a copy of backtrace while printing traces | Martin Willi | 2013-07-10 | 1 | -2/+3 | |
| | | | | | As we don't want to hold the lock, we must make sure backtraces keep valid while printing them. | |||||
* | backtrace: add a clone() method | Martin Willi | 2013-07-10 | 2 | -7/+44 | |
| | ||||||
* | leak-detective: remove hdr from the allocation list during realloc() | Martin Willi | 2013-07-10 | 1 | -39/+60 | |
| | | | | | | | If realloc moves an allocation, the original allocation gets freed. We therefore must remove the hdr from the list, as it is invalid. We can add it afterwards once it has been updated, allowing us to unlock the list during reallocation. | |||||
* | Fixed alignment of device ID column5.1.0dr2 | Andreas Steffen | 2013-07-10 | 1 | -2/+2 | |
| | ||||||
* | android: New release after adding support for EAP-TNC | Tobias Brunner | 2013-07-08 | 1 | -2/+2 | |
| | | | | | Also disabled listening on IPv6 because the Linux kernel currently does not support UDP encapsulation for IPv6. | |||||
* | Merge branch 'android-byod' | Tobias Brunner | 2013-07-08 | 86 | -117/+4227 | |
|\ | | | | | | | | | | | | | | | | | | | Adds support for EAP-TNC with a custom Android-specific IMC that collects data such as installed packages, file hashes or system settings. Some parts of the implementation are based on the bachelor semester project 'strongSwan Android 4 Client with Endpoint Assessment' by Christoph Bühler and Patrick Lötscher. | |||||
| * | android: Properly handle dotted-quad notation of IPv6 addresses | Tobias Brunner | 2013-07-08 | 1 | -1/+1 | |
| | | | | | | | | | | For nestat output like ::ffff:127.0.0.1:9876 we shall not treat 127 as port but 9876 instead. | |||||
| * | android: Allow IMC state to be dismissed with a swipe gesture | Tobias Brunner | 2013-07-08 | 1 | -0/+30 | |
| | | ||||||
| * | android: Use explicit locale when converting settings names | Tobias Brunner | 2013-07-08 | 1 | -2/+4 | |
| | | | | | | | | | | | | Apparently, these functions use the user's default locale which might not yield the expected result (e.g. lowercase I is not i in the Turkish locale but ı instead). | |||||
| * | android: Add information about transmitted data if EAP-TNC is selected | Tobias Brunner | 2013-07-08 | 7 | -0/+57 | |
| | | ||||||
| * | android: Reuse certificate selector as generic two line button | Tobias Brunner | 2013-07-08 | 2 | -2/+2 | |
| | | ||||||
| * | android: Add device ID in BeginHandshake | Tobias Brunner | 2013-07-08 | 1 | -0/+2 | |
| | | ||||||
| * | android: Add new VpnType to enable BYOD features | Tobias Brunner | 2013-07-08 | 8 | -5/+42 | |
| | | ||||||
| * | Use strpfx() helper where appropriate | Tobias Brunner | 2013-07-08 | 11 | -29/+28 | |
| | | ||||||
| * | utils: Add helper function to check a string for a given prefix | Tobias Brunner | 2013-07-08 | 1 | -0/+8 | |
| | | ||||||
| * | utils: Convert string helper macros to static inline functions | Tobias Brunner | 2013-07-08 | 1 | -6/+15 | |
| | | ||||||
| * | android: Use a different set of plugins if BYOD features are enabled | Tobias Brunner | 2013-07-08 | 4 | -11/+28 | |
| | | ||||||
| * | android: IMC state fragment is a button that shows remediation instructions ↵ | Tobias Brunner | 2013-07-08 | 2 | -16/+66 | |
| | | | | | | | | or log | |||||
| * | android: Show remediation instructions instead of log on failure | Tobias Brunner | 2013-07-08 | 6 | -3/+26 | |
| | | ||||||
| * | android: Properly hide the IMC state fragment initially | Tobias Brunner | 2013-07-08 | 1 | -1/+4 | |
| | | ||||||
| * | android: Add activity that displays a list of remediation instructions | Tobias Brunner | 2013-07-08 | 11 | -1/+212 | |
| | | | | | | | | | | On large displays a two-pane layout is used that displays the list next to the actual instructions. | |||||
| * | android: Add fragment for a list of remediation instructions | Tobias Brunner | 2013-07-08 | 1 | -0/+121 | |
| | | | | | | | | This fragment can later be used in one- or two-pane layouts. | |||||
| * | android: Add adapter for remediation instructions | Tobias Brunner | 2013-07-08 | 2 | -0/+118 | |
| | | ||||||
| * | android: Add fragment that displays a single remediation instruction | Tobias Brunner | 2013-07-08 | 2 | -0/+164 | |
| | |