summaryrefslogtreecommitdiff
path: root/usr/src/cmd/print/bsd-sysv-commands
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/print/bsd-sysv-commands')
-rw-r--r--usr/src/cmd/print/bsd-sysv-commands/disable.c19
-rw-r--r--usr/src/cmd/print/bsd-sysv-commands/lpstat.c34
2 files changed, 31 insertions, 22 deletions
diff --git a/usr/src/cmd/print/bsd-sysv-commands/disable.c b/usr/src/cmd/print/bsd-sysv-commands/disable.c
index 8b813b6d56..d57abe5728 100644
--- a/usr/src/cmd/print/bsd-sysv-commands/disable.c
+++ b/usr/src/cmd/print/bsd-sysv-commands/disable.c
@@ -20,14 +20,13 @@
*/
/*
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
*/
/* $Id: disable.c 146 2006-03-24 00:26:54Z njacobs $ */
-#pragma ident "%Z%%M% %I% %E% SMI"
#include <stdio.h>
#include <stdlib.h>
@@ -49,8 +48,8 @@ usage(char *program)
name++;
fprintf(stdout,
- gettext("Usage: %s [-c] [-W] [-r reason] destination ...\n"),
- name);
+ gettext("Usage: %s [-c] [-W] [-r reason] destination ...\n"),
+ name);
exit(1);
}
@@ -73,8 +72,8 @@ cancel_active_job(papi_service_t svc, char *dest)
continue;
(void) papiAttributeListGetInteger(a, NULL,
- "job-state", &state);
- if (state == 0x05) { /* processing */
+ "job-state", &state);
+ if (state & 0x082A) { /* If state is RS_ACTIVE */
int32_t id = papiJobGetId(j[i]);
(void) papiJobCancel(svc, dest, id);
@@ -124,18 +123,18 @@ main(int ac, char *av[])
char *printer = av[optind++];
status = papiServiceCreate(&svc, printer, NULL, NULL,
- cli_auth_callback, encryption, NULL);
+ cli_auth_callback, encryption, NULL);
if (status != PAPI_OK) {
fprintf(stderr, gettext(
- "Failed to contact service for %s: %s\n"),
- printer, verbose_papi_message(svc, status));
+ "Failed to contact service for %s: %s\n"),
+ printer, verbose_papi_message(svc, status));
exit_status = 1;
}
status = papiPrinterDisable(svc, printer, reason);
if (status != PAPI_OK) {
fprintf(stderr, gettext("disable: %s: %s\n"), printer,
- verbose_papi_message(svc, status));
+ verbose_papi_message(svc, status));
exit_status = 1;
}
diff --git a/usr/src/cmd/print/bsd-sysv-commands/lpstat.c b/usr/src/cmd/print/bsd-sysv-commands/lpstat.c
index 42e56b2fe3..9e446bee19 100644
--- a/usr/src/cmd/print/bsd-sysv-commands/lpstat.c
+++ b/usr/src/cmd/print/bsd-sysv-commands/lpstat.c
@@ -391,13 +391,10 @@ report_printer(papi_service_t svc, char *name, papi_printer_t printer,
NULL, "job-id", &jobid);
/*
- * If the job-state is not
- * "held", "cancelled" or
- * "completed" then only print.
+ * If the job-state is in
+ * RS_PRINTING then only print.
*/
- if ((jstate != 0x04) &&
- (jstate != 0x07) &&
- (jstate != 0x09)) {
+ if (jstate == 0x0008) {
if (flag == 0)
printf(gettext
("now printing"\
@@ -814,12 +811,25 @@ report_job(char *printer, papi_job_t job, int show_rank, int verbose)
(void) papiAttributeListGetInteger(attrs, NULL,
"job-state", &jstate);
- if (jstate == 0x04)
- printf(gettext(", being held"));
- else if (jstate == 0x07)
- printf(gettext(", cancelled"));
- else if (jstate == 0x09)
- printf(gettext(", complete"));
+
+ if (jstate == 0x0001)
+ printf(gettext(" being held"));
+ else if (jstate == 0x0800)
+ printf(gettext(" notifying user"));
+ else if (jstate == 0x0040)
+ printf(gettext(" cancelled"));
+ else if (jstate == 0x0010)
+ printf(gettext(" finished printing"));
+ else if (jstate == 0x0008)
+ printf(gettext(" on %s"), destination);
+ else if (jstate == 0x2000)
+ printf(gettext(" held by admin"));
+ else if (jstate == 0x0002)
+ printf(gettext(" being filtered"));
+ else if (jstate == 0x0004)
+ printf(gettext(" filtered"));
+ else if (jstate == 0x0020)
+ printf(gettext(" held for change"));
if (verbose == 1) {
char *form = NULL;