summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2018-06-16 18:45:47 +0000
committerTom Lane2018-06-16 18:45:47 +0000
commit5d923eb29bb643e311680bab329363d8a9a9768a (patch)
treef5951e2418dadd03f7f1b1d61b0ed3b29d616118
parent0dcf68e5a1f1c600bdf29b47cab30a62301a7af1 (diff)
Use snprintf not sprintf in pg_waldump's timestamptz_to_str.
This could only cause an issue if strftime returned a ridiculously long timezone name, which seems unlikely; and it wouldn't qualify as a security problem even then, since pg_waldump (nee pg_xlogdump) is a debug tool not part of the server. But gcc 8 has started issuing warnings about it, so let's use snprintf and be safe. Backpatch to 9.3 where this code was added. Discussion: https://postgr.es/m/[email protected]
-rw-r--r--src/bin/pg_waldump/compat.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bin/pg_waldump/compat.c b/src/bin/pg_waldump/compat.c
index 6ff9eb7e77..6d73f557d3 100644
--- a/src/bin/pg_waldump/compat.c
+++ b/src/bin/pg_waldump/compat.c
@@ -58,7 +58,8 @@ timestamptz_to_str(TimestampTz dt)
strftime(ts, sizeof(ts), "%Y-%m-%d %H:%M:%S", ltime);
strftime(zone, sizeof(zone), "%Z", ltime);
- sprintf(buf, "%s.%06d %s", ts, (int) (dt % USECS_PER_SEC), zone);
+ snprintf(buf, sizeof(buf), "%s.%06d %s",
+ ts, (int) (dt % USECS_PER_SEC), zone);
return buf;
}