summaryrefslogtreecommitdiffstats
path: root/usr.sbin/lpr/lpc/cmds.c
Commit message (Collapse)AuthorAgeFilesLines
* More changes to use __FBSDID() for setting rcsids, and fix thegad2003-07-141-4/+5
| | | | | | | | | | 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
* Call routine to free everything obtained when filling in 'struct printer'.gad2002-07-121-0/+1
| | | | MFC after: 3 days
* Remove the backup-versions ("x*") of various lpc commands that weregad2002-07-021-361/+0
| | | | | | | recently rewritten. No one in -current has reported any problems with the newer versions. MFC after: 3 weeks
* Just rename two generic-queue init routines from 'init_*' to '*_gi'gad2002-06-161-3/+3
| | | | | | ("gi" short for 'generic init'...). MFC after: 10 days
* Add a nearly complete rewrite of the lpc command 'down'. The only user-gad2002-06-161-1/+63
| | | | | | | | | | | | | | visible change should be that more than one queue can now be specified, if one uses the '-msg' parameter to separate the list of queues from the status message to set. The previous implementation of 'down' remains available as the command 'xdown', available for instant fallback if there seems to be anything wrong with the new one. If no one reports a problem after a few weeks, then a later update will remove 'xdown'. Reviewed by: freebsd-print@bostonradio.org MFC after: 10 days
* Reorganize the way that arguments are processed in lpc's generic-queuegad2002-06-151-20/+24
| | | | | | | commands, to make things a little cleaner (mainly for a later update). Reviewed by: freebsd-print@bostonradio.org MFC after: 10 days
* Add a new command to 'lpc' called 'setstatus', which would be used togad2002-06-151-19/+102
| | | | | | | | | change the status message of a print queue. This includes some minor changes to the upstat() routine, so that error messages are not printed while seteuid(priv-user). Reviewed by: freebsd-audit and freebsd-print@bostonradio.org MFC after: 10 days
* Almost complete rewrite of the lpc commands 'abort', 'enable', 'disable',gad2002-06-131-0/+278
| | | | | | | | | | | | | | | | | 'restart', 'start', 'stop' and 'up'. These are commands which mainly just alter the access bits on the lock-file of a queue, and they all now use a central routine to do that. This reduces the amount of code that is run as the priv userid, and eliminates a number of cases where error messages were written while that priv uid was in effect. As far as users are concerned, there should be no noticable difference in the new versions. In case there *is*, the previous implementations are still there as 'xabort', 'xenable', etc, so they are available for instant fallback. If no one reports a problem after a few weeks, then a later update will remove those x-commands. Reviewed by: freebsd-audit and freebsd-print@bostonradio.org MFC after: 10 days
* Add 'const' to some casts to fix two warnings that are printed by thegad2002-04-221-2/+2
| | | | | | new gcc (on sparc64). MFC after: 4 days
* Usage style sweep: spell "usage" with a small 'u'.des2002-04-221-3/+3
| | | | | Also change one case of blatant __progname abuse (several more remain) This commit does not touch anything in src/{contrib,crypto,gnu}/.
* My recent changes to add the ctl_renametf routine assumed that print jobgad2001-11-281-13/+22
| | | | | | | | | | | control-files will always start with 'cfA*'. It turns out that some implementations of lpd (such as solaris) may send a control file which starts with 'cfB*', or really 'cf<anyLetter>*'. Although such filenames are very odd, we did used to accept them. This changes ctl_renametf to work correctly with them, and fixes up 'lpc clean' to match. PR: bin/32183 MFC after: 10 days
* Fix minor compile-time warning that snunk in with changes to sortq() rtn.gad2001-10-091-0/+1
| | | | MFC after: 4 days
* Basically rewrite the sortq() routine which is used by 'lpc clean' andgad2001-09-271-20/+126
| | | | | | | | | | 'lpc tclean'. In some obscure cases, the previous version could cause a valid user job to be removed (by 'clean'), due to invalid assumptions in the sort routine. This was a rare problem, unless ctlinfo.c is compiled with 'LEAVE_TMPCF_FILES' turned on (to check what that rtn was doing). Reviewed by: Lack of outcry on -audit and freebsd-print@bostonradio.org MFC after: 10 days
* Get rid of a compile-time warning by casting to (size_t).gad2001-07-231-1/+1
| | | | MFC after: 1 week
* Fix most of the warnings generated by compiling lpr with -Wnon-const-format,gad2001-07-151-5/+5
| | | | | | | | | 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
* Make 'lpc clean' somewhat safer. Add an 'lpc tclean' command, which allowsgad2001-06-251-21/+285
| | | | | | | | | | | | | | | | | | | one to see what files would be removed *if* an 'lpc clean' is done. 'tclean' will remove no files, and is therefore not a privileged command. Also, both 'lpc clean' and 'lpc tclean' will now look for 'core' files in spool directories (but not remove them). They also print out an extra line of info when a datafile to be removed is a symlink (from 'lpr -s'), saying what file it is a symlink to. The 'lpc clean' commands also now print out a summary line saying how many queues were checked, how many files were removed (or "would be" removed, for tclean), and how much disk space is involved. For the benefit of those who have many print queues, 'lpc clean all' will only print out the names of print queues where some "interesting" files were found, instead of printing out a header-line for every queue in your printcap file. Reviewed by: freebsd-print@bostonradio.org freebsd-audit@FreeBSD.org MFC after: 2 weeks
* Fix about 90-100 warnings one gets when trying to compile lpr&friendsgad2001-06-121-97/+65
| | | | | | | | | | | | 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
* Cosmetic change of a structure name.gad2000-11-061-10/+10
| | | | | | | Turn 'struct queue { q_time, q_name }' (loosely-speaking) into 'struct jobqueue { job_time, job_cfname }' Reviewed by: GAWollman
* 'start' command was not reenabling printing.dillon2000-01-241-3/+4
| | | | PR: bin/15728
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Fix additional warnings. Remove -Werror, since some people have complainedwollman1998-09-111-3/+1
| | | | | | | about it. PR: 7886 Submitted by: Stefan Eggers <seggers@semyam.dinoco.de> (partially)
* Mega lpd/lpd upgrade, part I:wollman1997-12-021-514/+246
| | | | | | | | | | | | | | | - 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...
* Two minor, pedantic fixes from bde for my last pedantic fixes, plusimp1997-07-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fix boatloads of buffer overflows from the OpenBSD tree.imp1997-07-291-16/+25
| | | | | Be pedantic about always using sizeof(blah) vs sizeof (blah) or sizeof blah. Obtained from:OpenBSD
* index -> strchr and rindex -> strrchr to reduce the number of gratuitousimp1997-07-231-1/+1
| | | | | | 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.
* Use setuid/seteuid around dangerous operations. Also a few bufferimp1997-07-231-22/+59
| | | | | | | | | | | | 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
* Don't output extraneous tabbrian1997-05-131-3/+7
| | | | Submitted by: Garance A Drosehn <gad@eclipse.its.rpi.edu>
* Buffer overflow from OpenBSD:imp1997-02-091-2/+4
| | | | | | Rev 1.7 millert: possible oflow Obtained from: OpenBSD
* lpc/cmds.c:imp1996-10-271-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Pull a bunch of fixes from the 4.4BSD-Lite2 branch. It's reallyjoerg1996-05-051-1/+2
| | | | | | | | | | | | 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>
* Remove trailing whitespace.rgrimes1995-05-301-4/+4
|
* BSD 4.4 Lite usr.sbin Sourcesrgrimes1994-05-261-0/+1107
OpenPOWER on IntegriCloud