Martin Willi
b4b3959b22
stream-service: move CAP_CHOWN check from plugins to service constructor
...
A plugin service can be a TCP socket now, so it does not make much sense
to strictly check for CAP_CHOWN.
2013-07-18 16:00:31 +02:00
Martin Willi
73da4ed849
load-tester: use a stream service to dispatch control connections
2013-07-18 16:00:29 +02:00
Tobias Brunner
dfc9902013
capabilities: Some plugins don't actually require capabilities at runtime
2013-07-18 15:25:35 +02:00
Martin Willi
19cb07b890
automake: replace INCLUDES by AM_CPPFLAGS
...
INCLUDES are now deprecated and throw warnings when using automake 1.13.
We now also differentiate AM_CPPFLAGS and AM_CFLAGS, where includes and
defines are passed to AM_CPPFLAGS only.
2013-07-18 14:59:19 +02:00
Tobias Brunner
d27f225d9a
Use strpfx() helper where appropriate
2013-07-08 18:49:30 +02:00
Tobias Brunner
1091edede8
capabilities: CAP_CHOWN might be required by many plugins opening UNIX sockets
...
But as the sockets will be created with the user/group of the running
process this might not be required as no change may be needed.
2013-06-25 17:16:33 +02:00
Tobias Brunner
a2eb581781
capabilities: Move global capabilities_t instance to libstrongswan
2013-06-25 17:16:32 +02:00
Martin Willi
a8c9454423
kernel-interface: add an exchange initiator parameter to add_sa()
...
This new flag gives the kernel-interface a hint how it should priorize the
use of newly installed SAs during rekeying.
Consider the following rekey procedure in IKEv2:
Initiator --- Responder
I1 -------CREATE-------> R1
I2 <------CREATE--------
-------DELETE-------> R2
I3 <------DELETE--------
SAs are always handled as pairs, the following happens at the SA level:
* Initiator starts the exchange at I1
* Responder installs new SA pair at R1
* Initiator installs new SA pair at I2
* Responder removes old SA pair at R2
* Initiator removes old SA pair at I3
This makes sure SAs get installed/removed overlapping during rekeying. However,
to avoid any packet loss, it is crucial that the new outbound SA gets
activated at the correct position:
* as exchange initiator, in I2
* as exchange responder, in R2
This should guarantee that we don't use the new outbound SA before the peer
could install its corresponding inbound SA.
The new parameter allows the kernel backend to install the new SA with
appropriate priorities, i.e. it should:
* as exchange inititator, have the new outbound SA installed with higher
priority than the old SA
* as exchange responder, have the new outbound SA installed with lower
priority than the old SA
While we could split up the SA installation at the responder, this approach
has another advantage: it allows the kernel backend to switch SAs based on
other criteria, for example when receiving traffic on the new inbound SA.
2013-06-11 15:58:48 +02:00
Martin Willi
5c12700f9a
kernel-interface: query SAD for last use time if SPD query didn't yield one
2013-05-06 17:01:13 +02:00
Martin Willi
dd3c243844
Add a load-tester option to keep allocated external address until shutdown
2013-03-21 10:29:23 +01:00
Martin Willi
a0f1c4cf29
Add an "esp" load-tester option to configure custom CHILD_SA ESP proposal
2013-03-18 14:30:21 +01:00
Martin Willi
7eeeb1c702
kernel_ipsec_t.query_sa() additionally returns the number of processed packets
2013-03-14 14:20:54 +01:00
Martin Willi
d6b6d1ecdb
Support mutliple subnets and ranges as external load-tester addresses
2013-03-11 15:16:13 +01:00
Martin Willi
a36b49f3cb
Merge branch 'opaque-ports'
...
Adds a %opaque port option and support for port ranges in left/rightprotoport.
Currently not supported by any of our kernel backends.
2013-03-01 11:27:12 +01:00
Martin Willi
a1db77de7c
Use a complete port range in traffic_selector_create_from_{subnet,cidr}
2013-02-21 11:52:33 +01:00
Martin Willi
306a269e34
Add a DSCP configuration value to IKE configs
2013-02-06 15:20:32 +01:00
Tobias Brunner
365d9a6f67
Added an option that allows to force IKEv1 fragmentation
2013-01-12 11:54:32 +01:00
Tobias Brunner
97973f8609
Use a connection specific option to en-/disable IKEv1 fragmentation
2012-12-24 13:00:01 +01:00
Martin Willi
d9d0f12222
If load-tester requests a virtual IP, use a dynamic local traffic selector
2012-12-17 14:22:25 +01:00
Martin Willi
48828ff0db
Store load-tester address leases in a hashtable for fast removal
2012-11-29 10:22:52 +01:00
Martin Willi
d88597f0dd
Don't wait while removing external IPs used for load testing
2012-11-29 10:22:51 +01:00
Martin Willi
b185cdd16d
Install virtual IPs via interface name, and use an interface lookup where required
2012-11-29 10:22:51 +01:00
Martin Willi
0a54d3e1a1
load-tester can dynamically install a dedicated external IP for each IKE_SA
...
For consistency, the local/remote parameters have been replaced by the
initiator/responder options. As initiator, the initiator option can
be overriden by an addrs section taking key/value pairs with address
pools to use on a specific interface.
2012-11-29 10:22:51 +01:00
Martin Willi
fdd94fc846
Add a delay option to load-tester socket
2012-11-29 10:22:51 +01:00
Martin Willi
cf85f6b296
Indicate message retransmissions while initiating load-test batches
2012-11-29 10:22:51 +01:00
Martin Willi
93ceaa7e64
Initiate each load-testing connection with a fresh peer config
2012-11-29 10:22:51 +01:00
Martin Willi
b7acd90763
Initiate IKE_SAs trigger over load-tester socket in parallel
2012-11-29 10:22:51 +01:00
Martin Willi
965f7bd54f
Add a simple load-tester utility to initiate over control socket
2012-11-29 10:22:51 +01:00
Martin Willi
d65683eef4
Add a load-tester control socket to manually trigger initiation
2012-11-29 10:22:50 +01:00
Martin Willi
c4894cc172
Send certificate requests in load-tester
2012-10-24 13:25:45 +02:00
Martin Willi
0f3c5f8502
Add load-tester traffic selector configuration options
2012-10-24 13:25:13 +02:00
Martin Willi
b2265a2738
Add a load-tester option to define the IKE version to use for testing
2012-10-24 10:19:33 +02:00
Martin Willi
1fdd62ffce
Remove version argument on peer_cfg constructor, use ike_cfg version instead
2012-10-24 10:19:33 +02:00
Martin Willi
9fc7cc6f9b
Add IKE version information to ike_cfg_t
2012-10-24 10:18:35 +02:00
Martin Willi
a70851c941
Remove unused this parameter to load_issuer_cert/key(), as it is uninitialized
2012-10-16 14:11:14 +02:00
Martin Willi
c1024a6bd6
Generate a load-tester certificate only for DN or subjectAltName identities
2012-10-16 13:43:54 +02:00
Martin Willi
db97d67825
Add a load-tester initiator_match option to match custom initiator_id
2012-10-16 13:43:54 +02:00
Martin Willi
5359c7a437
Encode non-DN load-tester identities as subjectAltNames
2012-10-16 13:43:54 +02:00
Martin Willi
562b89ccee
Add a load-tester digest option for issuing peer certificates
2012-10-16 13:43:54 +02:00
Martin Willi
3f6e13f553
Load a multiple load-tester CA certificates from a directory
2012-10-16 13:43:54 +02:00
Martin Willi
24eb73b4fa
Added load-tester options to read issuing CA certificate and key from files
2012-10-16 13:43:53 +02:00
Martin Willi
497ce2cf51
Support multiple address pools configured on a peer_cfg
2012-08-30 16:43:42 +02:00
Martin Willi
101d26babe
Support multiple virtual IPs on peer_cfg and ike_sa classes
2012-08-30 16:43:42 +02:00
Tobias Brunner
b223d517c8
Replaced usages of CHARON_*_PORT with calls to get_port().
2012-08-08 15:12:25 +02:00
Tobias Brunner
e49abcede0
Let kernel interfaces decide how to enable UDP decapsulation of ESP packets.
2012-08-08 15:12:24 +02:00
Tobias Brunner
e7ea057fd2
Make the UDP ports charon listens for packets on (and uses as source ports) configurable.
2012-08-08 15:07:43 +02:00
Andreas Steffen
1d315bddd3
implemented the right|leftallowany feature
2012-06-08 21:24:41 +02:00
Andreas Steffen
80c5b17d1a
make IKEv1 DPD timeout configurable in charon
2012-05-17 19:49:22 +02:00
Martin Willi
29b56078ea
Register load-tester faked kernel interface before other kernel interfaces
2012-05-14 13:21:35 +02:00
Martin Willi
d4078ca796
Load tester can enforce a local IP to use
2012-05-14 10:03:05 +02:00