12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- $OpenBSD: patch-gnats_gen-closed-date_c,v 1.1 2003/08/25 23:35:06 brad Exp $
- --- gnats/gen-closed-date.c.orig Tue Oct 26 23:22:29 1999
- +++ gnats/gen-closed-date.c Wed Jul 2 13:23:13 2003
- @@ -70,9 +70,10 @@ void usage (), version ();
- static int
- get_closed ()
- {
- - char *final1, *final2, str[133], *from_start, *to_start, from[32], to[32];
- + char *final1, *final2, *from_start, *to_start, from[32], to[32];
- char *p, *c, *when_start, when[133], *new_audit, *copy_ptr;
- int len, from_len, to_len, closed_date_set = 0, changed_separator;
- + size_t audit_len;
-
- p = pr[AUDIT_TRAIL].value;
-
- @@ -83,7 +84,8 @@ get_closed ()
- return (1);
- }
-
- - new_audit = xmalloc (strlen (p) * 2);
- + audit_len = strlen (p) * 2;
- + new_audit = xmalloc (len);
- new_audit[0] = '\0';
- copy_ptr = p;
-
- @@ -105,8 +107,8 @@ get_closed ()
- } else {
- /* Change - to -> here */
- final1++;
- - strncat (new_audit, copy_ptr, final1 - copy_ptr);
- - strcat (new_audit, ">");
- + strncat (new_audit, copy_ptr, final1 - copy_ptr); /* XXX */
- + strlcat (new_audit, ">", audit_len);
- copy_ptr = final1;
- changed_separator = 1;
- }
- @@ -162,7 +164,7 @@ get_closed ()
- }
- } while (final1);
-
- - strcat (new_audit, copy_ptr);
- + strlcat (new_audit, copy_ptr, audit_len);
- xfree (pr[AUDIT_TRAIL].value);
- pr[AUDIT_TRAIL].value = new_audit;
-
- @@ -245,7 +247,7 @@ do_category (c)
- return;
- }
-
- - sprintf (path, "%s/%s/", gnats_root, c);
- + snprintf (path, len + 9, "%s/%s/", gnats_root, c);
-
- /* Process each file in the directory; ignore files that have periods
- in their names; either they're the . and .. dirs, or they're a
- @@ -254,7 +256,7 @@ do_category (c)
- if (strchr (next->d_name, '.') == NULL)
- {
- p = path + len - 1;
- - strcat (p, next->d_name);
- + strlcat (p, next->d_name, path + len + 9 - p);
-
- fp = fopen (path, "r");
- if (fp == (FILE *) NULL)
- @@ -378,7 +380,7 @@ get_categories ()
- Categories *c;
-
- if (! catfile)
- - sprintf (path, "%s/gnats-adm/%s", gnats_root, CATEGORIES);
- + snprintf (path, PATH_MAX, "%s/gnats-adm/%s", gnats_root, CATEGORIES);
- else
- path = catfile;
-
- @@ -415,7 +417,7 @@ main (argc, argv)
- int argc;
- char **argv;
- {
- - int optc, i;
- + int optc;
- Categories *clist, *c;
-
- program_name = (char *) basename (argv[0]);
|