From 34bb81a826d023ce39714e1a6e027b19cf96a5fd Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Wed, 18 Jun 2014 00:04:08 -0400 Subject: Rework remote_login and remove protect decorator The protect decorator was not really being used for anything, remove it. Change the way UserSession's remote_login() works. If called now it either sets a REMOTE_USER (if found) or nukes the current user data in the session. This means this function can be safely called only in a login plugin now. Signed-off-by: Simo Sorce Reviewed-by: Patrick Uiterwijk --- ipsilon/util/user.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'ipsilon/util/user.py') diff --git a/ipsilon/util/user.py b/ipsilon/util/user.py index f47c072..7c53526 100755 --- a/ipsilon/util/user.py +++ b/ipsilon/util/user.py @@ -111,7 +111,9 @@ class UserSession(object): def remote_login(self): if cherrypy.request.login: - return self.login(cherrypy.request.login) + self.login(cherrypy.request.login) + else: + self.nuke_data('user') def login(self, username): if self.user == username: @@ -120,8 +122,9 @@ class UserSession(object): # REMOTE_USER changed, replace user self.nuke_data('user') self.save_data('user', 'name', username) + self.user = username - cherrypy.log('LOGIN SUCCESSFUL: %s', username) + cherrypy.log('LOGIN SUCCESSFUL: %s' % username) def logout(self, user): if user is not None: -- cgit