You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ponymail.apache.org by hu...@apache.org on 2021/09/07 23:04:27 UTC
[incubator-ponymail-foal] branch master updated: Delete cookie
client-side when logging out.
This is an automated email from the ASF dual-hosted git repository.
humbedooh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-ponymail-foal.git
The following commit(s) were added to refs/heads/master by this push:
new 469604e Delete cookie client-side when logging out.
469604e is described below
commit 469604ec361740a415b3627ce280684d6807f8f1
Author: Daniel Gruno <hu...@apache.org>
AuthorDate: Tue Sep 7 18:04:16 2021 -0500
Delete cookie client-side when logging out.
---
server/endpoints/preferences.py | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/server/endpoints/preferences.py b/server/endpoints/preferences.py
index 6914382..4131dbe 100644
--- a/server/endpoints/preferences.py
+++ b/server/endpoints/preferences.py
@@ -18,12 +18,16 @@
import plugins.server
import plugins.aaa
import plugins.session
+import aiohttp.web
+import typing
""" Generic preferences endpoint for Pony Mail codename Foal"""
""" This is incomplete, but will work for anonymous tests. """
-async def process(server: plugins.server.BaseServer, session: plugins.session.SessionObject, indata: dict) -> dict:
+async def process(
+ server: plugins.server.BaseServer, session: plugins.session.SessionObject, indata: dict
+) -> typing.Union[dict, aiohttp.web.Response]:
prefs: dict = {"login": {}}
lists: dict = {}
for ml, entry in server.data.lists.items():
@@ -63,6 +67,14 @@ async def process(server: plugins.server.BaseServer, session: plugins.session.Se
if session.cookie in server.data.sessions:
del server.data.sessions[session.cookie]
session.credentials = None
+ return aiohttp.web.Response(
+ headers={
+ "set-cookie": "ponymail=deleted; path=/api; expires=Thu, 01 Jan 1970 00:00:00 GMT",
+ "content-type": "application/json",
+ },
+ status=200,
+ text='{"okay": true}',
+ )
return prefs