Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | ike-cfg: Fix memory leak when matching against ranges | Tobias Brunner | 2017-05-29 | 1 | -1/+1 |
| | | | | | | | traffic_selector_t::to_subnet() always sets the net/host (unless the address family was invalid). Fixes: 3070697f9f7c ("ike: support multiple addresses, ranges and subnets in IKE address config") | ||||
* | linked-list: Change return value of find_first() and signature of its callback | Tobias Brunner | 2017-05-26 | 1 | -3/+6 |
| | | | | This avoids the unportable five pointer hack. | ||||
* | Change interface for enumerator_create_filter() callback | Tobias Brunner | 2017-05-26 | 2 | -31/+39 |
| | | | | | This avoids the unportable 5 pointer hack, but requires enumerating in the callback. | ||||
* | Migrate all enumerators to venumerate() interface change | Tobias Brunner | 2017-05-26 | 1 | -7/+15 |
| | |||||
* | child-cfg: Optionally use 96-bit truncation for HMAC-SHA-256 | Tobias Brunner | 2017-05-26 | 1 | -0/+3 |
| | | | | | | | | The correct truncation is 128-bit but some implementations insist on using 96-bit truncation. With strongSwan this can be negotiated using an algorithm identifier from a private range. But this doesn't work with third-party implementations. This adds an option to use 96-bit truncation even if the official identifier is used. | ||||
* | child-cfg: Add flag to enable hardware offload | Tobias Brunner | 2017-05-23 | 1 | -0/+3 |
| | |||||
* | child-cfg: Use flags for boolean options | Tobias Brunner | 2017-05-23 | 2 | -120/+47 |
| | | | | Makes it potentially easier to add new flags. | ||||
* | Add an option to announce support for IKE fragmentation but not sending ↵ | Tobias Brunner | 2017-05-23 | 1 | -3/+5 |
| | | | | fragments | ||||
* | child-cfg: Always apply hosts to traffic selectors if proposing transport mode | Tobias Brunner | 2017-02-27 | 1 | -14/+19 |
| | | | | | | | | | | | | | | Usually, %dynamic is used as traffic selector for transport mode SAs, however, if wildcard traps are used then the remote TS will be a subnet. With strongSwan at the remote end that usually works fine as the local %dynamic TS narrows the proposed TS appropriately. But some implementations reject non-host TS for transport mode SAs. Another problem could be if several distinct subnets are configured for a wildcard trap, as we'd then propose unrelated subnets on that transport mode SA, which might be problematic even for strongSwan (switch to tunnel mode and duplicate policies). Closes strongswan/strongswan#61. | ||||
* | ike-cfg: Add helper function to determine if a given IP address was configured | Tobias Brunner | 2017-02-17 | 2 | -2/+46 |
| | |||||
* | peer-cfg: Store mediated_by as name and not peer-cfg reference | Tobias Brunner | 2017-02-16 | 2 | -14/+14 |
| | | | | | | | | | This way updates to the mediation config are respected and the order in which configs are configured/loaded does not matter. The SQL plugin currently maintains the strong relationship between mediated and mediation connection (we could theoretically change that to a string too). | ||||
* | proposal: Copy SPI and proposal number from correct proposal in select() | Tobias Brunner | 2017-02-06 | 4 | -7/+22 |
| | | | | | | | | If charon.prefer_configured_proposals is disabled select() is called on the received proposal. This incorrectly set the SPI to 0 as the configured proposal has no SPI set. Fixes #2190. | ||||
* | proposal: Remove RFC 5114 MODP DH groups from default proposal | Martin Willi | 2016-11-15 | 1 | -2/+4 |
| | | | | | | | | | | | | | | Recent research demonstrates that at least for 1024-bit DH groups, it is possible to create specially crafted primes having a backdoor. From the prime itself this is not detectable, creating a perfect NOBUS attack. http://eprint.iacr.org/2016/961 For the primes defined in RFC 5114 no information is provided on how these have been selected. In the default proposal we included one of the 2048-bit primes only, where it is questionable if constructing a backdoored prime is feasible. Nevertheless, this patch removes the group from the set of default proposals as well. | ||||
* | proposal: Add curve25519 and curve448 to default proposal | Tobias Brunner | 2016-11-14 | 1 | -0/+2 |
| | |||||
* | peer-cfg: Fix memory leak when replacing child configs | Tobias Brunner | 2016-11-11 | 1 | -0/+1 |
| | | | | | Fixes: 622c2b2c3386 ("peer-cfg: Add method to atomically replace child configs") | ||||
* | Fixed some typos, courtesy of codespell | Tobias Brunner | 2016-10-14 | 1 | -1/+1 |
| | |||||
* | proposal: Correctly add AES-GMAC for AH proposals | Tobias Brunner | 2016-10-05 | 1 | -0/+41 |
| | | | | | | We parse aes*gmac as encryption algorithm, which we have to map to an integrity algorithm. We also make sure we remove all other encryption algorithms and ensure there is an integrity algorithm. | ||||
* | proposal: Enforce separate proposals for AEAD and classic encryption algorithms | Tobias Brunner | 2016-10-05 | 1 | -16/+22 |
| | |||||
* | proposal: Make sure there is a PRF defined in IKE proposals | Tobias Brunner | 2016-10-05 | 1 | -14/+34 |
| | | | | But filter PRFs from ESP proposals. | ||||
* | proposal: Make DH groups mandatory in IKE proposals parsed from strings | Tobias Brunner | 2016-10-05 | 1 | -4/+11 |
| | | | | References #2051. | ||||
* | child-cfg: Add setting that controls whether outbound FWD policies are installed | Tobias Brunner | 2016-09-28 | 2 | -0/+24 |
| | |||||
* | Created newhope plugin implementing the New Hope key exchange algorithm | Andreas Steffen | 2016-08-10 | 1 | -0/+1 |
| | |||||
* | child-cfg: Add option to prefer supplied proposals over locally configured ones | Tobias Brunner | 2016-06-17 | 2 | -18/+33 |
| | |||||
* | ike-cfg: Add option to prefer supplied proposals over locally configured ones | Tobias Brunner | 2016-06-17 | 2 | -27/+43 |
| | |||||
* | proposal: Remove MODP_NONE from IKE proposals parsed from strings | Tobias Brunner | 2016-06-17 | 1 | -0/+10 |
| | |||||
* | proposal: Handle MODP_NONE in both directions when selecting proposals | Tobias Brunner | 2016-06-17 | 1 | -6/+14 |
| | |||||
* | vici list-conns sends reauthentication and rekeying time information | Andreas Steffen | 2016-05-04 | 3 | -4/+9 |
| | |||||
* | proposal: Remove some weaker and rarely used DH groups from the default proposal | Tobias Brunner | 2016-05-04 | 1 | -3/+5 |
| | | | | | | | | | | | This fixes an interoperability issue with Windows Server 2012 R2 gateways. They insist on using modp1024 for IKE, however, Microsoft's IKEv2 implementation seems only to consider the first 15 DH groups in the proposal. Depending on the loaded plugins modp1024 is now at position 17 or even later, causing the server to reject the proposal. By removing some of the weaker and rarely used DH groups from the default proposal we make sure modp1024 is among the first 15 DH groups. The removed groups may still be used by configuring custom proposals. | ||||
* | Implemented IPsec policies restricted to given network interface | Andreas Steffen | 2016-04-09 | 2 | -6/+27 |
| | |||||
* | Support manually-set IPsec policy priorities | Andreas Steffen | 2016-04-09 | 2 | -0/+25 |
| | |||||
* | peer-cfg: Use struct to pass data to constructor | Tobias Brunner | 2016-04-09 | 2 | -72/+72 |
| | |||||
* | child-cfg: Use struct to pass data to constructor | Tobias Brunner | 2016-04-09 | 2 | -76/+62 |
| | |||||
* | Use standard unsigned integer types | Andreas Steffen | 2016-03-24 | 8 | -84/+84 |
| | |||||
* | peer-cfg: Add method to atomically replace child configs | Tobias Brunner | 2016-03-08 | 2 | -2/+128 |
| | |||||
* | ike-cfg: Use new method to compare proposal lists in equals() | Tobias Brunner | 2016-03-08 | 1 | -20/+4 |
| | |||||
* | peer-cfg: Use new method to compare linked lists in equals() | Tobias Brunner | 2016-03-08 | 1 | -36/+3 |
| | | | | This also compares the complete lists not only the first two items. | ||||
* | child-cfg: Add equals() method | Tobias Brunner | 2016-03-08 | 2 | -2/+62 |
| | |||||
* | peer-cfg: Set DPD timeout to at least DPD delay | Tobias Brunner | 2016-02-01 | 1 | -0/+4 |
| | | | | | | If DPD timeout is set but to a value smaller than the DPD delay the code in task_manager_v1.c:queue_liveliness_check will run into an integer underrun. | ||||
* | 128 bit default security strength for IKE and ESP algorithms | Andreas Steffen | 2015-12-17 | 1 | -40/+140 |
| | | | | | | | | | | | | | | | | | The default ESP cipher suite is now AES_CBC-128/HMAC_SHA2_256_128 and requires SHA-2 HMAC support in the Linux kernel (correctly implemented since 2.6.33). The default IKE cipher suite is now AES_CBC-128/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/ECP_256 if the openssl plugin is loaded or AES_CBC-128/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_3072 if ECC is not available. The use of the SHA-1 hash algorithm and the MODP_2048 DH group has been deprecated and ENCR_CHACHA20_POLY1305 has been added to the default IKE AEAD algorithms. | ||||
* | traffic-selector: Don't end printf'ed list of traffic selectors with a space | Tobias Brunner | 2015-11-10 | 1 | -1/+1 |
| | |||||
* | Fix some Doxygen issues | Tobias Brunner | 2015-08-27 | 1 | -3/+3 |
| | |||||
* | ike-cfg: Add helper function to determine address family of IP addresses | Tobias Brunner | 2015-07-27 | 2 | -1/+59 |
| | | | | | All configured static addresses (hostnames, ranges or subnets are not considered) must be of the same family, otherwise AF_UNSPEC is returned. | ||||
* | proposal: Add default PRF for HMAC-MD5-128 and HMAC-SHA1-160 integrity ↵ | Tobias Brunner | 2014-10-31 | 1 | -0/+2 |
| | | | | algorithms | ||||
* | ike-cfg: Use host_create_from_range() helper | Tobias Brunner | 2014-10-30 | 1 | -16/+1 |
| | |||||
* | child-cfg: Ignore duplicate proposals | Tobias Brunner | 2014-09-12 | 1 | -0/+11 |
| | | | | | If ESP proposals are added once with and once without DH groups duplicates result during IKE_AUTH when DH groups are stripped. | ||||
* | proposal: Fix equals() | Tobias Brunner | 2014-09-12 | 1 | -5/+5 |
| | |||||
* | child-cfg: Store connection specific replay window on CHILD_SA config | Martin Willi | 2014-06-17 | 2 | -0/+38 |
| | |||||
* | peer-cfg: Add missing UNIQUE_NEVER to unique_policy_names | Martin Willi | 2014-05-19 | 1 | -1/+2 |
| | |||||
* | proposal: Don't return a default IKE proposal without encryption/AEAD algs | Martin Willi | 2014-05-16 | 1 | -3/+23 |
| | |||||
* | child-cfg: Allow passing NULL as proposal to add_proposal() | Martin Willi | 2014-05-16 | 2 | -4/+7 |
| | | | | Making the API consistent to the one of ike_cfg. |