]>
Commit | Line | Data |
---|---|---|
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 | } |