postgresql/src
Noah Misch e4a4fa2235 Fix handling of wide datetime input/output.
Many server functions use the MAXDATELEN constant to size a buffer for
parsing or displaying a datetime value.  It was much too small for the
longest possible interval output and slightly too small for certain
valid timestamp input, particularly input with a long timezone name.
The long input was rejected needlessly; the long output caused
interval_out() to overrun its buffer.  ECPG's pgtypes library has a copy
of the vulnerable functions, which bore the same vulnerabilities along
with some of its own.  In contrast to the server, certain long inputs
caused stack overflow rather than failing cleanly.  Back-patch to 8.4
(all supported versions).

Reported by Daniel Schüssler, reviewed by Tom Lane.

Security: CVE-2014-0063
2014-02-17 09:33:32 -05:00
..
backend Avoid repeated name lookups during table and index DDL. 2014-02-17 09:33:32 -05:00
bin Clean up error cases in psql's COPY TO STDOUT/FROM STDIN code. 2014-02-13 18:46:03 -05:00
common pgindent run for release 9.3 2013-05-29 16:58:43 -04:00
include Fix handling of wide datetime input/output. 2014-02-17 09:33:32 -05:00
interfaces Fix handling of wide datetime input/output. 2014-02-17 09:33:32 -05:00
makefiles Don't use deprecated dllwrap on Cygwin. 2014-02-01 16:13:32 -05:00
pl Prevent privilege escalation in explicit calls to PL validators. 2014-02-17 09:33:32 -05:00
port Fix unportable coding in tarCreateHeader(). 2014-02-16 20:01:21 -05:00
template Remove _FORTIFY_SOURCE 2012-10-10 21:42:38 -04:00
test Fix handling of wide datetime input/output. 2014-02-17 09:33:32 -05:00
timezone Ooops, forgot to remove solar87 and friends from src/timezone/Makefile. 2014-02-14 23:20:17 -05:00
tools Don't generate plain-text HISTORY and src/test/regress/README anymore. 2014-02-10 20:48:12 -05:00
tutorial Modernize string literal syntax in tutorial example. 2013-01-19 17:20:32 -05:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
bcc32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
DEVELOPERS Replace a couple of references to files that no longer exist in the source 2009-05-04 08:08:47 +00:00
Makefile Create libpgcommon, and move pg_malloc et al to it 2013-02-12 11:21:05 -03:00
Makefile.global.in Revert "Backpatch pgxs vpath build and installation fixes." 2013-10-07 22:32:04 -04:00
Makefile.shlib fix whitespace 2014-02-01 16:30:22 -05:00
nls-global.mk NLS: Use msgmerge --previous option 2012-12-13 23:12:12 -05:00
win32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00