aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/utils.h
diff options
context:
space:
mode:
authorClavister OpenSource <opensource@clavister.com>2011-11-24 16:48:41 +0100
committerClavister OpenSource <opensource@clavister.com>2012-03-20 17:30:52 +0100
commitb94f248ea967aef936db3a323134c030b4f05add (patch)
tree72e7bb710e41818631f7cdff0d931d7d853c6744 /src/libstrongswan/utils.h
parent46897273d76c9f1cfa4fa6f2184adb5e84f01836 (diff)
downloadstrongswan-b94f248ea967aef936db3a323134c030b4f05add.tar.bz2
strongswan-b94f248ea967aef936db3a323134c030b4f05add.tar.xz
IKEv1 XAuth: Added new MIGRATE status type to status_t.
When a task returns this status from a build or process method, it is a signal to the task manager that it should treat it as if the task returned SUCCESS. Additionally it will migrate all remaining tasks from the current queue to a different one, calling swap_initiator for each applicable task. Finally, the task manager will call "initiate", if applicable, to kick off tasks in the "queued_tasks" queue. Task queue relocation mapping: passive_tasks moves to queued_tasks (which is then fed to active by the initiate call). active_tasks moves to passive_tasks
Diffstat (limited to 'src/libstrongswan/utils.h')
-rw-r--r--src/libstrongswan/utils.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libstrongswan/utils.h b/src/libstrongswan/utils.h
index 0f06fec6a..f98de4139 100644
--- a/src/libstrongswan/utils.h
+++ b/src/libstrongswan/utils.h
@@ -299,6 +299,12 @@ enum status_t {
* Another call to the method is required.
*/
NEED_MORE,
+
+ /**
+ * For tasks only, same as SUCCESS, but also migrate all remaining tasks
+ * in the current queue to the opposite queue (passive->active or active->passive)
+ */
+ MIGRATE,
};
/**