postgresql-9.5 (9.5.24-0ubuntu0.16.04.1) xenial-security; urgency=medium

  * New upstream version.
    + Block DECLARE CURSOR ... WITH HOLD and firing of deferred triggers
      within index expressions and materialized view queries (Noah Misch)

      This is essentially a leak in the security restricted operation sandbox
      mechanism.  An attacker having permission to create non-temporary SQL
      objects could parlay this leak to execute arbitrary SQL code as a
      superuser.

      The PostgreSQL Project thanks Etienne Stalmans for reporting this
      problem. (CVE-2020-25695)

    + Fix usage of complex connection-string parameters in pg_dump,
      pg_restore, clusterdb, reindexdb, and vacuumdb (Tom Lane)

      The -d parameter of pg_dump and pg_restore, or the --maintenance-db
      parameter of the other programs mentioned, can be a connection string
      containing multiple connection parameters rather than just a database
      name.  In cases where these programs need to initiate additional
      connections, such as parallel processing or processing of multiple
      databases, the connection string was forgotten and just the basic
      connection parameters (database name, host, port, and username) were
      used for the additional connections.  This could lead to connection
      failures if the connection string included any other essential
      information, such as non-default SSL or GSS parameters. Worse, the
      connection might succeed but not be encrypted as intended, or be
      vulnerable to man-in-the-middle attacks that the intended connection
      parameters would have prevented. (CVE-2020-25694)

    + When psql's \connect command re-uses connection parameters, ensure that
      all non-overridden parameters from a previous connection string are
      re-used (Tom Lane)

      This avoids cases where reconnection might fail due to omission of
      relevant parameters, such as non-default SSL or GSS options. Worse, the
      reconnection might succeed but not be encrypted as intended, or be
      vulnerable to man-in-the-middle attacks that the intended connection
      parameters would have prevented. This is largely the same problem as
      just cited for pg_dump et al, although psql's behavior is more complex
      since the user may intentionally override some connection parameters.
      (CVE-2020-25694)

    + Prevent psql's \gset command from modifying specially-treated variables
      (Noah Misch)

      \gset without a prefix would overwrite whatever variables the server
      told it to.  Thus, a compromised server could set specially-treated
      variables such as PROMPT1, giving the ability to execute arbitrary shell
      code in the user's session.

      The PostgreSQL Project thanks Nick Cleaton for reporting this problem.
      (CVE-2020-25696)

    + Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-24.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 12 Nov 2020 12:13:20 +0100

postgresql-9.5 (9.5.23-0ubuntu0.16.04.1) xenial-security; urgency=medium

  * New upstream release (LP: #1892335).
    - Make contrib modules' installation scripts more secure (Tom Lane)

      Attacks similar to those described in CVE-2018-1058 could be carried out
      against an extension installation script, if the attacker can create
      objects in either the extension's target schema or the schema of some
      prerequisite extension.  Since extensions often require superuser
      privilege to install, this can open a path to obtaining superuser
      privilege.  To mitigate this risk, be more careful about the search_path
      used to run an installation script; disable check_function_bodies within
      the script; and fix catalog-adjustment queries used in some contrib
      modules to ensure they are secure.  Also provide documentation to help
      third-party extension authors make their installation scripts secure.
      This is not a complete solution; extensions that depend on other
      extensions can still be at risk if installed carelessly.
      CVE-2020-14350

    - Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-22.html
      https://www.postgresql.org/docs/9.5/static/release-9-5-23.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 20 Aug 2020 11:29:10 +0200

postgresql-9.5 (9.5.21-0ubuntu0.16.04.1) xenial; urgency=medium

  * New upstream release (LP: #1863108)
    - A dump/restore is not required however, if you use the contrib/intarray
      extension with a GiST index, and you rely on indexed searches for the <@
      operator, see the release notes for details in regard to a related fix.
    - Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-20.html
      https://www.postgresql.org/docs/9.5/static/release-9-5-21.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Thu, 13 Feb 2020 15:18:20 +0100

postgresql-9.5 (9.5.19-0ubuntu0.16.04.1) xenial-security; urgency=medium

  * SECURITY UPDATE: New upstream release (LP: #1839058)
    - Require schema qualification to cast to a temporary type when using
      functional cast syntax (CVE-2019-10208)
    - Fix failure of ALTER TABLE ... ALTER COLUMN TYPE when altering multiple
      columns' types in one command. This fixes a regression introduced in the
      most recent minor releases
    - Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-19.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 06 Aug 2019 08:54:29 +0200

postgresql-9.5 (9.5.18-0ubuntu0.16.04.1) xenial; urgency=medium

   * New upstream release (LP: #1833211)
    - Fix failure of ALTER TABLE ... ALTER COLUMN TYPE when the table has
      a partial exclusion constraint
    - Fix failure of COMMENT command for comments on domain constraints
    - Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-18.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 18 Jun 2019 13:11:33 +0200

postgresql-9.5 (9.5.17-0ubuntu0.16.04.1) xenial-security; urgency=medium

  * New upstream release(s) (LP: #1828012)
    - Prevent row-level security policies from being bypassed via
      selectivity estimators.
      CVE-2019-10130
    - Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-17.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 07 May 2019 11:20:37 +0200

postgresql-9.5 (9.5.16-0ubuntu0.16.04.1) xenial; urgency=medium

  * New upstream release(s) (LP: #1815665)
    - By default, panic instead of retrying after fsync() failure, to avoid
      possible data corruption. A new server parameter "guc-data-sync-retry"
      has been added to control this;
    - d/p/pg-9.5-Disallow-setting-client_min_messages-higher-than-ERR.patch:
      to retain SRU stability this patch reverts one of the changes which
      disabled the error suppression by setting client_min_messages to
      fatal or panic. Overall that means no change to the handling of
      client_min_messages due to this upload.
    - Details about these and many further changes can be found at:
      https://www.postgresql.org/docs/9.5/static/release-9-5-15.html
      https://www.postgresql.org/docs/9.5/static/release-9-5-16.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 12 Feb 2019 21:25:00 +0100

postgresql-9.5 (9.5.14-0ubuntu0.16.04) xenial-security; urgency=medium

  * New upstream release (LP: #1786938)
    - Fix failure to reset libpq's state fully between connection attempts
      .
      An unprivileged user of dblink or postgres_fdw could bypass the checks
      intended to prevent use of server-side credentials, such as a ~/.pgpass
      file owned by the operating-system user running the server.  Servers
      allowing peer authentication on local connections are particularly
      vulnerable.  Other attacks such as SQL injection into a postgres_fdw
      session are also possible. Attacking postgres_fdw in this way requires
      the ability to create a foreign server object with selected connection
      parameters, but any user with access to dblink could exploit the
      problem. In general, an attacker with the ability to select the
      connection parameters for a libpq-using application could cause
      mischief, though other plausible attack scenarios are harder to think
      of. Our thanks to Andrew Krasichkov for reporting this issue.
      (CVE-2018-10915)
    - Fix INSERT ... ON CONFLICT UPDATE through a view that isn't just SELECT
      FROM ...
      .
      Erroneous expansion of an updatable view could lead to crashes or
      attribute ... has the wrong type errors, if the view's SELECT list
      doesn't match one-to-one with the underlying table's columns.
      Furthermore, this bug could be leveraged to allow updates of columns
      that an attacking user lacks UPDATE privilege for, if that user has
      INSERT and UPDATE privileges for some other column(s) of the table. Any
      user could also use it for disclosure of server memory.
      (CVE-2018-10925)
    - d/libecpg-dev.install: Add new pgtypes header.
    - d/libpgtypes3.symbols: Add new pgtypes symbol.
    - Details about these and changes can be found at
      https://www.postgresql.org/docs/9.5/static/release-9-5-14.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 14 Aug 2018 14:49:16 +0200

postgresql-9.5 (9.5.13-0ubuntu0.16.04) xenial; urgency=medium

  * New upstream release (LP: #1769888)
    - A dump/restore is not required for those running 9.5.X.
      However, if the function marking mistakes mentioned in the first
      changelog entry affect you, you will want to take steps to
      correct your database catalogs.
    - Details about changes can be found at
      https://www.postgresql.org/docs/9.5/static/release-9-5-13.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 08 May 2018 15:17:49 +0200

postgresql-9.5 (9.5.12-0ubuntu0.16.04) xenial-security; urgency=medium

  * New upstream release (LP: #1752271)
    If you run an installation in which not all users are mutually
    trusting, or if you maintain an application or extension that is
    intended for use in arbitrary situations, it is strongly recommended
    that you read the documentation changes described in the first changelog
    entry below, and take suitable steps to ensure that your installation or
    code is secure.

    Also, the changes described in the second changelog entry below may
    cause functions used in index expressions or materialized views to fail
    during auto-analyze, or when reloading from a dump.  After upgrading,
    monitor the server logs for such problems, and fix affected functions.

    - Document how to configure installations and applications to guard
      against search-path-dependent trojan-horse attacks from other users

      Using a search_path setting that includes any schemas writable by a
      hostile user enables that user to capture control of queries and then
      run arbitrary SQL code with the permissions of the attacked user. While
      it is possible to write queries that are proof against such hijacking,
      it is notationally tedious, and it's very easy to overlook holes.
      Therefore, we now recommend configurations in which no untrusted schemas
      appear in one's search path.
      (CVE-2018-1058)

    - Avoid use of insecure search_path settings in pg_dump and other client
      programs

      pg_dump, pg_upgrade, vacuumdb and other PostgreSQL-provided applications
      were themselves vulnerable to the type of hijacking described in the
      previous changelog entry; since these applications are commonly run by
      superusers, they present particularly attractive targets.  To make them
      secure whether or not the installation as a whole has been secured,
      modify them to include only the pg_catalog schema in their search_path
      settings. Autovacuum worker processes now do the same, as well.

      In cases where user-provided functions are indirectly executed by these
      programs -- for example, user-provided functions in index expressions --
      the tighter search_path may result in errors, which will need to be
      corrected by adjusting those user-provided functions to not assume
      anything about what search path they are invoked under.  That has always
      been good practice, but now it will be necessary for correct behavior.
      (CVE-2018-1058)

    - Details about other changes can be found at
      https://www.postgresql.org/docs/9.5/static/release-9-5-12.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 28 Feb 2018 09:59:08 +0100

postgresql-9.5 (9.5.11-0ubuntu0.16.04) xenial-security; urgency=medium

  * New upstream release (LP: #1747676)
    - Ensure that all temporary files made by pg_upgrade are non-world-readable
      (CVE-2018-1053)
    - Details about other changes at full changelog:
      https://www.postgresql.org/docs/9.5/static/release-9-5-11.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 06 Feb 2018 15:20:02 +0100

postgresql-9.5 (9.5.10-0ubuntu0.16.04) xenial-security; urgency=medium

  * New upstream release (LP: #1730661)
    - Previously, a race condition allowed some table rows to be omitted from
      the index. It may be necessary to reindex existing BRIN indexes to
      recover from past occurrences of this problem.
    - Details about other changes at full changelog:
      https://www.postgresql.org/docs/9.5/static/release-9-5-10.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 07 Nov 2017 14:33:50 +0100

postgresql-9.5 (9.5.9-0ubuntu0.16.04) xenial; urgency=medium

  * New upstream release (LP: #1713979)
    - fix upgrade regressions of the former security release
    - Details about other changes at full changelog:
      https://www.postgresql.org/docs/9.5/static/release-9-5-9.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Wed, 30 Aug 2017 13:01:13 +0200

postgresql-9.5 (9.5.8-0ubuntu0.16.04.1) xenial-security; urgency=medium

  * SECURITY UPDATE: Update to 9.5.8 to fix security issues
    - Further restrict visibility of pg_user_mappings.umoptions, to protect
      passwords stored as user mapping options (CVE-2017-7547)
    - Disallow empty passwords in all password-based authentication methods
      (CVE-2017-7546)
    - Make lo_put() check for UPDATE privilege on the target large object
      (CVE-2017-7548)

 -- Marc Deslauriers <marc.deslauriers@ubuntu.com>  Mon, 14 Aug 2017 08:45:32 -0400

postgresql-9.5 (9.5.7-0ubuntu0.16.04) xenial; urgency=medium

  * New upstream release (LP: #1690730)
    - Restrict visibility of pg_user_mappings.umoptions, to protect passwords
      stored as user mapping options (CVE-2017-7486)
    - Prevent exposure of statistical information via leaky operators
      (CVE-2017-7484)
    - Restore libpq's recognition of the PGREQUIRESSL environment variable
      (CVE-2017-7485)

    - A dump/restore is not required for those running 9.5.X.
    - However, if you use foreign data servers that make use of user passwords
      for authentication, see the first changelog entry.
    - Also, if you are using third-party replication tools that depend on
      "logical decoding", see the fourth changelog entry.

    - Details about other changes at full changelog:
      https://www.postgresql.org/docs/9.5/static/release-9-5-7.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Mon, 15 May 2017 08:46:07 +0200

postgresql-9.5 (9.5.6-0ubuntu0.16.04) xenial; urgency=medium

  * New upstream release (LP: #1664478)
    - Fix a race condition that could cause indexes built with CREATE INDEX
      CONCURRENTLY to be corrupt (Pavan Deolasee, Tom Lane).
      If CREATE INDEX CONCURRENTLY was used to build an index that depends on
      a column not previously indexed, then rows inserted or updated by
      transactions that ran concurrently with the CREATE INDEX command could
      have received incorrect index entries.  If you suspect this may have
      happened, the most reliable solution is to rebuild affected indexes
      after installing this update

    - Details about other changes:
      http://www.postgresql.org/docs/9.5/static/release-9-5-6.html

 -- Christian Ehrhardt <christian.ehrhardt@canonical.com>  Tue, 14 Feb 2017 09:29:09 +0100

postgresql-9.5 (9.5.5-0ubuntu0.16.04) xenial-proposed; urgency=medium

  * New upstream bug fix release (LP: #1637236)
    - Fix WAL-logging of truncation of relation free space maps and visibility
      maps.
      It was possible for these files to not be correctly restored during
      crash recovery, or to be written incorrectly on a standby server. Bogus
      entries in a free space map could lead to attempts to access pages that
      have been truncated away from the relation itself, typically producing
      errors like "could not read block XXX: read only 0 of 8192 bytes".
      Checksum failures in the visibility map are also possible, if
      checksumming is enabled.

      Procedures for determining whether there is a problem and repairing it
      if so are discussed at
         https://wiki.postgresql.org/wiki/Free_Space_Map_Problems.

    - Details about other changes:
      http://www.postgresql.org/docs/9.5/static/release-9-5-5.html

 -- Martin Pitt <martin.pitt@ubuntu.com>  Thu, 27 Oct 2016 18:03:43 +0200

postgresql-9.5 (9.5.4-0ubuntu0.16.04) xenial-security; urgency=medium

  * New upstream security/bug fix release (LP: #1614113)
    - Fix possible mis-evaluation of nested CASE-WHEN expressions
      A CASE expression appearing within the test value subexpression of
      another CASE could become confused about whether its own test value was
      null or not.  Also, inlining of a SQL function implementing the equality
      operator used by a CASE expression could result in passing the wrong
      test value to functions called within a CASE expression in the SQL
      function's body.  If the test values were of different data types, a
      crash might result; moreover such situations could be abused to allow
      disclosure of portions of server memory.  (CVE-2016-5423)

    - Fix client programs' handling of special characters in database and role
      names
      Numerous places in vacuumdb and other client programs could become
      confused by database and role names containing double quotes or
      backslashes.  Tighten up quoting rules to make that safe. Also, ensure
      that when a conninfo string is used as a database name parameter to
      these programs, it is correctly treated as such throughout.

      Fix handling of paired double quotes in psql's \connect and \password
      commands to match the documentation.

      Introduce a new -reuse-previous option in psql's \connect command to
      allow explicit control of whether to re-use connection parameters from a
      previous connection.  (Without this, the choice is based on whether the
      database name looks like a conninfo string, as before.)  This allows
      secure handling of database names containing special characters in
      pg_dumpall scripts.

      pg_dumpall now refuses to deal with database and role names containing
      carriage returns or newlines, as it seems impractical to quote those
      characters safely on Windows.  In future we may reject such names on the
      server side, but that step has not been taken yet.

      These are considered security fixes because crafted object names
      containing special characters could have been used to execute commands
      with superuser privileges the next time a superuser executes pg_dumpall
      or other routine maintenance operations.  (CVE-2016-5424)

    - Details about other fixes:
      https://www.postgresql.org/docs/9.5/static/release-9-5-4.html

 -- Martin Pitt <martin.pitt@ubuntu.com>  Wed, 17 Aug 2016 16:12:33 +0200

postgresql-9.5 (9.5.3-0ubuntu0.16.04) xenial-proposed; urgency=medium

  * New upstream bug fix release (LP: #1581016)
    - Details: http://www.postgresql.org/docs/9.5/static/release-9-5-3.html

 -- Martin Pitt <martin.pitt@ubuntu.com>  Thu, 12 May 2016 14:57:49 +0200

postgresql-9.5 (9.5.2-1) unstable; urgency=medium

  * New upstream version.

    + Disable abbreviated keys for string sorting in non-C locales
      (Robert Haas)

      PostgreSQL 9.5 introduced logic for speeding up comparisons of string
      data types by using the standard C library function strxfrm() as a
      substitute for strcoll().  It now emerges that most versions of glibc
      (Linux's implementation of the C library) have buggy implementations of
      strxfrm() that, in some locales, can produce string comparison results
      that do not match strcoll().  Until this problem can be better
      characterized, disable the optimization in all non-C locales.  (C locale
      is safe since it uses neither strcoll() nor strxfrm().)

      Unfortunately, this problem affects not only sorting but also entry
      ordering in B-tree indexes, which means that B-tree indexes on text,
      varchar, or char columns may now be corrupt if they sort according to an
      affected locale and were built or modified under PostgreSQL 9.5.0 or
      9.5.1. Users should REINDEX indexes that might be affected.

      It is not possible at this time to give an exhaustive list of
      known-affected locales.  C locale is known safe, and there is no
      evidence of trouble in English-based locales such as en_US, but some
      other popular locales such as de_DE are affected in most glibc versions.

    + Maintain row-security status properly in cached plans (Stephen Frost)

      In a session that performs queries as more than one role, the plan cache
      might incorrectly re-use a plan that was generated for another role ID,
      thus possibly applying the wrong set of policies when row-level security
      (RLS) is in use. (CVE-2016-2193)

    + Add must-be-superuser checks to some new contrib/pageinspect functions
      (Andreas Seltenreich)

      Most functions in the pageinspect extension that inspect bytea values
      disallow calls by non-superusers, but brin_page_type() and
      brin_metapage_info() failed to do so.  Passing contrived bytea values to
      them might crash the server or disclose a few bytes of server memory.
      Add the missing permissions checks to prevent misuse. (CVE-2016-3065)

  * 02-relax-sslkey-permscheck.patch: Replace with what went upstream in 9.6.
  * Stop suggesting the use of identd.
  * Modernize server package description.
  * Recommend sysstat.

 -- Christoph Berg <myon@debian.org>  Tue, 29 Mar 2016 12:22:08 +0200

postgresql-9.5 (9.5.1-1) unstable; urgency=medium

  * New upstream version.
    + Fix infinite loops and buffer-overrun problems in regular expressions.
      Very large character ranges in bracket expressions could cause infinite
      loops in some cases, and memory overwrites in other cases.
      (CVE-2016-0773)

  * Fix installation path of contrib examples.

 -- Christoph Berg <christoph.berg@credativ.de>  Wed, 10 Feb 2016 13:04:39 +0100

postgresql-9.5 (9.5.0-3) unstable; urgency=medium

  * Move spinlock flag to common configure flags, the python3 build needs that
    as well.
  * Update debian/copyright to please DEP-5.

 -- Christoph Berg <christoph.berg@credativ.de>  Thu, 04 Feb 2016 13:08:13 +0100

postgresql-9.5 (9.5.0-2) unstable; urgency=medium

  * Disable spinlocks on alpha. Performance will be poor, but at least they
    will have a libpq package.
  * Add logrotate to test dependencies.

 -- Christoph Berg <christoph.berg@credativ.de>  Wed, 13 Jan 2016 11:12:10 +0100

postgresql-9.5 (9.5.0-1) unstable; urgency=medium

  * First 9.5 release.
  * src/bin/pg_xlogdump/Makefile: Sort list of objects to make build
    reproducible.

 -- Christoph Berg <myon@debian.org>  Mon, 04 Jan 2016 23:00:37 +0100

postgresql-9.5 (9.5~rc1-1) experimental; urgency=medium

  * First 9.5 release candidate.

 -- Christoph Berg <christoph.berg@credativ.de>  Thu, 17 Dec 2015 16:10:44 +0100

postgresql-9.5 (9.5~beta2-2) experimental; urgency=medium

  * debian/rules: Work around dh_install -X not working on globs.
    (See also #350570)

 -- Christoph Berg <christoph.berg@credativ.de>  Mon, 16 Nov 2015 16:53:39 +0100

postgresql-9.5 (9.5~beta2-1) experimental; urgency=medium

  * Second 9.5 beta release.
  * 64-pg_upgrade-sockdir: Fix off-by-one error in max path length.
  * libpq5.symbols: PQsslAttributes was renamed to PQsslAttributeNames.

 -- Christoph Berg <christoph.berg@credativ.de>  Tue, 10 Nov 2015 12:50:00 +0100

postgresql-9.5 (9.5~beta1-1) experimental; urgency=medium

  * First 9.5 beta release.

    A dump/restore using pg_dumpall, or use of pg_upgrade, is required for
    those wishing to migrate data from any previous 9.5 release.

    Version 9.5 contains a number of changes that may affect compatibility
    with previous releases.  See the release notes for details.

  * debian/rules: Remove broken "generate POT files for translators" code.
  * debian/rules: Call dh without --parallel, it's not supported upstream.
  * postgresql postrm: Don't clean {/etc,/var/lib,/var/log}/postgresql on 
    purge.  (Closes: #793861)

 -- Christoph Berg <christoph.berg@credativ.de>  Tue, 06 Oct 2015 11:12:34 +0200

postgresql-9.5 (9.5~alpha2-1) experimental; urgency=medium

  * New alpha release.
  * Add docbook-xml to build-depends.

 -- Christoph Berg <christoph.berg@credativ.de>  Tue, 04 Aug 2015 11:17:47 +0200

postgresql-9.5 (9.5~alpha1-1) experimental; urgency=medium

  * First 9.5 alpha release.

 -- Christoph Berg <christoph.berg@credativ.de>  Tue, 30 Jun 2015 17:50:22 +0200

postgresql-9.5 (9.5~~devel-1) UNRELEASED; urgency=low

  * New major upstream version 9.5.

 -- Christoph Berg <myon@debian.org>  Fri, 13 Jun 2014 14:59:18 +0200
