diff options
| author | Even Rouault <even.rouault@mines-paris.org> | 2019-04-23 21:53:57 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-04-23 21:53:57 +0200 |
| commit | 8cfd9ca89c89b52a3c22d5ee7ecbe06791924a15 (patch) | |
| tree | d769eb2ed41cefc2abfb794a35ce006fea689bd9 /src/apps/cs2cs.cpp | |
| parent | 28cdae60149de8b38f7e10072326bb714b79ef0a (diff) | |
| parent | 8a31ed4036888ff2039919f8c998a90cb2143bc2 (diff) | |
| download | PROJ-8cfd9ca89c89b52a3c22d5ee7ecbe06791924a15.tar.gz PROJ-8cfd9ca89c89b52a3c22d5ee7ecbe06791924a15.zip | |
Merge pull request #1434 from rouault/valid_format_string
proj/cs2cs: validate value of -f parameter to avoid potential crashes (fixes #124)
Diffstat (limited to 'src/apps/cs2cs.cpp')
| -rw-r--r-- | src/apps/cs2cs.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/apps/cs2cs.cpp b/src/apps/cs2cs.cpp index 877a68ff..40b0d584 100644 --- a/src/apps/cs2cs.cpp +++ b/src/apps/cs2cs.cpp @@ -45,6 +45,7 @@ #include "proj.h" #include "proj_internal.h" #include "emess.h" +#include "utils.h" // clang-format on #define MAX_LINE 1000 @@ -522,6 +523,13 @@ int main(int argc, char **argv) { if (eargc == 0) /* if no specific files force sysin */ eargv[eargc++] = const_cast<char *>("-"); + if( oform ) { + if( !validate_form_string_for_numbers(oform) ) { + emess(3, "invalid format string"); + exit(0); + } + } + /* * If the user has requested inverse, then just reverse the * coordinate systems. |
