[geeklog-cvs] geeklog: Prepare database for storing IPv6 addresses (cf. featur...

geeklog-cvs at lists.geeklog.net geeklog-cvs at lists.geeklog.net
Tue Dec 29 08:00:40 EST 2009


changeset 7556:3487f2c6465b
url:  http://project.geeklog.net/cgi-bin/hgwebdir.cgi/geeklog/rev/3487f2c6465b
user: Dirk Haun <dirk at haun-online.de>
date: Tue Dec 29 13:36:49 2009 +0100
description:
Prepare database for storing IPv6 addresses (cf. feature request #0000971)

diffstat:

 plugins/polls/autoinstall.php        |   2 +-
 plugins/polls/functions.inc          |  13 ++++++++++++-
 plugins/polls/sql/mssql_install.php  |   2 +-
 plugins/polls/sql/mssql_updates.php  |  13 +++++++++----
 plugins/polls/sql/mysql_install.php  |   2 +-
 plugins/polls/sql/mysql_updates.php  |   5 +++++
 public_html/docs/history             |   4 ++++
 sql/mssql_tableanddata.php           |  10 +++++-----
 sql/mysql_tableanddata.php           |  10 +++++-----
 sql/updates/mssql_1.6.1_to_1.6.2.php |   7 +++++++
 sql/updates/mysql_1.6.1_to_1.6.2.php |   7 +++++++
 11 files changed, 57 insertions(+), 18 deletions(-)

diffs (242 lines):

diff -r d68c71bfd62f -r 3487f2c6465b plugins/polls/autoinstall.php
--- a/plugins/polls/autoinstall.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/plugins/polls/autoinstall.php	Tue Dec 29 13:36:49 2009 +0100
@@ -51,7 +51,7 @@
     $info = array(
         'pi_name'         => $pi_name,
         'pi_display_name' => $pi_display_name,
-        'pi_version'      => '2.1.1',
+        'pi_version'      => '2.1.2',
         'pi_gl_version'   => '1.6.1',
         'pi_homepage'     => 'http://www.geeklog.net/'
     );
diff -r d68c71bfd62f -r 3487f2c6465b plugins/polls/functions.inc
--- a/plugins/polls/functions.inc	Tue Dec 29 11:38:51 2009 +0100
+++ b/plugins/polls/functions.inc	Tue Dec 29 13:36:49 2009 +0100
@@ -1179,7 +1179,18 @@
             
             $current_version = '2.1.1';
             break;
-            
+
+        case '2.1.1':
+            if (isset($_UPDATES[$current_version])) {
+                $_SQL = $_UPDATES[$current_version];
+                foreach ($_SQL as $sql) {
+                    DB_query($sql);
+                }
+            }
+
+            $current_version = '2.1.2';
+            break;
+
         default:
             $done = true;
         }
diff -r d68c71bfd62f -r 3487f2c6465b plugins/polls/sql/mssql_install.php
--- a/plugins/polls/sql/mssql_install.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/plugins/polls/sql/mssql_install.php	Tue Dec 29 13:36:49 2009 +0100
@@ -83,7 +83,7 @@
 CREATE TABLE [dbo].[{$_TABLES['pollvoters']}] (
     [id] [numeric](10, 0) IDENTITY (1, 1) NOT NULL ,
     [pid] [varchar] (40) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
-    [ipaddress] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
+    [ipaddress] [varchar] (39) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
     [date] [numeric](10, 0) NULL
 ) ON [PRIMARY]
 ";
diff -r d68c71bfd62f -r 3487f2c6465b plugins/polls/sql/mssql_updates.php
--- a/plugins/polls/sql/mssql_updates.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/plugins/polls/sql/mssql_updates.php	Tue Dec 29 13:36:49 2009 +0100
@@ -38,15 +38,20 @@
         // These pid changes should have happened when upgrading from 2.0.2
         // to 2.1.0 but were previously listed for an upgrade from 2.0.1 and
         // therefore may have not been applied. Apply again to be sure.
-        "ALTER TABLE {$_TABLES['pollanswers']} ALTER COLUMN [pid] VARCHARS(40)",
-        "ALTER TABLE {$_TABLES['pollquestions']} ALTER COLUMN [pid] VARCHARS(40)",
-        "ALTER TABLE {$_TABLES['polltopics']} ALTER COLUMN [pid] VARCHARS(40)",
-        "ALTER TABLE {$_TABLES['pollvoters']} ALTER COLUMN [pid] VARCHARS(40)",
+        "ALTER TABLE {$_TABLES['pollanswers']} ALTER COLUMN [pid] VARCHAR(40)",
+        "ALTER TABLE {$_TABLES['pollquestions']} ALTER COLUMN [pid] VARCHAR(40)",
+        "ALTER TABLE {$_TABLES['polltopics']} ALTER COLUMN [pid] VARCHAR(40)",
+        "ALTER TABLE {$_TABLES['pollvoters']} ALTER COLUMN [pid] VARCHAR(40)",
 
         // New field post-2.1.0
         "ALTER TABLE {$_TABLES['polltopics']} ADD meta_description [varchar] (5000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL AFTER topic, ADD meta_keywords [meta_keywords] [varchar] (5000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL AFTER meta_description"
     )
 
+    '2.1.1' => array(
+        // make room to store IPv6 addresses
+        "ALTER TABLE {$_TABLES['pollvoters']} ALTER COLUMN [ipaddress] VARCHAR(39) NOT NULL"
+    )
+
 );
 
 function update_ConfValues_2_1_0()
diff -r d68c71bfd62f -r 3487f2c6465b plugins/polls/sql/mysql_install.php
--- a/plugins/polls/sql/mysql_install.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/plugins/polls/sql/mysql_install.php	Tue Dec 29 13:36:49 2009 +0100
@@ -90,7 +90,7 @@
 CREATE TABLE {$_TABLES['pollvoters']} (
   id int(10) unsigned NOT NULL auto_increment,
   pid varchar(20) NOT NULL,
-  ipaddress varchar(15) NOT NULL default '',
+  ipaddress varchar(39) NOT NULL default '',
   date int(10) unsigned default NULL,
   PRIMARY KEY  (id)
 ) TYPE=MyISAM
diff -r d68c71bfd62f -r 3487f2c6465b plugins/polls/sql/mysql_updates.php
--- a/plugins/polls/sql/mysql_updates.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/plugins/polls/sql/mysql_updates.php	Tue Dec 29 13:36:49 2009 +0100
@@ -45,6 +45,11 @@
 
         // New field post-2.1.0
         "ALTER TABLE {$_TABLES['polltopics']} ADD meta_description TEXT NULL AFTER topic, ADD meta_keywords TEXT NULL AFTER meta_description"
+    ),
+
+    '2.1.1' => array(
+        // make room to store IPv6 addresses
+        "ALTER TABLE {$_TABLES['pollvoters']} CHANGE ipaddress ipaddress varchar(39) NOT NULL default ''"
     )
 
 );
diff -r d68c71bfd62f -r 3487f2c6465b public_html/docs/history
--- a/public_html/docs/history	Tue Dec 29 11:38:51 2009 +0100
+++ b/public_html/docs/history	Tue Dec 29 13:36:49 2009 +0100
@@ -3,6 +3,10 @@
 ??? ??, 2010 (1.6.2)
 ------------
 
+- Prepare database for storing IPv6 addresses (feature request #0000971) [Dirk]
+- Implemented re-authentication when trying to submit a form with an expired
+  security token. This will allow the user to save changes even when the token
+  has expired [Dirk]
 - Hide meta tag entry fields from the Story and Topic editors when meta tag
   support is disabled [Dirk]
 - Fixed topic selection for the Daily Digest (bug #0001041, patch provided by
diff -r d68c71bfd62f -r 3487f2c6465b sql/mssql_tableanddata.php
--- a/sql/mssql_tableanddata.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/sql/mssql_tableanddata.php	Tue Dec 29 13:36:49 2009 +0100
@@ -124,7 +124,7 @@
     [indent] [numeric](10, 0) NULL ,
     [name] [varchar] (128) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
     [uid] [int] NULL ,
-    [ipaddress] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
+    [ipaddress] [varchar] (39) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
 ) ON [PRIMARY]
 ";
 
@@ -139,7 +139,7 @@
   [uid] [INT] NOT NULL default '1',
   [name] [varchar] (32) default NULL,
   [pid] [INT] NOT NULL default '0',
-  [ipaddress] [varchar](15) NOT NULL
+  [ipaddress] [varchar](39) NOT NULL
 ) ON [PRIMARY]
 ";
 
@@ -256,7 +256,7 @@
 CREATE TABLE [dbo].[{$_TABLES['sessions']}] (
     [sess_id] [numeric](10, 0) NOT NULL ,
     [start_time] [numeric](10, 0) NOT NULL ,
-    [remote_ip] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
+    [remote_ip] [varchar] (39) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
     [uid] [int] NOT NULL ,
     [md5_sess_id] [varchar] (128) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
 ) ON [PRIMARY]
@@ -272,7 +272,7 @@
 $_SQL[] = "
 CREATE TABLE [dbo].[{$_TABLES['speedlimit']}] (
     [id] [numeric](10, 0) IDENTITY (1, 1) NOT NULL ,
-    [ipaddress] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
+    [ipaddress] [varchar] (39) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
     [date] [numeric](10, 0) NULL ,
     [type] [varchar] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
 ) ON [PRIMARY]
@@ -395,7 +395,7 @@
     [excerpt] [varchar] (5000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
     [date] [datetime] NULL ,
     [type] [varchar] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
-    [ipaddress] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
+    [ipaddress] [varchar] (39) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
 ) ON [PRIMARY]
 ";
 
diff -r d68c71bfd62f -r 3487f2c6465b sql/mysql_tableanddata.php
--- a/sql/mysql_tableanddata.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/sql/mysql_tableanddata.php	Tue Dec 29 13:36:49 2009 +0100
@@ -103,7 +103,7 @@
   indent mediumint(10) unsigned NOT NULL default '0',
   name varchar(32) default NULL,
   uid mediumint(8) NOT NULL default '1',
-  ipaddress varchar(15) NOT NULL default '',
+  ipaddress varchar(39) NOT NULL default '',
   INDEX comments_sid(sid),
   INDEX comments_uid(uid),
   INDEX comments_lft(lft),
@@ -124,7 +124,7 @@
   uid mediumint(8) NOT NULL default '1',
   name varchar(32) default NULL,
   pid int(10) NOT NULL default '0',
-  ipaddress varchar(15) NOT NULL,
+  ipaddress varchar(39) NOT NULL,
   PRIMARY KEY  (cid)
 ) TYPE=MyISAM
 ";
@@ -254,7 +254,7 @@
 CREATE TABLE {$_TABLES['sessions']} (
   sess_id int(10) unsigned NOT NULL default '0',
   start_time int(10) unsigned NOT NULL default '0',
-  remote_ip varchar(15) NOT NULL default '',
+  remote_ip varchar(39) NOT NULL default '',
   uid mediumint(8) NOT NULL default '1',
   md5_sess_id varchar(128) default NULL,
   PRIMARY KEY  (sess_id),
@@ -275,7 +275,7 @@
 $_SQL[] = "
 CREATE TABLE {$_TABLES['speedlimit']} (
   id int(10) unsigned NOT NULL auto_increment,
-  ipaddress varchar(15) NOT NULL default '',
+  ipaddress varchar(39) NOT NULL default '',
   date int(10) unsigned default NULL,
   type varchar(30) NOT NULL default 'submit',
   PRIMARY KEY (id),
@@ -420,7 +420,7 @@
   excerpt text,
   date datetime default NULL,
   type varchar(30) NOT NULL default 'article',
-  ipaddress varchar(15) NOT NULL default '',
+  ipaddress varchar(39) NOT NULL default '',
   PRIMARY KEY (cid),
   INDEX trackback_sid(sid),
   INDEX trackback_url(url),
diff -r d68c71bfd62f -r 3487f2c6465b sql/updates/mssql_1.6.1_to_1.6.2.php
--- a/sql/updates/mssql_1.6.1_to_1.6.2.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/sql/updates/mssql_1.6.1_to_1.6.2.php	Tue Dec 29 13:36:49 2009 +0100
@@ -4,4 +4,11 @@
 $_SQL[] = "UPDATE {$_TABLES['conf_values']} SET type = '%select', selectionArray = 24 WHERE name = 'menu_elements' AND group_name = 'Core'";
 $_SQL[] = "UPDATE {$_TABLES['conf_values']} SET type = '%select', selectionArray = 25 WHERE name = 'notification' AND group_name = 'Core'";
 
+// make room to store IPv6 addresses
+$_SQL[] = "ALTER TABLE {$_TABLES['comments']} ALTER COLUMN [ipaddress] varchar(39) NOT NULL";
+$_SQL[] = "ALTER TABLE {$_TABLES['commentsubmissions']} ALTER COLUMN [ipaddress] varchar(39) NOT NULL";
+$_SQL[] = "ALTER TABLE {$_TABLES['sessions']} ALTER COLUMN [remote_ip] varchar(39) NOT NULL";
+$_SQL[] = "ALTER TABLE {$_TABLES['speedlimit']} ALTER COLUMN [ipaddress] varchar(39) NOT NULL";
+$_SQL[] = "ALTER TABLE {$_TABLES['trackback']} ALTER COLUMN [ipaddress] varchar(39) NOT NULL";
+
 ?>
diff -r d68c71bfd62f -r 3487f2c6465b sql/updates/mysql_1.6.1_to_1.6.2.php
--- a/sql/updates/mysql_1.6.1_to_1.6.2.php	Tue Dec 29 11:38:51 2009 +0100
+++ b/sql/updates/mysql_1.6.1_to_1.6.2.php	Tue Dec 29 13:36:49 2009 +0100
@@ -4,4 +4,11 @@
 $_SQL[] = "UPDATE {$_TABLES['conf_values']} SET type = '%select', selectionArray = 24 WHERE name = 'menu_elements' AND group_name = 'Core'";
 $_SQL[] = "UPDATE {$_TABLES['conf_values']} SET type = '%select', selectionArray = 25 WHERE name = 'notification' AND group_name = 'Core'";
 
+// make room to store IPv6 addresses
+$_SQL[] = "ALTER TABLE {$_TABLES['comments']} CHANGE ipaddress ipaddress varchar(39) NOT NULL default ''";
+$_SQL[] = "ALTER TABLE {$_TABLES['commentsubmissions']} CHANGE ipaddress ipaddress varchar(39) NOT NULL default ''";
+$_SQL[] = "ALTER TABLE {$_TABLES['sessions']} CHANGE remote_ip remote_ip varchar(39) NOT NULL default ''";
+$_SQL[] = "ALTER TABLE {$_TABLES['speedlimit']} CHANGE ipaddress ipaddress varchar(39) NOT NULL default ''";
+$_SQL[] = "ALTER TABLE {$_TABLES['trackback']} CHANGE ipaddress ipaddress varchar(39) NOT NULL default ''";
+
 ?>



More information about the geeklog-cvs mailing list