| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
This ensures the listeners don't miss any events after the SAs have been
checked out in the asynchronously executed jobs. This is a matter of
memory visibility and not primary a matter of exclusive access.
|
|
|
|
| |
Also IKE_SAs are now checked out in the jobs and not before.
|
|
|
|
|
|
|
|
|
|
|
| |
Jobs are now destroyed by the processor, but they are allowed to
reschedule themselves. That is, parts of the reschedule functionality
already provided by callback_job_t is moved to the processor. Not yet
fully supported is JOB_REQUEUE_DIRECT and canceling jobs.
Note: job_t.destroy() is now called not only for queued jobs but also
after execution or cancellation of jobs. job_t.status can be used to
decide what to do in said method.
|
|
|
|
|
|
|
| |
This also allows us to generate the log message only once for all
loggers that need it (avoids calls to custom printf specifier callbacks).
To update the log levels loggers can simply be registered again.
|
|
|
|
|
|
|
|
| |
The new interface does not allow loggers to unregister themselves from
the bus. This allows us to use a rwlock_t for them.
The latter also means that loggers can now be called concurrently by
multiple threads.
|
| |
|
|
|
|
| |
This eliminates even the slightest chance of a deadlock.
|
|
|
|
| |
This will hopefully allow us to later simplify bus_t.
|
| |
|
| |
|
| |
|
|
|
|
| |
Mostly found by 'codespell'.
|
|
|
|
|
| |
This required two new methods on ike_sa_t. One returns the number of
CHILD_SAs and one allows to remove a CHILD_SA.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Because the thread that is actually terminating the SA and thus checking
it in again is not be the same thread that previously checked it out and
queued the termination job, the thread local SA on the bus has to be reset
manually, similar to how it is set in the job which is executing the job.
|
|
|