]>
Commit | Line | Data |
---|---|---|
ed2eb387 JB |
1 | --- camwire2-2.0.0-Source/examples/cammonitor/cammonitor.c.orig 2023-07-09 10:46:29.034985838 +0200 |
2 | +++ camwire2-2.0.0-Source/examples/cammonitor/cammonitor.c 2023-07-09 11:49:33.674482685 +0200 | |
3 | @@ -2340,20 +2340,23 @@ static void filename_framenumber(char *n | |
4 | const int strip, | |
5 | const long frameno) | |
6 | { | |
7 | - size_t namelen, tokenindex; | |
8 | + size_t namelen, tokenindex, outlen; | |
9 | char *token; | |
10 | ||
11 | namelen = strlen(filename); | |
12 | token = strstr(filename, FRAMENUMBER_TOKEN); | |
13 | if (token == NULL) tokenindex = namelen; | |
14 | else tokenindex = token - filename; | |
15 | - strncpy(new_name, filename, tokenindex); | |
16 | - new_name[tokenindex] = '\0'; | |
17 | + | |
18 | + outlen = (tokenindex < MAX_FILENAME - 12) ? tokenindex : (MAX_FILENAME - 12); | |
19 | + memcpy(new_name, filename, outlen); | |
20 | + new_name[outlen] = '\0'; | |
21 | if (token != NULL) | |
22 | { | |
23 | if (!strip) sprintf(&new_name[tokenindex], "%011ld", frameno); | |
24 | tokenindex += strlen(FRAMENUMBER_TOKEN); | |
25 | } | |
26 | + if (tokenindex + strlen(filename + tokenindex) + 1 <= MAX_FILENAME) | |
27 | strcat(new_name, &filename[tokenindex]); | |
28 | } | |
29 | ||
30 | @@ -2817,7 +2820,8 @@ static void settings_load(const Camwire_ | |
31 | set->save_num_images = new_settings.save_num_images; | |
32 | set->save_delay = new_settings.save_delay; | |
33 | strncpy(set->imagefilename, new_settings.imagefilename, | |
34 | - MAX_FILENAME); | |
35 | + MAX_FILENAME-1); | |
36 | + set->imagefilename[MAX_FILENAME-1] = '\0'; | |
37 | } | |
38 | else | |
39 | { | |
42338f77 JB |
40 | --- camwire2-2.0.0-Source/camwire/camwire.c.orig 2015-05-21 23:38:31.000000000 +0200 |
41 | +++ camwire2-2.0.0-Source/camwire/camwire.c 2023-07-09 12:05:54.227004109 +0200 | |
42 | @@ -3355,6 +3355,7 @@ static FILE * open_named_conf_file(const | |
43 | } | |
44 | } | |
45 | strncat(conffilename, filename, CAMWIRE_ID_MAX_CHARS); | |
46 | + conffilename[CAMWIRE_ID_MAX_CHARS] = '\n'; | |
47 | strncat(conffilename, CONFFILE_EXTENSION, | |
48 | CONFFILE_EXTENSION_MAX_CHARS); | |
49 | return fopen(conffilename, "r"); |