On 10 September 2016 at 08:42, Nikolay Edigaryev <[email protected]> wrote:
> This fixes a bug introduced in revision 1.8 of timer.c that causes
> evtimer_set() to be called on an already active event, which is an error
> according to event_add(3):
>
>>The event in the ev argument must be already initialized by event_set()
>>and may not be used in calls to event_set() until it has timed out or
>>been removed with event_del(). If the event in the ev argument already
>>has a scheduled timeout, the old timeout will be replaced by the new
>>one.
>
> The simplest way to trigger the loop is by toggling the active/passive
> knob via ikectl:
>
> $ doas ikectl active # Calls event_set() and starts 2 second timer
> $ doas ikectl active # Calls event_set() on an active timer
>
> It can also be triggered by connecting to a peer and receiving
> INVALID_KE_PAYLOAD notification from it, in which case event_set() will
> be called in ikev2_pld_notify().
>

Indeed.  Thanks for your report and fix; it has been just committed.

Reply via email to