summaryrefslogtreecommitdiff
path: root/databases/postgresql95
diff options
context:
space:
mode:
authoradam <adam>2016-08-23 06:28:15 +0000
committeradam <adam>2016-08-23 06:28:15 +0000
commitaae04cac871c8c5b15416e49b19195ec45fea770 (patch)
tree904e5d0da37d765da22cfa34aea3e5048403d994 /databases/postgresql95
parentda1dbd45b13d9f53270772ef882c8d04a88b1ea1 (diff)
downloadpkgsrc-aae04cac871c8c5b15416e49b19195ec45fea770.tar.gz
The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 9.5.4, 9.4.9, 9.3.14, 9.2.18 and 9.1.23. This release fixes two security issues. It also patches a number of other bugs reported over the last three months. Users who rely on security isolation between database users should update as soon as possible. Other users should plan to update at the next convenient downtime.
Security Issues --------------- Two security holes have been closed by this release: CVE-2016-5423: certain nested CASE expressions can cause the server to crash. CVE-2016-5424: database and role names with embedded special characters can allow code injection during administrative operations like pg_dumpall. The fix for the second issue also adds an option, -reuse-previous, to psql's \connect command. pg_dumpall will also refuse to handle database and role names containing line breaks after the update. For more information on these issues and how they affect backwards-compatibility, see the Release Notes. Bug Fixes and Improvements -------------------------- This update also fixes a number of bugs reported in the last few months. Some of these issues affect only version 9.5, but many affect all supported versions: Fix misbehaviors of IS NULL/IS NOT NULL with composite values Fix three areas where INSERT ... ON CONFLICT failed to work properly with other SQL features. Make INET and CIDR data types properly reject bad IPv6 values Prevent crash in "point ## lseg" operator for NaN input Avoid possible crash in pg_get_expr() Fix several one-byte buffer over-reads in to_number() Don't needlessly plan query if WITH NO DATA is specified Avoid crash-unsafe state in expensive heap_update() paths Fix hint bit update during WAL replay of row locking operations Avoid unnecessary "could not serialize access" with FOR KEY SHARE Avoid crash in postgres -C when the specified variable is a null string Fix two issues with logical decoding and subtransactions Ensure that backends see up-to-date statistics for shared catalogs Prevent possible failure when vacuuming multixact IDs in an upgraded database When a manual ANALYZE specifies columns, don't reset changes_since_analyze Fix ANALYZE's overestimation of n_distinct for columns with nulls Fix bug in b-tree mark/restore processing Fix building of large (bigger than shared_buffers) hash indexes Prevent infinite loop in GiST index build with NaN values Fix possible crash during a nearest-neighbor indexscan Fix "PANIC: failed to add BRIN tuple" error Prevent possible crash during background worker shutdown Many fixes for issues in parallel pg_dump and pg_restore Make pg_basebackup accept -Z 0 as no compression Make regression tests safe for Danish and Welsh locales
Diffstat (limited to 'databases/postgresql95')
-rw-r--r--databases/postgresql95/Makefile3
-rw-r--r--databases/postgresql95/Makefile.common4
-rw-r--r--databases/postgresql95/distinfo14
-rw-r--r--databases/postgresql95/patches/patch-src_timezone_localtime.c31
-rw-r--r--databases/postgresql95/patches/patch-src_timezone_private.h15
-rw-r--r--databases/postgresql95/patches/patch-src_timezone_strftime.c13
-rw-r--r--databases/postgresql95/patches/patch-src_timezone_zic.c78
7 files changed, 8 insertions, 150 deletions
diff --git a/databases/postgresql95/Makefile b/databases/postgresql95/Makefile
index b24a660e58c..9747a604ff6 100644
--- a/databases/postgresql95/Makefile
+++ b/databases/postgresql95/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.4 2016/07/09 06:38:03 wiz Exp $
+# $NetBSD: Makefile,v 1.5 2016/08/23 06:28:16 adam Exp $
PKGNAME= ${DISTNAME:C/-/95-/}
-PKGREVISION= 1
COMMENT= Robust, next generation, object-relational DBMS
DEPENDS+= postgresql95-client>=${PKGVERSION_NOREV}:../../databases/postgresql95-client
diff --git a/databases/postgresql95/Makefile.common b/databases/postgresql95/Makefile.common
index 5cc134ce231..b793ea01467 100644
--- a/databases/postgresql95/Makefile.common
+++ b/databases/postgresql95/Makefile.common
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.5 2016/06/19 21:09:57 fhajny Exp $
+# $NetBSD: Makefile.common,v 1.6 2016/08/23 06:28:16 adam Exp $
#
# This Makefile fragment is included by all PostgreSQL packages built from
# the main sources of the PostgreSQL distribution except jdbc-postgresql.
@@ -16,7 +16,7 @@
# used by databases/postgresql95-pltcl/Makefile
# used by databases/postgresql95-server/Makefile
-DISTNAME= postgresql-9.5.3
+DISTNAME= postgresql-9.5.4
CATEGORIES= databases
MASTER_SITES= ${MASTER_SITE_PGSQL:=source/v${PKGVERSION_NOREV}/}
EXTRACT_SUFX= .tar.bz2
diff --git a/databases/postgresql95/distinfo b/databases/postgresql95/distinfo
index 4bb25d0527e..9e4de4fe239 100644
--- a/databases/postgresql95/distinfo
+++ b/databases/postgresql95/distinfo
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.3 2016/05/23 14:27:35 adam Exp $
+$NetBSD: distinfo,v 1.4 2016/08/23 06:28:16 adam Exp $
-SHA1 (postgresql-9.5.3.tar.bz2) = bd8dcbc8c4882468675dcc93263182a27d4ff201
-RMD160 (postgresql-9.5.3.tar.bz2) = f9193c48e6d0927d3e39c016db39dbafef8a8274
-SHA512 (postgresql-9.5.3.tar.bz2) = 7275dbde0c1b795f3a491d45464c69a97fbfd0e66a7fe62ba00e97747908df0df19bf65e104e10e049e31a8cf484c9d9f29eb75ff6a3875cb087559e25744c29
-Size (postgresql-9.5.3.tar.bz2) = 18455394 bytes
+SHA1 (postgresql-9.5.4.tar.bz2) = bdbbecf691354a689c599631256d41eaa8824c66
+RMD160 (postgresql-9.5.4.tar.bz2) = 496a4bb2b1417361a9880bfe527a77865f9c88e1
+SHA512 (postgresql-9.5.4.tar.bz2) = e5220bc967443d54b9dcff7ba5aefccedbe1c219f953eb0d67254c709d52b0e647d1dc473446640804165b596fc5b75fa4ff8d63696123b87d8096c3a7795c34
+Size (postgresql-9.5.4.tar.bz2) = 18496299 bytes
SHA1 (patch-config_missing) = c2d7d742922ba6861e7660c75b7b53f09e564813
SHA1 (patch-config_perl.m4) = e035132b1c281a75752d570ac5e29a11176c25c5
SHA1 (patch-configure) = 59fe9a768caf8a5d308acac60c28bc6bb2c40632
@@ -18,7 +18,3 @@ SHA1 (patch-src_interfaces_libpq_Makefile) = 61bcf84eb69b6ec9faabab0b61913766f4b
SHA1 (patch-src_makefiles_Makefile.solaris) = 0168f5bc105ffc89d5db40907a08966d8465f5a0
SHA1 (patch-src_pl_plperl_GNUmakefile) = 6ee3e431f46ce5c2a94df499504b2b8bd458bbef
SHA1 (patch-src_pl_plperl_plperl.h) = bd663fa80a47f7b82ce689060750fa6e631fbc61
-SHA1 (patch-src_timezone_localtime.c) = 622f57bc1d10f07ab73f86765cbf587eece57085
-SHA1 (patch-src_timezone_private.h) = 85dac95e40efc16270885087f868aeb76e1b9214
-SHA1 (patch-src_timezone_strftime.c) = 25102dce1b9b22385353af23500636fb18e3bf64
-SHA1 (patch-src_timezone_zic.c) = ed04d781845239ce5dc7c6fca406ce62c10a9605
diff --git a/databases/postgresql95/patches/patch-src_timezone_localtime.c b/databases/postgresql95/patches/patch-src_timezone_localtime.c
deleted file mode 100644
index 473d1c90aa0..00000000000
--- a/databases/postgresql95/patches/patch-src_timezone_localtime.c
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD: patch-src_timezone_localtime.c,v 1.1 2016/02/25 21:37:35 tnn Exp $
-
---- src/timezone/localtime.c.orig 2009-06-11 16:49:15.000000000 +0200
-+++ src/timezone/localtime.c
-@@ -81,20 +81,20 @@ static pg_time_t detzcode64(const char *
- static int differ_by_repeat(pg_time_t t1, pg_time_t t0);
- static const char *getzname(const char *strp);
- static const char *getqzname(const char *strp, int delim);
--static const char *getnum(const char *strp, int *nump, int min, int max);
-+static const char *getnum(const char *strp, int *nump, const int min, const int max);
- static const char *getsecs(const char *strp, long *secsp);
- static const char *getoffset(const char *strp, long *offsetp);
- static const char *getrule(const char *strp, struct rule * rulep);
- static void gmtload(struct state * sp);
--static struct pg_tm *gmtsub(const pg_time_t *timep, long offset,
-+static struct pg_tm *gmtsub(const pg_time_t *timep, const long offset,
- struct pg_tm * tmp);
--static struct pg_tm *localsub(const pg_time_t *timep, long offset,
-+static struct pg_tm *localsub(const pg_time_t *timep, const long offset,
- struct pg_tm * tmp, const pg_tz *tz);
- static int increment_overflow(int *number, int delta);
--static pg_time_t transtime(pg_time_t janfirst, int year,
-- const struct rule * rulep, long offset);
-+static pg_time_t transtime(pg_time_t janfirst, const int year,
-+ const struct rule * rulep, const long offset);
- static int typesequiv(const struct state * sp, int a, int b);
--static struct pg_tm *timesub(const pg_time_t *timep, long offset,
-+static struct pg_tm *timesub(const pg_time_t *timep, const long offset,
- const struct state * sp, struct pg_tm * tmp);
-
- /* GMT timezone */
diff --git a/databases/postgresql95/patches/patch-src_timezone_private.h b/databases/postgresql95/patches/patch-src_timezone_private.h
deleted file mode 100644
index 02d9bfa6144..00000000000
--- a/databases/postgresql95/patches/patch-src_timezone_private.h
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_timezone_private.h,v 1.1 2016/02/25 21:37:35 tnn Exp $
-
---- src/timezone/private.h.orig 2009-06-11 16:49:15.000000000 +0200
-+++ src/timezone/private.h
-@@ -51,8 +51,8 @@ extern int unlink(const char *filename);
- extern char *icalloc(int nelem, int elsize);
- extern char *icatalloc(char *old, const char *new);
- extern char *icpyalloc(const char *string);
--extern char *imalloc(int n);
--extern void *irealloc(void *pointer, int size);
-+extern char *imalloc(const int n);
-+extern void *irealloc(void *pointer, const int size);
- extern void icfree(char *pointer);
- extern void ifree(char *pointer);
- extern const char *scheck(const char *string, const char *format);
diff --git a/databases/postgresql95/patches/patch-src_timezone_strftime.c b/databases/postgresql95/patches/patch-src_timezone_strftime.c
deleted file mode 100644
index bf87446d546..00000000000
--- a/databases/postgresql95/patches/patch-src_timezone_strftime.c
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-src_timezone_strftime.c,v 1.1 2016/02/25 21:37:35 tnn Exp $
-
---- src/timezone/strftime.c.orig 2009-06-11 16:49:15.000000000 +0200
-+++ src/timezone/strftime.c
-@@ -89,7 +89,7 @@ static const struct lc_time_T C_time_loc
- };
-
- static char *_add(const char *, char *, const char *);
--static char *_conv(int, const char *, char *, const char *);
-+static char *_conv(const int, const char *, char *, const char *);
- static char *_fmt(const char *, const struct pg_tm *, char *,
- const char *, int *);
- static char *_yconv(const int, const int, const int, const int,
diff --git a/databases/postgresql95/patches/patch-src_timezone_zic.c b/databases/postgresql95/patches/patch-src_timezone_zic.c
deleted file mode 100644
index 7c001f4cefe..00000000000
--- a/databases/postgresql95/patches/patch-src_timezone_zic.c
+++ /dev/null
@@ -1,78 +0,0 @@
-$NetBSD: patch-src_timezone_zic.c,v 1.1 2016/02/25 21:37:35 tnn Exp $
-
---- src/timezone/zic.c.orig 2010-03-16 07:17:04.000000000 +0000
-+++ src/timezone/zic.c
-@@ -121,51 +121,51 @@ struct zone
-
- extern int link(const char *fromname, const char *toname);
- static void addtt(const pg_time_t starttime, int type);
--static int addtype(long gmtoff, const char *abbr, int isdst,
-- int ttisstd, int ttisgmt);
--static void leapadd(const pg_time_t t, int positive, int rolling, int count);
-+static int addtype(const long gmtoff, const char *abbr, const int isdst,
-+ const int ttisstd, const int ttisgmt);
-+static void leapadd(const pg_time_t t, const int positive, const int rolling, int count);
- static void adjleap(void);
- static void associate(void);
- static int ciequal(const char *ap, const char *bp);
--static void convert(long val, char *buf);
-+static void convert(const long val, char *buf);
- static void dolink(const char *fromfile, const char *tofile);
- static void doabbr(char *abbr, const char *format,
-- const char *letters, int isdst, int doquotes);
--static void eat(const char *name, int num);
--static void eats(const char *name, int num,
-- const char *rname, int rnum);
--static long eitol(int i);
-+ const char *letters, const int isdst, int doquotes);
-+static void eat(const char *name, const int num);
-+static void eats(const char *name, const int num,
-+ const char *rname, const int rnum);
-+static long eitol(const int i);
- static void error(const char *message);
- static char **getfields(char *buf);
- static long gethms(const char *string, const char *errstrng,
-- int signable);
-+ const int signable);
- static void infile(const char *filename);
--static void inleap(char **fields, int nfields);
--static void inlink(char **fields, int nfields);
--static void inrule(char **fields, int nfields);
--static int inzcont(char **fields, int nfields);
--static int inzone(char **fields, int nfields);
--static int inzsub(char **fields, int nfields, int iscont);
-+static void inleap(char **fields, const int nfields);
-+static void inlink(char **fields, const int nfields);
-+static void inrule(char **fields, const int nfields);
-+static int inzcont(char **fields, const int nfields);
-+static int inzone(char **fields, const int nfields);
-+static int inzsub(char **fields, const int nfields, const int iscont);
- static int itsabbr(const char *abbr, const char *word);
- static int itsdir(const char *name);
- static int lowerit(int c);
- static char *memcheck(char *tocheck);
- static int mkdirs(char *filename);
- static void newabbr(const char *abbr);
--static long oadd(long t1, long t2);
--static void outzone(const struct zone * zp, int ntzones);
--static void puttzcode(long code, FILE *fp);
-+static long oadd(const long t1, const long t2);
-+static void outzone(const struct zone * zp, const int ntzones);
-+static void puttzcode(const long code, FILE *fp);
- static int rcomp(const void *leftp, const void *rightp);
--static pg_time_t rpytime(const struct rule * rp, int wantedy);
-+static pg_time_t rpytime(const struct rule * rp, const int wantedy);
- static void rulesub(struct rule * rp,
- const char *loyearp, const char *hiyearp,
- const char *typep, const char *monthp,
- const char *dayp, const char *timep);
- static void setboundaries(void);
--static pg_time_t tadd(const pg_time_t t1, long t2);
-+static pg_time_t tadd(const pg_time_t t1, const long t2);
- static void usage(FILE *stream, int status);
- static void writezone(const char *name, const char *string);
--static int yearistype(int year, const char *type);
-+static int yearistype(const int year, const char *type);
-
- static int charcnt;
- static int errors;