diff options
Diffstat (limited to 'teleterm/src/web/logout.rs')
-rw-r--r-- | teleterm/src/web/logout.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/teleterm/src/web/logout.rs b/teleterm/src/web/logout.rs new file mode 100644 index 0000000..1b3fc15 --- /dev/null +++ b/teleterm/src/web/logout.rs @@ -0,0 +1,13 @@ +use gotham::state::FromState as _; + +pub fn run( + mut state: gotham::state::State, +) -> (gotham::state::State, hyper::Response<hyper::Body>) { + let session = gotham::middleware::session::SessionData::< + crate::web::SessionData, + >::take_from(&mut state); + + session.discard(&mut state).unwrap(); + + (state, hyper::Response::new(hyper::Body::empty())) +} |