From mark@janai.thuvia.org  Sat Nov  9 14:17:54 1996
Received: from janai.thuvia.org (linus.demon.co.uk [158.152.10.220])
          by freefall.freebsd.org (8.7.5/8.7.3) with ESMTP id OAA24546
          for <FreeBSD-gnats-submit@freebsd.org>; Sat, 9 Nov 1996 14:17:22 -0800 (PST)
Received: (from mark@localhost) by janai.thuvia.org (8.8.2/8.8.2) id WAA18201; Sat, 9 Nov 1996 22:16:33 GMT
Message-Id: <199611092216.WAA18201@janai.thuvia.org>
Date: Sat, 9 Nov 1996 22:16:33 GMT
From: Mark Valentine <mark@linus.demon.co.uk>
Reply-To: mark@linus.demon.co.uk
To: FreeBSD-gnats-submit@freebsd.org
Subject: error in lpr(1) argument handling [with fix]
X-Send-Pr-Version: 3.2

>Number:         1986
>Category:       bin
>Synopsis:       error in lpr(1) argument handling [with fix]
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Nov  9 14:20:01 PST 1996
>Closed-Date:    Tue Feb 25 18:24:45 PST 1997
>Last-Modified:  Tue Feb 25 18:32:02 PST 1997
>Originator:     Mark Valentine
>Release:        FreeBSD 3.0-CURRENT i386
>Organization:
>Environment:

	n/a

>Description:

	There's an off-by-one error in lpr(1)'s default jobname code.

>How-To-Repeat:

	``lpr /etc/motd'' with banner page enabled; job name will be
	random garbage.

>Fix:

[first hunk is irrelevant cosmetic adjustment]
	
--- lpr.c.ctm	Fri Nov  8 04:12:51 1996
+++ lpr.c	Sat Nov  9 22:01:56 1996
@@ -76,7 +76,7 @@
 
 static char	*cfname;	/* daemon control files, linked from tf's */
 static char	*class = host;	/* class title on header page */
-static char	*dfname;		/* data files */
+static char	*dfname;	/* data files */
 static char	*fonts[4];	/* troff font names */
 static char	 format = 'f';	/* format char for printing files */
 static int	 hdr = 1;	/* print header or not (default is yes) */
@@ -285,10 +285,10 @@
 	card('P', person);
 	if (hdr) {
 		if (jobname == NULL) {
-			if (argc == 1)
+			if (argc == 0)
 				jobname = "stdin";
 			else
-				jobname = (arg = rindex(argv[1], '/')) ? arg+1 : argv[1];
+				jobname = (arg = rindex(argv[0], '/')) ? arg+1 : argv[0];
 		}
 		card('J', jobname);
 		card('C', class);

>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed 
State-Changed-By: mpp 
State-Changed-When: Tue Feb 25 18:24:45 PST 1997 
State-Changed-Why:  
Suggested fix applied, thanks! 
>Unformatted:
