Commit Graph

316 Commits

Author SHA1 Message Date
Garance A Drosehn
c547dbe854 Fix so all parts of lpd, lpc, lpq, and lprm will use the same algorithm
for calculating the job number for a job based on the control-file name.
We might receive cf-files named by other implementations of lpr, where
the job number shown by lpq would not match the job number that other
commands expected for the same name.

This also uses a newer algorithm for determining a job number, to avoid
problems caused when a control-file is named using an IP address, instead
of the hostname.

This also moved the declaration if isowner() from lp.h to rmjob.c.  When I
went to change the parameters, I noticed that rmjob.c was the only source
file which uses it.

MFC after:	2 weeks
2004-12-31 00:36:28 +00:00
Garance A Drosehn
e357c6ec8e Do more extensive checking of the userid field which is read in from the
control-file for each print job.  This is partially because the previous
checks still let through some characters which would cause trouble for
other applications which try to process the resulting userid -- such as
accounting programs.

But the main reason is to handle the case where some remote host sends a
print job where the given userid is an uppercase-version of the real userid.
For that case, lpd will now check for uppercase letters in the userid.  If
there are any, it will check to see if the given userid (with the uppercase
letters) is a valid one.  If it is *not* valid, then lpd will change the
userid to all-lowercase right when the job is received.

MFC after:	2 weeks
2004-12-31 00:18:42 +00:00
Ruslan Ermilov
e653b48c80 Start the dreaded NOFOO -> NO_FOO conversion.
OK'ed by:	core
2004-12-21 08:47:35 +00:00
Garance A Drosehn
a6ed151d3c 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
2004-12-19 05:14:29 +00:00
Garance A Drosehn
bea5945e6f 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
2004-12-17 01:54:50 +00:00
Ruslan Ermilov
a35d88931c For variables that are only checked with defined(), don't provide
any fake value.
2004-10-24 15:33:08 +00:00
Poul-Henning Kamp
eb7b5f46a3 Stop on write error. 2004-09-27 08:24:05 +00:00
Ruslan Ermilov
455fb174df Eliminated double whitespace. 2004-07-03 18:35:53 +00:00
Ruslan Ermilov
07bfccd71e Mechanically kill hard sentence breaks. 2004-07-02 23:13:00 +00:00
Ruslan Ermilov
4b6c8c6498 Fixed spelling of the document date. 2004-07-02 18:00:03 +00:00
Ruslan Ermilov
2cae6bce15 Removed redundant mdoc(7) macro calls. 2004-06-05 20:21:43 +00:00
Tim Kientzle
954c1f5807 Clarify the "lp" description to mention port@host syntax.
Suggested by: NetBSD man page
2004-02-19 18:55:55 +00:00
Peter Wemm
7ed21d3224 Fix a warning about mismatched pointers. A pointer to "void *" is not the
same as a pointer to "char *".  Tell the compiler this is ok.
2003-10-26 03:01:24 +00:00
Tim J. Robbins
1a7c9b7f5e Fix two buffer overflows caused by off-by-one errors: avoid writing a null
character 1 byte past the end of cmdline[] when libedit is being used for
input, and avoid writing a null pointer 1 element past the end of margv[].

Reviewed by:		gad
2003-10-13 07:24:22 +00:00
Garance A Drosehn
0de95e161e 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
2003-08-21 03:43:48 +00:00
Garance A Drosehn
53953407b6 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
2003-08-13 20:31:33 +00:00
Garance A Drosehn
7c558d080c Remove a 'From:' that snuck into an sccsid comment line as part of -v1.3 2003-08-01 00:06:41 +00:00
Christian Brueffer
7471fcb94e Fix a grammar bogon and a typo
Submitted by:	Warren Block <wblock@wonkity.com>
MFC after:	3 days
2003-07-17 07:29:20 +00:00
Garance A Drosehn
8e36ed92f2 (Hopefully) Last set of changes so all of lpr uses __FBSDID() for
setting rcsids, and uses a consistent format for 'sccsid' lines.

Reviewed by:	discussed with bde and obrien
MFC after:	15 days
2003-07-15 08:48:30 +00:00
Garance A Drosehn
c49759e23b More changes to use __FBSDID() for setting rcsids, and fix the
format of 'sccsid' lines so they consistently match style(9).
A minor Makefile change is needed so lptest.c can find lp.cdefs.h.

Reviewed by:	discussed with bde and obrien
MFC after:	15 days
2003-07-15 08:45:06 +00:00
Garance A Drosehn
6d261443e1 More changes to use __FBSDID() for setting rcsids, and fix the
format of 'sccsid' lines so they consistently match style(9)
Also the 'sccsid' line is formatted to match style(9), and
a 'From:' is removed so the sccsid returns to what it was back
in the days of '-r CSRG' (1996).

Reviewed by:	discussed with bde and obrien
MFC after:	15 days
2003-07-15 08:40:31 +00:00
Garance A Drosehn
fdc632c823 More changes to use __FBSDID() for setting rcsids. For the filter
programs, minor Makefile changes are needed to find lp.cdefs.h.
For lpf.c, the 'sccsid' line is formatted to match style(9), and
a 'From:' is removed so the sccsid returns to what it was back
in the days of '-r CSRG' (1994).

Reviewed by:	discussed with bde and obrien
MFC after:	15 days
2003-07-15 07:01:01 +00:00
Garance A Drosehn
c44a6dcebd More changes to use __FBSDID() for setting rcsids, and fix the
format of 'sccsid' lines so they consistently match style(9)
guidelines.  Note that this means you will have to add '-a' to
the 'strings' command when searching for rcs ids, eg:
     strings -a /usr/sbin/lpc | grep '$FreeBSD'

Reviewed by:	discussed on cvs-src & with bde and obrien
MFC after:	15 days
2003-07-14 22:24:28 +00:00
Garance A Drosehn
b7fd86992c Get the 'sccsid' lines even closer to correct style(9) form. The
'#ifdef lint/#endif' around the lines should not have been removed.
Also add blank lines where one (per file) was missing.

Reviewed by:	First part noticed by bde, blank lines noticed by me
MFC after:	15 days
2003-07-14 20:20:58 +00:00
Garance A Drosehn
1ef420f7f4 Get the 'sccsid' for this to match the original lines you would
get from '-r CSRG', instead of having that sccsid as a comment.
(this is the sccsid from 1996 -- there have been many changes to
printcap.c since then!)

MFC after:	15 days
2003-07-14 20:17:55 +00:00
Garance A Drosehn
a6381ce166 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
2003-07-14 19:59:33 +00:00
Garance A Drosehn
055c90456e 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
2003-07-14 15:54:41 +00:00
Garance A Drosehn
1f589b4737 Take advantage of the common_source/lp.cdefs.h file to change lpr
source to use __FBSDID() for setting rcsids.  Also fix the format
of 'sccsid' lines to consistently match style(9) guidelines.

Reviewed by:	discussed with bde and obrien
MFC after:	15 days
2003-07-14 05:15:21 +00:00
Garance A Drosehn
b9ec9b4d77 Introduce a new lp.cdefs.h file, which will be used to make it
somewhat easier to build this lpr on other operating systems.
This simply includes <sys/cdefs.h> when that is appropriate,
and then checks for any cdefs-ish macros that lpr uses, and
defines them if they don't already exist.  This is only a start
at making freebsd's lpr less of a hassle to port.  It is mainly
added so all of lpr can be changed to use the __FBSDID() macro,
without making it *more* of a hassle to build on other OS's.

Reviewed by:	discussed with bde and obrien
MFC after:	15 days
2003-07-14 05:13:55 +00:00
Philippe Charnier
54ede02d10 add FBSDID 2003-07-06 12:44:11 +00:00
Garance A Drosehn
ce4d8747fa We don't need two $FreeBSD$'s. Remove the older one. 2003-06-21 05:59:59 +00:00
Garance A Drosehn
394fd40fa3 Minor improvement to some debugging code that is probably used by no one
but me (it's usually #ifdef-ed out).

MFC after:	1 week
2003-06-12 03:49:40 +00:00
Garance A Drosehn
dac192a9ae Remove MAINTAINER= lines. That info is now in /usr/src/MAINTAINERS 2003-06-12 03:32:21 +00:00
Garance A Drosehn
da464120d5 When sanity-checking a variable, it's good to check the correct variable...
MFC after:	1 week
2003-06-12 03:30:10 +00:00
Garance A Drosehn
ea157fa201 There is no need for this makefile to reference BDECFLAGS, particularly
since that is no longer defined in the default system install.

MFC after:	1 week
2003-06-11 20:32:52 +00:00
Warner Losh
dbf4064dcf Include stdlib.h for atoi declaration.
Add $FreeBSD$ while I'm here.
2003-06-09 06:23:10 +00:00
Warner Losh
1d08b7ad50 Include stdlib.h for atoi declaration
Add $FreeBSD$ while I'm here.
2003-06-09 06:22:01 +00:00
Philippe Charnier
f84e4bb732 Add section number to .Xr 2003-06-08 14:04:49 +00:00
Eivind Eklund
b11003f306 Change DEFMX to 0. This removes the size limit for print jobs by default.
Discussed with: gad (now), arch (a year ago)
2003-03-27 08:33:01 +00:00
Jens Schweikhardt
57bd0fc6e8 english(4) police. 2002-12-27 12:15:40 +00:00
Ruslan Ermilov
c041c1e0d9 mdoc(7) police: markup fixes.
Approved by:	re
2002-11-27 15:31:08 +00:00
Sheldon Hearn
a4df5101a3 Use "deprecated" instead of "depreciated" where appropriate. 2002-10-30 07:49:11 +00:00
Jens Schweikhardt
2b239dd118 Fix typos; each file has at least one s/seperat/separat/
(I skipped those in contrib/, gnu/ and crypto/)
While I was at it, fixed a lot more found by ispell that I
could identify with certainty to be errors. All of these
were in comments or text, not in actual code.

Suggested by:	bde
MFC after:	3 days
2002-08-11 13:05:30 +00:00
Hajimu UMEMOTO
4a78ccd771 use IPV6_V6ONLY instead of non standard IPV6_BINDV6ONLY.
Approved by:	gad
2002-07-22 18:16:05 +00:00
Garance A Drosehn
dd8faa9ff2 Changes which rewrite 'lpc topq', and which add 'lpc bottomq'. These
reflect much valuable feedback from wollman.  More details on the new
'lpc topq' are in the log message for revision 1.2 of lpc/movejobs.c.

The previous implementation of 'lpc topq' is available as 'lpc xtopq',
in case there are any problems noticed in the new implementation.  If
there are no problems with this version, a later update will remove the
'lpc xtopq' command.

Reviewed by:	freebsd-print@bostonradio.org
MFC after:	6 days
2002-07-17 00:51:19 +00:00
Philippe Charnier
490d5836b5 The .Nm utility 2002-07-14 14:47:15 +00:00
Garance A Drosehn
cc2b61b1dd Call routine to free everything obtained when filling in 'struct printer'.
MFC after:	3 days
2002-07-12 01:53:36 +00:00
Garance A Drosehn
722915cdec Fix set_qstate() so it correctly checks for any error from chmod().
Note that set_qstate() is only called from several 'lpc' commands.

MFC after:	3 days
2002-07-12 01:37:06 +00:00
Garance A Drosehn
4c2a399167 Add a SQS_QCHANGED option to set_qstate(). This will soon be used by 'lpc'.
Reviewed by:	freebsd-print@bostonradio.org
MFC after:	3 days
2002-07-12 01:31:46 +00:00
Garance A Drosehn
bae8d45c7f Add two variables to struct jobqueue, and change the way that getq()
calculates how much space to get for that struct, so it will get the
right amount when new variables are added.

MFC after:	3 days
2002-07-12 01:22:57 +00:00