]> granicus.if.org Git - postgresql/commitdiff
Stamp release 7.3.10.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 5 May 2005 20:09:12 +0000 (20:09 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 5 May 2005 20:09:12 +0000 (20:09 +0000)
HISTORY
INSTALL
configure
configure.in
doc/bug.template
doc/src/sgml/release.sgml
src/include/pg_config.h.win32
src/interfaces/libpq/libpq.rc

diff --git a/HISTORY b/HISTORY
index cdc62df282c773fb75f0b5ef78b7e64348173f00..d787920e95e8328ab8f1abb11709bb3c405ec989 100644 (file)
--- a/HISTORY
+++ b/HISTORY
@@ -1,6 +1,83 @@
 
                                Release Notes
 
+                               Release 7.3.10
+
+     Release date: 2005-05-05
+
+   This release contains a variety of fixes from 7.3.9, including several
+   security-related issues.
+     _________________________________________________________________
+
+                        Migration to version 7.3.10
+
+   A dump/restore is not required for those running 7.3.X. However, it is
+   one possible way of handling a significant security problem that has
+   been found in the initial contents of 7.3.X system catalogs. A
+   dump/initdb/reload sequence using 7.3.10's initdb will automatically
+   correct this problem.
+
+   The security problem is that the built-in character set encoding
+   conversion functions can be invoked from SQL commands by unprivileged
+   users, but the functions were not designed for such use and are not
+   secure against malicious choices of arguments. The fix involves
+   changing the declared parameter list of these functions so that they
+   can no longer be invoked from SQL commands. (This does not affect
+   their normal use by the encoding conversion machinery.) It is strongly
+   recommended that all installations repair this error, either by initdb
+   or by following the manual repair procedure given below. The error at
+   least allows unprivileged database users to crash their server
+   process, and may allow unprivileged users to gain the privileges of a
+   database superuser.
+
+   If you wish not to do an initdb, perform the following procedure
+   instead. As the database superuser, do:
+BEGIN;
+UPDATE pg_proc SET proargtypes[3] = 'internal'::regtype
+WHERE pronamespace = 11 AND pronargs = 5
+      AND proargtypes[2] = 'cstring'::regtype;
+-- The command should report having updated 90 rows;
+-- if not, rollback and investigate instead of committing!
+COMMIT;
+
+   The above procedure must be carried out in *each* database of an
+   installation, including template1, and ideally including template0 as
+   well. If you do not fix the template databases then any subsequently
+   created databases will contain the same error. template1 can be fixed
+   in the same way as any other database, but fixing template0 requires
+   additional steps. First, from any database issue
+UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
+
+   Next connect to template0 and perform the above repair procedure.
+   Finally, do
+-- re-freeze template0:
+VACUUM FREEZE;
+-- and protect it against future alterations:
+UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
+     _________________________________________________________________
+
+                                  Changes
+
+     * Change encoding function signature to prevent misuse
+     * Fix comparisons of TIME WITH TIME ZONE values
+       The comparison code was wrong in the case where the
+       --enable-integer-datetimes configuration switch had been used.
+       NOTE: if you have an index on a TIME WITH TIME ZONE column, it
+       will need to be "REINDEX"ed after installing this update, because
+       the fix corrects the sort order of column values.
+     * Fix EXTRACT(EPOCH) for TIME WITH TIME ZONE values
+     * Fix mis-display of negative fractional seconds in INTERVAL values
+       This error only occurred when the --enable-integer-datetimes
+       configuration switch had been used.
+     * Additional buffer overrun checks in plpgsql (Neil)
+     * Fix pg_dump to dump trigger names containing % correctly (Neil)
+     * Prevent to_char(interval) from dumping core for month-related
+       formats
+     * Fix "contrib/pgcrypto" for newer OpenSSL builds (Marko Kreen)
+     * Still more 64-bit fixes for "contrib/intagg"
+     * Prevent incorrect optimization of functions returning RECORD
+     _________________________________________________________________
+
                                Release 7.3.9
 
      Release date: 2005-01-31
@@ -969,6 +1046,30 @@ Contrib
      * Move /contrib/pg_controldata, pg_resetxlog into main tree (Bruce)
      * Fixes to /contrib/cube (Bruno Wolff)
      * Improve /contrib/fulltextindex (Christopher)
+     _________________________________________________________________
+
+                               Release 7.2.8
+
+     Release date: 2005-05-05
+
+   This release contains a variety of fixes from 7.2.7, including one
+   security-related issue.
+     _________________________________________________________________
+
+                         Migration to version 7.2.8
+
+   A dump/restore is not required for those running 7.2.X.
+     _________________________________________________________________
+
+                                  Changes
+
+     * Fix EXTRACT(EPOCH) for TIME WITH TIME ZONE values
+     * Additional buffer overrun checks in plpgsql (Neil)
+     * Fix pg_dump to dump index names and trigger names containing %
+       correctly (Neil)
+     * Prevent to_char(interval) from dumping core for month-related
+       formats
+     * Fix "contrib/pgcrypto" for newer OpenSSL builds (Marko Kreen)
      _________________________________________________________________
 
                                Release 7.2.7
diff --git a/INSTALL b/INSTALL
index f76c778c0a7616739e0621298a936c120d9a4684..ca4c9795517f1371e3edfd6ccc954a16573b5cf8 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -182,7 +182,7 @@ Substitute your paths appropriately.
       if you need to do this.
       To make the backup, you can use the "pg_dumpall" command from the version
       you are currently running. For best results, however, try to use the
-      "pg_dumpall" command from PostgreSQL 7.3.9, since this version contains
+      "pg_dumpall" command from PostgreSQL 7.3.10, since this version contains
       bug fixes and improvements over older versions. While this advice might
       seem idiosyncratic since you haven't installed the new version yet, it is
       advisable to follow it if you plan to install the new version in parallel
@@ -214,7 +214,7 @@ Substitute your paths appropriately.
 
         mv /usr/local/pgsql /usr/local/pgsql.old
 
-After you have installed PostgreSQL 7.3.9, create a new database directory and
+After you have installed PostgreSQL 7.3.10, create a new database directory and
 start the new server. Remember that you must execute these commands while
 logged in to the special database user account (which you already have if you
 are upgrading).
index 15ed328183cc6a7ca9d45d5c8f852f5d745f7bd6..1dc6d94470d825402530b87992e5fca14ab2295f 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.53 for PostgreSQL 7.3.9.
+# Generated by GNU Autoconf 2.53 for PostgreSQL 7.3.10.
 #
 # Report bugs to <pgsql-bugs@postgresql.org>.
 #
@@ -258,8 +258,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
 # Identity of this package.
 PACKAGE_NAME='PostgreSQL'
 PACKAGE_TARNAME='postgresql'
-PACKAGE_VERSION='7.3.9'
-PACKAGE_STRING='PostgreSQL 7.3.9'
+PACKAGE_VERSION='7.3.10'
+PACKAGE_STRING='PostgreSQL 7.3.10'
 PACKAGE_BUGREPORT='pgsql-bugs@postgresql.org'
 
 ac_unique_file="src/backend/access/common/heaptuple.c"
@@ -769,7 +769,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures PostgreSQL 7.3.9 to adapt to many kinds of systems.
+\`configure' configures PostgreSQL 7.3.10 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -830,7 +830,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of PostgreSQL 7.3.9:";;
+     short | recursive ) echo "Configuration of PostgreSQL 7.3.10:";;
    esac
   cat <<\_ACEOF
 
@@ -949,7 +949,7 @@ fi
 test -n "$ac_init_help" && exit 0
 if $ac_init_version; then
   cat <<\_ACEOF
-PostgreSQL configure 7.3.9
+PostgreSQL configure 7.3.10
 generated by GNU Autoconf 2.53
 
 Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
@@ -966,7 +966,7 @@ cat >&5 <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by PostgreSQL $as_me 7.3.9, which was
+It was created by PostgreSQL $as_me 7.3.10, which was
 generated by GNU Autoconf 2.53.  Invocation command line was
 
   $ $0 $@
@@ -16175,7 +16175,7 @@ _ASBOX
 } >&5
 cat >&5 <<_CSEOF
 
-This file was extended by PostgreSQL $as_me 7.3.9, which was
+This file was extended by PostgreSQL $as_me 7.3.10, which was
 generated by GNU Autoconf 2.53.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16237,7 +16237,7 @@ _ACEOF
 
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-PostgreSQL config.status 7.3.9
+PostgreSQL config.status 7.3.10
 configured by $0, generated by GNU Autoconf 2.53,
   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
 
index 437d73c5e466d079aef4af1538f8620a7f321f59..031dc3baf88375b775366f00addafec03ce7894b 100644 (file)
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-dnl $Header: /cvsroot/pgsql/configure.in,v 1.217.2.16 2005/01/30 20:08:14 tgl Exp $
+dnl $Header: /cvsroot/pgsql/configure.in,v 1.217.2.17 2005/05/05 20:09:10 tgl Exp $
 dnl
 dnl Developers, please strive to achieve this order:
 dnl
@@ -21,7 +21,7 @@ dnl The GNU folks apparently haven't heard that some people don't use
 dnl Texinfo. Use this sorcery to use "docdir" instead of "infodir".
 m4_define([info], [doc])
 m4_define([infodir], [docdir])
-AC_INIT([PostgreSQL], [7.3.9], [pgsql-bugs@postgresql.org])
+AC_INIT([PostgreSQL], [7.3.10], [pgsql-bugs@postgresql.org])
 m4_undefine([infodir])
 m4_undefine([info])
 AC_SUBST(docdir)
index dc18f60ef13224717551d4639d56fe92481ba70c..b83260846914e588692962601b83f18b72b9f9b3 100644 (file)
@@ -31,7 +31,7 @@ System Configuration:
 
   Operating System (example: Linux 2.4.18)     :
 
-  PostgreSQL version (example: PostgreSQL 7.3.9):  PostgreSQL 7.3.9
+  PostgreSQL version (example: PostgreSQL 7.3.10):  PostgreSQL 7.3.10
 
   Compiler used (example: gcc 3.3.5)           :
 
index a68f83ed82b2433972ab5a561bf6598d8e32bc56..5f9870b4382f6349c6b8e56143d42d4ad5e33a7b 100644 (file)
 <!--
-$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.163.2.20 2005/01/30 20:08:14 tgl Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.163.2.21 2005/05/05 20:09:11 tgl Exp $
 -->
 
 <appendix id="release">
  <title>Release Notes</title>
 
+  <sect1 id="release-7-3-10">
+   <title>Release 7.3.10</title>
+
+   <note>
+   <title>Release date</title>
+   <simpara>2005-05-05</simpara>
+   </note>
+
+   <para>
+    This release contains a variety of fixes from 7.3.9, including several
+    security-related issues.
+   </para>
+
+   <sect2>
+    <title>Migration to version 7.3.10</title>
+
+    <para>
+     A dump/restore is not required for those running 7.3.X.  However,
+     it is one possible way of handling a significant security problem
+     that has been found in the initial contents of 7.3.X system
+     catalogs.  A dump/initdb/reload sequence using 7.3.10's initdb will
+     automatically correct this problem.
+    </para>
+
+    <para>
+     The security problem is that the built-in character set encoding
+     conversion functions can be invoked from SQL commands by unprivileged
+     users, but the functions were not designed for such use and are not
+     secure against malicious choices of arguments.  The fix involves changing
+     the declared parameter list of these functions so that they can no longer
+     be invoked from SQL commands.  (This does not affect their normal use
+     by the encoding conversion machinery.)
+     It is strongly recommended that all installations repair this error,
+     either by initdb or by following the manual repair procedure given
+     below.  The error at least allows unprivileged database users to crash
+     their server process, and may allow unprivileged users to gain the
+     privileges of a database superuser.
+    </para>
+
+    <para>
+     If you wish not to do an initdb, perform the following procedure instead.
+     As the database superuser, do:
+
+<programlisting>
+BEGIN;
+UPDATE pg_proc SET proargtypes[3] = 'internal'::regtype
+WHERE pronamespace = 11 AND pronargs = 5
+      AND proargtypes[2] = 'cstring'::regtype;
+-- The command should report having updated 90 rows;
+-- if not, rollback and investigate instead of committing!
+COMMIT;
+</programlisting>
+    </para>
+
+    <para>
+     The above procedure must be carried out in <emphasis>each</> database
+     of an installation, including <literal>template1</>, and ideally
+     including <literal>template0</> as well.  If you do not fix the
+     template databases then any subsequently created databases will contain
+     the same error.  <literal>template1</> can be fixed in the same way
+     as any other database, but fixing <literal>template0</> requires
+     additional steps.  First, from any database issue
+<programlisting>
+UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
+</programlisting>
+      Next connect to <literal>template0</> and perform the above repair
+      procedure.  Finally, do
+<programlisting>
+-- re-freeze template0:
+VACUUM FREEZE;
+-- and protect it against future alterations:
+UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
+</programlisting>
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Changes</title>
+
+<itemizedlist>
+<listitem><para>Change encoding function signature to prevent
+misuse</para></listitem>
+<listitem><para>Fix comparisons of <type>TIME WITH TIME ZONE</> values</para>
+<para>
+The comparison code was wrong in the case where the
+<literal>--enable-integer-datetimes</> configuration switch had been used.
+NOTE: if you have an index on a <type>TIME WITH TIME ZONE</> column,
+it will need to be <command>REINDEX</>ed after installing this update, because
+the fix corrects the sort order of column values.
+</para></listitem>
+<listitem><para>Fix <function>EXTRACT(EPOCH)</> for
+<type>TIME WITH TIME ZONE</> values</para></listitem>
+<listitem><para>Fix mis-display of negative fractional seconds in
+<type>INTERVAL</> values</para>
+<para>
+This error only occurred when the
+<literal>--enable-integer-datetimes</> configuration switch had been used.
+</para></listitem>
+<listitem><para>Additional buffer overrun checks in plpgsql
+(Neil)</para></listitem>
+<listitem><para>Fix pg_dump to dump trigger names containing <literal>%</>
+correctly (Neil)</para></listitem>
+<listitem><para>Prevent <function>to_char(interval)</> from dumping core for
+month-related formats</para></listitem>
+<listitem><para>Fix <filename>contrib/pgcrypto</> for newer OpenSSL builds
+(Marko Kreen)</para></listitem>
+<listitem><para>Still more 64-bit fixes for
+<filename>contrib/intagg</></para></listitem>
+<listitem><para>Prevent incorrect optimization of functions returning
+<type>RECORD</></para></listitem>
+</itemizedlist>
+
+  </sect2>
+ </sect1>
+
   <sect1 id="release-7-3-9">
    <title>Release 7.3.9</title>
 
@@ -1166,6 +1281,46 @@ operations on bytea columns (Joe)</para></listitem>
   </sect2>
  </sect1>
 
+  <sect1 id="release-7-2-8">
+   <title>Release 7.2.8</title>
+
+   <note>
+   <title>Release date</title>
+   <simpara>2005-05-05</simpara>
+   </note>
+
+   <para>
+    This release contains a variety of fixes from 7.2.7, including one
+    security-related issue.
+   </para>
+
+   <sect2>
+    <title>Migration to version 7.2.8</title>
+
+    <para>
+     A dump/restore is not required for those running 7.2.X.
+    </para>
+   </sect2>
+
+   <sect2>
+    <title>Changes</title>
+
+<itemizedlist>
+<listitem><para>Fix <function>EXTRACT(EPOCH)</> for
+<type>TIME WITH TIME ZONE</> values</para></listitem>
+<listitem><para>Additional buffer overrun checks in plpgsql
+(Neil)</para></listitem>
+<listitem><para>Fix pg_dump to dump index names and trigger names containing
+<literal>%</> correctly (Neil)</para></listitem>
+<listitem><para>Prevent <function>to_char(interval)</> from dumping core for
+month-related formats</para></listitem>
+<listitem><para>Fix <filename>contrib/pgcrypto</> for newer OpenSSL builds
+(Marko Kreen)</para></listitem>
+</itemizedlist>
+
+  </sect2>
+ </sect1>
+
   <sect1 id="release-7-2-7">
    <title>Release 7.2.7</title>
 
index dd0c2379d46ea914989414eb5ffea428663bb96f..c885eed2f796328cb3817dbcb97dcbf58593fab8 100644 (file)
@@ -3,8 +3,8 @@
 /*
  * Parts of pg_config.h that you get with autoconf on other systems
  */
-#define PG_VERSION "7.3.9"
-#define PG_VERSION_STR "7.3.9 (win32)"
+#define PG_VERSION "7.3.10"
+#define PG_VERSION_STR "7.3.10 (win32)"
 
 #define SYSCONFDIR ""
 
index 184bb41f1862ba822fc34d3d3302467a3f33d157..efec8dcd52c3ae656e551775527bcef48a29846a 100644 (file)
@@ -1,8 +1,8 @@
 #include <winver.h>
 
 VS_VERSION_INFO VERSIONINFO
- FILEVERSION 7,3,9,0
- PRODUCTVERSION 7,3,9,0
+ FILEVERSION 7,3,10,0
+ PRODUCTVERSION 7,3,10,0
  FILEFLAGSMASK 0x3fL
  FILEFLAGS 0
  FILEOS VOS__WINDOWS32
@@ -15,13 +15,13 @@ BEGIN
         BEGIN
             VALUE "CompanyName", "\0"
             VALUE "FileDescription", "PostgreSQL Access Library\0"
-            VALUE "FileVersion", "7, 3, 9, 0\0"
+            VALUE "FileVersion", "7, 3, 10, 0\0"
             VALUE "InternalName", "libpq\0"
             VALUE "LegalCopyright", "Copyright (C) 2003\0"
             VALUE "LegalTrademarks", "\0"
             VALUE "OriginalFilename", "libpq.dll\0"
             VALUE "ProductName", "PostgreSQL\0"
-            VALUE "ProductVersion", "7, 3, 9, 0\0"
+            VALUE "ProductVersion", "7, 3, 10, 0\0"
         END
     END
     BLOCK "VarFileInfo"