peer-cfg: Use an rwlock instead of a mutex to safely access child-cfgs
authorTobias Brunner <tobias@strongswan.org>
Mon, 3 Jul 2017 13:57:49 +0000 (15:57 +0200)
committerTobias Brunner <tobias@strongswan.org>
Thu, 27 Jul 2017 11:34:40 +0000 (13:34 +0200)
commit8d4ebb3ac421d415c140537265666d76f9d4f6d1
tree7a3feb0b39dc59da94f884c990192168f2285179
parent578d893b4a71897f48225a1645fef1eaced13399
peer-cfg: Use an rwlock instead of a mutex to safely access child-cfgs

If multiple threads want to enumerate child-cfgs and potentially lock
other locks (e.g. check out IKE_SAs) while doing so a deadlock could
be caused (as was the case with VICI configs with start_action=start).
It should also improve performance for roadwarrior connections and lots
of clients connecting concurrently.

Fixes #2374.
src/libcharon/config/peer_cfg.c