aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/misc/trace.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1999-01-01 04:48:49 +0000
committerBruce Momjian <bruce@momjian.us>1999-01-01 04:48:49 +0000
commitf0fbd7b87e4b2e282c2cb7cd448214770d6af9bd (patch)
tree94e78b45d539c61400c9c418582e24b90e395e19 /src/backend/utils/misc/trace.c
parentd8ae7ffb2f81587d513951e5244f5cd97db508e8 (diff)
downloadpostgresql-f0fbd7b87e4b2e282c2cb7cd448214770d6af9bd.tar.gz
postgresql-f0fbd7b87e4b2e282c2cb7cd448214770d6af9bd.zip
Some security, since we now have vsnprintf, I remade an old patch
with some extra ugly sprintfs fixed. More work in this area is needed still. Göran Thyni
Diffstat (limited to 'src/backend/utils/misc/trace.c')
-rw-r--r--src/backend/utils/misc/trace.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/backend/utils/misc/trace.c b/src/backend/utils/misc/trace.c
index 0f58a122dda..def34162f24 100644
--- a/src/backend/utils/misc/trace.c
+++ b/src/backend/utils/misc/trace.c
@@ -108,7 +108,7 @@ tprintf(int flag, const char *fmt,...)
#ifdef ELOG_TIMESTAMPS
strcpy(line, tprintf_timestamp());
#endif
- vsprintf(line + TIMESTAMP_SIZE, fmt, ap);
+ vsnprintf(line + TIMESTAMP_SIZE, ELOG_MAXLEN, fmt, ap);
va_end(ap);
#ifdef USE_SYSLOG
@@ -138,7 +138,7 @@ tprintf1(const char *fmt, ... )
#ifdef ELOG_TIMESTAMPS
strcpy(line, tprintf_timestamp());
#endif
- vsprintf(line+TIMESTAMP_SIZE, fmt, ap);
+ vsnprintf(line+TIMESTAMP_SIZE, ELOG_MAXLEN, fmt, ap);
va_end(ap);
#ifdef USE_SYSLOG
@@ -166,7 +166,7 @@ eprintf(const char *fmt,...)
#ifdef ELOG_TIMESTAMPS
strcpy(line, tprintf_timestamp());
#endif
- vsprintf(line + TIMESTAMP_SIZE, fmt, ap);
+ vsnprintf(line + TIMESTAMP_SIZE, ELOG_MAXLEN, fmt, ap);
va_end(ap);
#ifdef USE_SYSLOG
@@ -344,7 +344,7 @@ read_pg_options(SIGNAL_ARGS)
return;
}
- sprintf(buffer, "%s/%s", DataDir, "pg_options");
+ snprintf(buffer, BUF_SIZE - 1, "%s/%s", DataDir, "pg_options");
if ((fd = open(buffer, O_RDONLY)) < 0)
return;