History log of /freebsd-10.1-release/usr.sbin/lpr/lpd/
Revision Date Author Comments
272461 03-Oct-2014 gjb

Copy stable/10@r272459 to releng/10.1 as part of
the 10.1-RELEASE process.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


241852 22-Oct-2012 eadler

Check the return error of set[ug]id. While this can never fail in the
current version of FreeBSD, this isn't guarenteed by the API. Custom
security modules, or future implementations of the setuid and setgid
may fail.

PR: bin/172289
PR: bin/172290
PR: bin/172291
Submittud by: Erik Cederstrand <erik@cederstrand.dk>
Discussed by: freebsd-security
Approved by: cperciva
MFC after: 1 week


240351 11-Sep-2012 kevlo

Remove unused values


239233 13-Aug-2012 wblock

Correct description of minfree to kilobytes rather than blocks.

PR: 125921
Submitted by: Andre Albsmeier <Andre.Albsmeier@siemens.com>
MFC after: 3 days


228990 30-Dec-2011 uqs

Spelling fixes for usr.sbin/


228664 17-Dec-2011 dim

In usr.sbin/lpr/lpd/printjob.c, use the correct printf length modifiers
for off_t (aka int64_t).

MFC after: 1 week


216372 11-Dec-2010 joel

Remove the advertising clause from UCB copyrighted files in usr.sbin. This
is in accordance with the information provided at
ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change


211190 11-Aug-2010 gad

- Improve the wait4data() routine so it behaves better when checking
print-jobs which have last-modification times that are in the future.
This shouldn't happen, of course, but it can. And when it did happen,
the previous check could cause completely-spooled jobs to sit in the
queue for 20 minutes per job. The new code waits until the last-modify
time is not changing, instead of making decisions based on the specific
value of last-modify.

MFC after: 2 weeks


201390 02-Jan-2010 ed

The last big commit: let usr.sbin/ use WARNS=6 by default.


182599 01-Sep-2008 ticso

use bigger local variable to calculate free space
int overflows at 1T free space


173412 07-Nov-2007 kevlo

Cleanup of userland __P use


167260 06-Mar-2007 kevlo

Use sizeof() for calculating the buffer size instead of hard-coded values.


160147 07-Jul-2006 gad

Fix checking of the "lock" file in the spool directory for a queue,
so that the checking will wind up with the correct mode-bits in
the case where the initial open() of that lock file will create it.
Due to this bug, the first job ever sent to a queue could leave
that queue in a "printing is disabled" state.

PR: 93469
Submitted by: Michael Szklarski of kco.com.pl
MFC after: 1 week


146188 13-May-2005 ume

NI_WITHSCOPEID cleanup

Reviewed by: gad


141846 13-Feb-2005 ru

Expand *n't contractions.


139035 19-Dec-2004 gad

Call umask() before opening the lock-file for a queue, to make sure
the file will be created with the right access, if the call to open()
does create it. Also fix the other call to umask() to turn off
"write others", just as a matter of general safety.

PR: 74418
MFC after: 4 days


138939 17-Dec-2004 gad

When printing a data file received from some other host, check to make
sure the data file has been completely transfered before starting to
print it. This is needed because some implementations of lpr will send
the control-file for a print job before sending the matching data-files,
and that can cause problems if the receiving host is a busy print-server.

MFC after: 2 weeks


131500 02-Jul-2004 ru

Mechanically kill hard sentence breaks.


131468 02-Jul-2004 ru

Fixed spelling of the document date.


119192 21-Aug-2003 gad

Minimal update to make it easier to increase the buffer-size lpd uses
when reading/writing spool files. I intend to do a more elaborate
version, but I want to get this much in before 4.9-release. As written,
this results in no change to the object code.

Submitted by: John-Mark Gurney
Reviewed by: /sbin/md5
MFC after: 4 days


118881 13-Aug-2003 gad

Use STDIN_FILENO, STDOUT_FILENO, and STDERR_FILENO in a few more
places (replacing constants 0, 1 & 2).

Noticed by:
Reviewed by: md5
MFC after: 4 days


117587 14-Jul-2003 gad

Get the 'sccsid' lines even closer to correct style(9) form. The
'#ifdef lint/#endif' around the lines should not have been removed.

Reviewed by: noticed by bde
MFC after: 15 days


117554 14-Jul-2003 gad

More changes to use __FBSDID() for setting rcsids, and fix the
format of 'sccsid' lines so they consistently match style(9)
guidelines. Inspired by recent update to lpd.c by charnier.

Reviewed by: discussed on cvs-src & with bde and obrien
MFC after: 15 days


117280 06-Jul-2003 charnier

add FBSDID


116049 08-Jun-2003 charnier

Add section number to .Xr


108317 27-Dec-2002 schweikh

english(4) police.


106194 30-Oct-2002 sheldonh

Use "deprecated" instead of "depreciated" where appropriate.


100522 22-Jul-2002 ume

use IPV6_V6ONLY instead of non standard IPV6_BINDV6ONLY.

Approved by: gad


99968 14-Jul-2002 charnier

The .Nm utility


98776 24-Jun-2002 gad

Redo the way that fatal-error messages are done in the chkhost() routine,
mainly so the compiler can correctly do printf-style parameter checking.
Some minor improvements to a few of the error messages, but the main
goal here is to get rid of a few more compile-time warning messages.

MFC after: 5 days


98702 23-Jun-2002 gad

Stop adding ${CWARNFLAGS} to CFLAGS. The standard makefile processing will
add them automatically, and there is no point in adding them twice.

MFC after: 5 days


97793 04-Jun-2002 gad

Change some "process id" variables from 'int' to 'pid_t', renaming some
of them to keep better track of which-is-which (multiple variables were
named 'pid'). Moved a global pid-variable into the only routine that
used it. Net result: fixes two compile-time warnings...

MFC after: 2 weeks


97792 04-Jun-2002 gad

Cosmetic improvements to some of the syslog() calls in here (in some cases
simply getting the indentation right when the statement wraps).

MFC after: 2 weeks


97791 04-Jun-2002 gad

Fix all the 'return' statements in here to follow style(9).

MFC after: 2 weeks


97789 04-Jun-2002 gad

Avoid checking WIFEXITED and WTERMSIG in some error situations where the
value in wstatus is not related to the process that we care about.

MFC after: 2 weeks


97781 03-Jun-2002 gad

Stop using the depreciated 'union wait' definitions, moving to a more
standard handling of wait()-related routines.

Submitted by: mike
MFC after: 2 weeks


97421 28-May-2002 alfred

Assume __STDC__, remove non-__STDC__ code.


95293 23-Apr-2002 gad

Implement new printcap option of "rc" aka "remote.resend_copies".
This is a boolean option, and if it is specified in a print queue
for a remote host, it causes lpd to resend the data file for each
copy the user requested on 'lpr -#n'. This is useful for network
printers which accept lpd-style jobs, but which ignore the control
file (and thus they ignore any request for multiple copies).

PR: 25635
Reviewed by: short review on freebsd-audit
MFC after: 6 days


95235 22-Apr-2002 gad

Add description of `mc' (max copies), add short-form to long-form mapping
for `tf' (troff filter), and add a cross-reference to chkprintcap in some
lpr-related man pages.

Submitted by: dwmalone
MFC after: 4 days


95070 19-Apr-2002 gad

Change lpd to recognize the '-s' parameter as a preferred synonym
for what is currently the '-p' parameter. '-s' is what NetBSD
used (and they implemented it before I added -p in FreeBSD), and
it also matches the '-s' option in syslogd. Someone in OpenBSD
land had also talked about adding a '-s' option, but it hasn't
happened yet.

MFC after: 5 days


95069 19-Apr-2002 gad

Remove a safety-setting line which is unnecessary now that the previous
line is using strlcpy instead of strncpy.

MFC after: 4 days


95068 19-Apr-2002 gad

Fix 'deamon' -> 'daemon' in a comment.

Obtained from: NetBSD, OpenBSD
MFC after: 4 days


95067 19-Apr-2002 gad

Add a little detail to the syslog-msg that comes up when lpd can not
execute a given filter.

MFC after: 4 days


94040 07-Apr-2002 gad

A variable had been unnecessarily assigned a bogus value because gcc was
"confused" about it being unassigned. In fact, gcc was right. Fix the
real problem by setting that variable before break-ing out of a select
statement so gcc is happy, and then remove the unnecessary assignment.

Reported by: a user wondering why lpd syslog-ed about "compiler confusion"
MFC after: 12 days


94038 07-Apr-2002 gad

Rename a variable from 'user' to 'userid' to avoid some compiler warnings.

MFC after: 12 days


94036 07-Apr-2002 gad

Rearrange all the error returns from sendfile() to make sure the original
input file and any temporary (filter) file are closed upon return, and
that is generally done at the end of the routine. This should make it
easier for a later update (not yet written) to implement a "resend_copies"
option.

MFC after: 12 days


94032 07-Apr-2002 gad

Re-arrange how output filters (of=) are handled for queues going to
remote machines. Now they really are handled *exactly* the same as
input filters (if=) for remote queues, except that they are started
with a different set of parameters. This should fix a few subtle
bugs in output-filter processing on such queues. It is a pretty
significant re-arranging of sendfile(), moving some of it to a new
execfilter() routine.

PR: 36552
Reviewed by: no screams from freebsd-audit
MFC after: 12 days


87375 05-Dec-2001 gad

Move the checks for '/' a little sooner in the code which receives files
for a remote print job. This change comes from OpenBSD (who got it from
Sebastian Krahmer of SuSE). In OpenBSD this avoids a tiny theoretical
security issue, but that security issue does not exist in FreeBSD's lpr
due to the changes which added 'ctl_renametf()' just before 4.4-release.
This change is still worth doing in our version, but it isn't fixing a
security issue.

MFC after: 4 days


86935 27-Nov-2001 gad

Change the recently-added 'o'-processing so it maps to 'l' instead of 'f'.
'l' ("plain text which includes control characters") is somewhat more
appropriate for 'o' ("postscript files"), and in fact some printers treat
'l' as a request to print a postscript file.

MFC after: 1 week


83684 20-Sep-2001 gad

Add minimal support for "o"-type print-file actions in lpd control files.
This was described in the original RFC wrt lpr, but most lpr's do not
actually implement it. There is some indication that MacOS 10.1 will
be using this when sending postscript files to print servers (that is
what "o"-type was supposed to signify -- postscript files).

MFC after: 1 week


80230 23-Jul-2001 gad

Basically rewrite the dofork() routine, to add more error-checking and
correct the error-checking that was there. With the old code, an error
return from getpwuid(daemon_user) could turn the lpd process into a very
effective fork-bomb...

Reviewed by: freebsd-audit freebsd-print (a little...)
MFC after: 6 days


80171 23-Jul-2001 gad

Get rid of some compile-time warnings by defining (or casting) variables
as size_t where appropriate.

MFC after: 1 week


80170 23-Jul-2001 gad

Fix two compile-time warnings by defining fromlen as socklen_t.

MFC after: 1 week


80133 22-Jul-2001 gad

Replace calls to strncpy with calls to strlcpy, and remove the extra step
needed to ensure that the result is null-terminated when using strncpy().

MFC after: 8 days


80122 22-Jul-2001 gad

Rename the -w option to be -W. The recently-added -w option is different
than the long-standing -w option in NetBSD, so change it before anyone in
FreeBSD gets used to it. For now, -w is still accepted, but prints out
some warnings via syslog.

MFC after: 1 week


80113 22-Jul-2001 gad

Change a few read & write calls to use 'STDOUT_FILENO' instead of '1'.

Submitted by: David Hill <david@phobia.ms>
Reviewed by: freebsd-audit (a little)
MFC after: 1 week


80029 20-Jul-2001 obrien

Perform a major cleanup of the usr.sbin Makefiles.
These are not perfectly in agreement with each other style-wise, but they
are orders of orders of magnitude more consistent style-wise than before.


79755 15-Jul-2001 dd

Remove whitespace at EOL.


79746 15-Jul-2001 gad

Change lpd to perform sanity and safety checks on control files as it
receives them from other hosts. This is meant to protect from both
nefarious users (which maybe broke into some remote host that we accept
print jobs from), and broken implementations of lpr on other platforms.
This is done by changing recvjob.c to call the new ctl_renametf()
routine in the new common_source/ctlinfo.[ch] files. This will not
affect jobs coming via lpr on the local machine.

Reviewed by: freebsd-print@bostonradio.org & freebsd-audit
MFC after: 16 days


79739 15-Jul-2001 gad

Fix most of the warnings generated by compiling lpr with -Wnon-const-format,
often by just telling gcc that some internal routine is "__printflike"
(work done by Kris Kennaway <kris@FreeBSD.org>). Also fix the new warnings
which show up once gcc starts checking the "printf-like parameters" passed
to those routines.

MFC after: 1 week


79735 14-Jul-2001 gad

Change signal-handling to reset SIGCHLD to SIGDFLT instead of SIG_IGN.
This fixes a problem with using print filters (if=, of=, etc) that showed
up in -current around June 20th. That problem initially reported by
Georg-W Koltermann <gwk@sgi.com>, while most of the investigation that
led to this fix was done by Anton Berezin <tobez@FreeBSD.org>.

Reviewed by: freebsd-print@bostonradio.org
MFC after: 1 week


79537 10-Jul-2001 ru

mdoc(7) police: removed HISTORY info from the .Os call.


79452 09-Jul-2001 brian

Fix the type of the NULL arg to execl()

Idea from: Theo de Raadt <deraadt@openbsd.org>


78749 25-Jun-2001 gad

Add two new options for lpd: -c will log all connection-errors to syslog,
while -w allows connection from non-reserved ports. Also improves the
helpfulness of various connection-error messages.

The changes for IPv6 added back in the reserved-port check which was mistakenly
dropped from lpd in 1997 (copying a change from openbsd). It is best to have
that check in place, but the check breaks lpr's from some implementations of
lpr/lpd for Windows. The -w option is for those admins who need to accept
jobs from non-reserved ports, the -c option is for admins who would like a
print-server machine to log all failed connection-attempts to syslog.

Reviewed by: freebsd-audit@FreeBSD.org freebsd-print@bostonradio.org
MFC after: 2 weeks


78317 16-Jun-2001 gad

Get rid of a trigraph ("??>") mistakenly put in an error message.
One less warning to annoy me...

MFC after: 1 week


78302 15-Jun-2001 gad

*** empty log message ***


78300 15-Jun-2001 gad

Rename a few global variables which hold hostname-related values to be
more sensible/understandable. 'from'->'from_host' 'host'->'local_host'
'fromb'->'frombuf' 'fromhost'->'origin_host' and a local-variable
named 'host'->'hostbuf'. This fixes some compile-time warnings about
local variables shadowing global variables.

Other than renaming variables, the only actual code changes are to call
strlcpy() instead of strncpy() when setting those (renamed) variables,
and that 'from_ip' is now a strdup()-created buffer instead of being a
static buffer compiled in as 1025 bytes.

Reviewed by: freebsd-print@bostonradio.org (an earlier version)
MFC after: 1 week


78280 15-Jun-2001 gad

Rename global variable 'name' to 'progname', thus fixing a number of
warnings which come up for various routines that have a parameter which
is also called 'name'.

Reviewed by: freebsd-print@bostonradio.org
MFC after: 1 week


78146 12-Jun-2001 gad

Fix about 90-100 warnings one gets when trying to compile lpr&friends
with BDECFLAGS on, mainly by adding 'const' to parameters in a number
of routine declarations. While I'm at it, ANSI-fy all of the routine
declarations. The resulting object code is exactly the same after
this update as before it, with the exception of one unavoidable
change to lpd.o on freebsd/alpha.

Also added $FreeBSD$ line to lpc/extern.h lpc/lpc.h lptest/lptest.c

Reviewed by: /sbin/md5, and no feedback from freebsd-audit


74816 26-Mar-2001 ru

- Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.


74532 20-Mar-2001 ru

Set the default manual section for usr.sbin/ to 8.


74367 16-Mar-2001 gad

Fix a number of warnings that come up when compiling with BDECFLAGS.


74127 12-Mar-2001 gad

Change the usage() message to include the recently-added -4 and -6 options.


74124 12-Mar-2001 gad

Improve a few error messages wrt if= filters on remote print queues.


70403 27-Dec-2000 ru

Prepare for mdoc(7)NG.


70098 16-Dec-2000 ume

IPv6 support for lpr.

Reviewed by: freebsd-current (no objection)
Obtained from: KAME


68965 20-Nov-2000 ru

mdoc(7) police: use the new features of the Nm macro.


68743 15-Nov-2000 gad

Eliminate two compile-time warnings.


68742 15-Nov-2000 gad

Fix the '-d' option (turns on socket-debugging). Improve startup msgs.

PR: 17178
Submitted by: Richard <satherrl@dssrg.curtin.edu.au>


68741 15-Nov-2000 gad

Make sure a few strings will have terminating null characters.
(most of the PR 16186 was already applied, except for these 2 lines)

PR: 16186
Submitted by: Przemyslaw Frasunek <venglin@lubi.FreeBSD.lublin.pl>


68735 14-Nov-2000 gad

Minor style improvements.


68734 14-Nov-2000 gad

Fix (style) some variable initializations.


68733 14-Nov-2000 gad

Change 'count' to a more descriptive 'jobcount', and fix the stupid
comments which claim this counter is counting "files", which it is not.


68732 14-Nov-2000 gad

Get rid of 'exit(-1)' calls. Exit codes are limited to 8 bits under most
Unixes, so -1 becomes 0xFF for 2's complement and 0xFE (?) for 1's
complement.

Reviewed by: bde@FreeBSD.org


68682 13-Nov-2000 gad

My previous commit removed a line it wasn't supposed to. Add it back.


68664 13-Nov-2000 gad

Replace call to mktemp() with mkstemp. Also move where that call is
done, so the correct directory is being checked. The mkstemp() call
is meant to create a temp file for stderrs when running filters. This
update also fixes log-file processing for remote (rm=) queues which
specify an input filter (if=). Before, filter-errs were thrown away.
Now they'll be copied to the queue's logfile (lf=).

Reviewed by: (a little) audit@FreeBSD.ORG & freebsd-print@bostonradio.org


68467 08-Nov-2000 gad

Fix 'printit()' to ignore some lines it doesn't recognize (most likely
coming from lprNG hosts), and print a more helpful error msg for others.


68401 06-Nov-2000 gad

Cosmetic change of a structure name.
Turn 'struct queue { q_time, q_name }' (loosely-speaking)
into 'struct jobqueue { job_time, job_cfname }'

Reviewed by: GAWollman


68380 06-Nov-2000 gad

Cosmetic improvements to a few recvjob-related error messages.


68379 06-Nov-2000 gad

Fix a format-code, thus getting rid of a compile-time warning msg.


68343 05-Nov-2000 gad

Fix potential problem processing jobs from hosts with >32 character hostnames.
This may fix a problem reported by Juha Ylitalo <juha.o.ylitalo@nokia.com>


68340 05-Nov-2000 gad

In the error-message routine for receiving a job, move the "cleanup" to be
after the error message is printed, because the error message may refer to
variables the "cleanup" routine will zero out.

PR: 21007


68253 02-Nov-2000 gad

Implement new printcap options of sr= (aka stat.recv) and sr= (aka stat.send)
in lpd. Stat.recv is useful on a printserver, as something of a network
performance-monitoring tool. Stat.send is a minimal accounting record of
sorts for jobs going to tcp/ip based printers.

Reviewed by: freebsd-print@bostonradio.org


66414 27-Sep-2000 wollman

Set SO_REUSEADDR so that lpd can start while old lpd connections are still
winding down (or timing out). Also, be slightly more informative in
mcleanup() about why lpd is exiting.

PR: 21595


60871 24-May-2000 mpp

Re-implement my fix from rev 1.6 (same rev for both files being committed)
that was lost during the lite-2 merge. From the original commit message:

Initialize the group list so that any filter programs that are
run by lpd are not run with root's groups.


58777 29-Mar-2000 sheldonh

Add -p option to prevent lpd(8) from opening a listening socket.

PR: 17384
Submitted by: Niels Endres <niels@b5.nu>


57673 01-Mar-2000 sheldonh

Remove single-space hard sentence breaks. These degrade the quality
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.


56568 25-Jan-2000 dillon

Type-o, change from[...] = 0 to fromb[...] = 0. The incorrect buffer
was having its last element zero'd. It turns out not to be a security
hole or to have any real effect on the code because 'from' was previously
pointing to a buffer of the same size as 'fromb', and the last
element in fromb is already 0 anyway due to the use of sizeof(fromb)-1
in the strncpy() call. But I'm not pressing my luck so only the type-o
is being fixed.


53956 30-Nov-1999 ache

Add support for pr's locale


51457 20-Sep-1999 phantom

Correct spelling : ascii -> ASCII

PR: docs/13702
Submitted by: Stephen J. Roznowski <sjr@home.com>
Reviewed by: mpp


50479 28-Aug-1999 peter

$Id$ -> $FreeBSD$


48791 12-Jul-1999 nik

Add $Id$, to make it simpler for members of the translation teams to
track.

The Id line is normally at the bottom of the main comment block in the
man page, separated from the rest of the manpage by an empty comment,
like so;

.\" $Id$
.\"

If the immediately preceding comment is a @(#) format ID marker than the
the $Id$ will line up underneath it with no intervening blank lines.
Otherwise, an additional blank line is inserted.

Approved by: bde


39084 11-Sep-1998 wollman

Fix additional warnings. Remove -Werror, since some people have complained
about it.

PR: 7886
Submitted by: Stefan Eggers <seggers@semyam.dinoco.de> (partially)


38470 21-Aug-1998 brian

Fix ``lp=port@machine'' syntax and mention it in printcap(5).


36881 11-Jun-1998 jb

Remove -Werror from CFLAGS on i386 because with -nostdinc gcc spits
warnings from unused static inline functions in headers if you happen
to set CFLAGS without -O.


35997 13-May-1998 jb

Make -Werror i386 specific because -nostinc on alpha spits warnings
for unused static inline functions in header files.


34160 07-Mar-1998 bde

Use `foo/bar.a' instead of `-Lfoo -lbar' for linking to static internal
libraries so that `ld -f' in can create correct dependencies for
yet-to-be-built libraries.

Get the default BINDIR correctly (by including ../Makefile.inc recursively.
Override the default it it is wrong.

Don't override defaults when the defaults are correct.


32654 20-Jan-1998 wollman

Properly initialize the printer struct.

PR: bin/5519


31780 16-Dec-1997 bde

Fixed DPADD.


31492 02-Dec-1997 wollman

Mega lpd/lpd upgrade, part I:

- Get rid of a lot of the static variables which were shared by
many routines and programs in the suite.
- Create an abstract interface to the printcap database, so that
other retrieval and iteration mechanisms could be developed
(e.g., YP, Hesiod, or automatic retrieval from a trusted server).
- Give each capability a human-readable name in addition to the historic
two-character one.
- Otherwise generally clean up a lot of dark corners. Many still remain.
- When submitting jobs, use the official login name record (from getlogin())
if there is one, rather than reverse-mapping the uid.

More to come...


31020 07-Nov-1997 joerg

Argl! Who's got the pointy hat these days? Hand it over to me, ASAP!

When setting an alarm that didn't trigger, i gotta clear it again
before going on. Hmpf!


30407 14-Oct-1997 joerg

Improve my hack from rev 1.6 of displayq.c, and make the TCP
connection timeout controllable by a new printcap(5) capability named
`ct' (connectiom timeout), defaulting to 120 seconds (which is the
default TCP connection timeout).

Would anybody see a problem with merging all this into RELENG_2_2?


30143 06-Oct-1997 imp

Be more paranoid about unlinking files. From mhpower@MIT.EDU by way of
Theo de Raadt.

Likely 2.2.5R candidate.
Obtained from: OpenBSD


29780 24-Sep-1997 charnier

Use err(3). Add usage(). Various fixes in man pages.


28621 23-Aug-1997 joerg

common_source: staticize private version of warn() so to not conflict
with libc's version.

lpd: use getopt(3), err(3), add usage(), allow specification of a port #
on the command line as the documentation suggested for more than 10 years.

PR: docs/3290


27757 29-Jul-1997 imp

Two minor, pedantic fixes from bde for my last pedantic fixes, plus
the following from recent OpenBSD changes. These changes (and all
I've made) should be merged back into 2.2 when they are vetted in
-current.

common.c:
OpenBSD 1.7: mickey: #if __STDC__ --> #ifdef __STDC__

displayq.c:
OpenBSD 1.8: deraadt: 1 byte oflows; millert

rmjob.c:
OpenBSD 1.8: deraadt: 1 byte oflows; millert

cmds.c:
OpenBSD 1.9: grr: restore traditional "all" keyword option - see lpc(8)
[[ This makes lpc status all work again -- imp ]]

printjob.c:
OpenBSD 1.17: deraadt: use sendmail -t
OpenBSD 1.16: mickey: #if __STDC__ --> #ifdef __STDC__
OpenBSD 1.15: deraadt: 1 byte oflow; Don.Lewis@tsc.tdk.com

recvjob.c:
OpenBSD 1.11: mickey: #if __STDC__ --> #ifdef __STDC__

lpr.c:
OpenBSD 1.19: mickey: #if __STDC__ --> #ifdef __STDC__

Obtained from: OpenBSD


27748 29-Jul-1997 imp

Fix boatloads of buffer overflows from the OpenBSD tree.
Be pedantic about always using sizeof(blah) vs sizeof (blah) or sizeof blah.
Obtained from:OpenBSD


27635 23-Jul-1997 imp

index -> strchr and rindex -> strrchr to reduce the number of gratuitous
diffes with NetBSD/OpenBSD. These changes seem to predate the NetBSD/OpenBSD
split, so it is hard to give proper credit for them.
Obtained from: OpenBSD.


27618 23-Jul-1997 imp

Use setuid/seteuid around dangerous operations. Also a few buffer
overflow patches that were "near" to where these operations are taking
place. The buffer overflows are from OpenBSD. The setuid/seteuid patches
are from NetBSD by way of OpenBSD (they changed them a little), at least from
my read of the tree.

This is the first of a series of OpenBSD lpr/et al merges. It (and them)
should be merged back into 2.2 and/or 2.1 (if requested) branches when they
have been shaken out in -current.
Obtained from: OpenBSD


27593 21-Jul-1997 brian

Output name of duplicate spool dir.
Submitted by: Wayne Scott <wscott@ichips.intel.com>


27448 16-Jul-1997 phk

Increase size of tmp hostname buffer.
PR: 3889
Reviewed by: phk
Submitted by: Yujiro MIYATA <miyata@bioele.nuee.nagoya-u.ac.jp>


25856 17-May-1997 brian

Check for duplicate spool dirs.

Submitted by: eivind


24831 12-Apr-1997 brian

Support input and output filters with remote printing.
Output filters are executed on a per-file basis as it's
necessary to supply the file size to the "other side".


22997 22-Feb-1997 peter

Revert $FreeBSD$ to $Id$


21880 20-Jan-1997 wosch

Sort cross references.


21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


19202 27-Oct-1996 imp

lpc/cmds.c:
From NetBSD via OpenBSD to fix NetBSD PR #506
More descriptive message for printer status
(OpenBSD: 1.2)

Various warnings cleaned up (OpenBSD: 1.4)

lpc/lpc.c:
Various warnings cleaned up (OpenBSD: 1.3)

lpd/lpd.c:
Remove trailing blank lines (OpenBSD: 1.2)

Potential umask problem with creating /dev/printer
(OpenBSD: 1.4 and 1.5)

Ftp bounce attack (untested on FreeBSD)
(OpenBSD: 1.6, 1.8, 1.9)
Fencepost in strncpy
(OpenBSD: 1.6)

lpd/printjob.c:
Fix from freebsd for waiting for an exiting filter, that
appears not in the FreeBSD CVS tree.
(OpenBSD: 1.6)

lpd/recvjob.c:
Buffer overflow protection: use strncpy rather than strcpy.
(OpenBSD: 1.3)

lpr/lpr.c:
NetBSD change of return type for main()
(OpenBSD: 1.2)

Restrict time running as root
(OpenBSD: 1.7)

Use getcwd rather than getwd (from NetBSD)

Use snprintf rather than sprintf
(OpenBSD: 1.8)

Minor tweak to end of loop and buffer overflow sanity. card()
overflow already in FreeBSD
(OpenBSD: 1.9)

lptest/lptest.c:
void -> int return type of main, from NetBSD via OpenBSD
(OpenBSD: 1.2)

pac/pac.c:
void -> int return type of main, from NetBSD via OpenBSD
(OpenBSD: 1.3)

Obtained from: OpenBSD


18569 29-Sep-1996 bde

Close files up to getdtablesize(), instead of up to NOFILE.

lpd was one of 3 programs in /usr/src that (mis)used NOFILE.


16062 01-Jun-1996 wosch

People ask in Usenet, how to configure remoteprinting successfully
having a hosts.lpd(5) manpage and some references to it from
within lpd(8) might help here. Close PR docs/1277

Submitted by: andreas@knobel.gun.de (Andreas Klemm)


15703 09-May-1996 joerg

Cleanup.

The removed files are no longer needed, they are actually labelled as
``Use only if you are not 4.4BSD''. (Yeah, the ol' crufty printcap.c
is really gone!)

Properly declare all external objects in files ending in .h, as
opposed to embed them into files ending in .c.


15648 05-May-1996 joerg

Pull a bunch of fixes from the 4.4BSD-Lite2 branch. It's really
surprising how many trivial errors there have been... :-)

Some more cleanup is needed, but i'd like to separate the Lite2 changes
from other work, that's why this goes into a different commit.

People with serial printers should see whether i have broken the stty-
style printcap options (i hope not).

Inspired by: Sergey Shkonda <serg@bcs1.bcs.zaporizhzhe.ua>


15638 05-May-1996 joerg

This commit was generated by cvs2svn to compensate for changes in r15637,
which included commits to RCS files with non-trunk default branches.


15032 03-Apr-1996 sef

Makefile: Add new modes.c file to list of objects.
printjob.c: Use termios instead of sgtty structs and ioctls; remove
support for fs/fc/xs/xc capabilities, and replace them with the ms
capability (stty-like words, instead of octal bit patterns).
modes.c: Modified from stty's file, parses comma-seperated list of
tty modes (e.g., "cs8,-paren,-opost").

Reviewed by: rgrimes, joerg


14038 11-Feb-1996 mpp

Correct a bunch of man page cross references and generally
try and silence "manck".

ncurses, rpc, and some of the gnu stuff are still a big mess, however.


13311 07-Jan-1996 joerg

Mention a bug in lpd that causes a core dump if a request is made for
a file format where no filter is assigned.

Pointed out by: Richard_Pontefract@vos.stratus.com


10530 02-Sep-1995 mpp

Initialize the group list so that any filter programs that are
run by lpd are not run with root's groups.


9821 31-Jul-1995 wpaul

The other day someone brought me an old Apple Laserwriter II with a serial
interface set at 57600 baud, and I found out the hard way that lpd doesn't
know about speeds greater than 38400, even though <sys/ttydev.h> also
permits 57600 and 115200 baud. Fix this by adding B57600 and B115200 to the
'bauds' table. (The Apple printer worked properly once I did this, BTW. :)


8857 30-May-1995 rgrimes

Remove trailing whitespace.


8094 27-Apr-1995 jkh

Close PR:
>Number: 368
>Category: bin
>Synopsis: Lpd doesn't log errors after failed exec
>Description:

If an exec done by lpd fails, nothing is sent to the system log
indicating what went wrong. This is because lpd closes all of
the file descriptors before doing the exec, thus closing the syslog
file descriptor in the process.
[Fix applied]
Submitted by: pritc003@maroon.tc.umn.edu


5445 08-Jan-1995 joerg

Use the "-F" option to /bin/pr now that we have it (thanks to Posix).
This helps for printers that tend to get out of sync. (For the
cautious folks: we used to have it in 1.1.5, too. But GNU pr used
"-f" for it.)


5389 04-Jan-1995 ats

Submitted by: Ollivier ROBERT
Wrong description where the printer socket lives. Changed from /dev/printer
to /var/run/printer. Bug report submitted by Ollivier ROBERT.


1863 05-Aug-1994 wollman

Get rid of update. Make man page installation work with our scheme
(and rename a few in the process).


1554 26-May-1994 rgrimes

This commit was generated by cvs2svn to compensate for changes in r1553,
which included commits to RCS files with non-trunk default branches.