]> git.pld-linux.org Git - packages/camwire.git/blob - camwire-bounds.patch
- added more fixes for gcc 13
[packages/camwire.git] / camwire-bounds.patch
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         {
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");
This page took 0.076583 seconds and 3 git commands to generate.