mirror of
https://gitlab.com/openconnect/ocserv.git
synced 2026-10-14 02:22:03 +08:00
simplified handling of CISCO reconnecting clients.
Instead of having a client use the initial SID over and over, re-set the SID cookie, during authentication when needed. That way we avoid having expensive checks to ensure uniqueness of SID.
This commit is contained in:
+9
-4
@@ -21,13 +21,13 @@
|
||||
* == Auth with legacy client ==
|
||||
*
|
||||
* main worker
|
||||
* <------ AUTH_INIT (username, sid)
|
||||
* <------ AUTH_INIT (username)
|
||||
* AUTH_REP(MSG) ------>
|
||||
*
|
||||
* (worker terminates as client disconnects)
|
||||
*
|
||||
* <------ AUTH_REINIT (password, sid)
|
||||
* AUTH_REP(ΟΚ) ------>
|
||||
* <------ AUTH_REINIT (password, sid)
|
||||
* AUTH_REP(ΟΚ,newsid) ------>
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -40,7 +40,6 @@ message auth_init_msg
|
||||
optional string cert_user_name = 4;
|
||||
optional string cert_group_name = 5;
|
||||
optional string hostname = 6;
|
||||
optional bytes sid = 7;
|
||||
}
|
||||
|
||||
/* AUTH_REINIT - used in cisco compatible clients, to
|
||||
@@ -98,6 +97,12 @@ message auth_reply_msg
|
||||
repeated string routes = 21;
|
||||
repeated string dns = 22;
|
||||
repeated string nbns = 23;
|
||||
|
||||
/* The sid is used when this message is a reply
|
||||
* to an AUTH_REINIT, to let the worker know of
|
||||
* any change in the sid.
|
||||
*/
|
||||
optional bytes sid = 24;
|
||||
}
|
||||
|
||||
/* RESUME_FETCH_REQ + RESUME_DELETE_REQ */
|
||||
|
||||
Reference in New Issue
Block a user