postgres.git / summary / log / commit / refs

commit    5dfd5063e242ccea2ba3fc70c19f5f84f9f8402c
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Sat Jul 10 23:29:16 2004 +0000
First released in: 8.0.0

    Defend against overrun of ExtraOptions array --- strictly paranoia,
    since the person or script starting the postmaster has to be trusted
    anyway.


src/backend/postmaster/postmaster.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index 5d908807b9d..ee934711ff7 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -37,7 +37,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/postmaster/postmaster.c,v 1.405 2004/06/24 21:02:55 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/postmaster/postmaster.c,v 1.406 2004/07/10 23:29:16 tgl Exp $ * * NOTES * @@ -450,8 +450,9 @@ PostmasterMain(int argc, char *argv[]) /* * Other options to pass to the backend on the command line */ - strcat(ExtraOptions, " "); - strcat(ExtraOptions, optarg); + snprintf(ExtraOptions + strlen(ExtraOptions), + sizeof(ExtraOptions) - strlen(ExtraOptions), + " %s", optarg); break; case 'p': SetConfigOption("port", optarg, PGC_POSTMASTER, PGC_S_ARGV); [parent: 99b225c528a3]