diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2000-02-20 04:26:35 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2000-02-20 04:26:35 +0000 |
commit | 4467194b4479537c319a1842d27feaf027ac9fe2 (patch) | |
tree | 0ebcb234779f11c846f3a7b62f11f33ba6dfcb3e /src/backend/tcop/postgres.c | |
parent | e79b2dd5e7316c54c69a6d599d07b6bdf22e1d8b (diff) | |
download | postgresql-4467194b4479537c319a1842d27feaf027ac9fe2.tar.gz postgresql-4467194b4479537c319a1842d27feaf027ac9fe2.zip |
Reduce proc_exit(1) to proc_exit(0) for errors detected in backend
command line processing. As it stood, a bogus PGOPTIONS value from
a client would force a database system restart. Not bad as a denial-
of-service attack...
Diffstat (limited to 'src/backend/tcop/postgres.c')
-rw-r--r-- | src/backend/tcop/postgres.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c index 2415ef3c96d..1f333f46af0 100644 --- a/src/backend/tcop/postgres.c +++ b/src/backend/tcop/postgres.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.143 2000/02/19 22:10:47 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.144 2000/02/20 04:26:35 tgl Exp $ * * NOTES * this is the "main" module of the postgres backend and @@ -1256,7 +1256,7 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) (ShowParserStats || ShowPlannerStats || ShowExecutorStats)) { fprintf(stderr, "-s can not be used together with -t.\n"); - proc_exit(1); + proc_exit(0); } if (!DataDir) @@ -1264,7 +1264,7 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) fprintf(stderr, "%s does not know where to find the database system " "data. You must specify the directory that contains the " "database system either by specifying the -D invocation " - "option or by setting the PGDATA environment variable.\n\n", + "option or by setting the PGDATA environment variable.\n\n", argv[0]); proc_exit(1); } @@ -1324,7 +1324,7 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) if (errs || argc != optind || DBName == NULL) { usage(argv[0]); - proc_exit(1); + proc_exit(0); } pq_init(); /* initialize libpq at backend startup */ whereToSendOutput = Remote; @@ -1337,7 +1337,7 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) if (errs || argc - optind > 1) { usage(argv[0]); - proc_exit(1); + proc_exit(0); } else if (argc - optind == 1) DBName = argv[optind]; @@ -1345,7 +1345,7 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) { fprintf(stderr, "%s: USER undefined and no database specified\n", argv[0]); - proc_exit(1); + proc_exit(0); } /* @@ -1503,14 +1503,14 @@ PostgresMain(int argc, char *argv[], int real_argc, char *real_argv[]) if (!IsUnderPostmaster) { puts("\nPOSTGRES backend interactive interface "); - puts("$Revision: 1.143 $ $Date: 2000/02/19 22:10:47 $\n"); + puts("$Revision: 1.144 $ $Date: 2000/02/20 04:26:35 $\n"); } /* * Initialize the deferred trigger manager */ if (DeferredTriggerInit() != 0) - proc_exit(1); + proc_exit(0); SetProcessingMode(NormalProcessing); |