Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | swanctl: Add --redirect command | Tobias Brunner | 2016-03-04 | 4 | -1/+138 | |
| | ||||||
* | vici: Add redirect command | Tobias Brunner | 2016-03-04 | 5 | -0/+150 | |
| | | | | | This allows redirecting IKE_SAs by multiple different selectors, if none are given all SAs are redirected. | |||||
* | redirect-job: Add job to redirect an active IKE_SA | Tobias Brunner | 2016-03-04 | 4 | -0/+159 | |
| | ||||||
* | ike-sa: Add redirect() method to actively redirect an IKE_SA | Tobias Brunner | 2016-03-04 | 2 | -0/+50 | |
| | ||||||
* | ike-redirect: Add task to redirect active IKE_SAs | Tobias Brunner | 2016-03-04 | 7 | -0/+220 | |
| | ||||||
* | ike-auth: Handle REDIRECT notifies during IKE_AUTH | Tobias Brunner | 2016-03-04 | 1 | -22/+44 | |
| | ||||||
* | ike-sa: Handle redirect requests for established SAs as reestablishment | Tobias Brunner | 2016-03-04 | 1 | -82/+174 | |
| | | | | | | | We handle this similar to how we do reestablishing IKE_SAs with all CHILD_SAs, which also includes the one actively queued during IKE_AUTH. To delete the old SA we use the recently added ike_reauth_complete task. | |||||
* | ike-auth: Send REDIRECT notify during IKE_AUTH if requested by providers | Tobias Brunner | 2016-03-04 | 1 | -27/+51 | |
| | | | | | | To prevent the creation of the CHILD_SA we set a condition on the IKE_SA. We also schedule a delete job in case the client does not terminate the IKE_SA (which is a SHOULD in RFC 5685). | |||||
* | ike-config: Do not assign attributes for redirected IKE_SAs | Tobias Brunner | 2016-03-04 | 1 | -0/+5 | |
| | ||||||
* | child-create: Don't create CHILD_SA if the IKE_SA got redirected in IKE_AUTH | Tobias Brunner | 2016-03-04 | 1 | -0/+4 | |
| | ||||||
* | ike-sa: Add a condition to mark redirected IKE_SAs | Tobias Brunner | 2016-03-04 | 1 | -0/+5 | |
| | ||||||
* | ike-init: Handle REDIRECTED_FROM similar to REDIRECT_SUPPORTED as server | Tobias Brunner | 2016-03-04 | 1 | -0/+17 | |
| | ||||||
* | ike-init: Send REDIRECTED_FROM instead of REDIRECT_SUPPORTED if appropriate | Tobias Brunner | 2016-03-04 | 1 | -1/+19 | |
| | ||||||
* | ike-sa: Keep track of the address of the gateway that redirected us | Tobias Brunner | 2016-03-04 | 2 | -1/+27 | |
| | ||||||
* | ikev2: Add option to disable following redirects as client | Tobias Brunner | 2016-03-04 | 2 | -1/+20 | |
| | ||||||
* | ikev2: Handle REDIRECT notifies during IKE_SA_INIT | Tobias Brunner | 2016-03-04 | 3 | -0/+64 | |
| | ||||||
* | ike-init: Send REDIRECT notify during IKE_SA_INIT if requested by providers | Tobias Brunner | 2016-03-04 | 1 | -0/+17 | |
| | ||||||
* | redirect-manager: Add helper function to create and parse REDIRECT notify data | Tobias Brunner | 2016-03-04 | 2 | -11/+162 | |
| | | | | The same encoding is also used for the REDIRECT_FROM notifies. | |||||
* | redirect-manager: Verify type of returned gateway ID | Tobias Brunner | 2016-03-04 | 1 | -1/+12 | |
| | ||||||
* | ike-init: Send REDIRECT_SUPPORTED as initiator | Tobias Brunner | 2016-03-04 | 1 | -0/+5 | |
| | ||||||
* | ike-init: Enable redirection extension if client sends REDIRECT_SUPPORTED notify | Tobias Brunner | 2016-03-04 | 1 | -0/+4 | |
| | ||||||
* | ike-sa: Add new extension for IKEv2 redirection (RFC 5685) | Tobias Brunner | 2016-03-04 | 1 | -1/+6 | |
| | ||||||
* | daemon: Create global redirect manager instance | Tobias Brunner | 2016-03-04 | 2 | -0/+8 | |
| | ||||||
* | redirect-manager: Add manager for redirect providers | Tobias Brunner | 2016-03-04 | 4 | -2/+223 | |
| | ||||||
* | redirect-provider: Add interface to redirect clients during initial messages | Tobias Brunner | 2016-03-04 | 3 | -0/+61 | |
| | | | | | This will allow e.g. plugins to decide whether a connecting client is redirected to a different gateway using RFC 5685. | |||||
* | Set PLUTO port variables to 0 in the case of no port restrictions | Andreas Steffen | 2016-03-04 | 1 | -1/+1 | |
| | ||||||
* | Port range support in updown script | Andreas Steffen | 2016-03-04 | 1 | -13/+37 | |
| | ||||||
* | Implemented port ranges in kernel_netlink interface | Andreas Steffen | 2016-03-04 | 1 | -7/+19 | |
| | ||||||
* | thread: Allow thread ID to be value returned by gettid() | Thomas Egerer | 2016-03-04 | 3 | -14/+32 | |
| | | | | Signed-off-by: Thomas Egerer <thomas.egerer@secunet.com> | |||||
* | Request missing SWID tags in a directed PA-TNC message | Andreas Steffen | 2016-03-04 | 3 | -20/+47 | |
| | ||||||
* | libhydra: Remove empty unused library | Tobias Brunner | 2016-03-03 | 110 | -534/+15 | |
| | ||||||
* | libhydra: Move kernel interface to libcharon | Tobias Brunner | 2016-03-03 | 69 | -358/+257 | |
| | | | | This moves hydra->kernel_interface to charon->kernel. | |||||
* | libhydra: Move all kernel plugins to libcharon | Tobias Brunner | 2016-03-03 | 27 | -28/+28 | |
| | ||||||
* | ikev1: Send and verify IPv6 addresses correctly | Tobias Brunner | 2016-03-03 | 2 | -26/+18 | |
| | | | | | | | | According to the mode-config draft there is no prefix sent for IPv6 addresses in IKEv1. We still accept 17 bytes long addresses for backwards compatibility with older strongSwan releases. Fixes #1304. | |||||
* | ikev1: Allow immediate deletion of rekeyed CHILD_SAs | Tobias Brunner | 2016-03-03 | 1 | -1/+17 | |
| | | | | | | | | | | | | | | | When charon rekeys a CHILD_SA after a soft limit expired, it is only deleted after the hard limit is reached. In case of packet/byte limits this may not be the case for a long time since the packets/bytes are usually sent using the new SA. This may result in a very large number of stale CHILD_SAs and kernel states. With enough connections configured this will ultimately exhaust the memory of the system. This patch adds a strongswan.conf setting that, if enabled, causes the old CHILD_SA to be deleted by the initiator after a successful rekeying. Enabling this setting might create problems with implementations that continue to use rekeyed SAs (e.g. if the DELETE notify is lost). | |||||
* | ikev1: Avoid modifying local auth config when detecting pubkey method | Tobias Brunner | 2016-03-03 | 1 | -1/+1 | |
| | | | | | | | | | If it was necessary to pass the local certificates we could probably clone the config (but we don't do that either when later looking for the key to actually authenticate). Passing auth adds the same subject cert to the config over and over again (I guess we could also try to prevent that by searching for duplicates). | |||||
* | forecast: Fix alignment when adding rules | Tobias Brunner | 2016-03-03 | 1 | -114/+133 | |
| | | | | | | Basically the same issue as with the connmark plugin. Fixes #1212. | |||||
* | connmark: Fix alignment when adding rules | Tobias Brunner | 2016-03-03 | 1 | -160/+172 | |
| | | | | | | | | The structs that make up a message sent to the kernel have all to be aligned with XT_ALIGN. That was not necessarily the case when initializing the complete message as struct. Fixes #1212. | |||||
* | ike: Keep track of send keepalive jobs to avoid scheduling more than one per ↵ | Tobias Brunner | 2016-03-03 | 3 | -11/+24 | |
| | | | | IKE_SA | |||||
* | ike: Don't send NAT keepalives if we have no path to the other peer | Tobias Brunner | 2016-03-03 | 1 | -3/+9 | |
| | | | | | | | | If there is no path to the other peer there is no point in trying to send a NAT keepalive. If the condition changes back and forth within the keepalive interval there is a chance that multiple jobs get queued. | |||||
* | vici: Provide ports of local and remote IKE endpoints | Tobias Brunner | 2016-03-03 | 2 | -2/+9 | |
| | ||||||
* | duplicheck: Include required headers for FreeBSD | Denis Volpato Martins | 2016-03-03 | 1 | -0/+2 | |
| | | | | Closes strongswan/strongswan#34. | |||||
* | charon: Add custom logger to daemon | Thomas Egerer | 2016-03-01 | 4 | -43/+336 | |
| | | | | | | | | | | | This logger can be used to easily register custom logging instances using __attribute__((constructor)) benefiting from the global reload mechanism (with reset of log levels). Note that this is not intended to be used from plugins, which are loaded after loggers have already been initialized. Signed-off-by: Thomas Egerer <thomas.egerer@secunet.com> | |||||
* | vici: Correctly document 'up' key for updown events | Tobias Brunner | 2016-03-01 | 1 | -4/+4 | |
| | | | | Instead of sending 'no' it is omitted when an SA goes down. | |||||
* | ikev2: Use config value for sending of vendor IDs | Thomas Egerer | 2016-03-01 | 1 | -13/+43 | |
| | | | | Signed-off-by: Thomas Egerer <thomas.egerer@secunet.com> | |||||
* | swanctl: Fix minor typos in documentation | Chris Patterson | 2016-02-29 | 1 | -3/+3 | |
| | | | | | | "UPD" should be "UDP". Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> | |||||
* | ike-sa-manager: Store a reference to the thread that checked out an IKE_SA | Tobias Brunner | 2016-02-17 | 1 | -13/+14 | |
| | | | | | | This could be helpful when debugging deadlocks that manifest around wait_for_entry(), as it helps identifying other involved threads (the thread object is seen in the thread_main() call in each thread's backtrace). | |||||
* | Fix of the mutual TNC measurement use case | Andreas Steffen | 2016-02-16 | 2 | -20/+20 | |
| | | | | | | | | | | | | | | | | | If the IKEv2 initiator acting as a TNC server receives invalid TNC measurements from the IKEv2 responder acting as a TNC clienti, the exchange of PB-TNC batches is continued until the IKEv2 responder acting as a TNC server has also finished its TNC measurements. In the past if these measurements in the other direction were correct the IKEv2 responder acting as EAP server declared the IKEv2 EAP authentication successful and the IPsec connection was established even though the TNC measurement verification on the EAP peer side failed. The fix adds an "allow" group membership on each endpoint if the corresponding TNC measurements of the peer are successful. By requiring a "allow" group membership in the IKEv2 connection definition the IPsec connection succeeds only if the TNC measurements on both sides are valid. | |||||
* | kernel-netlink: Allow Netlink send buffer size to be configured via compile ↵ | Tobias Brunner | 2016-02-12 | 1 | -3/+11 | |
| | | | | | | | option The receive buffer size can already be changed via strongswan.conf if necessary. | |||||
* | utils: Add enum name for pseudo log group 'any' | Tobias Brunner | 2016-02-05 | 2 | -12/+7 | |
| |