summaryrefslogtreecommitdiff
path: root/scheduler/classes.c
diff options
context:
space:
mode:
authorMichael R Sweet <michaelrsweet@gmail.com>2017-11-01 14:48:06 -0400
committerMichael R Sweet <michaelrsweet@gmail.com>2017-11-01 14:48:06 -0400
commit409f54979f3dcd08d9b318e8d74d1d445e0cc520 (patch)
treec12b0e45d13b604734724ff9354c8f443de912c0 /scheduler/classes.c
parent25140c63ec22f577a3db4b563e3812a28f324756 (diff)
downloadcups-409f54979f3dcd08d9b318e8d74d1d445e0cc520.tar.gz
Add support for "printer-id" attribute (Issue #4868)
Diffstat (limited to 'scheduler/classes.c')
-rw-r--r--scheduler/classes.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/scheduler/classes.c b/scheduler/classes.c
index 57f9a8f44..99e39e3cb 100644
--- a/scheduler/classes.c
+++ b/scheduler/classes.c
@@ -1,7 +1,7 @@
/*
* Printer class routines for the CUPS scheduler.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -346,6 +346,13 @@ cupsdLoadAllClasses(void)
cupsdLogMessage(CUPSD_LOG_ERROR,
"Syntax error on line %d of classes.conf.", linenum);
}
+ else if (!_cups_strcasecmp(line, "PrinterId"))
+ {
+ if (value && (i = atoi(value)) > 0)
+ p->printer_id = i;
+ else
+ cupsdLogMessage(CUPSD_LOG_ERROR, "Bad PrinterId on line %d of classes.conf.", linenum);
+ }
else if (!_cups_strcasecmp(line, "UUID"))
{
if (value && !strncmp(value, "urn:uuid:", 9))
@@ -713,6 +720,9 @@ cupsdSaveAllClasses(void)
else
cupsFilePrintf(fp, "<Class %s>\n", pclass->name);
+ if (pclass->printer_id)
+ cupsFilePrintf(fp, "PrinterId %d\n", pclass->printer_id);
+
cupsFilePrintf(fp, "UUID %s\n", pclass->uuid);
if (pclass->num_auth_info_required > 0)