From 1eb9a57ac1216209a4d9adf87bc47ba19810d3b3 Mon Sep 17 00:00:00 2001 From: szukw000 Date: Tue, 13 Mar 2018 18:11:54 +0100 Subject: [PATCH] opj_mj2_extract: Avoid segfault for long filenames --- src/bin/mj2/opj_mj2_extract.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/bin/mj2/opj_mj2_extract.c b/src/bin/mj2/opj_mj2_extract.c index 9384dc6d..f55eb66f 100644 --- a/src/bin/mj2/opj_mj2_extract.c +++ b/src/bin/mj2/opj_mj2_extract.c @@ -82,7 +82,7 @@ int main(int argc, char *argv[]) mj2_sample_t *sample; unsigned char* frame_codestream; FILE *file, *outfile; - char outfilename[50]; + char outfilename[FILENAME_MAX]; mj2_dparameters_t parameters; if (argc != 3) { @@ -91,6 +91,11 @@ int main(int argc, char *argv[]) return 1; } + if (strlen(argv[2]) + 11 > sizeof(outfilename)) { + fprintf(stderr, "filename %d too long\n", strlen(argv[2]) + 11); + return 1; + } + file = fopen(argv[1], "rb"); if (!file) {