summaryrefslogtreecommitdiffstats
path: root/usr.sbin/lpr/common_source/common.c
diff options
context:
space:
mode:
authorgad <gad@FreeBSD.org>2002-07-12 01:31:46 +0000
committergad <gad@FreeBSD.org>2002-07-12 01:31:46 +0000
commit793db011bb8b6296e52c98325185a73064ac25e3 (patch)
tree6be998860c1973f2a10080d33a05f1bd0e85ecac /usr.sbin/lpr/common_source/common.c
parent760cdded06d9b716bbb8b99efb1b1893553b479d (diff)
downloadFreeBSD-src-793db011bb8b6296e52c98325185a73064ac25e3.zip
FreeBSD-src-793db011bb8b6296e52c98325185a73064ac25e3.tar.gz
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
Diffstat (limited to 'usr.sbin/lpr/common_source/common.c')
-rw-r--r--usr.sbin/lpr/common_source/common.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/usr.sbin/lpr/common_source/common.c b/usr.sbin/lpr/common_source/common.c
index e382e69..c731f9b 100644
--- a/usr.sbin/lpr/common_source/common.c
+++ b/usr.sbin/lpr/common_source/common.c
@@ -275,6 +275,7 @@ set_qstate(int action, const char *lfname)
struct stat stbuf;
mode_t chgbits, newbits, oldmask;
const char *failmsg, *okmsg;
+ static const char *nomsg = "no state msg";
int chres, errsav, fd, res, statres;
/*
@@ -298,6 +299,13 @@ set_qstate(int action, const char *lfname)
newbits = LOCK_FILE_MODE;
okmsg = NULL;
failmsg = NULL;
+ if (action & SQS_QCHANGED) {
+ chgbits |= LFM_RESET_QUE;
+ newbits |= LFM_RESET_QUE;
+ /* The okmsg is not actually printed for this case. */
+ okmsg = nomsg;
+ failmsg = "set queue-changed";
+ }
if (action & SQS_DISABLEQ) {
chgbits |= LFM_QUEUE_DIS;
newbits |= LFM_QUEUE_DIS;
@@ -374,7 +382,8 @@ set_qstate(int action, const char *lfname)
case SQS_CHGOK:
case SQS_CREOK:
case SQS_SKIPCREOK:
- printf("\t%s\n", okmsg);
+ if (okmsg != nomsg)
+ printf("\t%s\n", okmsg);
break;
case SQS_CREFAIL:
printf("\tcannot create lock file: %s\n",
OpenPOWER on IntegriCloud