From 9b61ac3fdc0023e9f7124f10df7fb3406e63bc81 Mon Sep 17 00:00:00 2001 From: Dan Poltawski Date: Fri, 17 May 2013 14:16:17 +0100 Subject: [PATCH 1/2] MDL-33562 lib: remove private keys when user deleted --- lib/moodlelib.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 542be228110..62f5d26bb50 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -4031,6 +4031,9 @@ function delete_user(stdClass $user) { // unauthorise the user for all services $DB->delete_records('external_services_users', array('userid'=>$user->id)); + // Remove users private keys. + $DB->delete_records('user_private_key', array('userid' => $user->id)); + // force logout - may fail if file based sessions used, sorry session_kill_user($user->id); From 8feae80284360d02641a3a398ecaaabff390a25e Mon Sep 17 00:00:00 2001 From: Dan Poltawski Date: Fri, 17 May 2013 14:30:52 +0100 Subject: [PATCH 2/2] MDL-33562 lib: remove deleted user tokens --- lib/db/upgrade.php | 9 +++++++++ version.php | 3 +-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/db/upgrade.php b/lib/db/upgrade.php index cc0cc3620ea..ae905111abb 100644 --- a/lib/db/upgrade.php +++ b/lib/db/upgrade.php @@ -1187,5 +1187,14 @@ function xmldb_main_upgrade($oldversion) { upgrade_main_savepoint(true, 2012062507.01); } + if ($oldversion < 2012062507.04) { + // Clean up old tokens which haven't been deleted. + $DB->execute("DELETE FROM {user_private_key} WHERE NOT EXISTS + (SELECT 'x' FROM {user} WHERE deleted = 0 AND id = userid)"); + + // Main savepoint reached. + upgrade_main_savepoint(true, 2012062507.04); + } + return true; } diff --git a/version.php b/version.php index d676d029364..37d66a95560 100644 --- a/version.php +++ b/version.php @@ -29,8 +29,7 @@ defined('MOODLE_INTERNAL') || die(); - -$version = 2012062507.03; // YYYYMMDD = weekly release date of this DEV branch +$version = 2012062507.04; // YYYYMMDD = weekly release date of this DEV branch // RR = release increments - 00 in DEV branches // .XX = incremental changes