From: | Quentin Rameau <quinq(at)fifth(dot)space> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | [PATCH] Fix missing argument handling in psql getopt |
Date: | 2019-08-25 10:06:17 |
Message-ID: | 20190825100617.GA6087@fifth.space |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
When passing an argument option with a missing argument, strcmp would
be called with the argv terminating NULL.
---
src/bin/psql/startup.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/bin/psql/startup.c b/src/bin/psql/startup.c
index 4730c73396..cffbfc864e 100644
--- a/src/bin/psql/startup.c
+++ b/src/bin/psql/startup.c
@@ -667,12 +667,13 @@ parse_psql_options(int argc, char *argv[], struct adhoc_opts *options)
break;
case '?':
/* Actual help option given */
- if (strcmp(argv[optind - 1], "-?") == 0)
+ if (optind <= argc &&
+ strcmp(argv[optind - 1], "-?") == 0)
{
usage(NOPAGER);
exit(EXIT_SUCCESS);
}
- /* unknown option reported by getopt */
+ /* unknown option or missing argument */
else
goto unknown_option;
break;
--
2.23.0
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2019-08-25 14:29:59 | Re: pg_upgrade: Error out on too many command-line arguments |
Previous Message | Sergei Kornilov | 2019-08-25 09:42:24 | Re: Change ereport level for QueuePartitionConstraintValidation |