- Patch #78732 by webchick et al: made Drupal sessions work with sha1 session ids.
parent
c400b47510
commit
342f95d451
|
@ -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().
|
||||
*/
|
||||
|
|
|
@ -3361,10 +3361,10 @@ function system_update_1013() {
|
|||
switch ($GLOBALS['db_type']) {
|
||||
case 'mysql':
|
||||
case 'mysqli':
|
||||
$ret[] = update_sql('ALTER TABLE {sessions} CHANGE COLUMN sid sid varchar(64)');
|
||||
$ret[] = update_sql("ALTER TABLE {sessions} CHANGE COLUMN sid sid varchar(64) NOT NULL default ''");
|
||||
break;
|
||||
case 'pgsql':
|
||||
$ret[] = update_sql('ALTER TABLE {sessions} ALTER COLUMN sid TYPE varchar(64)');
|
||||
db_change_column($ret, 'sessions', 'sid', 'sid', 'varchar(64)', array('not null' => TRUE, 'default' => "''"));
|
||||
break;
|
||||
}
|
||||
return $ret;
|
||||
|
|
Loading…
Reference in New Issue