aboutsummaryrefslogtreecommitdiffstats
path: root/teleterm/src/web/logout.rs
diff options
context:
space:
mode:
Diffstat (limited to 'teleterm/src/web/logout.rs')
-rw-r--r--teleterm/src/web/logout.rs13
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()))
+}