diff options
-rw-r--r-- | usr.sbin/lpr/lpc/cmds.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/usr.sbin/lpr/lpc/cmds.c b/usr.sbin/lpr/lpc/cmds.c index 722e81b..51e269e 100644 --- a/usr.sbin/lpr/lpc/cmds.c +++ b/usr.sbin/lpr/lpc/cmds.c @@ -329,7 +329,8 @@ cleanpr() n++; } if (n == 0) { - strcpy(lp, cp); + strncpy(lp, cp, sizeof(line) - strlen(line) - 1); + line[sizeof(line) - 1] = '\0'; unlinkf(line); } } else { @@ -338,7 +339,8 @@ cleanpr() * been skipped above) or a tf file (which can always * be removed). */ - strcpy(lp, cp); + strncpy(lp, cp, sizeof(line) - strlen(line) - 1); + line[sizeof(line) - 1] = '\0'; unlinkf(line); } } while (++i < nitems); |