2.9 KiB
2.9 KiB
$OpenBSD: patch-lib_cconv_c,v 1.2 2012/03/17 23:01:09 naddy Exp $
--- lib/cconv.c.orig Wed May 26 17:55:25 1999
+++ lib/cconv.c Sat Mar 17 16:58:01 2012
@@ -611,7 +611,7 @@ static char *rcsid = "$Id: cconv.c,v 10.8 1999/05/07 0
#define EPROC2(efunc, format, a) { \
char tmp[1024]; \
- (void)sprintf(tmp, format, a); \
+ (void)snprintf(tmp, sizeof(tmp), format, a); \
eproc(efunc, tmp); }
/* $B%-!<%3!<%I$N%(%s%3!<%IJ}K! */
@@ -767,7 +767,7 @@ static wchar *promptsave(wchar *);
static int parseLine(uchar *, uchar **, int);
static FILE *openfile(char *);
static int doinclude(uchar *, Files *, void (*)());
-static uchar *getline(uchar *, int, Files *, void (*)());
+static uchar *get_line(uchar *, int, Files *, void (*)());
static int readRuleFile(ccRule, char *);
static int registMode(ccRule, int, uchar **);
static int newMode(ccRule, Files *, _strbufRec *, _funcbufRec *,
@@ -965,7 +965,7 @@ char *file;
if (q == filename) continue;
*q++ = '/';
*q = '\0';
- (void)Strcat(filename, file);
+ (void)strlcat(filename, file, sizeof(filename));
if ((fp = fopen(filename, "r")) != NULL)
return fp;
}
@@ -973,8 +973,8 @@ char *file;
/* $B%G%U%)%k%H$N%5!<%A%Q%9 CCDEFPATH(/usr/lib/X11/ccdef) $B$N
* $B2<$r%5!<%A$9$k
*/
- (void)Strcpy(filename, CCDEFPATH);
- (void)Strcat(filename, file);
+ (void)strlcpy(filename, (char *)CCDEFPATH, sizeof(filename));
+ (void)strlcat(filename, file, sizeof(filename));
fp = fopen(filename, "r");
}
return fp;
@@ -1013,7 +1013,7 @@ void (*efunc)();
}
/* getline -- 1$B9TFI$_9~$` ($B$=$N:] include $B$N=hM}$r9T$J$&) */
-static uchar *getline(line, linesize, files, efunc)
+static uchar *get_line(line, linesize, files, efunc)
uchar *line;
int linesize;
Files *files;
@@ -1077,8 +1077,8 @@ char *file;
rule->nmode = 0;
rule->initialmode = -1;
- while (getline(line, sizeof(line), &files, efunc)) {
- (void)Strcpy(tmp, line);
+ while (get_line(line, sizeof(line), &files, efunc)) {
+ (void)strlcpy(tmp, line, sizeof(tmp));
if ((argc = parseLine(tmp, argv, 20)) == 0)
continue;
@@ -1246,7 +1246,7 @@ uchar **av;
cdbuf.cdbuf = NULL;
/* $B%k!<%k$rFI$s$G%9%H%"$9$k */
- while (getline(line, sizeof(line), files, efunc)) {
+ while (get_line(line, sizeof(line), files, efunc)) {
/* '#' $B$G;O$^$k9T$O%3%a%s%H */
if (*line == '\0' || *line == '\n' || *line == '#')
continue;
@@ -1302,7 +1302,7 @@ int *funcp;
"context" key "result" [function...]
*/
- (void)Strcpy(tmp, line);
+ (void)strlcpy(tmp, line, sizeof(tmp));
ac = parseLine(tmp, av, 20);
if (ac < 3) {
EPROC2(efunc, "syntax error - %s", line);
@@ -1885,7 +1885,7 @@ char *funcname;
fnrec->funcnameend = cp + size;
}
- (void)strcpy(fnrec->funcnamep, funcname);
+ (void)strlcpy(fnrec->funcnamep, funcname, MOREFUNCNAMESIZE);
fnrec->funcnames[nfunc] = fnrec->funcnamep - fnrec->funcnamebuf;
fnrec->funcnamep += len;
--- lib/cconv.c.orig Wed May 26 17:55:25 1999
+++ lib/cconv.c Sat Mar 17 16:58:01 2012
@@ -611,7 +611,7 @@ static char *rcsid = "$Id: cconv.c,v 10.8 1999/05/07 0
#define EPROC2(efunc, format, a) { \
char tmp[1024]; \
- (void)sprintf(tmp, format, a); \
+ (void)snprintf(tmp, sizeof(tmp), format, a); \
eproc(efunc, tmp); }
/* $B%-!<%3!<%I$N%(%s%3!<%IJ}K! */
@@ -767,7 +767,7 @@ static wchar *promptsave(wchar *);
static int parseLine(uchar *, uchar **, int);
static FILE *openfile(char *);
static int doinclude(uchar *, Files *, void (*)());
-static uchar *getline(uchar *, int, Files *, void (*)());
+static uchar *get_line(uchar *, int, Files *, void (*)());
static int readRuleFile(ccRule, char *);
static int registMode(ccRule, int, uchar **);
static int newMode(ccRule, Files *, _strbufRec *, _funcbufRec *,
@@ -965,7 +965,7 @@ char *file;
if (q == filename) continue;
*q++ = '/';
*q = '\0';
- (void)Strcat(filename, file);
+ (void)strlcat(filename, file, sizeof(filename));
if ((fp = fopen(filename, "r")) != NULL)
return fp;
}
@@ -973,8 +973,8 @@ char *file;
/* $B%G%U%)%k%H$N%5!<%A%Q%9 CCDEFPATH(/usr/lib/X11/ccdef) $B$N
* $B2<$r%5!<%A$9$k
*/
- (void)Strcpy(filename, CCDEFPATH);
- (void)Strcat(filename, file);
+ (void)strlcpy(filename, (char *)CCDEFPATH, sizeof(filename));
+ (void)strlcat(filename, file, sizeof(filename));
fp = fopen(filename, "r");
}
return fp;
@@ -1013,7 +1013,7 @@ void (*efunc)();
}
/* getline -- 1$B9TFI$_9~$` ($B$=$N:] include $B$N=hM}$r9T$J$&) */
-static uchar *getline(line, linesize, files, efunc)
+static uchar *get_line(line, linesize, files, efunc)
uchar *line;
int linesize;
Files *files;
@@ -1077,8 +1077,8 @@ char *file;
rule->nmode = 0;
rule->initialmode = -1;
- while (getline(line, sizeof(line), &files, efunc)) {
- (void)Strcpy(tmp, line);
+ while (get_line(line, sizeof(line), &files, efunc)) {
+ (void)strlcpy(tmp, line, sizeof(tmp));
if ((argc = parseLine(tmp, argv, 20)) == 0)
continue;
@@ -1246,7 +1246,7 @@ uchar **av;
cdbuf.cdbuf = NULL;
/* $B%k!<%k$rFI$s$G%9%H%"$9$k */
- while (getline(line, sizeof(line), files, efunc)) {
+ while (get_line(line, sizeof(line), files, efunc)) {
/* '#' $B$G;O$^$k9T$O%3%a%s%H */
if (*line == '\0' || *line == '\n' || *line == '#')
continue;
@@ -1302,7 +1302,7 @@ int *funcp;
"context" key "result" [function...]
*/
- (void)Strcpy(tmp, line);
+ (void)strlcpy(tmp, line, sizeof(tmp));
ac = parseLine(tmp, av, 20);
if (ac < 3) {
EPROC2(efunc, "syntax error - %s", line);
@@ -1885,7 +1885,7 @@ char *funcname;
fnrec->funcnameend = cp + size;
}
- (void)strcpy(fnrec->funcnamep, funcname);
+ (void)strlcpy(fnrec->funcnamep, funcname, MOREFUNCNAMESIZE);
fnrec->funcnames[nfunc] = fnrec->funcnamep - fnrec->funcnamebuf;
fnrec->funcnamep += len;