Revision: 2277
          http://mrbs.svn.sourceforge.net/mrbs/?rev=2277&view=rev
Author:   cimorrison
Date:     2012-03-26 09:25:53 +0000 (Mon, 26 Mar 2012)
Log Message:
-----------
Changed SQL escaping from addslashes() to PHP escape functions.   (addslashes() 
should not be used with PostgreSQL).   Thanks to Henry S. Thompson.

Modified Paths:
--------------
    mrbs/trunk/web/Themes/default/header.inc
    mrbs/trunk/web/auth_db.inc
    mrbs/trunk/web/auth_db_ext.inc
    mrbs/trunk/web/dbsys.inc
    mrbs/trunk/web/edit_area_room.php
    mrbs/trunk/web/edit_users.php
    mrbs/trunk/web/functions_ical.inc
    mrbs/trunk/web/functions_mail.inc
    mrbs/trunk/web/import.php
    mrbs/trunk/web/mrbs_sql.inc
    mrbs/trunk/web/mysql.inc
    mrbs/trunk/web/mysqli.inc
    mrbs/trunk/web/pending.php
    mrbs/trunk/web/pgsql.inc
    mrbs/trunk/web/report.php
    mrbs/trunk/web/search.php
    mrbs/trunk/web/upgrade/15/post.inc
    mrbs/trunk/web/upgrade/21/post.inc
    mrbs/trunk/web/upgrade/6/post.inc

Modified: mrbs/trunk/web/Themes/default/header.inc
===================================================================
--- mrbs/trunk/web/Themes/default/header.inc    2012-03-12 18:18:24 UTC (rev 
2276)
+++ mrbs/trunk/web/Themes/default/header.inc    2012-03-26 09:25:53 UTC (rev 
2277)
@@ -3325,7 +3325,7 @@
           if (!$is_admin)
           {
             // Ordinary users can only see their own
-            $sql .= " AND create_by='" . addslashes($user) . "'";
+            $sql .= " AND create_by='" . sql_escape($user) . "'";
           }
           $n_outstanding = sql_query1($sql);
           echo "<div id=\"n_outstanding\"" .

Modified: mrbs/trunk/web/auth_db.inc
===================================================================
--- mrbs/trunk/web/auth_db.inc  2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/auth_db.inc  2012-03-26 09:25:53 UTC (rev 2277)
@@ -36,8 +36,8 @@
 {
   global $tbl_users;
 
-  $user = strtolower(addslashes($user));
-  // No addslashes() required because it's put in the database as an MD5,
+  $user = strtolower(sql_escape($user));
+  // No sql_escape() required because it's put in the database as an MD5,
   // which is safe.
   $pass = md5($pass);
   
@@ -69,7 +69,7 @@
     return 0;
   }
   
-  $result = sql_query1("SELECT level FROM $tbl_users WHERE name='" . 
strtolower(addslashes($user)) . "' LIMIT 1");
+  $result = sql_query1("SELECT level FROM $tbl_users WHERE name='" . 
strtolower(sql_escape($user)) . "' LIMIT 1");
   if ($result == -1)
   {
     $sql_error = sql_error();

Modified: mrbs/trunk/web/auth_db_ext.inc
===================================================================
--- mrbs/trunk/web/auth_db_ext.inc      2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/auth_db_ext.inc      2012-03-26 09:25:53 UTC (rev 2277)
@@ -50,7 +50,7 @@
                       $auth['db_ext']['db_password'],
                       $auth['db_ext']['db_name']);
 
-  $user = addslashes($user);
+  $user = sql_escape($user);
 
   $query = "SELECT " . $auth['db_ext']['column_name_password'] .
            " FROM " . $auth['db_ext']['db_table'] .

Modified: mrbs/trunk/web/dbsys.inc
===================================================================
--- mrbs/trunk/web/dbsys.inc    2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/dbsys.inc    2012-03-26 09:25:53 UTC (rev 2277)
@@ -55,6 +55,28 @@
 }
 
 
+// Escapes special characters in a string for use in an SQL statement
+function sql_escape($str)
+{
+  if (func_num_args() > 1)
+  {
+    $handle = func_get_arg(1);
+    $db_sys = $handle['system'];
+    $db_conn = $handle['connection'];
+  }
+  else
+  {
+    global $dbsys;
+
+    $db_sys = $dbsys;
+    $db_conn = null;
+  }
+  
+  $f = "sql_${db_sys}_escape";
+  return $f($str, $db_conn);
+}
+
+
 // Run an SQL query that doesn't produce results
 function sql_command($sql)
 {

Modified: mrbs/trunk/web/edit_area_room.php
===================================================================
--- mrbs/trunk/web/edit_area_room.php   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/edit_area_room.php   2012-03-26 09:25:53 UTC (rev 2277)
@@ -309,22 +309,22 @@
                 $assign_array[] = "disabled=$room_disabled";
                 break;
               case 'room_name':
-                $assign_array[] = "room_name='" . addslashes($room_name) . "'";
+                $assign_array[] = "room_name='" . sql_escape($room_name) . "'";
                 break;
               case 'sort_key':
-                $assign_array[] = "sort_key='" . addslashes($sort_key) . "'";
+                $assign_array[] = "sort_key='" . sql_escape($sort_key) . "'";
                 break;
               case 'description':
-                $assign_array[] = "description='" . addslashes($description) . 
"'";
+                $assign_array[] = "description='" . sql_escape($description) . 
"'";
                 break;
               case 'capacity':
                 $assign_array[] = "capacity=$capacity";
                 break;
               case 'room_admin_email':
-                $assign_array[] = "room_admin_email='" . 
addslashes($room_admin_email) . "'";
+                $assign_array[] = "room_admin_email='" . 
sql_escape($room_admin_email) . "'";
                 break;
               case 'custom_html':
-                $assign_array[] = "custom_html='" . addslashes($custom_html) . 
"'";
+                $assign_array[] = "custom_html='" . sql_escape($custom_html) . 
"'";
                 break;
               // then look at any user defined fields
               default:
@@ -341,7 +341,7 @@
                     }
                     break;
                   default:
-                    $$var = "'" . addslashes($$var) . "'";
+                    $$var = "'" . sql_escape($$var) . "'";
                     break;
                 }
                 // Note that we don't have to escape or quote the fieldname
@@ -481,11 +481,11 @@
     {
       $sql = "UPDATE $tbl_area SET ";
       $assign_array = array();
-      $assign_array[] = "area_name='" . addslashes($area_name) . "'";
+      $assign_array[] = "area_name='" . sql_escape($area_name) . "'";
       $assign_array[] = "disabled=" . $area_disabled;
-      $assign_array[] = "timezone='" . addslashes($area_timezone) . "'";
-      $assign_array[] = "area_admin_email='" . addslashes($area_admin_email) . 
"'";
-      $assign_array[] = "custom_html='" . addslashes($custom_html) . "'";
+      $assign_array[] = "timezone='" . sql_escape($area_timezone) . "'";
+      $assign_array[] = "area_admin_email='" . sql_escape($area_admin_email) . 
"'";
+      $assign_array[] = "custom_html='" . sql_escape($custom_html) . "'";
       if (!$area_enable_periods)
       {
         $assign_array[] = "resolution=" . $area_res_mins * 60;

Modified: mrbs/trunk/web/edit_users.php
===================================================================
--- mrbs/trunk/web/edit_users.php       2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/edit_users.php       2012-03-26 09:25:53 UTC (rev 2277)
@@ -433,7 +433,7 @@
 if (isset($Action) && ($Action == "Update"))
 {
   // If you haven't got the rights to do this, then exit
-  $my_id = sql_query1("SELECT id FROM $tbl_users WHERE 
name='".addslashes($user)."' LIMIT 1");
+  $my_id = sql_query1("SELECT id FROM $tbl_users WHERE 
name='".sql_escape($user)."' LIMIT 1");
   if (($level < $min_user_editing_level) && ($Id != $my_id ))
   {
     Header("Location: edit_users.php");
@@ -528,7 +528,7 @@
           // If it's a new user, then to check to see if there are any rows 
with that name.
           // If it's an update, then check to see if there are any rows with 
that name, except
           // for that user.
-          $query = "SELECT id FROM $tbl_users WHERE name='" . 
addslashes($value) . "'";
+          $query = "SELECT id FROM $tbl_users WHERE name='" . 
sql_escape($value) . "'";
           if ($Id >= 0)
           {
             $query .= " AND id!='$Id'";
@@ -607,7 +607,7 @@
             }
             break;
           default:
-            $value = "'" . addslashes($value) . "'";
+            $value = "'" . sql_escape($value) . "'";
             break;
         }
        

Modified: mrbs/trunk/web/functions_ical.inc
===================================================================
--- mrbs/trunk/web/functions_ical.inc   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/functions_ical.inc   2012-03-26 09:25:53 UTC (rev 2277)
@@ -106,7 +106,7 @@
   // Look and see if there's a component in the database
   $sql = "SELECT vtimezone, last_updated
             FROM $tbl_zoneinfo
-           WHERE timezone='" . addslashes($tz) . "'
+           WHERE timezone='" . sql_escape($tz) . "'
              AND outlook_compatible=$zoneinfo_outlook_compatible
            LIMIT 1";
   $res = sql_query($sql);
@@ -151,9 +151,9 @@
           $vtimezone = $new_vtimezone;
           // Update the database
           $sql = "UPDATE $tbl_zoneinfo
-                     SET vtimezone='" . addslashes($vtimezone) . "',
+                     SET vtimezone='" . sql_escape($vtimezone) . "',
                          last_updated=" . time() . "
-                   WHERE timezone='" . addslashes($tz) . "'
+                   WHERE timezone='" . sql_escape($tz) . "'
                      AND outlook_compatible=$zoneinfo_outlook_compatible";
           if (sql_command($sql) < 0)
           {
@@ -177,9 +177,9 @@
       {
         $sql = "INSERT INTO $tbl_zoneinfo
                 (timezone, outlook_compatible, vtimezone, last_updated)
-                VALUES ('" . addslashes($tz) . "', 
+                VALUES ('" . sql_escape($tz) . "', 
                         $zoneinfo_outlook_compatible,
-                        '" . addslashes($vtimezone) . "', " .
+                        '" . sql_escape($vtimezone) . "', " .
                         time() . ")";
         if (sql_command($sql) < 0)
         {
@@ -289,7 +289,7 @@
   // If we're using the 'db' auth rtpe, then look the username up in the users 
table
   if ($auth['type'] == 'db')
   {
-    $sql = "SELECT name FROM $tbl_users WHERE email='" . addslashes($email) . 
"'";
+    $sql = "SELECT name FROM $tbl_users WHERE email='" . sql_escape($email) . 
"'";
     $res = sql_query($sql);
     if ($res === FALSE)
     {

Modified: mrbs/trunk/web/functions_mail.inc
===================================================================
--- mrbs/trunk/web/functions_mail.inc   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/functions_mail.inc   2012-03-26 09:25:53 UTC (rev 2277)
@@ -209,7 +209,7 @@
   {
     $email = sql_query1("SELECT email 
                          FROM $tbl_users 
-                         WHERE name='" . addslashes($user) . "'
+                         WHERE name='" . sql_escape($user) . "'
                          LIMIT 1");
     if ($email == -1)
     {

Modified: mrbs/trunk/web/import.php
===================================================================
--- mrbs/trunk/web/import.php   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/import.php   2012-03-26 09:25:53 UTC (rev 2277)
@@ -40,7 +40,7 @@
   // know which area to put it in.
   if ($location_area == '')
   {
-    $sql = "SELECT COUNT(*) FROM $tbl_room WHERE room_name='" . 
addslashes($location_room) . "'";
+    $sql = "SELECT COUNT(*) FROM $tbl_room WHERE room_name='" . 
sql_escape($location_room) . "'";
     $count = sql_query1($sql);
     if ($count < 0)
     {
@@ -59,7 +59,7 @@
     }
     else // we've got a unique room name
     {
-      $sql = "SELECT id FROM $tbl_room WHERE room_name='" . 
addslashes($location_room) . "' LIMIT 1";
+      $sql = "SELECT id FROM $tbl_room WHERE room_name='" . 
sql_escape($location_room) . "' LIMIT 1";
       $id = sql_query1($sql);
       if ($id < 0)
       {
@@ -76,7 +76,7 @@
     // First of all get the area id
     $sql = "SELECT id
               FROM $tbl_area
-             WHERE area_name='" . addslashes($location_area) . "'
+             WHERE area_name='" . sql_escape($location_area) . "'
              LIMIT 1";
     $area_id = sql_query1($sql);
     if ($area_id < 0)
@@ -112,7 +112,7 @@
   // Now we've got the area_id get the room_id
   $sql = "SELECT id
             FROM $tbl_room
-           WHERE room_name='" . addslashes($location_room) . "'
+           WHERE room_name='" . sql_escape($location_room) . "'
              AND area_id=$area_id
            LIMIT 1";
   $room_id = sql_query1($sql);

Modified: mrbs/trunk/web/mrbs_sql.inc
===================================================================
--- mrbs/trunk/web/mrbs_sql.inc 2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/mrbs_sql.inc 2012-03-26 09:25:53 UTC (rev 2277)
@@ -330,14 +330,14 @@
         case 'ical_uid':
         case 'ical_recur_id':
           $sql_col[] = $key;
-          $sql_val[] = "'" . addslashes($data[$key]) . "'";
+          $sql_val[] = "'" . sql_escape($data[$key]) . "'";
           break;
       
         // special case - rep_opt
         case 'rep_opt':
           // pgsql doesn't like empty strings
           $sql_col[] = $key;
-          $sql_val[] = (empty($data[$key])) ? "'0'" : "'" . 
addslashes($data[$key]) . "'";
+          $sql_val[] = (empty($data[$key])) ? "'0'" : "'" . 
sql_escape($data[$key]) . "'";
           break;
           
         // special case - rep_num_weeks
@@ -378,7 +378,7 @@
                 }
                 else
                 {
-                  $value = "'" . addslashes($data[$key]) . "'";
+                  $value = "'" . sql_escape($data[$key]) . "'";
                 }
                 break;
             } // switch ($field_natures[$key])
@@ -798,8 +798,8 @@
   $now = time();
   $sql = "UPDATE $table SET";
   $sql .= " info_time=$now";
-  $sql .= ", info_user='" . addslashes($user) . "'";
-  $sql .= ", info_text='" . addslashes($note) . "'";
+  $sql .= ", info_user='" . sql_escape($user) . "'";
+  $sql .= ", info_text='" . sql_escape($note) . "'";
   $sql .= " WHERE id=$id";
   return sql_command($sql);
 }
@@ -1065,7 +1065,7 @@
   
   // Truncate the name field to the maximum length as a precaution.
   $name = substr($name, 0, $maxlength['area.area_name']);
-  $area_name_q = addslashes($name);
+  $area_name_q = sql_escape($name);
   // Acquire a mutex to lock out others who might be editing the area
   if (!sql_mutex_lock("$tbl_area"))
   {
@@ -1110,7 +1110,7 @@
         }
         else
         {
-          $sql_val[] = "'" . addslashes($area_defaults[$key]) . "'";
+          $sql_val[] = "'" . sql_escape($area_defaults[$key]) . "'";
         }
       }
       break;
@@ -1147,8 +1147,8 @@
   $name = substr($name, 0, $maxlength['room.room_name']);
   $description = substr($description, 0, $maxlength['room.description']);
   // Add SQL escaping
-  $room_name_q = addslashes($name);
-  $description_q = addslashes($description);
+  $room_name_q = sql_escape($name);
+  $description_q = sql_escape($description);
   if (empty($capacity))
   {
     $capacity = 0;

Modified: mrbs/trunk/web/mysql.inc
===================================================================
--- mrbs/trunk/web/mysql.inc    2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/mysql.inc    2012-03-26 09:25:53 UTC (rev 2277)
@@ -34,6 +34,22 @@
 }
 
 
+// Escapes special characters in a string for use in an SQL statement
+function sql_mysql_escape($str, $db_conn = null)
+{
+  sql_mysql_ensure_handle($db_conn);
+  
+  if (function_exists('mysql_real_escape_string'))
+  {
+    return mysql_real_escape_string($str, $db_conn);
+  }
+  else
+  {
+    return addslashes($str);
+  }
+}
+
+
 // Execute a non-SELECT SQL command (insert/update/delete).
 // Returns the number of tuples affected if OK (a number >= 0).
 // Returns -1 on error; use sql_error to get the error message.
@@ -260,7 +276,7 @@
 {
   sql_mysql_ensure_handle($db_conn);
 
-  return " BINARY `$fieldname`='" . addslashes($s) . "'";
+  return " BINARY `$fieldname`='" . sql_mysql_escape($s) . "'";
 }
 
 // Generate non-standard SQL to match a string anywhere in a field's value
@@ -340,7 +356,7 @@
 {
   sql_mysql_ensure_handle($db_conn);
 
-  $res = sql_mysql_query1("SHOW TABLES LIKE '".addslashes($table)."'");
+  $res = sql_mysql_query1("SHOW TABLES LIKE '".sql_mysql_escape($table)."'");
 
   return ($res == -1) ? FALSE : TRUE;
 }

Modified: mrbs/trunk/web/mysqli.inc
===================================================================
--- mrbs/trunk/web/mysqli.inc   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/mysqli.inc   2012-03-26 09:25:53 UTC (rev 2277)
@@ -34,6 +34,22 @@
 }
 
 
+// Escapes special characters in a string for use in an SQL statement
+function sql_mysqli_escape($str, $db_conn = null)
+{
+  sql_mysqli_ensure_handle($db_conn);
+  
+  if (function_exists('mysqli_real_escape_string'))
+  {
+    return mysqli_real_escape_string($db_conn, $str);
+  }
+  else
+  {
+    return addslashes($str);
+  }
+}
+
+
 // Execute a non-SELECT SQL command (insert/update/delete).
 // Returns the number of tuples affected if OK (a number >= 0).
 // Returns -1 on error; use sql_error to get the error message.
@@ -268,7 +284,7 @@
 {
   sql_mysqli_ensure_handle($db_conn);
 
-  return " BINARY `$fieldname`='" . addslashes($s) . "'";
+  return " BINARY `$fieldname`='" . sql_mysqli_escape($s) . "'";
 }
 
 // Generate non-standard SQL to match a string anywhere in a field's value
@@ -370,7 +386,7 @@
 {
   sql_mysqli_ensure_handle($db_conn);
 
-  $res = sql_mysqli_query1("SHOW TABLES LIKE '".addslashes($table)."'");
+  $res = sql_mysqli_query1("SHOW TABLES LIKE '".sql_mysqli_escape($table)."'");
 
   return ($res == -1) ? FALSE : TRUE;
 }

Modified: mrbs/trunk/web/pending.php
===================================================================
--- mrbs/trunk/web/pending.php  2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/pending.php  2012-03-26 09:25:53 UTC (rev 2277)
@@ -224,7 +224,7 @@
 // Ordinary users can only see their own bookings       
 if (!$is_admin)
 {
-  $sql .= " AND E.create_by='" . addslashes($user) . "'";
+  $sql .= " AND E.create_by='" . sql_escape($user) . "'";
 }
 // We want entries for a series to appear together so that we can display
 // them as a separate table below the main entry for the series. 

Modified: mrbs/trunk/web/pgsql.inc
===================================================================
--- mrbs/trunk/web/pgsql.inc    2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/pgsql.inc    2012-03-26 09:25:53 UTC (rev 2277)
@@ -42,6 +42,22 @@
 }
 
 
+// Escapes special characters in a string for use in an SQL statement
+function sql_pgsql_escape($str, $db_conn = null)
+{
+  sql_pgsql_ensure_handle($db_conn);
+  
+  if (function_exists('pg_escape_string'))
+  {
+    return pg_escape_string($db_conn, $str);
+  }
+  else
+  {
+    return addslashes($str);
+  }
+}
+
+
 // Execute a non-SELECT SQL command (insert/update/delete).
 // Returns the number of tuples affected if OK (a number >= 0).
 // Returns -1 on error; use sql_error to get the error message.
@@ -284,7 +300,7 @@
 {
   sql_pgsql_ensure_handle($db_conn);
 
-  return " \"$fieldname\"='" . addslashes($s) . "'";
+  return " \"$fieldname\"='" . sql_pgsql_escape($s) . "'";
 }
 
 
@@ -374,7 +390,7 @@
   sql_pgsql_ensure_handle($db_conn);
 
   $res = sql_pgsql_query1("SELECT relname FROM pg_class ".
-                          "WHERE relname = '".addslashes($table)."'");
+                          "WHERE relname = '".sql_pgsql_escape($table)."'");
 
   return ($res == -1) ? FALSE : TRUE;
 }

Modified: mrbs/trunk/web/report.php
===================================================================
--- mrbs/trunk/web/report.php   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/report.php   2012-03-26 09:25:53 UTC (rev 2277)
@@ -905,13 +905,13 @@
       $or_array = array();
       foreach ( $typematch as $type )
       {
-        $or_array[] = "E.type = '".addslashes($type)."'";
+        $or_array[] = "E.type = '".sql_escape($type)."'";
       }
       $sql .= "(". implode( " OR ", $or_array ) .")";
     }
     else
     {
-      $sql .= "E.type = '".addslashes($typematch[0])."'";
+      $sql .= "E.type = '".sql_escape($typematch[0])."'";
     }
   }
   if (!empty($namematch))
@@ -974,7 +974,7 @@
         // assume PHP5
         if (strpos(strtolower($option_value), strtolower($$var)) !== FALSE)
         {
-          $or_array[] = "E.$key='" . addslashes($option_key) . "'";
+          $or_array[] = "E.$key='" . sql_escape($option_key) . "'";
         }
       }
       if (count($or_array) > 0)
@@ -1026,8 +1026,8 @@
       //   - their own bookings, and others' public bookings if 
private_override is set to 'none'
       //   - just their own bookings, if private_override is set to 'private'
       $sql .= " AND ((A.private_override='public') OR
-                     (A.private_override='none' AND ((E.status&" . 
STATUS_PRIVATE . "=0) OR E.create_by = '" . addslashes($user) . "')) OR
-                     (A.private_override='private' AND E.create_by = '" . 
addslashes($user) . "'))";                
+                     (A.private_override='none' AND ((E.status&" . 
STATUS_PRIVATE . "=0) OR E.create_by = '" . sql_escape($user) . "')) OR
+                     (A.private_override='private' AND E.create_by = '" . 
sql_escape($user) . "'))";                
     }
     else
     {

Modified: mrbs/trunk/web/search.php
===================================================================
--- mrbs/trunk/web/search.php   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/search.php   2012-03-26 09:25:53 UTC (rev 2277)
@@ -216,7 +216,7 @@
         // assume PHP5
         if (strpos(strtolower($value), strtolower($search_str)) !== FALSE)
         {
-          $sql_pred .= " OR E." . $field['name'] . "='" . addslashes($key) . 
"'";
+          $sql_pred .= " OR E." . $field['name'] . "='" . sql_escape($key) . 
"'";
         }
       }
     }
@@ -244,8 +244,8 @@
     //   - their own bookings, and others' public bookings if private_override 
is set to 'none'
     //   - just their own bookings, if private_override is set to 'private'
     $sql_pred .= " AND ((A.private_override='public') OR
-                        (A.private_override='none' AND ((E.status&" . 
STATUS_PRIVATE . "=0) OR E.create_by = '" . addslashes($user) . "')) OR
-                        (A.private_override='private' AND E.create_by = '" . 
addslashes($user) . "'))";                
+                        (A.private_override='none' AND ((E.status&" . 
STATUS_PRIVATE . "=0) OR E.create_by = '" . sql_escape($user) . "')) OR
+                        (A.private_override='private' AND E.create_by = '" . 
sql_escape($user) . "'))";                
   }
   else
   {

Modified: mrbs/trunk/web/upgrade/15/post.inc
===================================================================
--- mrbs/trunk/web/upgrade/15/post.inc  2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/upgrade/15/post.inc  2012-03-26 09:25:53 UTC (rev 2277)
@@ -25,7 +25,7 @@
     }
     else
     {
-      $sql_val = "'" . addslashes($area_defaults[$key]) . "'";
+      $sql_val = "'" . sql_escape($area_defaults[$key]) . "'";
     }
     $sql = "UPDATE $tbl_area SET $key=$sql_val WHERE $key IS NULL";
     $res = sql_command($sql);

Modified: mrbs/trunk/web/upgrade/21/post.inc
===================================================================
--- mrbs/trunk/web/upgrade/21/post.inc  2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/upgrade/21/post.inc  2012-03-26 09:25:53 UTC (rev 2277)
@@ -23,7 +23,7 @@
     }
     else
     {
-      $sql_val = "'" . addslashes($area_defaults[$key]) . "'";
+      $sql_val = "'" . sql_escape($area_defaults[$key]) . "'";
     }
     $sql = "UPDATE $tbl_area SET $key=$sql_val WHERE $key IS NULL";
     $res = sql_command($sql);

Modified: mrbs/trunk/web/upgrade/6/post.inc
===================================================================
--- mrbs/trunk/web/upgrade/6/post.inc   2012-03-12 18:18:24 UTC (rev 2276)
+++ mrbs/trunk/web/upgrade/6/post.inc   2012-03-26 09:25:53 UTC (rev 2277)
@@ -37,7 +37,7 @@
   // Now populate the table with the existing admins
   foreach ($auth['admin'] as $admin_name)
   {
-    $sql = "UPDATE $tbl_users SET level=$max_level WHERE 
name='".addslashes($admin_name)."'";
+    $sql = "UPDATE $tbl_users SET level=$max_level WHERE 
name='".sql_escape($admin_name)."'";
     if (sql_command($sql) < 0)
     {
       fatal_error(0, "Error adding existing admins. " . sql_error());

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Mrbs-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mrbs-commits

Reply via email to