From 342f95d4512d1f4562e1a6e64014b4cc8cb27f96 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Tue, 7 Nov 2006 22:27:07 +0000 Subject: - Patch #78732 by webchick et al: made Drupal sessions work with sha1 session ids. --- modules/statistics/statistics.install | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'modules/statistics/statistics.install') diff --git a/modules/statistics/statistics.install b/modules/statistics/statistics.install index e1e2c00a4..2613a640d 100644 --- a/modules/statistics/statistics.install +++ b/modules/statistics/statistics.install @@ -10,7 +10,7 @@ function statistics_install() { case 'mysqli': db_query("CREATE TABLE {accesslog} ( aid int NOT NULL auto_increment, - sid varchar(32) NOT NULL default '', + sid varchar(64) NOT NULL default '', title varchar(255) default NULL, path varchar(255) default NULL, url varchar(255) default NULL, @@ -25,7 +25,7 @@ function statistics_install() { case 'pgsql': db_query("CREATE TABLE {accesslog} ( aid serial, - sid varchar(32) NOT NULL default '', + sid varchar(64) NOT NULL default '', title varchar(255) default NULL, path varchar(255) default NULL, url varchar(255) default NULL, @@ -40,6 +40,25 @@ function statistics_install() { } } +/** + * Changes session ID field to VARCHAR(64) to add support for SHA-1 hashes. + */ +function statistics_update_1000() { + $ret = array(); + + switch ($GLOBALS['db_type']) { + case 'mysql': + case 'mysqli': + $ret[] = update_sql("ALTER TABLE {accesslog} CHANGE COLUMN sid sid varchar(64) NOT NULL default ''"); + break; + case 'pgsql': + db_change_column($ret, 'accesslog', 'sid', 'sid', 'varchar(64)', array('not null' => TRUE, 'default' => "''")); + break; + } + + return $ret; +} + /** * Implementation of hook_uninstall(). */ -- cgit v1.2.3