]> git.pld-linux.org Git - packages/lha.git/blame - lha-dir_length_bounds_check.patch
- x32 rebuild
[packages/lha.git] / lha-dir_length_bounds_check.patch
CommitLineData
74f0c8af 1--- src/header.c 2002-07-19 17:23:58.000000000 +0900
2+++ src/header.c 2004-06-16 09:49:23.000000000 +0900
3@@ -648,8 +648,17 @@
4 }
5
6 if (dir_length) {
7+ if ((dir_length + name_length) > sizeof(dirname)) {
8+ fprintf(stderr, "Insufficient buffer size\n");
9+ exit(112);
10+ }
11 strcat(dirname, hdr->name);
12- strcpy(hdr->name, dirname);
13+
14+ if ((dir_length + name_length) > sizeof(hdr->name)) {
15+ fprintf(stderr, "Insufficient buffer size\n");
16+ exit(112);
17+ }
18+ strncpy(hdr->name, dirname, sizeof(hdr->name));
19 name_length += dir_length;
20 }
This page took 0.129442 seconds and 4 git commands to generate.